|
|
@@ -58,6 +58,7 @@ import com.steerinfo.util.FieldsCollector;
|
|
|
import com.steerinfo.util.HttpRequest;
|
|
|
import com.steerinfo.util.StringUtils;
|
|
|
import io.micrometer.core.instrument.Meter;
|
|
|
+import oracle.jdbc.proxy.annotation.Pre;
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.scheduling.annotation.Scheduled;
|
|
|
@@ -2609,23 +2610,278 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
|
|
|
|
|
|
@Override
|
|
|
public String mixedLoading(String actualNo1, String actualNo2, String actualNo3, String predictionNo1, String predictionNo2) {
|
|
|
- //查询所有的一次数据
|
|
|
- MeterWorkCarActualFirst mwcaf1 = meterWorkCarActualFirstMapper.selectByPrimaryKey(actualNo1);
|
|
|
- MeterWorkCarActualFirst mwcaf2 = meterWorkCarActualFirstMapper.selectByPrimaryKey(actualNo2);
|
|
|
- MeterWorkCarActualFirst mwcaf3 = meterWorkCarActualFirstMapper.selectByPrimaryKey(actualNo3);
|
|
|
+ try{
|
|
|
+ //查询所有的一次数据
|
|
|
+ MeterWorkCarActualFirst mwcaf1 = meterWorkCarActualFirstMapper.selectByPrimaryKey(actualNo1);
|
|
|
+ MeterWorkCarActualFirst mwcaf2 = meterWorkCarActualFirstMapper.selectByPrimaryKey(actualNo2);
|
|
|
+ MeterWorkCarActualFirst mwcaf3 = meterWorkCarActualFirstMapper.selectByPrimaryKey(actualNo2);
|
|
|
+ MeterWorkCarActualFirst mwcaf4 = meterWorkCarActualFirstMapper.selectByPrimaryKey(actualNo3);
|
|
|
+
|
|
|
+ //查询所有的委托数据
|
|
|
+ PreTrackScale pts1 = preTrackScaleMapper.selectByPrimaryKey(predictionNo1);
|
|
|
+ PreTrackScale pts2 = preTrackScaleMapper.selectByPrimaryKey(predictionNo2);
|
|
|
+
|
|
|
+ //定义新的结净数据实体
|
|
|
+ MeterWorkCarActual actualRow1 = new MeterWorkCarActual();
|
|
|
+ MeterWorkCarActual actualRow2 = new MeterWorkCarActual();
|
|
|
+
|
|
|
+ //判断是否为混装逻辑
|
|
|
+ if(mwcaf1.getMeterWeight().compareTo(mwcaf2.getMeterWeight()) == 1 || mwcaf1.getMeterWeight().compareTo(mwcaf4.getMeterWeight()) == 1 || mwcaf2.getMeterWeight().compareTo(mwcaf4.getMeterWeight()) == 1){
|
|
|
+ return "不为混装逻辑!!";
|
|
|
+ }
|
|
|
|
|
|
- //查询所有的委托数据
|
|
|
- PreTrackScale pts1 = preTrackScaleMapper.selectByPrimaryKey(predictionNo1);
|
|
|
- PreTrackScale pts2 = preTrackScaleMapper.selectByPrimaryKey(predictionNo2);
|
|
|
+ //判断一次数据是否存在
|
|
|
+ if (mwcaf1 == null || mwcaf2 == null || mwcaf3 == null || mwcaf4 == null) {
|
|
|
+ return "未查询到相应的一次数据!!";
|
|
|
+ }
|
|
|
|
|
|
- if (mwcaf1 == null) {
|
|
|
- return "未查询到相应的一次数据!!";
|
|
|
- }
|
|
|
- if (mwcaf2 == null) {
|
|
|
- return "未查询到相应的一次数据!!";
|
|
|
+ //判断一次数据是否已结净
|
|
|
+ if (mwcaf1.getValueFlag().equals("2") || mwcaf2.getValueFlag().equals("2") || mwcaf3.getValueFlag().equals("2") || mwcaf4.getValueFlag().equals("2")) {
|
|
|
+ return "存在已结净的一次数据!!";
|
|
|
+ }
|
|
|
+
|
|
|
+ //判断委托数据是否存在
|
|
|
+ if (pts1 == null || pts2 == null) {
|
|
|
+ return "未查询到相应的委托数据!!";
|
|
|
+ }
|
|
|
+
|
|
|
+ //判断委托数据是否已使用
|
|
|
+ if (!pts1.getValueFlag().equals("1") || !pts1.getValueFlag().equals("1")) {
|
|
|
+ return "委托不是未使用状态!!";
|
|
|
+ }
|
|
|
+
|
|
|
+ //将委托中的编号和收发货的等数据拷贝进一次数据中
|
|
|
+ MeterWorkCarActualFirst first1 = meterWorkCarActualFirstMapper.selectAndMatch(actualNo1, predictionNo1);
|
|
|
+ BeanUtils.copyProperties(first1,mwcaf1);
|
|
|
+ MeterWorkCarActualFirst first2 = meterWorkCarActualFirstMapper.selectAndMatch(actualNo2, predictionNo1);
|
|
|
+ BeanUtils.copyProperties(first2, mwcaf2);
|
|
|
+ MeterWorkCarActualFirst first3 = meterWorkCarActualFirstMapper.selectAndMatch(actualNo2, predictionNo2);
|
|
|
+ BeanUtils.copyProperties(first3,mwcaf3);
|
|
|
+ MeterWorkCarActualFirst first4 = meterWorkCarActualFirstMapper.selectAndMatch(actualNo3, predictionNo2);
|
|
|
+ BeanUtils.copyProperties(first4, mwcaf4);
|
|
|
+
|
|
|
+ //将委托中的编号和收发货单位和一次数据等数据拷贝进结净数据中
|
|
|
+ MeterWorkCarActual mwca1 = meterWorkCarActualMapper.manualAddPre(actualNo2, actualNo1, predictionNo1);
|
|
|
+ BeanUtils.copyProperties(mwca1, actualRow1);
|
|
|
+ MeterWorkCarActual mwca2 = meterWorkCarActualMapper.manualAddPre(actualNo3, actualNo2, predictionNo2);
|
|
|
+ BeanUtils.copyProperties(mwca2,actualRow2);
|
|
|
+
|
|
|
+ //更新预报数据
|
|
|
+ PreTrackScale scale = new PreTrackScale();
|
|
|
+ scale.setPredictionNo(predictionNo1);
|
|
|
+ scale.setValueFlag(DbConstants.NET);
|
|
|
+ scale.setUpdateTime(new Date());
|
|
|
+ scale.setUpdateManNo("system");
|
|
|
+ scale.setUpdateManName("二次计量洁净更新");
|
|
|
+ scale.setUploadFlag("1");
|
|
|
+ preTrackScaleMapper.updateByPrimaryKeySelective(scale);
|
|
|
+
|
|
|
+ PreTrackScale scale1 = new PreTrackScale();
|
|
|
+ scale1.setPredictionNo(predictionNo2);
|
|
|
+ scale1.setValueFlag(DbConstants.NET);
|
|
|
+ scale1.setUpdateTime(new Date());
|
|
|
+ scale1.setUpdateManNo("system");
|
|
|
+ scale1.setUpdateManName("二次计量洁净更新");
|
|
|
+ scale1.setUploadFlag("1");
|
|
|
+ preTrackScaleMapper.updateByPrimaryKeySelective(scale1);
|
|
|
+
|
|
|
+ //更新一次数据
|
|
|
+ //更新第一次皮重数据库
|
|
|
+ mwcaf1.setValueFlag(DbConstants.NET);
|
|
|
+ mwcaf1.setUpdateManName("system");
|
|
|
+ mwcaf1.setUpdateManName("二次计量洁净更新");
|
|
|
+ mwcaf1.setUpdateTime(new Date());
|
|
|
+ mwcaf1.setIsPreScale("1");
|
|
|
+ meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf1);
|
|
|
+ //更新第一次毛重数据库
|
|
|
+ mwcaf2.setValueFlag(DbConstants.NET);
|
|
|
+ mwcaf2.setUpdateManName("system");
|
|
|
+ mwcaf2.setUpdateManName("二次计量洁净更新");
|
|
|
+ mwcaf2.setUpdateTime(new Date());
|
|
|
+ mwcaf2.setIsPreScale("1");
|
|
|
+ meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf2);
|
|
|
+ //添加第一次皮重数据库
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
|
|
|
+ String afl = sdf.format(new Date());
|
|
|
+ String actualFirstNo = sdf.format(new Date()) + meterWorkCarActualFirstMapper.getNewID(afl);
|
|
|
+ mwcaf3.setActualFirstNo(actualFirstNo);
|
|
|
+ mwcaf3.setValueFlag(DbConstants.NET);
|
|
|
+ mwcaf3.setUpdateManName("system");
|
|
|
+ mwcaf3.setUpdateManName("二次计量洁净更新");
|
|
|
+ mwcaf3.setUpdateTime(new Date());
|
|
|
+ mwcaf3.setIsPreScale("1");
|
|
|
+ meterWorkCarActualFirstMapper.insertSelective(mwcaf3);
|
|
|
+ //更新第二次毛重数据库
|
|
|
+ mwcaf4.setValueFlag(DbConstants.NET);
|
|
|
+ mwcaf4.setUpdateManName("system");
|
|
|
+ mwcaf4.setUpdateManName("二次计量洁净更新");
|
|
|
+ mwcaf4.setUpdateTime(new Date());
|
|
|
+ mwcaf4.setIsPreScale("1");
|
|
|
+ meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf4);
|
|
|
+
|
|
|
+ //添加结净数据
|
|
|
+ String no = meterWorkCarActualMapper.getNewID(sdf.format(new Date()));
|
|
|
+ actualRow1.setActualNo(sdf.format(new Date()) + no);
|
|
|
+ actualRow1.setNetTime(new Date());
|
|
|
+ actualRow1.setNetMode(DbConstants.TYPE);
|
|
|
+ actualRow1.setNote("混装结净");
|
|
|
+ actualRow1.setUploadFlag("1");
|
|
|
+ actualRow1.setIsPreScale("1");
|
|
|
+ actualRow1.setNetWeight(mwcaf2.getMeterWeight().subtract(mwcaf1.getMeterWeight()));
|
|
|
+ meterWorkCarActualMapper.insertSelective(actualRow1);
|
|
|
+
|
|
|
+ String no1 = meterWorkCarActualMapper.getNewID(sdf.format(new Date()));
|
|
|
+ actualRow2.setActualNo(sdf.format(new Date()) + no1);
|
|
|
+ actualRow2.setNetTime(new Date());
|
|
|
+ actualRow2.setNetMode(DbConstants.TYPE);
|
|
|
+ actualRow2.setNote("混装结净");
|
|
|
+ actualRow2.setUploadFlag("1");
|
|
|
+ actualRow2.setIsPreScale("1");
|
|
|
+ actualRow2.setNetWeight(mwcaf4.getMeterWeight().subtract(mwcaf3.getMeterWeight()));
|
|
|
+ meterWorkCarActualMapper.insertSelective(actualRow2);
|
|
|
+ }
|
|
|
+ catch (Exception e){
|
|
|
+ e.printStackTrace();
|
|
|
+ return "操作异常,请确认";
|
|
|
}
|
|
|
- if (mwcaf3 == null) {
|
|
|
- return "未查询到相应的一次数据!!";
|
|
|
+ return "";
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public String mixedDischarge(String actualNo1, String actualNo2, String actualNo3, String predictionNo1, String predictionNo2) {
|
|
|
+ try{
|
|
|
+ //查询所有的一次数据
|
|
|
+ MeterWorkCarActualFirst mwcaf1 = meterWorkCarActualFirstMapper.selectByPrimaryKey(actualNo1);
|
|
|
+ MeterWorkCarActualFirst mwcaf2 = meterWorkCarActualFirstMapper.selectByPrimaryKey(actualNo2);
|
|
|
+ MeterWorkCarActualFirst mwcaf3 = meterWorkCarActualFirstMapper.selectByPrimaryKey(actualNo2);
|
|
|
+ MeterWorkCarActualFirst mwcaf4 = meterWorkCarActualFirstMapper.selectByPrimaryKey(actualNo3);
|
|
|
+
|
|
|
+ //查询所有的委托数据
|
|
|
+ PreTrackScale pts1 = preTrackScaleMapper.selectByPrimaryKey(predictionNo1);
|
|
|
+ PreTrackScale pts2 = preTrackScaleMapper.selectByPrimaryKey(predictionNo2);
|
|
|
+
|
|
|
+ //定义新的结净数据实体
|
|
|
+ MeterWorkCarActual actualRow1 = new MeterWorkCarActual();
|
|
|
+ MeterWorkCarActual actualRow2 = new MeterWorkCarActual();
|
|
|
+
|
|
|
+ //判断是否为混装逻辑
|
|
|
+ if(mwcaf1.getMeterWeight().compareTo(mwcaf2.getMeterWeight()) == -1 || mwcaf1.getMeterWeight().compareTo(mwcaf4.getMeterWeight()) == -1 || mwcaf2.getMeterWeight().compareTo(mwcaf4.getMeterWeight()) == -1){
|
|
|
+ return "不为混装逻辑!!";
|
|
|
+ }
|
|
|
+
|
|
|
+ //判断一次数据是否存在
|
|
|
+ if (mwcaf1 == null || mwcaf2 == null || mwcaf3 == null || mwcaf4 == null) {
|
|
|
+ return "未查询到相应的一次数据!!";
|
|
|
+ }
|
|
|
+
|
|
|
+ //判断一次数据是否已结净
|
|
|
+ if (mwcaf1.getValueFlag().equals("2") || mwcaf2.getValueFlag().equals("2") || mwcaf3.getValueFlag().equals("2") || mwcaf4.getValueFlag().equals("2")) {
|
|
|
+ return "存在已结净的一次数据!!";
|
|
|
+ }
|
|
|
+
|
|
|
+ //判断委托数据是否存在
|
|
|
+ if (pts1 == null || pts2 == null) {
|
|
|
+ return "未查询到相应的委托数据!!";
|
|
|
+ }
|
|
|
+
|
|
|
+ //判断委托数据是否已使用
|
|
|
+ if (!pts1.getValueFlag().equals("1") || !pts1.getValueFlag().equals("1")) {
|
|
|
+ return "委托不是未使用状态!!";
|
|
|
+ }
|
|
|
+
|
|
|
+ //将委托中的编号和收发货的等数据拷贝进一次数据中
|
|
|
+ MeterWorkCarActualFirst first1 = meterWorkCarActualFirstMapper.selectAndMatch(actualNo1, predictionNo1);
|
|
|
+ BeanUtils.copyProperties(first1,mwcaf1);
|
|
|
+ MeterWorkCarActualFirst first2 = meterWorkCarActualFirstMapper.selectAndMatch(actualNo2, predictionNo1);
|
|
|
+ BeanUtils.copyProperties(first2, mwcaf2);
|
|
|
+ MeterWorkCarActualFirst first3 = meterWorkCarActualFirstMapper.selectAndMatch(actualNo2, predictionNo2);
|
|
|
+ BeanUtils.copyProperties(first3,mwcaf3);
|
|
|
+ MeterWorkCarActualFirst first4 = meterWorkCarActualFirstMapper.selectAndMatch(actualNo3, predictionNo2);
|
|
|
+ BeanUtils.copyProperties(first4, mwcaf4);
|
|
|
+
|
|
|
+ //将委托中的编号和收发货单位和一次数据等数据拷贝进结净数据中
|
|
|
+ MeterWorkCarActual mwca1 = meterWorkCarActualMapper.manualAddPre(actualNo1, actualNo2, predictionNo1);
|
|
|
+ BeanUtils.copyProperties(mwca1, actualRow1);
|
|
|
+ MeterWorkCarActual mwca2 = meterWorkCarActualMapper.manualAddPre(actualNo2, actualNo3, predictionNo2);
|
|
|
+ BeanUtils.copyProperties(mwca2,actualRow2);
|
|
|
+
|
|
|
+ //更新预报数据
|
|
|
+ PreTrackScale scale = new PreTrackScale();
|
|
|
+ scale.setPredictionNo(predictionNo1);
|
|
|
+ scale.setValueFlag(DbConstants.NET);
|
|
|
+ scale.setUpdateTime(new Date());
|
|
|
+ scale.setUpdateManNo("system");
|
|
|
+ scale.setUpdateManName("二次计量洁净更新");
|
|
|
+ scale.setUploadFlag("1");
|
|
|
+ preTrackScaleMapper.updateByPrimaryKeySelective(scale);
|
|
|
+
|
|
|
+ PreTrackScale scale1 = new PreTrackScale();
|
|
|
+ scale1.setPredictionNo(predictionNo2);
|
|
|
+ scale1.setValueFlag(DbConstants.NET);
|
|
|
+ scale1.setUpdateTime(new Date());
|
|
|
+ scale1.setUpdateManNo("system");
|
|
|
+ scale1.setUpdateManName("二次计量洁净更新");
|
|
|
+ scale1.setUploadFlag("1");
|
|
|
+ preTrackScaleMapper.updateByPrimaryKeySelective(scale1);
|
|
|
+
|
|
|
+ //更新一次数据
|
|
|
+ //更新第一次毛重数据库
|
|
|
+ mwcaf1.setValueFlag(DbConstants.NET);
|
|
|
+ mwcaf1.setUpdateManName("system");
|
|
|
+ mwcaf1.setUpdateManName("二次计量洁净更新");
|
|
|
+ mwcaf1.setUpdateTime(new Date());
|
|
|
+ mwcaf1.setIsPreScale("1");
|
|
|
+ meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf1);
|
|
|
+ //更新第一次皮重数据库
|
|
|
+ mwcaf2.setValueFlag(DbConstants.NET);
|
|
|
+ mwcaf2.setUpdateManName("system");
|
|
|
+ mwcaf2.setUpdateManName("二次计量洁净更新");
|
|
|
+ mwcaf2.setUpdateTime(new Date());
|
|
|
+ mwcaf2.setIsPreScale("1");
|
|
|
+ meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf2);
|
|
|
+ //添加第一次毛重数据库
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
|
|
|
+ String afl = sdf.format(new Date());
|
|
|
+ String actualFirstNo = sdf.format(new Date()) + meterWorkCarActualFirstMapper.getNewID(afl);
|
|
|
+ mwcaf3.setActualFirstNo(actualFirstNo);
|
|
|
+ mwcaf3.setValueFlag(DbConstants.NET);
|
|
|
+ mwcaf3.setUpdateManName("system");
|
|
|
+ mwcaf3.setUpdateManName("二次计量洁净更新");
|
|
|
+ mwcaf3.setUpdateTime(new Date());
|
|
|
+ mwcaf3.setIsPreScale("1");
|
|
|
+ meterWorkCarActualFirstMapper.insertSelective(mwcaf3);
|
|
|
+ //更新第二次皮重数据库
|
|
|
+ mwcaf4.setValueFlag(DbConstants.NET);
|
|
|
+ mwcaf4.setUpdateManName("system");
|
|
|
+ mwcaf4.setUpdateManName("二次计量洁净更新");
|
|
|
+ mwcaf4.setUpdateTime(new Date());
|
|
|
+ mwcaf4.setIsPreScale("1");
|
|
|
+ meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf4);
|
|
|
+
|
|
|
+ //添加结净数据
|
|
|
+ String no = meterWorkCarActualMapper.getNewID(sdf.format(new Date()));
|
|
|
+ actualRow1.setActualNo(sdf.format(new Date()) + no);
|
|
|
+ actualRow1.setNetTime(new Date());
|
|
|
+ actualRow1.setNetMode(DbConstants.TYPE);
|
|
|
+ actualRow1.setNote("混装结净");
|
|
|
+ actualRow1.setUploadFlag("1");
|
|
|
+ actualRow1.setIsPreScale("1");
|
|
|
+ actualRow1.setNetWeight(mwcaf1.getMeterWeight().subtract(mwcaf2.getMeterWeight()));
|
|
|
+ meterWorkCarActualMapper.insertSelective(actualRow1);
|
|
|
+
|
|
|
+ String no1 = meterWorkCarActualMapper.getNewID(sdf.format(new Date()));
|
|
|
+ actualRow2.setActualNo(sdf.format(new Date()) + no1);
|
|
|
+ actualRow2.setNetTime(new Date());
|
|
|
+ actualRow2.setNetMode(DbConstants.TYPE);
|
|
|
+ actualRow2.setNote("混装结净");
|
|
|
+ actualRow2.setUploadFlag("1");
|
|
|
+ actualRow2.setIsPreScale("1");
|
|
|
+ actualRow2.setNetWeight(mwcaf3.getMeterWeight().subtract(mwcaf4.getMeterWeight()));
|
|
|
+ meterWorkCarActualMapper.insertSelective(actualRow2);
|
|
|
+ }
|
|
|
+ catch (Exception e){
|
|
|
+ e.printStackTrace();
|
|
|
+ return "操作异常,请确认";
|
|
|
}
|
|
|
return "";
|
|
|
}
|