Browse Source

修改纯内转

zx 3 years ago
parent
commit
72abe68bc1

+ 1 - 1
pom.xml

@@ -147,7 +147,7 @@
                     <!--包名-->
                     <targetPackage>com.steerinfo.dil</targetPackage>
                     <tables>
-                        <param>TMSTRUCK_LOAD_RESULT</param>
+                        <param>AMSTRUCK_REQUIREMENT_MATERIAL</param>
                     </tables>
                 </configuration>
                 <executions>

+ 4 - 0
src/main/java/com/steerinfo/dil/mapper/TmstruckEnfactoryResultMapper.java

@@ -66,4 +66,8 @@ public interface TmstruckEnfactoryResultMapper extends IBaseMapper<TmstruckEnfac
 
     List<Map<String, Object>> getCgNzOutFactory(Map<String, Object> map);
 
+
+    //辅料查询 有几次进厂 并进了几次厂
+    Integer selectEnFactoryNumber(BigDecimal resultTotalId);
+    Integer selectAllEnFactoryNum(BigDecimal resultTotalId);
 }

+ 19 - 11
src/main/java/com/steerinfo/dil/service/impl/TmstruckEnfactoryResultServiceImpl.java

@@ -163,6 +163,7 @@ public class TmstruckEnfactoryResultServiceImpl implements ITmstruckEnfactoryRes
         map.putAll(selectMap);
         BigDecimal orderType = DataChange.dataToBigDecimal(map.get("orderTypee"));
         BigDecimal orderId = DataChange.dataToBigDecimal(map.get("orderId"));
+        BigDecimal resultTotalId = DataChange.dataToBigDecimal(map.get("resultTotalId"));
         //判断委托是否发送成功
         int checkMeasureCommission = 0;
         switch (orderType.intValue()){
@@ -182,22 +183,29 @@ public class TmstruckEnfactoryResultServiceImpl implements ITmstruckEnfactoryRes
                 checkMeasureCommission = tmstruckMeasureCommissionService.addXSMeasureCommission(map); //添加计皮委托
                 break;
             case 5:
-            case 6:
-            case 7:
-            case 8:
-            case 9:
-            case 17:
-            case 18:
-                //通过订单ID查询物资Id
-                List<Integer> materialIds = utilsMapper.getMaterialIdByOrderId(DataChange.dataToBigDecimal(map.get("orderId")));
-                map.put("materialId", materialIds.get(0));
+                Integer num = tmstruckEnfactoryResultMapper.selectAllEnFactoryNum(resultTotalId);
+                if(num == 2){
+                    //如果辅料有两次进厂,则判断还剩几次没进厂数据,如果还剩两次则发委托
+                    Integer judgeNum = tmstruckEnfactoryResultMapper.selectEnFactoryNumber(resultTotalId);
+                    if (judgeNum == 1){
+                        checkMeasureCommission = 1;
+                        break;
+                    }
+                }
                 checkMeasureCommission = tmstruckMeasureCommissionService.addMaoMeasureCommission(map); //添加计毛委托 并发送计毛委托
                 break;
+            case 6:
+            case 7:
+//            case 8:
+//            case 9:
             case 10:
-                checkMeasureCommission = tmstruckMeasureCommissionService.addMaoMeasureCommission(map); //添加计量委托
-                break;
             case 11:
+//            case 17:
+            case 18:
+                checkMeasureCommission = tmstruckMeasureCommissionService.addMaoMeasureCommission(map); //添加计毛委托 并发送计毛委托
                 break;
+//            case 11:
+//                break;
             case 12:
             case 13:
             case 16:

+ 2 - 1
src/main/java/com/steerinfo/dil/service/impl/TmstruckLeaveFactoryResultServiceImpl.java

@@ -201,6 +201,7 @@ public class TmstruckLeaveFactoryResultServiceImpl implements ITmstruckLeaveFact
                 break;
             case 4:
                 break;
+            case 5:
             case 6:
             case 7:
                 //判断出厂路段顺序号是否为最后一个 采购订单关闭订单
@@ -212,7 +213,6 @@ public class TmstruckLeaveFactoryResultServiceImpl implements ITmstruckLeaveFact
                     omsFeign.addNewTransportOrder(orderId.intValue());
                 }
                 break;
-            case 5:
             case 8:
             case 9:
             case 17:
