liyg 2 年之前
父節點
當前提交
684c3deb71

+ 16 - 0
src/main/java/com/steerinfo/dil/controller/TmstrainLoadingResultController.java

@@ -234,6 +234,22 @@ public class TmstrainLoadingResultController extends BaseRESTfulController {
         return success(tmstrainLoadingResultService.addTrainLoadResultForConverted(map));
         return success(tmstrainLoadingResultService.addTrainLoadResultForConverted(map));
     }
     }
 
 
+    //内转物流新增装车
+    @ApiOperation(value = "进口矿港存库出库")
+    @PostMapping(value = "/addWarehouseOutResult")
+    public RESTfulResult addWarehouseOutResult(@RequestBody(required = false) Map<String, Object> map) {
+        int result = tmstrainLoadingResultService.addWarehouseOutResult(map);
+        if (result==-1){
+            return failed("港存库实时库存不够");
+        }
+        return success();
+    }
+
+
+
+
+
+
     /**
     /**
      * 内转物流通过主键查询车皮装车作业信息
      * 内转物流通过主键查询车皮装车作业信息
      *
      *

+ 5 - 0
src/main/java/com/steerinfo/dil/feign/WmshBoundFeign.java

@@ -23,4 +23,9 @@ public interface WmshBoundFeign {
 
 
     @PostMapping("api/v1/wmsh/wmshoutboundresults/addResult")
     @PostMapping("api/v1/wmsh/wmshoutboundresults/addResult")
     Map<String, Object> addResult(@RequestBody(required = false) Map<String,Object> map);
     Map<String, Object> addResult(@RequestBody(required = false) Map<String,Object> map);
+
+
+
+    @PostMapping("api/v1/wmsh/wmshgridmaterials/clearWmshGridMaterial")
+    Map<String, Object> clearWmshGridMaterial(@RequestBody(required = false) Map<String,Object> map);
 }
 }

+ 9 - 0
src/main/java/com/steerinfo/dil/mapper/TmstrainLoadingResultMapper.java

@@ -54,6 +54,9 @@ public interface TmstrainLoadingResultMapper extends IBaseMapper<TmstrainLoading
     //通过装车实绩主键查询关联的物资信息与车牌号
     //通过装车实绩主键查询关联的物资信息与车牌号
     List<Map<String, Object>> getMaterialAndCarByLoadingId(Map<String, Object> map);
     List<Map<String, Object>> getMaterialAndCarByLoadingId(Map<String, Object> map);
 
 
+    //根据采购订单号查找批次id
+    List<Map<String,Object>> getBatchInfocatoryByNo(String purchaseNo);
+
     //通过汽运总实绩ID查询装车中间表
     //通过汽运总实绩ID查询装车中间表
     Integer getTrainTruckIdByTruckTotalId(BigDecimal resultTotalId);
     Integer getTrainTruckIdByTruckTotalId(BigDecimal resultTotalId);
 
 
@@ -84,6 +87,7 @@ public interface TmstrainLoadingResultMapper extends IBaseMapper<TmstrainLoading
     //国产矿查询采购订单号
     //国产矿查询采购订单号
     List<Map<String,Object>> getPurchaseOrderList(Map<String,Object> map);
     List<Map<String,Object>> getPurchaseOrderList(Map<String,Object> map);
 
 
+<<<<<<< HEAD
     //进口矿查询采购订单号
     //进口矿查询采购订单号
     List<Map<String,Object>> getPurchaseOrderListForImported(Map<String,Object> map);
     List<Map<String,Object>> getPurchaseOrderListForImported(Map<String,Object> map);
 
 
@@ -92,4 +96,9 @@ public interface TmstrainLoadingResultMapper extends IBaseMapper<TmstrainLoading
 
 
     //进口矿查询分割符
     //进口矿查询分割符
     List<String> findSplitsForImported();
     List<String> findSplitsForImported();
+=======
+    BigDecimal getPortIdByPortName(String portName);
+
+    BigDecimal getGridIdByPortAndBatch(Map<String, Object> map);
+>>>>>>> 2215184b6872cb72965fc471b6600442cbc11894
 }
 }

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

@@ -64,4 +64,6 @@ public interface ITmstrainLoadingResultService{
 
 
     //根据物资名和外轮船名查询采购订单号
     //根据物资名和外轮船名查询采购订单号
     List<Map<String,Object>> getPurchaseOrderList(Map<String,Object> map);
     List<Map<String,Object>> getPurchaseOrderList(Map<String,Object> map);
+
+    int addWarehouseOutResult(Map<String, Object> map);
 }
 }

+ 50 - 9
src/main/java/com/steerinfo/dil/service/impl/TmstrainLoadingResultServiceImpl.java

@@ -388,19 +388,30 @@ public class TmstrainLoadingResultServiceImpl implements ITmstrainLoadingResultS
 
 
     /**
     /**
      * 添加港存库出库实绩
      * 添加港存库出库实绩
-     * @param tmstrainLoadingResult
+     * @param map2
      * @param batchId
      * @param batchId
      */
      */
