From 0c82398dad95f536e22b5e1966f79aa29b2cf1c9 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期四, 03 七月 2025 19:34:39 +0800
Subject: [PATCH] 修改bug

---
 ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java |  182 +++++++++++++++++++++++++++++++--------------
 1 files changed, 124 insertions(+), 58 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 1b474fe..fe302b5 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
@@ -10,16 +10,16 @@
 import com.stylefeng.guns.core.common.constant.factory.PageFactory;
 import com.stylefeng.guns.core.log.LogObjectHolder;
 import com.stylefeng.guns.core.shiro.ShiroKit;
+import com.stylefeng.guns.core.shiro.ShiroUser;
 import com.stylefeng.guns.core.util.SinataUtil;
 import com.stylefeng.guns.core.util.ToolUtil;
 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.qianyuntong.EmployeeUtil;
 import com.stylefeng.guns.modular.system.util.qianyuntong.EnterpriseUtil;
-import com.stylefeng.guns.modular.system.util.qianyuntong.model.CheckEnterExist;
-import com.stylefeng.guns.modular.system.util.qianyuntong.model.CreateEnterprise;
-import com.stylefeng.guns.modular.system.util.qianyuntong.model.CreateEnterpriseRequest;
-import com.stylefeng.guns.modular.system.util.qianyuntong.model.ModifyEnterpriseInfoRequest;
+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.beans.factory.annotation.Value;
 import org.springframework.stereotype.Controller;
@@ -29,6 +29,7 @@
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 
+import javax.annotation.Resource;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
@@ -57,28 +58,29 @@
 
     @Autowired
     private ITTaxiCardService cardService;
-
-    @Autowired
-    private ITCompanyCityService tCompanyCityService;
-
-    @Autowired
-    private PushMinistryOfTransportUtil pushMinistryOfTransportUtil;
-
-    @Autowired
-    private ISpellOrderRuleService spellOrderRuleService;
-
-    @Value("${pushMinistryOfTransport}")
-    private boolean pushMinistryOfTransport;
-
-
-
-
-    /**
-     * 跳转到修改平台信息
-     */
+	
+	@Autowired
+	private ITCompanyCityService tCompanyCityService;
+	
+	@Autowired
+	private PushMinistryOfTransportUtil pushMinistryOfTransportUtil;
+	
+	@Autowired
+	private ISpellOrderRuleService spellOrderRuleService;
+	@Resource
+	private ShiroExtUtil shiroExtUtil;
+	
+	@Value("${pushMinistryOfTransport}")
+	private boolean pushMinistryOfTransport;
+	
+	
+	/**
+	 * 跳转到修改平台信息
+	 */
     @RequestMapping("/admin_update")
     public String tCompanyUpdate(Model model) {
-        TCompany tCompany = tCompanyService.selectOne(new EntityWrapper<TCompany>().eq("type",1).notIn("flag",3));
+	    ShiroUser user1 = shiroExtUtil.getUser();
+        TCompany tCompany = tCompanyService.selectById(user1.getObjectId());
         model.addAttribute("item",tCompany);
         LogObjectHolder.me().set(tCompany);
 
@@ -87,7 +89,7 @@
         model.addAttribute("provinceList",provinceList);
 
         //系统用户对象
-        User user = userService.selectOne(new EntityWrapper<User>().eq("roleType", 1).eq("objectId", tCompany.getId()));
+        User user = userService.selectById(user1.getId());
         model.addAttribute("user",user);
 
         //经营区域
@@ -127,13 +129,13 @@
      */
     @RequestMapping("/tCompany_addFranchisee")
     public String tCompany_addFranchisee(Model model) {
-	    Integer roleType = ShiroExtUtil.getUser().getRoleType();
+	    Integer roleType = shiroExtUtil.getUser().getRoleType();
         if (1 == roleType){
             //查询分公司
             List<TCompany> companyList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 2));
             model.addAttribute("companyList",companyList);
         }else if (2 == roleType){
-	        TCompany tCompany = tCompanyService.selectById(ShiroExtUtil.getUser().getObjectId());
+	        TCompany tCompany = tCompanyService.selectById(shiroExtUtil.getUser().getObjectId());
             model.addAttribute("company",tCompany);
         }
         model.addAttribute("roleType",roleType);
