luobang 2 years ago
parent
commit
846f0dcd46

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

@@ -136,4 +136,8 @@ public interface TmstruckLeaveFactoryResultMapper extends IBaseMapper<TmstruckLe
 
     Integer getCanWorkStatus(BigDecimal orderId);
 
+    String getIsSelfMention(BigDecimal orderId);
+
+    Map<String, Object> getUnloadResult(BigDecimal orderId);
+
 }

+ 18 - 0
src/main/java/com/steerinfo/dil/service/impl/TmstruckLeaveFactoryResultServiceImpl.java

@@ -235,6 +235,13 @@ public class TmstruckLeaveFactoryResultServiceImpl implements ITmstruckLeaveFact
                 }
             }
         }
+        if(orderType == 23 || orderType == 24) {
+            //查询卸货
+            Map<String,Object> unloadMap = tmstruckLeaveFactoryResultMapper.getUnloadResult(DataChange.dataToBigDecimal(mesMap.get("orderId")));
+            if (unloadMap != null && unloadMap.get("resultEndTime") == null) {
+                throw new Exception("该车未扫卸货,请提醒司机去补扫卸货");
+            }
+        }
         map.putAll(mesMap);
         map.putAll(selectMap);
         map.remove("Sqe");
@@ -249,6 +256,17 @@ public class TmstruckLeaveFactoryResultServiceImpl implements ITmstruckLeaveFact
                 if(driverConfirmationSteel == null){
                     throw new Exception("请提醒司机确认订单!");
                 }
+                //判断该订单是不是自提
+                String isSelfMention = tmstruckLeaveFactoryResultMapper.getIsSelfMention(orderId);
+                try {
+                    if(isSelfMention != null && isSelfMention.equals("是")) {
+                        //如果是自提,则关闭运单
+                        i += utilsService.closeOrderSteel(map);
+                        break;
+                    }
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
                 try {
                     //发送短信
                     Map<String,Object> messageMap = tmstruckLeaveFactoryResultMapper.getMessageMap(orderId);

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

@@ -67,7 +67,7 @@ public class TmstruckSmsRusultServiceImpl  implements ITmstruckSmsRusultService
         String tmpTmp = MD5Util.formatTimeTmp();
         String sign = MD5Util.sign("EUCP-EMY-SMS1-10QNI","EE20B0B28B75E567");
         String driverTel = tmstruckSmsRusultMapper.getDriverTel(orderId);
-        String mobile1 = mobile;
+        String mobile1 = mobile.trim();
         String content = "【达州钢铁】您好!您在达钢购买的钢材已发车。司机电话:" + driverTel + "。欲知详情,请前往达州钢铁智慧物流平台查看车辆实时轨迹。退订";
         String sendUrl = url+"timestamp=" + tmpTmp + "&sign=" + sign + "&mobiles=" + mobile1 + "&content=" + content;
         System.out.println(mobile1);

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

@@ -205,4 +205,9 @@ public class UtilsServiceImpl implements IUtilsService {
             return 0;
         }
     }
+
+    public int closeOrderSteel(Map<String, Object> map) {
+        map.put("orderStatus", 2);
+        return utilsMapper.updateOrderStatusByOrderIdOrNum(map);
+    }
 }

+ 14 - 0
src/main/resources/com/steerinfo/dil/mapper/TmstruckLeaveFactoryResultMapper.xml

@@ -1376,4 +1376,18 @@
         SELECT OO.CAN_WORK FROM OMSTRUCK_ORDER OO
         WHERE OO.ORDER_ID = #{orderId}
     </select>
+    <select id="getIsSelfMention" resultType="java.lang.String" parameterType="java.math.BigDecimal">
+        SELECT ASO.SALE_ORDER_ISSELF_MENTION 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>
+    <select id="getUnloadResult" resultType="java.util.Map" parameterType="java.math.BigDecimal">
+        SELECT tur.RESULT_END_TIME "resultEndTime" FROM TMSTRUCK_TOTAL_RESULT TTR
+        LEFT JOIN TMSTRUCK_UNLOAD_RESULT TUR
+        ON TUR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+        WHERE TTR.ORDER_ID = #{orderId}
+    </select>
 </mapper>