Quellcode durchsuchen

试车报告新增逻辑完善(参数子表可能存在机号重复)

wangxuan vor 10 Monaten
Ursprung
Commit
1efe88509a

+ 20 - 0
business-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ZhcxCommissionCheckServiceImpl.java

@@ -74,6 +74,9 @@ public class ZhcxCommissionCheckServiceImpl extends ServiceImpl<ZhcxCommissionCh
         ZhcxCommissionCheckParameterSetDo parameterSetDo = checkParameterSetData(check);
         // 正片开始
         for (ZhcxCommissionCheckParameterSetDetalDo setDetail : setDetails) {
+            // 防止机号重复
+            checkParameterSetDetalDo(setDetail.getMachineid());
+
             ZhcxCommissionCheckDo zhcxCommissionCheckDo = new ZhcxCommissionCheckDo();
             BeanUtil.copyProperties(check,zhcxCommissionCheckDo);
             // 机号id
@@ -149,4 +152,21 @@ public class ZhcxCommissionCheckServiceImpl extends ServiceImpl<ZhcxCommissionCh
                 .eq(ZhcxCommissionCheckDetailDo::getPid,pid);
         return commissionCheckDetailService.list(queryWrapper);
     }
+
+    /**
+     * 参数数据子表伪删除
+     * @param machineid 机号id
+     */
+    private void checkParameterSetDetalDo(String machineid){
+        // 可能原因 没有把参数子表数据删了  重新建数据 id跟机号是相同的 可能导致机号数据doule
+        LambdaQueryWrapper<ZhcxCommissionCheckParameterSetDetalDo> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(ZhcxCommissionCheckParameterSetDetalDo::getDeleted,"0")
+                .eq(ZhcxCommissionCheckParameterSetDetalDo::getMachineid,machineid);
+        List<ZhcxCommissionCheckParameterSetDetalDo> list = commissionCheckParameterSetDetalService.list(queryWrapper);
+        if (!list.isEmpty()){
+            ZhcxCommissionCheckParameterSetDetalDo detalDo = list.get(0);
+            detalDo.setDeleted("1");
+            commissionCheckParameterSetDetalService.updateById(detalDo);
+        }
+    }
 }