Browse Source

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

Tiroble 3 years ago
parent
commit
18e4b21ee6
30 changed files with 540 additions and 146 deletions
  1. 1 1
      pom.xml
  2. 12 5
      src/main/java/com/steerinfo/dil/controller/WmsInboundResultController.java
  3. 14 2
      src/main/java/com/steerinfo/dil/controller/WmspGridMaterialController.java
  4. 28 25
      src/main/java/com/steerinfo/dil/controller/WmspInventoryCloseController.java
  5. 1 1
      src/main/java/com/steerinfo/dil/controller/WmspOutboundResultController.java
  6. 15 15
      src/main/java/com/steerinfo/dil/controller/WmspRestackMakeResultController.java
  7. 2 0
      src/main/java/com/steerinfo/dil/controller/WmspSendReceiveController.java
  8. 2 0
      src/main/java/com/steerinfo/dil/mapper/WmspGridMaterialMapper.java
  9. 2 0
      src/main/java/com/steerinfo/dil/mapper/WmspInboundResultMapper.java
  10. 13 0
      src/main/java/com/steerinfo/dil/mapper/WmspInventoryCloseMapper.java
  11. 2 0
      src/main/java/com/steerinfo/dil/mapper/WmspRestackMakeResultMapper.java
  12. 1 1
      src/main/java/com/steerinfo/dil/mapper/WmspRestackScanResultMapper.java
  13. 12 12
      src/main/java/com/steerinfo/dil/model/WmspInventoryClose.java
  14. 17 1
      src/main/java/com/steerinfo/dil/model/WmspRestackMakeResult.java
  15. 2 2
      src/main/java/com/steerinfo/dil/service/IWmsInboundResultService.java
  16. 6 1
      src/main/java/com/steerinfo/dil/service/IWmspGridMaterialService.java
  17. 5 5
      src/main/java/com/steerinfo/dil/service/IWmspInventoryCloseService.java
  18. 4 2
      src/main/java/com/steerinfo/dil/service/impl/WmsInboundResultServiceImpl.java
  19. 126 8
      src/main/java/com/steerinfo/dil/service/impl/WmspGridMaterialServiceImpl.java
  20. 71 2
      src/main/java/com/steerinfo/dil/service/impl/WmspInventoryCloseServiceImpl.java
  21. 13 11
      src/main/java/com/steerinfo/dil/service/impl/WmspRestackMakeResultServiceImpl.java
  22. 18 5
      src/main/java/com/steerinfo/dil/service/impl/WmspSendReceiveServiceImpl.java
  23. 12 2
      src/main/resources/com/steerinfo/dil/mapper/WmspGridMaterialMapper.xml
  24. 28 7
      src/main/resources/com/steerinfo/dil/mapper/WmspInboundResultMapper.xml
  25. 1 1
      src/main/resources/com/steerinfo/dil/mapper/WmspInboundScanResultMapper.xml
  26. 51 16
      src/main/resources/com/steerinfo/dil/mapper/WmspInventoryCloseMapper.xml
  27. 41 10
      src/main/resources/com/steerinfo/dil/mapper/WmspRestackMakeResultMapper.xml
  28. 33 5
      src/main/resources/com/steerinfo/dil/mapper/WmspRestackMakeTypeResultMapper.xml
  29. 6 3
      src/main/resources/com/steerinfo/dil/mapper/WmspRestackScanResultMapper.xml
  30. 1 3
      src/main/resources/com/steerinfo/dil/mapper/WmspSendReceiveMapper.xml

+ 1 - 1
pom.xml

@@ -130,7 +130,7 @@
 <!--                        <param>WMSP_INBOUND_STACK_RESULT</param>-->
 <!--                        <param>WMSP_INBOUND_CORRECT_RESULT</param>-->
 <!--                        <param>WMSP_INBOUND_DRIVING_RESULT</param>-->
-                        <param>AMSTRUCK_REQUIREMENT_MATERIAL</param>
+                        <param>WMSP_RESTACK_MAKE_RESULT</param>
 
                     </tables>
                 </configuration>

+ 12 - 5
src/main/java/com/steerinfo/dil/controller/WmsInboundResultController.java

