txf %!s(int64=3) %!d(string=hai) anos
pai
achega
8f7f4eb0fd

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

@@ -117,10 +117,10 @@ public interface TmstruckLoadResultMapper extends IBaseMapper<TmstruckLoadResult
     //获取装货实绩备注
     Map<String,Object> getInsertUpdateRemark(BigDecimal resultTotalId);
 
-    //根据路径id查找最大路段顺序号
-    Integer Maxseq(BigDecimal lineId);
+    //查找当前订单共有几次出
+    List<Integer> allOutFactoryNum(BigDecimal orderId);
 
     //修改装货路段顺序号
-    int updateSqe(@Param("seq")int seq,@Param("orderId")BigDecimal orderId);
+    int updateSqe(@Param("orderId")BigDecimal orderId);
 
 }

+ 31 - 18
src/main/java/com/steerinfo/dil/service/impl/TmstruckLoadResultServiceImpl.java

@@ -3,10 +3,9 @@ package com.steerinfo.dil.service.impl;
 import com.steerinfo.dil.feign.OmsFeign;
 import com.steerinfo.dil.feign.WMSFeign;
 import com.steerinfo.dil.feign.WmshBoundFeign;
-import com.steerinfo.dil.mapper.TmstruckEnfactoryResultMapper;
-import com.steerinfo.dil.mapper.TmstruckLoadResultMapper;
-import com.steerinfo.dil.mapper.TmstruckReturnResultMapper;
-import com.steerinfo.dil.mapper.UtilsMapper;
+import com.steerinfo.dil.mapper.*;
+import com.steerinfo.dil.model.TmstruckEnfactoryResult;
+import com.steerinfo.dil.model.TmstruckLeaveFactoryResult;
 import com.steerinfo.dil.model.TmstruckLoadResult;
 import com.steerinfo.dil.service.ITmstruckLoadResultService;
 import com.steerinfo.dil.util.DataChange;
@@ -46,7 +45,7 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
     private UtilsServiceImpl utilsService;
 
     @Autowired
-    private RulesServiceImpl rulesService;
+    private TmstruckLeaveFactoryResultMapper tmstruckLeaveFactoryResultMapper;
 
     @Autowired
     private WmshBoundFeign wmshBoundFeign;
@@ -114,18 +113,8 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
         }
         return null;
     }
