ソースを参照

Merge branch 'dev' of https://git.steerinfo.com/DAL-DAZHOU2/DAI_DAZHOU-OMS into dev

luobang 3 年 前
コミット
3fab7417c1

+ 0 - 24
src/main/java/com/steerinfo/dil/controller/OmstruckOrderSeparateController.java

@@ -275,25 +275,6 @@ public class OmstruckOrderSeparateController extends BaseRESTfulController {
         return success(omstruckOrderSeparateService.getOrderMaterial(orderId));
     }
 
-    @ApiOperation(value = "查看所有实绩点")
-    @PostMapping("/getAllResultLineMes")
-    public RESTfulResult getAllResultLineMes(Integer orderId, String orderNumber){
-        Map<String, Object> map = new HashMap<>();
-        if(orderId != null){
-            map.put("orderId", orderId);
-        }
-        if(orderNumber != null){
-            map.put("orderNumber", orderNumber);
-        }
-        List<Map<String, Object>> allOrderResult = null;
-        try {
-            allOrderResult = omstruckOrderSeparateService.getAllOrderResult(map);
-        } catch (Exception e) {
-            System.out.println(e.getMessage());
-            return failed("查询失败");
-        }
-        return success(allOrderResult);
-    }
 
     @ApiOperation(value = "正常关闭运输订单")
     @PostMapping("/closeInwardOrder")
@@ -302,9 +283,4 @@ public class OmstruckOrderSeparateController extends BaseRESTfulController {
     }
 
 
-    @ApiOperation(value = "计时查询进程")
-    @PostMapping("/getTimeOrderResult")
-    public RESTfulResult getTimeOrderResult(@RequestBody(required = false) Map<String, Object> map){
-        return success(omstruckOrderSeparateService.getTimeOrderResult(map));
-    }
 }

+ 3 - 1
src/main/java/com/steerinfo/dil/mapper/OmstruckOrderMapper.java

@@ -198,7 +198,7 @@ public interface OmstruckOrderMapper extends IBaseMapper<OmstruckOrder, BigDecim
     Map<String, Object> getInwardOrderMap(BigDecimal orderId);
 
     //通过订单Id查询该订单下所有的物资
-    List<Map<String,Object>> getMaterialMes(BigDecimal orderId);
+    List<Map<String,Object>> getMaterialMes(@Param("orderId") BigDecimal orderId);
 
     //根据运输订单查询车牌号
     String selectCapacityNumber(BigDecimal orderId);
@@ -326,4 +326,6 @@ public interface OmstruckOrderMapper extends IBaseMapper<OmstruckOrder, BigDecim
 
      //删除计时实绩
     int deleteTimeTaskByTotalId(BigDecimal resultTotalId);
+
+    int closeTruckOrder(BigDecimal orderId);
 }

+ 8 - 29
src/main/java/com/steerinfo/dil/mapper/OmstruckOrderSeparateMapper.java

