Explorar el Código

Merge branch 'master' into dev

txf hace 3 años
padre
commit
78714c33cd

+ 4 - 0
src/main/java/com/steerinfo/dil/feign/OmsFeign.java

@@ -46,6 +46,10 @@ public interface OmsFeign {
     @PostMapping("api/v1/oms/utilscontroller/addPurInwardOrder")
     Map<String,Object> addPurInwardOrder(@RequestParam BigDecimal orderId);
 
+
+    @PostMapping("api/v1/oms/omstruckorderseparates/addNewTransportOrder")
+    Map<String,Object> addNewTransportOrder(@RequestParam BigDecimal orderId);
+
     @PostMapping("api/v1/oms/omstruckorderseparates/closeInwardOrder")
     Map<String,Object> closeInwardOrder(@RequestParam("orderId") Integer orderId, @RequestParam("sqe") Integer sqe);
 

+ 3 - 0
src/main/java/com/steerinfo/dil/mapper/TmstruckTimeTaskResultMapper.java

@@ -34,6 +34,9 @@ public interface TmstruckTimeTaskResultMapper extends IBaseMapper<TmstruckTimeTa
     //查询计时作业
     List<Map<String, Object>> getAllTimeTaskResult(Map<String, Object> map);
 
+    //根据运输订单号查找需要用车时长
+    Map<String,Object>  selectInwardDueTimeByOrderId(BigDecimal orderId);
+
     //根据运输订单id查找实绩中是否含有已经计时结束的实绩
     int CountTimeTaskByOrderId(BigDecimal orderId);
 

+ 3 - 0
src/main/java/com/steerinfo/dil/service/ITmstruckTimeTaskResultService.java

@@ -40,6 +40,9 @@ public interface ITmstruckTimeTaskResultService {
     //用车单位确认暂停结束
     int unitSureEndTimeout(Map<String, Object> map);
 
+    //确认暂停结束后进行推单
+    int pushOrderForPause(Map<String,Object> map);
+
     //司机申请结束
     int applyEndTime(Map<String, Object> map);
 

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

@@ -211,7 +211,7 @@ public class TmstruckEnfactoryResultServiceImpl implements ITmstruckEnfactoryRes
                 break;
             case 6:
             case 7:
-//            case 8:
+            case 8:
 //            case 9:
             case 10:
             case 17:

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

@@ -225,6 +225,7 @@ public class TmstruckLeaveFactoryResultServiceImpl implements ITmstruckLeaveFact
             case 5:
             case 6:
             case 7:
+            case 8:
                 //判断出厂路段顺序号是否为最后一个 采购订单关闭订单
                 i += utilsService.closeOrderNormally(map);
                 //查询是否为一车多趟采购订单类型
@@ -234,7 +235,6 @@ public class TmstruckLeaveFactoryResultServiceImpl implements ITmstruckLeaveFact
                     omsFeign.addNewTransportOrder(orderId.intValue());
                 }
                 break;
-            case 8:
             case 9:
             case 17:
             case 18:

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

@@ -338,12 +338,9 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
         if(measureCommission != null)
             map.put("materialId", measureCommission.get("materialId"));
         addMeasureCommission(map); // 添加计量委托
-//        System.out.println(measureCommission);
-//        return 1;
         /*访问接口发送数据*/
         return sendMesToMeasure(measureCommission);
 
-
     }
 
 