-     //判断装货是否含有备注
-    @Override
-    public int loadJudge(Map<String, Object> map) {
-        int i=0;
-        //判断装货实绩是否含有未装货备注
-        BigDecimal orderId =(BigDecimal) map.get("orderId");
-        BigDecimal lineId =(BigDecimal) map.get("lineId");
-        //获得最大路段顺序号
-        Integer maxSeq = tmstruckLoadResultMapper.Maxseq(lineId);
-        i = tmstruckLoadResultMapper.updateSqe(maxSeq - 1,orderId);
-        return i;
-    }
+
+
 
     /**
      * 新增采购装车实绩  / 内转装车实绩
@@ -296,7 +285,7 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
         if (map.get("insertUpdateRemark")!=null) {
             String insertUpdateRemark = (String) map.get("insertUpdateRemark");
             if("未装货".equals(insertUpdateRemark)){
-//                loadJudge(orderMap);
+                loadJudge(orderMap);
             }
             tmstruckLoadResult.setInsertUpdateRemark(insertUpdateRemark);
         }
@@ -308,6 +297,30 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
         return i;
     }
 
+    /**
+     * 更改最大路段顺序号 -1
+     * @Author TXF
+     * @Date 2022/2/13 12:59
+     * @param map
+     * @return
+     **/
+    @Override
+    public int loadJudge(Map<String, Object> map) {
+        BigDecimal orderId =DataChange.dataToBigDecimal(map.get("orderId"));
+        //查找当前订单共有几次出厂
+        List<Integer> resultIdList = tmstruckLoadResultMapper.allOutFactoryNum(orderId);
+        if(resultIdList.size() > 1){
+            for(int i = 0; i < resultIdList.size() - 1; i ++){
+                //给最后一次出厂 之外的出厂实绩 赋值出厂时间
+                TmstruckLeaveFactoryResult tmstruckLeaveFactoryResult = new TmstruckLeaveFactoryResult();
+                tmstruckLeaveFactoryResult.setResultId(new BigDecimal(resultIdList.get(i)));
+                tmstruckLeaveFactoryResult.setResultOutMode("未装货出厂");
+                tmstruckLeaveFactoryResult.setResultOutGateTime(new Date());
+                tmstruckLeaveFactoryResultMapper.updateByPrimaryKeySelective(tmstruckLeaveFactoryResult);
+            }
+        }
+        return tmstruckLoadResultMapper.updateSqe(orderId);
+    }
 
     /**
      * 添加装车标准时长ID

+ 9 - 10
src/main/java/com/steerinfo/dil/service/impl/TmstruckMeasureCommissionServiceImpl.java

@@ -147,16 +147,6 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
                 //给达兴发送委托
                 i = sendDXMeasureCommissionMes(map);
             }
-        }
-        if(orderType == 20) {//内转零星进厂
-           //查询还未计量实绩
-            Integer noNetWeightResult = rulesMapper.getNoNetWeightResult(orderId);
-            if(noNetWeightResult != 2){
-                i = sendMeasureCommissionMes(map);
-            }else {
-                i = sendDXMeasureCommissionMes(map);//如果有两条没有净重的实绩则需要给达兴发委托  否则给达钢发委托
-            }
-
         }else if(orderType == 13){
             Integer sendId = tmstruckMeasureCommissionMapper.getLxRealSendUnitIdByOrderId(orderId);
             if(sendId == 1){
@@ -183,6 +173,15 @@ public class TmstruckMeasureCommissionServiceImpl implements ITmstruckMeasureCom
                 i = sendDXMeasureCommissionMes(map);
             }
         }
+        else if(orderType == 20) {//内转零星进厂
+            //查询还未计量实绩
+            Integer noNetWeightResult = rulesMapper.getNoNetWeightResult(orderId);
+            if(noNetWeightResult != 2){
+                i = sendMeasureCommissionMes(map);
+            }else {
+                i = sendDXMeasureCommissionMes(map);//如果有两条没有净重的实绩则需要给达兴发委托  否则给达钢发委托
+            }
+        }
         addMeasureCommission(map); // 添加计毛委托
         return i;
     }

+ 2 - 2
src/main/resources/application-dev.yml

@@ -31,7 +31,7 @@ openfeign:
   WMSFeign:
     url: ${WMSFEIGN_URL:172.16.33.162:8012}
   OmsFeign:
-    url: ${OMSFEIGN_URL:172.16.33.162:8016}
+    url: ${OMSFEIGN_URL:localhost:8016}
   JoinFeign:
     url: ${JOINFEIGN_URL:172.16.33.162:8006}
   QmsFeign:
@@ -39,7 +39,7 @@ openfeign:
   ImFeign:
     url: ${IMFEIGN_URL:172.16.33.166:8055}
   AmsFeign:
-    url: ${AMSFEIGN_URL:172.16.33.162:8015}
+    url: ${AMSFEIGN_URL:localhost:8015}
 
 server:
   port: 8008

+ 2 - 1
src/main/resources/com/steerinfo/dil/mapper/TmstruckEnfactoryResultMapper.xml

@@ -1164,7 +1164,8 @@
     <select id="getSporadicSuppliesEnFactoryResult" parameterType="java.util.Map" resultType="java.util.Map">
         select *
         from (
-        select TER.RESULT_ID "resultId",
+        select Distinct
+               TER.RESULT_ID "resultId",
                OO.ORDER_ID    "orderId",
                 OO.ORDER_NUMBER "orderNumber",
                 RC.CAPACITY_NUMBER "capacityNumber",

+ 20 - 8
src/main/resources/com/steerinfo/dil/mapper/TmstruckLoadResultMapper.xml

@@ -1628,16 +1628,28 @@
     where TTR.RESULT_TOTAL_ID=#{resultTotalId}
   </select>
 
-  <select id="Maxseq" resultType="int" parameterType="java.math.BigDecimal">
-    select MAX(RLS.SEGMENT_SQE)
-    from RMS_LINE RL
-    left join RMS_LINE_SEGEMNT RLS
-    on RL.LINE_ID=RLS.LINE_ID
-    where  RL.LINE_ID=#{lineId}
+  <select id="allOutFactoryNum" resultType="int" parameterType="java.math.BigDecimal">
+    select TLFR.RESULT_ID
+    from OMSTRUCK_ORDER OO
+           left join TMSTRUCK_TOTAL_RESULT TTR on TTR.ORDER_ID = OO.ORDER_ID
+           left join TMSTRUCK_LEAVE_FACTORY_RESULT TLFR on TTR.RESULT_TOTAL_ID = TLFR.RESULT_TOTAL_ID
+    where OO.ORDER_ID = #{orderId}
+      and TLFR.RESULT_OUT_GATE_TIME is null
+    order by TLFR.SEGMENT_SQE
   </select>
+
   <update id="updateSqe" parameterType="java.util.Map">
     update OMSTRUCK_ORDER OO
-    set OO.ORDER_LINE_SEQUENCE=#{seq}
-    where OO.ORDER_ID=#{orderId}
+    set OO.ORDER_LINE_SEQUENCE =
+        (
+          select MAX(RLS.SEGMENT_SQE)
+          from OMSTRUCK_ORDER OO
+                 left join RMS_LINE RL
+                           on OO.LINE_ID = RL.LINE_ID
+                 left join RMS_LINE_SEGEMNT RLS
+                           on RL.LINE_ID = RLS.LINE_ID
+          where OO.ORDER_ID = #{orderId}
+        ) - 1
+    where OO.ORDER_ID = #{orderId}
   </update>
 </mapper>