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/general/TCompanyController.java | 204 ++++++++++++++++++++------------------------------- 1 files changed, 80 insertions(+), 124 deletions(-) diff --git a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java index 3649bc4..49a83a2 100644 --- a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java +++ b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.stylefeng.guns.core.base.controller.BaseController; +import com.stylefeng.guns.core.base.tips.ErrorTip; import com.stylefeng.guns.core.beetl.ShiroExtUtil; import com.stylefeng.guns.core.common.constant.factory.PageFactory; import com.stylefeng.guns.core.log.LogObjectHolder; @@ -16,6 +17,7 @@ import com.stylefeng.guns.modular.system.model.*; import com.stylefeng.guns.modular.system.service.*; import com.stylefeng.guns.modular.system.util.PushMinistryOfTransportUtil; +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.EnterpriseUtil; import com.stylefeng.guns.modular.system.util.qianyuntong.UserUtil; @@ -29,7 +31,6 @@ import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; -import javax.annotation.Resource; import java.util.*; /** @@ -64,7 +65,7 @@ @Autowired private ISpellOrderRuleService spellOrderRuleService; - @Resource + @Autowired private ShiroExtUtil shiroExtUtil; @Value("${pushMinistryOfTransport}") @@ -340,58 +341,65 @@ //调用中台接口创建企业 CheckEnterExist checkEnterExist = EnterpriseUtil.checkEnterNameExist(tCompany.getName()); String enterCode = ""; + Integer enterNew = null; Long empId = null; - String principalName = tCompany.getPrincipalName(); - String principalPhone = tCompany.getPrincipalPhone(); - + Integer empnew = null; + ShiroUser user1 = shiroExtUtil.getUser(); + User user2 = userService.selectById(user1.getId()); //企业未注册,进行注册 if (null == checkEnterExist || "0".equals(checkEnterExist.getIsReg())) { CreateEnterpriseRequest request = new CreateEnterpriseRequest(); request.setName(tCompany.getName()); request.setNickName(tCompany.getName()); request.setIndustry_code("123456"); - request.setMobile(principalPhone); + request.setMobile(account); CreateEnterprise enterprise = EnterpriseUtil.createEnterprise(request); enterCode = enterprise.getIdCode(); - List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(principalPhone, enterCode); + enterNew = 1; + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(account, enterCode); if(null != userInfoByPhone && userInfoByPhone.size() > 0){ empId = userInfoByPhone.get(0).getEmpId(); + empnew = 0; }else{ empId = 0L; + empnew = 1; } } //企业已注册 if (null != checkEnterExist && "1".equals(checkEnterExist.getIsReg())) { - String larName = checkEnterExist.getLarName(); - String mobile = checkEnterExist.getMobile(); enterCode = checkEnterExist.getEnterCode(); - if(!mobile.equals(principalPhone)){ + enterNew = 0; + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(account, enterCode); + if(null == userInfoByPhone ||userInfoByPhone.size() == 0){ //负责人不匹配,则创建新的员工到中台 SaveStaffNodeRequest request = new SaveStaffNodeRequest(); - request.setMobile(mobile); + request.setMobile(user2.getPhone()); request.setEntercode(enterCode); - request.setEmpName(principalName); - request.setEmpNickname(principalName); - request.setLoginNo(principalPhone); - request.setEmpSex("女"); - request.setMphone(principalPhone); - request.setEmail(principalPhone + "@qyt.com"); + request.setEmpName(tCompany.getName() + "管理员"); + request.setEmpNickname(tCompany.getName() + "管理员"); + request.setLoginNo(account); + request.setEmpSex("男"); + request.setMphone(account); + request.setEmail(account + "@qyt.com"); request.setDeptId(0); request.setPositionId(1); request.setSuperLevel(0); request.setHideMobile(0); - SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request); + ResultUtil<SaveStaffNode> resultUtil = EmployeeUtil.saveStaffNode(request); + if(200 != resultUtil.getStatus()){ + return new ErrorTip(resultUtil.getStatus(), resultUtil.getMsg()); + } + SaveStaffNode saveStaffNode = resultUtil.getData(); empId = saveStaffNode.getEmpId(); - + empnew = 1; }else{ - List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(mobile, enterCode); empId = userInfoByPhone.get(0).getEmpId(); + empnew = 0; } - tCompany.setPrincipalName(larName); - tCompany.setPrincipalPhone(mobile); } tCompany.setEnterCode(enterCode); + tCompany.setEnterNew(enterNew); tCompany.setType(2); //2:分公司 tCompany.setState(0); //0:正常 tCompany.setFlag("1"); @@ -405,7 +413,7 @@ //添加User对象 User user = new User(); - user.setAccount(principalPhone); + user.setAccount(account); user.setSalt(ShiroKit.getRandomSalt(5)); user.setPassword(ShiroKit.md5(password, user.getSalt())); user.setRoleid("2"); @@ -419,6 +427,7 @@ user.setEmpId(empId); user.setEntercode(enterCode); user.setEnterId(Long.valueOf(enterCode)); + user.setEmpnew(empnew); userService.insert(user); //编写异步延迟处理中台账号延迟创建的问题 if(0 == empId){ @@ -427,7 +436,7 @@ timer.schedule(new TimerTask() { @Override public void run() { - List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(principalPhone, finalEnterCode); + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(account, finalEnterCode); if(null != userInfoByPhone && userInfoByPhone.size() > 0){ Long empId1 = userInfoByPhone.get(0).getEmpId(); user.setEmpId(empId1); @@ -491,8 +500,10 @@ CheckEnterExist checkEnterExist = EnterpriseUtil.checkEnterNameExist(tCompany.getName()); String enterCode = ""; Long empId = null; - String principalName = tCompany.getPrincipalName(); - String principalPhone = tCompany.getPrincipalPhone(); + Integer empnew = null; + Integer enterNew = null; + ShiroUser user1 = shiroExtUtil.getUser(); + User user2 = userService.selectById(user1.getId()); //企业未注册,进行注册 if (null == checkEnterExist || "0".equals(checkEnterExist.getIsReg())) { @@ -500,48 +511,53 @@ request.setName(tCompany.getName()); request.setNickName(tCompany.getName()); request.setIndustry_code("123456"); - request.setMobile(principalPhone); + request.setMobile(account); CreateEnterprise enterprise = EnterpriseUtil.createEnterprise(request); enterCode = enterprise.getIdCode(); - List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(principalPhone, enterCode); + enterNew = 1; + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(account, enterCode); if(null != userInfoByPhone && userInfoByPhone.size() > 0){ empId = userInfoByPhone.get(0).getEmpId(); + empnew = 0; }else{ empId = 0L; + empnew = 1; } } //企业已注册 if (null != checkEnterExist && "1".equals(checkEnterExist.getIsReg())) { - String larName = checkEnterExist.getLarName(); - String mobile = checkEnterExist.getMobile(); + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(account, enterCode); enterCode = checkEnterExist.getEnterCode(); - if(!mobile.equals(principalPhone)){ - //负责人不匹配,则创建新的员工到中台 + enterNew = 0; + if(null == userInfoByPhone || userInfoByPhone.size() == 0){ SaveStaffNodeRequest request = new SaveStaffNodeRequest(); - request.setMobile(mobile); + request.setMobile(user2.getPhone()); request.setEntercode(enterCode); - request.setEmpName(principalName); - request.setEmpNickname(principalName); - request.setLoginNo(principalPhone); + request.setEmpName(tCompany.getName() + "管理员"); + request.setEmpNickname(tCompany.getName() + "管理员"); + request.setLoginNo(account); request.setEmpSex("女"); - request.setMphone(principalPhone); - request.setEmail(principalPhone + "@qyt.com"); + request.setMphone(account); + request.setEmail(account + "@qyt.com"); request.setDeptId(0); request.setPositionId(1); request.setSuperLevel(0); request.setHideMobile(0); - SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request); + ResultUtil<SaveStaffNode> resultUtil = EmployeeUtil.saveStaffNode(request); + if(200 != resultUtil.getStatus()){ + return new ErrorTip(resultUtil.getStatus(), resultUtil.getMsg()); + } + SaveStaffNode saveStaffNode = resultUtil.getData(); empId = saveStaffNode.getEmpId(); - + empnew = 1; }else{ - List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(mobile, enterCode); empId = userInfoByPhone.get(0).getEmpId(); + empnew = 0; } - tCompany.setPrincipalName(larName); - tCompany.setPrincipalPhone(mobile); } tCompany.setEnterCode(enterCode); + tCompany.setEnterNew(enterNew); tCompany.setType(3); //2:分公司 if (shiroExtUtil.getUser().getRoleType() == 2) { tCompany.setSuperiorId(shiroExtUtil.getUser().getObjectId()); @@ -553,7 +569,7 @@ //添加User对象 User user = new User(); - user.setAccount(principalPhone); + user.setAccount(account); user.setSalt(ShiroKit.getRandomSalt(5)); user.setPassword(ShiroKit.md5(password, user.getSalt())); user.setRoleid("3"); @@ -567,6 +583,7 @@ user.setEmpId(empId); user.setEntercode(enterCode); user.setEnterId(Long.valueOf(enterCode)); + user.setEmpnew(empnew); userService.insert(user); //编写异步延迟处理中台账号延迟创建的问题 if(0 == empId){ @@ -575,7 +592,7 @@ timer.schedule(new TimerTask() { @Override public void run() { - List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(principalPhone, finalEnterCode); + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(account, finalEnterCode); if(null != userInfoByPhone && userInfoByPhone.size() > 0){ Long empId1 = userInfoByPhone.get(0).getEmpId(); user.setEmpId(empId1); @@ -595,9 +612,16 @@ public Object delete(@RequestParam Integer tCompanyId) { TCompany tCompany = tCompanyService.selectById(tCompanyId); //调用中台接口创建企业 - CheckEnterExist checkEnterExist = EnterpriseUtil.checkEnterNameExist(tCompany.getName()); - if (null != checkEnterExist && "1".equals(checkEnterExist.getIsReg())) { - EnterpriseUtil.delEnterprise(checkEnterExist.getEnterCode(), tCompany.getPrincipalPhone()); + if(1 == tCompany.getEnterNew()){ + CheckEnterExist checkEnterExist = EnterpriseUtil.checkEnterNameExist(tCompany.getName()); + if (null != checkEnterExist && "1".equals(checkEnterExist.getIsReg())) { + ShiroUser user1 = shiroExtUtil.getUser(); + User user = userService.selectById(user1.getId()); + ResultUtil resultUtil = EnterpriseUtil.delEnterprise(checkEnterExist.getEnterCode(), user.getPhone()); + if(resultUtil.getStatus() != 200){ + return new ErrorTip(resultUtil.getStatus(), resultUtil.getMsg()); + } + } } tCompany.setFlag("3"); @@ -611,46 +635,13 @@ @RequestMapping(value = "/update") @ResponseBody public Object update(TCompany tCompany,@RequestParam String subArr,String account,String password,Integer userId) { - //判断账号 User user = userService.selectById(userId); - TCompany company = tCompanyService.selectById(tCompany.getId()); - //调用中台接口创建企业 - CheckEnterExist checkEnterExist = EnterpriseUtil.checkEnterNameExist(company.getName()); - String enterCode = null; - //企业已存在,编辑企业 - if (null != checkEnterExist && "1".equals(checkEnterExist.getIsReg())) { - ModifyEnterpriseInfoRequest request = new ModifyEnterpriseInfoRequest(); - request.setEnter_code(company.getEnterCode()); - request.setOperator(company.getPrincipalPhone()); - request.setEnter_name(tCompany.getName()); - request.setEnter_nickname(tCompany.getName()); - EnterpriseUtil.modifyEnterpriseInfo(request); - enterCode = checkEnterExist.getEnterCode(); + if(null != user && ToolUtil.isNotEmpty(password)){ + user.setPassword(ShiroKit.md5(password, user.getSalt())); + userService.updateById(user); } - //企业不存在,新增企业 - if (null == checkEnterExist || "0".equals(checkEnterExist.getIsReg())) { - CreateEnterpriseRequest request = new CreateEnterpriseRequest(); - request.setName(tCompany.getName()); - request.setNickName(tCompany.getName()); - request.setIndustry_code("123456"); - request.setMobile(tCompany.getPrincipalPhone()); - CreateEnterprise enterprise = EnterpriseUtil.createEnterprise(request); - enterCode = enterprise.getIdCode(); - List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(tCompany.getPrincipalPhone(), enterCode); - Long empId = userInfoByPhone.get(0).getEmpId(); - user.setEmpId(empId); - } - - company.setEnterCode(enterCode); - company.setUpdateTime(new Date()); - tCompany.setVersion(company.getVersion() + 1); + tCompany.setUpdateTime(new Date()); tCompanyService.updateById(tCompany); - - user.setEntercode(enterCode); - user.setEnterId(Long.valueOf(enterCode)); - user.setName(tCompany.getName()); - userService.updateById(user); - //添加经营区域 addSocpe(subArr, tCompany.getId()); @@ -677,48 +668,13 @@ @RequestMapping(value = "/updateFranchisee") @ResponseBody public Object updateFranchisee(TCompany tCompany,String account,String password,Integer userId) { - //判断账号 - User user = userService.selectById(userId); - if (!user.getAccount().equals(account)) { - //判断账号是否已存在 - int count = userService.selectCount(new EntityWrapper<User>().eq("account", account)); - if (count > 0) { - return "error"; - } - } - TCompany company = tCompanyService.selectById(tCompany.getId()); - //调用中台接口创建企业 - CheckEnterExist checkEnterExist = EnterpriseUtil.checkEnterNameExist(company.getName()); - String enterCode = null; - //企业已存在,编辑企业 - if (null != checkEnterExist && "1".equals(checkEnterExist.getIsReg())) { - ModifyEnterpriseInfoRequest request = new ModifyEnterpriseInfoRequest(); - request.setEnter_code(company.getEnterCode()); - request.setOperator(tCompany.getPrincipalPhone()); - request.setEnter_name(tCompany.getName()); - request.setEnter_nickname(tCompany.getName()); - EnterpriseUtil.modifyEnterpriseInfo(request); - enterCode = checkEnterExist.getEnterCode(); - } - //企业不存在,添加企业 - if (null == checkEnterExist || "0".equals(checkEnterExist.getIsReg())) { - CreateEnterpriseRequest request = new CreateEnterpriseRequest(); - request.setName(tCompany.getName()); - request.setNickName(tCompany.getName()); - request.setIndustry_code("123456"); - request.setMobile(tCompany.getPrincipalPhone()); - CreateEnterprise enterprise = EnterpriseUtil.createEnterprise(request); - enterCode = enterprise.getIdCode(); - List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(tCompany.getPrincipalPhone(), enterCode); - Long empId = userInfoByPhone.get(0).getEmpId(); - user.setEmpId(empId); - } - tCompany.setEnterCode(enterCode); + tCompany.setUpdateTime(new Date()); + tCompany.setVersion(tCompany.getVersion() + 1); tCompanyService.updateById(tCompany); //修改账号密码 - user.setEntercode(enterCode); - user.setEnterId(Long.valueOf(enterCode)); + User user = userService.selectById(userId); + user.setPassword(ShiroKit.md5(password, user.getSalt())); userService.updateById(user); return SUCCESS_TIP; } -- Gitblit v1.7.1