diff --git a/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/service/impl/BasStockServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/service/impl/BasStockServiceImpl.java index 884c5e3..5f784e7 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/service/impl/BasStockServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/service/impl/BasStockServiceImpl.java @@ -10,6 +10,8 @@ import com.ruoyi.bas.cargoSpace.service.IBasCargoSpaceService; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.SysRole; import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.in.stockin.domain.InStockin; +import com.ruoyi.in.stockin.service.IInStockinService; import com.ruoyi.in.stockindetail.domain.InStockinDetail; import com.ruoyi.in.stockindetail.service.IInStockinDetailService; import com.ruoyi.stock.freeze.domain.BasStockFreezeRecord; @@ -51,6 +53,8 @@ public class BasStockServiceImpl implements IBasStockService private IBasJobIdService basJobIdService; @Autowired private IInStockinDetailService stockinDetailService; + @Autowired + private IInStockinService inStockinService; /** * 查询库存信息 @@ -120,6 +124,13 @@ public class BasStockServiceImpl implements IBasStockService if (StrUtil.isNotEmpty(basStock.getStockinDetailId())) { InStockinDetail inStockinDetail = stockinDetailService.selectInStockinDetailByStockinDetailId(basStock.getStockinDetailId()); if (inStockinDetail != null) { + InStockin inStockin = inStockinService.selectInStockinByStockinGuid(inStockinDetail.getStockinGuid()); + if ("1".equals(inStockin.getStatus()) || "2".equals(inStockin.getStatus())) { + inStockin.setStatus("3"); + inStockinService.updateInStockin(inStockin); + } + basStock.setStockinId(inStockin.getStockinId()); + BigDecimal scanNum = Convert.toBigDecimal(inStockinDetail.getScanNum()); BigDecimal assignNum = Convert.toBigDecimal(inStockinDetail.getAssignNum()); inStockinDetail.setScanNum(Convert.toStr(scanNum.add(Convert.toBigDecimal(basStock.getQuantity())))); @@ -244,8 +255,8 @@ public class BasStockServiceImpl implements IBasStockService BigDecimal oldQuantity = Convert.toBigDecimal(oldBasStock.getQuantity()); BigDecimal newQuantity = Convert.toBigDecimal(basStock.getQuantity()); BigDecimal subtract = newQuantity.subtract(oldQuantity); - BigDecimal newAssignNum = assignNum.subtract(subtract); - BigDecimal newScanNum = scanNum.subtract(subtract); + BigDecimal newAssignNum = assignNum.add(subtract); + BigDecimal newScanNum = scanNum.add(subtract); inStockinDetail.setScanNum(newScanNum.toString()); inStockinDetail.setAssignNum(newAssignNum.toString()); stockinDetailService.updateInStockinDetail(inStockinDetail); @@ -312,6 +323,22 @@ public class BasStockServiceImpl implements IBasStockService BasStock oldBasStock = basStockMapper.selectBasStockByStockId(stockId); insertMaintainRecord(oldBasStock,oldBasStock,"3"); basStockMapper.deleteBasStockByStockId(stockId); + String stockinDetailId = oldBasStock.getStockinDetailId(); + if (StrUtil.isNotEmpty(stockinDetailId)) { + InStockinDetail inStockinDetail = stockinDetailService.selectInStockinDetailByStockinDetailId(stockinDetailId); + if (inStockinDetail != null) { + BigDecimal scanNum = Convert.toBigDecimal(inStockinDetail.getScanNum()); + BigDecimal assignNum = Convert.toBigDecimal(inStockinDetail.getAssignNum()); + BigDecimal oldQuantity = Convert.toBigDecimal(oldBasStock.getQuantity()); + BigDecimal newQuantity = new BigDecimal(0); + BigDecimal subtract = newQuantity.subtract(oldQuantity); + BigDecimal newAssignNum = assignNum.add(subtract); + BigDecimal newScanNum = scanNum.add(subtract); + inStockinDetail.setScanNum(newScanNum.toString()); + inStockinDetail.setAssignNum(newAssignNum.toString()); + stockinDetailService.updateInStockinDetail(inStockinDetail); + } + } warehouseId = oldBasStock.getWarehouseId(); trayCode = oldBasStock.getTrayCode(); //判断是否是最后一件货物 diff --git a/ruoyi-admin/src/main/resources/mapper/bas/cargoSpace/BasCargoSpaceMapper.xml b/ruoyi-admin/src/main/resources/mapper/bas/cargoSpace/BasCargoSpaceMapper.xml index 16b96d2..c095ce1 100644 --- a/ruoyi-admin/src/main/resources/mapper/bas/cargoSpace/BasCargoSpaceMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/bas/cargoSpace/BasCargoSpaceMapper.xml @@ -184,7 +184,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and locked = 'N' and warehouse_id = #{warehouseId} and roadway_id = #{roadwayId} - and cargo_hight = #{cargoHight}" + and cargo_hight = #{cargoHight} and the_platoon = #{thePlatoon} and the_floor < #{theFloor} and the_floor >= #{theFloor} diff --git a/ruoyi-admin/src/main/resources/mapper/stock/BasStockMapper.xml b/ruoyi-admin/src/main/resources/mapper/stock/BasStockMapper.xml index e879a12..0e9a27f 100644 --- a/ruoyi-admin/src/main/resources/mapper/stock/BasStockMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/stock/BasStockMapper.xml @@ -98,7 +98,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" bs.spare1, --用途 bs.distribution, --用途 bs.model, --用途 - bcs.the_type as net_weight --重量 + bcs.the_type as net_weight, --重量 + bs.stockin_detail_id --入库子单 from bas_stock bs left join bas_product bp on bs.product_id = bp.product_id left join bas_warehouse bw on bs.warehouse_id = bw.warehouse_id diff --git a/ruoyi-ui/README.md b/ruoyi-ui/README.md index 00c0ab8..9630425 100644 --- a/ruoyi-ui/README.md +++ b/ruoyi-ui/README.md @@ -1,4 +1,4 @@ -## 开发 + ## 开发 ```bash # 克隆项目