liyg 2 anos atrás
pai
commit
bc129906f6

+ 7 - 2
src/main/java/com/steerinfo/dil/controller/WmsInboundScanResultController.java

@@ -80,6 +80,11 @@ public class WmsInboundScanResultController extends BaseRESTfulController {
         Integer orderType=DataChange.dataToBigDecimal(order.get("orderType")).intValue();
         BigDecimal orderId=DataChange.dataToBigDecimal(order.get("orderId"));
         if(orderType!=null && orderType == 25){
+            //校验是否有装货实绩,若没有则不允许入库
+            Integer count=wmsInboundScanResultService.isExistLoad((String)map.get("resultMaterial"));
+            if(count==null|| count<=0){
+                return failed(null);
+            }
             //根据运输订单号查询出库扫码实绩
             List<Map<String,Object>> inboundOld= wmsInboundScanResultService.findInboundScanResult((String)map.get("resultMaterial"));
             //批量新增扫码实绩
@@ -88,14 +93,14 @@ public class WmsInboundScanResultController extends BaseRESTfulController {
             }
             else{
                 System.out.println("物资暂未出库,请先出库再入库!");
-                return null;
+                return failed(null);
             }
             //返回新建的扫码实绩数据
             List<Map<String,Object>> mapList= wmsInboundScanResultService.noIssueScanResultList(map.get("userName").toString());
             //关闭运输订单
             omsFeign.closeSteelOrderType4(DataChange.dataToBigDecimal(orderId));
             //生成计费详单
-
+            omsFeign.addInwardDetailsOrder(order);
             return  success(mapList);
         }
         int isExist= wmsInboundScanResultService.isExist(map.get("userName").toString(),map.get("resultMaterial").toString().substring(0,map.get("resultMaterial").toString().length()-1));

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

@@ -1,6 +1,7 @@
 package com.steerinfo.dil.feign;
 
 
+import com.steerinfo.framework.controller.RESTfulResult;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -17,4 +18,7 @@ public interface OmsFeign {
 
     @PostMapping("api/v1/oms/omstrainorders/generateOmstrain")
     int generateOmstrain(@RequestBody(required = false) Map<String,Object> map);
+
+    @PostMapping("api/v1/bmstruck/bmstruckdetailsorder/addInwardDetailsOrder")
+    RESTfulResult addInwardDetailsOrder(@RequestBody(required = false) Map<String,Object> map);
 }

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

@@ -143,4 +143,7 @@ public interface WmspInboundScanResultMapper extends IBaseMapper<WmspInboundScan
 
     //根据运输订单号查询出库扫码实绩
     List<Map<String, Object>> findInboundScanResult(String orderNumber);
+
+    //查询装货实绩数量
+    Integer isExistLoad(String orderNumber);
 }

+ 4 - 2
src/main/java/com/steerinfo/dil/service/IWmsInboundScanResultService.java

@@ -134,15 +134,17 @@ public interface IWmsInboundScanResultService {
     int isExistInboundScanResult(String substring);
 
     //根据运输订单号取得订单类型
-    Map<String, Object> getOrderTypeByNum(String orderNum);
+    Map<String, Object> getOrderTypeByNum(String orderNumber);
 
     //根据入库实绩id查询运输订单id和类型
     Map<String, Object> getOrderTypeByInboundId(String resultId);
 
     //根据运输订单号查询出库扫码实绩
-    List<Map<String, Object>> findInboundScanResult(String orderNum);
+    List<Map<String, Object>> findInboundScanResult(String orderNumber);
 
     //通过查询结果批量地创建创建扫描实绩
     int createInboundScanResultByFind(List<Map<String,Object>> list,Map<String,Object> map) throws Exception;
 
+    //查询运输订单是否已经装货
+    Integer isExistLoad(String orderNumber);
 }

+ 5 - 0
src/main/java/com/steerinfo/dil/service/impl/WmsInboundScanResultServiceImpl.java

@@ -466,4 +466,9 @@ public class WmsInboundScanResultServiceImpl implements IWmsInboundScanResultSer
     public List<Map<String, Object>> findInboundScanResult(String orderNumber) {
         return wmspInboundScanResultMapper.findInboundScanResult(orderNumber);
     }
+
+    @Override
+    public Integer isExistLoad(String orderNumber) {
+        return wmspInboundScanResultMapper.isExistLoad(orderNumber);
+    }
 }

+ 10 - 0
src/main/resources/com/steerinfo/dil/mapper/WmspInboundScanResultMapper.xml

@@ -1122,6 +1122,16 @@ where wisr.result_id = #{stackResultId}
                            ON WIR.INBOUND_ID=WISR.INBOUND_RESULT_ID
         WHERE WISR.RESULT_ID=#{resultId}
     </select>
+    <select id="isExistLoad" resultType="java.lang.Integer">
+        --查询装货实绩
+        select COUNT(DISTINCT TLR.RESULT_ID)
+        FROM OMSTRUCK_ORDER OO
+                 LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR
+                           ON OO.ORDER_ID=TTR.ORDER_ID
+                 LEFT JOIN TMSTRUCK_LOAD_RESULT TLR
+                           ON TTR.RESULT_TOTAL_ID=TLR.RESULT_TOTAL_ID
+        WHERE OO.ORDER_TYPE=25 AND ORDER_NUMBER=SUBSTR(#{orderNumber}, 0, 21) AND TLR.RESULT_ID IS NOT NULL
+    </select>
 
 
 </mapper>