dengyj преди 4 години
родител
ревизия
a8b8af0385

+ 42 - 1
src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/service/impl/MeterWorkCarActualFirstServiceImpl.java

@@ -1277,17 +1277,47 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
     @Transactional(value = "tm", rollbackFor = Exception.class)
     public RESTfulResult doAddNetNewHZHX(MeterWorkCarActualFirst secondDb, MeterWorkCarActual netDb,MeterWorkCarActualFirst once,String saveTare,  MeterMonitorNote note) throws Exception {
         try{
-
             RESTfulResult rm = new RESTfulResult();
             rm.setCode("200");
 
+            //1a.查询上一个洁净,如果receive_remark不是H01,直接报错
+            HashMap<String, Object> obj = new HashMap<>();
+            obj.put("carNo", netDb.getCarNo());
+            obj.put("receiverRemark", "H01");
+            List<MeterWorkCarActual> models = meterWorkCarActualMapper.likeByDesc(obj);
+            if(models.size() < 1) {
+                rm.setCode("500");
+                rm.setData(null);
+                rm.setMessage("不存在混装洁净数据,请确认!!");
+                return rm;
+            }
+            MeterWorkCarActual upModel = models.get(0);
+            MeterWorkCarActualFirst upFirstGross = meterWorkCarActualFirstMapper.selectByPrimaryKey(upModel.getActualFirst1No());
+            MeterWorkCarActualFirst upFirstTare = meterWorkCarActualFirstMapper.selectByPrimaryKey(upModel.getActualFirst2No());
+            PreTrackScale upScale = preTrackScaleMapper.selectByPrimaryKey(upModel.getPredictionNo());
+            upFirstGross.setPredictionCombination(upModel.getPredictionNo() + "," + netDb.getPredictionNo());
+            upFirstGross.setPredictionType("7");
+            meterWorkCarActualFirstMapper.updateByPrimaryKeySelective(upFirstGross);
+            upFirstTare.setPredictionCombination(upModel.getPredictionNo() + "," + netDb.getPredictionNo());
+            upFirstTare.setPredictionType("7");
+            meterWorkCarActualFirstMapper.updateByPrimaryKeySelective(upFirstTare);
+            upModel.setPredictionCombination(upModel.getPredictionNo() + "," + netDb.getPredictionNo());
+            upModel.setPredictionType("7");
+            meterWorkCarActualMapper.updateByPrimaryKeySelective(upModel);
+            upScale.setPredictionType("7");
+            upScale.setPredictionCombination(upModel.getPredictionNo() + "," + netDb.getPredictionNo());
+            preTrackScaleMapper.updateByPrimaryKeySelective(upScale);
+
             //1、存储当前计量的数据
             SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");
             String afl = formatter.format(new Date());
             String no = meterWorkCarActualFirstMapper.getNewID(afl);
             secondDb.setActualFirstNo(formatter.format(new Date()) + no);
             secondDb.setValueFlag("2");//洁净
+            secondDb.setUpdateManNo("system");
+            secondDb.setUpdateManName("混装洁净更新");
             secondDb.setPredictionType("7");
+            secondDb.setPredictionCombination(upModel.getPredictionNo() + "," + netDb.getPredictionNo());
             meterWorkCarActualFirstMapper.insertSelective(secondDb);
 
             //1、存储当前计量的数据
@@ -1296,7 +1326,10 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
             String noHZ = meterWorkCarActualFirstMapper.getNewID(aflHZ);
             once.setActualFirstNo(formatter.format(new Date()) + noHZ);
             once.setValueFlag("2");//洁净
+            once.setUpdateManNo("system");
+            once.setUpdateManName("混装洁净更新");
             once.setPredictionType("7");
+            once.setPredictionCombination(upModel.getPredictionNo() + "," + netDb.getPredictionNo());
             meterWorkCarActualFirstMapper.insertSelective(once);
 
             String no1 = meterWorkCarActualMapper.getNewID(afl);
@@ -1311,8 +1344,13 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
             }
             netDb.setPredictionType("7");
             netDb.setUploadFlag("1");
+            // 拿到洁净编号B
+            netDb.setPredictionCombination(upModel.getPredictionNo() + "," + netDb.getPredictionNo());
             meterWorkCarActualMapper.insert(netDb);
 
+            //1b.如果receive_remark是H01,拿到委托单号,拿到上一个洁净编号A
+            //修改上一个委托单
+
             //修改委托编号
             PreTrackScale scale = preTrackScaleMapper.selectByPrimaryKey(netDb.getPredictionNo());
             scale.setValueFlag(DbConstants.NET);
@@ -1321,6 +1359,7 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
             scale.setUpdateManName("混装洁净更新");
             scale.setUploadFlag("1");
             scale.setPredictionType("7");
+            scale.setPredictionCombination(upModel.getPredictionNo() + "," + netDb.getPredictionNo());
             preTrackScaleMapper.updateByPrimaryKeySelective(scale);
 
             //4、存储历史皮重及历史皮重明细信息
@@ -1335,6 +1374,8 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
                 doSaveHisTare(oci);
             }
 
+
+
             //5、保存图片
             //SaveImg(secondDb);