Просмотр исходного кода

Merge branch 'master' of https://git.steerinfo.com/DAL-DAZHOU1/DAL-TMS-TRUCK-API

zx 3 лет назад
Родитель
Сommit
02ff4031f0

+ 7 - 1
src/main/java/com/steerinfo/dil/controller/TmstruckWeightResultController.java

@@ -140,7 +140,13 @@ public class TmstruckWeightResultController extends BaseRESTfulController {
 
     @PostMapping("/update")
     public RESTfulResult update(@RequestBody(required = false) Map<String, Object> map){
-        return  success(tmstruckWeightResultService.updateSteelTruckWeightResult(map));
+        try {
+            tmstruckWeightResultService.updateSteelTruckWeightResult(map);
+        } catch (Exception e) {
+            e.printStackTrace();
+            return failed();
+        }
+        return  success();
     }
 }
 

+ 0 - 1
src/main/java/com/steerinfo/dil/service/impl/TmstruckEnfactoryResultServiceImpl.java

@@ -74,7 +74,6 @@ public class TmstruckEnfactoryResultServiceImpl implements ITmstruckEnfactoryRes
         tmstruckEnfactoryResult.setGatepostId(new BigDecimal(gatepostId));
         // 添加路段顺序号
         tmstruckEnfactoryResult.setSegmenSqe(DataChange.dataToBigDecimal(map.get("segmentSqe")));
-        System.out.println(DataChange.dataToBigDecimal(map.get("segmentSqe")));
         return tmstruckEnfactoryResultMapper.insertSelective(tmstruckEnfactoryResult);
     }
 

+ 4 - 0
src/main/java/com/steerinfo/dil/service/impl/TmstruckMeasureCommissionServiceImpl.java

@@ -142,6 +142,7 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
         Map<String, Object> mesMap = tmstruckMeasureCommissionMapper.getShipperIdByOrderId(DataChange.dataToBigDecimal(map.get("orderId")));
         if(mesMap.get("saleWarehouse") != null){
             if(judgeCoke.equals(map.get("saleWarehouse"))){ //如果是一厂焦炭库则向达钢发送委托
+                map.put("isDG", "1"); //标识为老厂区
                 return sendMeasureCommissionMes(map);
             }
         }
@@ -314,6 +315,9 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
                 measureCommission.put("IsAssembly", false);
                 measureCommission.put("deliveryMethod", "磅重交货");
                 measureCommission.put("packagesNum", 0);
+                if(map.get("isDG") != null){
+                    measureCommission.put("factory", "dg");
+                }
                 break;
             case 5:
             case 6:

+ 10 - 6
src/main/java/com/steerinfo/dil/service/impl/TmstruckUnloadResultServiceImpl.java

@@ -145,13 +145,16 @@ public class TmstruckUnloadResultServiceImpl implements ITmstruckUnloadResultSer
         String orderNumber = (String) map.get("orderNumber");
         //通过订单号查询订单类型 及总实绩Id
         Map<String, Object> mesMap = utilsMapper.getOrderTypeByOrderNumber(orderNumber);
+        //卸货时查询是否含有净重
+        BigDecimal totalId = DataChange.dataToBigDecimal(mesMap.get("totalId"));
+        Integer netWeight = tmstruckUnloadResultMapper.getNetWeightByTotalId(totalId);
+
         int orderType = DataChange.dataToBigDecimal(mesMap.get("orderType")).intValue();
         //判断是不是内转
         if(orderType == 11 || orderType == 15 || orderType == 16){
             //如果是内转新增卸货实绩
             Integer sqe = utilsMapper.getLineSequenceByOrderNumber((String) map.get("orderNumber"));
             sqe = sqe == null ? 1 : sqe +1;
-            BigDecimal totalId = DataChange.dataToBigDecimal(mesMap.get("totalId"));
             map.put("resultId",tmstruckUnloadResultMapper.selectMaxId());
             map.put("Sqe",sqe);
             map.put("totalId",totalId);
@@ -159,8 +162,7 @@ public class TmstruckUnloadResultServiceImpl implements ITmstruckUnloadResultSer
             tmstruckUnloadResultMapper.insertSelective(tmstruckUnloadResult);
             //更新路段顺序号
             //内转只要是卸货都直接关闭订单 事务跨服务更改同表同一行数据 不能调用 会锁行
-            //查询是否有净重 如果没有净重更新路段顺序号需要继续回皮 有就结束订单
-            Integer netWeight = tmstruckUnloadResultMapper.getNetWeightByTotalId(totalId);
+            //如果没有净重更新路段顺序号需要继续回皮 有就结束订单
             if(netWeight == 0){
                 mesMap.put("orderLineSequence",sqe);
                 utilsService.updateOrderLineSqeByOrderNumber(mesMap);
@@ -193,9 +195,11 @@ public class TmstruckUnloadResultServiceImpl implements ITmstruckUnloadResultSer
         }
         map.putAll(dataMap);
         updateUnloadResultBy(map); //更新卸货实绩
-        //路段顺序号 + 1
-        map.put("orderId", mesMap.get("orderId"));
-        utilsService.updateOrderLineSequence(map);
+        if(netWeight == 0){ //如果没有净重 则更新路段顺序号  有则不更新
+            //路段顺序号 + 1
+            map.put("orderId", mesMap.get("orderId"));
+            utilsService.updateOrderLineSequence(map);
+        }
         switch (orderType){
             case 5:
             case 6:

+ 4 - 4
src/main/java/com/steerinfo/dil/service/impl/TmstruckWeightResultServiceImpl.java

@@ -187,6 +187,7 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
      * @param map orderId, oldMaterialMapList, newMaterialMapList
      * @return
      */
+    @Transactional(rollbackFor = Exception.class)
     public int updateSteelTruckWeightResult(Map<String, Object> map){
         BigDecimal orderId = DataChange.dataToBigDecimal(map.get("orderId"));
         List<Map<String, Object>> newMaterialMapList = (List<Map<String, Object>>) map.get("newMaterialMapList");
@@ -240,7 +241,6 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
                 }
             }
         }
-        //读取新的物资map对比数据
         return 0;
     }
 
@@ -303,7 +303,7 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
         for (Map<String, Object> map : oldMaterialMapList) {
             String materialId = String.valueOf(map.get("materialId"));//拿到key
             //通过这个key去新物资集合中获取是否包含这个key
-            Map<String, Object> newMap = getNewMap(materialId, newMaterialMapList);
+            Map<String, Object> newMap = getNewMap(Integer.parseInt(materialId), newMaterialMapList);
             if(newMap == null){
                 //如果在新物资中没有找到,则代表此物资已删除
                 delete.add(DataChange.dataToBigDecimal(map.get("materialId")));
@@ -322,7 +322,7 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
         //再次遍历new中的物资 查找 新增 的物资
         for (Map<String, Object> map : newMaterialMapList) {
             String materialId = String.valueOf(map.get("materialId"));
-            Map<String, Object> oldMaps = getNewMap(materialId, oldMaterialMapList);
+            Map<String, Object> oldMaps = getNewMap(Integer.parseInt(materialId), oldMaterialMapList);
             if(oldMaps == null){
                 //如果在旧map中没有找到,则代表是新增的物资,将新增的物资存放到新增列表中
                 add.add(map);
@@ -340,7 +340,7 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
      * @param mapList
      * @return
      */
-    public Map<String, Object> getNewMap(String key, List<Map<String, Object>> mapList){
+    public Map<String, Object> getNewMap(int key, List<Map<String, Object>> mapList){
         for (Map<String, Object> map : mapList) {
             if(map.containsValue(key)){
                 return map;