优化商品的库存明细

This commit is contained in:
季圣华
2020-12-13 00:16:45 +08:00
parent c22f9262f5
commit feb85c60c0
5 changed files with 81 additions and 22 deletions

View File

@@ -199,9 +199,12 @@ public class DepotController {
DepotEx de = new DepotEx();
if(mId!=0) {
BigDecimal stock = materialService.getInitStock(mId, depot.getId());
BigDecimal currentStock = materialService.getCurrentStock(mId, depot.getId());
de.setStock(stock);
de.setAllStock(stock.add(currentStock));
} else {
de.setStock(BigDecimal.ZERO);
de.setAllStock(BigDecimal.ZERO);
}
de.setId(depot.getId());
de.setName(depot.getName());

View File

@@ -17,4 +17,6 @@ public class DepotEx extends Depot{
private BigDecimal stock;
private BigDecimal allStock;
}

View File

@@ -60,6 +60,8 @@ public class MaterialService {
@Resource
private MaterialInitialStockMapper materialInitialStockMapper;
@Resource
private MaterialCurrentStockMapper materialCurrentStockMapper;
@Resource
private DepotService depotService;
@Resource
private MaterialExtendService materialExtendService;
@@ -704,7 +706,7 @@ public class MaterialService {
}
/**
* 根据品和仓库获取初始库存
* 根据品和仓库获取初始库存
* @param materialId
* @param depotId
* @return
@@ -722,7 +724,7 @@ public class MaterialService {
}
/**
* 根据品获取初始库存
* 根据品获取初始库存
* @param materialId
* @return
*/
@@ -747,6 +749,24 @@ public class MaterialService {
return stock;
}
/**
* 根据商品和仓库获取当前库存
* @param materialId
* @param depotId
* @return
*/
public BigDecimal getCurrentStock(Long materialId, Long depotId) {
BigDecimal stock = BigDecimal.ZERO;
MaterialCurrentStockExample example = new MaterialCurrentStockExample();
example.createCriteria().andMaterialIdEqualTo(materialId).andDepotIdEqualTo(depotId)
.andDeleteFlagNotEqualTo(BusinessConstants.DELETE_FLAG_DELETED);
List<MaterialCurrentStock> list = materialCurrentStockMapper.selectByExample(example);
if(list!=null && list.size()>0) {
stock = list.get(0).getCurrentNumber();
}
return stock;
}
public List<MaterialVo4Unit> getMaterialByMeId(Long meId) {
List<MaterialVo4Unit> result = new ArrayList<MaterialVo4Unit>();
try{