Sfoglia il codice sorgente

修改入库作业和新增预留作业

胡半仙 3 anni fa
parent
commit
198e12bfd9

+ 54 - 0
src/main/java/com/steerinfo/dil/controller/WmsInboundResultController.java

@@ -120,6 +120,54 @@ public class WmsInboundResultController extends BaseRESTfulController {
     }
 
 
+    /**
+     * 展示入库实绩
+     * @param mapValue
+     * @param apiId
+     * @param pageNum
+     * @param pageSize
+     * @return
+     */
+    @PostMapping("/getWmsReservedResult")
+    @ApiOperation(value = "展示预留入库实绩信息")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "apiId", value = "371", required = false, dataType = "BigDecimal"),
+    })
+    public RESTfulResult getWmsReservedResult(@RequestBody(required = false) Map<String, Object> mapValue,
+                                             Integer apiId,
+                                             Integer pageNum,
+                                             Integer pageSize,
+                                             String con) {
+        if(con != null){
+            if(!"undefined".equals(con)){
+                String index = "get_wms_inboundresult";
+                return success(esFeign.getConResult(mapValue,index,apiId,pageNum,pageSize,con));
+            }
+        }
+        List<Map<String,Object>>inboundResultList = null;
+        if(mapValue.size() == 0){
+            //将查询结果存入索引中
+            inboundResultList = wmsInboundResultServiceImpl.getWmsReservedResult(mapValue);
+            Map<String, Object> inboundResultMap = new HashMap<>();
+            //添加索引
+            inboundResultMap.put("index","get_wms_inboundresultse");
+            //添加ID
+            inboundResultMap.put("indexId","inboundresultId");
+            inboundResultList.add(inboundResultMap);
+            //新建索引
+            esFeign.insertIndex(inboundResultList);
+            //删除
+            inboundResultList.remove(inboundResultList.size() -1);
+        }
+        if(inboundResultList == null) {
+            inboundResultList = wmsInboundResultServiceImpl.getWmsReservedResult(mapValue);
+        }
+        /*分页*/
+        PageHelper.startPage(pageNum, pageSize);
+        List<Map<String,Object>> columnList = wmsInboundResultServiceImpl.getWmsReservedResult(mapValue);
+        PageListAdd pageList = columnDataUtil.tableColumnData(apiId,inboundResultList,columnList);
+        return success(pageList);
+    }
     /**
      * 新增入库实绩
      *
@@ -481,5 +529,11 @@ public class WmsInboundResultController extends BaseRESTfulController {
         return success(pageList);
 
     }
+//    根据对应的入库实绩id修改入库状态为预留
+    @PostMapping("/changeReserved")
+    @ApiOperation(value = "根据对应的入库实绩id修改入库状态为预留")
+    public int changeReserved(@RequestBody(required = false) List<Map<String, Object>> mapList) {
+        return wmsInboundResultServiceImpl.changeReserved(mapList);
+    }
 }
 

+ 1 - 0
src/main/java/com/steerinfo/dil/mapper/WmspInboundResultMapper.java

@@ -19,6 +19,7 @@ public interface WmspInboundResultMapper extends IBaseMapper<WmspInboundResult,
      * @return
      */
     List<Map<String, Object>> selectWmsInboundResult(Map<String, Object> mapValue);
+    List<Map<String, Object>> selectWmsReservedResult(Map<String, Object> mapValue);
     @Select("select seq_WMSP_INBOUND_RESULT.nextval from dual")
     BigDecimal getCount();
 

+ 4 - 1
src/main/java/com/steerinfo/dil/service/IWmsInboundResultService.java

