From 5dacdee9b54c78372b68140e2b068d03a620eab9 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期三, 02 七月 2025 19:00:52 +0800 Subject: [PATCH] 修改bug --- ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/UserMgrController.java | 132 ++++++++++++++++++++++++------------------- 1 files changed, 74 insertions(+), 58 deletions(-) diff --git a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/UserMgrController.java b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/UserMgrController.java index 91ccac7..55cb4af 100644 --- a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/UserMgrController.java +++ b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/UserMgrController.java @@ -28,6 +28,7 @@ import com.stylefeng.guns.modular.system.service.IUserService; import com.stylefeng.guns.modular.system.transfer.UserDto; import com.stylefeng.guns.modular.system.util.qianyuntong.EmployeeUtil; +import com.stylefeng.guns.modular.system.util.qianyuntong.UserUtil; import com.stylefeng.guns.modular.system.util.qianyuntong.model.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; @@ -36,10 +37,12 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; +import javax.annotation.Resource; import javax.naming.NoPermissionException; import javax.validation.Valid; import java.io.File; import java.util.Date; +import java.util.List; import java.util.Map; import java.util.UUID; @@ -66,6 +69,8 @@ @Autowired private ITCompanyService companyService; + @Resource + private ShiroExtUtil shiroExtUtil; /** @@ -119,7 +124,7 @@ */ @RequestMapping("/user_info") public String userInfo(Model model) { - Integer userId = ShiroExtUtil.getUser().getId(); + Integer userId = shiroExtUtil.getUser().getId(); if (ToolUtil.isEmpty(userId)) { throw new GunsException(BizExceptionEnum.REQUEST_NULL); } @@ -148,8 +153,8 @@ if (!newPwd.equals(rePwd)) { throw new GunsException(BizExceptionEnum.TWO_PWD_NOT_MATCH); } - Integer userId = ShiroExtUtil.getUser().getId(); - User user = userService.selectById(userId); + Integer userId = shiroExtUtil.getUser().getId(); + User user = userService.selectById(userId); String oldMd5 = ShiroKit.md5(oldPwd, user.getSalt()); if (user.getPassword().equals(oldMd5)) { String newMd5 = ShiroKit.md5(newPwd, user.getSalt()); @@ -170,20 +175,20 @@ //创建日期 String beginTime = null; String endTime = null; - if (SinataUtil.isNotEmpty(createTime)) { - String[] timeArray = createTime.split(" - "); - beginTime = timeArray[0]; - endTime = timeArray[1]; - } - if (ShiroExtUtil.getUser().isAdmin()) { - Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage(); - page.setRecords(userService.getUserListPage(page, null, name, beginTime, endTime, deptid)); - return super.packForBT(page); - } else { - Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage(); - page.setRecords(userService.getUserListPage(page, null, name, beginTime, endTime, deptid)); - return super.packForBT(page); - } + if (SinataUtil.isNotEmpty(createTime)) { + String[] timeArray = createTime.split(" - "); + beginTime = timeArray[0]; + endTime = timeArray[1]; + } + if (shiroExtUtil.getUser().isAdmin()) { + Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage(); + page.setRecords(userService.getUserListPage(page, null, name, beginTime, endTime, deptid)); + return super.packForBT(page); + } else { + Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage(); + page.setRecords(userService.getUserListPage(page, null, name, beginTime, endTime, deptid)); + return super.packForBT(page); + } } /** @@ -202,24 +207,30 @@ if (theUser != null) { throw new GunsException(BizExceptionEnum.USER_ALREADY_REG); } - ShiroUser user1 = ShiroExtUtil.getUser(); + ShiroUser user1 = shiroExtUtil.getUser(); User user2 = userService.selectById(user1.getId()); TCompany tCompany = companyService.selectById(user2.getObjectId()); - SaveStaffNodeRequest request1 = new SaveStaffNodeRequest(); - request1.setMobile(user2.getPhone()); - request1.setEntercode(tCompany.getEnterCode()); - request1.setEmpName(user.getName()); - request1.setEmpNickname(user.getName()); - request1.setLoginNo(user.getAccount()); - request1.setEmpSex(user.getSex() == 1 ? "男" : "女"); - request1.setMphone(user.getPhone()); - request1.setEmail(user.getPhone() + "@qyt.com"); - request1.setDeptId(0); - request1.setPositionId(1); - request1.setSuperLevel(0); - request1.setHideMobile(0); - SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request1); - Long empId = saveStaffNode.getEmpId(); + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(user.getPhone(), tCompany.getEnterCode()); + Long empId = null; + if(null == userInfoByPhone || userInfoByPhone.size() == 0){ + SaveStaffNodeRequest request1 = new SaveStaffNodeRequest(); + request1.setMobile(tCompany.getPrincipalPhone()); + request1.setEntercode(tCompany.getEnterCode()); + request1.setEmpName(user.getName()); + request1.setEmpNickname(user.getName()); + request1.setLoginNo(user.getAccount()); + request1.setEmpSex(user.getSex() == 1 ? "男" : "女"); + request1.setMphone(user.getPhone()); + request1.setEmail(user.getPhone() + "@qyt.com"); + request1.setDeptId(0); + request1.setPositionId(1); + request1.setSuperLevel(0); + request1.setHideMobile(0); + SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request1); + empId = saveStaffNode.getEmpId(); + }else{ + empId = userInfoByPhone.get(0).getEmpId(); + } // 完善账号信息 user.setSalt(ShiroKit.getRandomSalt(5)); @@ -250,36 +261,41 @@ throw new GunsException(BizExceptionEnum.REQUEST_NULL); } User oldUser = userService.selectById(user.getId()); - ShiroUser user1 = ShiroExtUtil.getUser(); + ShiroUser user1 = shiroExtUtil.getUser(); User user2 = userService.selectById(user1.getId()); TCompany tCompany = companyService.selectById(user2.getObjectId()); //调用中台接口 GetStaffNodeRequest request = new GetStaffNodeRequest(); request.setEmpId(oldUser.getEmpId()); - request.setMobile(user2.getPhone()); + request.setMobile(tCompany.getPrincipalPhone()); request.setEntercode(tCompany.getEnterCode()); StaffNodeInfo staffNode = EmployeeUtil.getStaffNode(request); Long empId = null; if (null == staffNode || "0".equals(staffNode.getIsValid())) { - SaveStaffNodeRequest request1 = new SaveStaffNodeRequest(); - request1.setMobile(user2.getPhone()); - request1.setEntercode(tCompany.getEnterCode()); - request1.setEmpName(user.getName()); - request1.setEmpNickname(user.getName()); - request1.setLoginNo(user.getAccount()); - request1.setEmpSex(user.getSex() == 1 ? "男" : "女"); - request1.setMphone(user.getPhone()); - request1.setEmail(user.getPhone() + "@qyt.com"); - request1.setDeptId(0); - request1.setPositionId(1); - request1.setSuperLevel(0); - request1.setHideMobile(0); - SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request1); - empId = saveStaffNode.getEmpId(); + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(user.getPhone(), tCompany.getEnterCode()); + if(null == userInfoByPhone || userInfoByPhone.size() == 0){ + SaveStaffNodeRequest request1 = new SaveStaffNodeRequest(); + request1.setMobile(tCompany.getPrincipalPhone()); + request1.setEntercode(tCompany.getEnterCode()); + request1.setEmpName(user.getName()); + request1.setEmpNickname(user.getName()); + request1.setLoginNo(user.getAccount()); + request1.setEmpSex(user.getSex() == 1 ? "男" : "女"); + request1.setMphone(user.getPhone()); + request1.setEmail(user.getPhone() + "@qyt.com"); + request1.setDeptId(0); + request1.setPositionId(1); + request1.setSuperLevel(0); + request1.setHideMobile(0); + SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request1); + empId = saveStaffNode.getEmpId(); + }else{ + empId = userInfoByPhone.get(0).getEmpId(); + } } else { EditStaffNodeRequest request1 = new EditStaffNodeRequest(); request1.setEmpId(staffNode.getEmpId()); - request1.setMobile(user2.getPhone()); + request1.setMobile(tCompany.getPrincipalPhone()); request1.setEntercode(tCompany.getEnterCode()); request1.setEnterId(Long.valueOf(tCompany.getEnterCode())); request1.setEmpName(user.getName()); @@ -292,8 +308,8 @@ request1.setPositionId(1); request1.setSuperLevel(0); request1.setHideMobile(0); - EmployeeUtil.editStaffNode(request1); - empId = staffNode.getEmpId(); + EmployeeUtil.editStaffNode(request1); + empId = staffNode.getEmpId(); } oldUser.setEmpId(empId); oldUser.setEntercode(tCompany.getEnterCode()); @@ -302,11 +318,11 @@ user.setEntercode(tCompany.getEnterCode()); user.setEnterId(Long.valueOf(tCompany.getEnterCode())); - if (ShiroExtUtil.getUser().isAdmin) { + if (shiroExtUtil.getUser().isAdmin) { this.userService.updateById(UserFactory.editUser(user, oldUser)); return SUCCESS_TIP; } else { - ShiroUser shiroUser = ShiroExtUtil.getUser(); + ShiroUser shiroUser = shiroExtUtil.getUser(); if (shiroUser.getId().equals(user.getId())) { this.userService.updateById(UserFactory.editUser(user, oldUser)); return SUCCESS_TIP; @@ -331,19 +347,19 @@ throw new GunsException(BizExceptionEnum.CANT_DELETE_ADMIN); } User user = userService.selectById(userId); - ShiroUser user1 = ShiroExtUtil.getUser(); + ShiroUser user1 = shiroExtUtil.getUser(); User user2 = userService.selectById(user1.getId()); TCompany tCompany = companyService.selectById(user2.getObjectId()); //调用中台接口 GetStaffNodeRequest request = new GetStaffNodeRequest(); request.setEmpId(user.getEmpId()); - request.setMobile(user2.getPhone()); + request.setMobile(tCompany.getPrincipalPhone()); request.setEntercode(tCompany.getEnterCode()); StaffNodeInfo staffNode = EmployeeUtil.getStaffNode(request); if (null != staffNode && "1".equals(staffNode.getIsValid())) { DeleteStafNodeRequest request1 = new DeleteStafNodeRequest(); request1.setEmpId(user.getEnterId()); - request1.setMobile(user2.getPhone()); + request1.setMobile(tCompany.getPrincipalPhone()); request1.setEntercode(tCompany.getEnterCode()); EmployeeUtil.ecrmDeleteStafNode(request1); } -- Gitblit v1.7.1