@@ -196,7 +198,7 @@
 	    model.addAttribute("item", tCompany);
 	    LogObjectHolder.me().set(tCompany);
 	
-	    Integer roleType = ShiroExtUtil.getUser().getRoleType();
+	    Integer roleType = shiroExtUtil.getUser().getRoleType();
 	    model.addAttribute("roleType", roleType);
 	
 	    TCompany obj = tCompanyService.selectById(tCompany.getSuperiorId());
@@ -222,13 +224,13 @@
 	    model.addAttribute("item", tCompany);
 	    LogObjectHolder.me().set(tCompany);
 	
-	    Integer roleType = ShiroExtUtil.getUser().getRoleType();
+	    Integer roleType = shiroExtUtil.getUser().getRoleType();
 	    if (1 == roleType) {
 		    //查询分公司
 		    List<TCompany> companyList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 2));
 		    model.addAttribute("companyList", companyList);
 	    } else if (2 == roleType) {
-		    TCompany obj = tCompanyService.selectById(ShiroExtUtil.getUser().getObjectId());
+		    TCompany obj = tCompanyService.selectById(shiroExtUtil.getUser().getObjectId());
 		    model.addAttribute("company", obj);
 	    }
 	    model.addAttribute("roleType", roleType);
@@ -319,10 +321,10 @@
 		    endTime = timeArray[1];
 	    }
 	    Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
-	    if (ShiroExtUtil.getUser().getRoleType() == 3) {
+	    if (shiroExtUtil.getUser().getRoleType() == 3) {
 		    page.setRecords(null);
 	    } else {
-		    page.setRecords(tCompanyService.getFranchiseeList(page, beginTime, endTime, name, account, principalName, principalPhone, serviceStr, state, ShiroExtUtil.getUser().getRoleType(), ShiroExtUtil.getUser().getObjectId()));
+		    page.setRecords(tCompanyService.getFranchiseeList(page, beginTime, endTime, name, account, principalName, principalPhone, serviceStr, state, shiroExtUtil.getUser().getRoleType(), shiroExtUtil.getUser().getObjectId()));
 	    }
 	    return super.packForBT(page);
     }
@@ -341,24 +343,57 @@
 	    //调用中台接口创建企业
 	    CheckEnterExist checkEnterExist = EnterpriseUtil.checkEnterNameExist(tCompany.getName());
 	    String enterCode = "";
+		Long empId = null;
+	    String principalName = tCompany.getPrincipalName();
+	    String principalPhone = tCompany.getPrincipalPhone();
+	
 	    //企业未注册,进行注册
 	    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());
+		    request.setMobile(principalPhone);
 		    CreateEnterprise enterprise = EnterpriseUtil.createEnterprise(request);
 		    enterCode = enterprise.getIdCode();
+		    List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(principalPhone, enterCode);
+		    empId = userInfoByPhone.get(0).getEmpId();
 	    }
 	    //企业已注册
 	    if (null != checkEnterExist && "1".equals(checkEnterExist.getIsReg())) {
+		    String larName = checkEnterExist.getLarName();
+		    String mobile = checkEnterExist.getMobile();
 		    enterCode = checkEnterExist.getEnterCode();
+		    if(!mobile.equals(principalPhone)){
+				//负责人不匹配,则创建新的员工到中台
+			    SaveStaffNodeRequest request = new SaveStaffNodeRequest();
+			    request.setMobile(mobile);
+			    request.setEntercode(enterCode);
+			    request.setEmpName(principalName);
+			    request.setEmpNickname(principalName);
+			    request.setLoginNo(principalPhone);
+			    request.setEmpSex("女");
+			    request.setMphone(principalPhone);
+			    request.setEmail(principalPhone + "@qyt.com");
+			    request.setDeptId(0);
+			    request.setPositionId(1);
+			    request.setSuperLevel(0);
+			    request.setHideMobile(0);
+			    SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request);
+			    empId = saveStaffNode.getEmpId();
+				
+		    }else{
+			    List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(mobile, enterCode);
+			    empId = userInfoByPhone.get(0).getEmpId();
+		    }
+		    tCompany.setPrincipalName(larName);
+		    tCompany.setPrincipalPhone(mobile);
 	    }
 	
 	    tCompany.setEnterCode(enterCode);
 	    tCompany.setType(2);  //2:分公司
 	    tCompany.setState(0); //0:正常