@@ -48,23 +48,11 @@ public interface OmstruckOrderSeparateMapper {
 
     Integer getTotalIdByOrderIdOrOrderNum(Map<String, Object> map);
 
-    //通过总实绩ID和路段顺序号查询进厂实绩数据
-    Map<String, Object> getEnFactoryMes(Map<String, Object> map);
+    //查询展示两个数据的实绩数据
+    List<Map<String, Object>> getTwoDateMes(@Param("resultTotalId") BigDecimal resultTotalId);
 
-    //通过总实绩ID和路段顺序号查询计毛实绩数据
-    Map<String, Object> getMaoWeightMes(Map<String, Object> map);
-
-    //通过总实绩ID和路段顺序号查询计皮实绩数据
-    Map<String, Object> getPiWeightMes(Map<String, Object> map);
-
-    //通过总实绩ID和路段顺序号查询卸货实绩数据
-    Map<String, Object> getUnloadMes(Map<String, Object> map);
-
-    //通过总实绩ID和路段顺序号查询装货实绩数据
-    Map<String, Object> getLoadMes(Map<String, Object> map);
-
-    //通过总实绩ID和路段顺序号查询出厂实绩数据
-    Map<String, Object> getOutFactoryMes(Map<String, Object> map);
+    //通过总实绩Id查询四个数据的实绩数据
+    List<Map<String, Object>> getFourDateMes(@Param("resultTotalId") BigDecimal resultTotalId);
 
     //通过总实绩ID和路段顺序号查询退货实绩数据
     Map<String, Object> getReturnMes(Map<String, Object> map);
@@ -111,22 +99,13 @@ public interface OmstruckOrderSeparateMapper {
     Integer getOrderPlanEnable(Object orderId);
 
     //通过总实绩ID查询进厂实绩数据
-    List<Map<String, Object>> getAllEnFactoryResultMesByTotalId(Integer resultTotalId);
-
-    //通过总实绩ID查询出厂实绩数据
-    List<Map<String, Object>> getAllOutFactoryResultMesByTotalId(Integer resultTotalId);
+    List<Map<String, Object>> getAllEnOutFactoryResultMesByTotalId(@Param("resultTotalId") BigDecimal resultTotalId);
 
       //通过总实绩ID查询装车实绩数据
-    List<Map<String, Object>> getAllLoadResultMesByTotalId(Integer resultTotalId);
-
-      //通过总实绩ID查询卸车实绩数据
-    List<Map<String, Object>> getAllUnloadResultMesByTotalId(Integer resultTotalId);
-
-     //通过总实绩ID查询计毛实绩数据
-    List<Map<String, Object>> getAllMaoWeightResultMesByTotalId(Integer resultTotalId);
+    List<Map<String, Object>> getAllLoadUnloadResultMesByTotalId(@Param("resultTotalId") BigDecimal resultTotalId);
 
      //通过总实绩ID查询计毛实绩数据
-    List<Map<String, Object>> getAllPiWeightResultMesByTotalId(Integer resultTotalId);
+    List<Map<String, Object>> getAllMaoPiWeightResultMesByTotalId(@Param("resultTotalId") BigDecimal resultTotalId);
 
     int closeInwardOrder(@Param("orderId") Integer orderId, @Param("sqe") Integer sqe);
 
@@ -140,7 +119,7 @@ public interface OmstruckOrderSeparateMapper {
     int updateSporadicStatus(BigDecimal orderPlanId,int sporadicStatus);
 
     //查询计时进程
-    List<Map<String, Object>> getTimeOrderResult(Map<String, Object> map);
+    List<Map<String, Object>> getTimeOrderResult(BigDecimal resultTotalId);
 
     Integer getSporadicStatus(Object orderId);
 

+ 0 - 2
src/main/java/com/steerinfo/dil/service/IOmstruckOrderSeparateService.java

@@ -50,6 +50,4 @@ public interface IOmstruckOrderSeparateService {
     List<Map<String,Object>> getUnloadOrderWarehouseName(Map<String, Object> map);
 
     List<Map<String,Object>> getPauseTimeTaskDetail(Integer orderId);
-
-    List<Map<String, Object>> getTimeOrderResult(Map<String, Object> map);
 }

+ 78 - 103
src/main/java/com/steerinfo/dil/service/impl/OmstruckOrderSeparateServiceImpl.java

@@ -235,78 +235,53 @@ public class OmstruckOrderSeparateServiceImpl implements IOmstruckOrderSeparateS
      * @param orderId
      * @return
      */
-    public List<Map<String,Object>> getOrderResult(BigDecimal orderId) {
-        List<Map<String,Object>> segmentList = omstruckOrderSeparateMapper.getSegmentList(orderId);
-        //通过订单ID查询总实绩ID
-        Integer resultTotalId = omstruckOrderSeparateMapper.getTotalIdByOrderId(orderId);
-        if(segmentList != null)
-            for (Map<String, Object> map : segmentList) {
-                //获取路段类型
-                String linkName = (String) map.get("linkName");
-                //获取路段顺序号
-                int segmentSqe = DataChange.dataToBigDecimal(map.get("segmentSqe")).intValue();
-                Map<String, Object> mesMap = new HashMap<>(); //查询条件Map
-                mesMap.put("segmentSqe", segmentSqe);
-                mesMap.put("resultTotalId", resultTotalId);
-                switch (linkName) {
-                    case "进厂":
-                        //通过总实绩ID和路段顺序号查询
-                        Map<String, Object> mes1 = omstruckOrderSeparateMapper.getEnFactoryMes(mesMap);
-                        if(mes1 != null)
-                            map.putAll(mes1);
-                        break;
-                    case "计毛":
-                        Map<String, Object> mes2 = omstruckOrderSeparateMapper.getMaoWeightMes(mesMap);
-                        if(mes2 != null)
-                            map.putAll(mes2);
-                        break;
-                    case "计皮":
-                        Map<String, Object> mes3 = omstruckOrderSeparateMapper.getPiWeightMes(mesMap);
-                        if(mes3 != null)
-                            map.putAll(mes3);
-                        break;
-                    case "卸货":
-                        Map<String, Object> mes4 = omstruckOrderSeparateMapper.getUnloadMes(mesMap);
-                        if(mes4 != null)
-                            map.putAll(mes4);
-                        break;
-                    case "装货":
-                        Map<String, Object> mes5 = omstruckOrderSeparateMapper.getLoadMes(mesMap);
-                        if(mes5 != null)
-                            map.putAll(mes5);
-                        break;
-                    case "出厂":
-                        Map<String, Object> mes6 = omstruckOrderSeparateMapper.getOutFactoryMes(mesMap);
-                        if(mes6 != null)
-                            map.putAll(mes6);
-                        break;
-                    case "退货":
-                        Map<String, Object> mes7 = omstruckOrderSeparateMapper.getReturnMes(mesMap);
-                        if(mes7 != null)
-                            map.putAll(mes7);
-                }
+    public List<Map<String, Object>> getOrderResult(BigDecimal orderId){
+        Map<String, Object> map = omstruckOrderSeparateMapper.getOrderMesByOrderId(orderId);
+        int orderType = DataChange.dataToBigDecimal(map.get("orderType")).intValue();
+        BigDecimal resultTotalId = DataChange.dataToBigDecimal(map.get("resultTotalId"));
+        if(orderType == 11){
+            return getAllOrderResult(resultTotalId);
+        }else if(orderType == 21){
+            return getTimeOrderResult(resultTotalId);
+        }else {
+            return getNormalOrderResult(resultTotalId);
+        }
+    }
+
+    /**
+     * 查看正常实绩流程
+     * @param resultTotalId
+     * @return
+     */
+    public List<Map<String,Object>> getNormalOrderResult(BigDecimal resultTotalId) {
+        List<Map<String,Object>> dataList = new ArrayList<>(20);
+        dataList.addAll(omstruckOrderSeparateMapper.getTwoDateMes(resultTotalId));
+        dataList.addAll(omstruckOrderSeparateMapper.getFourDateMes(resultTotalId));
+        //对列表中数据路段顺序号进行排序
+        dataList.sort(new Comparator<Map<String, Object>>() {
+            @Override
+            public int compare(Map<String, Object> o1, Map<String, Object> o2) {
+                BigDecimal b1 = DataChange.dataToBigDecimal(o1.get("segmenSqe"));
+                BigDecimal b2 = DataChange.dataToBigDecimal(o2.get("segmenSqe"));
+                return b1.compareTo(b2);
             }
-        return segmentList;
+        });
+        return dataList;
     }
 
     /**
      * 查询运输进程,通过实绩ID
      * @Author TXF
      * @Date 2022/2/18 16:46
-     * @param map
+     * @param resultTotalId
      * @return
      **/
-    public List<Map<String, Object>> getAllOrderResult(Map<String, Object> map){
-        //通过订单Id查询总实绩Id
-        Integer resultTotalId = omstruckOrderSeparateMapper.getTotalIdByOrderIdOrOrderNum(map);
+    public List<Map<String, Object>> getAllOrderResult(BigDecimal resultTotalId){
         //通过总实绩ID查询所有的实绩:包括进厂、出厂、计重、装卸货
         List<Map<String, Object>> allMesList = new ArrayList<>(20);
-        allMesList.addAll(omstruckOrderSeparateMapper.getAllEnFactoryResultMesByTotalId(resultTotalId));
-        allMesList.addAll(omstruckOrderSeparateMapper.getAllOutFactoryResultMesByTotalId(resultTotalId));
-        allMesList.addAll(omstruckOrderSeparateMapper.getAllLoadResultMesByTotalId(resultTotalId));
-        allMesList.addAll(omstruckOrderSeparateMapper.getAllUnloadResultMesByTotalId(resultTotalId));
-        allMesList.addAll(omstruckOrderSeparateMapper.getAllMaoWeightResultMesByTotalId(resultTotalId));
-        allMesList.addAll(omstruckOrderSeparateMapper.getAllPiWeightResultMesByTotalId(resultTotalId));
+        allMesList.addAll(omstruckOrderSeparateMapper.getAllEnOutFactoryResultMesByTotalId(resultTotalId));
+        allMesList.addAll(omstruckOrderSeparateMapper.getAllLoadUnloadResultMesByTotalId(resultTotalId));
+        allMesList.addAll(omstruckOrderSeparateMapper.getAllMaoPiWeightResultMesByTotalId(resultTotalId));
         //对列表中数据路段顺序号进行排序
         allMesList.sort(new Comparator<Map<String, Object>>() {
             @Override
@@ -319,6 +294,48 @@ public class OmstruckOrderSeparateServiceImpl implements IOmstruckOrderSeparateS
         return allMesList;
     }
 
+    /**
+     * 计时查看进程方法
+     * @Author TXF
+     * @Date 2022/3/18 10:33
+     * @param resultTotalId
+     * @return
+     **/
+    public List<Map<String, Object>> getTimeOrderResult(BigDecimal resultTotalId){
+        List<Map<String, Object>> mapList = omstruckOrderSeparateMapper.getTimeOrderResult(resultTotalId);
+        List<Map<String, Object>> returnMap = new ArrayList<>();
+        if(mapList.size() == 0){
+            return null;
+        }else {
+            int sqe = 1;
+            for (Map<String, Object> mesMap : mapList) {
+                int type = DataChange.dataToBigDecimal(mesMap.get("resultTimeType")).intValue();
+                switch (type){
+                    case 0:
+                        mesMap.put("linkName", "达兴门岗时间");
+                        mesMap.put("segmenSqe", sqe ++);
+                        break;
+                    case 1:
+                        mesMap.put("linkName", "计时开始");
+                        mesMap.put("segmenSqe", sqe ++);
+                        break;
+                    case 3:
+                        mesMap.put("linkName", "计时结束");
+                        mesMap.put("segmenSqe", sqe ++);
+                        break;
+                    case 5:
+                        mesMap.put("linkName", "开始暂停计时");
+                        mesMap.put("segmenSqe", sqe ++);
+                        break;
+                    case 7:
+                        mesMap.put("linkName", "结束暂停计时");
+                        mesMap.put("segmenSqe", sqe ++);
+                }
+                returnMap.add(mesMap);
+            }
+        }
+        return returnMap;
+    }
     /**
      * 通过运输订单号查询实绩位置
      * @param orderNumber
@@ -704,46 +721,4 @@ public class OmstruckOrderSeparateServiceImpl implements IOmstruckOrderSeparateS
     }
 
 
-    /**
-     * 计时查看进程方法
-     * @Author TXF
-     * @Date 2022/3/18 10:33
-     * @param map
-     * @return
-     **/
-    public List<Map<String, Object>> getTimeOrderResult(Map<String, Object> map){
-        List<Map<String, Object>> mapList = omstruckOrderSeparateMapper.getTimeOrderResult(map);
-        List<Map<String, Object>> returnMap = new ArrayList<>();
-        if(mapList.size() == 0){
-            return null;
-        }else {
-            int sqe = 1;
-            for (Map<String, Object> mesMap : mapList) {
-                int type = DataChange.dataToBigDecimal(mesMap.get("resultTimeType")).intValue();
-                switch (type){
-                    case 0:
-                        mesMap.put("linkName", "达兴门岗时间");
-                        mesMap.put("segmentSqe", sqe ++);
-                        break;
-                    case 1:
-                        mesMap.put("linkName", "计时开始");
-                        mesMap.put("segmentSqe", sqe ++);
-                        break;
-                    case 3:
-                        mesMap.put("linkName", "计时结束");
-                        mesMap.put("segmentSqe", sqe ++);
-                        break;
-                    case 5:
-                        mesMap.put("linkName", "开始暂停计时");
-                        mesMap.put("segmentSqe", sqe ++);
-                        break;
-                    case 7:
-                        mesMap.put("linkName", "结束暂停计时");
-                        mesMap.put("segmentSqe", sqe ++);
-                }
-                returnMap.add(mesMap);
-            }
-        }
-        return returnMap;
-    }
 }

+ 13 - 7
src/main/java/com/steerinfo/dil/service/impl/OmstruckOrderServiceImpl.java

@@ -1495,16 +1495,18 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
                 OmstruckOrderMaterial omstruckOrderMaterial = new OmstruckOrderMaterial();
                 BigDecimal orderMaterialId = omstruckOrderMaterialMapper.selectMaxId();
                 BigDecimal materialId = DataChange.dataToBigDecimal(orderMaterial.get("materialId"));
-                BigDecimal materialWeight = DataChange.dataToBigDecimal(orderMaterial.get("materialWeight"));
-                BigDecimal materialCount = DataChange.dataToBigDecimal(orderMaterial.get("materialCount"));
                 omstruckOrderMaterial.setOrderMaterialId(orderMaterialId);
                 omstruckOrderMaterial.setOrderId(orderId);
                 omstruckOrderMaterial.setMaterialId(materialId);
-                omstruckOrderMaterial.setOrderMaterialNumber(materialCount);
+                if (orderMaterial.get("materialCount")!=null) {
+                    omstruckOrderMaterial.setOrderMaterialNumber(DataChange.dataToBigDecimal(orderMaterial.get("materialCount")));
+                }
                 omstruckOrderMaterial.setInsertTime(new Date());
                 omstruckOrderMaterial.setInsertUsername(userId);
                 omstruckOrderMaterial.setUpdateTime(new Date());
-                omstruckOrderMaterial.setOrderMaterialWeight(materialWeight);
+                if (orderMaterial.get("materialWeight")!=null) {
+                    omstruckOrderMaterial.setOrderMaterialWeight(DataChange.dataToBigDecimal(orderMaterial.get("materialWeight")));
+                }
                 result +=omstruckOrderMaterialMapper.insertSelective(omstruckOrderMaterial);
             }
         }
@@ -1946,7 +1948,7 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
                 mesMap.put("inwardType", inwardType);
                 break;
             case 21:
-                mesMap = omstruckOrderMapper.getInwardOrderMessageToApp(map);
+                mesMap = omstruckOrderMapper.getInwardTimeOrderMessageToApp(map);
                 inwardType += "计时";
                 mesMap.put("inwardType", inwardType);
                 break;
@@ -1980,26 +1982,30 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
             //如果订单类型为2 则判断订单发货日期是否为当日 如果不是当日则不给显示
             if(orderType == 2){
                 Integer judgeDate = omstruckOrderSeparateMapper.getDeliveryDate(orderMesMap.get("orderId"));
-                if(judgeDate == null){ // 数据为空则不是当天的订单
+                if(judgeDate == null){ // 数据为空则是已过截止日期 关闭订单
+                    omstruckOrderMapper.closeTruckOrder(DataChange.dataToBigDecimal(orderMesMap.get("orderId")));
                     continue;
                 }
             }
             if(orderType == 10|| orderType == 20){
                 Integer planEnable = omstruckOrderSeparateMapper.getOrderPlanEnable(orderMesMap.get("orderId"));
                 if(planEnable == 0){ // 数据为0则失效
+                    omstruckOrderMapper.closeTruckOrder(DataChange.dataToBigDecimal(orderMesMap.get("orderId")));
                     continue;
                 }
             }
             if(orderType == 12|| orderType == 13 || orderType == 14 || orderType == 19){
                 Integer sporadicStatus = omstruckOrderSeparateMapper.getSporadicStatus(orderMesMap.get("orderId"));
                 if(sporadicStatus == 0){ // 数据为0则失效
+                    omstruckOrderMapper.closeTruckOrder(DataChange.dataToBigDecimal(orderMesMap.get("orderId")));
                     continue;
                 }
             }
             //如果订单类型为11 当订单大于截止日期时,不显示订单
-            if(orderType == 11){
+            if(orderType == 11 || orderType == 21){
                 int result = omstruckOrderSeparateMapper.getInward(orderMesMap.get("orderId"));
                 if(result == 0){
+                    omstruckOrderMapper.closeTruckOrder(DataChange.dataToBigDecimal(orderMesMap.get("orderId")));
                     continue;
                 }
             }

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

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

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

@@ -992,6 +992,14 @@
     </update>
 
 
+    <update id="closeTruckOrder" parameterType="java.math.BigDecimal">
+        update OMSTRUCK_ORDER OO
+        set OO.ORDER_STATUS = 7,
+            OO.INSERT_UPDATE_REMARK = '过期订单'
+        where OO.ORDER_ID = #{orderId}
+    </update>
+
+
     <!-- 通过运力ID 查询采购司机接单数据  、通过运单号查询所有运单信息-->
     <select id="getTruckOrderByCapacityNum" parameterType="java.util.Map" resultType="java.util.Map">
         select *
@@ -3326,7 +3334,8 @@
         where OO.ORDER_ID= #{orderId}  AND   TTTR.RESULT_VALUE IS NOT NULL and TTTR.RESULT_TIME_TYPE = 3
     </select>
     <select id="getInwardTimeOrderMessageToApp" resultType="java.util.Map">
-        SELECT OO.ORDER_ID            "orderId",
+        SELECT DISTINCT
+        OO.ORDER_ID            "orderId",
         OO.ORDER_NUMBER        "orderNumber",
         OO.ORDER_LINE_SEQUENCE "orderLineSequence",
         RC.CAPACITY_NUMBER     "capacityNumber",
@@ -3338,8 +3347,6 @@
         AIR.REQUIREMENT_TRUCK_TIME "requirementTruckTime",
         RW1.WAREHOUSE_NAME       "loadName",
         RW.WAREHOUSE_NAME        "unloadName",
-        CONCAT(TTTR.RESULT_VALUE,RUOM.UNIT_OF_MEASURE_NAME)  AS "resultTime",
-        TTTR.INSERT_TIME "insertTime",
         (
         SELECT TTTR2.RESULT_TIME
         FROM TMSTRUCK_TIME_TASK_RESULT TTTR2
@@ -3351,8 +3358,13 @@
         FROM TMSTRUCK_TIME_TASK_RESULT TTTR2
         WHERE TTTR2.RESULT_TOTAL_ID = TTTR.RESULT_TOTAL_ID
         AND TTTR2.RESULT_TIME_TYPE = 3
-        ) "endTime"
-
+        ) "endTime",
+        (
+        SELECT TTTR2.RESULT_VALUE
+        FROM TMSTRUCK_TIME_TASK_RESULT TTTR2
+        WHERE TTTR2.RESULT_TOTAL_ID = TTTR.RESULT_TOTAL_ID
+        AND TTTR2.RESULT_TIME_TYPE = 3
+        ) "totalTime"
         FROM OMSTRUCK_ORDER OO
         LEFT JOIN AMSTRUCK_INWARD_PLAN AIP
         ON OO.ORDER_PLAN_ID = AIP.PLAN_ID
@@ -3389,13 +3401,36 @@
         </if>
     </select>
     <select id="getPauseTimeTaskDetail" resultType="java.util.Map" parameterType="java.lang.Integer">
-        select sum(TTTR.RESULT_VALUE) "TotalValue"
+        select  (
+                     SELECT TTTR2.RESULT_TIME
+                     FROM TMSTRUCK_TIME_TASK_RESULT TTTR2
+                     WHERE TTTR2.RESULT_TOTAL_ID = TTTR.RESULT_TOTAL_ID
+                       AND TTTR2.RESULT_TIME_TYPE = 1
+                 ) "startTime",
+                 (
+                     SELECT TTTR2.RESULT_TIME
+                     FROM TMSTRUCK_TIME_TASK_RESULT TTTR2
+                     WHERE TTTR2.RESULT_TOTAL_ID = TTTR.RESULT_TOTAL_ID
+                       AND TTTR2.RESULT_TIME_TYPE = 3
+                 ) "endTime",
+                 (
+                     SELECT TTTR2.RESULT_VALUE
+                     FROM TMSTRUCK_TIME_TASK_RESULT TTTR2
+                     WHERE TTTR2.RESULT_TOTAL_ID = TTTR.RESULT_TOTAL_ID
+                       AND TTTR2.RESULT_TIME_TYPE = 3
+                 ) "totalTime",
+                (
+                    SELECT TTTR2.RESULT_VALUE
+                    FROM TMSTRUCK_TIME_TASK_RESULT TTTR2
+                    WHERE TTTR2.RESULT_TOTAL_ID = TTTR.RESULT_TOTAL_ID
+                      AND TTTR2.RESULT_TIME_TYPE = 7
+                ) "pauseTime",
         from OMSTRUCK_ORDER OO
         left join TMSTRUCK_TOTAL_RESULT TTR
         ON OO.ORDER_ID=TTR.ORDER_ID
         LEFT JOIN TMSTRUCK_TIME_TASK_RESULT TTTR
         ON TTR.RESULT_TOTAL_ID =TTTR.RESULT_TOTAL_ID
-        WHERE  OO.ORDER_ID = #{orderId}  AND TTTR.RESULT_TIME_TYPE =7
+        WHERE  OO.ORDER_ID = #{orderId}
     </select>
 
     <select id="getInwardOrderMessage" resultType="java.util.Map" parameterType="java.util.Map">

+ 86 - 83
src/main/resources/com/steerinfo/dil/mapper/OmstruckOrderSeparateMapper.xml

@@ -166,61 +166,6 @@
         where TTR.ORDER_ID = #{orderId}
     </select>
 
-<!--    通过总实绩ID和路段顺序号查询进厂实绩数据 -->
-        <select id="getEnFactoryMes" parameterType="map" resultType="java.util.Map">
-        select RG.GATEPOST_NAME             "pointName",
-               TER.RESULT_ENTRY_GATE_TIME   "pointDate"
-        from TMSTRUCK_ENFACTORY_RESULT TER
-        left join RMS_GATEPOST RG
-            on RG.GATEPOST_ID = TER.GATEPOST_ID
-        where TER.RESULT_TOTAL_ID = #{resultTotalId} and TER.SEGMEN_SQE = #{segmentSqe}
-    </select>
-
-<!--    通过总实绩ID和路段顺序号查询计毛实绩数据 -->
-    <select id="getMaoWeightMes" parameterType="map" resultType="java.util.Map">
-        select RTC.TRUCK_CALCULATE_NUMBER   "pointName",
-               TWR.RESULT_GROSS_WEIGHT_TIME "pointDate",
-               TWR.RESULT_GROSS_WEIGHT     "weight",
-               RM.MATERIAL_NAME            "materialName"
-        from TMSTRUCK_WEIGHT_RESULT TWR
-        left join RMS_TRUCK_CALCULATE RTC
-            on RTC.TRUCK_CALCULATE_ID = TWR.RESULT_GROSS_PLACE_ID
-        left join RMS_MATERIAL RM
-            on TWR.MATERIAL_ID = RM.MATERIAL_ID
-        where TWR.RESULT_TOTAL_ID = #{resultTotalId} and TWR.GROSS_SEGMENT_SQE = #{segmentSqe}
-    </select>
-
-<!--    通过总实绩ID和路段顺序号查询卸货实绩数据 -->
-    <select id="getUnloadMes" parameterType="map" resultType="java.util.Map">
-        select TUR.RESULT_END_TIME    "pointDate",
-               RW.WAREHOUSE_NAME    "pointName"
-        from TMSTRUCK_UNLOAD_RESULT TUR
-        left join RMS_WAREHOUSE RW
-            on RW.WAREHOUSE_ID = TUR.RESULT_UNLOAD_PLACE_ID
-        where  TUR.RESULT_TOTAL_ID = #{resultTotalId} AND TUR.SEGMENT_SQE = #{segmentSqe}
-    </select>
-
-<!--    通过总实绩ID和路段顺序号查询装货实绩数据-->
-    <select id="getLoadMes" parameterType="map" resultType="java.util.Map">
-        select TLR.RESULT_LOAD_END_TIME "pointDate",
-               RW.WAREHOUSE_NAME "pointName"
-        from TMSTRUCK_LOAD_RESULT TLR
-        left join TMSTRUCK_TOTAL_RESULT TTR
-            on TTR.RESULT_TOTAL_ID = TLR.RESULT_TOTAL_ID
-        left join RMS_WAREHOUSE RW
-            on RW.WAREHOUSE_ID = TLR.LOADING_ID
-        where TLR.RESULT_TOTAL_ID = #{resultTotalId} and TLR.SEGMENT_SQE = #{segmentSqe}
-    </select>
-
-<!--    通过总实绩ID和路段顺序号查询出厂实绩数据 -->
-    <select id="getOutFactoryMes" parameterType="map" resultType="java.util.Map">
-        select TLFR.RESULT_OUT_GATE_TIME    "pointDate",
-               RG.GATEPOST_NAME     "pointName"
-        from TMSTRUCK_LEAVE_FACTORY_RESULT TLFR
-        left join RMS_GATEPOST RG
-            on RG.GATEPOST_ID = TLFR.GATEPOST_ID
-        where TLFR.RESULT_TOTAL_ID = #{resultTotalId} and TLFR.SEGMENT_SQE = #{segmentSqe}
-    </select>
 
 <!--  查询退货时间  -->
     <select id="getReturnMes" parameterType="map" resultType="java.util.Map">
@@ -229,19 +174,6 @@
         where TRR.RESULT_TOTAL_ID = #{resultTotalId}
     </select>
 
-<!--  通过总实绩ID和路段顺序号查询计皮实绩数据  -->
-    <select id="getPiWeightMes" parameterType="map" resultType="java.util.Map">
-        select RTC.TRUCK_CALCULATE_NUMBER   "pointName",
-               TWR.RESULT_TARE_WEIGHT_TIME "pointDate",
-               TWR.RESULT_TARE_WEIGHT       "weight",
-               RM.MATERIAL_NAME             "materialName"
-        from TMSTRUCK_WEIGHT_RESULT TWR
-                 left join RMS_TRUCK_CALCULATE RTC
-                           on RTC.TRUCK_CALCULATE_ID = TWR.RESULT_TARE_PLACE_ID
-                 left join RMS_MATERIAL RM
-                           on TWR.MATERIAL_ID = RM.MATERIAL_ID
-        where TWR.RESULT_TOTAL_ID = #{resultTotalId} and TWR.TARE_SEGMENT_SQE = #{segmentSqe}
-    </select>
 
     <!-- 查询承运商所属的采购进口矿运输订单信息 -->
     <select id="getInputOrderList" parameterType="java.util.Map" resultType="java.util.Map" >
@@ -647,7 +579,7 @@
         WHERE	OO.ORDER_ID = #{orderId}
     </select>
 
-    <select id="getAllEnFactoryResultMesByTotalId" parameterType="int" resultType="java.util.Map">
+    <select id="getAllEnOutFactoryResultMesByTotalId" parameterType="java.math.BigDecimal" resultType="java.util.Map">
         select *
         from (
             select TER.SEGMEN_SQE             "segmenSqe",
@@ -660,9 +592,7 @@
             where TER.RESULT_TOTAL_ID = #{resultTotalId}
             )
         where "pointDate" is not null
-    </select>
-
-    <select id="getAllOutFactoryResultMesByTotalId" parameterType="int" resultType="java.util.Map">
+        UNION
         select *
         from (
                  select TLFR.SEGMENT_SQE             "segmenSqe",
@@ -675,9 +605,11 @@
                  where TLFR.RESULT_TOTAL_ID = #{resultTotalId}
              )
         where "pointDate" is not null
+
     </select>
 
-    <select id="getAllLoadResultMesByTotalId" parameterType="int" resultType="java.util.Map">
+
+    <select id="getAllLoadUnloadResultMesByTotalId" parameterType="java.math.BigDecimal" resultType="java.util.Map">
         select *
         from (
                  select TLR.SEGMENT_SQE "segmenSqe",
@@ -692,9 +624,7 @@
                  where TLR.RESULT_TOTAL_ID = #{resultTotalId}
              )
         where "pointDate" is not null
-    </select>
-
-    <select id="getAllUnloadResultMesByTotalId" parameterType="int" resultType="java.util.Map">
+        UNION
         select *
         from (
                  select TUR.SEGMENT_SQE "segmenSqe",
@@ -711,7 +641,7 @@
         where "pointDate" is not null
     </select>
 
-    <select id="getAllMaoWeightResultMesByTotalId" parameterType="int" resultType="java.util.Map">
+    <select id="getAllMaoPiWeightResultMesByTotalId" parameterType="java.math.BigDecimal" resultType="java.util.Map">
         select *
         from (
                  select TWR.GROSS_SEGMENT_SQE "segmenSqe",
@@ -727,9 +657,7 @@
                  where TWR.RESULT_TOTAL_ID = #{resultTotalId}
              )
         where "pointDate" is not null
-    </select>
-
-    <select id="getAllPiWeightResultMesByTotalId" parameterType="int" resultType="java.util.Map">
+        UNION
         select *
         from (
                  select TWR.TARE_SEGMENT_SQE "segmenSqe",
@@ -747,6 +675,7 @@
         where "pointDate" is not null
     </select>
 
+
     <select id="getTotalIdByOrderIdOrOrderNum" parameterType="map" resultType="java.lang.Integer">
         select TTR.RESULT_TOTAL_ID
         from OMSTRUCK_ORDER OO
@@ -768,7 +697,7 @@
             ( SELECT TTTR2.RESULT_TIME FROM TMSTRUCK_TIME_TASK_RESULT TTTR2 WHERE TTTR2.RESULT_TOTAL_ID = TTTR.RESULT_TOTAL_ID AND TTTR2.RESULT_TIME_TYPE = 1 ) "startTime",
             ( SELECT TTTR3.RESULT_TIME FROM TMSTRUCK_TIME_TASK_RESULT TTTR3 WHERE TTTR3.RESULT_TOTAL_ID = TTTR.RESULT_TOTAL_ID AND TTTR3.RESULT_TIME_TYPE = 3 ) "endTime",
             ( SELECT  CONCAT( TTTR.RESULT_VALUE, RUOM.UNIT_OF_MEASURE_NAME ) FROM TMSTRUCK_TIME_TASK_RESULT TTTR4 WHERE TTTR4.RESULT_TOTAL_ID = TTTR.RESULT_TOTAL_ID AND TTTR4.RESULT_TIME_TYPE = 3 ) "resultTime",
-
+            TTTR.INSERT_TIME "insertTime",
             RM.MATERIAL_NAME "materialName"
         FROM
             OMSTRUCK_ORDER OO
@@ -780,6 +709,11 @@
                 LEFT JOIN RMS_UNIT_OF_MEASURE RUOM ON TTTR.RESULT_UOM_ID = RUOM.UNIT_OF_MEASURE_ID
         WHERE
                 TTTR.RESULT_VALUE IS NOT NULL and TTTR.RESULT_TIME_TYPE = 3 and TTTR.INSERT_USERNAME =#{userId}
+        <include refid="orderBy">
+        </include>
+        <if test="orderField == null  ">
+            order by "insertTime" desc
+        </if>
     </select>
 
     <select id="getInward" resultType="java.lang.Integer">
@@ -803,13 +737,13 @@
         where OO.ORDER_ID = #{orderId}
     </select>
 
-    <select id="getTimeOrderResult" parameterType="map" resultType="java.util.LinkedHashMap">
+    <select id="getTimeOrderResult" parameterType="java.math.BigDecimal" resultType="java.util.LinkedHashMap">
         select TTTR.RESULT_TIME "pointDate",
                TTTR.RESULT_TIME_TYPE    "resultTimeType"
         from OMSTRUCK_ORDER OO
                  left join TMSTRUCK_TOTAL_RESULT TTR on OO.ORDER_ID = TTR.ORDER_ID
                  left join TMSTRUCK_TIME_TASK_RESULT TTTR on TTR.RESULT_TOTAL_ID = TTTR.RESULT_TOTAL_ID
-        where OO.ORDER_ID = #{orderId}
+            where TTR.RESULT_TOTAL_ID = #{resultTotalId}
         order by TTTR.RESULT_TIME
     </select>
     <select id="getSporadicStatus" resultType="java.lang.Integer">
@@ -839,4 +773,73 @@
         where oo.ORDER_ID = #{orderId}
     </select>
 
+    <select id="getTwoDateMes" parameterType="java.math.BigDecimal" resultType="java.util.Map">
+        select
+            TER.RESULT_ENTRY_GATE_TIME   "pointDate",
+            RG.GATEPOST_NAME             "pointName",
+            TER.SEGMEN_SQE                "segmenSqe",
+            '进厂'                          "linkName"
+        from TMSTRUCK_ENFACTORY_RESULT TER
+                 left join RMS_GATEPOST RG
+                           on RG.GATEPOST_ID = TER.GATEPOST_ID
+        where TER.RESULT_TOTAL_ID = #{resultTotalId}
+        UNION
+        select TUR.RESULT_END_TIME    "pointDate",
+               RW.WAREHOUSE_NAME    "pointName",
+               TUR.SEGMENT_SQE             "segmentSqe",
+               '卸货'                          "linkName"
+        from TMSTRUCK_UNLOAD_RESULT TUR
+                 left join RMS_WAREHOUSE RW
+                           on RW.WAREHOUSE_ID = TUR.RESULT_UNLOAD_PLACE_ID
+        where  TUR.RESULT_TOTAL_ID = #{resultTotalId}
+        UNION
+        select TLFR.RESULT_OUT_GATE_TIME    "pointDate",
+               RG.GATEPOST_NAME     "pointName",
+               TLFR.SEGMENT_SQE      "segmenSqe",
+               '出厂'                          "linkName"
+        from TMSTRUCK_LEAVE_FACTORY_RESULT TLFR
+                 left join RMS_GATEPOST RG
+                           on RG.GATEPOST_ID = TLFR.GATEPOST_ID
+        where TLFR.RESULT_TOTAL_ID = #{resultTotalId}
+        UNION
+        select TLR.RESULT_LOAD_END_TIME "pointDate",
+               RW.WAREHOUSE_NAME "pointName",
+               TLR.SEGMENT_SQE     "segmenSqe",
+               '装货'                          "linkName"
+        from TMSTRUCK_LOAD_RESULT TLR
+                 left join TMSTRUCK_TOTAL_RESULT TTR
+                           on TTR.RESULT_TOTAL_ID = TLR.RESULT_TOTAL_ID
+                 left join RMS_WAREHOUSE RW
+                           on RW.WAREHOUSE_ID = TLR.LOADING_ID
+        where TLR.RESULT_TOTAL_ID = #{resultTotalId}
+    </select>
+
+    <select id="getFourDateMes" parameterType="java.math.BigDecimal" resultType="java.util.Map">
+        select RTC.TRUCK_CALCULATE_NUMBER   "pointName",
+               TWR.RESULT_TARE_WEIGHT_TIME "pointDate",
+               TWR.TARE_SEGMENT_SQE         "segmenSqe",
+               '计皮'                        "linkName",
+               TWR.RESULT_TARE_WEIGHT       "weight",
+               RM.MATERIAL_NAME             "materialName"
+        from TMSTRUCK_WEIGHT_RESULT TWR
+                 left join RMS_TRUCK_CALCULATE RTC
+                           on RTC.TRUCK_CALCULATE_ID = TWR.RESULT_TARE_PLACE_ID
+                 left join RMS_MATERIAL RM
+                           on TWR.MATERIAL_ID = RM.MATERIAL_ID
+        where TWR.RESULT_TOTAL_ID = #{resultTotalId}
+        UNION
+        select RTC.TRUCK_CALCULATE_NUMBER   "pointName",
+               TWR.RESULT_GROSS_WEIGHT_TIME "pointDate",
+               TWR.GROSS_SEGMENT_SQE         "segmenSqe",
+               '计毛'                        "linkName",
+               TWR.RESULT_GROSS_WEIGHT     "weight",
+               RM.MATERIAL_NAME            "materialName"
+        from TMSTRUCK_WEIGHT_RESULT TWR
+                 left join RMS_TRUCK_CALCULATE RTC
+                           on RTC.TRUCK_CALCULATE_ID = TWR.RESULT_GROSS_PLACE_ID
+                 left join RMS_MATERIAL RM
+                           on TWR.MATERIAL_ID = RM.MATERIAL_ID
+        where TWR.RESULT_TOTAL_ID = #{resultTotalId}
+    </select>
+
 </mapper>