liyong
2026-04-14 b02190451a5ad1b7ce3a1429395227e625d68fa9
fix(stock): 修复删除出入库记录时库存数据一致性问题

- 添加 StockInventoryMapper 依赖注入以支持库存更新操作
- 在删除入库记录时执行库存数量减少操作
- 在删除出库记录时执行库存数量增加操作
- 确保库存数据与出入库记录同步更新
- 解决因记录删除导致的库存统计不准确问题
已修改1个文件
14 ■■■■■ 文件已修改
src/main/java/com/ruoyi/procurementrecord/utils/StockUtils.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/procurementrecord/utils/StockUtils.java
@@ -7,6 +7,7 @@
import com.ruoyi.stock.dto.StockInRecordDto;
import com.ruoyi.stock.dto.StockInventoryDto;
import com.ruoyi.stock.dto.StockUninventoryDto;
import com.ruoyi.stock.mapper.StockInventoryMapper;
import com.ruoyi.stock.pojo.StockInRecord;
import com.ruoyi.stock.pojo.StockOutRecord;
import com.ruoyi.stock.service.StockInRecordService;
@@ -32,6 +33,7 @@
    private final StockInventoryService stockInventoryService;
    private final StockInRecordService stockInRecordService;
    private final StockOutRecordService stockOutRecordService;
    private final StockInventoryMapper stockInventoryMapper;
    /**
     * 不合格入库
@@ -105,6 +107,12 @@
        if (ObjectUtils.isNotEmpty(one)) {
            stockInRecordService.batchDelete(Collections.singletonList(one.getId()));
        }
        //将库存减回来
        StockInventoryDto stockInventoryDto = new StockInventoryDto();
        stockInventoryDto.setRecordId(recordId);
        stockInventoryDto.setRecordType(recordType);
        stockInventoryDto.setQualitity(one.getStockInNum());
        stockInventoryMapper.updateSubtractStockInventory((stockInventoryDto));
    }
    public void deleteStockOutRecord(Long recordId, String recordType) {
        StockOutRecord one = stockOutRecordService.getOne(new QueryWrapper<StockOutRecord>()
@@ -113,5 +121,11 @@
        if (ObjectUtils.isNotEmpty(one)) {
            stockOutRecordService.batchDelete(Collections.singletonList(one.getId()));
        }
        //将库存加回来
        StockInventoryDto stockInventoryDto = new StockInventoryDto();
        stockInventoryDto.setRecordId(recordId);
        stockInventoryDto.setRecordType(recordType);
        stockInventoryDto.setQualitity(one.getStockOutNum());
        stockInventoryMapper.updateAddStockInventory((stockInventoryDto));
    }
}