+	    tCompany.setFlag("1");
 	    tCompany.setInsertTime(new Date());
 	    tCompany.setUpdateTime(new Date());
 	    tCompanyService.insert(tCompany);
@@ -369,7 +404,7 @@
 	
 	    //添加User对象
 	    User user = new User();
-	    user.setAccount(account);
+	    user.setAccount(principalPhone);
 	    user.setSalt(ShiroKit.getRandomSalt(5));
 	    user.setPassword(ShiroKit.md5(password, user.getSalt()));
 	    user.setRoleid("2");
@@ -380,6 +415,9 @@
 	    user.setObjectId(tCompany.getId());
 	    user.setName(tCompany.getName());
 	    user.setSex(1);
+	    user.setEmpId(empId);
+	    user.setEntercode(enterCode);
+	    user.setEnterId(Long.valueOf(enterCode));
 	    userService.insert(user);
 	
 	    //添加经营区域
@@ -435,33 +473,66 @@
 	    //调用中台接口创建企业
 	    CheckEnterExist checkEnterExist = EnterpriseUtil.checkEnterNameExist(tCompany.getName());
 	    String enterCode = "";
+	    Long empId = null;
+	    String principalName = tCompany.getPrincipalName();
+	    String principalPhone = tCompany.getPrincipalPhone();
+	
 	    //企业未注册,进行注册
 	    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());
+		    request.setMobile(principalPhone);
 		    CreateEnterprise enterprise = EnterpriseUtil.createEnterprise(request);
 		    enterCode = enterprise.getIdCode();
+		    List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(principalPhone, enterCode);
+		    empId = userInfoByPhone.get(0).getEmpId();
 	    }
 	    //企业已注册
 	    if (null != checkEnterExist && "1".equals(checkEnterExist.getIsReg())) {
+		    String larName = checkEnterExist.getLarName();
+		    String mobile = checkEnterExist.getMobile();
 		    enterCode = checkEnterExist.getEnterCode();
+		    if(!mobile.equals(principalPhone)){
+			    //负责人不匹配,则创建新的员工到中台
+			    SaveStaffNodeRequest request = new SaveStaffNodeRequest();
+			    request.setMobile(mobile);
+			    request.setEntercode(enterCode);
+			    request.setEmpName(principalName);
+			    request.setEmpNickname(principalName);
+			    request.setLoginNo(principalPhone);
+			    request.setEmpSex("女");
+			    request.setMphone(principalPhone);
+			    request.setEmail(principalPhone + "@qyt.com");
+			    request.setDeptId(0);
+			    request.setPositionId(1);
+			    request.setSuperLevel(0);
+			    request.setHideMobile(0);
+			    SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request);
+			    empId = saveStaffNode.getEmpId();
+			
+		    }else{
+			    List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(mobile, enterCode);
+			    empId = userInfoByPhone.get(0).getEmpId();
+		    }
+		    tCompany.setPrincipalName(larName);
+		    tCompany.setPrincipalPhone(mobile);
 	    }
 	
 	    tCompany.setEnterCode(enterCode);
 	    tCompany.setType(3);  //2:分公司
