Jelajahi Sumber

合作管理修改

czh 2 tahun lalu
induk
melakukan
cfe4c7b4e4

+ 12 - 8
sckw-modules/sckw-manage/src/main/java/com/sckw/manage/service/KwmCooperateApplyService.java

@@ -114,13 +114,10 @@ public class KwmCooperateApplyService {
         List<Long> ourEntIds = list.stream().map(CooperateManageQueryResDto::getOurEntId).distinct().toList();
         allEntIds.addAll(ourEntIds);
         allEntIds.addAll(targetEntIds);
-        List<UserCacheResDto> userCacheResDtos = remoteSystemService.queryUserCacheByIds(userIds);
+        Map<Long, UserCacheResDto> userCacheResDtoMap = remoteSystemService.queryUserCacheMapByIds(userIds);
         List<EntCacheResDto> entCacheResDtos = remoteSystemService.queryEntCacheByIds(allEntIds);
         Map<Long, String> userMap = new HashMap<>(Global.NUMERICAL_SIXTEEN);
         Map<Long, String> entMap = new HashMap<>(Global.NUMERICAL_SIXTEEN);
-        if (!CollectionUtils.isEmpty(userCacheResDtos)) {
-            userMap = userCacheResDtos.stream().collect(Collectors.toMap(UserCacheResDto::getId, UserCacheResDto::getName, (oldValue, newValue) -> newValue));
-        }
         if (!CollectionUtils.isEmpty(entCacheResDtos)) {
             entMap = entCacheResDtos.stream().collect(Collectors.toMap(EntCacheResDto::getId, EntCacheResDto::getFirmName, (oldValue, newValue) -> newValue));
         }
@@ -135,8 +132,15 @@ public class KwmCooperateApplyService {
             cooperateManageQueryResVo.setCreateTime(cooperateManageQueryResDto.getCreateTime());
             cooperateManageQueryResVo.setRemark(cooperateManageQueryResDto.getRemark());
             cooperateManageQueryResVo.setStatus(cooperateManageQueryResDto.getStatus());
-            cooperateManageQueryResVo.setApplyTypeCode(cooperateManageQueryResDto.getApplyTypeCode());
-            cooperateManageQueryResVo.setCreateByName(userMap.get(cooperateManageQueryResDto.getCreateBy()));
+
+            UserCacheResDto userCacheResDto = userCacheResDtoMap.get(cooperateManageQueryResDto.getCreateBy());
+            if (Objects.nonNull(userCacheResDto)) {
+                cooperateManageQueryResVo.setCreateByName(userCacheResDto.getName());
+                EntCacheResDto entInfo = userCacheResDto.getEntInfo();
+                if (Objects.nonNull(entInfo)) {
+                    cooperateManageQueryResVo.setApplyTypeCode(entId.equals(entInfo.getId()) ? Global.NUMERICAL_ONE : Global.NUMERICAL_TWO);
+                }
+            }
             cooperateManageQueryResVo.setTargetEntName(targetEntName);
             cooperateManageQueryResVo.setTargetEntId(targetEntId);
             cooperateManageQueryResVo.setEntId(cooperateManageQueryResDto.getOurEntId());
@@ -494,7 +498,6 @@ public class KwmCooperateApplyService {
                     in(KwmCooperateType::getStatus, statusList).
                     eq(KwmCooperateType::getDelFlag, Global.NO));
             List<KwmCooperateType> updateKwmCooperateTypes = kwmCooperateTypes.stream().filter(x -> x.getStatus().equals(CooperateStatusEnum.PROCESS.getCode())).toList();
-            List<Integer> currentStatusList = updateKwmCooperateTypes.stream().map(KwmCooperateType::getStatus).toList();
             if (CollectionUtils.isEmpty(updateKwmCooperateTypes)) {
                 throw new SystemException(HttpStatus.QUERY_FAIL_CODE, HttpStatus.COOPERATE_CANCEL_EXISTS);
             }
@@ -512,7 +515,8 @@ public class KwmCooperateApplyService {
             item.setUpdateBy(userId);
             item.setUpdateTime(date);
             item.setApprovalRemark(remark);
-            if (!currentStatusList.contains(CooperateStatusEnum.OK.getCode())) {
+            List<Integer> currentStatusList = kwmCooperateTypes.stream().map(KwmCooperateType::getStatus).toList();
+            if (type.equals(CooperateStatusEnum.OK.getCode()) || (type.equals(CooperateStatusEnum.CANCEL.getCode()) && !currentStatusList.contains(CooperateStatusEnum.OK.getCode()))) {
                 item.setStatus(type);
             }
             if (kwmCooperateMapper.updateById(item) <= 0) {

+ 7 - 6
sckw-modules/sckw-manage/src/main/java/com/sckw/manage/service/KwmCooperateManageService.java

@@ -541,12 +541,6 @@ public class KwmCooperateManageService {
             FindCooperateByEntResVo findCooperateByEntResVo = new FindCooperateByEntResVo();
             findCooperateByEntResVo.setId(kwmCooperate.getId());
             findCooperateByEntResVo.setRemark(kwmCooperate.getRemark());
-            //设置合作属性
-            List<KwmCooperateType> kwmCooperateTypes1 = collect.get(kwmCooperate.getId());
-            if (CollectionUtils.isNotEmpty(kwmCooperateTypes1)) {
-                findCooperateByEntResVo.setCooperateTypes(String.join(Global.COMMA, kwmCooperateTypes1.stream().map(KwmCooperateType::getType).map(String::valueOf).toList()));
-            }
-
             //设置发起企业
             EntCacheResDto entCacheResDto = entMap.get(kwmCooperate.getEntId());
             findCooperateByEntResVo.setInitiateEntId(kwmCooperate.getEntId());
@@ -564,6 +558,10 @@ public class KwmCooperateManageService {
 
             Map<Long, EntCacheResDto> longEntCacheResDtoMap = remoteSystemService.queryEntTreeByIds(Collections.singletonList(entId));
             Long topId = longEntCacheResDtoMap.get(entId).getId();
+            //设置合作属性
+            List<KwmCooperateType> kwmCooperateTypes1 = collect.get(kwmCooperate.getId());
+            String cooperateTypes = String.join(Global.COMMA, kwmCooperateTypes1.stream().map(KwmCooperateType::getType).map(String::valueOf).toList());
+
             //设置我方和对方企业信息、联系人
             if (topId.equals(kwmCooperate.getEntId())) {
                 findCooperateByEntResVo.setEntId(kwmCooperate.getInviterEntId());
@@ -576,6 +574,7 @@ public class KwmCooperateManageService {
                 findCooperateByEntResVo.setTargetContactsId(kwmCooperate.getInviteeContactsId());
                 findCooperateByEntResVo.setTargetContacts(kwmCooperate.getInviteeContacts());
                 findCooperateByEntResVo.setTargetPhone(kwmCooperate.getInviteePhone());
+                findCooperateByEntResVo.setCooperateTypes(cooperateTypes);
             } else {
                 findCooperateByEntResVo.setEntId(kwmCooperate.getInviteeEntId());
                 findCooperateByEntResVo.setEntName(inviteeEntName);
@@ -587,12 +586,14 @@ public class KwmCooperateManageService {
                 findCooperateByEntResVo.setTargetContactsId(kwmCooperate.getInviterContactsId());
                 findCooperateByEntResVo.setTargetContacts(kwmCooperate.getInviterContacts());
                 findCooperateByEntResVo.setTargetPhone(kwmCooperate.getInviterPhone());
+                findCooperateByEntResVo.setCooperateTypes(commonBusinessService.changeCooperateType(cooperateTypes));
             }
             list.add(findCooperateByEntResVo);
         }
         return list;
     }
 
+
     public void restore(String ids, Integer type) {
         dissolve(ids, type);
     }