给商品查询列表的接口增加初始库存的展示

This commit is contained in:
jishenghua
2024-12-17 23:44:52 +08:00
parent 7dea80bb8c
commit 9307855a39
5 changed files with 49 additions and 1 deletions

View File

@@ -138,6 +138,7 @@ public class MaterialService {
list= materialMapperEx.selectByConditionMaterial(materialParam, standard, model, color, brand, mfrs, materialOther, weight, expiryNum,
enableSerialNumber, enableBatchNumber, position, enabled, remark, idList, mpList, offset, rows);
if (null != list && list.size()>0) {
Map<Long,BigDecimal> initialStockMap = getInitialStockMapByMaterialList(list);
Map<Long,BigDecimal> currentStockMap = getCurrentStockMapByMaterialList(list);
for (MaterialVo4Unit m : list) {
if(fileUploadType == 2) {
@@ -145,6 +146,8 @@ public class MaterialService {
m.setImgLarge("large");
}
m.setMaterialOther(getMaterialOtherByParam(mpArr, m));
m.setInitialStock(initialStockMap.get(m.getId())!=null? initialStockMap.get(m.getId()): BigDecimal.ZERO);
m.setBigUnitInitialStock(getBigUnitStock(m.getInitialStock(), m.getUnitId()));
m.setStock(currentStockMap.get(m.getId())!=null? currentStockMap.get(m.getId()): BigDecimal.ZERO);
m.setBigUnitStock(getBigUnitStock(m.getStock(), m.getUnitId()));
resList.add(m);
@@ -1267,6 +1270,24 @@ public class MaterialService {
return stock;
}
/**
* 根据商品列表获取初始库存Map
* @param list
* @return
*/
public Map<Long,BigDecimal> getInitialStockMapByMaterialList(List<MaterialVo4Unit> list) {
Map<Long,BigDecimal> map = new HashMap<>();
List<Long> materialIdList = new ArrayList<>();
for(MaterialVo4Unit materialVo4Unit: list) {
materialIdList.add(materialVo4Unit.getId());
}
List<MaterialInitialStock> mcsList = materialInitialStockMapperEx.getInitialStockMapByIdList(materialIdList);
for(MaterialInitialStock materialInitialStock: mcsList) {
map.put(materialInitialStock.getMaterialId(), materialInitialStock.getNumber());
}
return map;
}
/**
* 根据商品列表获取当前库存Map
* @param list