-	    if (ShiroExtUtil.getUser().getRoleType() == 2) {
-		    tCompany.setSuperiorId(ShiroExtUtil.getUser().getObjectId());
+	    if (shiroExtUtil.getUser().getRoleType() == 2) {
+		    tCompany.setSuperiorId(shiroExtUtil.getUser().getObjectId());
 	    }
 	    tCompany.setState(0); //0:正常
+	    tCompany.setFlag("1");
 	    tCompany.setInsertTime(new Date());
 	    tCompanyService.insert(tCompany);
 	
 	    //添加User对象
 	    User user = new User();
-	    user.setAccount(account);
+	    user.setAccount(principalPhone);
 	    user.setSalt(ShiroKit.getRandomSalt(5));
 	    user.setPassword(ShiroKit.md5(password, user.getSalt()));
 	    user.setRoleid("3");
@@ -472,6 +543,9 @@
 	    user.setObjectId(tCompany.getId());
 	    user.setName(tCompany.getName());
 	    user.setSex(1);
+	    user.setEmpId(empId);
+	    user.setEntercode(enterCode);
+	    user.setEnterId(Long.valueOf(enterCode));
 	    userService.insert(user);
 	
 	    return SUCCESS_TIP;
@@ -503,19 +577,6 @@
     public Object update(TCompany tCompany,@RequestParam String subArr,String account,String password,Integer userId) {
 	    //判断账号
 	    User user = userService.selectById(userId);
-	    if (SinataUtil.isNotEmpty(account) && SinataUtil.isNotEmpty(password)) {
-		    if (!user.getAccount().equals(account)) {
-			    //判断账号是否已存在
-			    int count = userService.selectCount(new EntityWrapper<User>().eq("account", account));
-			    if (count > 0) {
-				    return "error";
-			    }
-		    }
-		    //修改账号密码
-		    user.setAccount(account);
-		    user.setSalt(ShiroKit.getRandomSalt(5));
-		    user.setPassword(ShiroKit.md5(password, user.getSalt()));
-	    }
 	    TCompany company = tCompanyService.selectById(tCompany.getId());
 	    //调用中台接口创建企业
 	    CheckEnterExist checkEnterExist = EnterpriseUtil.checkEnterNameExist(company.getName());
@@ -524,7 +585,7 @@
 	    if (null != checkEnterExist && "1".equals(checkEnterExist.getIsReg())) {
 		    ModifyEnterpriseInfoRequest request = new ModifyEnterpriseInfoRequest();
 		    request.setEnter_code(company.getEnterCode());
-		    request.setOperator(user.getPhone());
+		    request.setOperator(company.getPrincipalPhone());
 		    request.setEnter_name(tCompany.getName());
 		    request.setEnter_nickname(tCompany.getName());
 		    EnterpriseUtil.modifyEnterpriseInfo(request);
@@ -539,6 +600,9 @@
 		    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);
@@ -546,6 +610,8 @@
 	    tCompany.setVersion(company.getVersion() + 1);
 	    tCompanyService.updateById(tCompany);
 	
+	    user.setEntercode(enterCode);
+	    user.setEnterId(Long.valueOf(enterCode));
 	    user.setName(tCompany.getName());
 	    userService.updateById(user);
 	
@@ -592,7 +658,7 @@
 	    if (null != checkEnterExist && "1".equals(checkEnterExist.getIsReg())) {
 		    ModifyEnterpriseInfoRequest request = new ModifyEnterpriseInfoRequest();
 		    request.setEnter_code(company.getEnterCode());
-		    request.setOperator(user.getPhone());
+		    request.setOperator(tCompany.getPrincipalPhone());
 		    request.setEnter_name(tCompany.getName());
 		    request.setEnter_nickname(tCompany.getName());
 		    EnterpriseUtil.modifyEnterpriseInfo(request);
@@ -607,17 +673,17 @@
 		    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);
 	    tCompanyService.updateById(tCompany);
 	
 	    //修改账号密码
-	    user.setAccount(account);
-	    user.setSalt(ShiroKit.getRandomSalt(5));
-	    user.setPassword(ShiroKit.md5(password, user.getSalt()));
-	    user.setName(tCompany.getName());
+	    user.setEntercode(enterCode);
+	    user.setEnterId(Long.valueOf(enterCode));
 	    userService.updateById(user);
-	
 	    return SUCCESS_TIP;
     }
 

--
Gitblit v1.7.1