修改库存统计的计算逻辑,根据出入库管理开关进行判断

This commit is contained in:
季圣华
2023-12-06 00:31:53 +08:00
parent 63703002ac
commit 672db2b097
3 changed files with 18 additions and 7 deletions

View File

@@ -153,6 +153,7 @@ public interface DepotItemMapperEx {
@Param("depotList") List<Long> depotList,
@Param("meId") Long meId,
@Param("forceFlag") Boolean forceFlag,
@Param("inOutManageFlag") Boolean inOutManageFlag,
@Param("beginTime") String beginTime,
@Param("endTime") String endTime);
@@ -160,6 +161,7 @@ public interface DepotItemMapperEx {
@Param("depotList") List<Long> depotList,
@Param("mId") Long mId,
@Param("forceFlag") Boolean forceFlag,
@Param("inOutManageFlag") Boolean inOutManageFlag,
@Param("beginTime") String beginTime,
@Param("endTime") String endTime);

View File

@@ -914,10 +914,11 @@ public class DepotItemService {
*/
public BigDecimal getSkuStockByParam(Long depotId, Long meId, String beginTime, String endTime) throws Exception {
Boolean forceFlag = systemConfigService.getForceApprovalFlag();
Boolean inOutManageFlag = systemConfigService.getInOutManageFlag();
List<Long> depotList = depotService.parseDepotList(depotId);
//盘点复盘后数量的变动
BigDecimal stockCheckSum = depotItemMapperEx.getSkuStockCheckSumByDepotList(depotList, meId, forceFlag, beginTime, endTime);
DepotItemVo4Stock stockObj = depotItemMapperEx.getSkuStockByParamWithDepotList(depotList, meId, forceFlag, beginTime, endTime);
DepotItemVo4Stock stockObj = depotItemMapperEx.getSkuStockByParamWithDepotList(depotList, meId, forceFlag, inOutManageFlag, beginTime, endTime);
BigDecimal stockSum = BigDecimal.ZERO;
if(stockObj!=null) {
BigDecimal inTotal = stockObj.getInTotal();
@@ -957,11 +958,12 @@ public class DepotItemService {
*/
public BigDecimal getStockByParamWithDepotList(List<Long> depotList, Long mId, String beginTime, String endTime) throws Exception {
Boolean forceFlag = systemConfigService.getForceApprovalFlag();
Boolean inOutManageFlag = systemConfigService.getInOutManageFlag();
//初始库存
BigDecimal initStock = materialService.getInitStockByMidAndDepotList(depotList, mId);
//盘点复盘后数量的变动
BigDecimal stockCheckSum = depotItemMapperEx.getStockCheckSumByDepotList(depotList, mId, forceFlag, beginTime, endTime);
DepotItemVo4Stock stockObj = depotItemMapperEx.getStockByParamWithDepotList(depotList, mId, forceFlag, beginTime, endTime);
DepotItemVo4Stock stockObj = depotItemMapperEx.getStockByParamWithDepotList(depotList, mId, forceFlag, inOutManageFlag, beginTime, endTime);
BigDecimal stockSum = BigDecimal.ZERO;
if(stockObj!=null) {
BigDecimal inTotal = stockObj.getInTotal();
@@ -988,12 +990,13 @@ public class DepotItemService {
*/
public Map<String, BigDecimal> getIntervalMapByParamWithDepotList(List<Long> depotList, Long mId, String beginTime, String endTime) throws Exception {
Boolean forceFlag = systemConfigService.getForceApprovalFlag();
Boolean inOutManageFlag = systemConfigService.getInOutManageFlag();
Map<String,BigDecimal> intervalMap = new HashMap<>();
BigDecimal inSum = BigDecimal.ZERO;
BigDecimal outSum = BigDecimal.ZERO;
//盘点复盘后数量的变动
BigDecimal stockCheckSum = depotItemMapperEx.getStockCheckSumByDepotList(depotList, mId, forceFlag, beginTime, endTime);
DepotItemVo4Stock stockObj = depotItemMapperEx.getStockByParamWithDepotList(depotList, mId, forceFlag, beginTime, endTime);
DepotItemVo4Stock stockObj = depotItemMapperEx.getStockByParamWithDepotList(depotList, mId, forceFlag, inOutManageFlag, beginTime, endTime);
if(stockObj!=null) {
BigDecimal inTotal = stockObj.getInTotal();
BigDecimal transfInTotal = stockObj.getTransfInTotal();