|
@@ -1,6 +1,7 @@
|
|
|
package com.steerinfo.dil.service.impl;
|
|
|
|
|
|
import com.steerinfo.dil.feign.BmsTruckFeign;
|
|
|
+import com.steerinfo.dil.feign.OmsFeign;
|
|
|
import com.steerinfo.dil.mapper.TmstrainWeightResultMapper;
|
|
|
import com.steerinfo.dil.mapper.TmstruckReceiptResultMapper;
|
|
|
import com.steerinfo.dil.mapper.UtilsMapper;
|
|
@@ -47,6 +48,9 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
|
|
|
@Autowired
|
|
|
UtilsMapper utilsMapper;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ OmsFeign omsFeign;
|
|
|
+
|
|
|
@Autowired
|
|
|
TmstruckReceiptResultMapper tmstruckReceiptResultMapper;
|
|
|
|
|
@@ -382,12 +386,27 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
|
|
|
TmstruckWeightResult tmstruckWeightResult = new TmstruckWeightResult();
|
|
|
tmstruckWeightResult.setResultPoundNo((String) map.get("resultPoundNo"));
|
|
|
tmstruckWeightResult.setMaterialId(DataChange.dataToBigDecimal(map.get("materialId")));
|
|
|
- Integer sqe = DataChange.dataToBigDecimal(oneMap.get("Sqe")).intValue(); //获取订单路段顺序号
|
|
|
+ int sqe = DataChange.dataToBigDecimal(oneMap.get("Sqe")).intValue(); //获取订单路段顺序号
|
|
|
sqe = sqe + 1;
|
|
|
- Map<String, Object> threeMap = new HashMap<>(); //用于更新路段顺序号
|
|
|
- threeMap.put("orderLineSequence", sqe);
|
|
|
- threeMap.put("orderNumber", map.get("orderNumber"));
|
|
|
- utilsMapper.updateLineSeqByOrderIdOrNum2(threeMap); //更新订单路段顺序号
|
|
|
+ Object resultNetWeight = map.get("resultNetWeight");
|
|
|
+ if(resultNetWeight != null && !"".equals((String) resultNetWeight)){
|
|
|
+ //判断是否有卸货实绩已经卸过货 如果有卸货实绩 则结束订单
|
|
|
+ Integer resultId = utilsMapper.getUnloadResultByTotalId(DataChange.dataToBigDecimal(oneMap.get("totalId")));
|
|
|
+ if(resultId != null){
|
|
|
+ int orderIds = DataChange.dataToBigDecimal(oneMap.get("orderIds")).intValue();
|
|
|
+ omsFeign.closeInwardOrder(orderIds, sqe);
|
|
|
+ }else {
|
|
|
+ Map<String, Object> threeMap = new HashMap<>(); //用于更新路段顺序号
|
|
|
+ threeMap.put("orderLineSequence", sqe);
|
|
|
+ threeMap.put("orderNumber", map.get("orderNumber"));
|
|
|
+ utilsMapper.updateLineSeqByOrderIdOrNum2(threeMap); //更新订单路段顺序号
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ Map<String, Object> threeMap = new HashMap<>(); //用于更新路段顺序号
|
|
|
+ threeMap.put("orderLineSequence", sqe);
|
|
|
+ threeMap.put("orderNumber", map.get("orderNumber"));
|
|
|
+ utilsMapper.updateLineSeqByOrderIdOrNum2(threeMap); //更新订单路段顺序号
|
|
|
+ }
|
|
|
//首先查询这个订单号的这个物资ID是否有计量实绩
|
|
|
Map<String, Object> twoMap = tmstruckWeightResultMapper.selectResultIdByOrderNoAndMaterialId(map); //判断这个物资是否已经计量过
|
|
|
Object resultCrossWeightTime = map.get("resultCrossWeightTime");
|