小改
This commit is contained in:
@@ -102,8 +102,6 @@ public class WmsStockServiceImpl implements IWmsStockService {
|
||||
LambdaQueryWrapper<WmsStock> lqw = new LambdaQueryWrapper<>();
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getItemType()), WmsStock::getItemType, bo.getItemType());
|
||||
lqw.eq(bo.getItemId() != null, WmsStock::getItemId, bo.getItemId());
|
||||
lqw.eq(bo.getQuantity() != null, WmsStock::getQuantity, bo.getQuantity());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getUnit()), WmsStock::getUnit, bo.getUnit());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getBatchNo()), WmsStock::getBatchNo, bo.getBatchNo());
|
||||
return lqw;
|
||||
}
|
||||
@@ -125,8 +123,6 @@ public class WmsStockServiceImpl implements IWmsStockService {
|
||||
|
||||
qw.eq(StringUtils.isNotBlank(bo.getItemType()), "s.item_type", bo.getItemType());
|
||||
qw.eq(bo.getItemId() != null, "s.item_id", bo.getItemId());
|
||||
qw.eq(bo.getQuantity() != null, "s.quantity", bo.getQuantity());
|
||||
qw.eq(StringUtils.isNotBlank(bo.getUnit()), "s.unit", bo.getUnit());
|
||||
qw.eq(StringUtils.isNotBlank(bo.getBatchNo()), "s.batch_no", bo.getBatchNo());
|
||||
|
||||
return qw;
|
||||
@@ -179,7 +175,37 @@ public class WmsStockServiceImpl implements IWmsStockService {
|
||||
return baseMapper.getStockByItemId(rawMaterialId);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 查询库存分布(按仓库统计)
|
||||
*/
|
||||
@Override
|
||||
public WmsStockVo queryStockDistribution(WmsStockBo bo) {
|
||||
if (bo.getItemType() == null || bo.getItemId() == null) {
|
||||
throw new RuntimeException("物品类型和物品ID不能为空");
|
||||
}
|
||||
|
||||
// 1. 计算总库存量
|
||||
BigDecimal totalQuantity = BigDecimal.ZERO;
|
||||
|
||||
// 2. 按仓库统计库存分布
|
||||
List<WmsStockVo> distributionList = baseMapper.selectStockDistribution(bo.getItemType(), bo.getItemId());
|
||||
|
||||
// 计算总量
|
||||
for (WmsStockVo vo : distributionList) {
|
||||
if (vo.getTotalQuantity() != null) {
|
||||
totalQuantity = totalQuantity.add(vo.getTotalQuantity());
|
||||
}
|
||||
}
|
||||
|
||||
// 构建返回对象
|
||||
WmsStockVo result = new WmsStockVo();
|
||||
result.setItemType(bo.getItemType());
|
||||
result.setItemId(bo.getItemId());
|
||||
result.setTotalQuantity(totalQuantity);
|
||||
result.setStockDistribution(distributionList);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取指定仓库ID及其所有子仓库ID
|
||||
|
||||
Reference in New Issue
Block a user