dengyj %!s(int64=4) %!d(string=hai) anos
pai
achega
15ee35df41

+ 20 - 0
src/main/java/com/steerinfo/baseinfo/meterbasecar/controller/MeterBaseCarController.java

@@ -735,6 +735,11 @@ public class MeterBaseCarController extends BaseRESTfulController {
                     if(specialUnit.size() >= 1) {
                         car.setUsetDepartmentNo(specialUnit.get(0).getUnitNo());
                         car.setUsetDepartment(specialUnit.get(0).getUnitName());
+                        if(specialUnit.get(0).getUnitNo().equals("888888")){
+                           car.setIsSpecialunit("0");
+                        }else{
+                            car.setIsSpecialunit("1");
+                        }
                     }else{
                         msg = "特殊单位表未找到相应的单位";
                     }
@@ -766,6 +771,20 @@ public class MeterBaseCarController extends BaseRESTfulController {
                 car.setCarTypeNo(params.get("carTypeNo").toString());
                 car.setCarTypeName(params.get("carTypeName").toString());
                 car.setValidFlag("0");
+                HashMap<String, Object> obj = new HashMap<>();
+                obj.put("unitNo", params.get("usetDepartment"));
+                List<MeterBaseSpecialUnit> specialUnit = meterBaseSpecialUnitMapper.selectByParameters(obj);
+                if(specialUnit.size() >= 1) {
+                    car.setUsetDepartmentNo(specialUnit.get(0).getUnitNo());
+                    car.setUsetDepartment(specialUnit.get(0).getUnitName());
+                    if(specialUnit.get(0).getUnitNo().equals("888888")){
+                        car.setIsSpecialunit("0");
+                    }else{
+                        car.setIsSpecialunit("1");
+                    }
+                }else{
+                    msg = "特殊单位表未找到相应的单位";
+                }
                 if(params.get("carSelfWeight") != null ) {
                     if(!StringUtils.isEmpty(params.get("carSelfWeight").toString())) {
                         car.setCarSelfWeight(new BigDecimal(params.get("carSelfWeight").toString()));
@@ -823,6 +842,7 @@ public class MeterBaseCarController extends BaseRESTfulController {
 
             car.setUsetDepartmentNo("");
             car.setUsetDepartment("");
+            car.setIsSpecialunit("0");
 
             String msg = "";
             // 检查车辆是否存在

+ 6 - 11
src/main/java/com/steerinfo/baseinfo/meterbasecar/service/impl/MeterBaseCarServiceImpl.java

@@ -360,22 +360,16 @@ public class MeterBaseCarServiceImpl extends BaseServiceImpl<MeterBaseCar, Strin
             if(carModels.size() >= 1) {
                 MeterBaseCar carModel = carModels.get(0);
                 String unitNo = carModel.getUsetDepartmentNo() == null ? "": carModel.getUsetDepartmentNo();
-                if(!unitNo.equals("")){
+                if(StringUtils.isNotEmpty(unitNo)){
                     HashMap<String, Object> unitMap = new HashMap<>();
                     unitMap.put("unitNo", unitNo);
-
                     List<MeterBaseSpecialUnit> unitList = meterBaseSpecialUnitMapper.selectByParameters(unitMap);
                     if(unitList.size() >= 1) {
-                        if(unitNo.equals(unitList.get(0).getUnitNo())) {
-                            carModel.setIsSpecialunit("1");
-                        }else {
-                            carModel.setIsSpecialunit("0");
-                        }
-                        meterBaseCarMapper.updateByPrimaryKeySelective(carModel);
-                    }else {
+                        carModel.setIsSpecialunit(unitList.get(0).getUnitNo().equals("888888") ? "0": "1");
+                    }else{
                         carModel.setIsSpecialunit("0");
-                        meterBaseCarMapper.updateByPrimaryKeySelective(carModel);
                     }
+                    meterBaseCarMapper.updateByPrimaryKeySelective(carModel);
                 }else {
                     carModel.setIsSpecialunit("0");
                     meterBaseCarMapper.updateByPrimaryKeySelective(carModel);
@@ -384,7 +378,8 @@ public class MeterBaseCarServiceImpl extends BaseServiceImpl<MeterBaseCar, Strin
                 rm.setCode("200");
                 rm.setMessage("操作成功!!");
                 rm.setData(carModel);
-                return rm;
+            }else{
+                rm.setMessage("未查询到相应车辆信息!!");
             }
         } catch(Exception e) {
             e.printStackTrace();

+ 2 - 3
src/main/java/com/steerinfo/meterwork/meterworkcaractual/mapper/MeterWorkCarActualMapper.xml

@@ -3177,8 +3177,7 @@
        t1.actual_first_no ACTUAL_FIRST1_NO, t1.meter_weight GROSS_WEIGHT, t1.create_man_no GROSS_MAN_NO, t1.create_man_name GROSS_MAN_NAME, t1.create_time GROSS_TIME,
        t1.base_spot_no BASE_SPOT1_NO, t1.base_spot_name BASE_SPOT1_NAME,t1.meter_class GROSS_CLASS, t1.meter_group GROSS_GROUP, t1.meter_mode GROSS_MODE,t2.data_source,
        t2.actual_first_no ACTUAL_FIRST2_NO, t2.meter_weight TARE_WEIGHT, t2.create_man_no TARE_MAN_NO, t2.create_man_name TARE_MAN_NAME, t2.create_time TARE_TIME,
-       t2.base_spot_no BASE_SPOT2_NO, t2.base_spot_name BASE_SPOT2_NAME, t2.create_man_no net_man_no, t2.create_man_name net_man_name, t2.base_spot_no net_spot3_no, t2.base_spot_name net_spot3_name, t2.create_time create_time,  t2.create_man_name create_man_name, t2.meter_class TARE_CLASS, t2.meter_group TARE_GROUP,t2.meter_mode TARE_MODE,t1.METER_NUM METER_NUM
-
+       t2.base_spot_no BASE_SPOT2_NO, t2.base_spot_name BASE_SPOT2_NAME, t2.create_man_no net_man_no, t2.create_man_name net_man_name, t2.create_time net_time,t2.base_spot_no net_spot3_no, t2.base_spot_name net_spot3_name, t2.create_time create_time,  t2.create_man_name create_man_name, t2.meter_class TARE_CLASS, t2.meter_group TARE_GROUP,t2.meter_mode TARE_MODE,t1.METER_NUM METER_NUM
     from METER_WORK_CAR_ACTUAL_FIRST t1,METER_WORK_CAR_ACTUAL_FIRST t2
     where t1.actual_first_no=#{actualFirstNo,jdbcType=VARCHAR} and t2.actual_first_no=#{dataNo,jdbcType=VARCHAR}
  </select>
@@ -3198,7 +3197,7 @@
                t1.actual_first_no ACTUAL_FIRST1_NO, t1.meter_weight GROSS_WEIGHT, t1.create_man_no GROSS_MAN_NO, t1.create_man_name GROSS_MAN_NAME, t1.create_time GROSS_TIME,
                t1.base_spot_no BASE_SPOT1_NO, t1.base_spot_name BASE_SPOT1_NAME,t1.meter_class GROSS_CLASS, t1.meter_group GROSS_GROUP, t1.meter_mode GROSS_MODE,
                t2.actual_first_no ACTUAL_FIRST2_NO, t2.meter_weight TARE_WEIGHT, t2.create_man_no TARE_MAN_NO, t2.create_man_name TARE_MAN_NAME, t2.create_time TARE_TIME,
-               t2.base_spot_no BASE_SPOT2_NO, t2.base_spot_name BASE_SPOT2_NAME, t2.create_man_no net_man_no, t2.create_man_name net_man_name, t2.base_spot_no net_spot3_no, t2.base_spot_name net_spot3_name, t2.create_time create_time,  t2.create_man_name create_man_name, t2.meter_class TARE_CLASS, t2.meter_group TARE_GROUP,t2.meter_mode TARE_MODE,t1.METER_NUM METER_NUM
+               t2.base_spot_no BASE_SPOT2_NO, t2.base_spot_name BASE_SPOT2_NAME, t2.create_man_no net_man_no, t2.create_man_name net_man_name, t2.create_time net_time, t2.base_spot_no net_spot3_no, t2.base_spot_name net_spot3_name, t2.create_time create_time,  t2.create_man_name create_man_name, t2.meter_class TARE_CLASS, t2.meter_group TARE_GROUP,t2.meter_mode TARE_MODE,t1.METER_NUM METER_NUM
         from METER_WORK_CAR_ACTUAL_FIRST t1,METER_WORK_CAR_ACTUAL_FIRST t2, PRE_TRACK_SCALE T3
         where t1.actual_first_no=#{actualFirstNo,jdbcType=VARCHAR} and t2.actual_first_no=#{dataNo,jdbcType=VARCHAR} AND T3.prediction_no =#{predictionNo,jdbcType=VARCHAR}
     </select>

+ 199 - 138
src/main/java/com/steerinfo/meterwork/meterworkcaractual/service/impl/MeterWorkCarActualServiceImpl.java

@@ -302,101 +302,151 @@ public class MeterWorkCarActualServiceImpl extends BaseServiceImpl<MeterWorkCarA
                 }
             }
 
-            String preNo = "";
-            Map<String, Object> repair = new HashMap<>();
-            if (predictionNo == null){
-                if (mwcaf1.getPredictionNo() == "" && mwcaf2.getPredictionNo() != ""){
-                    preNo = mwcaf2.getPredictionNo();
-                    repair.put("predictionNo",preNo);
-                    repair.put("actualFirstNo",mwcaf1.getActualFirstNo());
-                    meterWorkCarActualFirstMapper.repairPre(repair);
-                }
-                if (mwcaf2.getPredictionNo() == "" && mwcaf2.getPredictionNo() != ""){
-                    preNo = mwcaf1.getPredictionNo();
-                    repair.put("predictionNo",preNo);
-                    repair.put("actualFirstNo",mwcaf2.getActualFirstNo());
-                    meterWorkCarActualFirstMapper.repairPre(repair);
-                }
-                if(mwcaf2.getPredictionNo() != "" && mwcaf2.getPredictionNo() != ""){
-                    preNo = mwcaf1.getPredictionNo();
-                }
-            }
-            else {
-                preNo = predictionNo;
-            }
-
-            //修改预报
-            if (preNo != null && !"".equals(preNo)) {
-                // 选中预报和选中一次计量数据中车号是否一致
-                PreTrackScale queryRow = preTrackScaleMapper.selectByPrimaryKey(preNo);
-                if (!mwcaf1.getCarNo().equals(queryRow.getCarNo())) {
-                    throw new MarkerMetException(500, "选中预报中车号与一次计量数据中车号不一致!!!");
-                }
-                PreTrackScale scale = new PreTrackScale();
-                scale.setPredictionNo(preNo);
+            MeterWorkCarActual actualRow = new MeterWorkCarActual();
+            if(StringUtils.isNotEmpty(predictionNo)){
+                PreTrackScale scale = preTrackScaleMapper.selectByPrimaryKey(predictionNo);
                 scale.setValueFlag(DbConstants.NET);
                 scale.setUpdateTime(new Date());
                 scale.setUpdateManNo("system");
                 scale.setUpdateManName("二次计量洁净更新");
                 scale.setUploadFlag("1");
                 preTrackScaleMapper.updateByPrimaryKeySelective(scale);
-            }
 
-            MeterWorkCarActual actualRow = new MeterWorkCarActual();
-
-            // 判断前端是否传入了预报编号
-            if (predictionNo != null && !"".equals(predictionNo)) {
-                // 根据一次计量数据和预报数据生成净重相关信息
                 MeterWorkCarActualFirst first1 = meterWorkCarActualFirstMapper.selectAndMatch(actualFirstNo, predictionNo);
                 BeanUtils.copyProperties(first1,mwcaf1);
-                mwcaf1.setIsPreScale("1");
                 MeterWorkCarActualFirst first2 = meterWorkCarActualFirstMapper.selectAndMatch(dataNo, predictionNo);
                 BeanUtils.copyProperties(first2, mwcaf2);
+
+
+                mwcaf1.setValueFlag(DbConstants.NET);
+                mwcaf1.setUpdateManName("system");
+                mwcaf1.setUpdateManName("二次计量洁净更新");
+                mwcaf1.setUpdateTime(new Date());
                 mwcaf1.setIsPreScale("1");
+                mwcaf1.setPredictionNo(predictionNo);
+                mwcaf1.setPredictionType("1");
+                meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf1);
+
+                // 皮重数据处理
+                mwcaf2.setValueFlag(DbConstants.NET);
+                mwcaf2.setUpdateManName("system");
+                mwcaf2.setUpdateManName("二次计量洁净更新");
+                mwcaf2.setUpdateTime(new Date());
+                mwcaf2.setPredictionNo(predictionNo);
+                mwcaf2.setPredictionType("1");
+                meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf2);
+
                 MeterWorkCarActual mwca1 = meterWorkCarActualMapper.manualAddPre(actualFirstNo, dataNo, predictionNo);
                 BeanUtils.copyProperties(mwca1, actualRow);
+
+                SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
+                String no = meterWorkCarActualMapper.getNewID(sdf.format(new Date()));
+                actualRow.setActualNo(sdf.format(new Date()) + no);
+                actualRow.setNetMode(DbConstants.TYPE);
+                actualRow.setValueFlag("1");
+                actualRow.setNote(note);
+                actualRow.setUploadFlag("1");
                 actualRow.setIsPreScale("1");
-            } else {
-                MeterWorkCarActual mwca2 = meterWorkCarActualMapper.manualAdd(actualFirstNo, dataNo);
+                actualRow.setNetWeight(mwcaf1.getMeterWeight().subtract(mwcaf2.getMeterWeight()));
+                meterWorkCarActualMapper.insertSelective(actualRow);
+            }else if(StringUtils.isNotEmpty(mwcaf1.getPredictionNo()) || StringUtils.isNotEmpty(mwcaf2.getPredictionNo())){
+                String preNo = null;
+                if (StringUtils.isEmpty(mwcaf1.getPredictionNo()) && StringUtils.isNotEmpty(mwcaf2.getPredictionNo())){
+                    preNo = mwcaf2.getPredictionNo();
+                }else if (StringUtils.isNotEmpty(mwcaf1.getPredictionNo())&& StringUtils.isEmpty(mwcaf2.getPredictionNo())){
+                    preNo = mwcaf1.getPredictionNo();
+                }else if(StringUtils.isNotEmpty(mwcaf1.getPredictionNo())&& StringUtils.isNotEmpty(mwcaf2.getPredictionNo())){
+                    preNo = mwcaf1.getPredictionNo();
+                }
+                if(StringUtils.isNotEmpty(preNo)){
+                    PreTrackScale scale = preTrackScaleMapper.selectByPrimaryKey(preNo);
+                    if(scale != null) {
+                        scale.setValueFlag(DbConstants.NET);
+                        scale.setUpdateTime(new Date());
+                        scale.setUpdateManNo("system");
+                        scale.setUpdateManName("二次计量洁净更新");
+                        scale.setUploadFlag("1");
+                        preTrackScaleMapper.updateByPrimaryKeySelective(scale);
+
+                        MeterWorkCarActualFirst first1 = meterWorkCarActualFirstMapper.selectAndMatch(actualFirstNo, scale.getPredictionNo());
+                        BeanUtils.copyProperties(first1,mwcaf1);
+                        MeterWorkCarActualFirst first2 = meterWorkCarActualFirstMapper.selectAndMatch(dataNo, scale.getPredictionNo());
+                        BeanUtils.copyProperties(first2, mwcaf2);
+
+                        mwcaf1.setValueFlag(DbConstants.NET);
+                        mwcaf1.setUpdateManName("system");
+                        mwcaf1.setUpdateManName("二次计量洁净更新");
+                        mwcaf1.setUpdateTime(new Date());
+                        mwcaf1.setIsPreScale("1");
+                        mwcaf1.setPredictionNo(scale.getPredictionNo());
+                        mwcaf1.setPredictionType("1");
+                        meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf1);
+
+                        // 皮重数据处理
+                        mwcaf2.setValueFlag(DbConstants.NET);
+                        mwcaf2.setUpdateManName("system");
+                        mwcaf2.setUpdateManName("二次计量洁净更新");
+                        mwcaf2.setUpdateTime(new Date());
+                        mwcaf2.setIsPreScale("1");
+                        mwcaf2.setPredictionNo(scale.getPredictionNo());
+                        mwcaf2.setPredictionType("1");
+                        meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf2);
+
+                        MeterWorkCarActual mwca1 = meterWorkCarActualMapper.manualAddPre(actualFirstNo, dataNo, scale.getPredictionNo());
+                        BeanUtils.copyProperties(mwca1, actualRow);
+
+                        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
+                        String no = meterWorkCarActualMapper.getNewID(sdf.format(new Date()));
+                        actualRow.setActualNo(sdf.format(new Date()) + no);
+                        actualRow.setNetMode(DbConstants.TYPE);
+                        actualRow.setValueFlag("1");
+                        actualRow.setNote(note);
+                        actualRow.setUploadFlag("1");
+                        actualRow.setPredictionNo(scale.getPredictionNo());
+                        actualRow.setIsPreScale("1");
+                        actualRow.setNetWeight(mwcaf1.getMeterWeight().subtract(mwcaf2.getMeterWeight()));
+                        meterWorkCarActualMapper.insertSelective(actualRow);
+                    }else {
+                        throw new MarkerMetException(500, "委托表不存在该"+ preNo + "委托编号信息!!");
+                    }
+                }
+            }else {
+
+                MeterWorkCarActualFirst first1 = meterWorkCarActualFirstMapper.selectByPrimaryKey(actualFirstNo);
+                MeterWorkCarActualFirst first2 = meterWorkCarActualFirstMapper.selectByPrimaryKey(dataNo);
+
+                first1.setValueFlag(DbConstants.NET);
+                first1.setUpdateManName("system");
+                first1.setUpdateManName("二次计量洁净更新");
+                first1.setUpdateTime(new Date());
+                first1.setIsPreScale("0");
+                meterWorkCarActualFirstMapper.updateByPrimaryKey(first1);
+
+                // 皮重数据处理
+                first2.setValueFlag(DbConstants.NET);
+                first2.setUpdateManName("system");
+                first2.setUpdateManName("二次计量洁净更新");
+                first2.setUpdateTime(new Date());
+                first2.setIsPreScale("0");
+                meterWorkCarActualFirstMapper.updateByPrimaryKey(first2);
+
+                MeterWorkCarActual mwca2 = meterWorkCarActualMapper.manualAdd(first1.getActualFirstNo(), first2.getActualFirstNo());
                 BeanUtils.copyProperties(mwca2, actualRow);
+
+                SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
+                String no = meterWorkCarActualMapper.getNewID(sdf.format(new Date()));
+                actualRow.setActualNo(sdf.format(new Date()) + no);
+                actualRow.setNetMode(DbConstants.TYPE);
+                actualRow.setValueFlag("1");
+                actualRow.setNote(note);
+                actualRow.setUploadFlag("1");
+                actualRow.setIsPreScale("0");
+                actualRow.setNetWeight(first1.getMeterWeight().subtract(first2.getMeterWeight()));
+                meterWorkCarActualMapper.insertSelective(actualRow);
             }
-            check(actualRow);
-            // 毛重数据处理
-            mwcaf1.setValueFlag(DbConstants.NET);
-            mwcaf1.setUpdateManName("system");
-            mwcaf1.setUpdateManName("二次计量洁净更新");
-            mwcaf1.setUpdateTime(new Date());
-//            mwcaf1.setDataSource("1");
-            meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf1);
-            // 皮重数据处理
-            mwcaf2.setValueFlag(DbConstants.NET);
-            mwcaf2.setUpdateManName("system");
-            mwcaf2.setUpdateManName("二次计量洁净更新");
-            mwcaf2.setUpdateTime(new Date());
-            mwcaf2.setValueFlag(DbConstants.NET);
-//            mwcaf2.setDataSource("1");
-            meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf2);
-
-            if (actualRow.getGrossTime().compareTo(actualRow.getTareTime()) == 1) {
-                actualRow.setNetSpot3No(actualRow.getBaseSpot1No());
-                actualRow.setNetSpot3Name(actualRow.getBaseSpot1Name());
-                actualRow.setNetTime(actualRow.getGrossTime());
-            } else {
-                actualRow.setNetSpot3No(actualRow.getBaseSpot2No());
-                actualRow.setNetSpot3Name(actualRow.getBaseSpot2Name());
-                actualRow.setNetTime(actualRow.getTareTime());
-            }
-            actualRow.setNetMode(DbConstants.TYPE);
-            SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
-            String no = meterWorkCarActualMapper.getNewID(sdf.format(new Date()));
-            actualRow.setActualNo(sdf.format(new Date()) + no);
-            actualRow.setNote(note);
-            actualRow.setUploadFlag("1");
-            actualRow.setNetWeight(mwcaf1.getMeterWeight().subtract(mwcaf2.getMeterWeight()));
-            meterWorkCarActualMapper.insertSelective(actualRow);
             return actualRow;
         } catch (MarkerMetException e) {
-            throw e;
+            throw new MarkerMetException(500, "操作异常,请确认!!!");
         }
     }
 
