luobang 2 rokov pred
rodič
commit
9cd2821bfd

+ 2 - 0
src/main/java/com/steerinfo/dil/mapper/OmstruckOrderMapper.java

@@ -370,4 +370,6 @@ public interface OmstruckOrderMapper extends IBaseMapper<OmstruckOrder, BigDecim
     List<Map<String,Object>> getMaterialId(BigDecimal orderId);
 
 
+    int getGoBeyondCount(Object orderId);
+
 }

+ 11 - 2
src/main/java/com/steerinfo/dil/service/impl/OmstruckOrderServiceImpl.java

@@ -2212,7 +2212,15 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
                     continue;
                 }
             }
-            if(orderType == 10|| orderType == 20 || orderType == 15 || orderType == 16 || orderType == 23 || orderType == 24){
+            if(orderType == 10|| orderType == 20 || orderType == 15 || orderType == 16){
+                Integer planEnable = omstruckOrderSeparateMapper.getOrderPlanEnable(orderMesMap.get("orderId"));
+                int GoBeyondCount = omstruckOrderMapper.getGoBeyondCount(orderMesMap.get("orderId"));
+                if(planEnable == 0 || GoBeyondCount == 0){ // 数据为0则失效
+                    omstruckOrderMapper.closeTruckOrder(DataChange.dataToBigDecimal(orderMesMap.get("orderId")));
+                    continue;
+                }
+            }
+            if(orderType == 23 || orderType == 24){
                 Integer planEnable = omstruckOrderSeparateMapper.getOrderPlanEnable(orderMesMap.get("orderId"));
                 if(planEnable == 0){ // 数据为0则失效
                     omstruckOrderMapper.closeTruckOrder(DataChange.dataToBigDecimal(orderMesMap.get("orderId")));
@@ -2231,7 +2239,8 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
                 //根据运输订单id,查询需求里面是否有截止时间
                 Map<String,Object> dueTime = omstruckOrderSeparateMapper.getDueTime(orderMesMap.get("orderId"));
                 int result = omstruckOrderSeparateMapper.getInward(orderMesMap.get("orderId"));
-                if(result == 0 && dueTime != null){
+                int GoBeyondCount = omstruckOrderMapper.getGoBeyondCount(orderMesMap.get("orderId"));
+                if((result == 0 && dueTime != null) || GoBeyondCount == 0 ){
                     omstruckOrderMapper.closeTruckOrder(DataChange.dataToBigDecimal(orderMesMap.get("orderId")));
                     continue;
                 }

+ 7 - 3
src/main/resources/com/steerinfo/dil/mapper/OmstruckOrderMapper.xml

@@ -3942,9 +3942,9 @@
         OO.ORDER_NUMBER "orderNumber",
         CASE
         WHEN TEMP."orderId" IS NOT NULL
-        THEN RC.CAPACITY_NUMBER || '('|| decode(ASO.SALE_ORDER_STATUS,4,'订单已审核','订单未审核') || ':未轧' ||')'
+        THEN RC.CAPACITY_NUMBER || '('|| decode(ASO.SALE_ORDER_STATUS,4,'订单已审核','订单未审核') || ':未轧' ||')'
         WHEN TEMP."orderId" IS NULL
-        THEN RC.CAPACITY_NUMBER || '('|| decode(ASO.SALE_ORDER_STATUS,4,'订单已审核','订单未审核') || ':已轧' || ')'
+        THEN RC.CAPACITY_NUMBER || '('|| decode(ASO.SALE_ORDER_STATUS,4,'订单已审核','订单未审核') || ':已轧' || ')'
         END
         "capacityNumber",
         RC.CAPACITY_TEL "capacityTel",
@@ -3975,7 +3975,6 @@
         left join OMSTRUCK_ORDER_MATERIAL OOM ON OO.ORDER_ID=OOM.ORDER_ID
         left join RMS_MATERIAL RM ON OOM.MATERIAL_ID = RM.MATERIAL_ID
         where OO.ORDER_STATUS between 4 and 5
-        where OO.ORDER_STATUS in (4,5)
         and (OOM.MATERIAL_PRIORITY !=71 OR OOM.MATERIAL_PRIORITY is null)
         and
         RM.MATERIAL_ID||'' in (select SPECTIONS_MODEL from QMS_MODEL_UNROOLED)
@@ -4357,4 +4356,9 @@
         WHERE ORDER_ID = #{orderId}
         ORDER BY RM.MATERIAL_NAME
     </select>
+    <select id="getGoBeyondCount" resultType="java.lang.Integer" parameterType="java.math.BigDecimal">
+        SELECT count(oo.order_id) FROM OMSTRUCK_ORDER OO
+        WHERE sysdate - oo.INSERT_TIME &lt;= 5
+        and oo.ORDER_ID = #{orderId}
+    </select>
 </mapper>