ソースを参照

企业认证修改

tudc 4 年 前
コミット
390982b79b

+ 133 - 84
tianhu-system/src/main/java/com/tianhu/system/companyAuth/controller/OwnAuthController.java

@@ -230,12 +230,11 @@ public class OwnAuthController extends BaseController {
         List<Map<String,String>> qtfjList = (List<Map<String, String>>) map.get("qtfjList");
         String  scyId  =  null;
         SysCompany SysCompany = new SysCompany();
-            if(use.getCompanyId() == null){
-                scyId  =  IdUtils.fastSimpleUUID();
-
-        }else{
-                scyId = use.getCompanyId();
-            }
+        if (use.getCompanyId() == null){
+            scyId  =  IdUtils.fastSimpleUUID();
+        } else {
+            scyId = use.getCompanyId();
+        }
         SysCompany.setScyId(scyId);
         SysCompany.setScyName(scyName);
         SysCompany.setScySocialCode(scySocialCode);
@@ -301,7 +300,12 @@ public class OwnAuthController extends BaseController {
         //获取当前时间
         Date currentTime = DateUtils.getNowDate();
         SysCompany.setCreateTime(currentTime);
-        sysCompanyService.createSysCompany(SysCompany);
+        if (use.getCompanyId() == null) {
+            sysCompanyService.createSysCompany(SysCompany);
+        } else {
+            sysCompanyService.updateSysCompany(SysCompany);
+        }
+
         //部门id
         SysDept dept = new SysDept();
         dept.setCompanyId(scyId);
@@ -331,46 +335,125 @@ public class OwnAuthController extends BaseController {
             sysRole.setRoleName(scyName);
             roleMapper.updateRole(sysRole);
         }else{
-        sysRole.setRoleName(scyName);
-        sysRole.setRoleSort(defaultOrder);
-        sysRole.setRoleKey(scyName);
-        sysRole.setDataScope(dataScope);
-        sysRole.setMenuCheckStrictly(isCheck);
-        sysRole.setDeptCheckStrictly(isCheck);
-        sysRole.setStatus(status);
-        sysRole.setStatus("0");
-        sysRole.setCreateBy(use.getUserId() + "");
-        sysRole.setIsAuto("1");
-        companyService.insertRole(sysRole);
-        }
-        //TODO
-        //角色权限未控制
+            sysRole.setRoleName(scyName);
+            sysRole.setRoleSort(defaultOrder);
+            sysRole.setRoleKey(scyName);
+            sysRole.setDataScope(dataScope);
+            sysRole.setMenuCheckStrictly(isCheck);
+            sysRole.setDeptCheckStrictly(isCheck);
+            sysRole.setStatus(status);
+            sysRole.setStatus("0");
+            sysRole.setCreateBy(use.getUserId() + "");
+            sysRole.setIsAuto("1");
+            companyService.insertRole(sysRole);
+            roleList = roleService.selectRoleList(sysRole);
+        }
         //角色id
         Long roleId = roleList.get(0).getRoleId();
         Long[] roleIds = new Long[1];
         roleIds[0] = roleId;
-        //用户新增或修改
-        SysUser sysUser = new SysUser();
-        SysUser listUser = userService.selectUserByUserName(phoneNumber);
-        if(listUser == null){
-            sysUser.setUserName(phoneNumber);
+
+        SysUser handlerUser = null;
+        // 经办人与登录用户是同一手机号
+        if (use.getUserName().equals(phoneNumber)) {
+            // 修改用户数据
+            OwnSysUser sysUser = new OwnSysUser();
+            sysUser.setUserId(String.valueOf(use.getUserId()));
             sysUser.setNickName(review);
-            String password = configService.selectConfigByKey("sys.user.initPassword");
-            sysUser.setPassword(SecurityUtils.encryptPassword(password));
-            sysUser.setCreateBy(use.getUserId()+"");
             sysUser.setRoleIds(roleIds);
-            userService.insertUser(sysUser);
+            userService.updateUser(sysUser);
+            // 增加关系表数据
+            SysUserCompanyRel sysUserCompanyRel = new SysUserCompanyRel();
+            sysUserCompanyRel.setSucrCompanyId(scyId);
+            sysUserCompanyRel.setSucrUserId(use.getUserId());
+            sysUserCompanyRel.setSucrDeptId(deptId);
+            sysUserCompanyRel.setSucrHandler("1");
+            if(CommonUtil.isNotEmpty(handlerCard)){
+                sysUserCompanyRel.setSucrCard(handlerCard);
+            }else{
+                sysUserCompanyRel.setSucrCard(scyLegalId);
+            }
+            sysUserCompanyRel.setSucrCardFile(fsfzzList);
+            if(jsfzfList.size() > 0){
+                sysUserCompanyRel.setSucrCardBackFile(jsfzfList.get(0).get("uid"));
+            }
+            sysUserCompanyRelService.saveOrUpdate(sysUserCompanyRel);
+        // 经办人与登录用户不是同一手机号
         } else {
-            listUser.setNickName(review);
-            listUser.setRoleIds(roleIds);
-            userService.insertUserRole(listUser);
+            // 经办人手机号是否存在
+            handlerUser = userService.selectUserByUserName(phoneNumber);
+            // 经办人不存在
+            if(handlerUser == null){
+                SysUser sysUser = new SysUser();
+                sysUser.setUserName(phoneNumber);
+                sysUser.setNickName(review);
+                String password = configService.selectConfigByKey("sys.user.initPassword");
+                sysUser.setPassword(SecurityUtils.encryptPassword(password));
+                sysUser.setCreateBy(use.getUserId()+"");
+                sysUser.setRoleIds(roleIds);
+                userService.insertUser(sysUser);
+
+                handlerUser = userService.selectUserByUserName(phoneNumber);
+                //创建经办人与企业关系
+                SysUserCompanyRel sysUserCompanyRel = new SysUserCompanyRel();
+                sysUserCompanyRel.setSucrCompanyId(scyId);
+                sysUserCompanyRel.setSucrUserId(handlerUser.getUserId());
+                sysUserCompanyRel.setSucrDeptId(deptId);
+                sysUserCompanyRel.setSucrHandler("1");
+                if(CommonUtil.isNotEmpty(handlerCard)){
+                    sysUserCompanyRel.setSucrCard(handlerCard);
+                }else{
+                    sysUserCompanyRel.setSucrCard(scyLegalId);
+                }
+                sysUserCompanyRel.setSucrCardFile(fsfzzList);
+                if(jsfzfList.size() > 0){
+                    sysUserCompanyRel.setSucrCardBackFile(jsfzfList.get(0).get("uid"));
+                }
+                sysUserCompanyRelService.saveOrUpdate(sysUserCompanyRel);
+            // 经办人不存在
+            } else {
+                // TODO多公司用户名字存在不一样问题
+                OwnSysUser sysUser = new OwnSysUser();
+                sysUser.setUserId(String.valueOf(use.getUserId()));
+                sysUser.setNickName(review);
+                sysUser.setRoleIds(roleIds);
+                userService.updateUser(sysUser);
+                // 新增角色
+                handlerUser.setRoleIds(roleIds);
+                userService.insertUserRole(handlerUser);
+
+                //创建经办人与企业关系
+                SysUserCompanyRel sysUserCompanyRel = new SysUserCompanyRel();
+                sysUserCompanyRel.setSucrCompanyId(scyId);
+                sysUserCompanyRel.setSucrUserId(handlerUser.getUserId());
+                sysUserCompanyRel.setSucrDeptId(deptId);
+                sysUserCompanyRel.setSucrHandler("1");
+                if(CommonUtil.isNotEmpty(handlerCard)){
+                    sysUserCompanyRel.setSucrCard(handlerCard);
+                }else{
+                    sysUserCompanyRel.setSucrCard(scyLegalId);
+                }
+                sysUserCompanyRel.setSucrCardFile(fsfzzList);
+                if(jsfzfList.size() > 0){
+                    sysUserCompanyRel.setSucrCardBackFile(jsfzfList.get(0).get("uid"));
+                }
+                sysUserCompanyRelService.saveOrUpdate(sysUserCompanyRel);
+            }
+            //创建登陆用户与企业关系
+            SysUserCompanyRel userCompany = new SysUserCompanyRel();
+            userCompany.setSucrCompanyId(scyId);
+            userCompany.setSucrUserId(use.getUserId());
+            userCompany.setSucrDeptId(deptId);
+            userCompany.setSucrHandler("0");
+            sysUserCompanyRelService.saveOrUpdate(userCompany);
         }
-        SysUser listUserTwo = userService.selectUserByUserName(phoneNumber);
-        SysUser listUsers = null;
+
         //创建其他和管理员
-        if(CommonUtil.isNotEmpty(operator)&&CommonUtil.isNotEmpty(number)){
-            listUsers = userService.selectUserByUserName(number);
-            if(listUsers == null) {
+        SysUser operatorUser = null;
+        if(CommonUtil.isNotEmpty(operator) && CommonUtil.isNotEmpty(number)){
+            Long  operatorUserId = null;
+            operatorUser = userService.selectUserByUserName(number);
+            if(operatorUser == null) {
                 SysUser user = new SysUser();
                 user.setUserName(number);
                 user.setNickName(operator);
@@ -379,51 +462,20 @@ public class OwnAuthController extends BaseController {
                 user.setCreateBy(use.getUserId() + "");
                 user.setRoleIds(roleIds);
                 userService.insertUser(user);
+                operatorUser = userService.selectUserByUserName(number);
             }else{
-                listUser.setRoleIds(roleIds);
-                userService.insertUserRole(listUsers);
+                operatorUser.setRoleIds(roleIds);
+                userService.insertUserRole(operatorUser);
             }
-            SysUser listUserf = userService.selectUserByUserName(number);
+            operatorUserId = operatorUser.getUserId();
+
             SysUserCompanyRel sysUserCompanyRel =new SysUserCompanyRel();
             sysUserCompanyRel.setSucrCompanyId(scyId);
-            sysUserCompanyRel.setSucrUserId(listUserf.getUserId());
+            sysUserCompanyRel.setSucrUserId(operatorUserId);
             sysUserCompanyRel.setSucrDeptId(deptId);
             sysUserCompanyRel.setSucrHandler("0");
             sysUserCompanyRelService.createSysUserCompanyRel(sysUserCompanyRel);
         }
-        //创建用户与企业关系
-        SysUserCompanyRel sysUserCompanyRel =new SysUserCompanyRel();
-        sysUserCompanyRel.setSucrCompanyId(scyId);
-        sysUserCompanyRel.setSucrUserId(listUserTwo.getUserId());
-        sysUserCompanyRel.setSucrDeptId(deptId);
-        sysUserCompanyRel.setSucrHandler("1");
-        if(CommonUtil.isNotEmpty(handlerCard)){
-            sysUserCompanyRel.setSucrCard(handlerCard);
-        }else{
-            sysUserCompanyRel.setSucrCard(scyLegalId);
-        }
-
-        sysUserCompanyRel.setSucrCardFile(fsfzzList);
-        if(jsfzfList.size()>0){
-            sysUserCompanyRel.setSucrCardBackFile(jsfzfList.get(0).get("uid"));
-        }
-        LambdaQueryWrapper<SysUserCompanyRel> userCompanyRel = new LambdaQueryWrapper<>();
-        //企业名称
-        userCompanyRel.eq(SysUserCompanyRel::getSucrUserId,use.getUserId());
-        //统一社会信用代码
-        userCompanyRel.eq(SysUserCompanyRel::getSucrCompanyId,scyId);
-        List<SysUserCompanyRel> companyRel = sysUserCompanyRelService.findSysUserCompanyRels(userCompanyRel);
-       //如果当前用户与企业不存在关联,关联当前企业
-        if(companyRel.size()==0){
-            SysUserCompanyRel userCompany =new SysUserCompanyRel();
-            userCompany.setSucrCompanyId(scyId);
-            userCompany.setSucrUserId(use.getUserId());
-            userCompany.setSucrDeptId(deptId);
-            userCompany.setSucrHandler("0");
-            sysUserCompanyRelService.createSysUserCompanyRel(userCompany);
-        }
-        //修改当前用户企业
-        sysUserCompanyRelService.updateSysUserCompanyRel(sysUserCompanyRel);
         //返回企业信息
         SysCompany company = sysCompanyService.getById(scyId);
 
@@ -447,19 +499,14 @@ public class OwnAuthController extends BaseController {
             if (!"200".equals(flowableRes.get("code"))) {
                 throw new Exception("审批数据新增失败!");
             }
-            // 经办人不存在
-            if(listUser == null){
-                listUser = userService.selectUserByUserName(phoneNumber);
-            }
-            flowableRes = flowableService.addFlowableUser(String.valueOf(listUser.getUserId()), listUser.getNickName(), scyId);
+            flowableRes = flowableService.addFlowableUser(String.valueOf(handlerUser.getUserId()), handlerUser.getNickName(), scyId);
             if (!"200".equals(flowableRes.get("code"))) {
                 throw new Exception("审批数据新增失败!");
             }
         }
         // 业务人员不存在
-        if (CommonUtil.isNotEmpty(operator) && CommonUtil.isNotEmpty(number) && listUsers == null) {
-            listUsers = userService.selectUserByUserName(number);
-            flowableRes = flowableService.addFlowableUser(String.valueOf(listUsers.getUserId()), listUsers.getNickName(), scyId);
+        if (operatorUser != null) {
+            flowableRes = flowableService.addFlowableUser(String.valueOf(operatorUser.getUserId()), operatorUser.getNickName(), scyId);
             if (!"200".equals(flowableRes.get("code"))) {
                 throw new Exception("审批数据新增失败!");
             }
@@ -801,7 +848,9 @@ public class OwnAuthController extends BaseController {
                 map.put("data",bankAcc);
                 map.put("userCompany",userCompanyRels);
             }
+            return R.ok(map);
+        } else {
+            return R.ok();
         }
-        return R.ok(map);
     }
 }

+ 2 - 2
tianhu-system/src/main/java/com/tianhu/system/mapper/SysUserRoleMapper.java

@@ -17,10 +17,10 @@ public interface SysUserRoleMapper
     /**
      * 通过用户ID删除用户和角色关联
      * 
-     * @param userId 用户ID
+     * @param map
      * @return 结果
      */
-    public int deleteUserRoleByUserId(Long userId);
+    public int deleteUserRoleByUserId(Map<String, Object> map);
 
     /**
      * 批量删除用户和角色关联

+ 12 - 9
tianhu-system/src/main/java/com/tianhu/system/service/impl/SysUserServiceImpl.java

@@ -280,8 +280,11 @@ public class SysUserServiceImpl implements ISysUserService
     public int updateUser(SysUser user)
     {
         Long userId = user.getUserId();
+        Map<String, Object> param = new HashMap<>();
+        param.put("userId", userId);
+        param.put("companyId", user.getCompanyId());
         // 删除用户与角色关联
-        userRoleMapper.deleteUserRoleByUserId(userId);
+        userRoleMapper.deleteUserRoleByUserId(param);
         // 新增用户与角色管理
         insertUserRole(user);
 
@@ -305,14 +308,13 @@ public class SysUserServiceImpl implements ISysUserService
     public int updateUser(OwnSysUser user)
     {
         Long userId = Long.valueOf(user.getUserId());
+        Map<String, Object> param = new HashMap<>();
+        param.put("userId", userId);
+        param.put("companyId", user.getCompanyId());
         // 删除用户与角色关联
-        userRoleMapper.deleteUserRoleByUserId(userId);
+        userRoleMapper.deleteUserRoleByUserId(param);
         // 新增用户与角色管理
         insertUserRoles(user);
-        // 删除用户与岗位关联
-        userPostMapper.deleteUserPostByUserId(userId);
-        // 新增用户与岗位管理
-        insertUserPosts(user);
         return userMapper.updateUser(user);
     }
 
@@ -496,9 +498,10 @@ public class SysUserServiceImpl implements ISysUserService
     public int deleteUserById(Long userId)
     {
         // 删除用户与角色关联
-        userRoleMapper.deleteUserRoleByUserId(userId);
-        // 删除用户与岗位表
-        userPostMapper.deleteUserPostByUserId(userId);
+        Map<String, Object> param = new HashMap<>();
+        param.put("userId", userId);
+        // 删除用户与角色关联
+        userRoleMapper.deleteUserRoleByUserId(param);
         return userMapper.deleteUserById(userId);
     }
 

+ 5 - 2
tianhu-system/src/main/resources/mapper/system/SysUserRoleMapper.xml

@@ -9,8 +9,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<result property="roleId"     column="role_id"      />
 	</resultMap>
 
-	<delete id="deleteUserRoleByUserId" parameterType="Long">
-		delete from sys_user_role where user_id=#{userId}
+	<delete id="deleteUserRoleByUserId" parameterType="map">
+		delete from sys_user_role where user_id = #{userId}
+		<if test = "companyId != null and companyId != ''">
+			and company_id = #{companyId}
+		</if>
 	</delete>
 	
 	<select id="countUserRoleByRoleId" resultType="Integer">