@@ -427,6 +477,7 @@ public class MeterWorkCarActualServiceImpl extends BaseServiceImpl<MeterWorkCarA
                 mwcafg.setUpdateManName("system");
                 mwcafg.setUpdateManName("二次计量解除更新");
                 mwcafg.setUpdateTime(new Date());
+                mwcafg.setIsPreScale("0");
 //                mwcafg.setDataSource("1");
                 meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcafg);
                 //皮重
@@ -441,6 +492,7 @@ public class MeterWorkCarActualServiceImpl extends BaseServiceImpl<MeterWorkCarA
                         mwcaft.setValueFlag(DbConstants.INVALID); //期限皮重置为作废
                         mwcaft.setUpdateManName("system");
                         mwcaft.setUpdateManName("二次计量解除作废");
+                        mwcaft.setIsPreScale("0");
 //                        mwcaft.setDataSource("1");
                         mwcaft.setUpdateTime(new Date());
                     } else {
@@ -448,6 +500,7 @@ public class MeterWorkCarActualServiceImpl extends BaseServiceImpl<MeterWorkCarA
                         mwcaft.setUpdateManName("system");
                         mwcaft.setUpdateManName("二次计量解除更新");
                         mwcaft.setNote(model.getNote());
+                        mwcaft.setIsPreScale("0");
 //                        mwcaft.setDataSource("1");
                         mwcaft.setUpdateTime(new Date());
                     }