-    public void addOutWarehouse(TmstrainLoadingResult tmstrainLoadingResult, BigDecimal batchId){
+    public int addOutWarehouse(Map<String,Object> map2, BigDecimal batchId){
         Map<String, Object> map = new HashMap<>();
         Map<String, Object> map = new HashMap<>();
-        map.put("isClean",tmstrainLoadingResult.getResultIsclear());
-        map.put("resultTonnage", tmstrainLoadingResult.getResultBillableTonnage());
+        map.put("isClean",map2.get("isClean"));
+        map.put("resultMaterialNumber",map2.get("resultTonnage"));
         map.put("batchId", batchId);
         map.put("batchId", batchId);
-        //通过发站查询发站的所属港口
-        BigDecimal portId = tmstrainLoadingResultMapper.getPortIdBySendStationId(tmstrainLoadingResult.getSendStationId());
-        map.put("downSwimPortId", portId);
-        map.put("port", portId);
-        wmshBoundFeign.addResult(map);
+        //通过港口名称查找港口id
+        BigDecimal portId = tmstrainLoadingResultMapper.getPortIdByPortName((String) map2.get("portName"));
+        map.put("portId", portId);
+        //根据港口和批次查找唯一的港存库id
+        BigDecimal gridId = tmstrainLoadingResultMapper.getGridIdByPortAndBatch(map);
+        map.put("gmId",gridId);
+        if (map2.get("isClean").equals("清场")){
+            wmshBoundFeign.clearWmshGridMaterial(map);
+        }
+        else {
+            Map<String, Object> stringObjectMap = wmshBoundFeign.addResult(map);
+            if (!stringObjectMap.equals("")||stringObjectMap!=null){
+               return  -1;
+            }
+        }
+        return  1;
     }
     }
 
 
     /**
     /**
@@ -648,4 +659,34 @@ public class TmstrainLoadingResultServiceImpl implements ITmstrainLoadingResultS
     public List<Map<String, Object>> getPurchaseOrderList(Map<String, Object> map) {
     public List<Map<String, Object>> getPurchaseOrderList(Map<String, Object> map) {
         return tmstrainLoadingResultMapper.getPurchaseOrderList(map);
         return tmstrainLoadingResultMapper.getPurchaseOrderList(map);
     }
     }
+
+
+    //万州港出库
+    @Override
+    @Transactional
+    public int addWarehouseOutResult(Map<String, Object> map) {
+        //根据车皮号计算标重
+        BigDecimal resultType =DataChange.dataToBigDecimal(map.get("resultType"));
+        List<Map<String,Object>> wagonList =(List<Map<String, Object>>) map.get("wagonList");
+        for (Map<String,Object> wagon:wagonList){
+            //根据车皮号计算车皮标重
+            String wagonNo =(String) wagon.get("wagonNo");
+            //根据采购订单号查找批次
+            String purchaseNo =(String) map.get("purchaseNo");
+            BigDecimal batchId=null;
+            List<Map<String, Object>> batchInfocatoryByNo = tmstrainLoadingResultMapper.getBatchInfocatoryByNo(purchaseNo);
+            if (batchInfocatoryByNo.size() >= 1){
+                Map<String, Object> map1 = batchInfocatoryByNo.get(0);
+                 batchId =DataChange.dataToBigDecimal(map1.get("batchId"));
+            }
+            int wagonWeight = calculateWagonWeight(wagonNo);
+            map.put("resultTonnage",wagonWeight);
+            //如果订单类型为采购进口矿火运(万州港---达州 || 万州港--老区轨道衡) 添加总车皮标重传输给港存库
+            if(resultType.intValue() == 1){
+                int i = addOutWarehouse(map, batchId);
+                return i;
+            }
+        }
+        return 0;
+    }
 }
 }

+ 51 - 23
src/main/resources/com/steerinfo/dil/mapper/TmstrainLoadingResultMapper.xml

@@ -908,30 +908,34 @@
   <select id="getWagonNo" resultType="java.util.LinkedHashMap" parameterType="java.util.Map">
   <select id="getWagonNo" resultType="java.util.LinkedHashMap" parameterType="java.util.Map">
     select *
     select *
     from (
     from (
-    select TLR.RESULT_WAGON_NO     "resultWagonNo",
-    TLR.RESULT_ID           "resultId",
-    TLR.UNLOADING_POINT_ID    "unloadingPointId",
-    RW.WAREHOUSE_NAME         "warehouseName",
-    to_char(TLR.RESULT_LOADING_DATE ,'yyyy-mm-dd') "resultLoadingDate",
-    APO.PURCHASE_ORDER_NO   "purchaseOrderNo",
-    RM.MATERIAL_NAME        "materialName",
-    APO.PURCHASE_ORDER_ID     "purchaseOrderId",
+    SELECT
+    TLR.RESULT_WAGON_NO "resultWagonNo",
+    TLR.RESULT_ID "resultId",
+    TLR.UNLOADING_POINT_ID "unloadingPointId",
+    RW.WAREHOUSE_NAME "warehouseName",
+    to_char( TLR.RESULT_LOADING_DATE, 'yyyy-mm-dd' ) "resultLoadingDate",
+    APO.PURCHASE_ORDER_NO "purchaseOrderNo",
+    RM.MATERIAL_NAME "materialName",
+    APO.PURCHASE_ORDER_ID "purchaseOrderId",
     DBI.INFACTORY_SHIP_NAME "infactoryShipName",
     DBI.INFACTORY_SHIP_NAME "infactoryShipName",
-    DB.RESULT_FOREIGN_SHIP_NAME "resultForeignShipName"
-    from TMSTRAIN_LOADING_RESULT TLR
-    left join AMS_PURCHASE_ORDER APO
-    on APO.PURCHASE_ORDER_ID = TLR.PURCHASE_ORDER_RAIL_PLAN_ID
-    left join DIL_BATCH DB
-    on DB.BATCH_ID = APO.BATCH_ID
-    left join DIL_BATCH_INFACOTRY DBI
-    on DBI.BATCH_ID = DB.BATCH_ID
-    left join RMS_MATERIAL RM
-    on DB.MATERIAL_ID = RM.MATERIAL_ID
-    left join RMS_WAREHOUSE   RW
-    on RW.WAREHOUSE_ID = TLR.UNLOADING_POINT_ID
-    where TLR.DELETED not in (2, 1)
-    and TLR.RESULT_TYPE = #{resultType}
-    and TLR.PURCHASE_ORDER_RAIL_PLAN_ID is not null
+    DB.RESULT_FOREIGN_SHIP_NAME "resultForeignShipName",
+    TWR.RESULT_NET_WEIGHT "resultNetWeight",
+    TWR.RESULT_GROSS_WEIGHT "grossWeight",
+    TWR.RESULT_TARE_WEIGHT "tareWeight"
+    FROM
+    TMSTRAIN_LOADING_RESULT TLR
+    LEFT JOIN AMS_PURCHASE_ORDER APO ON APO.PURCHASE_ORDER_ID = TLR.PURCHASE_ORDER_RAIL_PLAN_ID
+    LEFT JOIN DIL_BATCH DB ON DB.BATCH_ID = APO.BATCH_ID
+    LEFT JOIN DIL_BATCH_INFACOTRY DBI ON DBI.BATCH_ID = DB.BATCH_ID
+    LEFT JOIN RMS_MATERIAL RM ON DB.MATERIAL_ID = RM.MATERIAL_ID
+    LEFT JOIN RMS_WAREHOUSE RW ON RW.WAREHOUSE_ID = TLR.UNLOADING_POINT_ID
+    LEFT JOIN TMSTRAIN_TOTAL_RESULT TTR ON TTR.LOADING_ID = TLR.RESULT_ID
+    LEFT JOIN TMSTRAIN_WEIGHT_RESULT TWR ON TWR.RESULT_TOTAL_ID = TTR.TOTAL_RESULT_ID
+    WHERE
+    TLR.DELETED NOT IN ( 2, 1 )
+    AND TLR.RESULT_TYPE = #{resultType}
+    AND TLR.PURCHASE_ORDER_RAIL_PLAN_ID IS NOT NULL
+    AND TWR.RESULT_NET_WEIGHT IS NOT NULL
     <if test="wagon!=null and wagon!=''.toString()">
     <if test="wagon!=null and wagon!=''.toString()">
       and TLR.RESULT_WAGON_NO like concat('%',concat(#{wagon},'%'))
       and TLR.RESULT_WAGON_NO like concat('%',concat(#{wagon},'%'))
     </if>
     </if>
@@ -1208,6 +1212,17 @@
     where APO.PURCHASE_ORDER_NO = #{purchaseOrderNo}
     where APO.PURCHASE_ORDER_NO = #{purchaseOrderNo}
   </select>
   </select>
 
 
+
+  <select id="getBatchInfocatoryByNo" parameterType="java.lang.String" resultType="java.util.Map">
+     select  DBI.BATCH_INFACOTRY_ID "batchId"
+     from AMS_PURCHASE_ORDER APO
+     LEFT JOIN DIL_BATCH DB
+     ON APO.BATCH_ID=DB.BATCH_ID
+     LEFT JOIN DIL_BATCH_INFACOTRY DBI
+     ON DB.BATCH_ID=DBI.BATCH_ID
+     WHERE  APO.PURCHASE_ORDER_NO = #{purchaseNo}
+  </select>
+
   <!-- 通过订单No查询订单Id -->
   <!-- 通过订单No查询订单Id -->
   <select id="getPurchaseOrderIdByPurOrderNo" resultType="java.math.BigDecimal">
   <select id="getPurchaseOrderIdByPurOrderNo" resultType="java.math.BigDecimal">
     select APO.PURCHASE_ORDER_ID
     select APO.PURCHASE_ORDER_ID
@@ -1375,6 +1390,7 @@
     ORDER BY apo.PURCHASE_ORDER_DATE DESC
     ORDER BY apo.PURCHASE_ORDER_DATE DESC
     )
     )
   </select>
   </select>
+<<<<<<< HEAD
 
 
 <!--  进口矿查询采购订单号-->
 <!--  进口矿查询采购订单号-->
   <select id="getPurchaseOrderListForImported" parameterType="java.util.Map" resultType="java.util.Map">
   <select id="getPurchaseOrderListForImported" parameterType="java.util.Map" resultType="java.util.Map">
@@ -1435,4 +1451,16 @@
     select SPLIT_WORDS from TMSTRAIN_SPLIT where SPLIT_TYPE='进口矿'
     select SPLIT_WORDS from TMSTRAIN_SPLIT where SPLIT_TYPE='进口矿'
   </select>
   </select>
 
 
+=======
+  <select id="getPortIdByPortName" resultType="java.math.BigDecimal" parameterType="java.lang.String">
+    select  RP.PORT_ID "portId"
+    from RMS_PORT RP
+    WHERE  RP.PORT_NAME = #{portName}
+  </select>
+  <select id="getGridIdByPortAndBatch" resultType="java.math.BigDecimal" parameterType="java.util.Map">
+    select WGM.GM_ID "gmId"
+    from WMSH_GRID_MATERIAL WGM
+   WHERE  WGM.PORT_ID=#{portId} AND WGM.BATCH_ID = #{batchId}
+  </select>
+>>>>>>> 2215184b6872cb72965fc471b6600442cbc11894
 </mapper>
 </mapper>