zengyf 2 år sedan
förälder
incheckning
bbcb36d1f2

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

@@ -137,4 +137,6 @@ public interface OmstruckOrderSeparateMapper {
 
     Map<String, Object> getDueTime(Object orderId);
 
+    Integer getSaleOrderDelete(Object orderId);
+
 }

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

@@ -2205,7 +2205,8 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
             }
             if (orderType == 1) {
                 Integer judgeDate = omstruckOrderSeparateMapper.getDeliveryDatePass(orderMesMap.get("orderId"));
-                if(judgeDate == null){ // 数据为空则是已过截止日期 关闭订单
+                Integer saleOrderDelete = omstruckOrderSeparateMapper.getSaleOrderDelete(orderMesMap.get("orderId"));
+                if(judgeDate == null || saleOrderDelete != 0){ // 数据为空则是已过截止日期 关闭订单
                     omstruckOrderMapper.closeTruckOrder(DataChange.dataToBigDecimal(orderMesMap.get("orderId")));
                     continue;
                 }

+ 10 - 0
src/main/resources/com/steerinfo/dil/mapper/OmstruckOrderSeparateMapper.xml

@@ -932,4 +932,14 @@
                                             ON AIR.REQUIREMENT_ID = ARP.REQUIREMENT_ID
         where  OO.ORDER_ID = #{orderId}
     </select>
+    <select id="getSaleOrderDelete" resultType="java.lang.Integer">
+        SELECT
+            ASO.DELETED
+        FROM
+            OMSTRUCK_ORDER OO
+                LEFT JOIN AMS_SALE_ORDER_MATERIAL ASOM ON ASOM.SALE_ORDER_MATERIAL_ID = OO.ORDER_PLAN_ID
+                LEFT JOIN AMS_SALE_ORDER ASO ON ASO.SALE_ORDER_ID = ASOM.SALE_ORDER_ID
+        WHERE
+            OO.ORDER_ID = #{orderId}
+    </select>
 </mapper>