Переглянути джерело

出入库单对接对接出入库策略

oyq28 1 рік тому
батько
коміт
aa4f978453

+ 2 - 1
src/main/java/com/imcs/admin/business/service/WInventoryManagementService.java

@@ -3,6 +3,7 @@ package com.imcs.admin.business.service;
 import com.github.pagehelper.PageInfo;
 import com.imcs.admin.entity.WInventoryManagement;
 import com.imcs.admin.entity.WInventoryManagementDetail;
+import com.imcs.admin.entity.assemble.PolicyOutResult;
 import com.imcs.admin.entity.assemble.WInventoryManagementGroup;
 
 import java.util.List;
@@ -18,7 +19,7 @@ public interface WInventoryManagementService {
 
 
 
-    List<WInventoryManagement> getPalletCode(String materialCode);
+    List<PolicyOutResult> getPalletCode(String materialCode);
 
     // 根据物料编码查询物料信息
     List<WInventoryManagementGroup> getPalletCodeByMaterialCodes(List<String> materialCodes);

+ 21 - 7
src/main/java/com/imcs/admin/business/service/impl/OrderServiceImpl.java

@@ -1,5 +1,6 @@
 package com.imcs.admin.business.service.impl;
 
+import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.collection.CollectionUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -11,20 +12,25 @@ import com.imcs.admin.business.service.OrderService;
 import com.imcs.admin.common.Result;
 import com.imcs.admin.entity.*;
 import com.imcs.admin.entity.assemble.PolicyInputResult;
+import com.imcs.admin.entity.assemble.PolicyOutResult;
+import com.imcs.admin.entity.assemble.RequiredMaterialDetail;
 import com.imcs.admin.entity.query.PolicyInputQuery;
 import org.apache.commons.lang.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.Map;
 
 @Transactional
 @Service
 public class OrderServiceImpl extends BaseServiceImpl implements OrderService {
 
-
+    @Autowired
+    ImportOrExportPolicyServiceImpl importOrExportPolicyService;
     @Override
     public Page getInList(WInventoryTransactionOrders order) {
         Page page=new Page<>(order.getPage(),order.getSize());
@@ -243,19 +249,27 @@ public class OrderServiceImpl extends BaseServiceImpl implements OrderService {
         LambdaQueryWrapper<WInventoryTransactionOrdersDetail> detailLambdaQueryWrapper = Wrappers.lambdaQuery(WInventoryTransactionOrdersDetail.class).eq(WInventoryTransactionOrdersDetail::getInventoryTransactionOrdersId,id);
         List<WInventoryTransactionOrdersDetail> wInventoryTransactionOrdersDetails = ordersDetailDao.selectList(detailLambdaQueryWrapper);
         wInventoryTransactionOrders.setDetailList(wInventoryTransactionOrdersDetails);
+
+
+        List<RequiredMaterialDetail> requiredMaterialDetails = BeanUtil.copyToList(wInventoryTransactionOrdersDetails, RequiredMaterialDetail.class);
+        Result exportPolicy = importOrExportPolicyService.findExportPolicy(requiredMaterialDetails);
+        Map<String , List<PolicyOutResult>> map=(Map<String , List<PolicyOutResult>>)exportPolicy.getData();
         wInventoryTransactionOrdersDetails.stream().forEach(vo->{
-            List<WInventoryManagement> inventoryList = wInventoryManagementDao.getPalletCode(vo.getMaterialCode());
-            vo.setInventoryManagementList(inventoryList);
-            if(CollectionUtil.isNotEmpty(inventoryList)){
+            List<PolicyOutResult> policyOutResults = map.get(vo.getMaterialCode());
+            vo.setInventoryManagementList(policyOutResults);
+            if(CollectionUtil.isNotEmpty(policyOutResults)){
 
                 //前端初始化 最多的一个库存
-                vo.setStorageLocationCode(inventoryList.get(0).getStorageLocationCode());
-                vo.setOutPalletCode(inventoryList.get(0).getPalletCode());
+                vo.setStorageLocationCode(policyOutResults.get(0).getStorageLocationCode());
+                vo.setOutPalletCode(policyOutResults.get(0).getPalletCode());
                 //库存数量
-                vo.setAmount(inventoryList.get(0).getAmount());
+                vo.setAmount(policyOutResults.get(0).getAmount());
             }
 
         });
+
+
+
         return wInventoryTransactionOrders;
     }
 }

+ 17 - 3
src/main/java/com/imcs/admin/business/service/impl/WInventoryManagementServiceImpl.java

@@ -7,8 +7,12 @@ import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.imcs.admin.business.constants.Status;
 import com.imcs.admin.business.service.WInventoryManagementService;
+import com.imcs.admin.common.Result;
 import com.imcs.admin.entity.*;
+import com.imcs.admin.entity.assemble.PolicyOutResult;
+import com.imcs.admin.entity.assemble.RequiredMaterialDetail;
 import com.imcs.admin.entity.assemble.WInventoryManagementGroup;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.*;
@@ -24,10 +28,20 @@ import java.util.concurrent.atomic.AtomicReference;
 @Service("wInventoryManagementService")
 public class WInventoryManagementServiceImpl extends BaseServiceImpl implements WInventoryManagementService {
 
-
+    @Autowired
+    ImportOrExportPolicyServiceImpl importOrExportPolicyService;
     @Override
-    public List<WInventoryManagement> getPalletCode(String materialCode) {
-        return wInventoryManagementDao.getPalletCode(materialCode);
+    public List<PolicyOutResult> getPalletCode(String materialCode) {
+         //wInventoryManagementDao.getPalletCode(materialCode);
+        List<WInventoryManagement> list=new ArrayList<>();
+        List<RequiredMaterialDetail> requiredMaterialDetailList=new ArrayList<>();
+        RequiredMaterialDetail requiredMaterialDetail=new RequiredMaterialDetail();
+        requiredMaterialDetail.setMaterialCode(materialCode);
+        requiredMaterialDetailList.add(requiredMaterialDetail);
+        Result exportPolicy = importOrExportPolicyService.findExportPolicy(requiredMaterialDetailList);
+        Map<String , List<PolicyOutResult>> map=(Map<String , List<PolicyOutResult>>)exportPolicy.getData();
+
+        return map.get(materialCode);
     }
 
     @Override

+ 2 - 1
src/main/java/com/imcs/admin/entity/WInventoryTransactionOrdersDetail.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.imcs.admin.entity.assemble.PolicyOutResult;
 import lombok.Data;
 
 import java.util.Date;
@@ -92,7 +93,7 @@ public class WInventoryTransactionOrdersDetail implements Serializable {
     private Integer updatedBy;
 
     @TableField(exist = false)
-    private List<WInventoryManagement> inventoryManagementList;
+    private List<PolicyOutResult> inventoryManagementList;
     @TableField(exist = false)
     private String outPalletCode;
     @TableField(exist = false)

+ 3 - 3
src/main/resources/static/wms/in/add.html

@@ -41,11 +41,11 @@
                 <el-input type="text" v-model="binCode" placeholder="料箱编码" :disabled="true"></el-input>
             </el-form-item>
             <el-form-item>
-                <el-input type="text" v-model="inputCode" placeholder="扫码顺序 托盘 > 料盒 > 物料编码" style="width: 300px" ></el-input>
+                <el-input type="text" v-model="inputCode" placeholder="扫码顺序 托盘 > 料盒 > 物料编码" @change="addNewRow()" style="width: 300px" ></el-input>
             </el-form-item>
-            <el-form-item>
+            <!--<el-form-item>
                 <el-button type="primary" @click="addNewRow()">新增</el-button>
-            </el-form-item>
+            </el-form-item>-->
             <el-form-item>
                 <el-button type="primary" @click="getPalletCode()">空托盘出库</el-button>
             </el-form-item>