diff --git a/youchain-system/src/main/java/com/youchain/businessdata/inputJson/Zhengli.java b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/Zhengli.java index d90046a..278bfba 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/inputJson/Zhengli.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/Zhengli.java @@ -20,7 +20,7 @@ public class Zhengli { Point point; - double receivedQty; + double zlQty; } diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/InventoryService.java b/youchain-system/src/main/java/com/youchain/businessdata/service/InventoryService.java index 6598142..a8afe15 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/InventoryService.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/InventoryService.java @@ -143,5 +143,5 @@ public interface InventoryService { */ List queryInvApp(String code); - Inventory getInventory(ItemKey itemKey, Point point, Stock stock, Dept dept, String type); + Inventory getInventory(ItemKey itemKey, Point point, Stock stock, Dept dept, String type,Area area); } diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/AsnDetailServiceImpl.java b/youchain-system/src/main/java/com/youchain/businessdata/service/impl/AsnDetailServiceImpl.java index 737b07a..6a12a46 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/AsnDetailServiceImpl.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/impl/AsnDetailServiceImpl.java @@ -232,22 +232,27 @@ public class AsnDetailServiceImpl implements AsnDetailService { Item item = asnDetail.getItem(); Stock stock = zhengli.getStock(); Point point = zhengli.getPoint(); + Area area = zhengli.getArea(); if (item.getIsInspection()) { throw new BadRequestException("该商品需要质检,请先完成质检!"); } + if(stock==null){ + throw new BadRequestException("整理的容器不能为空!"); + } //生成Itemkey ItemKey itemKey = itemKeyService.getItemKey(item, asnDetail.getPropC1(), asnDetail.getPropC3(), asnDetail.getPropC4(), asnDetail.getPropC5(), asnDetail.getPropC6(), asnDetail.getPropD1()); //生成入库记录 - Task task = taskService.storeTask(asnDetail, null, zhengli.getArea(), itemKey, null, point, zhengli.getReceivedQty()); + Task task = taskService.storeTask(asnDetail, null, zhengli.getArea(), itemKey, null, point, zhengli.getZlQty()); task.setSrcStockCode(stock.getCode()); task.setSrcStock(stock); taskRepository.save(task); //生成库存记录 - Inventory inventory = inventoryService.getInventory(itemKey, point, stock, item.getDept(), BizStatus.ASN); + Inventory inventory = inventoryService.getInventory(itemKey, point, stock, item.getDept(), BizStatus.ASN,area); inventory.setStatus("待入库"); + inventory.setQuantity(inventory.getQuantity() + zhengli.getZlQty()); inventoryService.update(inventory); //是序列号的商品,生成序列号记录 @@ -262,7 +267,7 @@ public class AsnDetailServiceImpl implements AsnDetailService { //回写收货数量 asnDetail.setStock(zhengli.getStock()); asnDetail.setPoint(zhengli.getPoint()); - asnDetail.setReceivedQty(asnDetail.getReceivedQty() + zhengli.getReceivedQty()); + asnDetail.setReceivedQty(asnDetail.getReceivedQty() + zhengli.getZlQty()); asnDetailRepository.save(asnDetail); //容器绑定 diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/InventoryServiceImpl.java b/youchain-system/src/main/java/com/youchain/businessdata/service/impl/InventoryServiceImpl.java index 1ea2e06..c525130 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/InventoryServiceImpl.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/impl/InventoryServiceImpl.java @@ -395,7 +395,7 @@ public class InventoryServiceImpl implements InventoryService { @Override @Transactional(rollbackFor = Exception.class) - public Inventory getInventory(ItemKey itemKey, Point point, Stock stock, Dept dept, String type) { + public Inventory getInventory(ItemKey itemKey, Point point, Stock stock, Dept dept, String type,Area area) { List inventoryList = inventoryRepository.findByInventory(itemKey.getId(), point==null?null:point.getId(), stock.getId(), dept.getId()); Inventory inventory = null; if (inventoryList.size() > 0) { @@ -411,6 +411,7 @@ public class InventoryServiceImpl implements InventoryService { inventory.setStock(stock); inventory.setStockCode(stock.getCode()); inventory.setDept(dept); + inventory.setArea(area); inventoryRepository.save(inventory); } return inventory;