@@ -852,72 +905,78 @@ public class MeterWorkCarActualServiceImpl extends BaseServiceImpl<MeterWorkCarA
         rm.setData(null);
         rm.setCode("500");
 
-        MeterWorkCarActual actualModel = meterWorkCarActualMapper.selectByPrimaryKey(params.get("actualNo").toString());
-        if(actualModel == null){
-            rm.setMessage("未找到一次计量数据,请确认!!!");
-            return rm;
-        }
-        List<MeterWorkCarActual> models = new ArrayList<MeterWorkCarActual>();
-        models.add(actualModel);
-
-        if(models == null || models.size() == 0) {
-            rm.setMessage("参数为空,请确认!!!");
-            return rm;
-        }
+        try{
+            MeterWorkCarActual actualModel = meterWorkCarActualMapper.selectByPrimaryKey(params.get("actualNo").toString());
+            if(actualModel == null){
+                rm.setMessage("未找到一次计量数据,请确认!!!");
+                return rm;
+            }
+            List<MeterWorkCarActual> models = new ArrayList<MeterWorkCarActual>();
+            models.add(actualModel);
 
-        for (MeterWorkCarActual model: models) {
-            //循环每一个洁净记录
-            //委托不能为空
-            if(!model.getPredictionNo().equals("")){
-                // 改委托
-                if (StringUtils.isNotEmpty(model.getPredictionNo())) {
-                    PreTrackScale scale = preTrackScaleMapper.selectByPrimaryKey(model.getPredictionNo());
-                    scale.setValueFlag("1");
-                    scale.setUploadFlag("1");
-                    scale.setUpdateTime(new Date());
-                    scale.setUpdateManNo("system");
-                    scale.setUpdateManName("洁净废除操作");
-                    preTrackScaleMapper.updateByPrimaryKeySelective(scale);
+            if(models == null || models.size() == 0) {
+                rm.setMessage("参数为空,请确认!!!");
+                return rm;
+            }
+            for (MeterWorkCarActual model: models) {
+                //循环每一个洁净记录
+                //委托不能为空
+                if(StringUtils.isNotEmpty(model.getPredictionNo())){
+                    // 改委托
+                    if (StringUtils.isNotEmpty(model.getPredictionNo())) {
+                        PreTrackScale scale = preTrackScaleMapper.selectByPrimaryKey(model.getPredictionNo());
+                        scale.setValueFlag("1");
+                        scale.setUploadFlag("1");
+                        scale.setUpdateTime(new Date());
+                        scale.setUpdateManNo("system");
+                        scale.setUpdateManName("洁净废除操作");
+                        preTrackScaleMapper.updateByPrimaryKeySelective(scale);
+                    }
+                }
+                // 清空一次毛重、皮重委托信息
+                MeterWorkCarActualFirst firstGross;
+                MeterWorkCarActualFirst firstTare;
+                if(StringUtils.isNotEmpty(model.getActualFirst1No())&&StringUtils.isNotEmpty(model.getActualFirst2No())){
+                    firstGross = meterWorkCarActualFirstMapper.selectAndRemove(model.getActualFirst1No());
+                    firstTare =  meterWorkCarActualFirstMapper.selectAndRemove(model.getActualFirst2No());
+                }else{
+                    firstGross = meterWorkCarActualFirstMapper.selectByPrimaryKey(model.getActualFirst1No());
+                    firstTare = meterWorkCarActualFirstMapper.selectByPrimaryKey(model.getActualFirst2No());
                 }
+                if(firstGross != null){
+                    firstGross.setValueFlag(DbConstants.VALID);
+                    firstGross.setUpdateManName("system");
+                    firstGross.setUpdateManName("洁净废除更新");
+                    firstGross.setNote(model.getNote());
+                    firstGross.setUpdateTime(new Date());
+                    firstGross.setIsPreScale("0");
+                    firstGross.setValueFlag("0");
+                    meterWorkCarActualFirstMapper.updateByPrimaryKey(firstGross);
+                }
+                if(firstTare != null){
+                    firstTare.setValueFlag(DbConstants.VALID);
+                    firstTare.setUpdateManName("system");
+                    firstTare.setUpdateManName("洁净废除更新");
+                    firstTare.setNote(model.getNote());
+                    firstTare.setUpdateTime(new Date());
+                    firstTare.setIsPreScale("0");
+                    firstTare.setValueFlag("0");
+                    meterWorkCarActualFirstMapper.updateByPrimaryKey(firstTare);
+                }
+                // 作废洁净
+                model.setUploadFlag("1");
+                model.setValueFlag("0");
+                meterWorkCarActualMapper.updateByPrimaryKeySelective(model);
+                //删洁净
+                //meterWorkCarActualMapper.deleteByPrimaryKey(model.getActualNo());
             }
-            // 清空一次毛重、皮重委托信息
-            MeterWorkCarActualFirst firstGross;
-            MeterWorkCarActualFirst firstTare;
-            if(StringUtils.isNotEmpty(model.getActualFirst1No())&&StringUtils.isNotEmpty(model.getActualFirst2No())){
-                firstGross = meterWorkCarActualFirstMapper.selectAndRemove(model.getActualFirst1No());
-                firstTare =  meterWorkCarActualFirstMapper.selectAndRemove(model.getActualFirst2No());
-            }else{
-                firstGross = meterWorkCarActualFirstMapper.selectByPrimaryKey(model.getActualFirst1No());
-                firstTare = meterWorkCarActualFirstMapper.selectByPrimaryKey(model.getActualFirst2No());
-            }
-            if(firstGross != null){
-                firstGross.setValueFlag(DbConstants.VALID);
-                firstGross.setUpdateManName("system");
-                firstGross.setUpdateManName("洁净废除更新");
-                firstGross.setNote(model.getNote());
-                firstGross.setUpdateTime(new Date());
-                firstGross.setIsPreScale("0");
-                meterWorkCarActualFirstMapper.updateByPrimaryKey(firstGross);
-            }
-            if(firstTare != null){
-                firstTare.setValueFlag(DbConstants.VALID);
-                firstTare.setUpdateManName("system");
-                firstTare.setUpdateManName("洁净废除更新");
-                firstTare.setNote(model.getNote());
-                firstTare.setUpdateTime(new Date());
-                firstTare.setIsPreScale("0");
-                meterWorkCarActualFirstMapper.updateByPrimaryKey(firstTare);
-            }
-            // 作废洁净
-            model.setUploadFlag("1");
-            model.setValueFlag("0");
-            meterWorkCarActualMapper.updateByPrimaryKeySelective(model);
-            //删洁净
-            //meterWorkCarActualMapper.deleteByPrimaryKey(model.getActualNo());
+            rm.setSucceed();
+            rm.setMessage("操作成功!!");
+            rm.setCode("200");
+        }catch(Exception e){
+            e.printStackTrace();
+            rm.setMessage("操作异常,请确认!>>>" + e.getMessage());
         }
-        rm.setSucceed();
-        rm.setMessage("操作成功!!");
-        rm.setCode("200");
         return rm;
     }
 
@@ -1104,6 +1163,8 @@ public class MeterWorkCarActualServiceImpl extends BaseServiceImpl<MeterWorkCarA
             MeterWorkCarActual mwca = meterWorkCarActualMapper.mathPredcition(actualNo, predictionNo);
             mwca.setIsPreScale("1");
             mwca.setPredictionType("1");
+            mwca.setCreateManName(userName);
+            mwca.setCreateTime(new Date());
             mwca.setUploadFlag("1");
             mwca.setNote(note);
             meterWorkCarActualMapper.updateByPrimaryKey(mwca);