@@ -596,7 +593,7 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
     @Override
     synchronized public Map<String, Object> sendLiuPiMeasureCommission(String capacityNumber) throws InterruptedException {
         Map<String, Object> map = new HashMap<>();
-        String num = "LP" + System.currentTimeMillis();
+        String num = "DZGTZDLP" + System.currentTimeMillis();
         map.put("carNumber", capacityNumber);
         map.put("purchOrder", num);
         //通过车牌号查询上一次委托发送数据

+ 36 - 0
src/main/java/com/steerinfo/dil/service/impl/TmstruckTimeTaskResultServiceImpl.java

@@ -1,5 +1,6 @@
 package com.steerinfo.dil.service.impl;
 
+import com.steerinfo.dil.feign.OmsFeign;
 import com.steerinfo.dil.mapper.TmstruckTimeTaskResultMapper;
 import com.steerinfo.dil.mapper.UtilsMapper;
 import com.steerinfo.dil.model.TmstruckTimeTaskResult;
@@ -10,6 +11,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import javax.xml.crypto.Data;
 import java.math.BigDecimal;
 import java.util.Date;
 import java.util.HashMap;
@@ -38,6 +40,9 @@ public class TmstruckTimeTaskResultServiceImpl implements ITmstruckTimeTaskResul
     private UtilsMapper utilsMapper;
     @Autowired
     private UtilsServiceImpl utilsService;
+    @Autowired
+    private OmsFeign omsFeign;
+
 
 
     /**
@@ -146,6 +151,9 @@ public class TmstruckTimeTaskResultServiceImpl implements ITmstruckTimeTaskResul
         //如果订单类型为5
         String personnelSsoId =(String) map.get("personnelSsoId");
         String orderNumber =(String) map.get("orderNumber");
+        //根据运输订单号查找运输订单id
+        BigDecimal orderId = utilsMapper.getOrderIdByOrderNumber(orderNumber);
+        map.put("orderId",orderId);
         BigDecimal inwardType =DataChange.dataToBigDecimal(map.get("inwardType"));
         if (inwardType.intValue()==5){
             generateTimeTaskResult(map);
@@ -164,11 +172,39 @@ public class TmstruckTimeTaskResultServiceImpl implements ITmstruckTimeTaskResul
             tmstruckTimeTaskResult.setTimeTaskResultId(tmstruckTimeTaskResult.getTimeTaskResultId());
             tmstruckTimeTaskResult.setResultValue(new BigDecimal((dueTime/(1000*60))));
             tmstruckTimeTaskResult.setUpdateTime(new Date());
+            tmstruckTimeTaskResult.setUpdateUsername(personnelSsoId);
             i+=tmstruckTimeTaskResultMapper.updateByPrimaryKeySelective(tmstruckTimeTaskResult);
+            //判断计时结束后推送新的订单
+            pushOrderForPause(map);
         }
 
         return i;
     }
+   //判断计时订单结束后推单
+    @Override
+    public int pushOrderForPause(Map<String, Object> map) {
+         int i=0;
+         //关闭内转订单
+         map.put("orderStatus", 2);
+         i = utilsMapper.updateOrderStatusByOrderIdOrNum(map);
+         BigDecimal orderId1 = DataChange.dataToBigDecimal(map.get("orderId"));
+         map= tmstruckTimeTaskResultMapper.selectInwardDueTimeByOrderId(orderId1);
+        //根据运输订单id查找需求日期是否超过一个月
+        if(map != null) {
+            Date dueDate = (Date) map.get("dueTime");
+            //当前时间小于截至日期
+            long DueTime = dueDate.getTime() + 86400000;
+            //获取当前时间
+            Date date = new Date();
+            long nowTime = date.getTime();
+            if (nowTime < DueTime) {
+                //推送
+                 omsFeign.addNewTransportOrder(orderId1);
+            }
+
+        }
+        return i;
+    }
 
     /**
      * 司机申请结束

+ 1 - 1
src/main/resources/bootstrap.yml

@@ -1,7 +1,7 @@
 api.version: api/v1/truckTms
 spring:
   profiles:
-    include: ${SPRING_PROFILES:dev}
+    include: ${SPRING_PROFILES:prod}
   jackson:
     date-format: yyyy-MM-dd HH:mm:ss
     time-zone: GMT+8

+ 2 - 0
src/main/resources/com/steerinfo/dil/mapper/StatisticalReportMapper.xml

@@ -1206,6 +1206,7 @@
         </if>
         GROUP BY MATERIAL_NAME, WAREHOUSE_NAME
         )
+        <include refid="orderBy"></include>
         <where>
         <if test="materialName != null">
             and
@@ -1268,6 +1269,7 @@
         </if>
 		GROUP BY MATERIAL_NAME, WAREHOUSE_NAME
 		)
+        <include refid="orderBy"></include>
         <where>
             <if test="materialName != null">
                 and

+ 12 - 0
src/main/resources/com/steerinfo/dil/mapper/TmstruckTimeTaskResultMapper.xml

@@ -807,4 +807,16 @@
     WHERE OO.ORDER_ID=#{orderId} and TTTR.RESULT_TIME_TYPE=3 and TTTR.RESULT_VALUE IS not NULL
   </select>
 
+    <select id="selectInwardDueTimeByOrderId" resultType="java.util.Map" parameterType="java.math.BigDecimal">
+      select AIR.DUE_DATE  "dueTime"
+      from OMSTRUCK_ORDER OO
+      left join AMSTRUCK_INWARD_PLAN AIP
+                       on AIP.PLAN_ID=OO.ORDER_PLAN_ID
+             left join AMSTRUCK_REQUIREMENT_PLAN ARP
+                       on ARP.PLAN_ID=AIP.PLAN_ID
+             left join AMSTRUCK_INWARD_REQUIREMENT AIR
+                       on AIR.REQUIREMENT_ID=ARP.REQUIREMENT_ID
+      where OO.ORDER_ID=#{orderId}
+    </select>
+
 </mapper>