18482106067 2 лет назад
Родитель
Сommit
802d1313c2

+ 10 - 0
sckw-modules/sckw-manage/src/main/java/com/sckw/manage/dao/KwmCooperateMapper.java

@@ -5,6 +5,7 @@ import com.sckw.manage.model.dto.res.CooperateManageQueryResDto;
 import com.sckw.manage.model.entity.KwmCooperate;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.sckw.manage.model.vo.req.FindCooperateByEntReqVo;
+import com.sckw.manage.model.vo.req.FindEntCooperateReqVo;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
@@ -45,6 +46,15 @@ public interface KwmCooperateMapper extends BaseMapper<KwmCooperate> {
      * @date: 2023/7/10
      */
     List<CooperateManageQueryResDto> findManageList(@Param(value = "reqDto") CooperateManageQueryReqDto reqDto);
+
+    /**
+     * @param reqVo 入参
+     * @return  KwmCooperate
+     * @desc: 查合作企业
+     * @author: czh
+     * @date: 2023/8/16
+     */
+    List<KwmCooperate> findEntCooperate(FindEntCooperateReqVo reqVo);
 }
 
 

+ 4 - 0
sckw-modules/sckw-manage/src/main/java/com/sckw/manage/model/vo/req/FindEntCooperateReqVo.java

@@ -23,4 +23,8 @@ public class FindEntCooperateReqVo implements Serializable {
     @NotNull(message = "合作单位类型不能为空")
     private Integer cooperateType;
 
+    /**
+     * 对方企业id
+     */
+    private Long targetEntId;
 }

+ 2 - 9
sckw-modules/sckw-manage/src/main/java/com/sckw/manage/service/KwmCooperateManageService.java