@@ -246,6 +246,7 @@ public class TmstruckLeaveFactoryResultServiceImpl implements ITmstruckLeaveFact
                 }
                 break;
             case 11:
+                i += utilsService.closeOrderNormally(map);
                 break;
             case 12:
             case 13:

+ 77 - 71
src/main/java/com/steerinfo/dil/service/impl/TmstruckMeasureCommissionServiceImpl.java

@@ -91,79 +91,25 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
         int i = 0;
         addMeasureCommission(map); // 添加计毛委托
         //发送数据给计量系统 必要数据 orderTypee:订单类型  resultTotalId: 总实绩Id   orderId
-        //获取当前订单是属于哪个厂区订单
-        Integer receiveId = 0 ;
-        if (DataChange.dataToBigDecimal(map.get("orderTypee")).intValue() == 11){//判断如果是纯内转,向达州钢铁发送委托
-            i += sendMeasureCommissionMes(map);
-        }
-        if(DataChange.dataToBigDecimal(map.get("orderTypee")).intValue() == 10){
-            receiveId = tmstruckMeasureCommissionMapper.getReceiveIdByRequirementOrderId(DataChange.dataToBigDecimal(map.get("orderId")));
-        }else{
-            //查询采购订单中的组织
-            receiveId = tmstruckMeasureCommissionMapper.getReceiveIdByOrderId(DataChange.dataToBigDecimal(map.get("orderId")));
-        }
-        if(receiveId == 1){
+        int orderType = DataChange.dataToBigDecimal(map.get("orderTypee")).intValue();
+        if(orderType == 10){
+            //获取当前订单是属于哪个厂区订单
+            Integer receiveId = tmstruckMeasureCommissionMapper.getReceiveIdByRequirementOrderId(DataChange.dataToBigDecimal(map.get("orderId")));
+            if(receiveId == 1){
+                i += sendMeasureCommissionMes(map);  //发送委托给达州钢铁
+            }else if(receiveId == 2) {
+                i += sendDXMeasureCommissionMes(map); //发送委托给达兴能源
+            }
+        }else if(orderType == 6 || orderType == 5 || orderType == 11){
             //发送委托给达州钢铁
             i += sendMeasureCommissionMes(map);
-        }
-        if(receiveId == 2) {
+        }else if(orderType == 18 || orderType == 7) {
             //发送委托给达兴能源
             i += sendDXMeasureCommissionMes(map);
         }
 
         return i;
     }
