库存前端页面优化

This commit is contained in:
2025-07-19 15:22:36 +08:00
parent 4b41100938
commit 4a9ed11f84
6 changed files with 168 additions and 19 deletions

View File

@@ -51,7 +51,7 @@ public class WmsStockIoDetailServiceImpl implements IWmsStockIoDetailService {
@Override
public TableDataInfo<WmsStockIoDetailVo> queryPageList(WmsStockIoDetailBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<WmsStockIoDetail> lqw = buildQueryWrapper(bo);
Page<WmsStockIoDetailVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
Page<WmsStockIoDetailVo> result = baseMapper.selectVoPagePlus(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
@@ -88,13 +88,13 @@ public class WmsStockIoDetailServiceImpl implements IWmsStockIoDetailService {
if (stockIo != null && stockIo.getStatus() >= 2) {
throw new ServiceException("已审核的单据不能修改明细");
}
WmsStockIoDetail add = BeanUtil.toBean(bo, WmsStockIoDetail.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setDetailId(add.getDetailId());
// 检查主表状态,如果有明细且状态为草稿,则自动变为待审核
if (stockIo != null && stockIo.getStatus() == 0) {
// 检查是否有明细
@@ -102,7 +102,7 @@ public class WmsStockIoDetailServiceImpl implements IWmsStockIoDetailService {
new LambdaQueryWrapper<WmsStockIoDetail>()
.eq(WmsStockIoDetail::getStockIoId, bo.getStockIoId())
);
if (detailCount > 0) {
// 自动更新状态为待审核
stockIo.setStatus(1);
@@ -124,7 +124,7 @@ public class WmsStockIoDetailServiceImpl implements IWmsStockIoDetailService {
if (stockIo != null && stockIo.getStatus() >= 2) {
throw new ServiceException("已审核的单据不能修改明细");
}
WmsStockIoDetail update = BeanUtil.toBean(bo, WmsStockIoDetail.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
@@ -146,7 +146,7 @@ public class WmsStockIoDetailServiceImpl implements IWmsStockIoDetailService {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
// 获取要删除的明细对应的主表ID检查状态
List<WmsStockIoDetail> details = baseMapper.selectBatchIds(ids);
if (details != null && !details.isEmpty()) {
@@ -160,9 +160,9 @@ public class WmsStockIoDetailServiceImpl implements IWmsStockIoDetailService {
// 按主表ID分组
Map<Long, List<WmsStockIoDetail>> stockIoIdMap = details.stream()
.collect(java.util.stream.Collectors.groupingBy(WmsStockIoDetail::getStockIoId));
boolean flag = baseMapper.deleteBatchIds(ids) > 0;
if (flag) {
// 检查每个主表是否还有其他明细
for (Long stockIoId : stockIoIdMap.keySet()) {
@@ -170,7 +170,7 @@ public class WmsStockIoDetailServiceImpl implements IWmsStockIoDetailService {
new LambdaQueryWrapper<WmsStockIoDetail>()
.eq(WmsStockIoDetail::getStockIoId, stockIoId)
);
// 如果没有明细了,状态回退为草稿
if (remainingCount == 0) {
WmsStockIo stockIo = stockIoMapper.selectById(stockIoId);
@@ -182,10 +182,10 @@ public class WmsStockIoDetailServiceImpl implements IWmsStockIoDetailService {
}
}
}
return flag;
}
return baseMapper.deleteBatchIds(ids) > 0;
}
}