@@ -297,14 +297,7 @@ public class KwmCooperateManageService {
      */
     public List<FindEntCooperateResVo> findEntCooperate(FindEntCooperateReqVo reqVo) {
         Long id = reqVo.getId();
-        Integer cooperateType = reqVo.getCooperateType();
-        LambdaQueryWrapper<KwmCooperate> wrapper = new LambdaQueryWrapper<>();
-        wrapper.eq(KwmCooperate::getDelFlag, Global.NO).
-                eq(KwmCooperate::getStatus, CooperateStatusEnum.OK.getCode()).and(
-                        wq -> wq.eq(KwmCooperate::getInviterEntId, id).or().
-                                 eq(KwmCooperate::getInviteeEntId, id)
-                );
-        List<KwmCooperate> kwmCooperates = kwmCooperateMapper.selectList(wrapper);
+        List<KwmCooperate> kwmCooperates = kwmCooperateMapper.findEntCooperate(reqVo);
         if (CollectionUtils.isEmpty(kwmCooperates)) {
             return null;
         }
@@ -313,7 +306,7 @@ public class KwmCooperateManageService {
         kwmCooperateTypeLambdaQueryWrapper.in(KwmCooperateType::getCooperateId, kwmCooperates.stream().map(KwmCooperate::getId).toList());
         kwmCooperateTypeLambdaQueryWrapper.eq(KwmCooperateType::getDelFlag, Global.NO);
         kwmCooperateTypeLambdaQueryWrapper.eq(KwmCooperateType::getStatus, CooperateStatusEnum.OK.getCode());
-        kwmCooperateTypeLambdaQueryWrapper.eq(KwmCooperateType::getType, cooperateType);
+        kwmCooperateTypeLambdaQueryWrapper.eq(KwmCooperateType::getType, reqVo.getCooperateType());
         List<KwmCooperateType> kwmCooperateTypes = kwmCooperateTypeMapper.selectList(kwmCooperateTypeLambdaQueryWrapper);
         if (CollectionUtils.isEmpty(kwmCooperateTypes)) {
             return null;

+ 17 - 2
sckw-modules/sckw-manage/src/main/resources/mapper/KwmCooperateMapper.xml

@@ -48,7 +48,7 @@
                min(b.create_by) createBy,
                min(a.remark) remark,
                min(a.approval_remark) approvalRemark,
-               case when min(a.ent_id) = min(a.invitee_ent_id) then min(a.inviter_ent_id) else min(a.invitee_ent_id) end targetEntId,
+               case when min(a.ent_id) = #{reqDto.currentEntId} then min(a.inviter_ent_id) else min(a.invitee_ent_id) end targetEntId,
                case when min(a.ent_id) = #{reqDto.currentEntId} then 1 else 2 end applyTypeCode
           FROM kwm_cooperate a
           LEFT JOIN kwm_cooperate_type b ON a.id = b.cooperate_id
@@ -137,7 +137,7 @@
                 min(b.create_by) createBy,
                 min(a.remark) remark,
                 min(a.approval_remark) approvalRemark,
-                case when min(a.ent_id) = min(a.invitee_ent_id) then min(a.inviter_ent_id) else min(a.invitee_ent_id) end targetEntId,
+                case when min(a.ent_id) = #{reqDto.currentEntId} then min(a.inviter_ent_id) else min(a.invitee_ent_id) end targetEntId,
                 case when min(a.ent_id) = #{reqDto.currentEntId} then 1 else 2 end applyTypeCode
         FROM kwm_cooperate a
         LEFT JOIN kwm_cooperate_type b ON a.id = b.cooperate_id and b.status = 1 and b.del_flag = 0
@@ -191,4 +191,19 @@
         order by a.create_time desc
     </select>
 
+    <select id="findEntCooperate" resultType="com.sckw.manage.model.entity.KwmCooperate">
+        select a.* from kwm_cooperate a
+        where a.del_flag = 0
+            and a.status = 1
+            and ((a.inviter_ent_id = #{id}
+                    <if test="targetEntId != null">
+                        and a.invitee_ent_id = #{targetEntId}
+                    </if>) or
+                 (a.invitee_ent_id = #{id}
+                    <if test="targetEntId != null">
+                        and a.inviter_ent_id = #{targetEntId}
+                    </if>)
+                )
+    </select>
+
 </mapper>

+ 38 - 44
sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsEnterpriseService.java

@@ -12,6 +12,7 @@ import com.sckw.core.utils.*;
 import com.sckw.core.web.constant.HttpStatus;
 import com.sckw.core.web.context.LoginUserHolder;
 import com.sckw.core.web.model.EntCertificateInfo;
+import com.sckw.system.api.model.dto.req.RegisterReqDto;
 import com.sckw.system.api.model.dto.res.REnterpriseVo;
 import com.sckw.system.api.model.dto.res.*;
 import com.sckw.system.dao.*;
@@ -137,7 +138,7 @@ public class KwsEnterpriseService {
 
     /**
      * @param id 主键id
-     * @return  KwsEntCertificate
+     * @return KwsEntCertificate
      * @desc: 查资质
      * @author: czh
      * @date: 2023/7/26
@@ -365,7 +366,6 @@ public class KwsEnterpriseService {
                 }
             }
 
-
             kwsEntCertificate.setStatus(ApprovalEnum.OK.getCode() == status ? Global.NO : Global.YES);
             kwsEntCertificateDao.update(kwsEntCertificate);
 
@@ -389,10 +389,11 @@ public class KwsEnterpriseService {
             throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.INSERT_FAIL);
         }
 
-        /*第一次审批通过(非更新资质审批通过),构建机构角色等*/
-        if (ApprovalEnum.OK.getCode() == status) {
-            commonService.updateEntCertificate(entId, BeanUtils.copyToList(kwsEntCertificates, EntCertificateInfo.class));
-            if (ApprovalEnum.PROCESS.getCode() == currentApproval) {
+        KwsEntDept kwsEntDept = kwsEntDeptDao.selectByEntId(entId);
+        //主体机构不用走后面的流程
+        if (Objects.isNull(kwsEntDept)) {
+            /*第一次审批通过(非更新资质审批通过),构建机构角色等*/
+            if (ApprovalEnum.OK.getCode() == status && ApprovalEnum.PROCESS.getCode() == currentApproval) {
                 /*审批通过,绑定角色*/
                 FindManagePojo findManagePojo = kwsEnterpriseDao.findManageInfoByEntIdBeforeApproval(entId);
                 if (Objects.isNull(findManagePojo)) {
@@ -405,6 +406,7 @@ public class KwsEnterpriseService {
                 kwsUserService.fillUserRole(String.valueOf(findManagePojo.getRoleId()), userByAccount.getId(), SystemTypeEnum.COMPANY.getCode());
             }
         }
+        commonService.updateEntCertificate(entId, BeanUtils.copyToList(kwsEntCertificates, EntCertificateInfo.class));
     }
 
     /**
@@ -505,48 +507,36 @@ public class KwsEnterpriseService {
      */
     @Transactional(rollbackFor = {})
     public void addEntSettle(AddEntSettleReqVo reqVo) throws SystemException {
-
         checkAddEntSettleParam(reqVo);
-
-//        /*1、存用户信息*/
-//        RegisterReqDto registerReqDto = new RegisterReqDto();
-//        registerReqDto.setEntName(reqVo.getFirmName());
-//        registerReqDto.setName(reqVo.getContacts());
-//        registerReqDto.setPhone(reqVo.getPhone());
-//        registerReqDto.setIsMain(Global.YES);
-//        registerReqDto.setSystemType(SystemTypeEnum.COMPANY.getCode());
-//        RegisterResDto register = kwsUserService.register(registerReqDto);
-
-        KwsEnterprise kwsEnterprise = new KwsEnterprise();
-        long entId = new IdWorker(1L).nextId();
-        kwsEnterprise.setId(entId);
-        kwsEnterprise.setCode("");
-        kwsEnterprise.setFirmName(reqVo.getFirmName());
-        kwsEnterprise.setApproval(ApprovalEnum.NO.getCode());
-        kwsEnterprise.setContacts(reqVo.getContacts());
-        kwsEnterprise.setPhone(reqVo.getPhone());
-        kwsEnterprise.setCreateBy(LoginUserHolder.getUserId());
-        kwsEnterprise.setUpdateBy(LoginUserHolder.getUserId());
-        if (kwsEnterpriseDao.insert(kwsEnterprise) <= 0) {
-            throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.INSERT_FAIL);
-        }
-
-
-        /*2、认证*/
-        EntRegisterReqVo entRegisterReqVo = new EntRegisterReqVo();
-        BeanUtils.copyProperties(reqVo, entRegisterReqVo);
-        entRegisterReqVo.setEntId(entId);
-        register(entRegisterReqVo);
-
-
+        Long entId = new IdWorker(1L).nextId();
         //运营端新增企业入驻,直接通过
         if (Objects.isNull(reqVo.getEntPid())) {
+            RegisterReqDto registerReqDto = new RegisterReqDto();
+            registerReqDto.setEntName(reqVo.getFirmName());
+            registerReqDto.setName(reqVo.getContacts());
+            registerReqDto.setPhone(reqVo.getPhone());
+            registerReqDto.setIsMain(Global.YES);
+            registerReqDto.setSystemType(SystemTypeEnum.COMPANY.getCode());
+            kwsUserService.register(registerReqDto);
+
+            /*2、认证*/
+            EntRegisterReqVo entRegisterReqVo = new EntRegisterReqVo();
+            BeanUtils.copyProperties(reqVo, entRegisterReqVo);
+            entRegisterReqVo.setEntId(entId);
+            register(entRegisterReqVo);
+
             ApprovalReqVo approvalReqVo = new ApprovalReqVo();
-            approvalReqVo.setEntId(entRegisterReqVo.getEntId());
+            approvalReqVo.setEntId(entId);
             approvalReqVo.setStatus(ApprovalEnum.OK.getCode());
             approval(approvalReqVo);
+            return;
         }
 
+        //主体机构
+        EntRegisterReqVo entRegisterReqVo = new EntRegisterReqVo();
+        BeanUtils.copyProperties(reqVo, entRegisterReqVo);
+        entRegisterReqVo.setEntId(entId);
+        register(entRegisterReqVo);
     }
 
     /**
@@ -845,7 +835,7 @@ public class KwsEnterpriseService {
      * @author: czh
      * @date: 2023/8/1
      */
-    private String getCooperateType (List<KwsEntType> kwsEntTypeList) {
+    private String getCooperateType(List<KwsEntType> kwsEntTypeList) {
         if (CollectionUtils.isEmpty(kwsEntTypeList)) {
             return null;
         }
@@ -877,7 +867,7 @@ public class KwsEnterpriseService {
 
     /**
      * @param entId 企业ID
-     * @desc 企业详情(企业登录/司机登录)
+     * @desc 企业详情(企业登录 / 司机登录)
      * @author zk
      * @date 2023/8/10
      **/
@@ -897,9 +887,13 @@ public class KwsEnterpriseService {
         //企业类型
         List<KwsEntType> entTypes = kwsEntTypeDao.findListByEntId(entId);
         enterpriseVo.setEntTypes(entTypes != null ? String.join(Global.COMMA, entTypes.stream().map(KwsEntType::getType).map(String::valueOf).distinct().toList()) : null);
-        enterpriseVo.setEntTypeNames(enterpriseVo.getEntTypes() != null ?EntTypeEnum.getNames(enterpriseVo.getEntTypes()) : null);
+        enterpriseVo.setEntTypeNames(enterpriseVo.getEntTypes() != null ? EntTypeEnum.getNames(enterpriseVo.getEntTypes()) : null);
 
-        Map<String, Object> queryParams = new HashMap(){{put("isMain", Global.YES); put("entId", entId); put("systemType", SystemTypeEnum.COMPANY.getCode());}};
+        Map<String, Object> queryParams = new HashMap() {{
+            put("isMain", Global.YES);
+            put("entId", entId);
+            put("systemType", SystemTypeEnum.COMPANY.getCode());
+        }};
         List<KwsUserResVo> users = kwsUserService.findPage(queryParams);
         KwsUserResVo user = users != null && users.size() > 0 ? users.get(Global.NUMERICAL_ZERO) : null;
         enterpriseVo.setMainId(user != null ? user.getId() : null);