-    //发送计量委托
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public int sendMeasureCommssion(Map<String, Object> map)  throws Exception {
-        int i=0;
-        //获取订单类型
-        BigDecimal orderId = DataChange.dataToBigDecimal(map.get("orderId"));
-        BigDecimal orderType = utilsMapper.getOrderTypeByOrderId(orderId);
-        //根据运输订单id查找运输订单号
-        switch (orderType.intValue()){
-            case 1: //查询未装车实绩
-                   List<Map<String, Object>> mapList = rulesService.judgeLastMaterial(DataChange.dataToBigDecimal(map.get("orderId")));
-                   map.put("materialId", mapList.get(0).get("materialId"));
-                   i+=addXSMeasureCommission(map);
-            case 2:
-            case 3: //通过物资ID查询订单ID(针对单拼)
-                    List<Integer> materialIdList = utilsMapper.getMaterialIdByOrderId(orderId);
-                    map.put("materialId", materialIdList.get(0));
-                    i+=addXSMeasureCommission(map);
-                    break;
-            case 12:
-            case 13:
-            case 15:
-            case 20:
-            case 16: //发送计量委托(查询物资顺序第一个装卸货的物资)
-                     //拿到需要计量的物资ID
-                    Integer materialId = utilsMapper.getLxFirstMaterialId(DataChange.dataToBigDecimal(map.get("orderId")));
-                    map.put("materialId", materialId);
-                    i+=addLXMeasureCommission(map);
-                    break;
-            case 5:
-            case 6:
-            case 7:
-            case 8:
-            case 9:
-            case 17:
-            case 18://通过订单ID查询物资Id
-                  List<Integer> materialIds = utilsMapper.getMaterialIdByOrderId(DataChange.dataToBigDecimal(map.get("orderId")));
-                  map.put("materialId", materialIds.get(0));
-                  i+=addMaoMeasureCommission(map);
-                  break;
-            case 10:
-            case 11:
-                  i+=addMaoMeasureCommission(map);
-
-        }
-        if (i==0){
-            throw new  Exception("委托发送失败");
-        }
-        return i;
-    }
 
 
     /**
@@ -274,7 +220,7 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
 
 
     /**
-     * 查询计量委托并向计量系统发送数据  调用他们接口
+     * 查询计量委托并向计量系统发送数据  调用他们接口 (老厂区)
      * 1:销售订单;2:焦炭发运计划;3:水渣发运计划;4:内转到异地库;5:采购辅料订单;6:采购老区燃料订单;
      * 7:采购新区燃料订单;8:采购进口矿(万州-厂内);9:采购内转(达州-厂内);10:采购内转(老区-厂内); 11:厂内内转
      * @param map orderTypee 订单类型  type 计皮0还是计毛1类型  orderId  订单ID
@@ -282,8 +228,8 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
     public int sendMeasureCommissionMes(Map<String, Object> map){
         Map<String, Object> measureCommission = null;
         //查询计量委托
-        BigDecimal orderType = DataChange.dataToBigDecimal(map.get("orderTypee"));
-        switch (orderType.intValue()){
+        Integer orderType = DataChange.dataToBigDecimal(map.get("orderTypee")).intValue();
+        switch (orderType){
             case 1:
                 break;
             case 2:
@@ -293,7 +239,7 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
             case 10:
                 break;
             case 11://纯内转发送计量委托
-                 measureCommission=tmstruckMeasureCommissionMapper.purchaseNzMeasure(map);
+                 measureCommission = tmstruckMeasureCommissionMapper.purchaseNzMeasure(map);
                  measureCommission.put("isRelationEAS", false);
                  measureCommission.put("flowTo", "进厂");
                  measureCommission.put("isDel", false);
@@ -310,9 +256,13 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
             case 6:
             case 7:
             case 8:
-            case 9:
+//            case 9:
                 measureCommission =  tmstruckMeasureCommissionMapper.purchaseMeasure(map);
-                measureCommission.put("isRelationEAS", false);
+                if(orderType == 6){
+                    measureCommission.put("isRelationEAS", false);
+                }else {
+                    measureCommission.put("isRelationEAS", true);
+                }
                 measureCommission.put("flowTo", "进厂");
                 measureCommission.put("isDel", false);
                 measureCommission.put("isInsert", true);
@@ -470,6 +420,8 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
             if(success){
                 return 1;
             }
+        }else{
+            System.out.println("委托发送失败:" + jsonData);
         }
         return 0;
     }
@@ -501,4 +453,58 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
         }
         return 0;
     }
+
+    //发送计量委托
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public int sendMeasureCommssion(Map<String, Object> map)  throws Exception {
+        int i=0;
+        //获取订单类型
+        BigDecimal orderId = DataChange.dataToBigDecimal(map.get("orderId"));
+        BigDecimal orderType = utilsMapper.getOrderTypeByOrderId(orderId);
+        map.put("orderTypee", orderType);
+        //根据运输订单id查找运输订单号
+        switch (orderType.intValue()){
+            case 1: //查询未装车实绩
+                List<Map<String, Object>> mapList = rulesService.judgeLastMaterial(DataChange.dataToBigDecimal(map.get("orderId")));
+                map.put("materialId", mapList.get(0).get("materialId"));
+                i+=addXSMeasureCommission(map);
+            case 2:
+            case 3: //通过物资ID查询订单ID(针对单拼)
+                List<Integer> materialIdList = utilsMapper.getMaterialIdByOrderId(orderId);
+                map.put("materialId", materialIdList.get(0));
+                i+=addXSMeasureCommission(map);
+                break;
+            case 12:
+            case 13:
+            case 15:
+            case 20:
+            case 16: //发送计量委托(查询物资顺序第一个装卸货的物资)
+                //拿到需要计量的物资ID
+                Integer materialId = utilsMapper.getLxFirstMaterialId(DataChange.dataToBigDecimal(map.get("orderId")));
+                map.put("materialId", materialId);
+                i+=addLXMeasureCommission(map);
+                break;
+            case 5:
+            case 6:
+            case 7:
+            case 8:
+            case 9:
+            case 17:
+            case 18://通过订单ID查询物资Id
+                List<Integer> materialIds = utilsMapper.getMaterialIdByOrderId(DataChange.dataToBigDecimal(map.get("orderId")));
+                map.put("materialId", materialIds.get(0));
+                i+=addMaoMeasureCommission(map);
+                break;
+            case 10:
+            case 11:
+                i+=addMaoMeasureCommission(map);
+
+        }
+        if (i==0){
+            throw new Exception("委托发送失败");
+        }
+        return i;
+    }
+
 }

+ 0 - 5
src/main/java/com/steerinfo/dil/service/impl/TmstruckUnloadResultServiceImpl.java

@@ -145,11 +145,6 @@ public class TmstruckUnloadResultServiceImpl implements ITmstruckUnloadResultSer
         i += updateUnloadResultBy(map); //更新卸货实绩
         //路段顺序号 + 1
         i += utilsService.updateOrderLineSequence(map);
-        BigDecimal resultTotalId = DataChange.dataToBigDecimal(map.get("resultTotalId"));
-        BigDecimal orderId = DataChange.dataToBigDecimal(map.get("orderId"));
-        Map<String, Object> mesMap = new HashMap<>();
-        mesMap.put("orderId", orderId);
-        mesMap.put("orderType", orderType);
         switch (orderType.intValue()){
             case 1:
                 break;

+ 2 - 2
src/main/resources/application-dev.yml

@@ -33,13 +33,13 @@ openfeign:
   OmsFeign:
     url: ${OMSFEIGN_URL:172.16.33.162:8016}
   JoinFeign:
-    url: ${JOINFEIGN_URL:localhost:8006}
+    url: ${JOINFEIGN_URL:172.16.33.162:8006}
   QmsFeign:
     url: ${QMSFEIGN_URL:172.16.33.162:8017}
   ImFeign:
     url: ${IMFEIGN_URL:172.16.33.166:8055}
   AmsFeign:
-    url: ${AMSFEIGN_URL:localhost:8015}
+    url: ${AMSFEIGN_URL:172.16.33.162:8015}
 
 server:
   port: 8008

+ 13 - 0
src/main/resources/com/steerinfo/dil/mapper/TmstruckEnfactoryResultMapper.xml

@@ -1404,4 +1404,17 @@
         </where>
     </select>
 
+    <select id="selectAllEnFactoryNum" parameterType="java.math.BigDecimal" resultType="int">
+        select count(TER.RESULT_TOTAL_ID)
+        from TMSTRUCK_ENFACTORY_RESULT TER
+        where TER.RESULT_TOTAL_ID = #{resultTotalId}
+    </select>
+
+    <select id="selectEnFactoryNumber" parameterType="java.math.BigDecimal" resultType="int">
+        select count(TER.RESULT_TOTAL_ID)
+        from TMSTRUCK_ENFACTORY_RESULT TER
+        where TER.RESULT_TOTAL_ID = #{resultTotalId}
+        and TER.RESULT_ENTRY_GATE_TIME is null
+    </select>
+
 </mapper>

+ 1 - 1
src/main/resources/com/steerinfo/dil/mapper/TmstruckMeasureCommissionMapper.xml

@@ -1142,7 +1142,7 @@
         WHERE
             ROWNUM = 1
     </select>
-    <select id="purchaseNzMeasure" resultType="java.util.Map" parameterType="java.math.BigDecimal">
+    <select id="purchaseNzMeasure" resultType="java.util.Map" parameterType="java.util.Map">
         SELECT
             *
         FROM

+ 0 - 27
src/main/test/tts.java

@@ -1,27 +0,0 @@
-import org.junit.Test;
-
-import java.math.BigDecimal;
-
-public class tts {
-    @Test
-    public void test(){
-        BigDecimal bigDecimal = new BigDecimal("10.001");
-        BigDecimal bigDecimal1 = new BigDecimal("7.288");
-        BigDecimal divide = bigDecimal.subtract(bigDecimal1).divide(new BigDecimal(1), 2, 4);
-        System.out.println(divide);
-    }
-
-    @Test
-    public void test2(){
-        BigDecimal b1 = new BigDecimal("2");
-        BigDecimal b2 = new BigDecimal("1");
-        int i = b1.compareTo(b2);
-        System.out.println(i);
-    }
-
-
-    @Test
-    public void test3(){
-
-    }
-}