فهرست منبع

资方企业认证bug修改

cuixq 4 سال پیش
والد
کامیت
44c3172b37

+ 40 - 32
tianhu-system/src/main/java/com/tianhu/system/companyAuth/controller/OwnAuthController.java

@@ -229,12 +229,12 @@ public class OwnAuthController extends BaseController {
         }
         //注册时间
         String scyStartTime = CommonUtil.objToString(map.get("scyStartTime"));
-        if(CommonUtil.isEmpty(scyStartTime)){
+        if(CommonUtil.isEmpty(scyStartTime)||"--".equals(scyStartTime)){
             return R.fail("注册时间不能为空");
         }
         //到期时间
         String scyEndTime = CommonUtil.objToString(map.get("scyEndTime"));
-        if(CommonUtil.isEmpty(scyEndTime)){
+        if(CommonUtil.isEmpty(scyEndTime)||"--".equals(scyStartTime)){
             return R.fail("到期时间不能为空");
         }
         //企业地址
@@ -338,37 +338,36 @@ public class OwnAuthController extends BaseController {
         //四要素跳过(00:下一步,01:跳过)
         String skip =CommonUtil.objToString(map.get("skip"));
         String  scyId  =  null;
-        SysCompany SysCompany = new SysCompany();
+        SysCompany sysCompany = new SysCompany();
         if (use.getCompanyId() == null){
             scyId  =  IdUtils.fastSimpleUUID();
         } else {
             scyId = use.getCompanyId();
         }
-        SysCompany.setScyId(scyId);
-        SysCompany.setScyName(scyName);
-        SysCompany.setScySocialCode(scySocialCode);
-        SysCompany.setScyRegisteredCapital(scyRegisteredCapital);
-        SysCompany.setScyStartTime(scyStartTime);
-        SysCompany.setScyEndTime(scyEndTime);
-        SysCompany.setScyAddress(scyAddress);
-        SysCompany.setScyPhone(scyPhone);
-        SysCompany.setScyLegal(scyLegal);
-        SysCompany.setScyLegalId(scyLegalId);
-        SysCompany.setScyLicenseFile(scyLicenseFile);
-        SysCompany.setScyLegalFile(fsfzzList);
+        sysCompany.setScyId(scyId);
+        sysCompany.setScyName(scyName);
+        sysCompany.setScySocialCode(scySocialCode);
+        sysCompany.setScyRegisteredCapital(scyRegisteredCapital);
+        sysCompany.setScyStartTime(scyStartTime);
+        sysCompany.setScyEndTime(scyEndTime);
+        sysCompany.setScyAddress(scyAddress);
+        sysCompany.setScyLegal(scyLegal);
+        sysCompany.setScyLegalId(scyLegalId);
+        sysCompany.setScyLicenseFile(scyLicenseFile);
+        sysCompany.setScyLegalFile(fsfzzList);
         //对公户认证
-        SysCompany.setScyStatus("03");
+        sysCompany.setScyStatus("03");
         if(fsfzfList.size()>0){
-            SysCompany.setScyLegalBackFile(String.valueOf(fsfzfList.get(0).get("uid")));
+            sysCompany.setScyLegalBackFile(String.valueOf(fsfzfList.get(0).get("uid")));
         }
         if(frsqsList.size()>0){
-            SysCompany.setScyAuthorizationFile(frsqsList.get(0).get("uid"));
+            sysCompany.setScyAuthorizationFile(frsqsList.get(0).get("uid"));
         }
         if(szzssqList.size()>0){
-            SysCompany.setScyCommitmentFile(szzssqList.get(0).get("uid"));
+            sysCompany.setScyCommitmentFile(szzssqList.get(0).get("uid"));
         }
         if(qtfjList.size()>0){
-            SysCompany.setScyAppendixFile(qtfjList.get(0).get("uid"));
+            sysCompany.setScyAppendixFile(qtfjList.get(0).get("uid"));
         }
         //增加营业执照文件企业
         FileInf fileInf =new FileInf();
@@ -418,15 +417,15 @@ public class OwnAuthController extends BaseController {
         //四要素认证状态(00:未认证, 01:认证通过, 02:认证未通过, 03:人工审批通过, 04:人工审批不通过)
         if("SUCCESS".equals(companyAuth.getString("Message"))){
             if(!"20".equals(companyAuth.getString("Verification"))){
-                SysCompany.setScyAuthStatus("02");
+                sysCompany.setScyAuthStatus("02");
                 if(!"00".equals(skip)){
                     return R.ok("skip");
                 }
             }else{
-                SysCompany.setScyAuthStatus("01");
+                sysCompany.setScyAuthStatus("01");
             };
         }else{
-            SysCompany.setScyAuthStatus("02");
+            sysCompany.setScyAuthStatus("02");
             if(!"00".equals(skip)){
                 return R.ok("skip");
             }
@@ -441,9 +440,9 @@ public class OwnAuthController extends BaseController {
                 if(!scyName.equals(name)){
                     throw new Exception("企业名称与社会同一信用代码不一致!");
                 }
-                SysCompany.setScyAuthStatus("01");
+                sysCompany.setScyAuthStatus("01");
             }else{
-                SysCompany.setScyAuthStatus("02");
+                sysCompany.setScyAuthStatus("02");
                 if(!"00".equals(skip)){
                     return R.ok("skip");
                 }
@@ -452,15 +451,15 @@ public class OwnAuthController extends BaseController {
 
         if (use.getCompanyId() == null) {
             //获取创建人
-            SysCompany.setCreateBy(use.getUserId()+"");
+            sysCompany.setCreateBy(use.getUserId()+"");
             //获取当前时间
             Date currentTime = DateUtils.getNowDate();
-            SysCompany.setCreateTime(currentTime);
-            SysCompany.setScyType("02");
-            sysCompanyService.createSysCompany(SysCompany);
+            sysCompany.setCreateTime(currentTime);
+            sysCompany.setScyType("02");
+            sysCompanyService.createSysCompany(sysCompany);
         } else {
-            SysCompany.setUpdateBy(use.getUserId()+"");
-            sysCompanyService.updateSysCompany(SysCompany);
+            sysCompany.setUpdateBy(use.getUserId()+"");
+            sysCompanyService.updateSysCompany(sysCompany);
         }
        SysCompany companyServices = sysCompanyService.getById(scyId);
         if("01".equals(companyServices.getScyType())&&(CommonUtil.isEmpty(operator)||CommonUtil.isEmpty(number))){
@@ -713,15 +712,21 @@ public class OwnAuthController extends BaseController {
         SysCompany sysCompany = null;
         //获取上传文件token
         try{
+            long startTime=System.currentTimeMillis();
             //获取企业信息
              sysCompany = ownAuthService.businessLicense(file);
+            long endTime=System.currentTimeMillis();
+            System.out.println("识别运行时间: "+(endTime-startTime)+"ms");
         }catch (Exception e) {
              throw new Exception("识别失败,请重新上传!");
          }
         String token = SecurityUtils.getToken(ServletUtils.getRequest());
         try{
+            long startTime=System.currentTimeMillis();
             //文件传输
             R<PubFileInf> fileResult = remoteFileService.uploadFile(file,"01","04","00", "", token);
+            long endTime=System.currentTimeMillis();
+            System.out.println("文件上传运行时间: "+(endTime-startTime)+"ms");
             sysCompany.setScyLicenseFile(fileResult.getData().getPfiFileId());
         }catch (Exception e) {
              throw new Exception("文件传输失败!");
@@ -920,7 +925,7 @@ public class OwnAuthController extends BaseController {
             throw new Exception("请输入正确的金额!");
         }
         if(1.00<=Double.valueOf(amount)){
-            throw new Exception("校验金额不能大于等于一元!");
+            throw new Exception("打款金额不能大于等于1元!");
         }
         String[] strs = amount.split("\\.");
         System.out.println("strs"+strs);
@@ -1016,6 +1021,9 @@ public class OwnAuthController extends BaseController {
         String phoneNumber =CommonUtil.objToString(map.get("phone"));
         //验证码
         String code = CommonUtil.objToString(map.get("code"));
+        if(CommonUtil.isEmpty(code)){
+         throw new Exception("短信验证码不能为空");
+        }
         //企业短信验证
         JSONObject operatorAuth = CfcaUtil.checkSmsCode(ISPRO, INSTITUTIONID,phone,code,null);
         /*JSONObject operatorAuth = new JSONObject();

+ 39 - 2
tianhu-system/src/main/java/com/tianhu/system/controller/OwnManagementInfController.java

@@ -16,6 +16,7 @@ import com.tianhu.system.api.domain.*;
 import com.tianhu.system.api.model.LoginUser;
 import com.tianhu.system.common.IMessageUtilsService;
 import com.tianhu.system.domain.*;
+import com.tianhu.system.mapper.SysProductMenuMapper;
 import com.tianhu.system.service.*;
 import com.tianhu.system.utils.RegularUtil;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -67,6 +68,12 @@ public class OwnManagementInfController extends BaseController
     private IMessageUtilsService messageUtilsService;
     @Autowired
     private RemoteSystemService remoteSystemService;
+    @Autowired
+    private SysProductMenuMapper productMenuMapper;
+    /**
+     * 资方普通用户
+     */
+    private String MANAGEMENTUSER = "system.company.managementUser";
     /**
      * 公司状态(正常)
      */
@@ -92,6 +99,10 @@ public class OwnManagementInfController extends BaseController
      */
     private String dataScope = "1";
     /**
+     * 数据权限2自定义
+     */
+    private String scope = "2";
+    /**
      * 是否关联显示
      */
     private boolean isCheck = true;
@@ -258,7 +269,7 @@ public class OwnManagementInfController extends BaseController
         //获取当前时间
         Date currentTime = DateUtils.getNowDate();
         company.setCreateTime(currentTime);
-        sysCompanyService.createSysCompany(company);
+
         //创建部门
         SysDept dept = new SysDept();
         dept.setCompanyId(scyId);
@@ -317,9 +328,10 @@ public class OwnManagementInfController extends BaseController
         sysManagementInf.setSmiAgreementType(smiAgreementType);
         sysManagementInf.setSmiAddress(smiAddress);
         sysManagementInf.setSmiManager(smiManager);
-        sysManagementInf.setSmiContractId(listUserTwo.getUserId());
         sysManagementInf.setSmiDesc(smiDesc);
         sysManagementInfService.createSysManagementInf(sysManagementInf);
+        company.setScyContractId(listUserTwo.getUserId());
+        sysCompanyService.createSysCompany(company);
         // 企业用户关系表
         SysUserCompanyRel sysUserCompanyRel =new SysUserCompanyRel();
         sysUserCompanyRel.setSucrCompanyId(scyId);
@@ -333,6 +345,31 @@ public class OwnManagementInfController extends BaseController
             file.setSmfrFileId(smiAgreement.get(i).get("uid"));
             sysManagementFileRelService.createSysManagementFileRel(file);
         }
+        // 查询普通用户菜单
+        String   key = configService.selectConfigByKey(MANAGEMENTUSER);
+        SysProductMenu sysProductMenu =new SysProductMenu();
+        sysProductMenu.setSpmProductId(key);
+        List<SysProductMenu> product = productMenuMapper.selectSysProductMenuList(sysProductMenu);
+
+        Long[] menuIds = new Long[product.size()];
+        for(int j = 0;j < product.size();j++){
+            menuIds[j] = product.get(j).getSpmMenuId();
+        }
+        //创建角色
+        SysRole sysRolep = new SysRole();
+        sysRolep.setCompanyId(scyId);
+        sysRolep.setRoleName(scyName+"普通角色");
+        sysRolep.setRoleSort(defaultOrder);
+        sysRolep.setRoleKey(scyName+"普通角色");
+        sysRolep.setDataScope(scope);
+        sysRolep.setMenuCheckStrictly(isCheck);
+        sysRolep.setDeptCheckStrictly(isCheck);
+        sysRolep.setStatus(status);
+        sysRolep.setCreateBy(use.getUserId()+"");
+        sysRolep.setCreateTime(new Date());
+        sysRolep.setIsAuto("0");
+        sysRolep.setMenuIds(menuIds);
+        roleService.insertRole(sysRolep);
         // 资方权限配置
         String sysCompanyProductId = IdUtils.fastSimpleUUID();
         SysCompanyProduct sysCompanyProduct = new SysCompanyProduct();

+ 54 - 3
tianhu-system/src/main/java/com/tianhu/system/controller/OwnSysUserController.java

@@ -12,13 +12,14 @@ import com.tianhu.common.log.annotation.Log;
 import com.tianhu.common.log.enums.BusinessType;
 import com.tianhu.common.security.annotation.PreAuthorize;
 import com.tianhu.common.security.service.TokenService;
+import com.tianhu.system.api.domain.SysRole;
 import com.tianhu.system.api.domain.SysUser;
 import com.tianhu.system.api.model.LoginUser;
-import com.tianhu.system.domain.OwnSysUser;
-import com.tianhu.system.domain.SysCompany;
-import com.tianhu.system.domain.SysUserCompanyRel;
+import com.tianhu.system.domain.*;
+import com.tianhu.system.mapper.SysProductMenuMapper;
 import com.tianhu.system.service.*;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
@@ -50,8 +51,14 @@ public class OwnSysUserController extends BaseController
     private ISysCompanyService sysCompanyService;
 
     @Autowired
+    private ISysUserRoleService sysUserRoleService;
+
+    @Autowired
     private ISysUserCompanyRelService sysUserCompanyRelService;
 
+    @Autowired
+    private ISysRoleService roleService;
+
     /**
      * 获取用户列表
      */
@@ -159,6 +166,50 @@ public class OwnSysUserController extends BaseController
     }
 
     /**
+     * 变更管理员权限
+     * @return
+     */
+    @PreAuthorize(hasPermi = "system:ownUser:adminChange")
+    @Transactional(rollbackFor=Exception.class)
+    @Log(title = "管理员权限", businessType = BusinessType.UPDATE)
+    @PostMapping("/adminChange/{userId}")
+    public AjaxResult adminChange(@PathVariable(value = "userId", required = false) Long userId) throws Exception {
+        //查询当前操作员
+        LoginUser userInfo = tokenService.getLoginUser();
+        SysUser use = userInfo.getSysUser();
+        //查询经办人
+        LambdaQueryWrapper<SysUserCompanyRel> sysUserCompanyRel = new LambdaQueryWrapper<>();
+        sysUserCompanyRel.eq(SysUserCompanyRel::getSucrUserId,use.getUserId());
+        sysUserCompanyRel.eq(SysUserCompanyRel::getSucrHandler,"1");
+        List<SysUserCompanyRel> userCompanyRels = sysUserCompanyRelService.findSysUserCompanyRels(sysUserCompanyRel);
+        if (userCompanyRels.size()==0){
+            throw new Exception("当前用户无法变更权限!");
+        }
+        //删除当前用户角色权限
+        sysUserRoleService.deleteSysUserRoleById(use.getUserId());
+        //新增当前用户角色关联
+        SysRole sysRole =new SysRole();
+        sysRole.setIsAuto("0");
+        List<SysRole> role = roleService.selectRoleList(sysRole);
+
+        SysUserRole sysUserRole =new SysUserRole();
+        sysUserRole.setRoleId(role.get(0).getRoleId());
+        sysUserRole.setUserId(use.getUserId());
+        sysUserRoleService.insertSysUserRole(sysUserRole);
+        //删除授权用户角色
+        sysUserRoleService.deleteSysUserRoleById(userId);
+        //新增授权用户角色关联
+        SysRole sysRole1 =new SysRole();
+        sysRole1.setIsAuto("1");
+        List<SysRole> role1 = roleService.selectRoleList(sysRole1);
+
+        SysUserRole sysUserRole1 =new SysUserRole();
+        sysUserRole1.setRoleId(role1.get(0).getRoleId());
+        sysUserRole1.setUserId(userId);
+        sysUserRoleService.insertSysUserRole(sysUserRole1);
+        return AjaxResult.success();
+    }
+    /**
      * 查询此用户下关联的企业
      * @param userId
      * @return

+ 7 - 1
tianhu-system/src/main/java/com/tianhu/system/domain/SysCompany.java

@@ -15,7 +15,7 @@ import lombok.experimental.Accessors;
  * </p>
  *
  * @author cuixq
- * @since 2021-08-28
+ * @since 2021-09-13
  */
 @Data
 @EqualsAndHashCode(callSuper = false)
@@ -152,6 +152,12 @@ public class SysCompany implements Serializable {
     private String scyManager;
 
     /**
+     * 联系人ID(核心企业新增)
+     */
+    @TableField("scy_contract_id")
+    private Long scyContractId;
+
+    /**
      * CFCA电子签章用户id
      */
     @TableField("scy_cfca_user_id")

+ 1 - 1
tianhu-system/src/main/java/com/tianhu/system/utils/RegularUtil.java

@@ -16,7 +16,7 @@ public class RegularUtil {
     //手机号
     private static final String REGMOBILE= "^1[3|4|5|6|7|8|9][0-9]\\d{8}$";
     //座机号
-    private static final String LANDLINE= "\\d{3}-\\d{8}|\\d{4}-\\d{7}";
+    private static final String LANDLINE= "^[0][0-9]{2,3}-[0-9]{5,10}$";
     //社会统一信用代码
     private static final String SOCIAL = "^([0-9A-HJ-NPQRTUWXY]{2}\\d{6}[0-9A-HJ-NPQRTUWXY]{10}|[1-9]\\d{14})$";
     //特殊字符

+ 2 - 1
tianhu-system/src/main/resources/mapper/system/SysCompanyMapper.xml

@@ -3,7 +3,7 @@
 <mapper namespace="com.tianhu.system.mapper.SysCompanyMapper">
 
     <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.tianhu.system.domain.SysCompany">
+    <resultMap id="BaseResultMap" type="com.tianhu.system.entity.SysCompany">
         <id column="scy_id" property="scyId" />
         <result column="scy_license_file" property="scyLicenseFile" />
         <result column="scy_name" property="scyName" />
@@ -25,6 +25,7 @@
         <result column="scy_scale" property="scyScale" />
         <result column="scy_organization" property="scyOrganization" />
         <result column="scy_manager" property="scyManager" />
+        <result column="scy_contract_id" property="scyContractId" />
         <result column="scy_cfca_user_id" property="scyCfcaUserId" />
         <result column="scy_remarks" property="scyRemarks" />
         <result column="scy_auth_status" property="scyAuthStatus" />

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

@@ -82,7 +82,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		from sys_user_role r
 		left join sys_role s on s.role_id = r.role_id
 		where r.user_id = #{userId}
-		and s.is_auto = '0'
+-- 		and s.is_auto = '0'
 		<if test="companyId != null and companyId != ''">
 		and s.company_id = #{companyId}
 		</if>