|
@@ -2,6 +2,7 @@ package com.steerinfo.meterwork.meterworkhookactfirst.service.impl;
|
|
|
|
|
|
|
|
import com.steerinfo.baseinfo.meterbasevideoinfo.mapper.MeterBaseVideoinfoMapper;
|
|
import com.steerinfo.baseinfo.meterbasevideoinfo.mapper.MeterBaseVideoinfoMapper;
|
|
|
import com.steerinfo.baseinfo.meterbasevideoinfo.model.MeterBaseVideoinfo;
|
|
import com.steerinfo.baseinfo.meterbasevideoinfo.model.MeterBaseVideoinfo;
|
|
|
|
|
+import com.steerinfo.framework.controller.RESTfulResult;
|
|
|
import com.steerinfo.framework.mapper.IBaseMapper;
|
|
import com.steerinfo.framework.mapper.IBaseMapper;
|
|
|
import com.steerinfo.framework.service.impl.BaseServiceImpl;
|
|
import com.steerinfo.framework.service.impl.BaseServiceImpl;
|
|
|
import com.steerinfo.framework.service.pagehelper.PageHelper;
|
|
import com.steerinfo.framework.service.pagehelper.PageHelper;
|
|
@@ -677,6 +678,165 @@ public class MeterWorkHookActFirstServiceImpl extends BaseServiceImpl<MeterWorkH
|
|
|
return id;
|
|
return id;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public RESTfulResult doAddWfStaticTwo(PreHookScale scale, MeterWorkHookActFirst grossModel, MeterWorkHookActFirst tareModel) {
|
|
|
|
|
+ RESTfulResult rm = new RESTfulResult();
|
|
|
|
|
+ rm.setFailed();
|
|
|
|
|
+
|
|
|
|
|
+ try {
|
|
|
|
|
+ HashMap<String, Object> map = new HashMap<>();
|
|
|
|
|
+ List<MeterWorkHookActFirst> firsts = new ArrayList<>();
|
|
|
|
|
+ List<MeterWorkHookActual> actuals = new ArrayList<>();
|
|
|
|
|
+
|
|
|
|
|
+ BigDecimal num = grossModel.getMeterWeight().subtract(tareModel.getMeterWeight()).abs();
|
|
|
|
|
+ /*if(num.compareTo(BigDecimal.valueOf(400)) == -1){
|
|
|
|
|
+ rm.setMessage("选择的两条一次计量数据不能小于400kg,请确认!!");
|
|
|
|
|
+ return rm;
|
|
|
|
|
+ }*/
|
|
|
|
|
+ if (!grossModel.getRailwayNo().equals(tareModel.getRailwayNo())) {
|
|
|
|
|
+ rm.setMessage("两条一次计量数据车号不一致,请确认!!");
|
|
|
|
|
+ return rm;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
|
|
|
|
|
+ String afl = sdf.format(new Date());
|
|
|
|
|
+ String firstNo = sdf.format(new Date()) + meterWorkHookActFirstMapper.getNewID(afl);
|
|
|
|
|
+ String flag = null;
|
|
|
|
|
+ //存储当前计量的数据
|
|
|
|
|
+ if (grossModel.getActualFirstNo() == null) {
|
|
|
|
|
+ grossModel.setActualFirstNo(firstNo);
|
|
|
|
|
+ grossModel.setCreateTime(new Date());
|
|
|
|
|
+ meterWorkHookActFirstMapper.insertSelective(grossModel);
|
|
|
|
|
+ flag = "0";
|
|
|
|
|
+ }
|
|
|
|
|
+ if (tareModel.getActualFirstNo() == null) {
|
|
|
|
|
+ tareModel.setActualFirstNo(firstNo);
|
|
|
|
|
+ tareModel.setCreateTime(new Date());
|
|
|
|
|
+ meterWorkHookActFirstMapper.insertSelective(tareModel);
|
|
|
|
|
+ flag = "1";
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ MeterWorkHookActual actualRow = new MeterWorkHookActual();
|
|
|
|
|
+ //毛重一次
|
|
|
|
|
+ MeterWorkHookActFirst model01 = meterWorkHookActFirstMapper.selectByPrimaryKey(grossModel.getActualFirstNo());
|
|
|
|
|
+ //皮重一次
|
|
|
|
|
+ MeterWorkHookActFirst model02 = meterWorkHookActFirstMapper.selectByPrimaryKey(tareModel.getActualFirstNo());
|
|
|
|
|
+
|
|
|
|
|
+ //修改委托状态
|
|
|
|
|
+ if (scale != null) {
|
|
|
|
|
+ //委托信息是否为有效数据
|
|
|
|
|
+ if (scale.getValueFlag().equals("2") || scale.getValueFlag().equals("3")) {
|
|
|
|
|
+ rm.setMessage("委托信息已使用或者已作废!!");
|
|
|
|
|
+ return rm;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //将委托中的编号和收发货的等数据拷贝进一次数据中
|
|
|
|
|
+ MeterWorkHookActFirst first1 = meterWorkHookActFirstMapper.selectAndMatch(model01.getActualFirstNo(), scale.getPredictionNo());
|
|
|
|
|
+ BeanUtils.copyProperties(first1, model01);
|
|
|
|
|
+ MeterWorkHookActFirst first2 = meterWorkHookActFirstMapper.selectAndMatch(model02.getActualFirstNo(), scale.getPredictionNo());
|
|
|
|
|
+ BeanUtils.copyProperties(first2, model02);
|
|
|
|
|
+
|
|
|
|
|
+ //修改委托编号
|
|
|
|
|
+ scale.setValueFlag(DbConstants.NET);
|
|
|
|
|
+ scale.setUpdateTime(new Date());
|
|
|
|
|
+ scale.setUpdateManNo("system");
|
|
|
|
|
+ scale.setUpdateManName("自动匹配更新");
|
|
|
|
|
+ scale.setUploadFlag("1");
|
|
|
|
|
+ scale.setPredictionType("1");
|
|
|
|
|
+ preHookScaleMapper.updateByPrimaryKeySelective(scale);
|
|
|
|
|
+
|
|
|
|
|
+ //修改毛重一次数据状态
|
|
|
|
|
+ model01.setValueFlag(DbConstants.NET);
|
|
|
|
|
+ model01.setUpdateManName("system");
|
|
|
|
|
+ model01.setUpdateManName("自动匹配更新");
|
|
|
|
|
+ model01.setUpdateTime(new Date());
|
|
|
|
|
+ model01.setWeightType("0");
|
|
|
|
|
+ model01.setIsPreScale("1");
|
|
|
|
|
+ model01.setPredictionNo(scale.getPredictionNo());
|
|
|
|
|
+ model01.setPredictionType("1");
|
|
|
|
|
+ meterWorkHookActFirstMapper.updateByPrimaryKeySelective(model01);
|
|
|
|
|
+ //修改皮重一次数据状态
|
|
|
|
|
+ model02.setValueFlag(DbConstants.NET);
|
|
|
|
|
+ model02.setUpdateManName("system");
|
|
|
|
|
+ model02.setUpdateManName("自动匹配更新");
|
|
|
|
|
+ model02.setUpdateTime(new Date());
|
|
|
|
|
+ model02.setWeightType("1");
|
|
|
|
|
+ model02.setIsPreScale("1");
|
|
|
|
|
+ model02.setPredictionNo(scale.getPredictionNo());
|
|
|
|
|
+ model02.setPredictionType("1");
|
|
|
|
|
+ meterWorkHookActFirstMapper.updateByPrimaryKeySelective(model02);
|
|
|
|
|
+
|
|
|
|
|
+ MeterWorkHookActual mwca1 = meterWorkHookActualMapper.manualAddPre(model01.getActualFirstNo(), model02.getActualFirstNo(), scale.getPredictionNo());
|
|
|
|
|
+ BeanUtils.copyProperties(mwca1, actualRow);
|
|
|
|
|
+ //保存洁净
|
|
|
|
|
+ String no = meterWorkHookActualMapper.getNewID(sdf.format(new Date()));
|
|
|
|
|
+ actualRow.setActualNo(sdf.format(new Date()) + no);
|
|
|
|
|
+ actualRow.setNetTime(new Date());
|
|
|
|
|
+ actualRow.setNetMode(DbConstants.TYPE);
|
|
|
|
|
+// actualRow.setNote("自动匹配洁净");
|
|
|
|
|
+ actualRow.setNetMode("1");
|
|
|
|
|
+ actualRow.setUploadFlag("1");
|
|
|
|
|
+ actualRow.setValueFlag("1");
|
|
|
|
|
+ actualRow.setIsPreScale("1");
|
|
|
|
|
+ actualRow.setPredictionNo(scale.getPredictionNo());
|
|
|
|
|
+ actualRow.setPredictionType("1");
|
|
|
|
|
+ actualRow.setNetWeight(model01.getMeterWeight().subtract(model02.getMeterWeight()));
|
|
|
|
|
+ meterWorkHookActualMapper.insertSelective(actualRow);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ //修改毛重一次数据状态
|
|
|
|
|
+ model01.setValueFlag(DbConstants.NET);
|
|
|
|
|
+ model01.setUpdateManName("system");
|
|
|
|
|
+ model01.setUpdateManName("自动匹配更新");
|
|
|
|
|
+ model01.setUpdateTime(new Date());
|
|
|
|
|
+ model01.setWeightType("0");
|
|
|
|
|
+ model01.setIsPreScale("0");
|
|
|
|
|
+ meterWorkHookActFirstMapper.updateByPrimaryKeySelective(model01);
|
|
|
|
|
+ //修改皮重一次数据状态
|
|
|
|
|
+ model02.setValueFlag(DbConstants.NET);
|
|
|
|
|
+ model02.setUpdateManName("system");
|
|
|
|
|
+ model02.setUpdateManName("自动匹配更新");
|
|
|
|
|
+ model02.setUpdateTime(new Date());
|
|
|
|
|
+ model02.setWeightType("1");
|
|
|
|
|
+ model02.setIsPreScale("0");
|
|
|
|
|
+ meterWorkHookActFirstMapper.updateByPrimaryKeySelective(model02);
|
|
|
|
|
+
|
|
|
|
|
+ MeterWorkHookActual mwca1 = meterWorkHookActualMapper.manualAdd(model01.getActualFirstNo(), model02.getActualFirstNo());
|
|
|
|
|
+ BeanUtils.copyProperties(mwca1, actualRow);
|
|
|
|
|
+ //保存洁净
|
|
|
|
|
+ String no = meterWorkHookActualMapper.getNewID(sdf.format(new Date()));
|
|
|
|
|
+ actualRow.setActualNo(sdf.format(new Date()) + no);
|
|
|
|
|
+ actualRow.setNetTime(new Date());
|
|
|
|
|
+ actualRow.setNetMode(DbConstants.TYPE);
|
|
|
|
|
+// actualRow.setNote("自动匹配洁净");
|
|
|
|
|
+ actualRow.setNetMode("1");
|
|
|
|
|
+ actualRow.setUploadFlag("1");
|
|
|
|
|
+ actualRow.setValueFlag("1");
|
|
|
|
|
+ actualRow.setIsPreScale("0");
|
|
|
|
|
+ actualRow.setNetWeight(model01.getMeterWeight().subtract(model02.getMeterWeight()));
|
|
|
|
|
+ meterWorkHookActualMapper.insertSelective(actualRow);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ if (flag.equals("0")) {
|
|
|
|
|
+ firsts.add(model01);
|
|
|
|
|
+ } else if (flag.equals("1")) {
|
|
|
|
|
+ firsts.add(model02);
|
|
|
|
|
+ }
|
|
|
|
|
+ actuals.add(actualRow);
|
|
|
|
|
+ map.put("firsts", firsts);
|
|
|
|
|
+ map.put("actuals", actuals);
|
|
|
|
|
+
|
|
|
|
|
+ rm.setSucceed();
|
|
|
|
|
+ rm.setData(map);
|
|
|
|
|
+ rm.setCode("200");
|
|
|
|
|
+ rm.setMessage("操作成功!!");
|
|
|
|
|
+ return rm;
|
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
|
+ e.printStackTrace();
|
|
|
|
|
+ rm.setMessage("操作异常,请确认!>>>" + e.getMessage());
|
|
|
|
|
+ }
|
|
|
|
|
+ return rm;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
//保存计量数据
|
|
//保存计量数据
|
|
|
private String doAddWfStaticFrist(MeterWorkHookActFirst model) {
|
|
private String doAddWfStaticFrist(MeterWorkHookActFirst model) {
|
|
|
//此为第一次计量的数据
|
|
//此为第一次计量的数据
|