package com.template.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.template.api.UsersAPI; import com.template.model.dto.UsersDetailsDto; import com.template.model.dto.UsersDto; import com.template.model.pojo.PermissionSetting; import com.template.model.pojo.Users; import com.template.model.result.CommonResult; import com.template.model.vo.UsersPageVo; import com.template.services.PermissionSettingService; import com.template.services.UsersMenuService; import com.template.services.UsersService; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.RestController; import java.util.ArrayList; import java.util.List; /** *

* 前端控制器 *

* * @author ceshi * @since 2023-11-27 */ @RestController public class UsersController implements UsersAPI { @Autowired UsersService usersService; @Autowired PermissionSettingService permissionSettingService; @Autowired UsersMenuService usersMenuService; @Override public CommonResult saveUsers(UsersDto usersDto, BindingResult bindingResult) { if (ObjectUtils.isEmpty(usersDto)) { return CommonResult.fail(); } Integer permissionSettingId = usersDto.getAdminMenuId(); PermissionSetting permissionSetting = permissionSettingService.getById(permissionSettingId); if (ObjectUtils.isEmpty(permissionSetting)) { return CommonResult.fail("非法进入"); } // 判断该用户是否拥有权限 String accountManagement = permissionSetting.getAccountManagement(); if (!"0".equals(accountManagement) && !accountManagement.contains("1")) { return CommonResult.fail("此账号暂无该权限"); } // 通过身份证号判断是否已经添加 // String idCard = usersDto.getIdCard(); String cardNumber = usersDto.getCardNumber(); LambdaQueryWrapper wrapperU = new LambdaQueryWrapper<>(); wrapperU.eq(Users::getCardNumber, cardNumber); // .or() // .eq(Users::getIdCard,idCard); Users one = usersService.getOne(wrapperU); if (ObjectUtils.isNotEmpty(one)) { return CommonResult.fail("用户已存在"); } Users users = new Users(); BeanUtils.copyProperties(usersDto, users); boolean save = usersService.save(users); if (!save) { return CommonResult.fail(); } return CommonResult.ok(); } @Override public CommonResult getUsersPage(int adminMenuId, int page, int size, String keyWord, String startTime, String endTime) { if (ObjectUtils.isEmpty(page) || page <= 0) { page = 1; } if (ObjectUtils.isEmpty(size) || size <= 0) { size = 10; } PermissionSetting permissionSetting = permissionSettingService.getById(adminMenuId); if (ObjectUtils.isEmpty(permissionSetting)) { return CommonResult.fail("非法进入"); } // 判断该用户是否拥有权限 // String accountManagement = permissionSetting.getAccountManagement(); // if (!"0".equals(accountManagement) && !accountManagement.contains("4")) { // return CommonResult.fail("此账号暂无该权限"); // } LambdaQueryWrapper wrapperU = new LambdaQueryWrapper<>(); wrapperU.eq(ObjectUtils.isNotEmpty(keyWord), Users::getPhone, keyWord) .between(ObjectUtils.isNotEmpty(startTime) && ObjectUtils.isNotEmpty(endTime), Users::getCreateTime, startTime, endTime) .or() .like(ObjectUtils.isNotEmpty(keyWord), Users::getUserName, keyWord) .between(ObjectUtils.isNotEmpty(startTime) && ObjectUtils.isNotEmpty(endTime), Users::getCreateTime, startTime, endTime); IPage page1 = usersService.page(new Page<>(page, size), wrapperU); List records = page1.getRecords(); ArrayList usersPageVos = new ArrayList<>(); for (Users record : records) { UsersPageVo usersPageVo = new UsersPageVo(); BeanUtils.copyProperties(record,usersPageVo); // String userMenuId = record.getUserMenuId(); // UsersMenu byId = usersMenuService.getById(userMenuId); // usersPageVo.setUserMenu(byId); usersPageVos.add(usersPageVo); } Page usersPageVoPage = new Page<>(); BeanUtils.copyProperties(page1,usersPageVoPage); usersPageVoPage.setRecords(usersPageVos); return CommonResult.ok(usersPageVoPage); } @Override public CommonResult updateDetails(UsersDetailsDto usersDetailsDto, BindingResult bindingResult) { if (ObjectUtils.isEmpty(usersDetailsDto)) { return CommonResult.fail(); } int adminMenuId = usersDetailsDto.getAdminMenuId(); PermissionSetting permissionSetting = permissionSettingService.getById(adminMenuId); if (ObjectUtils.isEmpty(permissionSetting)) { return CommonResult.fail("非法进入"); } // 判断该用户是否拥有权限 String accountManagement = permissionSetting.getAccountManagement(); if (!"0".equals(accountManagement) && !accountManagement.contains("2")) { return CommonResult.fail("此账号暂无该权限"); } Users users = usersDetailsDto.getUsers(); boolean update = usersService.updateById(users); if (!update) { return CommonResult.fail(); } return CommonResult.ok(); } @Override public CommonResult deleteUsers(int adminMenuId, int userId) { if (ObjectUtils.isEmpty(adminMenuId) || ObjectUtils.isEmpty(userId)) { return CommonResult.fail("参数异常"); } PermissionSetting permissionSetting = permissionSettingService.getById(adminMenuId); if (ObjectUtils.isEmpty(permissionSetting)) { return CommonResult.fail("非法进入"); } // 判断该用户是否拥有权限 String accountManagement = permissionSetting.getAccountManagement(); if (!"0".equals(accountManagement) && !accountManagement.contains("3")) { return CommonResult.fail("此账号暂无该权限"); } boolean b = usersService.removeById(userId); if (!b) { return CommonResult.fail(); } return CommonResult.ok(); } @Override public CommonResult departmentList() { List departmentList=usersService.departmentList(); return CommonResult.ok(departmentList); } @Override public CommonResult getUser(String userId) { return CommonResult.ok(usersService.getById(userId)); } }