Просмотр исходного кода

解决协议调度-永城数据错误导致的报错,增强代码的健壮性

lipf 4 месяцев назад
Родитель
Сommit
d01625f4d6

+ 8 - 4
tenant/organization/src/main/java/com/jzg/organization/service/impl/PtlAgreementCostServiceImpl.java

@@ -99,10 +99,10 @@ public class PtlAgreementCostServiceImpl extends ServiceImpl<PtlAgreementCostMap
     @Transactional(rollbackFor = Exception.class)
     public HttpResult<String> save(PtlAgreemenCostAdd ptlAgreemenCostAdd) {
         log.info("报价配置/费用管理/新增费用. ptlAgreemenCostAdd=[{}]", JSONUtil.toJsonStr(ptlAgreemenCostAdd));
-        if(StrUtil.isEmpty(ptlAgreemenCostAdd.getPtlAgreementId()) || StrUtil.isEmpty(ptlAgreemenCostAdd.getPtlAgreementCode())){
-            log.info("新增费用的时候,需要指定关联的协议信息。ptlAgreemenCostAdd=[{}]", JSONUtil.toJsonStr(ptlAgreemenCostAdd));
-            return HttpResult.error("新增费用的时候,需要指定关联的协议信息");
-        }
+//        if(StrUtil.isEmpty(ptlAgreemenCostAdd.getPtlAgreementId()) || StrUtil.isEmpty(ptlAgreemenCostAdd.getPtlAgreementCode())){
+//            log.info("新增费用的时候,需要指定关联的协议信息。ptlAgreemenCostAdd=[{}]", JSONUtil.toJsonStr(ptlAgreemenCostAdd));
+//            return HttpResult.error("新增费用的时候,需要指定关联的协议信息");
+//        }
         List<CostAdd> costAddList = ptlAgreemenCostAdd.getCostAddList();
         if (costAddList.isEmpty()) {
             log.info("费用管理:保存数据不能为空");
@@ -113,6 +113,10 @@ public class PtlAgreementCostServiceImpl extends ServiceImpl<PtlAgreementCostMap
                 if (ListUtils.hasDuplicates(ptlAgreementCostAdd.getRuleConditions())){
                     throw new SystemException("添加数据存在相同费用规则,请检查");
                 }
+                if(StrUtil.isEmpty(costAdd.getPtlAgreementId())){
+                    log.info("新增费用的时候,需要指定关联的协议信息。ptlAgreemenCostAdd=[{}]", JSONUtil.toJsonStr(ptlAgreemenCostAdd));
+                    return HttpResult.error("新增费用的时候,需要指定关联的协议信息");
+                }
                 ptlAgreementCostAdd.setPtlAgreementId(costAdd.getPtlAgreementId());
                 ptlAgreementCostAdd.setProductId(costAdd.getProductId());
                 ptlAgreementCostAdd.setProductName(costAdd.getProductName());