@@ -90,15 +90,16 @@ public class WmsInboundResultController extends BaseRESTfulController {
                                              Integer apiId,
                                              Integer pageNum,
                                              Integer pageSize,
+                                             Integer warehouseId,
                                              String startTime,
                                              String endTime) {
 
         DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据
-        List<Map<String,Object>> inboundResultList = wmsInboundResultServiceImpl.getInboundResult(mapValue);
+        List<Map<String,Object>> inboundResultList = wmsInboundResultServiceImpl.getInboundResult(mapValue,warehouseId);
 
         /*分页*/
         PageHelper.startPage(pageNum, pageSize);
-        List<Map<String,Object>> columnList = wmsInboundResultServiceImpl.getInboundResult(mapValue);
+        List<Map<String,Object>> columnList = wmsInboundResultServiceImpl.getInboundResult(mapValue,warehouseId);
 //        处理异常状态字段
         for (Map<String,Object>map:columnList
         ) {
@@ -160,15 +161,16 @@ public class WmsInboundResultController extends BaseRESTfulController {
                                              Integer apiId,
                                              Integer pageNum,
                                              Integer pageSize,
+                                             Integer warehouseId,
                                              String startTime,
                                              String endTime) {
 
         DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据
-        List<Map<String,Object>> inboundResultList = wmsInboundResultServiceImpl.getInboundResults(mapValue);
+        List<Map<String,Object>> inboundResultList = wmsInboundResultServiceImpl.getInboundResults(mapValue,warehouseId);
 
         /*分页*/
         PageHelper.startPage(pageNum, pageSize);
-        List<Map<String,Object>> columnList = wmsInboundResultServiceImpl.getInboundResults(mapValue);
+        List<Map<String,Object>> columnList = wmsInboundResultServiceImpl.getInboundResults(mapValue,warehouseId);
 //        处理异常状态字段
         for (Map<String,Object>map:columnList
         ) {
@@ -201,13 +203,18 @@ public class WmsInboundResultController extends BaseRESTfulController {
                                              Integer apiId,
                                              Integer pageNum,
                                              Integer pageSize,
+                                             Integer warehouseId,
                                              String con) {
+        if (mapValue == null){
+            mapValue = new HashMap<>();
+        }
         if(con != null){
             if(!"undefined".equals(con)){
                 String index = "get_wms_reservedresult";
                 return success(esFeign.getConResult(mapValue,index,apiId,pageNum,pageSize,con));
             }
         }
+        mapValue.put("warehouseId",warehouseId);
         List<Map<String,Object>>inboundResultList = null;
         if(mapValue.size() == 0){
             //将查询结果存入索引中
@@ -276,7 +283,7 @@ public class WmsInboundResultController extends BaseRESTfulController {
                     //获得一个默认的网格  解释:目前还没有设计出来网格的结构 没有做默认为 第一库、第一月台、第一垛位、第一行、第一列 \推送信息给行车工、让他们抢单代码备注了
                     BigDecimal houseGrid = rmsPwarehouseGridService.selectGrid(mapList.size()-(i+1), personnelWorkshopid,new BigDecimal(item.get("materialId").toString()));
                     //创建一个入库作业实绩
-                    WmspInboundResult wmspInboundResult = wmsInboundResultServiceImpl.initAndWmspInboundResult(0,i+1,personnelWorkshopid,groupId,userName,wmspInboundDistribute.getDistributeId(),houseGrid,item);
+                    WmspInboundResult wmspInboundResult = wmsInboundResultServiceImpl.initAndWmspInboundResult(1,i+1,personnelWorkshopid,groupId,userName,wmspInboundDistribute.getDistributeId(),houseGrid,item);
                     //改变扫码实绩里面的状态
                     int status= wmsInboundScanResultServiceImpl.updateInboundScanStatus(new BigDecimal(item.get("resultId").toString()),wmspInboundResult.getInboundId());
                     //创建实时库存

+ 14 - 2
src/main/java/com/steerinfo/dil/controller/WmspGridMaterialController.java

@@ -63,15 +63,16 @@ public class WmspGridMaterialController extends BaseRESTfulController {
                                                 Integer pageNum,
                                                 Integer pageSize,
                                                 Integer apiId,
+                                                Integer warehouseId,
                                                 String con) {
 
 
         if (con!=null&&!con.equals("undefined")) {
             mapVal.put("con", "%" + con + "%");
         }
-        List<Map<String, Object>>   libaryInBoundList = wmspGridMaterialService.selectGridMaterial(mapVal);
+        List<Map<String, Object>>   libaryInBoundList = wmspGridMaterialService.selectGridMaterial(mapVal,warehouseId);
         PageHelper.startPage(pageNum, pageSize);
-        List<Map<String, Object>> columnList = wmspGridMaterialService.selectGridMaterial(mapVal);
+        List<Map<String, Object>> columnList = wmspGridMaterialService.selectGridMaterial(mapVal,warehouseId);
         PageListAdd pageList = columnDataUtil.tableColumnData(apiId, libaryInBoundList, columnList);
 //        //库龄预警
 //        for (Map mapValue : columnList) {
@@ -261,6 +262,17 @@ public class WmspGridMaterialController extends BaseRESTfulController {
         return success(pageList);
     }
 
+    @ApiOperation(value = "查询仓库中超过库龄预警的物资",notes = "查询仓库中超过库龄预警的物资")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "apiId", value = "442", required = false, dataType = "BigDecimal"),
+    })
+    @PostMapping("/getGridMaterialAgeList")
+    public  RESTfulResult getGridMaterialAgeList(@RequestBody(required = false) Map<String, Object> mapVal,Integer warehouseId){
+        List<Map<String,Object>> list=wmspGridMaterialService.getGridMaterialAgeList(mapVal,warehouseId);
+
+        return success(list);
+    }
+
 //    根据仓库id查询对应库的物资id,没有传库的id直接查询所有钢材的物资
     @ApiOperation(value = "查询所有钢材的物资信息",notes = "查询所有钢材的物资信息")
     @ApiImplicitParams({

+ 28 - 25
src/main/java/com/steerinfo/dil/controller/WmspInventoryCloseController.java

@@ -11,12 +11,17 @@ import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.util.*;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 /**
  * @author luobang
@@ -43,35 +48,33 @@ public class WmspInventoryCloseController extends BaseRESTfulController {
                                                Integer apiId,
                                                Integer pageNum,
                                                Integer pageSize,
-                                               String  con){
-            if(con != null){
-                if(!"undefined".equals(con)){
-                    String index = "get_wms_InventoryClose";
-                    return success(esFeign.getConResult(mapValue,index,apiId,pageNum,pageSize,con));
-                }
-            }
-            List<Map<String,Object>>inventoryCloseList = null;
-            if(mapValue.size() == 0){
-                //将查询结果存入索引中
-                inventoryCloseList = wmspInventoryCloseServiceImpl.getWmspInventoryClose(mapValue);
-                Map<String, Object> inventoryCloseMap = new HashMap<>();
-                //添加索引
-                inventoryCloseMap.put("index","get_wms_InventoryClose");
-                //添加ID
-                inventoryCloseMap.put("indexId","inventoryCloseId");
-                inventoryCloseList.add(inventoryCloseMap);
-                //新建索引
-                esFeign.insertIndex(inventoryCloseList);
-                //删除
-                inventoryCloseList.remove(inventoryCloseList.size() -1);
-            }
-            if(inventoryCloseList == null) {
-                inventoryCloseList = wmspInventoryCloseServiceImpl.getWmspInventoryClose(mapValue);
+                                               Integer warehouseId,
+                                               String  value){
+            if(mapValue == null){
+                mapValue = new HashMap<>();
             }
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
+            String sd = sdf.format(new Date(Long.parseLong(value))); // 时间戳转换日期
+            mapValue.put("warehouseId",warehouseId);
+            mapValue.put("value",sd);
+            List<Map<String,Object>>inventoryCloseList = wmspInventoryCloseServiceImpl.getWmspInventoryClose(mapValue);
             /*分页*/
             PageHelper.startPage(pageNum, pageSize);
             List<Map<String,Object>> columnList = wmspInventoryCloseServiceImpl.getWmspInventoryClose(mapValue);
             PageListAdd pageList = columnDataUtil.tableColumnData(apiId,inventoryCloseList,columnList);
             return success(pageList);
     }
+
+    //库存结转(在每个月的25号11点45时结算一个月的数据)
+    @PostMapping("/addInventoryClose")
+    @Scheduled(cron =  "3 45 23 25 * ? ")
+    @ApiOperation(value = "库存结转")
+    public RESTfulResult addInventoryClose(){
+            int result = 0;
+            int count = wmspInventoryCloseServiceImpl.getClose();
+            if(count == 0) {
+                result = wmspInventoryCloseServiceImpl.addInventoryClose();
+            }
+            return success(result);
+    }
 }

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

@@ -515,7 +515,7 @@ public class WmspOutboundResultController extends BaseRESTfulController {
 
     //统计出厂每个炉号生产的支数
     @PostMapping("/getWmsOutboundResultStatistics")
-    @ApiOperation(value = "展示库统计信息")
+    @ApiOperation(value = "展示库统计信息")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "apiId", value = "371", required = false, dataType = "BigDecimal"),
     })

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

@@ -91,20 +91,20 @@ public class WmspRestackMakeResultController extends BaseRESTfulController {
             }
         }
         List<Map<String, Object>> libaryInBoundList = null;
-        if (mapVal.size() == count) {
+//        if (mapVal.size() == count) {
             //将查询结果存入索引中
             libaryInBoundList = wmspRestackMakeResultService.selectRestackMakeResultList(mapVal);
-            Map<String, Object> map1 = new HashMap<>();
-            //添加索引
-            map1.put("index", "get_wms_restackresult");
-            //添加id
-            map1.put("indexId", "restackResultId");
-            libaryInBoundList.add(map1);
-            //新建索引
-            esFeign.insertIndex(libaryInBoundList);
-            //删除
-            libaryInBoundList.remove(libaryInBoundList.size() - 1);
-        }
+//            Map<String, Object> map1 = new HashMap<>();
+//            //添加索引
+//            map1.put("index", "get_wms_restackresult");
+//            //添加id
+//            map1.put("indexId", "restackResultId");
+//            libaryInBoundList.add(map1);
+//            //新建索引
+//            esFeign.insertIndex(libaryInBoundList);
+//            //删除
+//            libaryInBoundList.remove(libaryInBoundList.size() - 1);
+//        }
         if (libaryInBoundList == null) {
             libaryInBoundList = wmspRestackMakeResultService.selectRestackMakeResultList(mapVal);
         }
@@ -216,12 +216,12 @@ public class WmspRestackMakeResultController extends BaseRESTfulController {
         //分页查询数据
         List<Map<String, Object>> columnList = wmspRestackMakeResultService.selectRestackForPc2(DistrubtionStatus);
         //            将获取到的columnList中的完成状态用中文表示
-        for (Map<String, Object> map1: list){
+        for (Map<String, Object> map1: columnList){
             BigDecimal resultStatus =(BigDecimal)map1.get("resultStatus");
-            if (resultStatus.equals(0)){
+            if (resultStatus.compareTo(new BigDecimal(0))==0){
                 map1.put("resultStatus","未完成");
             }
-            if (resultStatus.equals(1)){
+            if (resultStatus.compareTo(new BigDecimal(1))==0){
                 map1.put("resultStatus","已完成");
             }
         }

+ 2 - 0
src/main/java/com/steerinfo/dil/controller/WmspSendReceiveController.java

@@ -55,6 +55,7 @@ public class WmspSendReceiveController extends BaseRESTfulController {
                                            Integer pageNum,
                                            Integer pageSize,
                                            String  con,
+                                           Integer warehouseId,
                                            String startTime,
                                            String endTime
                                         ){
@@ -64,6 +65,7 @@ public class WmspSendReceiveController extends BaseRESTfulController {
         if(mapValue == null){
             mapValue =new HashMap<>();
         }
+        mapValue.put("warehouseId",warehouseId);
         DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据
         List<Map<String,Object>> sendReceiveList = iWmspSendReceiveService.getWmspSendReceiveService(mapValue);
 

+ 2 - 0
src/main/java/com/steerinfo/dil/mapper/WmspGridMaterialMapper.java

@@ -64,4 +64,6 @@ public interface WmspGridMaterialMapper extends IBaseMapper<WmspGridMaterial, Bi
   int deleteGridMaterial(@Param("thisMaterialDetailedInfos") List<OutBoundMaterialDetailedInfo> thisMaterialDetailedInfos,@Param("now")Date now);
 
   List<Map<String, Object>> getMaterialIdes(String warehouseId, String materialCode, String materialSpecification, String materialModel,Integer status);
+//  查询当前所有已经超过库龄预警的所有数据
+  List<Map<String, Object>> getGridMaterialAgeList(Map<String,Object> mapVal);
 }

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

@@ -18,9 +18,11 @@ public interface WmspInboundResultMapper extends IBaseMapper<WmspInboundResult,
      * @param mapValue
      * @return
      */
+//    查询实时库存实绩
     List<Map<String, Object>> selectWmsInboundResult(Map<String, Object> mapValue);
 //    查询真实入库实绩
     List<Map<String, Object>> selectWmsInboundResults(Map<String, Object> mapValue);
+//    查询预留入库的实绩
     List<Map<String, Object>> selectWmsReservedResult(Map<String, Object> mapValue);
     @Select("select seq_WMSP_INBOUND_RESULT.nextval from dual")
     BigDecimal getCount();

+ 13 - 0
src/main/java/com/steerinfo/dil/mapper/WmspInventoryCloseMapper.java

@@ -3,6 +3,7 @@ package com.steerinfo.dil.mapper;
 import com.steerinfo.dil.model.WmspInventoryClose;
 import com.steerinfo.framework.mapper.IBaseMapper;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Select;
 
 import java.math.BigDecimal;
 import java.util.List;
@@ -12,4 +13,16 @@ import java.util.Map;
 public interface WmspInventoryCloseMapper extends IBaseMapper<WmspInventoryClose, BigDecimal> {
     List<Map<String, Object>> selectWmspInventoryClose(Map<String, Object> mapValue);
 
+    List<Map<String, Object>> selectSendReceive(BigDecimal warehouseId);
+
+    @Select("select seq_WMSP_INVENTORY_CLOSE.nextval from dual")
+    BigDecimal addInventoryCloseId();
+
+    BigDecimal selectCloseThismonthInbound(BigDecimal warehouseId, BigDecimal materialId);
+
+    BigDecimal selectCloseThismonthOutbound(BigDecimal warehouseId, BigDecimal materialId);
+
+    BigDecimal selectCloseLastmonthInventory(BigDecimal warehouseId, BigDecimal materialId);
+
+    int getClose();
 }

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

@@ -61,4 +61,6 @@ public interface WmspRestackMakeResultMapper extends IBaseMapper<WmspRestackMake
     int getMaterialGrid(String onlyCode);
 //    根据订单编码查询对应的订单当前总数量
     BigDecimal getQuantity(String restackMake);
+//    根据倒垛单查询这个倒垛下的所有已经扫描并且稽核成功的吊牌
+    List<Map<String, Object>> getScanResultList(String restackMake);
 }

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

@@ -48,5 +48,5 @@ public interface WmspRestackScanResultMapper extends IBaseMapper<WmspRestackScan
 //    判断当前的物资是否已经存在并且倒垛状态为已倒垛
     int getWmspRestackScanResultCount(String onlyCode);
 
-    BigDecimal getResultId(String content);
+    List<Map<String,Object>> getResultId(BigDecimal restackId);
 }

+ 12 - 12
src/main/java/com/steerinfo/dil/model/WmspInventoryClose.java

@@ -37,25 +37,25 @@ public class WmspInventoryClose implements IBasePO<BigDecimal> {
      * 上个月库存(上一个结转周期(每个月25号)留存的库存)(CLOSE_LASTMONTH_INVENTORY,DECIMAL,0)
      */
     @ApiModelProperty(value="上个月库存(上一个结转周期(每个月25号)留存的库存)",required=false)
-    private Short closeLastmonthInventory;
+    private BigDecimal closeLastmonthInventory;
 
     /**
      * 本月入库(生产入库+退货入库+盘盈 = 本月入库)(CLOSE_THISMONTH_INBOUND,DECIMAL,0)
      */
     @ApiModelProperty(value="本月入库(生产入库+退货入库+盘盈 = 本月入库)",required=false)
-    private Short closeThismonthInbound;
+    private BigDecimal closeThismonthInbound;
 
     /**
      * 本月出库(出库+盘亏=本月出库)(CLOSE_THISMONTH_OUTBOUND,DECIMAL,0)
      */
     @ApiModelProperty(value="本月出库(出库+盘亏=本月出库)",required=false)
-    private Short closeThismonthOutbound;
+    private BigDecimal closeThismonthOutbound;
 
     /**
      * 本月库存(上月库存 + 本月入库 — 本月出库 = 本月库存)(CLOSE_THISMONTH_INVENTORY,DECIMAL,0)
      */
     @ApiModelProperty(value="本月库存(上月库存 + 本月入库 — 本月出库 = 本月库存)",required=false)
-    private Short closeThismonthInventory;
+    private BigDecimal closeThismonthInventory;
 
     /**
      * 记录创建人(INSERT_USERNAME,VARCHAR,20)
@@ -137,35 +137,35 @@ public class WmspInventoryClose implements IBasePO<BigDecimal> {
         this.warehouseId = warehouseId;
     }
 
-    public Short getCloseLastmonthInventory() {
+    public BigDecimal getCloseLastmonthInventory() {
         return closeLastmonthInventory;
     }
 
-    public void setCloseLastmonthInventory(Short closeLastmonthInventory) {
+    public void setCloseLastmonthInventory(BigDecimal closeLastmonthInventory) {
         this.closeLastmonthInventory = closeLastmonthInventory;
     }
 
-    public Short getCloseThismonthInbound() {
+    public BigDecimal getCloseThismonthInbound() {
         return closeThismonthInbound;
     }
 
-    public void setCloseThismonthInbound(Short closeThismonthInbound) {
+    public void setCloseThismonthInbound(BigDecimal closeThismonthInbound) {
         this.closeThismonthInbound = closeThismonthInbound;
     }
 
-    public Short getCloseThismonthOutbound() {
+    public BigDecimal getCloseThismonthOutbound() {
         return closeThismonthOutbound;
     }
 
-    public void setCloseThismonthOutbound(Short closeThismonthOutbound) {
+    public void setCloseThismonthOutbound(BigDecimal closeThismonthOutbound) {
         this.closeThismonthOutbound = closeThismonthOutbound;
     }
 
-    public Short getCloseThismonthInventory() {
+    public BigDecimal getCloseThismonthInventory() {
         return closeThismonthInventory;
     }
 
-    public void setCloseThismonthInventory(Short closeThismonthInventory) {
+    public void setCloseThismonthInventory(BigDecimal closeThismonthInventory) {
         this.closeThismonthInventory = closeThismonthInventory;
     }
 

+ 17 - 1
src/main/java/com/steerinfo/dil/model/WmspRestackMakeResult.java

@@ -87,10 +87,17 @@ public class WmspRestackMakeResult implements IBasePO<BigDecimal> {
     private BigDecimal distributionstatus;
 
     /**
-     * 物质数量(QUANTITY)
+     * 物质剩余数量(QUANTITY)
      */
     @ApiModelProperty(value="物质数量",required=false)
     private BigDecimal quantity;
+
+    /**
+     * 物资总数量(QUANTITY)
+     */
+    @ApiModelProperty(value="物质数量",required=false)
+    private BigDecimal tatalQuantity;
+
     /**
      * 倒垛后仓库id(AFTER_WAREHOUSE_ID,DECIMAL,0)
      */
@@ -123,6 +130,14 @@ public class WmspRestackMakeResult implements IBasePO<BigDecimal> {
 
     private static final long serialVersionUID = 1L;
 
+    public BigDecimal getTatalQuantity() {
+        return tatalQuantity;
+    }
+
+    public void setTatalQuantity(BigDecimal tatalQuantity) {
+        this.tatalQuantity = tatalQuantity;
+    }
+
     @Override
     public BigDecimal getId() {
         return this.resultId;
@@ -305,6 +320,7 @@ public class WmspRestackMakeResult implements IBasePO<BigDecimal> {
         sb.append(", deleted=").append(deleted);
         sb.append(", distributionstatus=").append(distributionstatus);
         sb.append(", afterWarehouseId=").append(afterWarehouseId);
+        sb.append(", tatalQuantity=").append(tatalQuantity);
         sb.append(", resultStatus=").append(resultStatus);
         sb.append(", resultRemark=").append(resultRemark);
         sb.append(", serialVersionUID=").append(serialVersionUID);

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

@@ -16,8 +16,8 @@ public interface IWmsInboundResultService {
      * @param mapValue
      * @return
      */
-    List<Map<String, Object>> getInboundResult(Map<String, Object> mapValue);
-    List<Map<String, Object>> getInboundResults(Map<String, Object> mapValue);
+    List<Map<String, Object>> getInboundResult(Map<String, Object> mapValue,Integer warehouseId);
+    List<Map<String, Object>> getInboundResults(Map<String, Object> mapValue ,Integer warehouseId);
 
     List<Map<String, Object>> getWmsReservedResult(Map<String, Object> mapValue);
 

+ 6 - 1
src/main/java/com/steerinfo/dil/service/IWmspGridMaterialService.java

@@ -28,7 +28,7 @@ public interface IWmspGridMaterialService  {
    int updateByPrimaryKeySelective(WmspGridMaterial wmspGridMaterial);
 
    //查询实时库存数据
-   List<Map<String, Object>> selectGridMaterial(Map<String, Object> mapval);
+   List<Map<String, Object>> selectGridMaterial(Map<String, Object> mapval,Integer warehouseId);
 
    //统计实时库存当前表格数据
    Long countByGmId();
@@ -64,4 +64,9 @@ public interface IWmspGridMaterialService  {
     int insertReserved(String warehouseId, String materialCode, String materialSpecification, String materialModel, Integer quantity);
 //    新增预留转入库
     int insertInbounds(String warehouseId, String materialCode, String materialSpecification, String materialModel, Integer quantity);
+
+    //修改实时库存
+    int updateWmspGridMaterials(List<Map<String,Object>> map,String restackMake);
+//    查询当前仓库下的所有已经超过库龄预警界限的物资
+    List<Map<String, Object>> getGridMaterialAgeList(Map<String,Object> mapVal,Integer warehouseId);
 }

+ 5 - 5
src/main/java/com/steerinfo/dil/service/IWmspInventoryCloseService.java

@@ -16,9 +16,9 @@ public interface IWmspInventoryCloseService {
      */
     public List<Map<String, Object>> getWmspInventoryClose(Map<String, Object> mapValue);
 
-    /**
-     * 主键ID
-     * @return
-     */
-    int count();
+
+
+    int addInventoryClose();
+
+    int getClose();
 }

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

@@ -33,7 +33,8 @@ public class WmsInboundResultServiceImpl implements IWmsInboundResultService {
      * @return
      */
     @Override
-    public List<Map<String,Object>> getInboundResult(Map<String, Object> mapValue){
+    public List<Map<String,Object>> getInboundResult(Map<String, Object> mapValue,Integer warehouseId){
+        mapValue.put("warehouseId",warehouseId);
         List<Map<String, Object>> maps = wmspInboundResultMapper.selectWmsInboundResult(mapValue);
         return maps;
     }
@@ -46,7 +47,8 @@ public class WmsInboundResultServiceImpl implements IWmsInboundResultService {
     }
 
     @Override
-    public List<Map<String,Object>> getInboundResults(Map<String, Object> mapValue){
+    public List<Map<String,Object>> getInboundResults(Map<String, Object> mapValue,Integer warehouseId){
+        mapValue.put("warehouseId",warehouseId);
         List<Map<String, Object>> maps = wmspInboundResultMapper.selectWmsInboundResults(mapValue);
         return maps;
     }

+ 126 - 8
src/main/java/com/steerinfo/dil/service/impl/WmspGridMaterialServiceImpl.java

@@ -9,6 +9,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
+import java.text.SimpleDateFormat;
 import java.util.*;
 
 /**
@@ -64,8 +65,31 @@ public class WmspGridMaterialServiceImpl  implements IWmspGridMaterialService {
     }
     //查询实时库存数据
     @Override
-    public List<Map<String, Object>> selectGridMaterial(Map<String, Object> mapval) {
-        return wmspGridMaterialMapper.selectGridMaterial(mapval);
+    public List<Map<String, Object>> selectGridMaterial(Map<String, Object> mapval,Integer warehouseId) {
+        //        通过当前时间获得前一个月的时间
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        Calendar cal= Calendar.getInstance();
+        cal.add(Calendar.MONTH, -1);
+        long date2 = cal.getTimeInMillis();
+        String newDate=simpleDateFormat.format(new Date(date2));
+        mapval.put("warehouseId",warehouseId);
+        List<Map<String ,Object>> list1 = wmspGridMaterialMapper.selectGridMaterial(mapval);
+        mapval.put("newDate",newDate);
+        List<Map<String ,Object>> list2 = wmspGridMaterialMapper.getGridMaterialAgeList(mapval);
+        for (Map<String,Object> map1:list1){
+            Integer status = 0;
+            for (Map<String,Object> map2:list2){
+                String onlyCode1 = (String) map1.get("materialOnlyCode");
+                String onlyCode2 = (String) map2.get("onlyCode");
+//                当两个onlyeCode相等时,设置状态
+                if (onlyCode1.equals(onlyCode2)){
+//                    设置状态为入库预警超过界限
+                    status = 1;
+                }
+            }
+            map1.put("status",status);
+        }
+        return list1;
     }
     //根据仓储网格统计数据
     @Override
@@ -216,10 +240,13 @@ public class WmspGridMaterialServiceImpl  implements IWmspGridMaterialService {
             wmspGridMaterial.setStatus(new BigDecimal(2));
             wmspGridMaterial.setStandardDataId(new BigDecimal(1));
             wmspGridMaterialMapper.insertSelective(wmspGridMaterial);
+//            逻辑删除之间的物资的实时库存
+
 
 //        4、改变当前订单中已经稽核的吊牌的状态,改为已倒垛
 //            根据吊牌扫描结果查找对应的吊牌扫描实绩Id
-            BigDecimal resultId=wmspRestackScanResultMapper.getResultId(content);
+            List<Map<String,Object>> list1=wmspRestackScanResultMapper.getResultId(new BigDecimal(content));
+            BigDecimal resultId =(BigDecimal) list1.get(0).get("resultId");
             WmspRestackScanResult wmspRestackScanResult = new WmspRestackScanResult();
             wmspRestackScanResult.setResultId(resultId);
             wmspRestackScanResult.setStatus(new BigDecimal(1));
@@ -228,15 +255,27 @@ public class WmspGridMaterialServiceImpl  implements IWmspGridMaterialService {
             //        3、将当前订单的总数量减去上面当前订单中已经稽核的吊牌
             WmspRestackMakeResult wmspRestackMakeResult = new WmspRestackMakeResult();
             wmspRestackMakeResult.setResultId(new BigDecimal(restackMake));
+
             BigDecimal quantity=wmspRestackMakeResultMapper.getQuantity(restackMake);
-//            判断当前订单的总数量是否小于或等于0
-            if (quantity.compareTo(new BigDecimal(1))==-1){
-//                当存在时直接结束当前循环
-                break;
-            }
 //            将当前订单的总数量减一
             wmspRestackMakeResult.setQuantity(quantity.subtract(new BigDecimal(1)));
             i += wmspRestackMakeResultMapper.updateByPrimaryKeySelective(wmspRestackMakeResult);
+            //            判断当前订单的总数量是否小于或等于0
+            if (quantity.compareTo(new BigDecimal(1))==-1){
+//                当存在时直接结束当前循环
+//                当这个订单完成之后,将这个订单下扫描的所有的物资的倒垛状态改变
+                List<Map<String, Object>> maps = wmspRestackMakeResultMapper.getScanResultList(restackMake);
+                int j=0;
+//                遍历所有的吊牌,并改变其状态
+                for (Map<String,Object> map3:maps){
+                    BigDecimal resultIds = (BigDecimal)map3.get("resultId");
+//                    创建扫描实体类
+                    WmspRestackScanResult wmspRestackScanResult1 =new WmspRestackScanResult();
+                    wmspRestackScanResult1.setResultId(resultIds);
+                    wmspRestackScanResult1.setStatus(new BigDecimal(2));
+                    j +=wmspRestackScanResultMapper.updateByPrimaryKeySelective(wmspRestackScanResult1);
+                }
+            }
         }
 
         return i;
@@ -362,4 +401,83 @@ public class WmspGridMaterialServiceImpl  implements IWmspGridMaterialService {
             return count;
         }
     }
+
+//    修改实时库存
+    @Override
+    public int updateWmspGridMaterials(List<Map<String, Object>> list, String restackMake) {
+//        map表示查询当前订单下的所有已经稽核但是未倒垛的物资包括物资唯一id、物资实时库存主键以及目标垛位
+//        restackMake是当前订单编号
+        int CC=0;
+        int MN=0;
+        int CX=0;
+        int i =0;
+//        遍历物资
+        for(Map<String, Object> map:list){
+//            2.计算物资在新垛位的目标层序
+            BigDecimal stackingId = (BigDecimal) map.get("stackingId");
+            //根据最新的垛位
+            //计算仓储网格id
+            HashMap map1 = new HashMap();
+            map1.put("stackingId",stackingId);
+            //获取物资数
+            MN=rmsStackingMapper.selectMaterialNumber(map1);
+            //计算层次号
+            CC=(MN)/24+1;
+            //计算层序号
+            CX=(MN)%24+1;
+//            3.修改物资的实时库存
+//            创建仓储网格实体类
+            RmsPwarehouseGrid rmsPwarehouseGrid = new RmsPwarehouseGrid();
+            rmsPwarehouseGrid.setGridId((BigDecimal) map.get("gridId"));
+            rmsPwarehouseGrid.setGridGradationNumber(new BigDecimal(CC));
+            rmsPwarehouseGrid.setGridSequenceNumber(new BigDecimal(CX));
+            i+= rmsPwarehouseGridMapper.updateByPrimaryKeySelective(rmsPwarehouseGrid);
+
+//            3.修改倒垛单的数量
+//            创建倒垛实绩表
+            WmspRestackMakeResult wmspRestackMakeResult = new WmspRestackMakeResult();
+            BigDecimal quantitys = (BigDecimal) map.get("quantity");
+            BigDecimal quantity = quantitys.subtract(new BigDecimal(1));
+            wmspRestackMakeResult.setQuantity(quantity);
+            wmspRestackMakeResult.setResultId((BigDecimal) map.get("restackId"));
+            i+= wmspRestackMakeResultMapper.updateByPrimaryKeySelective(wmspRestackMakeResult);
+//            4.判断当前倒垛单剩余数量是否小于等于0(小于则修改所有的符合条件的倒垛单状态),并且逻辑删除当前倒垛单
+
+            if (quantity.compareTo(new BigDecimal(0))==-1){
+//                  当数量小于零的时候,将所有的入库扫描的实绩状态都变成已倒垛
+//                  查询该订单下的所有未倒垛的的订单
+                List<Map<String,Object>> list1 = wmspRestackScanResultMapper.getResultId((BigDecimal) map.get("restackId"));
+//                  创建入库扫描实体类
+                for (Map<String,Object> map2:list1){
+                    BigDecimal resultId = (BigDecimal) map2.get("resultId");
+                    WmspRestackScanResult wmspRestackScanResult = new WmspRestackScanResult();
+                    wmspRestackScanResult.setResultId(resultId);
+                    wmspRestackMakeResult.setResultStatus(new BigDecimal(1));
+                    i+=wmspRestackScanResultMapper.updateByPrimaryKeySelective(wmspRestackScanResult);
+                }
+
+//                将该订单的状态变为已完成
+                WmspRestackMakeResult wmspRestackMakeResult1 = new WmspRestackMakeResult();
+                wmspRestackMakeResult1.setResultId((BigDecimal) map.get("restackId"));
+                wmspRestackMakeResult1.setResultStatus(new BigDecimal(1));
+                i+= wmspRestackMakeResultMapper.updateByPrimaryKeySelective(wmspRestackMakeResult1);
+            }
+            return i;
+        }
+        return i;
+    }
+
+    @Override
+    public List<Map<String, Object>> getGridMaterialAgeList(Map<String,Object> mapVal,Integer warehouseId) {
+//        通过当前时间获得前一个月的时间
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        Calendar cal= Calendar.getInstance();
+        cal.add(Calendar.MONTH, -1);
+        long date2 = cal.getTimeInMillis();
+        String newDate=simpleDateFormat.format(new Date(date2));
+        mapVal.put("warehouseId",warehouseId);
+        mapVal.put("newDate",newDate);
+        List<Map<String, Object>> list =wmspGridMaterialMapper.getGridMaterialAgeList(mapVal);
+        return list;
+    }
 }

+ 71 - 2
src/main/java/com/steerinfo/dil/service/impl/WmspInventoryCloseServiceImpl.java

@@ -1,10 +1,15 @@
 package com.steerinfo.dil.service.impl;
 
+import com.steerinfo.dil.mapper.RmsWarehouseMapper;
 import com.steerinfo.dil.mapper.WmspInventoryCloseMapper;
+import com.steerinfo.dil.model.WmspInventoryClose;
 import com.steerinfo.dil.service.IWmspInventoryCloseService;
+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.Date;
 import java.util.List;
 import java.util.Map;
 
@@ -18,6 +23,9 @@ public class WmspInventoryCloseServiceImpl implements IWmspInventoryCloseService
     @Autowired
     WmspInventoryCloseMapper wmspInventoryCloseMapper;
 
+    @Autowired
+    RmsWarehouseMapper rmsWarehouseMapper;
+
     @Override
     public List<Map<String, Object>> getWmspInventoryClose(Map<String, Object> mapValue) {
         List<Map<String, Object>> maps = wmspInventoryCloseMapper.selectWmspInventoryClose(mapValue);
@@ -26,7 +34,68 @@ public class WmspInventoryCloseServiceImpl implements IWmspInventoryCloseService
     }
 
     @Override
-    public int count() {
-        return 0;
+    public int addInventoryClose() {
+        int i = 0;
+        //高线库,一棒库,二棒库,配送库
+        List<Map<String, Object>> mapList = rmsWarehouseMapper.getWarehouseName();
+        //遍历四个仓库
+        for(Map<String,Object> map:mapList) {
+            BigDecimal warehouseId = DataChange.dataToBigDecimal(map.get("id"));
+            //先获取收发存中的物资
+            List<Map<String,Object>> materialList = wmspInventoryCloseMapper.selectSendReceive(warehouseId);
+            for(Map<String,Object> map1:materialList){
+                WmspInventoryClose wmspInventoryClose = new WmspInventoryClose();
+                //主键自增
+                BigDecimal inventoryCloseId = wmspInventoryCloseMapper.addInventoryCloseId();
+                wmspInventoryClose.setCloseId(inventoryCloseId);
+                //增加仓库id
+                wmspInventoryClose.setWarehouseId(warehouseId);
+                //增加物资id
+                BigDecimal materialId = DataChange.dataToBigDecimal(map1.get("materialId"));
+                wmspInventoryClose.setMaterialId(materialId);
+                //获取一个仓库中的一种物资一个月之内的入库数据
+                BigDecimal closeThismonthInbound = wmspInventoryCloseMapper.selectCloseThismonthInbound(warehouseId,materialId);
+                if(closeThismonthInbound == null){
+                    wmspInventoryClose.setCloseThismonthInbound(new BigDecimal(0));
+                }else {
+                    wmspInventoryClose.setCloseThismonthInbound(closeThismonthInbound);
+                }
+                BigDecimal closeThismonthInbound1 = wmspInventoryClose.getCloseThismonthInbound();
+                //获取一个仓库的一种物资一个月之内的出库数据
+                BigDecimal closeThismonthOutbound = wmspInventoryCloseMapper.selectCloseThismonthOutbound(warehouseId,materialId);
+                if(closeThismonthOutbound == null){
+                    wmspInventoryClose.setCloseThismonthOutbound(new BigDecimal(0));
+                }else {
+                    wmspInventoryClose.setCloseThismonthOutbound(closeThismonthOutbound);
+                }
+                BigDecimal closeThismonthOutbound1 = wmspInventoryClose.getCloseThismonthOutbound();
+                //获取上一个月的一种物资的库存数据
+                BigDecimal closeLastmonthInventory = wmspInventoryCloseMapper.selectCloseLastmonthInventory(warehouseId,materialId);
+                if(closeLastmonthInventory==null){
+                    wmspInventoryClose.setCloseLastmonthInventory(new BigDecimal(0));
+                }else {
+                    wmspInventoryClose.setCloseLastmonthInventory(closeLastmonthInventory);
+                }
+                //获取一个仓库的一种物资一个月之内的总库存数据
+                BigDecimal closeLastmonthInventory1 = wmspInventoryClose.getCloseLastmonthInventory();
+                    BigDecimal closeThismonthInventory =
+                            new BigDecimal(closeThismonthInbound1.intValue() - closeThismonthOutbound1.intValue() + closeLastmonthInventory1.intValue());
+
+                    wmspInventoryClose.setCloseThismonthInventory(closeThismonthInventory);
+
+                wmspInventoryClose.setInsertTime(new Date());
+                wmspInventoryClose.setInsertUsername("admin");
+                wmspInventoryClose.setDeleted(new BigDecimal(1));
+                i+=wmspInventoryCloseMapper.insertSelective(wmspInventoryClose);
+            }
+
+        }
+        return i;
     }
+
+    @Override
+    public int getClose() {
+        return wmspInventoryCloseMapper.getClose();
+    }
+
 }

+ 13 - 11
src/main/java/com/steerinfo/dil/service/impl/WmspRestackMakeResultServiceImpl.java

@@ -294,15 +294,15 @@ public class WmspRestackMakeResultServiceImpl  implements IWmspRestackMakeResult
             map.put("DistrubtionStatus",1);
             mapList = wmspRestackMakeResultMapper.selectRestackForPc2(map);
 //            将获取到的mapList中的完成状态用中文表示
-            for (Map<String, Object> map1: mapList){
-                BigDecimal resultStatus =(BigDecimal)map1.get("resultStatus");
-                if (resultStatus.equals(0)){
-                    map1.put("resultStatus","未完成");
-                }
-                if (resultStatus.equals(1)){
-                    map1.put("resultStatus","已完成");
-                }
-            }
+//            for (Map<String, Object> map1: mapList){
+//                BigDecimal resultStatus =(BigDecimal)map1.get("resultStatus");
+//                if (resultStatus.equals(0)){
+//                    map1.put("resultStatus","未完成");
+//                }
+//                if (resultStatus.equals(1)){
+//                    map1.put("resultStatus","已完成");
+//                }
+//            }
         }
         return mapList;
     }
@@ -362,8 +362,10 @@ public class WmspRestackMakeResultServiceImpl  implements IWmspRestackMakeResult
         //首先创建倒垛类型,再创建倒垛单 makeresultid
         Integer totalCount= wmspRestackMakeTypeResultService.createMakeTypeList(makeresultid,maps);
 
-        //添加总是
+        //添加剩余数量
         wmspRestackMakeResult.setQuantity(new BigDecimal(totalCount));
+//        添加总数量
+        wmspRestackMakeResult.setTatalQuantity(new BigDecimal(totalCount));
         //添加
         wmspRestackMakeResultMapper.insertSelective(wmspRestackMakeResult);
         return wmspRestackMakeResult;
@@ -379,6 +381,6 @@ public class WmspRestackMakeResultServiceImpl  implements IWmspRestackMakeResult
 //        查询当前订单下所有已经稽核且未倒垛的吊牌
         List<Map<String, Object>> materialScanTagMap = wmspRestackMakeTypeResultMapper.getRestackMakeMaterialScanTag(restackMake);
 
-        return wmspGridMaterialService.updateWmspGridMaterial(materialScanTagMap,restackMake);
+        return wmspGridMaterialService.updateWmspGridMaterials(materialScanTagMap,restackMake);
     }
 }

+ 18 - 5
src/main/java/com/steerinfo/dil/service/impl/WmspSendReceiveServiceImpl.java

@@ -189,10 +189,20 @@ public class WmspSendReceiveServiceImpl implements IWmspSendReceiveService {
                 map2.put("materialId",materialId);
                 //统计今天的入库总数(只统计当前仓库没有预留的数量,不统计预留库的数量)
                 BigDecimal sendReceiveThisdayInbound = wmspSendReceiveMapper.countSndReceiveThisdayInbound(map2);
-                wmspSendReceive.setSendReceiveThisdayInbound(sendReceiveThisdayInbound);
+                if(sendReceiveThisdayInbound == null){
+                    wmspSendReceive.setSendReceiveThisdayInbound(new BigDecimal(0));
+                }else{
+                    wmspSendReceive.setSendReceiveThisdayInbound(sendReceiveThisdayInbound);
+                }
+                BigDecimal sendReceiveThisdayInbound1 = wmspSendReceive.getSendReceiveThisdayInbound();
                 //统计今天天的出库总数
                 BigDecimal sendReceiveThisdayOutbound = wmspSendReceiveMapper.countSendReceiveThisdayOutbound(map2);
-                wmspSendReceive.setSendReceiveThisdayOutbound(sendReceiveThisdayOutbound);
+                if(sendReceiveThisdayOutbound == null){
+                    wmspSendReceive.setSendReceiveThisdayOutbound(new BigDecimal(0));
+                }else {
+                    wmspSendReceive.setSendReceiveThisdayOutbound(sendReceiveThisdayOutbound);
+                }
+                BigDecimal sendReceiveThisdayOutbound1 = wmspSendReceive.getSendReceiveThisdayOutbound();
                 //昨天库存
                 BigDecimal sendReceiveLastdayInventory = wmspSendReceiveMapper.getSendReceiveLastdayInventory(map2);
                 if(sendReceiveLastdayInventory == null){
@@ -200,12 +210,15 @@ public class WmspSendReceiveServiceImpl implements IWmspSendReceiveService {
                 }else{
                     wmspSendReceive.setSendReceiveLastdayInventory(sendReceiveLastdayInventory);
                 }
+
                 BigDecimal sendReceiveLastdayInventory1 = wmspSendReceive.getSendReceiveLastdayInventory();
-                //今天库存
+
+                    //今天库存
                 BigDecimal sendReceiveThisdayInventory = new BigDecimal(sendReceiveLastdayInventory1.intValue()
-                                +sendReceiveThisdayInbound.intValue()-sendReceiveThisdayOutbound.intValue());
+                                +sendReceiveThisdayInbound1.intValue()-sendReceiveThisdayOutbound1.intValue());
+
+                    wmspSendReceive.setSendReceiveThisdayInventory(sendReceiveThisdayInventory);
 
-                wmspSendReceive.setSendReceiveThisdayInventory(sendReceiveThisdayInventory);
                 wmspSendReceive.setInsertUsername("admin");
                 wmspSendReceive.setInsertTime(new Date());
                 wmspSendReceive.setDeleted(new BigDecimal(1));

+ 12 - 2
src/main/resources/com/steerinfo/dil/mapper/WmspGridMaterialMapper.xml

@@ -446,7 +446,7 @@
     on RM.MATERIAL_TYPE_ID=RMT.MATERIAL_TYPE_ID
     left join WMSP_INBOUND_RESULT WIR
     on WIR.MATERIAL_ID = WGM.MATERIAL_ID
-    where WGM.DELETED = 0 and WIR.INBOUND_ISCOMPLETE = 1 order by WGM.INSERT_TIME DESC
+    where RPG.WAREHOUSE_ID = #{warehouseId} AND WGM.DELETED = 0 and WIR.INBOUND_ISCOMPLETE = 1 order by WGM.INSERT_TIME DESC
     )
    <if test="con!=null">
     where "materialName" like #{con} or "warehouseName" like #{con} or "stackingNo" like #{con}
@@ -785,7 +785,17 @@
       AND RM.MATERIAL_MODEL= #{materialModel}
       AND RM.MATERIAL_SPECIFICATION = #{materialSpecification}
   </select>
-  <delete id="deleteGridMaterial">
+    <select id="getGridMaterialAgeList" resultType="java.util.Map">
+      SELECT
+        RMS.MATERIAL_ONLY_CODE "onlyCode"
+        FROM WMSP_GRID_MATERIAL WGM
+        LEFT JOIN RMS_PWAREHOUSE_GRID RPG
+        ON RPG.GRID_ID = WGM.GRID_ID
+        LEFT JOIN RMS_MATERIAL_STEEL RMS
+        ON RMS.MATERIAL_STEEL_ID = WGM.MATERIAL_ID
+        WHERE WGM.INSERT_TIME &lt;= to_date(#{newDate}, 'yyyy-mm-dd hh24:mi:ss' )   AND WGM.UPDATE_TIME IS NULL AND RPG.WAREHOUSE_ID =#{warehouseId}
+    </select>
+    <delete id="deleteGridMaterial">
     update WMSP_GRID_MATERIAL WGM set WGM.DELETED = 1,UPDATE_TIME = #{now}
     where WGM.MATERIAL_ID in
     <foreach collection="thisMaterialDetailedInfos" item="item" open="(" separator="or" close=")">

+ 28 - 7
src/main/resources/com/steerinfo/dil/mapper/WmspInboundResultMapper.xml

@@ -617,6 +617,7 @@
     <!-- 友情提示!!!-->
     <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
     <select id="selectWmsInboundResult" resultType="java.util.LinkedHashMap">
+        select * from (
         SELECT
         wir.INBOUND_ID "inboundId",
         RM.MATERIAL_NAME || RM.MATERIAL_SPECIFICATION || '(' ||
@@ -627,9 +628,9 @@
         RW.WAREHOUSE_NAME "warehouseName",
         RS.STACKING_NO "stackingNo",
         RPG.GRID_GRADATION_NUMBER "gridGradationNumber",
---         关联炉号
+        -- 关联炉号
         rms.MATERIAL_FURNACE_NUMBER "furnaceNumber",
---                关联物资实际重量
+        -- 关联物资实际重量
         rms.MATERIAL_THEORETICAL_WEIGHT "theoreticalWeight"
         FROM wmsp_inbound_result wir
         LEFT JOIN WMSP_GRID_MATERIAL wgm
@@ -651,6 +652,7 @@
         wir.inbound_type = 0
         AND wir.result_deleted = 0
         AND wir.INBOUND_ISCOMPLETE != 2
+        AND rpg.WAREHOUSE_ID = #{warehouseId}
         AND wgm.UPDATE_TIME IS NULL
         <if test="oneDate != null">
             and to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= wir.inbound_time
@@ -660,6 +662,7 @@
             and to_date(#{endDate}, 'yyyy-mm-dd hh24:mi:ss') >= wir.inbound_time
         </if>
         ORDER BY wir.inbound_time DESC
+        )
         <where>
             <if test="INBOUND_NUMBER != null">
                 and "INBOUND_NUMBER" in
@@ -767,6 +770,7 @@
         <include refid="orderBy"></include>
     </select>
     <select id="selectWmsInboundResults" resultType="java.util.LinkedHashMap">
+        select * from(
         SELECT
         wir.INBOUND_ID "inboundId",
         RM.MATERIAL_NAME || RM.MATERIAL_SPECIFICATION || '(' ||
@@ -777,9 +781,9 @@
         RW.WAREHOUSE_NAME "warehouseName",
         RS.STACKING_NO "stackingNo",
         RPG.GRID_GRADATION_NUMBER "gridGradationNumber",
-        --         关联炉号
+        -- 关联炉号
         rms.MATERIAL_FURNACE_NUMBER "furnaceNumber",
-        --                关联物资实际重量
+        -- 关联物资实际重量
         rms.MATERIAL_THEORETICAL_WEIGHT "theoreticalWeight"
         FROM wmsp_inbound_result wir
         LEFT JOIN WMSP_GRID_MATERIAL wgm
@@ -801,6 +805,7 @@
         wir.inbound_type = 0
         AND wir.result_deleted = 0
         AND wir.INBOUND_ISCOMPLETE != 2
+        AND rpg.WAREHOUSE_ID = #{warehouseId}
         <if test="oneDate != null">
             and to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= wir.inbound_time
         </if>
@@ -809,6 +814,7 @@
             and to_date(#{endDate}, 'yyyy-mm-dd hh24:mi:ss') >= wir.inbound_time
         </if>
         ORDER BY wir.inbound_time DESC
+        )
         <where>
             <if test="INBOUND_NUMBER != null">
                 and "INBOUND_NUMBER" in
@@ -916,6 +922,7 @@
         <include refid="orderBy"></include>
     </select>
     <select id="selectWmsReservedResult" resultType="java.util.LinkedHashMap">
+        select * from (
         select
         wir.INBOUND_ID "inboundId",
         RM.MATERIAL_NAME || RM.MATERIAL_SPECIFICATION || '(' ||
@@ -926,14 +933,18 @@
         RW.WAREHOUSE_NAME "warehouseName",
         RS.STACKING_NO "stackingNo",
         RPG.GRID_GRADATION_NUMBER "gridGradationNumber",
-        --         关联炉号
+        -- 关联炉号
         rms.MATERIAL_FURNACE_NUMBER "furnaceNumber",
-        --                关联物资实际重量
+        -- 关联物资实际重量
         rms.MATERIAL_THEORETICAL_WEIGHT "theoreticalWeight"
+
         from wmsp_inbound_result wir
 
         LEFT JOIN RMS_MATERIAL_STEEL rms
         ON rms.MATERIAL_STEEL_ID = wir.MATERIAL_ID
+        -- 				关联实时库存
+        LEFT JOIN WMSP_GRID_MATERIAL wgm
+        ON wgm.MATERIAL_ID = wir.MATERIAL_ID
         LEFT JOIN RMS_MATERIAL rm
         ON rm.MATERIAL_ID = rms.MATERIAL_ID
         LEFT JOIN RMS_PWAREHOUSE_GRID rpg
@@ -945,10 +956,14 @@
         LEFT JOIN RMS_STACKING RS
         ON RS.STACKING_ID = RPG.STACKING_ID
 
+
         where wir.inbound_type = 0
         and wir.result_deleted = 0
         and wir.INBOUND_ISCOMPLETE = 2
+        and wgm.UPDATE_TIME is null
+        and rpg.WAREHOUSE_ID = #{warehouseId}
         order by wir.inbound_time desc
+        )
         <where>
             <if test="INBOUND_NUMBER != null">
                 and "INBOUND_NUMBER" in
@@ -1067,6 +1082,7 @@
     <!--    select MAX(INBOUND_ID) from wmsp_inbound_result-->
     <!--  </select>-->
     <select id="selectWmsReboundResult" resultType="java.util.LinkedHashMap">
+        select * from (
         select wimr.result_no "result_no",
         rw.warehouse_name "warehouse_name",
         rs.stacking_no "stacking_no",
@@ -1110,6 +1126,7 @@
         where rp1.personnel_id = 6
         and wmsp.result_status_ = 1
         and wir.inbound_type = 2
+        )
         <where>
             <if test="result_no != null">
                 and "result_no" in
@@ -1193,6 +1210,7 @@
         <include refid="orderBy"></include>
     </select>
     <select id="selectWmsIvboundResult" resultType="java.util.Map">
+        select * from(
         select wimr.result_id "resultId",
         wimr.result_no "result_no",
         rw1.warehouse_name "before_warehouse",
@@ -1214,6 +1232,7 @@
         join wmsp_ivbound_make_material wimm
         on wimm.result_id = wimr.result_id
         order by wimr.insert_time desc
+        )
         <where>
             <if test="result_no != null">
                 and "result_no" in
@@ -1249,6 +1268,7 @@
         <include refid="orderBy"></include>
     </select>
     <select id="selectWmsIvboundMaterialResult" resultType="java.util.LinkedHashMap">
+        select * from(
         select
         wimr.result_no "result_no",
         rw1.warehouse_name "before_warehouse",
@@ -1364,6 +1384,7 @@
         where wimm.result_id = #{resultId}
         order by
         wir.inbound_time desc
+        )
         <where>
             <if test="result_no != null">
                 and "result_no" in
@@ -1631,7 +1652,7 @@
             AND to_date(#{startDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= WIR.INBOUND_TIME
             AND to_date(#{endDate}, 'yyyy-mm-dd hh24:mi:ss') >= WIR.INBOUND_TIME
         </if>
-        AND WIR.RESULT_DELETED = 0
+        AND WIR.RESULT_DELETED = 0 ORDER BY table3.onetime ASC
         <include refid="orderBy"></include>
     </select>
 

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

@@ -1021,7 +1021,7 @@ where wisr.result_id = #{stackResultId}
     </select>
     <select id="noIssueScanResultList" resultType="java.util.Map">
          select
-               rm.material_name             "materialName",
+             rm.material_name             "materialName",
                rm.material_specification    "materialSpecification",
                rm.material_model            "materialMode",
                rms.material_furnace_number  "materialFurnaceNo",

+ 51 - 16
src/main/resources/com/steerinfo/dil/mapper/WmspInventoryCloseMapper.xml

@@ -447,22 +447,23 @@
   <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
   <select id="selectWmspInventoryClose" resultType="java.util.LinkedHashMap">
     select
-rw.warehouse_name "warehouse_name",
-rm.material_name "material_name",
-wpic.close_lastmonth_inventory "close_lastmonth_inventory",
-wpic.close_thismonth_inbound "close_thismonth_inbound",
-wpic.close_thismonth_outbound "close_thismonth_outbound",
-wpic.close_thismonth_inventory "close_thismonth_inventory"
-from
-wmsp_inventory_close wpic
-join rms_material rm
-on rm.material_id=wpic.material_id
-join rms_warehouse rw
-on rw.warehouse_id=wpic.warehouse_id
-join rms_material_type rmt
-on rmt.material_type_id=rm.material_type_id
-join rms_warehouse_type rwt
-on rwt.warehouse_type_id=rw.warehouse_type_id
+          rw.warehouse_name "warehouse_name",
+          rm.material_name "material_name",
+          wpic.close_lastmonth_inventory "close_lastmonth_inventory",
+          wpic.close_thismonth_inbound "close_thismonth_inbound",
+          wpic.close_thismonth_outbound "close_thismonth_outbound",
+          wpic.close_thismonth_inventory "close_thismonth_inventory"
+   from
+          wmsp_inventory_close wpic
+  join rms_material rm
+  on rm.material_id=wpic.material_id
+  join rms_warehouse rw
+  on rw.warehouse_id=wpic.warehouse_id
+  where wpic.WAREHOUSE_ID = #{warehouseId}
+    <if test="value!=null">
+      and #{value}= to_char(wpic.INSERT_TIME,'yyyy-mm')
+    </if>
+
     <where>
       <if test="warehouse_name != null">
         and "warehouse_name" in
@@ -511,4 +512,38 @@ on rwt.warehouse_type_id=rw.warehouse_type_id
       </if>
     </if>
   </sql>
+
+  <select id="selectSendReceive" resultType="java.util.Map" parameterType="java.math.BigDecimal">
+     select distinct wsr.MATERIAL_ID "materialId"
+     from WMSP_SEND_RECEIVE wsr
+     left join RMS_WAREHOUSE rw
+     on wsr.WAREHOUSE_ID = rw.WAREHOUSE_ID
+     where wsr.WAREHOUSE_ID = #{warehouseId}
+    and wsr.INSERT_TIME BETWEEN add_months(sysdate,-1) and sysdate
+  </select>
+
+  <select id="selectCloseThismonthInbound" resultType="java.math.BigDecimal" parameterType="java.math.BigDecimal">
+    select sum(wsr.SEND_RECEIVE_THISDAY_INBOUND)
+    from WMSP_SEND_RECEIVE wsr
+    where wsr.MATERIAL_ID = #{materialId} and wsr.WAREHOUSE_ID = #{warehouseId}
+     and wsr.INSERT_TIME BETWEEN add_months(sysdate,-1) and sysdate
+  </select>
+
+  <select id="selectCloseThismonthOutbound" resultType="java.math.BigDecimal" parameterType="java.math.BigDecimal">
+    select sum(wsr.SEND_RECEIVE_THISDAY_OUTBOUND)
+    from WMSP_SEND_RECEIVE wsr
+    where wsr.MATERIAL_ID = #{materialId} and wsr.WAREHOUSE_ID = #{warehouseId}
+     and wsr.INSERT_TIME BETWEEN add_months(sysdate,-1) and sysdate
+  </select>
+
+  <select id="selectCloseLastmonthInventory" resultType="java.math.BigDecimal" parameterType="java.math.BigDecimal">
+    select sum(wic.CLOSE_THISMONTH_INVENTORY)
+    from WMSP_INVENTORY_CLOSE wic
+    where wic.MATERIAL_ID = #{materialId} and wic.WAREHOUSE_ID = #{warehouseId}
+        and wic.INSERT_TIME BETWEEN add_months(sysdate,-2) and sysdate
+  </select>
+
+  <select id="getClose" resultType="int">
+    select count(*) from WMSP_INVENTORY_CLOSE where  to_char(insert_time,'YYYY-MM-DD')=TO_CHAR(SYSDATE,'YYYY-MM-DD')
+  </select>
 </mapper>

+ 41 - 10
src/main/resources/com/steerinfo/dil/mapper/WmspRestackMakeResultMapper.xml

@@ -7,8 +7,8 @@
     <result column="AFTER_STACKING_ID" jdbcType="DECIMAL" property="afterStackingId" />
     <result column="BEFORE_LEVEL" jdbcType="DECIMAL" property="beforeLevel" />
     <result column="AFTER_BEFORE_STACKING_ID" jdbcType="DECIMAL" property="afterBeforeStackingId" />
-    
     <result column="QUANTITY" jdbcType="DECIMAL" property="quantity" />
+    <result column="TOTAL_QUANTITY" jdbcType="DECIMAL" property="tatalQuantity" />
     <result column="RESULT_MOVELIST_TIME" jdbcType="TIMESTAMP" property="resultMovelistTime" />
     <result column="KEEPER_ID" jdbcType="DECIMAL" property="keeperId" />
     <result column="RESULT_KEEPER_ISSUE_TIME" jdbcType="TIMESTAMP" property="resultKeeperIssueTime" />
@@ -24,13 +24,13 @@
     <result column="RESULT_REMARK" jdbcType="VARCHAR" property="resultRemark" />
   </resultMap>
   <sql id="columns">
-    RESULT_ID, RESULT_STACK_NUMBER, AFTER_STACKING_ID,BEFORE_LEVEL,AFTER_BEFORE_STACKING_ID,QUANTITY, RESULT_MOVELIST_TIME, KEEPER_ID,
+    RESULT_ID, RESULT_STACK_NUMBER, AFTER_STACKING_ID,BEFORE_LEVEL,AFTER_BEFORE_STACKING_ID,QUANTITY,TOTAL_QUANTITY, RESULT_MOVELIST_TIME, KEEPER_ID,
     RESULT_KEEPER_ISSUE_TIME, INSERT_USERNAME, INSERT_TIME, UPDATE_USERNAME, UPDATE_TIME, 
     INSERT_UPDATE_REMARK, DELETED, DISTRIBUTIONSTATUS, AFTER_WAREHOUSE_ID, RESULT_STATUS, 
     RESULT_REMARK
   </sql>
   <sql id="columns_alias">
-    t.RESULT_ID, t.RESULT_STACK_NUMBER, t.AFTER_STACKING_ID,BEFORE_LEVEL,AFTER_BEFORE_STACKING_ID,QUANTITY, t.RESULT_MOVELIST_TIME,
+    t.RESULT_ID, t.RESULT_STACK_NUMBER, t.AFTER_STACKING_ID,BEFORE_LEVEL,AFTER_BEFORE_STACKING_ID,QUANTITY,TOTAL_QUANTITY, t.RESULT_MOVELIST_TIME,
     t.KEEPER_ID, t.RESULT_KEEPER_ISSUE_TIME, t.INSERT_USERNAME, t.INSERT_TIME, t.UPDATE_USERNAME, 
     t.UPDATE_TIME, t.INSERT_UPDATE_REMARK, t.DELETED, t.DISTRIBUTIONSTATUS, t.AFTER_WAREHOUSE_ID, 
     t.RESULT_STATUS, t.RESULT_REMARK
@@ -61,6 +61,9 @@
       <if test="quantity != null">
         and QUANTITY = #{quantity}
       </if>
+      <if test="tatalQuantity != null">
+        and TOTAL_QUANTITY = #{tatalQuantity}
+      </if>
       <if test="resultMovelistTime != null">
         and TO_CHAR(RESULT_MOVELIST_TIME,'yyyy-MM-dd') = #{resultMovelistTime}
       </if>
@@ -119,6 +122,9 @@
       <if test="afterBeforeStackingId != null">
         and AFTER_BEFORE_STACKING_ID = #{afterBeforeStackingId}
       </if>
+      <if test="tatalQuantity != null">
+        and TOTAL_QUANTITY = #{tatalQuantity}
+      </if>
       <if test="quantity != null">
         and QUANTITY = #{quantity}
       </if>
@@ -185,6 +191,9 @@
     <if test="quantity != null">
       or QUANTITY = #{quantity}
     </if>
+    <if test="tatalQuantity != null">
+      or TOTAL_QUANTITY = #{tatalQuantity}
+    </if>
     <if test="resultMovelistTime != null">
       or TO_CHAR(RESULT_MOVELIST_TIME,'yyyy-MM-dd') = '#{resultMovelistTime}'
     </if>
@@ -226,13 +235,13 @@
     </if>
   </delete>
   <insert id="insert" parameterType="com.steerinfo.dil.model.WmspRestackMakeResult">
-    insert into WMSP_RESTACK_MAKE_RESULT (RESULT_ID, RESULT_STACK_NUMBER, AFTER_STACKING_ID,BEFORE_LEVEL,AFTER_BEFORE_STACKING_ID,QUANTITY,
+    insert into WMSP_RESTACK_MAKE_RESULT (RESULT_ID, RESULT_STACK_NUMBER, AFTER_STACKING_ID,BEFORE_LEVEL,AFTER_BEFORE_STACKING_ID,QUANTITY,TOTAL_QUANTITY,
                                           RESULT_MOVELIST_TIME, KEEPER_ID, RESULT_KEEPER_ISSUE_TIME,
                                           INSERT_USERNAME, INSERT_TIME, UPDATE_USERNAME,
                                           UPDATE_TIME, INSERT_UPDATE_REMARK, DELETED,
                                           DISTRIBUTIONSTATUS, AFTER_WAREHOUSE_ID, RESULT_STATUS,
                                           RESULT_REMARK)
-    values (#{resultId,jdbcType=DECIMAL}, #{resultStackNumber,jdbcType=VARCHAR}, #{afterStackingId,jdbcType=DECIMAL}, #{beforeLevel,jdbcType=DECIMAL}, #{afterBeforeStackingId,jdbcType=DECIMAL},#{quantity,jdbcType=DECIMAL},
+    values (#{resultId,jdbcType=DECIMAL}, #{resultStackNumber,jdbcType=VARCHAR}, #{afterStackingId,jdbcType=DECIMAL}, #{beforeLevel,jdbcType=DECIMAL}, #{afterBeforeStackingId,jdbcType=DECIMAL},#{quantity,jdbcType=DECIMAL},#{tatalQuantity,jdbcType=DECIMAL},
             #{resultMovelistTime,jdbcType=TIMESTAMP}, #{keeperId,jdbcType=DECIMAL}, #{resultKeeperIssueTime,jdbcType=TIMESTAMP},
             #{insertUsername,jdbcType=VARCHAR}, #{insertTime,jdbcType=TIMESTAMP}, #{updateUsername,jdbcType=VARCHAR},
             #{updateTime,jdbcType=TIMESTAMP}, #{insertUpdateRemark,jdbcType=VARCHAR}, #{deleted,jdbcType=DECIMAL},
@@ -257,6 +266,9 @@
       <if test="afterBeforeStackingId != null">
         AFTER_BEFORE_STACKING_ID,
       </if>
+      <if test="tatalQuantity != null">
+        TOTAL_QUANTITY,
+      </if>
       <if test="quantity != null">
         QUANTITY,
       </if>
@@ -320,6 +332,9 @@
       <if test="quantity != null">
         #{quantity,jdbcType=DECIMAL},
       </if>
+      <if test="tatalQuantity != null">
+        #{tatalQuantity,jdbcType=DECIMAL},
+      </if>
       <if test="resultMovelistTime != null">
         #{resultMovelistTime,jdbcType=TIMESTAMP},
       </if>
@@ -368,6 +383,7 @@
         BEFORE_LEVEL = #{beforeLevel,jdbcType=DECIMAL},
         AFTER_BEFORE_STACKING_ID = #{afterBeforeStackingId,jdbcType=DECIMAL},
         QUANTITY = #{quantity,jdbcType=DECIMAL},
+        TOTAL_QUANTITY = #{tatalQuantity,jdbcType=DECIMAL},
         RESULT_MOVELIST_TIME = #{resultMovelistTime,jdbcType=TIMESTAMP},
         KEEPER_ID = #{keeperId,jdbcType=DECIMAL},
         RESULT_KEEPER_ISSUE_TIME = #{resultKeeperIssueTime,jdbcType=TIMESTAMP},
@@ -401,6 +417,9 @@
       <if test="quantity != null">
         QUANTITY = #{quantity,jdbcType=DECIMAL},
       </if>
+      <if test="tatalQuantity != null">
+        TOTAL_QUANTITY = #{tatalQuantity,jdbcType=DECIMAL},
+      </if>
       <if test="resultMovelistTime != null">
         RESULT_MOVELIST_TIME = #{resultMovelistTime,jdbcType=TIMESTAMP},
       </if>
@@ -458,7 +477,7 @@
   <insert id="batchInsert" parameterType="java.util.List">
     insert into WMSP_RESTACK_MAKE_RESULT
     (RESULT_ID,
-    RESULT_STACK_NUMBER, AFTER_STACKING_ID,BEFORE_LEVEL,AFTER_BEFORE_STACKING_ID,QUANTITY,
+    RESULT_STACK_NUMBER, AFTER_STACKING_ID,BEFORE_LEVEL,AFTER_BEFORE_STACKING_ID,TOTAL_QUANTITY,QUANTITY,
     RESULT_MOVELIST_TIME, KEEPER_ID,
     RESULT_KEEPER_ISSUE_TIME, INSERT_USERNAME,
     INSERT_TIME, UPDATE_USERNAME,
@@ -469,7 +488,7 @@
     ( <foreach collection="list" item="item" separator="union all">
     select
     #{item.resultId,jdbcType=DECIMAL},
-    #{item.resultStackNumber,jdbcType=VARCHAR}, #{item.afterStackingId,jdbcType=DECIMAL}, #{item.beforeLevel,jdbcType=DECIMAL}, #{item.afterBeforeStackingId,jdbcType=DECIMAL},#{item.quantity,jdbcType=DECIMAL},
+    #{item.resultStackNumber,jdbcType=VARCHAR}, #{item.afterStackingId,jdbcType=DECIMAL}, #{item.beforeLevel,jdbcType=DECIMAL}, #{item.afterBeforeStackingId,jdbcType=DECIMAL},#{item.quantity,jdbcType=DECIMAL},#{item.tatalQuantity,jdbcType=DECIMAL},
     #{item.resultMovelistTime,jdbcType=TIMESTAMP}, #{item.keeperId,jdbcType=DECIMAL},
     #{item.resultKeeperIssueTime,jdbcType=TIMESTAMP}, #{item.insertUsername,jdbcType=VARCHAR},
     #{item.insertTime,jdbcType=TIMESTAMP}, #{item.updateUsername,jdbcType=VARCHAR},
@@ -507,6 +526,10 @@
     <foreach collection="list" item="item" index="index" separator=" " open="case RESULT_ID" close="end">
       when #{item.resultId,jdbcType=DECIMAL} then #{item.quantity,jdbcType=DECIMAL}
     </foreach>
+    ,TOTAL_QUANTITY=
+    <foreach collection="list" item="item" index="index" separator=" " open="case RESULT_ID" close="end">
+      when #{item.resultId,jdbcType=DECIMAL} then #{item.tatalQuantity,jdbcType=DECIMAL}
+    </foreach>
     ,RESULT_MOVELIST_TIME=
     <foreach collection="list" item="item" index="index" separator=" " open="case RESULT_ID" close="end">
       when #{item.resultId,jdbcType=DECIMAL} then #{item.resultMovelistTime,jdbcType=TIMESTAMP}
@@ -952,7 +975,7 @@
         --            倒垛单创建时间
         wrme.INSERT_TIME "insertTime",
         --             总件数
-        wrme.QUANTITY "quantity",
+        wrme.TOTAL_QUANTITY "quantity",
         --             原层次
         wrme.BEFORE_LEVEL "beforeLevel",
         --            新垛位
@@ -1313,7 +1336,7 @@
     --            倒垛单下发时间
     wrme.RESULT_KEEPER_ISSUE_TIME "resultKeeperIssueTime",
     --             总件数
-    wrme.QUANTITY "quantity",
+    wrme.TOTAL_QUANTITY "quantity",
     --             原层次
     wrme.BEFORE_LEVEL "beforeLevel",
     --            新垛位
@@ -1436,7 +1459,15 @@
   <select id="getQuantity" resultType="java.math.BigDecimal">
     SELECT WRMR.QUANTITY "quantity"
     FROM WMSP_RESTACK_MAKE_RESULT WRMR
-    WHERE WRMR.QUANTITY> 0 AND WRMR.RESULT_ID = #{restackMake}
+    WHERE WRMR.QUANTITY>=0 AND WRMR.RESULT_ID = #{restackMake}
+  </select>
+  <select id="getScanResultList" resultType="java.util.Map">
+    SELECT WRCR.RESULT_ID "resultId"
+    FROM WMSP_RESTACK_MAKE_RESULT WRMR
+--         关联吊牌扫描结果
+    LEFT JOIN WMSP_RESTACK_SCAN_RESULT WRCR
+    ON WRMR.RESULT_ID = WRCR.RESULT_RESTACK_ID
+    WHERE WRCR.RESULT_LOADER_AUDIT =1 AND WRCR.STATUS =1 AND WRMR.RESULT_STACK_NUMBER = #{restackMake}
   </select>
   <!--  根据物资唯一id,逻辑删除对应的餐厨网格状态-->
   <update id="changeMaterialGrid">

+ 33 - 5
src/main/resources/com/steerinfo/dil/mapper/WmspRestackMakeTypeResultMapper.xml

@@ -368,11 +368,39 @@
 <!--  根据当前订单查找已经稽核的物资的扫描吊牌结果和-->
   <select id="getRestackMakeMaterialScanTag" resultType="java.util.Map">
     SELECT
-      WRSR.RESULT_SCAN_TAG "contents",
-      WRMR.AFTER_STACKING_ID "stackingId"
-    FROM WMSP_RESTACK_SCAN_RESULT WRSR
+--         查询倒垛扫描表的主键
+    WRCR.RESULT_ID "scanResultId",
+--         查询倒垛实绩表的主键
+    WRMR.RESULT_ID "resultId",
+--            查询倒垛实绩表的剩余数量
+    WRMR.QUANTITY "quantity",
+--            查询物资的唯一编码
+      WRCR.RESULT_SCAN_TAG "contents",
+--            查询物资的倒垛后的目标垛位
+      WRMR.AFTER_STACKING_ID "stackingId",
+--            物资原来的实时库存主键id
+      WGM.GM_ID "gmId",
+--             查询仓库id
+        RPG.WAREHOUSE_ID "warehouseId",
+--            查询物资id
+        WGM.MATERIAL_ID "materialId",
+--            物资件数
+           WGM.GM_NUMBER "gmNumber",
+--            物资重量
+           WGM.GM_WEIGHT "weight",
+           RPG.GRID_ID "gridId",
+           WRCR.RESULT_RESTACK_ID "restackId"
+    FROM WMSP_RESTACK_SCAN_RESULT WRCR
            LEFT JOIN WMSP_RESTACK_MAKE_RESULT WRMR
-           ON WRMR.RESULT_ID = WRSR.RESULT_RESTACK_ID
-    WHERE WRSR.RESULT_LOADER_AUDIT = 1 AND WRSR.STATUS = 0 AND WRSR.RESULT_RESTACK_ID = #{restackMake}
+           ON WRMR.RESULT_ID = WRCR.RESULT_RESTACK_ID
+            LEFT JOIN RMS_MATERIAL_STEEL RMS
+            ON RMS.MATERIAL_ONLY_CODE = WRCR.MATERIAL_ONLY_CODE
+            LEFT JOIN WMSP_GRID_MATERIAL WGM
+            ON WGM.MATERIAL_ID = RMS.MATERIAL_STEEL_ID
+            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 WRCR.RESULT_LOADER_AUDIT = 1 AND WGM.DELETED = 0 AND WRCR.STATUS = 0 AND WRCR.RESULT_RESTACK_ID = #{restackMake}
   </select>
 </mapper>

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

@@ -685,9 +685,12 @@
     select count(*) from WMSP_RESTACK_SCAN_RESULT WRSR
     where RESULT_LOADER_AUDIT =1 AND  WRSR.MATERIAL_ONLY_CODE=#{onlyCode}
   </select>
-  <select id="getResultId" resultType="java.math.BigDecimal">
-    SELECT WRSR.RESULT_ID
+  <select id="getResultId" resultType="java.util.Map">
+    SELECT
+           WRSR.RESULT_ID "resultId"
     FROM WMSP_RESTACK_SCAN_RESULT WRSR
-    WHERE  WRSR.RESULT_SCAN_TAG = #{content}
+    LEFT JOIN WMSP_RESTACK_MAKE_RESULT WRMR
+    ON WRSR.RESULT_RESTACK_ID = WRMR.RESULT_ID
+    WHERE WRSR.STATUS = 0 AND WRSR.RESULT_SCAN_TAG = #{restackId}
   </select>
 </mapper>

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

@@ -467,8 +467,7 @@
     on rmt.material_type_id=rm.material_type_id
     join rms_warehouse rw
     on rw.warehouse_id=wsr.warehouse_id
-
-   <where>
+    where wsr.WAREHOUSE_ID = #{warehouseId}
     <if test="oneDate != null">
       and to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= wsr.INSERT_TIME
     </if>
@@ -476,7 +475,6 @@
       and to_date(#{startDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= wsr.INSERT_TIME
       and to_date(#{endDate}, 'yyyy-mm-dd hh24:mi:ss') >= wsr.INSERT_TIME
     </if>
-   </where>
     )
     <where>
       <if test="warehouse_name != null">