@@ -18,6 +18,8 @@ public interface IWmsInboundResultService {
      */
     List<Map<String, Object>> getInboundResult(Map<String, Object> mapValue);
 
+    List<Map<String, Object>> getWmsReservedResult(Map<String, Object> mapValue);
+
     List<Map<String,Object>> getIvboundMaterial(Map<String, Object> mapValue);
 
     /**
@@ -65,5 +67,6 @@ public interface IWmsInboundResultService {
 
 //    创建一个方法根据出厂的resultId修改对应的入库实绩和仓储网格Id
     int updateInboundGridStatus(Integer resultId);
-
+//    根据对应的入库实绩id修改入库状态为预留
+    int changeReserved(List<Map<String, Object>> mapList);
 }

+ 47 - 1
src/main/java/com/steerinfo/dil/service/impl/WmsInboundResultServiceImpl.java

@@ -48,7 +48,27 @@ public class WmsInboundResultServiceImpl implements IWmsInboundResultService {
         }
         return maps;
     }
-
+    /**
+     * 1.展示入库实绩所有信息
+     * @param mapValue
+     * @return
+     */
+    @Override
+    public List<Map<String,Object>> getWmsReservedResult(Map<String, Object> mapValue){
+        List<Map<String, Object>> maps = wmspInboundResultMapper.selectWmsReservedResult(mapValue);
+        for (Map<String,Object>map:maps
+        ) {
+            BigDecimal isComplete = (BigDecimal) map.get("isComplete");
+            if(isComplete.intValue() == 1){
+                map.remove("isComplete");
+                map.put("isComplete","无异常,正常入库");
+            }else{
+                map.remove("isComplete");
+                map.put("isComplete","异常入库");
+            }
+        }
+        return maps;
+    }
     /**
      * 2.展示退库实绩所有信息
      * @param mapValue
@@ -203,4 +223,30 @@ public class WmsInboundResultServiceImpl implements IWmsInboundResultService {
         }
         return i;
     }
+
+//    根据对应的入库实绩id修改入库状态为预留
+
+    @Override
+    public int changeReserved(List<Map<String, Object>> mapList) {
+        int i=0;
+//        对mapList遍历,找到所有的入库id
+        for (Map<String,Object> map:mapList){
+//            找到状态,判断其是属于入库转预留还是预留转入库,0表示入库转预留,1表示预留转入库
+            Integer status= (Integer) map.get("status");
+            Long inboundIds= (Long) map.get("inboundId");
+            BigDecimal inboundId = new BigDecimal(inboundIds) ;
+//            创建入库实体类
+            WmspInboundResult wmspInboundResult = new WmspInboundResult();
+            wmspInboundResult.setInboundId(inboundId);
+            if (status == 0){
+//            将入库状态改为预留状态
+                wmspInboundResult.setResultStatus(new BigDecimal(2));
+            }else if (status == 1){
+                wmspInboundResult.setResultStatus(new BigDecimal(1));
+            }
+
+            i+= wmspInboundResultMapper.updateByPrimaryKeySelective(wmspInboundResult);
+        }
+        return i;
+    }
 }

+ 6 - 3
src/main/resources/com/steerinfo/dil/mapper/WmspGridMaterialMapper.xml

@@ -444,7 +444,7 @@
     on  RM.MATERIAL_ID=RMS.MATERIAL_ID
     left join RMS_MATERIAL_TYPE RMT
     on RM.MATERIAL_TYPE_ID=RMT.MATERIAL_TYPE_ID
-    where WGM.DELETED = 0
+    where WGM.DELETED = 0 order by WGM.INSERT_TIME DESC
     )
     <where>
       <if test="warehouseName != null">
@@ -721,14 +721,17 @@
     FROM WMSP_GRID_MATERIAL WGM
 --                 仓储网格表
            LEFT JOIN RMS_PWAREHOUSE_GRID RPG
-                     ON RPG.GRID_ID = WGM.GRID_ID
+                ON RPG.GRID_ID = WGM.GRID_ID
+--             关联入库实绩表
+            LEFT JOIN WMSP_INBOUND_RESULT WIR
+                ON WIR.GRID_ID = WGM.GRID_ID
 --         物资钢材表
            LEFT JOIN  RMS_MATERIAL_STEEL RMS
                       ON WGM.MATERIAL_ID = RMS.MATERIAL_STEEL_ID
 --         物资表
            LEFT JOIN RMS_MATERIAL RM
                      ON RMS.MATERIAL_ID = RM.MATERIAL_ID
-           WHERE WGM.DELETED = 0  AND RPG.WAREHOUSE_ID = #{warehouseId} AND RM.MATERIAL_CODE = #{materialCode}
+           WHERE WGM.DELETED = 0 AND WIR.RESULT_STATUS =1  AND RPG.WAREHOUSE_ID = #{warehouseId} AND RM.MATERIAL_CODE = #{materialCode}
   </select>
   <select id="getMaterialIds" resultType="java.math.BigDecimal">
     SELECT DISTINCT

+ 127 - 0
src/main/resources/com/steerinfo/dil/mapper/WmspInboundResultMapper.xml

@@ -634,6 +634,133 @@
         ON RS.STACKING_ID = RPG.STACKING_ID
         where wir.inbound_type = 0
         and wir.result_deleted = 0
+        and wir.RESULT_STATUS != 2
+        order by wir.inbound_time desc
+        <where>
+            <if test="INBOUND_NUMBER != null">
+                and "INBOUND_NUMBER" in
+                <foreach collection="INBOUND_NUMBER" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="WAREHOUSE_NAME != null">
+                and "WAREHOUSE_NAME" in
+                <foreach collection="WAREHOUSE_NAME" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="STACKING_NO != null">
+                and "STACKING_NO" in
+                <foreach collection="STACKING_NO" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="GRID_GRADATION_NUMBER != null">
+                and "GRID_GRADATION_NUMBER" in
+                <foreach collection="GRID_GRADATION_NUMBER" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="FURNACE_NUMBER != null">
+                and "FURNACE_NUMBER" in
+                <foreach collection="FURNACE_NUMBER" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="MATERIAL_CODE != null">
+                and "MATERIAL_CODE" in
+                <foreach collection="MATERIAL_CODE" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="MATERIAL_NAME != null">
+                and "MATERIAL_NAME" in
+                <foreach collection="MATERIAL_NAME" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="THEORETICAL_WEIGHT != null">
+                and "THEORETICAL_WEIGHT" in
+                <foreach collection="THEORETICAL_WEIGHT" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="BUNDLE_WEIGHT != null">
+                and "BUNDLE_WEIGHT" in
+                <foreach collection="BUNDLE_WEIGHT" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="MEASURE_NAME != null">
+                and "MEASURE_NAME" in
+                <foreach collection="MEASURE_NAME" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="PRODUCTION_DATE != null">
+                and "PRODUCTION_DATE" in
+                <foreach collection="PRODUCTION_DATE" item="item" open="(" separator="," close=")">
+                    to_date('${item}','yyyy-mm-dd hh24:mi:ss')
+                </foreach>
+            </if>
+            <if test="APERSONNEL_NAME != null">
+                and "APERSONNEL_NAME" in
+                <foreach collection="APERSONNEL_NAME" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="BPERSONNEL_NAME != null">
+                and "BPERSONNEL_NAME" in
+                <foreach collection="BPERSONNEL_NAME" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="DPERSONNEL_NAME != null">
+                and "DPERSONNEL_NAME" in
+                <foreach collection="DPERSONNEL_NAME" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="SHIPPER_BRANCH_FACTORY != null">
+                and "SHIPPER_BRANCH_FACTORY" in
+                <foreach collection="SHIPPER_BRANCH_FACTORY" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="PERSONNEL_WORKSHOP != null">
+                and "PERSONNEL_WORKSHOP" in
+                <foreach collection="PERSONNEL_WORKSHOP" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="INBOUND_TIME != null">
+                and "INBOUND_TIME" in
+                <foreach collection="INBOUND_TIME" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+        </where>
+        <include refid="orderBy"></include>
+    </select>
+    <select id="selectWmsReservedResult" resultType="java.util.LinkedHashMap">
+        select
+        wir.INBOUND_ID "inboundId",
+        wir.inbound_number "inboundNo",
+        wir.inbound_time "inboundTime",
+        wir.inbound_iscomplete "isComplete",
+        RW.WAREHOUSE_NAME "warehouseName",
+        RS.STACKING_NO "stackingNo",
+        RPG.GRID_GRADATION_NUMBER "gridGradationNumber"
+        from wmsp_inbound_result wir
+        left join RMS_PWAREHOUSE_GRID rpg
+        ON RPG.GRID_ID = wir.GRID_ID
+        LEFT JOIN RMS_WAREHOUSE RW
+        ON RW.WAREHOUSE_ID = rpg.WAREHOUSE_ID
+        LEFT JOIN RMS_STACKING RS
+        ON RS.STACKING_ID = RPG.STACKING_ID
+        where wir.inbound_type = 0
+        and wir.result_deleted = 0
+        and wir.RESULT_STATUS = 2
         order by wir.inbound_time desc
         <where>
             <if test="INBOUND_NUMBER != null">