HUJIANGUO 4 jaren geleden
bovenliggende
commit
9a37e5afb4

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

@@ -268,6 +268,9 @@ public interface OmstruckOrderMapper extends IBaseMapper<OmstruckOrder, BigDecim
 
     //通过订单id查询零星订单id,运力id
     Map<String, Object> getSporadicOrdermapAddOrder(BigDecimal orderId);
+
+    //判断是否是钢材
+    BigDecimal getIsSteel(BigDecimal lineId);
 //
 //    //通过订单查询趟次
 //    Integer getSporadicOrderTimes(BigDecimal orderId);

+ 11 - 2
src/main/java/com/steerinfo/dil/service/impl/OmstruckOrderSeparateServiceImpl.java

@@ -330,8 +330,10 @@ public class OmstruckOrderSeparateServiceImpl implements IOmstruckOrderSeparateS
      */
     @Override
     public Integer addSaleTruckOrder(Map<String, Object> mapValue) {
-        Integer orderType = (Integer) mapValue.get("orderType");
+//        Integer orderType = (Integer) mapValue.get("orderType");
         Integer lineId = (Integer) mapValue.get("lineId");
+        // 根据lineId查询是否是钢材
+        BigDecimal isSteel = omstruckOrderMapper.getIsSteel(new BigDecimal(lineId));
         BigDecimal dispatchId = DataChange.dataToBigDecimal(mapValue.get("dispatchId"));
         String capacityNumber = (String) mapValue.get("capacityNumber");
         OmstruckOrder omstruckOrder = new OmstruckOrder();
@@ -348,6 +350,14 @@ public class OmstruckOrderSeparateServiceImpl implements IOmstruckOrderSeparateS
         omstruckOrder.setOrderNumber(orderNumber);
         omstruckOrder.setLineId(new BigDecimal(lineId));
         omstruckOrder.setOrderIssueTime(new Date());
+        // 如果线路类型为3或者4(危化品和焦炭)则为非钢材
+        if (isSteel != null && (isSteel.intValue() == 3 || isSteel.intValue() == 4)) {
+            omstruckOrder.setOrderType(new BigDecimal(2));
+        }
+        // 否则为钢材
+        else {
+            omstruckOrder.setOrderType(new BigDecimal(1));
+        }
         omstruckOrder.setOrderStatus(new BigDecimal(4));
         omstruckOrder.setInsertTime(new Date());
         omstruckOrder.setUpdateTime(new Date());
@@ -355,7 +365,6 @@ public class OmstruckOrderSeparateServiceImpl implements IOmstruckOrderSeparateS
         omstruckOrder.setUpdateUsername("admin");
         omstruckOrder.setInsertUpdateRemark("无");
         omstruckOrder.setDeleted(new BigDecimal(0));
-        omstruckOrder.setOrderType(new BigDecimal(orderType));
         BigDecimal capacityId = omstruckOrderMapper.getCapacityId(capacityNumber);
         omstruckOrder.setCapacityId(capacityId);
         List<Map<String, Object>> mapList = omstruckOrderMapper.getMaterialMessages(dispatchId);

+ 6 - 0
src/main/resources/com/steerinfo/dil/mapper/OmstruckOrderMapper.xml

@@ -3004,4 +3004,10 @@
             on oo.ORDER_PLAN_ID=aso.sporadic_order_id
         where oo.order_id= #{orderId}
     </select>
+
+    <select id="getIsSteel" parameterType="DECIMAL" resultType="DECIMAL">
+        SELECT RL.IS_STEEL AS "isSteel"
+        FROM RMS_LINE RL
+        WHERE RL.LINE_ID = #{lineId}
+    </select>
 </mapper>