From 91fcd48801ad1120651027824f7a60a14deadf87 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期二, 08 七月 2025 19:21:21 +0800 Subject: [PATCH] 修改三方对接逻辑和环境参数配置 --- ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/UserMgrController.java | 117 ++++++++++++++++++++++++++-------------------------------- 1 files changed, 52 insertions(+), 65 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 9c420d5..c9bdc7e 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 @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.stylefeng.guns.config.properties.GunsProperties; import com.stylefeng.guns.core.base.controller.BaseController; +import com.stylefeng.guns.core.base.tips.ErrorTip; import com.stylefeng.guns.core.base.tips.Tip; import com.stylefeng.guns.core.beetl.ShiroExtUtil; import com.stylefeng.guns.core.common.annotion.BussinessLog; @@ -27,9 +28,13 @@ import com.stylefeng.guns.modular.system.service.ITDriverService; import com.stylefeng.guns.modular.system.service.IUserService; import com.stylefeng.guns.modular.system.transfer.UserDto; +import com.stylefeng.guns.modular.system.util.ResultUtil; 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 com.stylefeng.guns.modular.system.util.qianyuntong.model.DeleteStafNodeRequest; +import com.stylefeng.guns.modular.system.util.qianyuntong.model.QYTUserInfo; +import com.stylefeng.guns.modular.system.util.qianyuntong.model.SaveStaffNode; +import com.stylefeng.guns.modular.system.util.qianyuntong.model.SaveStaffNodeRequest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; @@ -37,7 +42,6 @@ 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; @@ -69,7 +73,7 @@ @Autowired private ITCompanyService companyService; - @Resource + @Autowired private ShiroExtUtil shiroExtUtil; @@ -207,9 +211,10 @@ TCompany tCompany = companyService.selectById(user2.getObjectId()); List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(user.getPhone(), tCompany.getEnterCode()); Long empId = null; + Integer empnew = null; if(null == userInfoByPhone || userInfoByPhone.size() == 0){ SaveStaffNodeRequest request1 = new SaveStaffNodeRequest(); - request1.setMobile(tCompany.getPrincipalPhone()); + request1.setMobile(user2.getPhone()); request1.setEntercode(tCompany.getEnterCode()); request1.setEmpName(user.getName()); request1.setEmpNickname(user.getName()); @@ -221,10 +226,16 @@ request1.setPositionId(1); request1.setSuperLevel(0); request1.setHideMobile(0); - SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request1); + ResultUtil<SaveStaffNode> resultUtil = EmployeeUtil.saveStaffNode(request1); + if(200 != resultUtil.getStatus()){ + return new ErrorTip(resultUtil.getStatus(), resultUtil.getMsg()); + } + SaveStaffNode saveStaffNode = resultUtil.getData(); empId = saveStaffNode.getEmpId(); + empnew = 1; }else{ empId = userInfoByPhone.get(0).getEmpId(); + empnew = 0; } // 完善账号信息 @@ -238,6 +249,7 @@ User objectUser = UserFactory.createUser(user); objectUser.setObjectId(user1.getObjectId()); + objectUser.setEmpnew(empnew); this.userService.insert(objectUser); return SUCCESS_TIP; @@ -260,71 +272,44 @@ User user2 = userService.selectById(user1.getId()); TCompany tCompany = companyService.selectById(user2.getObjectId()); //调用中台接口 - GetStaffNodeRequest request = new GetStaffNodeRequest(); - request.setEmpId(oldUser.getEmpId()); - request.setMobile(tCompany.getPrincipalPhone()); - request.setEntercode(tCompany.getEnterCode()); - StaffNodeInfo staffNode = EmployeeUtil.getStaffNode(request); Long empId = null; - if (null == staffNode || "0".equals(staffNode.getIsValid())) { - 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(tCompany.getPrincipalPhone()); + Integer empnew = null; + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(oldUser.getPhone(), tCompany.getEnterCode()); + if(null == userInfoByPhone || userInfoByPhone.size() == 0){ + SaveStaffNodeRequest request1 = new SaveStaffNodeRequest(); + request1.setMobile(user2.getPhone()); request1.setEntercode(tCompany.getEnterCode()); - request1.setEnterId(Long.valueOf(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.setDeptIds(staffNode.getDeptId() + ""); - request1.setPositionId(1); + request1.setEmail(user.getPhone() + "@qyt.com"); + request1.setDeptId(0); + request1.setPositionId(1); request1.setSuperLevel(0); request1.setHideMobile(0); - EmployeeUtil.editStaffNode(request1); - empId = staffNode.getEmpId(); + ResultUtil<SaveStaffNode> resultUtil = EmployeeUtil.saveStaffNode(request1); + if(200 != resultUtil.getStatus()){ + return new ErrorTip(resultUtil.getStatus(), resultUtil.getMsg()); + } + SaveStaffNode saveStaffNode = resultUtil.getData(); + empId = saveStaffNode.getEmpId(); + empnew = 1; + }else{ + empId = userInfoByPhone.get(0).getEmpId(); + empnew = 0; } oldUser.setEmpId(empId); oldUser.setEntercode(tCompany.getEnterCode()); oldUser.setEnterId(Long.valueOf(tCompany.getEnterCode())); + oldUser.setEmpnew(empnew); user.setEmpId(empId); user.setEntercode(tCompany.getEnterCode()); user.setEnterId(Long.valueOf(tCompany.getEnterCode())); - - if (shiroExtUtil.getUser().isAdmin) { - this.userService.updateById(UserFactory.editUser(user, oldUser)); - return SUCCESS_TIP; - } else { - ShiroUser shiroUser = shiroExtUtil.getUser(); - if (shiroUser.getId().equals(user.getId())) { - this.userService.updateById(UserFactory.editUser(user, oldUser)); - return SUCCESS_TIP; - } else { - throw new GunsException(BizExceptionEnum.NO_PERMITION); - } - } + user.setEmpnew(empnew); + this.userService.updateById(UserFactory.editUser(user, oldUser)); + return SUCCESS_TIP; } /** @@ -346,18 +331,20 @@ User user2 = userService.selectById(user1.getId()); TCompany tCompany = companyService.selectById(user2.getObjectId()); //调用中台接口 - GetStaffNodeRequest request = new GetStaffNodeRequest(); - request.setEmpId(user.getEmpId()); - 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(tCompany.getPrincipalPhone()); - request1.setEntercode(tCompany.getEnterCode()); - EmployeeUtil.ecrmDeleteStafNode(request1); + if(1 == user.getEmpnew()){ + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(user.getPhone(), tCompany.getEnterCode()); + if (null != userInfoByPhone && 0 < userInfoByPhone.size() && 1 == user.getEmpnew()) { + DeleteStafNodeRequest request1 = new DeleteStafNodeRequest(); + request1.setEmpId(user.getEnterId()); + request1.setMobile(tCompany.getPrincipalPhone()); + request1.setEntercode(tCompany.getEnterCode()); + ResultUtil resultUtil = EmployeeUtil.ecrmDeleteStafNode(request1); + if(200 != resultUtil.getStatus()){ + return new ErrorTip(resultUtil.getStatus(), resultUtil.getMsg()); + } + } } + //不删除中台数据,需要线下删除 this.userService.setStatus(userId, ManagerStatus.DELETED.getCode()); return SUCCESS_TIP; } -- Gitblit v1.7.1