zhs 2 éve
szülő
commit
abbb3d48a8

+ 2 - 2
src/main/java/com/tld/controller/WarehousingController.java

@@ -58,8 +58,8 @@ public class WarehousingController {
      * @return 返回接结果
      */
     @GetMapping("getWarehousingVirtual")
-    public Map<String, Object> getWarehousingVirtual(String uniqueCode, String type){
-        return warehousingService.getWarehousingVirtual(uniqueCode, type);
+    public Map<String, Object> getWarehousingVirtual(String uniqueCode, String type, String warehouseTransferId){
+        return warehousingService.getWarehousingVirtual(uniqueCode, type, warehouseTransferId);
     }
 
     /**

+ 1 - 1
src/main/java/com/tld/mapper/WarehousingMapper.java

@@ -47,7 +47,7 @@ public interface WarehousingMapper {
 
     List<Storage> warehousingFlowing(Storage storage);
 
-    List<WarehousingVirtual> getWarehousingVirtual(@Param("uniqueCode")String uniqueCode, @Param("type")String type);
+    List<WarehousingVirtual> getWarehousingVirtual(@Param("uniqueCode")String uniqueCode, @Param("type")String type, @Param("warehouseTransferId")String warehouseTransferId);
 
     List<Map<String, Object>> export(Storage storage);
 

+ 1 - 1
src/main/java/com/tld/service/WarehousingService.java

@@ -19,7 +19,7 @@ public interface WarehousingService {
 
     Map<String, Object> warehousingFlowing(Storage storage);
 
-    Map<String, Object> getWarehousingVirtual(String uniqueCode, String type);
+    Map<String, Object> getWarehousingVirtual(String uniqueCode, String type, String warehouseTransferId);
 
     void export(Storage storage, HttpServletResponse response);
 

+ 35 - 48
src/main/java/com/tld/service/impl/WarehousingServiceImpl.java

@@ -161,8 +161,13 @@ public class WarehousingServiceImpl implements WarehousingService {
         try {
             //入库信息
             List<WarehousingVirtual> list = new LinkedList<>();
+            //返回采购单id
+            StringBuilder stringBuilder = new StringBuilder();
             //查询入库所需要的信息
             for(WarehousingVirtual warehousingVirtual : warehousingMapper.getVirtual(uniqueCode, type, warehouseTransferId)){
+                //存入给gs的返回数据
+                String code = codeGenerateRk();
+                warehousingVirtual.setStorageCode(code);
                 //查询部门编号
                 List<User> listUser = userMapper.getAllUser(new User().setId(warehousingVirtual.getUserId()));
                 warehousingVirtual.setDepartmentId(listUser.get(0).getDepartmentId());
@@ -171,54 +176,36 @@ public class WarehousingServiceImpl implements WarehousingService {
                 warehousingVirtual.setWllbClass(warehousingVirtual1.getWllbClass());
                 warehousingVirtual.setMaterialId(warehousingVirtual1.getMaterialId());
                 list.add(warehousingVirtual);
-            }
-            //入库
-            warehousingMapper.addStorage(list);//入库流水
-            warehousingMapper.addInventory(list);//库存
-            //返回采购单id
-            StringBuilder stringBuilder = new StringBuilder();
-            //入质检入库数量
-            for(WarehousingVirtual warehousingVirtual1 : warehousingMapper.getVirtual(uniqueCode, type, warehouseTransferId)) {
                 //查询采购单信息
-                ReceiveGoods receiveGoods1 = receiveGoodsMapper.getReceiveGoodsCode(warehousingVirtual1.getReceiveGoodsId());
-                if(Integer.parseInt(warehousingVirtual1.getNum()) <= 0){
+                ReceiveGoods receiveGoods1 = receiveGoodsMapper.getReceiveGoodsCode(warehousingVirtual.getReceiveGoodsId());
+                if(Integer.parseInt(warehousingVirtual.getNum()) <= 0){
                     break;
                 }
-                //采购单剩余入库数量
-                int surplusNum = Integer.parseInt(receiveGoods1.getQualifiedNum()) - Integer.parseInt(receiveGoods1.getWarehousingNum());
-                //剩余入库数量
-                int numInto = Integer.parseInt(warehousingVirtual1.getNum()) - surplusNum;
-                if(numInto < 0) {
-                    receiveGoods1.setWarehousingNum(warehousingVirtual1.getNum());
-                    warehousingMapper.updateReceiveGood(receiveGoods1);
-                } else {
-                    receiveGoods1.setWarehousingNum(String.valueOf(surplusNum));
-                    warehousingMapper.updateReceiveGood(receiveGoods1);
-                    //存入给gs的返回数据
-                    String code = codeGenerateRk();
-                    warehousingVirtual1.setStorageCode(code);
-                    ReturnWarehousing returnWarehousing = new ReturnWarehousing()
-                            .setWarehousingNum(receiveGoods1.getWarehousingNum())
-                            .setGsCk(warehousingVirtual1.getGsCk())
-                            .setSourceType(receiveGoods1.getSourceType())
-                            .setMoveType(receiveGoods1.getMoveType())
-                            .setEntryNumber(receiveGoods1.getEntryNumber())
-                            .setWbs(receiveGoods1.getWbs())
-                            .setId(receiveGoods1.getId())
-                            .setMaterialId(receiveGoods1.getMaterialId())
-                            .setStorageCode(code)
-                            .setOrderNumber(receiveGoods1.getOrderNumber())
-                            .setUserName(warehousingVirtual1.getUserName())
-                            .setStorageLocationCode(warehousingVirtual1.getStorageLocationCode());
-                    warehousingMapper.addReturnWarehousing(returnWarehousing);
-                    warehousingMapper.updateStorage(warehousingVirtual1);//增加入库编号
-                    //判断是否有已存在的采购单号
-                    if(!stringBuilder.toString().contains(receiveGoods1.getOrderNumber() + ",")){
-                        stringBuilder.append(receiveGoods1.getOrderNumber() + ",");
-                    }
+                receiveGoods1.setWarehousingNum(warehousingVirtual.getNum());
+                warehousingMapper.updateReceiveGood(receiveGoods1);
+                ReturnWarehousing returnWarehousing = new ReturnWarehousing()
+                        .setWarehousingNum(receiveGoods1.getWarehousingNum())
+                        .setGsCk(warehousingVirtual.getGsCk())
+                        .setSourceType(receiveGoods1.getSourceType())
+                        .setMoveType(receiveGoods1.getMoveType())
+                        .setEntryNumber(receiveGoods1.getEntryNumber())
+                        .setWbs(receiveGoods1.getWbs())
+                        .setId(receiveGoods1.getId())
+                        .setMaterialId(receiveGoods1.getMaterialId())
+                        .setStorageCode(warehousingVirtual.getStorageCode())
+                        .setOrderNumber(receiveGoods1.getOrderNumber())
+                        .setUserName(warehousingVirtual.getUserName())
+                        .setStorageLocationCode(warehousingVirtual.getStorageLocationCode());
+                warehousingMapper.addReturnWarehousing(returnWarehousing);
+                warehousingMapper.updateStorage(warehousingVirtual1);//增加入库编号
+                //判断是否有已存在的采购单号
+                if(!stringBuilder.toString().contains(receiveGoods1.getOrderNumber() + ",")){
+                    stringBuilder.append(receiveGoods1.getOrderNumber() + ",");
                 }
-                warehousingVirtual1.setNum(String.valueOf(numInto));
             }
+            //入库
+            warehousingMapper.addStorage(list);//入库流水
+            warehousingMapper.addInventory(list);//库存
             warehousingMapper.delVirtual(uniqueCode);//删除临时表数据
             map.put("data", stringBuilder.toString());
             map.put("msg", "200");
@@ -270,10 +257,10 @@ public class WarehousingServiceImpl implements WarehousingService {
                     error.setDataVal(returnData.toJSONString());
                     errorMapper.addError(error);
                 } else {
-                    Map<String, Object> data = (Map<String, Object>) result.get("data");
-                    if (data.get("State").toString().equals("0")) {
+                    JSONObject jsonObject = JSONObject.parseObject(JSON.parseObject((String) result.get("data")).get("result").toString());
+                    if (jsonObject.get("State").toString().equals("0")) {
                         //如果失败存入报错信息跟数据
-                        error.setErrorInfo(result.get("data").toString());
+                        error.setErrorInfo(jsonObject.get("Msg").toString());
                         error.setUrl("http://42.159.85.29:52480/cwbase/sg/V1/ERP/TELD/DEVTEST/API_WMS_PurInStock/CreateProductiveOutStock");
                         error.setDataVal(returnData.toJSONString());
                         errorMapper.addError(error);
@@ -309,10 +296,10 @@ public class WarehousingServiceImpl implements WarehousingService {
     }
 
     @Override
-    public Map<String, Object> getWarehousingVirtual(String uniqueCode, String type) {
+    public Map<String, Object> getWarehousingVirtual(String uniqueCode, String type, String warehouseTransferId) {
         Map<String, Object> map = new HashMap<>();
         try {
-            List<WarehousingVirtual> list = warehousingMapper.getWarehousingVirtual(uniqueCode, type);
+            List<WarehousingVirtual> list = warehousingMapper.getWarehousingVirtual(uniqueCode, type, warehouseTransferId);
             map.put("data", list);
             map.put("msg", "200");
         } catch (Exception e) {

+ 0 - 21
src/main/resources/mapper/AskGoodsMapper.xml

@@ -873,27 +873,6 @@
     <!-- 其他入库查询库存是否存在 -->
     <select id="getInventoryInfoOther" resultType="com.tld.model.Inventory">
         select
-        a.id,
-        a.storage_location_code,
-        a.wllb_class,
-        a.library_type,
-        a.material_id,
-        a.amount,
-        a.total,
-        a.totime,
-        a.hold,
-        a.amount_lock,
-        a.account_sleeve,
-        a.wbs,
-        a.supplier_id,
-        a.serial,
-        a.wllb_code,
-        a.produc_date,
-        a.scrq,
-        a.produc_batch,
-        a.attribute,
-        b.name as accountName,
-        c.storage_location_name as storageLocationName
             a.id,
             a.storage_location_code,
             a.wllb_class,

+ 2 - 1
src/main/resources/mapper/ReceiveGoodsMapper.xml

@@ -380,6 +380,7 @@
             a.order_code,
             b.name as materialName,
             c.name as supplierName,
+            a.warehousing_num,
             a.purchase_num,
             a.arrival_num,
             a.type,
@@ -451,6 +452,6 @@
         LEFT JOIN tld_receive_goods_f b on a.order_code = b.order_code
         JOIN tld_material c on a.material_id = c.tld_id
         LEFT JOIN tld_customer f on a.supplier_id = f.code
-        WHERE id = #{receiveGoodsId}
+        WHERE a.id = #{receiveGoodsId}
     </select>
 </mapper>

+ 34 - 27
src/main/resources/mapper/WarehousingMapper.xml

@@ -27,10 +27,10 @@
     <insert id="addWarehousingVirtual">
         insert into tld_warehousing_virtual(unique_code, num, storage_location_code, wllb_code, supp_id, serial, type,
                                             produc_date, capacity, seq, user_id, storage_location_name, attribute,
-                                            notice_id, warehouse_transfer_id, storage_location_code_ck,wbs)
+                                            notice_id, warehouse_transfer_id, storage_location_code_ck,wbs, receive_goods_id, account_sleeve)
         values (#{uniqueCode}, #{num}, #{storageLocationCode}, #{wllbCode}, #{suppId}, #{serial}, #{type},
                 #{producDate}, #{capacity}, #{seq}, #{userId}, #{storageLocationName}, #{attribute}, #{noticeId},
-                #{warehouseTransferId}, #{storageLocationCodeCk},#{wbs})
+                #{warehouseTransferId}, #{storageLocationCodeCk},#{wbs},#{receiveGoodsId},#{accountSleeve})
     </insert>
     <!-- 查询总数量 -->
     <select id="getScanNum" resultType="java.util.Map">
@@ -86,23 +86,27 @@
     <!-- 查询虚拟表数据进行入库 -->
     <select id="getVirtual" resultType="com.tld.model.WarehousingVirtual">
         select
-        a.id,
-        a.unique_code,
-        a.num,
-        a.storage_location_code,
-        a.wllb_code,
-        a.supp_id,
-        a.serial,
-        a.type,
-        a.produc_date,
-        a.capacity,
-        a.seq,
-        a.user_id,
-        a.attribute,
-        a.warehouse_transfer_id,
-        a.storage_location_code_ck,
-        a.storage_location_name,
-        b.user_name
+            a.id,
+            a.unique_code,
+            a.num,
+            a.storage_location_code,
+            a.wllb_code,
+            a.supp_id,
+            a.serial,
+            a.type,
+            a.produc_date,
+            a.capacity,
+            a.seq,
+            a.user_id,
+            a.attribute,
+            a.warehouse_transfer_id,
+            a.storage_location_code_ck,
+            a.storage_location_name,
+            b.user_name,
+            a.receive_goods_id,
+            a.wbs,
+            a.account_sleeve,
+            a.warehouse_transfer_id
         from tld_warehousing_virtual a
         left join tld_user b on a.user_id = b.id
         where a.unique_code = #{uniqueCode} and a.type = #{type}
@@ -114,7 +118,7 @@
     <select id="getReceiveGoods" resultType="com.tld.model.ReceiveGoods">
         SELECT a.id,
                a.order_code,
-               a.material_id,
+               a.material_id,+
                a.purchase_num,
                a.arrival_num,
                a.type,
@@ -132,9 +136,9 @@
                b.move_type,
                f.name as supplierName
         FROM tld_receive_goods a
-                 LEFT JOIN tld_receive_goods_f b on a.order_code = b.order_code
-                 JOIN tld_material c on a.material_id = c.tld_id
-                 LEFT JOIN tld_customer f on a.supplier_id = f.code
+        LEFT JOIN tld_receive_goods_f b on a.order_code = b.order_code
+        JOIN tld_material c on a.material_id = c.tld_id
+        LEFT JOIN tld_customer f on a.supplier_id = f.code
         WHERE a.supplier_id = #{suppId}
           and IFNULL(a.warehousing_num, 0) <![CDATA[<]]> a.qualified_num
           and c.code = #{wllbCode}
@@ -158,7 +162,7 @@
         tld_storage(wllb_code,supplier_id,serial,produc_date,produc_batch,capacity,seq,type,user_id,department_id,storage_location_code,scrq,storage_code,wbs,order_code)
         values
         <foreach collection="list" index="index" item="item" separator=",">
-            (#{item.wllbCode},#{item.suppId},#{item.serial},#{item.producDate},#{item.producDate},#{item.num},#{item.seq},#{item.type},#{item.userId},#{item.departmentId},#{item.storageLocationCode},now(),#{item.storageCode},#{item.wbs},#{item.orderCode})
+            (#{item.wllbCode},#{item.suppId},#{item.serial},#{item.producDate},#{item.producDate},#{item.num},#{item.seq},#{item.type},#{item.userId},#{item.departmentId},#{item.storageLocationCode},now(),#{item.storageCode},#{item.wbs},#{item.warehouseTransferId})
         </foreach>
     </insert>
     <!-- 插入库存 -->
@@ -271,10 +275,13 @@
                capacity,
                seq,
                user_id,
-               storage_location_name
+               storage_location_name,
+               warehouse_transfer_id,
+               wbs,
+               receive_goods_id
         from tld_warehousing_virtual
         where unique_code = #{uniqueCode}
-          and type = #{type}
+          and type = #{type} and warehouse_transfer_id = #{warehouseTransferId}
         order by id desc
     </select>
     <!-- 查询导出内容 -->
@@ -460,7 +467,7 @@
                b.wllb_class,
                c.source_type,
                c.move_type,
-               b.code        as materialCode,
+               b.code as materialCode,
                c.notice_time as noticeTime,
                c.company_number
         from tld_notice a