Selaa lähdekoodia

钒渣物资锁定出厂门岗

liyg 2 vuotta sitten
vanhempi
commit
321004dff6

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

@@ -138,4 +138,6 @@ public interface UtilsMapper {
 
     String getRequireRemark(BigDecimal orderId);
 
+    //查询总实绩的订单是否包含某个物资的数目
+    int getMaterialNumByTotal(Map<String,Object> map);
 }

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

@@ -94,6 +94,15 @@ public class TmstruckLeaveFactoryResultServiceImpl implements ITmstruckLeaveFact
         gatepostIdList.remove(null);
         //随机取门岗值
         Integer gatepostId = utilsService.randomGetValue(gatepostIdList);
+        try{
+            //如果是物资里有钒渣,则取5
+            map.put("con","钒渣");
+            if(utilsMapper.getMaterialNumByTotal(map) > 0){
+                gatepostId=5;
+            }
+        }catch (Exception e){
+            e.printStackTrace();
+        }
         //获取门岗ID
         tmstruckLeaveFactoryResult.setGatepostId(new BigDecimal(gatepostId));
         //添加路段顺序号

+ 8 - 0
src/main/resources/com/steerinfo/dil/mapper/UtilsMapper.xml

@@ -386,4 +386,12 @@
         ON AIR.REQUIREMENT_ID = ARP.REQUIREMENT_ID
         WHERE OO.ORDER_ID = #{orderId}
     </select>
+    <select id="getMaterialNumByTotal" resultType="java.lang.Integer">
+        SELECT COUNT(DISTINCT OOM .ORDER_MATERIAL_ID)
+        FROM TMSTRUCK_TOTAL_RESULT TTR
+                 LEFT JOIN OMSTRUCK_ORDER OO ON OO .ORDER_ID = TTR .ORDER_ID
+                 LEFT JOIN OMSTRUCK_ORDER_MATERIAL OOM ON OOM .ORDER_ID = OO .ORDER_ID
+                 LEFT JOIN RMS_MATERIAL RM ON RM .MATERIAL_ID = OOM .MATERIAL_ID
+        WHERE TTR .RESULT_TOTAL_ID=#{resultTotalId} AND RM .MATERIAL_NAME LIKE CONCAT('%',CONCAT(#{con},'%'))
+    </select>
 </mapper>