Sfoglia il codice sorgente

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

liyg 2 anni fa
parent
commit
2a7659b821

+ 10 - 0
src/main/java/com/steerinfo/dil/controller/WmspGridMaterialController.java

@@ -366,6 +366,16 @@ public class WmspGridMaterialController extends BaseRESTfulController {
     }
     }
 
 
 
 
+    @PostMapping("/deleteInboundMaterial")
+    public  RESTfulResult deleteInboundMaterial(String warehouseId, String materialCode,String materialSpecification, String materialModel, Integer quantity
+    ){
+        int result = wmspGridMaterialService.deleteInboundMaterial(warehouseId,materialCode,materialSpecification,materialModel,quantity);
+//        判断当前的result是否大于0
+        if (result<1){
+            return failed(-1);
+        }
+        return success(result);
+    }
 
 
 }
 }
 
 

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

@@ -186,12 +186,14 @@ public class WmspOutboundResultController extends BaseRESTfulController {
     @PostMapping(value = "/insertwmspOutboundScanResult")
     @PostMapping(value = "/insertwmspOutboundScanResult")
     public synchronized RESTfulResult insertwmspOutboundScanResult(@RequestBody(required = false) Map<String, Object> map) throws ParseException {
     public synchronized RESTfulResult insertwmspOutboundScanResult(@RequestBody(required = false) Map<String, Object> map) throws ParseException {
         //判断物资是否满足要求,目前以下三种不做处理的判断
         //判断物资是否满足要求,目前以下三种不做处理的判断
+
         //获取装卸工扫描吊牌结果   HRB400-14-21706854-9-3049-280-20211001015115-7a63cd87a4095e7f-08010103010100003-4
         //获取装卸工扫描吊牌结果   HRB400-14-21706854-9-3049-280-20211001015115-7a63cd87a4095e7f-08010103010100003-4
         String subResultMaterial = map.get("resultMaterial").toString().substring(0,map.get("resultMaterial").toString().length() - 1);
         String subResultMaterial = map.get("resultMaterial").toString().substring(0,map.get("resultMaterial").toString().length() - 1);
         //获取出库单号
         //获取出库单号
+        String materialOnlyCode=subResultMaterial.split("-")[7];
         BigDecimal resultId = new BigDecimal(map.get("resultId").toString());
         BigDecimal resultId = new BigDecimal(map.get("resultId").toString());
         //物资唯一编码
         //物资唯一编码
-        String materialOnlyCode=subResultMaterial.split("-")[7];
+
 
 
         //判断物质是否已经被扫描
         //判断物质是否已经被扫描
         int isScan = wmspOutboundResultService.ExistScanResult(subResultMaterial);
         int isScan = wmspOutboundResultService.ExistScanResult(subResultMaterial);
@@ -224,7 +226,7 @@ public class WmspOutboundResultController extends BaseRESTfulController {
 
 
         if(list.size()>0&&isScan==0&&(materialNumber!=null&&materialNumber!=0)&&(materialNumber>scanCount)){
         if(list.size()>0&&isScan==0&&(materialNumber!=null&&materialNumber!=0)&&(materialNumber>scanCount)){
             //替代操作
             //替代操作
-            int result = wmspOutboundResultService.replaceSave(materialOnlyCode);
+            //int result = wmspOutboundResultService.replaceSave(materialOnlyCode);
             //创建扫描实绩
             //创建扫描实绩
             //通过装卸工工号查询装卸工Id
             //通过装卸工工号查询装卸工Id
             BigDecimal personnelId = wmspOutboundResultService.getPersonnelIdByJobnumber(map.get("personnelJobNumber").toString());
             BigDecimal personnelId = wmspOutboundResultService.getPersonnelIdByJobnumber(map.get("personnelJobNumber").toString());

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

@@ -80,4 +80,6 @@ public interface IWmspGridMaterialService  {
                                     String materialModel,
                                     String materialModel,
                                     Integer status,
                                     Integer status,
                                     Integer num);
                                     Integer num);
+
+    int deleteInboundMaterial(String warehouseId, String materialCode, String materialSpecification, String materialModel, Integer quantity);
 }
 }

+ 1 - 2
src/main/java/com/steerinfo/dil/service/impl/RmsMaterialSteelServiceImpl.java

@@ -152,7 +152,6 @@ public class RmsMaterialSteelServiceImpl implements IRmsMaterialSteelService {
         HashMap<String, Object> mapRmsMaterialSteel = new HashMap<>();
         HashMap<String, Object> mapRmsMaterialSteel = new HashMap<>();
         mapRmsMaterialSteel.put("materialOnlyCode",MaterialOnlyCode);
         mapRmsMaterialSteel.put("materialOnlyCode",MaterialOnlyCode);
         Map<String,Object> k =getMaterialSteel(mapRmsMaterialSteel);
         Map<String,Object> k =getMaterialSteel(mapRmsMaterialSteel);
-
         //根据物资编码规查找唯一的物资ID
         //根据物资编码规查找唯一的物资ID
         HashMap<String, Object> mapMaterial = new HashMap<>();
         HashMap<String, Object> mapMaterial = new HashMap<>();
 
 
@@ -191,7 +190,7 @@ public class RmsMaterialSteelServiceImpl implements IRmsMaterialSteelService {
         //设置物资支数
         //设置物资支数
         //判断支数不为空
         //判断支数不为空
         if (materialCount.length()!=0) {
         if (materialCount.length()!=0) {
-            rmsMaterialSteel.setMaterialCount(new BigDecimal(materialCount));
+            rmsMaterialSteel.setMaterialCount(new BigDecimal(materialCount.trim()));
         }
         }
         if(MaterialProductionDate.substring(7, MaterialProductionDate.length()-1).length()!=0) {
         if(MaterialProductionDate.substring(7, MaterialProductionDate.length()-1).length()!=0) {
             //设置物资生产日期,将字符串转换为时间
             //设置物资生产日期,将字符串转换为时间

+ 40 - 2
src/main/java/com/steerinfo/dil/service/impl/WmspGridMaterialServiceImpl.java

@@ -390,8 +390,10 @@ public class WmspGridMaterialServiceImpl  implements IWmspGridMaterialService {
             return -1;
             return -1;
         }else{
         }else{
             int count = 0;
             int count = 0;
-//        遍历materialList
+        //遍历materialList
             //创建金蝶报文
             //创建金蝶报文
+            //防止前台没请求到
+            materialTheWeight = getTheoreticalByInfo(warehouseId,materialCode,materialSpecification,materialModel,status,quantity).toString();
             BigDecimal inboundEasId = wmspInboundEasMapper.inboundEasId();
             BigDecimal inboundEasId = wmspInboundEasMapper.inboundEasId();
             Map<String, Object> head = new HashMap<>();
             Map<String, Object> head = new HashMap<>();
             head.put("number",inboundEasId);
             head.put("number",inboundEasId);
@@ -443,7 +445,11 @@ public class WmspGridMaterialServiceImpl  implements IWmspGridMaterialService {
             wmspInboundEas.setInsertTime(new Date());
             wmspInboundEas.setInsertTime(new Date());
             wmspInboundEas.setMaterialActuallyWeight(new BigDecimal(actuallyWeight));
             wmspInboundEas.setMaterialActuallyWeight(new BigDecimal(actuallyWeight));
             wmspInboundEas.setMaterialNum(new BigDecimal(quantity));
             wmspInboundEas.setMaterialNum(new BigDecimal(quantity));
-            wmspInboundEas.setMaterialTheroticalWeight(new BigDecimal(materialTheWeight));
+            if(DataChange.dataToBigDecimal(warehouseId).intValue() == 3){
+                wmspInboundEas.setMaterialTheroticalWeight(new BigDecimal(actuallyWeight));
+            }else{
+                wmspInboundEas.setMaterialTheroticalWeight(new BigDecimal(materialTheWeight));
+            }
             wmspInboundEas.setInsertUsername(remark);
             wmspInboundEas.setInsertUsername(remark);
             wmspInboundEas.setInsertUpdateRemark(json.toString());
             wmspInboundEas.setInsertUpdateRemark(json.toString());
             wmspInboundEas.setUpdateUsername(resultMap);
             wmspInboundEas.setUpdateUsername(resultMap);
@@ -604,4 +610,36 @@ public class WmspGridMaterialServiceImpl  implements IWmspGridMaterialService {
     }
     }
 
 
 
 
+    @Override
+    public int deleteInboundMaterial(String warehouseId, String materialCode, String materialSpecification, String materialModel, Integer quantity) {
+        //        设置状态为预留转入库
+        Integer status = 1;
+//        根据前端传过来的物资型号,物资规格查询当前实时库存中的物资id
+        List<Map<String,Object>> materialIdList=wmspGridMaterialMapper.getMaterialIdes(warehouseId,materialCode,materialSpecification,materialModel,status);
+        for (Map<String,Object> map:materialIdList){}
+        //        当数量小于零的时候
+        if (quantity<=0){
+            return 0;
+        }else if (quantity>materialIdList.size()){
+            //        当数量大于查询到的数量
+            return -1;
+        }else{
+            int count = 0;
+            //遍历materialList
+            //创建金蝶报文
+            //防止前台没请求到
+            for (int i =0;i<quantity;i++){
+                Map<String,Object> map =materialIdList.get(i);
+                BigDecimal inboundId=(BigDecimal) map.get("inboundId");
+//            创建入库实体类
+                WmspInboundResult wmspInboundResult = new WmspInboundResult();
+                wmspInboundResult.setInboundId(inboundId);
+                wmspInboundResult.setInboundIscomplete(new BigDecimal(2));
+                wmspInboundResult.setIsupload(new BigDecimal(1));
+//            修改入库实绩
+                count += wmspInboundResultMapper.updateByPrimaryKeySelective(wmspInboundResult);
+            }
+            return count;
+        }
+    }
 }
 }

+ 5 - 3
src/main/java/com/steerinfo/dil/service/impl/WmspOutboundResultServiceImpl.java

@@ -386,6 +386,7 @@ public class WmspOutboundResultServiceImpl  implements IWmspOutboundResultServic
         //插入扫描实绩
         //插入扫描实绩
         return scanResultInsert(wmspOutboundScanResult);
         return scanResultInsert(wmspOutboundScanResult);
     }
     }
+
     public int deleteGridMaterial(String materialOnlyCode) {
     public int deleteGridMaterial(String materialOnlyCode) {
             int i=0;
             int i=0;
             String[] tag1 = materialOnlyCode.split("\\-");
             String[] tag1 = materialOnlyCode.split("\\-");
@@ -565,9 +566,10 @@ public class WmspOutboundResultServiceImpl  implements IWmspOutboundResultServic
     public synchronized int disorderlyOutbound(Map<String, Object> mapVal) throws Exception {
     public synchronized int disorderlyOutbound(Map<String, Object> mapVal) throws Exception {
         //需要获取几个因子,1.物资名称
         //需要获取几个因子,1.物资名称
         String masterialName = (String) mapVal.get("materialName");
         String masterialName = (String) mapVal.get("materialName");
-        if(!masterialName.contains("乱尺")){
-            return -1;
-        }
+        //注释掉这个判断
+        //if(!masterialName.contains("乱尺")){
+        //    return -1;
+        //}
         //获取运输订单ID
         //获取运输订单ID
         BigDecimal orderId = DataChange.dataToBigDecimal(mapVal.get("orderId"));
         BigDecimal orderId = DataChange.dataToBigDecimal(mapVal.get("orderId"));
         //根据运输订单ID查询订单类型
         //根据运输订单ID查询订单类型

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

@@ -461,7 +461,7 @@
                 GROUP BY RM.MATERIAL_CODE
                 GROUP BY RM.MATERIAL_CODE
         ) table1
         ) table1
        ON table1.code = RM.MATERIAL_CODE
        ON table1.code = RM.MATERIAL_CODE
-      WHERE RPG.WAREHOUSE_ID = #{warehouseId} AND RM.MATERIAL_NAME IS NOT NULL AND WIR.ISUPLOAD='0'
+      WHERE RPG.WAREHOUSE_ID = #{warehouseId} AND RM.MATERIAL_NAME IS NOT NULL AND WIR.ISUPLOAD='0' AND WIR.INSERT_UPDATE_REMARK IS NULL
       <if test="con!=null and con!='null'">
       <if test="con!=null and con!='null'">
         AND RM.MATERIAL_NAME LIKE (#{con})
         AND RM.MATERIAL_NAME LIKE (#{con})
         AND table1.count>0
         AND table1.count>0

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

@@ -791,6 +791,7 @@
     WHERE WIR.RESULT_DELETED =0
     WHERE WIR.RESULT_DELETED =0
       AND WIR.INBOUND_ISCOMPLETE =#{status}
       AND WIR.INBOUND_ISCOMPLETE =#{status}
       AND WIR.RESULT_STATUS >1
       AND WIR.RESULT_STATUS >1
+      AND WIR.INSERT_UPDATE_REMARK IS NULL
       AND RPG.WAREHOUSE_ID = #{warehouseId}
       AND RPG.WAREHOUSE_ID = #{warehouseId}
       AND WIR.INBOUND_TYPE = 0
       AND WIR.INBOUND_TYPE = 0
       AND RM.MATERIAL_CODE = #{materialCode}
       AND RM.MATERIAL_CODE = #{materialCode}