Browse Source

Merge branch 'master' of https://git.steerinfo.com/luobang/DIL-DAZHOU-WMS2

zhouzh 3 years ago
parent
commit
61de8f55d1

+ 3 - 2
src/main/java/com/steerinfo/dil/controller/WmsInboundResultController.java

@@ -77,10 +77,10 @@ public class WmsInboundResultController extends BaseRESTfulController {
      * @param pageSize
      * @return
      */
-    @PostMapping("/getWmsInboundResult2")
+    @PostMapping("/getWmsInboundResult")
     @ApiOperation(value = "展示入库实绩信息")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "apiId", value = "90", required = false, dataType = "BigDecimal"),
+            @ApiImplicitParam(name = "apiId", value = "371", required = false, dataType = "BigDecimal"),
     })
     public RESTfulResult getWmsInboundResult(@RequestBody(required = false) Map<String, Object> mapValue,
                                              Integer apiId,
@@ -179,6 +179,7 @@ public class WmsInboundResultController extends BaseRESTfulController {
                 for (int i=0;i<mapList.size();i++){
 
                     Map<String,Object> item=mapList.get(i);
+
                     //获得一个默认的网格  解释:目前还没有设计出来网格的结构 没有做默认为 第一库、第一月台、第一垛位、第一行、第一列 \推送信息给行车工、让他们抢单代码备注了
                     BigDecimal houseGrid = rmsPwarehouseGridService.selectGrid(mapList.size()-1, personnelWorkshopid);
                     //创建一个入库作业实绩

+ 13 - 24
src/main/java/com/steerinfo/dil/controller/WmspGridMaterialController.java

@@ -70,31 +70,10 @@ public class WmspGridMaterialController extends BaseRESTfulController {
                                                 Integer pageSize,
                                                 Integer apiId,
                                                 String con) {
-        if (con != null) {
-            if (!"undefined".equals(con)) {
-                String index = "get_gird_materiallist";//设置要查询的索引名称
-                return success(esFeign.getConResult(mapVal, index, apiId, pageNum, pageSize, con));//获取查询结果
-            }
-        }
 
-        List<Map<String, Object>> libaryInBoundList = null;
-        if (mapVal.size() == 0) {
-            //将查询结果存入索引中
-            libaryInBoundList = wmspGridMaterialService.selectGridMaterial(mapVal);
-            Map<String, Object> map1 = new HashMap<>();
-            //添加索引
-            map1.put("index", "get_gird_materiallist");
-            //添加id
-            map1.put("indexId", "GridMaterialListId");
-            libaryInBoundList.add(map1);
-            //新建索引
-            esFeign.insertIndex(libaryInBoundList);
-            //删除
-            libaryInBoundList.remove(libaryInBoundList.size() - 1);
-        }
-        if (libaryInBoundList == null) {
-            libaryInBoundList = wmspGridMaterialService.selectGridMaterial(mapVal);
-        }
+
+
+        List<Map<String, Object>>   libaryInBoundList = wmspGridMaterialService.selectGridMaterial(mapVal);
         PageHelper.startPage(pageNum, pageSize);
         List<Map<String, Object>> columnList = wmspGridMaterialService.selectGridMaterial(mapVal);
         PageListAdd pageList = columnDataUtil.tableColumnData(apiId, libaryInBoundList, columnList);
@@ -213,6 +192,16 @@ public class WmspGridMaterialController extends BaseRESTfulController {
         PageListAdd pageList = columnDataUtil.tableColumnData(apiId,columnList,mapList);
         return success(pageList);
     }
+
+    //修改实时库存数据,针对于倒垛
+    @ApiImplicitParam("修改实时库存数据,针对于倒垛")
+    @PostMapping(value = "/updateWmspGridMaterialForRestack")
+    public RESTfulResult updateWmspGridMaterialForRestack(@RequestBody Map<String,Object> map) {
+        int i = wmspGridMaterialService.updateWmspGridMaterial(map);
+        return success(i);
+    }
+
+
 }
 
 

+ 3 - 28
src/main/java/com/steerinfo/dil/controller/WmspIvboundMakeResultController.java

@@ -91,7 +91,6 @@ public class WmspIvboundMakeResultController extends BaseRESTfulController {
      * @param pageNum
      * @param pageSize
      * @param apiId
-     * @param con
      * @return
      */
     @ApiImplicitParam("api:372")
@@ -99,34 +98,10 @@ public class WmspIvboundMakeResultController extends BaseRESTfulController {
     public RESTfulResult getIvboundMakeResultList(@RequestBody(required = false) Map<String, Object> mapVal,
                                                 Integer pageNum,
                                                 Integer pageSize,
-                                                Integer apiId,
-                                                String con) {
+                                                Integer apiId
+                                                ) {
 
-        if (con != null) {
-            if (!"undefined".equals(con)) {
-                String index = "get_ivbound_list";//设置要查询的索引名称
-                return success(esFeign.getConResult(mapVal, index, apiId, pageNum, pageSize, con));//获取查询结果
-            }
-        }
-
-        List<Map<String, Object>> libaryInBoundList = null;
-        if (mapVal.size() == 0) {
-            //将查询结果存入索引中
-            libaryInBoundList = wmspIvboundMakeResultService.getIvboundMakeResultList(mapVal);
-            Map<String, Object> map1 = new HashMap<>();
-            //添加索引
-            map1.put("index", "get_ivbound_list");
-            //添加id
-            map1.put("indexId", "resultId");
-            libaryInBoundList.add(map1);
-            //新建索引
-            esFeign.insertIndex(libaryInBoundList);
-            //删除
-            libaryInBoundList.remove(libaryInBoundList.size() - 1);
-        }
-        if (libaryInBoundList == null) {
-            libaryInBoundList = wmspIvboundMakeResultService.getIvboundMakeResultList(mapVal);
-        }
+        List<Map<String,Object>>libaryInBoundList = wmspIvboundMakeResultService.getIvboundMakeResultList(mapVal);
         PageHelper.startPage(pageNum, pageSize);
         List<Map<String, Object>> columnList = wmspIvboundMakeResultService.getIvboundMakeResultList(mapVal);
         PageListAdd pageList = columnDataUtil.tableColumnData(apiId, libaryInBoundList, columnList);

+ 1 - 5
src/main/java/com/steerinfo/dil/controller/WmspRestackMakeResultController.java

@@ -193,9 +193,7 @@ public class WmspRestackMakeResultController extends BaseRESTfulController {
         PageHelper.startPage(pageNum, pageSize);
         //分页查询数据
         List<Map<String, Object>> columnList = wmspRestackMakeResultService.selectRestackForPc(mapVal);
-
         PageListAdd data = columnDataUtil.tableColumnData(apiId, list, columnList);
-
         return success(data);
     }
     @ApiOperation(value="展示已下发倒垛单", notes="分页查询")
@@ -333,10 +331,8 @@ public class WmspRestackMakeResultController extends BaseRESTfulController {
 
     //PDA根据仓库id查找倒垛单
     @GetMapping("/selectRestackByWarehouseIds")
-    public  RESTfulResult selectRestackByWarehouseIds(@RequestParam(required = true) String warehouseid){
-
+    public  RESTfulResult selectRestackByWarehouseIds(@RequestParam(name = "warehouseid") String warehouseid){
         List<Map<String,Object>> list=wmspRestackMakeResultService.selectRestackByWarehouseIds( warehouseid);
-
         return  success(list);
     }
 

+ 12 - 0
src/main/java/com/steerinfo/dil/mapper/RmsPwarehouseGridMapper.java

@@ -2,10 +2,12 @@ package com.steerinfo.dil.mapper;
 
 import com.steerinfo.dil.model.RmsPwarehouseGrid;
 import com.steerinfo.framework.mapper.IBaseMapper;
+import io.swagger.models.auth.In;
 import org.apache.ibatis.annotations.MapKey;
 import org.apache.ibatis.annotations.Mapper;
 
 import java.math.BigDecimal;
+import java.util.List;
 import java.util.Map;
 
 @Mapper
@@ -17,4 +19,14 @@ public interface RmsPwarehouseGridMapper extends IBaseMapper<RmsPwarehouseGrid,
     BigDecimal selectMaxId();
     BigDecimal selectGridId(Map<String, Object> map);
 
+    List<Map<String, Object>> getStackingId(Map<String,Object> map);
+
+    Integer getStackingStatus(BigDecimal stackingId);
+
+    Integer getCountMaterial(BigDecimal stackingId);
+
+    Integer getMaxStackingLayers(BigDecimal stackingId);
+
+    List<Map<String,Object>> getNullStackingId(Map<String,Object>map);
+
 }

+ 9 - 1
src/main/java/com/steerinfo/dil/mapper/WmspGridMaterialMapper.java

@@ -40,7 +40,15 @@ public interface WmspGridMaterialMapper extends IBaseMapper<WmspGridMaterial, Bi
   //根据物资唯一编码查询实时库存id
   List<Map<String,Object>> selectGridIdByMaterialCode(Map<String,Object> map);
 
-    Map<String, Object> getReboundScanResultByResultMaterial(@Param("material") String material, @Param("materialOnlyCode")String materialOnlyCode);
+  Map<String, Object> getReboundScanResultByResultMaterial(@Param("material") String material, @Param("materialOnlyCode")String materialOnlyCode);
 
   List<Map<String, Object>> getMaterialTypeList(String warehouseid, BigDecimal stackingId, BigDecimal gradtionNumber);
+
+  //根据物资唯一编码和网格id确定实时库存主键
+  Map<String,Object> selectGmIdByMaterialOnlyCode(@Param("GirdId")BigDecimal GirdId);
+
+  //根据物资唯一编码查找仓储网格原来的主键id
+  BigDecimal slelectGridIdByMaterialOnlyCode(@Param("materialOnlyCode")String materialOnlyCode);
+
+
 }

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

@@ -52,4 +52,7 @@ public interface WmspRestackMakeResultMapper extends IBaseMapper<WmspRestackMake
     List<Map<String, Object>> selectRestackByWarehouseIds(String warehouseid);
 
     int getResultLoaderAudit(String restackMake, String context);
+
+    //查找扫描数量和已扫描数量
+    Map<String,Object> getResultLoaderAuditNo(Map<String,Object> map);
 }

+ 3 - 0
src/main/java/com/steerinfo/dil/service/IRmsPwarehouseGridService.java

@@ -26,6 +26,9 @@ public interface IRmsPwarehouseGridService {
     int updateByPrimaryKeySelective(RmsPwarehouseGrid rmsPwarehouseGrid);
     BigDecimal selectMaxId();
     BigDecimal getGridId(Map<String,Object>map);
+
+    //根据优先级和启用状态以及垛位上的物资ID来确定物资即将入库哪个垛位
+    Map<String, Object> getStackingId(Map<String, Object> map);
     //分配网格
     BigDecimal selectGrid(Integer size,BigDecimal warehouseId);
 }

+ 3 - 0
src/main/java/com/steerinfo/dil/service/IWmspGridMaterialService.java

@@ -48,4 +48,7 @@ public interface IWmspGridMaterialService  {
     void initInsertWmspGridMaterial(Map<String, Object> item, BigDecimal houseGrid);
 
     Map<String, Object> getReboundScanResultByResultMaterial(String material ,String materialOnlyCode);
+
+    //修改实时库存
+   int updateWmspGridMaterial(Map<String,Object> map);
 }

+ 69 - 0
src/main/java/com/steerinfo/dil/service/impl/RmsPwarehouseGridServiceImpl.java

@@ -2,10 +2,12 @@ package com.steerinfo.dil.service.impl;
 import com.steerinfo.dil.mapper.RmsPwarehouseGridMapper;
 import com.steerinfo.dil.model.RmsPwarehouseGrid;
 import com.steerinfo.dil.service.IRmsPwarehouseGridService;
+import com.steerinfo.dil.util.DataChange;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import java.math.BigDecimal;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -56,6 +58,72 @@ public class RmsPwarehouseGridServiceImpl  implements IRmsPwarehouseGridService
        return rmsPwarehouseGridMapper.selectGridId(map);
     }
 
+    //根据优先级和启用状态以及垛位上的物资ID来确定物资即将入库哪个垛位
+    @Override
+    public Map<String,Object> getStackingId(Map<String, Object> map){
+        //获取入库的物资数量,物资编码
+        Integer materialNum = DataChange.dataToBigDecimal(map.get("materialNum")).intValue();
+        String materialCode = (String)map.get("materialCode");
+        Integer inboundSize = DataChange.dataToBigDecimal(map.get("materialSize")).intValue();
+        //获取入库的仓库
+        BigDecimal warehouseId = DataChange.dataToBigDecimal(map.get("warehouseId"));
+        //根据仓库ID和物资编码查询垛位,以及垛位的启用状态及优先级排序--->查询出垛位
+        List<Map<String,Object>> mapStackList = rmsPwarehouseGridMapper.getStackingId(map);
+        if(mapStackList.size() != 0){
+            int i = 0 ;
+            for (Map<String,Object>stackMap:mapStackList
+                 ) {
+                //获取垛位ID
+                BigDecimal stackingId = DataChange.dataToBigDecimal(stackMap.get("stackingId"));
+                //判断待入库的物资数量是否能放入该垛位-->根据实时库存判断该垛位装了多少物资,根据最大层数判断该垛位最大物资数
+                //已装物资数
+                Integer countMaterial = rmsPwarehouseGridMapper.getCountMaterial(stackingId);
+                //垛位最大层数
+                Integer maxStackingLayer = rmsPwarehouseGridMapper.getMaxStackingLayers(stackingId);
+                //待入库物资数与垛位已存在物资数比较,如果大于则跳出循环继续下一个
+                if((countMaterial + inboundSize)>(maxStackingLayer*24)){
+                    i++;
+                    continue;
+                }
+                Map<String, Object> mapStack = new HashMap<>();
+                mapStack.put("stackingId",stackingId);
+                return mapStack;
+            }
+            //如果i不等于0,则表明没有符合条件的垛位,则去寻找空垛位
+            if(i!=0){
+               return nullStackingId(map);
+            }
+        }
+        else{
+            nullStackingId(map);
+        }
+        return nullStackingId(map);
+    }
+
+    //查找空垛位
+    public Map<String,Object> nullStackingId(Map<String,Object>map){
+        //查找空垛位ID-->物资数量为0的垛位,根据实时库存来查找符合条件的
+        //查找这个仓库的所有垛位
+        List<Map<String,Object>>mapList = rmsPwarehouseGridMapper.getNullStackingId(map);
+        for (Map<String,Object>stackingMap:mapList
+             ) {
+            BigDecimal stackingId = DataChange.dataToBigDecimal(stackingMap.get("stackingId"));
+            //已装物资数
+            Integer countMaterial = rmsPwarehouseGridMapper.getCountMaterial(stackingId);
+            if(countMaterial!=0){
+                continue;
+            }
+            Map<String, Object> mapStack = new HashMap<>();
+            mapStack.put("stackingId",stackingId);
+            return mapStack;
+        }
+        Map<String, Object> nullMap = new HashMap<>();
+        nullMap.put("warn","没有符合条件的垛位");
+        return nullMap;
+    }
+
+
+
     @Override
     public BigDecimal selectGrid(Integer size,BigDecimal warehouseId) {
 
@@ -91,4 +159,5 @@ public class RmsPwarehouseGridServiceImpl  implements IRmsPwarehouseGridService
     }
 
 
+
 }

+ 1 - 25
src/main/java/com/steerinfo/dil/service/impl/RmsStackingServiceImpl.java

@@ -34,31 +34,6 @@ public class RmsStackingServiceImpl  implements IRmsStackingService {
 
     @Autowired
     IMFeign imFeign;
-
-
-//    /**
-//     * 查询垛位物资数/更新垛位
-//     * @return
-//     */
-////    @Scheduled(cron = "1 * * * * ?")
-//    @Override
-//    public Integer selectStacking() {
-//        Map<String, Integer>map1= rmsStackingMapper.selectStacking();
-//        HashMap<String, Integer> map2 = new HashMap<>();
-//        if (map1==null){
-//            map2.put("materialNumber",0);
-//            /*
-//            !!!剩余物资数不能写死
-//             */
-//            map2.put("remainNumber",192);
-//            return rmsStackingMapper.updateRmsStacking(map2);
-//        }
-//        else{
-//
-//            return  rmsStackingMapper.updateRmsStacking(map1);
-//        }
-//    }
-
     /**
      * 计算出放货的垛位
      * @param materialNumber
@@ -153,4 +128,5 @@ public class RmsStackingServiceImpl  implements IRmsStackingService {
       rmsStacking.setStackingStatus(stackingStatus);
       return rmsStackingMapper.updateByPrimaryKeySelective(rmsStacking);
     }
+
 }

+ 75 - 0
src/main/java/com/steerinfo/dil/service/impl/WmspGridMaterialServiceImpl.java

@@ -1,5 +1,7 @@
 package com.steerinfo.dil.service.impl;
 
+import com.steerinfo.dil.mapper.RmsPwarehouseGridMapper;
+import com.steerinfo.dil.mapper.RmsStackingMapper;
 import com.steerinfo.dil.mapper.WmspGridMaterialMapper;
 import com.steerinfo.dil.model.WmspGridMaterial;
 import com.steerinfo.dil.service.IWmspGridMaterialService;
@@ -11,6 +13,7 @@ import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
 import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
@@ -32,6 +35,10 @@ public class WmspGridMaterialServiceImpl  implements IWmspGridMaterialService {
 
     @Autowired
     private WmspGridMaterialMapper wmspGridMaterialMapper;
+    @Autowired
+    private RmsStackingMapper rmsStackingMapper;
+    @Autowired
+    private RmsPwarehouseGridMapper rmsPwarehouseGridMapper;
 
     //新增
     @Override
@@ -140,6 +147,74 @@ public class WmspGridMaterialServiceImpl  implements IWmspGridMaterialService {
         return wmspGridMaterialMapper.getReboundScanResultByResultMaterial(material,materialOnlyCode);
     }
 
+    //修改实时库存(倒垛)
+
+    /**
+     * 所需要参数:原来的仓储网格id,修改后的垛位
+     * @param map
+     * @return
+     */
+    @Override
+    public int updateWmspGridMaterial(Map<String, Object> map) {
+        int CC=0;
+        int MN=0;
+        int CX=0;
+        //获取物资唯一编码
+        List<Map<String,Object>> contents=(List<Map<String, Object>>) map.get("contents");
+        for (Map<String,Object> map1:contents) {
+            String content =(String) map1.get("content");
+            //截取
+            String[] split = content.split("-");
+            String materialOnlyCode = split[7];
+            //获取原来的垛位,修改垛位剩余物资数量
+            //根据物资唯一编码查找原来垛位的仓储网格id
+            BigDecimal GirdId = wmspGridMaterialMapper.slelectGridIdByMaterialOnlyCode(materialOnlyCode);
+            //根据物资唯一编码和物资编码去查找物资现存仓存网格
+            Map<String,Object> stringObjectMap = wmspGridMaterialMapper.selectGmIdByMaterialOnlyCode(GirdId);
+            BigDecimal gmId = DataChange.dataToBigDecimal(stringObjectMap.get("gmId"));
+            WmspGridMaterial wmspGridMaterial=new WmspGridMaterial();
+            wmspGridMaterial.setGmId(gmId);
+            //设置为删除且锁定的状态
+            wmspGridMaterial.setDeleted(new BigDecimal(1));
+            wmspGridMaterial.setStatus(new BigDecimal(1));
+            wmspGridMaterialMapper.updateByPrimaryKeySelective(wmspGridMaterial);
+            //获取垛位id
+            BigDecimal stackingId = DataChange.dataToBigDecimal(map1.get("stackingId"));
+            //根据最新的垛位
+            //计算仓储网格id
+            //获取物资数
+             MN=rmsStackingMapper.selectMaterialNumber(map1);
+             //计算层次号
+             CC=(MN)/24+1;
+             //计算层序号
+             CX=(MN)%24+1;
+             //根据原来的仓储网格id查询仓库id
+            BigDecimal warehouseId = DataChange.dataToBigDecimal(stringObjectMap.get("warehouseId"));
+            Map<String,Object> map2=new HashMap<>();
+            map2.put("gradationNumber",CC);
+            map2.put("sequenceNumber",CX);
+            map2.put("stackingID",stackingId);
+            map2.put("warehouseId",warehouseId);
+            BigDecimal GridId = rmsPwarehouseGridMapper.selectGridId(map2);
+            BigDecimal gmNumber =(BigDecimal) stringObjectMap.get("gmNumber");
+            BigDecimal weight = (BigDecimal) stringObjectMap.get("weight");
+            BigDecimal materialId =(BigDecimal) stringObjectMap.get("materialId");
+            //新增实时库存
+            wmspGridMaterial.setGmId(wmspGridMaterialMapper.getCount());
+            wmspGridMaterial.setGridId(GridId);
+            wmspGridMaterial.setMaterialId(materialId);
+            wmspGridMaterial.setGmNumber(gmNumber);
+            wmspGridMaterial.setGmWeight(weight);
+            wmspGridMaterial.setInsertTime(new Date());
+            wmspGridMaterial.setInsertUsername("admin");
+            wmspGridMaterial.setDeleted(new BigDecimal(0));
+            wmspGridMaterial.setStatus(new BigDecimal(2));
+            wmspGridMaterial.setStandardDataId(new BigDecimal(1));
+            wmspGridMaterialMapper.insertSelective(wmspGridMaterial);
+        }
+        return 1;
+    }
+
     public List<Map<String, Object>> getMaterialTypeList(String warehouseid, BigDecimal stackingId, BigDecimal gradtionNumber) {
         return wmspGridMaterialMapper.getMaterialTypeList(warehouseid,stackingId,gradtionNumber);
     }

+ 13 - 1
src/main/java/com/steerinfo/dil/service/impl/WmspRestackScanResultServiceImpl.java

@@ -4,6 +4,7 @@ import com.steerinfo.dil.mapper.WmspRestackMakeResultMapper;
 import com.steerinfo.dil.mapper.WmspRestackScanResultMapper;
 import com.steerinfo.dil.model.WmspRestackScanResult;
 import com.steerinfo.dil.service.IWmspRestackScanResultService;
+import com.steerinfo.dil.util.DataChange;
 import com.steerinfo.framework.mapper.IBaseMapper;
 import com.steerinfo.framework.service.impl.BaseServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -149,7 +150,18 @@ public class WmspRestackScanResultServiceImpl  implements IWmspRestackScanResult
             //设置状态
             //判断需要倒垛的类型
             int status= wmspRestackMakeResultMapper.getResultLoaderAudit(restackMake,onlyCode);
-            if (status>0){
+            //查询倒垛的数量
+            Map<String,Object> map=new HashMap<>();
+            map.put("onlyCode",onlyCode);
+            map.put("restackMake",restackMake);
+            Map<String,Object> map1=wmspRestackMakeResultMapper.getResultLoaderAuditNo(map);
+            BigDecimal quantity = DataChange.dataToBigDecimal(map1.get("quantity"));
+            BigDecimal no =DataChange.dataToBigDecimal(map1.get("no"));
+            int AuditNo=0;
+            if (quantity.equals(no)){
+                AuditNo=1;
+            }
+            if (status>0&&AuditNo>0){
                 wmspRestackScanResult.setResultLoaderAudit(new BigDecimal(1));
             }
             wmspRestackScanResult.setResultLoaderAudit(new BigDecimal(0));

+ 44 - 0
src/main/resources/com/steerinfo/dil/mapper/RmsPwarehouseGridMapper.xml

@@ -387,4 +387,48 @@
         </if>
       </where>
   </select>
+    <select id="getStackingId" resultType="java.util.LinkedHashMap">
+        select *
+        from (select distinct rpg.stacking_id "stackingId",rs.stacking_sequence
+          from rms_pwarehouse_grid rpg
+          left join wmsp_grid_material wgm
+            on wgm.grid_id = rpg.grid_id
+          left join rms_material_steel rms
+            on wgm.material_id = rms.material_steel_id
+          left join rms_material rm
+            on rm.material_id = rms.material_id
+          left join rms_stacking rs
+            on rs.stacking_id = rpg.stacking_id
+         where rpg.warehouse_id =  #{warehouseId}
+           and rm.material_code = #{materialCode}
+           and rs.stacking_status = 1
+         order by rs.stacking_sequence)
+ where rownum = 1
+    </select>
+  <select id="getStackingStatus" resultType="java.lang.Integer" parameterType="DECIMAL">
+        select rs.stacking_status
+        from rms_stacking rs
+        where rs.stacking_id = #{stackingId}
+  </select>
+  <select id="getCountMaterial" resultType="java.lang.Integer">
+        select count(*)
+        from wmsp_grid_material wgm
+        left join rms_pwarehouse_grid rpg
+        on rpg.grid_id = wgm.grid_id
+        where rpg.stacking_id = #{stackingId}
+        and wgm.deleted = 0
+  </select>
+  <select id="getMaxStackingLayers" resultType="java.lang.Integer">
+        select rs.stacking_max_layers
+        from rms_stacking rs
+        where rs.stacking_id = #{stackingId}
+  </select>
+  <select id="getNullStackingId" resultType="java.util.LinkedHashMap">
+        select distinct rs.stacking_id "stackingId", rs.stacking_sequence
+        from rms_pwarehouse_grid rpg
+        left join rms_stacking rs
+        on rs.stacking_id = rpg.stacking_id
+        where rpg.warehouse_id = #{warehouseId}
+        order by rs.stacking_sequence
+  </select>
 </mapper>

+ 1 - 1
src/main/resources/com/steerinfo/dil/mapper/RmsStackingMapper.xml

@@ -514,7 +514,7 @@
         set (rs.stacking_material_number, rs.stacking_remain_number)=
                 (select rs.stacking_material_number + 1,
                         rs.stacking_remain_number - 1
-                 from rms_stacking rs
+                 from rms_stackingrs
                  where rs.stacking_id = #{stackId})
         where rs.stacking_id = #{stackId}
     </update>

+ 28 - 1
src/main/resources/com/steerinfo/dil/mapper/WmspGridMaterialMapper.xml

@@ -427,7 +427,8 @@
     RM.MATERIAL_NAME "materialName",
     RPG.GRID_ID  "gridId",
     RMS.MATERIAL_STEEL_ID "materialId",
-    RMS.MATERIAL_ONLY_CODE "materialOnlyCode"
+    RMS.MATERIAL_ONLY_CODE "materialOnlyCode",
+    WGM.GM_ID "gmId"
 
 
     from WMSP_GRID_MATERIAL WGM
@@ -688,4 +689,30 @@
     </if>
     )
   </select>
+<!--根据物资唯一编码和仓储网格id获取得主键 -->
+  <select id="selectGmIdByMaterialOnlyCode" parameterType="java.math.BigDecimal" resultType="java.util.Map">
+    select WGM.GM_ID "gmId",
+           RPG.WAREHOUSE_ID "warehouseId",
+           WGM.MATERIAL_ID "materialId",
+           WGM.GM_NUMBER "gmNumber",
+           WGM.GM_WEIGHT "weight"
+
+
+    from WMSP_GRID_MATERIAL WGM
+    left join RMS_PWAREHOUSE_GRID RPG
+    on RPG.GRID_ID=WGM.GRID_ID
+    left join RMS_WAREHOUSE RW
+    on RW.WAREHOUSE_ID=RPG.WAREHOUSE_ID
+    WHERE WGM.GRID_ID=#{GirdId}
+  </select>
+  <select id="slelectGridIdByMaterialOnlyCode" parameterType="java.lang.String" resultType="java.math.BigDecimal">
+    select WGM.GRID_ID "girdId"
+   from RMS_MATERIAL_STEEL RMS
+   left join WMSP_GRID_MATERIAL WGM
+   on  WGM.MATERIAL_ID = RMS.MATERIAL_STEEL_ID
+   WHERE  RMS.MATERIAL_ONLY_CODE=#{materialOnlyCode}
+  </select>
+
+  
+  
 </mapper>

+ 19 - 4
src/main/resources/com/steerinfo/dil/mapper/WmspRestackMakeResultMapper.xml

@@ -1399,10 +1399,14 @@
            rw.WAREHOUSE_NAME "warehouseName"-- 当前下发的倒垛单的完成状态
           
            FROM WMSP_RESTACK_MAKE_RESULT wrme
-           LEFT JOIN WMSP_RESTACK_MAKE_MATERIAL wrmm ON wrmm.MAKE_RESULT_ID=wrme.RESULT_ID
-           LEFT JOIN RMS_STACKING rs ON rs.STACKING_ID=wrme.AFTER_STACKING_ID
-           LEFT JOIN RMS_STACKING rs2 ON rs2.STACKING_ID=wrme.AFTER_BEFORE_STACKING_ID
-           LEFT JOIN RMS_WAREHOUSE rw ON rw.WAREHOUSE_ID=wrme.AFTER_WAREHOUSE_ID
+           LEFT JOIN WMSP_RESTACK_MAKE_MATERIAL wrmm
+               ON wrmm.MAKE_RESULT_ID=wrme.RESULT_ID
+           LEFT JOIN RMS_STACKING rs
+               ON rs.STACKING_ID=wrme.AFTER_STACKING_ID
+           LEFT JOIN RMS_STACKING rs2
+               ON rs2.STACKING_ID=wrme.AFTER_BEFORE_STACKING_ID
+           LEFT JOIN RMS_WAREHOUSE rw
+               ON rw.WAREHOUSE_ID=wrme.AFTER_WAREHOUSE_ID
             WHERE wrme.DISTRIBUTIONSTATUS=1 and wrme.DELETED=0 and wrme.RESULT_STATUS=0 and wrme.AFTER_WAREHOUSE_ID=#{warehouseid}
     </select>
   <select id="getResultLoaderAudit" resultType="java.lang.Integer">
@@ -1410,4 +1414,15 @@
     left join RMS_MATERIAL rm on rm.material_id= rms.material_id
     where rms.material_only_code='context') and WMSP_RESTACK_MAKE_ID=#{restackMake}
   </select>
+  <select id="getResultLoaderAuditNo" resultType="java.util.Map" parameterType="java.util.Map">
+    select WRMR.QUANTITY "quantity",
+           count(WRSR.RESULT_ID) as "no"
+    from WMSP_RESTACK_MAKE_TYPE_RESULT WRMTR
+    left join WMSP_RESTACK_MAKE_RESULT WRMR
+    on WRMR.RESULT_ID=WRMTR.WMSP_RESTACK_MAKE_ID
+    left join WMSP_RESTACK_SCAN_RESULT WRSR
+    on WRSR.RESULT_RESTACK_ID=WRMR.RESULT_ID
+    WHERE WRMTR.WMSP_RESTACK_MAKE_ID=#{restackMake} AND WRSR.MATERIAL_ONLY_CODE=#{onlyCode}
+  </select>
+
 </mapper>