Jelajahi Sumber

Merge remote-tracking branch 'origin/dev' into dev

xucaiqin 2 tahun lalu
induk
melakukan
0720c717b7

+ 5 - 2
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/KwcContractLogisticsService.java

@@ -469,8 +469,11 @@ public class KwcContractLogisticsService {
         for (QueryListResDto queryListResDto : queryListResDtos) {
             QueryListResVo queryListResVo = new QueryListResVo();
             BeanUtils.copyProperties(queryListResDto, queryListResVo);
-            queryListResVo.setCheckedEntName(queryListResDto.getUnitType().compareTo(EntTypeEnum.LOGISTICS3.getCode()) == 0 ? queryListResDto.getEntName() : queryListResDto.getTargetEntName());
-            queryListResVo.setCarrierEntName(queryListResDto.getUnitType().compareTo(EntTypeEnum.LOGISTICS3.getCode()) == 0 ? queryListResDto.getTargetEntName() : queryListResDto.getEntName());
+
+            if (Objects.nonNull(queryListResDto.getUnitType())) {
+                queryListResVo.setCheckedEntName(queryListResDto.getUnitType().compareTo(EntTypeEnum.LOGISTICS3.getCode()) == 0 ? queryListResDto.getEntName() : queryListResDto.getTargetEntName());
+                queryListResVo.setCarrierEntName(queryListResDto.getUnitType().compareTo(EntTypeEnum.LOGISTICS3.getCode()) == 0 ? queryListResDto.getTargetEntName() : queryListResDto.getEntName());
+            }
 
             UserCacheResDto userCacheResDto = longUserCacheResDtoMap.get(queryListResDto.getInitiateBy());
             if (Objects.nonNull(userCacheResDto)) {

+ 7 - 0
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/KwcContractLogisticsUnitService.java

@@ -89,10 +89,17 @@ public class KwcContractLogisticsUnitService {
         Long carrierEntId = logisticsBaseInfoReqVo.getCarrierEntId();
         if (Objects.nonNull(carrierEntId)) {
             kwcContractLogisticsUnit.setId(new IdWorker(1L).nextId());
+            kwcContractLogisticsUnit.setContractId(contractId);
             kwcContractLogisticsUnit.setUnitType(CooperateTypeEnum.CARRIAGE.getCode());
             kwcContractLogisticsUnit.setEntId(carrierEntId);
             saveEnt(entCacheResDtoMap, kwcContractLogisticsUnit);
             kwcContractLogisticsUnit.setSignPhone(logisticsBaseInfoReqVo.getCarrierPhone());
+            kwcContractLogisticsUnit.setStatus(Global.NO);
+            kwcContractLogisticsUnit.setCreateBy(LoginUserHolder.getUserId());
+            kwcContractLogisticsUnit.setCreateTime(date);
+            kwcContractLogisticsUnit.setUpdateBy(LoginUserHolder.getUserId());
+            kwcContractLogisticsUnit.setUpdateTime(date);
+            kwcContractLogisticsUnit.setDelFlag(Global.NO);
             if (kwcContractLogisticsUnitMapper.insert(kwcContractLogisticsUnit) <= 0) {
                 throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.INSERT_FAIL);
             }

+ 5 - 2
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/KwcContractTradeService.java

@@ -109,8 +109,11 @@ public class KwcContractTradeService {
             QueryListResVo queryListResVo = new QueryListResVo();
             BeanUtils.copyProperties(queryListResDto, queryListResVo);
 
-            queryListResVo.setProvideEntName(queryListResDto.getUnitType().compareTo(EntTypeEnum.SUPPLIER.getCode()) == 0 ? queryListResDto.getEntName() : queryListResDto.getTargetEntName());
-            queryListResVo.setPurchaseEntName(queryListResDto.getUnitType().compareTo(EntTypeEnum.SUPPLIER.getCode()) == 0 ? queryListResDto.getTargetEntName() : queryListResDto.getEntName());
+
+            if (Objects.nonNull(queryListResDto.getUnitType())) {
+                queryListResVo.setProvideEntName(queryListResDto.getUnitType().compareTo(EntTypeEnum.SUPPLIER.getCode()) == 0 ? queryListResDto.getEntName() : queryListResDto.getTargetEntName());
+                queryListResVo.setPurchaseEntName(queryListResDto.getUnitType().compareTo(EntTypeEnum.SUPPLIER.getCode()) == 0 ? queryListResDto.getTargetEntName() : queryListResDto.getEntName());
+            }
 
             UserCacheResDto userCacheResDto = longUserCacheResDtoMap.get(queryListResDto.getInitiateBy());
             if (Objects.nonNull(userCacheResDto)) {

+ 46 - 23
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/KwcContractTradeUnitService.java

@@ -8,6 +8,7 @@ import com.sckw.contract.model.vo.req.TradeBaseInfoReqVo;
 import com.sckw.core.exception.SystemException;
 import com.sckw.core.model.constant.Global;
 import com.sckw.core.model.enums.CooperateTypeEnum;
+import com.sckw.core.utils.CollectionUtils;
 import com.sckw.core.utils.IdWorker;
 import com.sckw.core.web.constant.HttpStatus;
 import com.sckw.core.web.context.LoginUserHolder;
@@ -39,8 +40,18 @@ public class KwcContractTradeUnitService {
      */
     public void saveContractTradeUnit(long contractId, TradeBaseInfoReqVo baseInfo) {
         List<Long> entIdList = new ArrayList<>();
-        entIdList.add(baseInfo.getProvideEntId());
-        entIdList.add(baseInfo.getPurchaseEntId());
+        if (Objects.nonNull(baseInfo.getProvideEntId())) {
+            entIdList.add(baseInfo.getProvideEntId());
+        }
+
+        if (Objects.nonNull(baseInfo.getPurchaseEntId())) {
+            entIdList.add(baseInfo.getPurchaseEntId());
+        }
+
+        if (CollectionUtils.isEmpty(entIdList)) {
+            return;
+        }
+
         Map<Long, EntCacheResDto> entCacheResDtoMap = commonBusinessService.queryEntCacheMapByIds(entIdList);
 
         Date date = new Date();
@@ -50,31 +61,43 @@ public class KwcContractTradeUnitService {
     private void saveProvideAndPurchase(long contractId, Map<Long, EntCacheResDto> entCacheResDtoMap, Date date, TradeBaseInfoReqVo baseInfo) {
         //存供应商
         KwcContractTradeUnit kwcContractTradeUnit = new KwcContractTradeUnit();
-        kwcContractTradeUnit.setId(new IdWorker(1L).nextId());
-        kwcContractTradeUnit.setContractId(contractId);
-        kwcContractTradeUnit.setUnitType(CooperateTypeEnum.SUPPLIER.getCode());
-        kwcContractTradeUnit.setEntId(baseInfo.getProvideEntId());
-        saveEnt(entCacheResDtoMap, kwcContractTradeUnit);
-        kwcContractTradeUnit.setSignPhone(baseInfo.getProvidePhone());
-        kwcContractTradeUnit.setStatus(Global.NO);
-        kwcContractTradeUnit.setCreateBy(LoginUserHolder.getUserId());
-        kwcContractTradeUnit.setCreateTime(date);
-        kwcContractTradeUnit.setUpdateBy(LoginUserHolder.getUserId());
-        kwcContractTradeUnit.setUpdateTime(date);
-        kwcContractTradeUnit.setDelFlag(Global.NO);
-        if (kwcContractTradeUnitMapper.insert(kwcContractTradeUnit) <= 0) {
-            throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.INSERT_FAIL);
+        if(Objects.nonNull(baseInfo.getProvideEntId())) {
+            kwcContractTradeUnit.setId(new IdWorker(1L).nextId());
+            kwcContractTradeUnit.setContractId(contractId);
+            kwcContractTradeUnit.setUnitType(CooperateTypeEnum.SUPPLIER.getCode());
+            kwcContractTradeUnit.setEntId(baseInfo.getProvideEntId());
+            saveEnt(entCacheResDtoMap, kwcContractTradeUnit);
+            kwcContractTradeUnit.setSignPhone(baseInfo.getProvidePhone());
+            kwcContractTradeUnit.setStatus(Global.NO);
+            kwcContractTradeUnit.setCreateBy(LoginUserHolder.getUserId());
+            kwcContractTradeUnit.setCreateTime(date);
+            kwcContractTradeUnit.setUpdateBy(LoginUserHolder.getUserId());
+            kwcContractTradeUnit.setUpdateTime(date);
+            kwcContractTradeUnit.setDelFlag(Global.NO);
+            if (kwcContractTradeUnitMapper.insert(kwcContractTradeUnit) <= 0) {
+                throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.INSERT_FAIL);
+            }
         }
 
         //存采购商
-        kwcContractTradeUnit.setId(new IdWorker(1L).nextId());
-        kwcContractTradeUnit.setUnitType(CooperateTypeEnum.PURCHASER.getCode());
-        kwcContractTradeUnit.setEntId(baseInfo.getPurchaseEntId());
-        saveEnt(entCacheResDtoMap, kwcContractTradeUnit);
-        kwcContractTradeUnit.setSignPhone(baseInfo.getPurchasePhone());
-        if (kwcContractTradeUnitMapper.insert(kwcContractTradeUnit) <= 0) {
-            throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.INSERT_FAIL);
+        if (Objects.nonNull(baseInfo.getPurchaseEntId())) {
+            kwcContractTradeUnit.setId(new IdWorker(1L).nextId());
+            kwcContractTradeUnit.setUnitType(CooperateTypeEnum.PURCHASER.getCode());
+            kwcContractTradeUnit.setEntId(baseInfo.getPurchaseEntId());
+            kwcContractTradeUnit.setContractId(contractId);
+            saveEnt(entCacheResDtoMap, kwcContractTradeUnit);
+            kwcContractTradeUnit.setSignPhone(baseInfo.getPurchasePhone());
+            kwcContractTradeUnit.setStatus(Global.NO);
+            kwcContractTradeUnit.setCreateBy(LoginUserHolder.getUserId());
+            kwcContractTradeUnit.setCreateTime(date);
+            kwcContractTradeUnit.setUpdateBy(LoginUserHolder.getUserId());
+            kwcContractTradeUnit.setUpdateTime(date);
+            kwcContractTradeUnit.setDelFlag(Global.NO);
+            if (kwcContractTradeUnitMapper.insert(kwcContractTradeUnit) <= 0) {
+                throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.INSERT_FAIL);
+            }
         }
+
     }
 
     /**

+ 1 - 1
sckw-modules/sckw-contract/src/main/resources/mapper/KwcContractLogisticsMapper.xml

@@ -68,7 +68,7 @@
           left join kwc_contract_logistics_track d on a.id = d.contract_id and d.del_flag = 0 and d.type = 0
           left join kwc_contract_logistics_unit e on a.id = e.contract_id and e.unit_type != #{entType} and e.del_flag = 0
         where a.del_flag = 0
-          and b.ent_id = #{entId}
+          and case when a.status = 3 then a.ent_id = #{entId} else b.ent_id = #{entId} end
           <if test="startTime != null">
               and a.create_time >= #{startTime}
           </if>

+ 2 - 2
sckw-modules/sckw-contract/src/main/resources/mapper/KwcContractTradeMapper.xml

@@ -64,9 +64,9 @@
           left join kwc_contract_trade_unit b on a.id = b.contract_id and b.unit_type = #{entType} and b.del_flag = 0
           left join kwc_contract_trade_track c on a.id = c.contract_id and c.del_flag = 0 and c.type = 1
           left join kwc_contract_trade_track d on a.id = d.contract_id and d.del_flag = 0 and d.type = 0
-          left join kwc_contract_trade_unit e on a.id = b.contract_id and b.unit_type != #{entType} and e.del_flag = 0
+          left join kwc_contract_trade_unit e on a.id = e.contract_id and e.unit_type != #{entType} and e.del_flag = 0
          where a.del_flag = 0
-           and b.ent_id = #{entId}
+           and case when a.status = 3 then a.ent_id = #{entId} else b.ent_id = #{entId} end
         <if test="startTime != null">
             and a.create_time >= #{startTime}
         </if>

+ 5 - 0
sckw-modules/sckw-system/src/main/java/com/sckw/system/dubbo/RemoteSystemServiceImpl.java

@@ -177,6 +177,11 @@ public class RemoteSystemServiceImpl implements RemoteSystemService {
             return Collections.emptyList();
         }
 
+        if (CollectionUtils.isEmpty(sysDictGroupResDto.getChild())) {
+            SysDictResDto sysDictResDto = new SysDictResDto();
+            BeanUtils.copyProperties(sysDictGroupResDto, sysDictResDto);
+            return Collections.singletonList(sysDictResDto);
+        }
         return BeanUtils.copyToList(checkNextLevelDict(sysDictGroupResDto.getChild()), SysDictResDto.class);
     }