|
|
@ -730,224 +730,6 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
// 生成/修改库存查询
|
|
|
|
public void createWarehouseInventoryInquiry(WarehouseStorageOrderDetail warehouseStorageOrderDetail){ |
|
|
|
String materialNo = warehouseStorageOrderDetail.getMaterialNo(); |
|
|
|
String correlationCode = warehouseStorageOrderDetail.getRelatedOrderCode(); |
|
|
|
String storageCode = warehouseStorageOrderDetail.getWarehouseStorageCode(); |
|
|
|
WarehouseStorageOrder warehouseStorageOrder = warehouseStorageOrderMapper.selectWarehouseStorageOrderByCode(storageCode); |
|
|
|
String warehouseStorageType = warehouseStorageOrder.getWarehouseStorageType(); |
|
|
|
|
|
|
|
Integer storageNum = warehouseStorageOrderDetail.getStorageNum(); |
|
|
|
if("0".equals(warehouseStorageType)) { |
|
|
|
// 新增采购入库库存历史记录
|
|
|
|
String purchasePlanCode = purchaseOrderMapper.selectPurchasePlanCodeByCode(correlationCode); |
|
|
|
|
|
|
|
PurchasePlan purchasePlan = purchasePlanMapper.selectPurchasePlanByPlanCode(purchasePlanCode); |
|
|
|
if ("2".equals(purchasePlan.getPurchasePlanType())){ //来源为请购单
|
|
|
|
List<PurchaseOrderChild> purchaseOrderChildList = purchaseOrderChildMapper.selectPurchaseOrderChildByOrderCode(correlationCode); |
|
|
|
for (PurchaseOrderChild purchaseOrderChild : purchaseOrderChildList) { |
|
|
|
if(purchaseOrderChild.getMaterialNo().equals(materialNo)){ |
|
|
|
|
|
|
|
WarehouseInventoryInquiry oldWarehouseInventoryInquiry = warehouseInventoryInquiryMapper.selectWarehouseInventoryInquiryByMaterialNo(materialNo); |
|
|
|
Integer historicalTotal = oldWarehouseInventoryInquiry.getHistoricalTotal(); |
|
|
|
historicalTotal += storageNum; |
|
|
|
oldWarehouseInventoryInquiry.setHistoricalTotal(historicalTotal); |
|
|
|
|
|
|
|
Integer availableStockNum = oldWarehouseInventoryInquiry.getAvailableStockNum(); |
|
|
|
if (availableStockNum == null || availableStockNum == 0){ |
|
|
|
availableStockNum = storageNum; |
|
|
|
}else { |
|
|
|
availableStockNum += storageNum; |
|
|
|
} |
|
|
|
|
|
|
|
oldWarehouseInventoryInquiry.setAvailableStockNum(availableStockNum); |
|
|
|
// Integer oldAvailableStockNum = warehouseInventoryInquiryService.calculateAvailableStockNum(materialNo);
|
|
|
|
// oldWarehouseInventoryInquiry.setAvailableStockNum(oldAvailableStockNum + storageNum); //加上本次入库的数量
|
|
|
|
Integer sharedAvailableStockNum = oldWarehouseInventoryInquiry.getSharedAvailableStockNum();//共享可用库存
|
|
|
|
if (sharedAvailableStockNum == null || sharedAvailableStockNum == 0){ |
|
|
|
sharedAvailableStockNum = storageNum; |
|
|
|
}else { |
|
|
|
sharedAvailableStockNum += storageNum; |
|
|
|
} |
|
|
|
oldWarehouseInventoryInquiry.setSharedAvailableStockNum(sharedAvailableStockNum); |
|
|
|
|
|
|
|
int updateResult = warehouseInventoryInquiryService.updateWarehouseInventoryInquiry(oldWarehouseInventoryInquiry); |
|
|
|
if (updateResult <= 0){ |
|
|
|
throw new BusinessException("更新库存查询记录失败!"); |
|
|
|
} |
|
|
|
|
|
|
|
remindService.warehouseSafetyStockRemind(oldWarehouseInventoryInquiry); |
|
|
|
|
|
|
|
WarehouseInventoryInquiryDetail inquiryDetail = new WarehouseInventoryInquiryDetail(); |
|
|
|
inquiryDetail.setMaterialNo(materialNo); |
|
|
|
inquiryDetail.setInquiryWarehouseType("0");//采购入库
|
|
|
|
inquiryDetail.setInventoryHistoricalTime(DateUtils.getNowDate()); |
|
|
|
inquiryDetail.setInquiryOrderType("0"); |
|
|
|
inquiryDetail.setInquiryBusinessType("0"); |
|
|
|
inquiryDetail.setCorrelationCode(storageCode); |
|
|
|
inquiryDetail.setIncreaseDecreaseNum(warehouseStorageOrderDetail.getStorageNum()); |
|
|
|
inquiryDetail.setInventoryIncreaseDecrease("1"); |
|
|
|
int insertDetailResult = inventoryInquiryDetailMapper.insertWarehouseInventoryInquiryDetail(inquiryDetail); |
|
|
|
if (insertDetailResult <= 0){ |
|
|
|
throw new BusinessException("新增库存履历失败!"); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
}else if ("1".equals(purchasePlan.getPurchasePlanType())){ //生产订单
|
|
|
|
List<PurchaseOrderChild> purchaseOrderChildList = purchaseOrderChildMapper.selectPurchaseOrderChildByOrderCode(correlationCode); |
|
|
|
for (PurchaseOrderChild purchaseOrderChild : purchaseOrderChildList) { |
|
|
|
if (purchaseOrderChild.getMaterialNo().equals(materialNo)) { |
|
|
|
|
|
|
|
WarehouseInventoryInquiry oldWarehouseInventoryInquiry = warehouseInventoryInquiryMapper.selectWarehouseInventoryInquiryByMaterialNo(materialNo); |
|
|
|
Integer historicalTotal = oldWarehouseInventoryInquiry.getHistoricalTotal(); |
|
|
|
historicalTotal += storageNum; |
|
|
|
oldWarehouseInventoryInquiry.setHistoricalTotal(historicalTotal); |
|
|
|
Integer availableStockNum = oldWarehouseInventoryInquiry.getAvailableStockNum(); |
|
|
|
if (availableStockNum == null || availableStockNum == 0){ |
|
|
|
availableStockNum = storageNum; |
|
|
|
}else { |
|
|
|
availableStockNum += storageNum; |
|
|
|
} |
|
|
|
|
|
|
|
oldWarehouseInventoryInquiry.setAvailableStockNum(availableStockNum); |
|
|
|
// Integer oldAvailableStockNum = warehouseInventoryInquiryService.calculateAvailableStockNum(materialNo);
|
|
|
|
|
|
|
|
Integer fixedAvailableStockNum = oldWarehouseInventoryInquiry.getFixedAvailableStockNum();//固定可用库存
|
|
|
|
if (fixedAvailableStockNum == null || fixedAvailableStockNum == 0){ |
|
|
|
fixedAvailableStockNum = storageNum; |
|
|
|
}else { |
|
|
|
fixedAvailableStockNum += storageNum; |
|
|
|
} |
|
|
|
oldWarehouseInventoryInquiry.setFixedAvailableStockNum(fixedAvailableStockNum); |
|
|
|
|
|
|
|
|
|
|
|
int updateResult = warehouseInventoryInquiryService.updateWarehouseInventoryInquiry(oldWarehouseInventoryInquiry); |
|
|
|
if (updateResult <= 0) { |
|
|
|
throw new BusinessException("更新库存查询记录失败!"); |
|
|
|
} |
|
|
|
|
|
|
|
remindService.warehouseSafetyStockRemind(oldWarehouseInventoryInquiry); |
|
|
|
|
|
|
|
WarehouseInventoryInquiryDetail inquiryDetail = new WarehouseInventoryInquiryDetail(); |
|
|
|
inquiryDetail.setMaterialNo(materialNo); |
|
|
|
inquiryDetail.setInquiryWarehouseType("0");//采购入库
|
|
|
|
inquiryDetail.setInventoryHistoricalTime(DateUtils.getNowDate()); |
|
|
|
inquiryDetail.setInquiryOrderType("0"); |
|
|
|
inquiryDetail.setInquiryBusinessType("0"); |
|
|
|
inquiryDetail.setCorrelationCode(storageCode); |
|
|
|
inquiryDetail.setIncreaseDecreaseNum(warehouseStorageOrderDetail.getStorageNum()); |
|
|
|
inquiryDetail.setInventoryIncreaseDecrease("1"); |
|
|
|
int insertDetailResult = inventoryInquiryDetailMapper.insertWarehouseInventoryInquiryDetail(inquiryDetail); |
|
|
|
if (insertDetailResult <= 0) { |
|
|
|
throw new BusinessException("新增库存履历失败!"); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
}else if(warehouseStorageType.equals("5")){//新增生产入库库存历史记录
|
|
|
|
WarehouseInventoryInquiryDetail inquiryDetail = new WarehouseInventoryInquiryDetail(); |
|
|
|
inquiryDetail = createMakeInOrderInquiryDetail(warehouseStorageOrderDetail); |
|
|
|
// inquiryDetail.setInventoryHistoricalType("1");
|
|
|
|
inventoryInquiryDetailMapper.insertWarehouseInventoryInquiryDetail(inquiryDetail); |
|
|
|
}else if(warehouseStorageType.equals("4")){//新增委外入库库存历史记录
|
|
|
|
WarehouseInventoryInquiryDetail inquiryDetail = new WarehouseInventoryInquiryDetail(); |
|
|
|
inquiryDetail = createMakeInOrderInquiryDetail(warehouseStorageOrderDetail); |
|
|
|
// inquiryDetail.setInventoryHistoricalType("2");
|
|
|
|
inventoryInquiryDetailMapper.insertWarehouseInventoryInquiryDetail(inquiryDetail); |
|
|
|
} |
|
|
|
//查询该物料报损数,更新库存查询报损数
|
|
|
|
List<WarehouseInventoryReportDamageChild> damageChildren = damageChildMapper.selectWarehouseInventoryReportDamageChildByMaterialNo(materialNo); |
|
|
|
Integer scrapSum = 0; |
|
|
|
if(StringUtils.isNotEmpty(damageChildren)){ |
|
|
|
for (WarehouseInventoryReportDamageChild damageChild:damageChildren) { |
|
|
|
Integer scrapNum = damageChild.getActualScrapQuantity(); |
|
|
|
scrapSum += scrapSum; |
|
|
|
} |
|
|
|
} |
|
|
|
//// 存在库存查询记录,更新可用库存数
|
|
|
|
// if(warehouseInventoryInquiryMapper.selectWarehouseInventoryInquiryByMaterialNo(materialNo)!=null){
|
|
|
|
// WarehouseInventoryInquiry inventoryInquiry = warehouseInventoryInquiryMapper.selectWarehouseInventoryInquiryByMaterialNo(materialNo);
|
|
|
|
//// 增加可用库存数
|
|
|
|
// Integer storage = warehouseStorageOrderDetail.getStorageNum();
|
|
|
|
// Integer storagenum = storage;
|
|
|
|
// Integer avaliableStorage = inventoryInquiry.getAvailableStockNum();
|
|
|
|
// avaliableStorage += storagenum;
|
|
|
|
// inventoryInquiry.setAvailableStockNum(avaliableStorage);
|
|
|
|
// inventoryInquiry.setReportDamageNum(scrapSum);
|
|
|
|
//// 设置历史总数
|
|
|
|
// Integer historicalTotal = inventoryInquiry.getHistoricalTotal();
|
|
|
|
// historicalTotal += storagenum;
|
|
|
|
// inventoryInquiry.setHistoricalTotal(historicalTotal);
|
|
|
|
// inventoryInquiry.setUpdateBy(ShiroUtils.getLoginName());
|
|
|
|
// inventoryInquiry.setUpdateTime(DateUtils.getNowDate());
|
|
|
|
// return warehouseInventoryInquiryMapper.updateWarehouseInventoryInquiry(inventoryInquiry);
|
|
|
|
// }else{
|
|
|
|
// WarehouseInventoryInquiry inventoryInquiry = new WarehouseInventoryInquiry();
|
|
|
|
// inventoryInquiry.setMaterialNo(materialNo);
|
|
|
|
// inventoryInquiry.setMaterialName(warehouseStorageOrderDetail.getMaterialName());
|
|
|
|
// inventoryInquiry.setMaterialPhotourl(warehouseStorageOrderDetail.getMaterialPhotourl());
|
|
|
|
// inventoryInquiry.setMaterialBrand(warehouseStorageOrderDetail.getMaterialBrand());
|
|
|
|
// inventoryInquiry.setMaterialDescribe(warehouseStorageOrderDetail.getMaterialDescribe());
|
|
|
|
// inventoryInquiry.setMaterialUnit(warehouseStorageOrderDetail.getMaterialUnit());
|
|
|
|
// inventoryInquiry.setMaterialType(warehouseStorageOrderDetail.getMaterialType());
|
|
|
|
// inventoryInquiry.setMaterialProcessMethod(warehouseStorageOrderDetail.getMaterialProcessMethod());
|
|
|
|
// Integer storage = warehouseStorageOrderDetail.getStorageNum();
|
|
|
|
// Integer storagenum = storage;
|
|
|
|
// // 设置历史总数
|
|
|
|
// inventoryInquiry.setHistoricalTotal(storagenum);
|
|
|
|
// inventoryInquiry.setAvailableStockNum(storagenum);
|
|
|
|
// inventoryInquiry.setReportDamageNum(scrapSum);
|
|
|
|
//
|
|
|
|
// ErpMaterial material = erpMaterialMapper.selectErpMaterialByMaterialNo(materialNo);
|
|
|
|
// inventoryInquiry.setMaterialUseStatus(material.getUseStatus());
|
|
|
|
// inventoryInquiry.setCreateBy(ShiroUtils.getLoginName());
|
|
|
|
// inventoryInquiry.setCreateTime(DateUtils.getNowDate());
|
|
|
|
// inventoryInquiry.setUpdateBy(ShiroUtils.getLoginName());
|
|
|
|
// inventoryInquiry.setUpdateTime(DateUtils.getNowDate());
|
|
|
|
// return warehouseInventoryInquiryMapper.insertWarehouseInventoryInquiry(inventoryInquiry);
|
|
|
|
// }
|
|
|
|
} |
|
|
|
|
|
|
|
// 生成采购订单库存历史记录
|
|
|
|
public WarehouseInventoryInquiryDetail generateInquiryDetailByPurchaseChild(PurchaseOrderChild child,int storageNum){ |
|
|
|
WarehouseInventoryInquiryDetail inquiryDetail = new WarehouseInventoryInquiryDetail(); |
|
|
|
inquiryDetail.setMaterialNo(child.getMaterialNo()); |
|
|
|
// inquiryDetail.setMaterialName(child.getMaterialName());
|
|
|
|
// inquiryDetail.setMaterialBrand(child.getMaterialBrand());
|
|
|
|
// inquiryDetail.setMaterialPhotourl(child.getMaterialPhotourl());
|
|
|
|
// inquiryDetail.setMaterialDescribe(child.getMaterialDescribe());
|
|
|
|
// inquiryDetail.setMaterialType(child.getMaterialType());
|
|
|
|
// inquiryDetail.setMaterialUnit(child.getMaterialUnit());
|
|
|
|
// inquiryDetail.setInventoryAttributionCode(child.getPurchasePlanCorrelationCode());
|
|
|
|
// inquiryDetail.setSupplierCode(child.());
|
|
|
|
// inquiryDetail.setSupplierName(child.getSupplierName());
|
|
|
|
|
|
|
|
// inquiryDetail.setPurchaseOrderCode(child.getPurchaseOrderCode());
|
|
|
|
// 库存归属单号
|
|
|
|
BigDecimal realStorageNum = BigDecimal.valueOf(storageNum); |
|
|
|
// inquiryDetail.setAvailableStockNum(realStorageNum);
|
|
|
|
// inquiryDetail.setPurchasePriceIncludesTax(child.getMaterialRealRmbSum());
|
|
|
|
// inquiryDetail.setPurchasePriceExcludingTax(child.getMaterialRealNoRmbSum());
|
|
|
|
inquiryDetail.setInventoryIncreaseDecrease("1"); |
|
|
|
inquiryDetail.setCreateBy(ShiroUtils.getLoginName()); |
|
|
|
inquiryDetail.setCreateTime(DateUtils.getNowDate()); |
|
|
|
inquiryDetail.setInventoryHistoricalTime(DateUtils.getNowDate()); |
|
|
|
return inquiryDetail; |
|
|
|
} |
|
|
|
|
|
|
|
//生成入库库存历史记录
|
|
|
|
public WarehouseInventoryInquiryDetail createMakeInOrderInquiryDetail(WarehouseStorageOrderDetail storageOrderDetail){ |
|
|
|
WarehouseInventoryInquiryDetail inquiryDetail = new WarehouseInventoryInquiryDetail(); |
|
|
|
inquiryDetail.setMaterialNo(storageOrderDetail.getMaterialNo()); |
|
|
|
inquiryDetail.setCorrelationCode(storageOrderDetail.getWarehouseStorageCode()); |
|
|
|
inquiryDetail.setInventoryIncreaseDecrease("1"); |
|
|
|
inquiryDetail.setCreateBy(ShiroUtils.getLoginName()); |
|
|
|
inquiryDetail.setCreateTime(DateUtils.getNowDate()); |
|
|
|
inquiryDetail.setInventoryHistoricalTime(DateUtils.getNowDate()); |
|
|
|
return inquiryDetail; |
|
|
|
} |
|
|
|
|
|
|
|
// 根据入库单(采购订单)关联品质单获取历史总数(已到货数-品质不合格数)(采购总数-退换货数)
|
|
|
|
public BigDecimal getHistoricalTotalFromQualityOrder(WarehouseStorageOrderDetail warehouseStorageOrderDetail){ |
|
|
@ -1450,7 +1232,7 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS |
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
/* |
|
|
|
/** |
|
|
|
* 入库-生产订单 |
|
|
|
* */ |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
@ -1873,4 +1655,193 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS |
|
|
|
|
|
|
|
return warehouseInventoryInquiryMapper.updateWarehouseInventoryInquiry(inquiry); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 生成/修改库存查询
|
|
|
|
public void createWarehouseInventoryInquiry(WarehouseStorageOrderDetail warehouseStorageOrderDetail){ |
|
|
|
String materialNo = warehouseStorageOrderDetail.getMaterialNo(); |
|
|
|
String correlationCode = warehouseStorageOrderDetail.getRelatedOrderCode(); |
|
|
|
String storageCode = warehouseStorageOrderDetail.getWarehouseStorageCode(); |
|
|
|
WarehouseStorageOrder warehouseStorageOrder = warehouseStorageOrderMapper.selectWarehouseStorageOrderByCode(storageCode); |
|
|
|
String warehouseStorageType = warehouseStorageOrder.getWarehouseStorageType(); |
|
|
|
|
|
|
|
Integer storageNum = warehouseStorageOrderDetail.getStorageNum(); |
|
|
|
if("0".equals(warehouseStorageType)) { |
|
|
|
// 新增采购入库库存历史记录
|
|
|
|
String purchasePlanCode = purchaseOrderMapper.selectPurchasePlanCodeByCode(correlationCode); |
|
|
|
|
|
|
|
PurchasePlan purchasePlan = purchasePlanMapper.selectPurchasePlanByPlanCode(purchasePlanCode); |
|
|
|
if ("2".equals(purchasePlan.getPurchasePlanType())){ //来源为请购单
|
|
|
|
List<PurchaseOrderChild> purchaseOrderChildList = purchaseOrderChildMapper.selectPurchaseOrderChildByOrderCode(correlationCode); |
|
|
|
for (PurchaseOrderChild purchaseOrderChild : purchaseOrderChildList) { |
|
|
|
if(purchaseOrderChild.getMaterialNo().equals(materialNo)){ |
|
|
|
|
|
|
|
WarehouseInventoryInquiry oldWarehouseInventoryInquiry = warehouseInventoryInquiryMapper.selectWarehouseInventoryInquiryByMaterialNo(materialNo); |
|
|
|
Integer historicalTotal = oldWarehouseInventoryInquiry.getHistoricalTotal(); |
|
|
|
historicalTotal += storageNum; |
|
|
|
oldWarehouseInventoryInquiry.setHistoricalTotal(historicalTotal); |
|
|
|
|
|
|
|
Integer availableStockNum = oldWarehouseInventoryInquiry.getAvailableStockNum(); |
|
|
|
if (availableStockNum == null || availableStockNum == 0){ |
|
|
|
availableStockNum = storageNum; |
|
|
|
}else { |
|
|
|
availableStockNum += storageNum; |
|
|
|
} |
|
|
|
|
|
|
|
oldWarehouseInventoryInquiry.setAvailableStockNum(availableStockNum); |
|
|
|
// Integer oldAvailableStockNum = warehouseInventoryInquiryService.calculateAvailableStockNum(materialNo);
|
|
|
|
// oldWarehouseInventoryInquiry.setAvailableStockNum(oldAvailableStockNum + storageNum); //加上本次入库的数量
|
|
|
|
Integer sharedAvailableStockNum = oldWarehouseInventoryInquiry.getSharedAvailableStockNum();//共享可用库存
|
|
|
|
if (sharedAvailableStockNum == null || sharedAvailableStockNum == 0){ |
|
|
|
sharedAvailableStockNum = storageNum; |
|
|
|
}else { |
|
|
|
sharedAvailableStockNum += storageNum; |
|
|
|
} |
|
|
|
oldWarehouseInventoryInquiry.setSharedAvailableStockNum(sharedAvailableStockNum); |
|
|
|
|
|
|
|
int updateResult = warehouseInventoryInquiryService.updateWarehouseInventoryInquiry(oldWarehouseInventoryInquiry); |
|
|
|
if (updateResult <= 0){ |
|
|
|
throw new BusinessException("更新库存查询记录失败!"); |
|
|
|
} |
|
|
|
|
|
|
|
remindService.warehouseSafetyStockRemind(oldWarehouseInventoryInquiry); |
|
|
|
|
|
|
|
WarehouseInventoryInquiryDetail inquiryDetail = new WarehouseInventoryInquiryDetail(); |
|
|
|
inquiryDetail.setMaterialNo(materialNo); |
|
|
|
inquiryDetail.setInquiryWarehouseType("0");//采购入库
|
|
|
|
inquiryDetail.setInventoryHistoricalTime(DateUtils.getNowDate()); |
|
|
|
inquiryDetail.setInquiryOrderType("0"); |
|
|
|
inquiryDetail.setInquiryBusinessType("0"); |
|
|
|
inquiryDetail.setCorrelationCode(storageCode); |
|
|
|
inquiryDetail.setIncreaseDecreaseNum(warehouseStorageOrderDetail.getStorageNum()); |
|
|
|
inquiryDetail.setInventoryIncreaseDecrease("1"); |
|
|
|
int insertDetailResult = inventoryInquiryDetailMapper.insertWarehouseInventoryInquiryDetail(inquiryDetail); |
|
|
|
if (insertDetailResult <= 0){ |
|
|
|
throw new BusinessException("新增库存履历失败!"); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
}else if ("1".equals(purchasePlan.getPurchasePlanType())){ //生产订单
|
|
|
|
List<PurchaseOrderChild> purchaseOrderChildList = purchaseOrderChildMapper.selectPurchaseOrderChildByOrderCode(correlationCode); |
|
|
|
for (PurchaseOrderChild purchaseOrderChild : purchaseOrderChildList) { |
|
|
|
if (purchaseOrderChild.getMaterialNo().equals(materialNo)) { |
|
|
|
|
|
|
|
WarehouseInventoryInquiry oldWarehouseInventoryInquiry = warehouseInventoryInquiryMapper.selectWarehouseInventoryInquiryByMaterialNo(materialNo); |
|
|
|
Integer historicalTotal = oldWarehouseInventoryInquiry.getHistoricalTotal(); |
|
|
|
historicalTotal += storageNum; |
|
|
|
oldWarehouseInventoryInquiry.setHistoricalTotal(historicalTotal); |
|
|
|
Integer availableStockNum = oldWarehouseInventoryInquiry.getAvailableStockNum(); |
|
|
|
if (availableStockNum == null || availableStockNum == 0){ |
|
|
|
availableStockNum = storageNum; |
|
|
|
}else { |
|
|
|
availableStockNum += storageNum; |
|
|
|
} |
|
|
|
|
|
|
|
oldWarehouseInventoryInquiry.setAvailableStockNum(availableStockNum); |
|
|
|
// Integer oldAvailableStockNum = warehouseInventoryInquiryService.calculateAvailableStockNum(materialNo);
|
|
|
|
|
|
|
|
Integer fixedAvailableStockNum = oldWarehouseInventoryInquiry.getFixedAvailableStockNum();//固定可用库存
|
|
|
|
if (fixedAvailableStockNum == null || fixedAvailableStockNum == 0){ |
|
|
|
fixedAvailableStockNum = storageNum; |
|
|
|
}else { |
|
|
|
fixedAvailableStockNum += storageNum; |
|
|
|
} |
|
|
|
oldWarehouseInventoryInquiry.setFixedAvailableStockNum(fixedAvailableStockNum); |
|
|
|
|
|
|
|
|
|
|
|
int updateResult = warehouseInventoryInquiryService.updateWarehouseInventoryInquiry(oldWarehouseInventoryInquiry); |
|
|
|
if (updateResult <= 0) { |
|
|
|
throw new BusinessException("更新库存查询记录失败!"); |
|
|
|
} |
|
|
|
|
|
|
|
remindService.warehouseSafetyStockRemind(oldWarehouseInventoryInquiry); |
|
|
|
|
|
|
|
WarehouseInventoryInquiryDetail inquiryDetail = new WarehouseInventoryInquiryDetail(); |
|
|
|
inquiryDetail.setMaterialNo(materialNo); |
|
|
|
inquiryDetail.setInquiryWarehouseType("0");//采购入库
|
|
|
|
inquiryDetail.setInventoryHistoricalTime(DateUtils.getNowDate()); |
|
|
|
inquiryDetail.setInquiryOrderType("0"); |
|
|
|
inquiryDetail.setInquiryBusinessType("0"); |
|
|
|
inquiryDetail.setCorrelationCode(storageCode); |
|
|
|
inquiryDetail.setIncreaseDecreaseNum(warehouseStorageOrderDetail.getStorageNum()); |
|
|
|
inquiryDetail.setInventoryIncreaseDecrease("1"); |
|
|
|
int insertDetailResult = inventoryInquiryDetailMapper.insertWarehouseInventoryInquiryDetail(inquiryDetail); |
|
|
|
if (insertDetailResult <= 0) { |
|
|
|
throw new BusinessException("新增库存履历失败!"); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
}else if(warehouseStorageType.equals("5")){//新增生产入库库存历史记录
|
|
|
|
|
|
|
|
WarehouseInventoryInquiry oldWarehouseInventoryInquiry = warehouseInventoryInquiryMapper.selectWarehouseInventoryInquiryByMaterialNo(materialNo); |
|
|
|
Integer historicalTotal = oldWarehouseInventoryInquiry.getHistoricalTotal(); |
|
|
|
historicalTotal += storageNum; |
|
|
|
oldWarehouseInventoryInquiry.setHistoricalTotal(historicalTotal); |
|
|
|
|
|
|
|
Integer availableStockNum = oldWarehouseInventoryInquiry.getAvailableStockNum(); |
|
|
|
if (availableStockNum == null || availableStockNum == 0){ |
|
|
|
availableStockNum = storageNum; |
|
|
|
}else { |
|
|
|
availableStockNum += storageNum; |
|
|
|
} |
|
|
|
|
|
|
|
oldWarehouseInventoryInquiry.setAvailableStockNum(availableStockNum); |
|
|
|
Integer fixedAvailableStockNum = oldWarehouseInventoryInquiry.getFixedAvailableStockNum();//固定可用库存
|
|
|
|
if (fixedAvailableStockNum == null || fixedAvailableStockNum == 0){ |
|
|
|
fixedAvailableStockNum = storageNum; |
|
|
|
}else { |
|
|
|
fixedAvailableStockNum += storageNum; |
|
|
|
} |
|
|
|
oldWarehouseInventoryInquiry.setFixedAvailableStockNum(fixedAvailableStockNum); |
|
|
|
|
|
|
|
int updateResult = warehouseInventoryInquiryService.updateWarehouseInventoryInquiry(oldWarehouseInventoryInquiry); |
|
|
|
if (updateResult <= 0){ |
|
|
|
throw new BusinessException("更新库存查询记录失败!"); |
|
|
|
} |
|
|
|
|
|
|
|
remindService.warehouseSafetyStockRemind(oldWarehouseInventoryInquiry); |
|
|
|
|
|
|
|
WarehouseInventoryInquiryDetail inquiryDetail = new WarehouseInventoryInquiryDetail(); |
|
|
|
inquiryDetail.setMaterialNo(materialNo); |
|
|
|
inquiryDetail.setInquiryWarehouseType("1");//生产入库
|
|
|
|
inquiryDetail.setInventoryHistoricalTime(DateUtils.getNowDate()); |
|
|
|
inquiryDetail.setInquiryOrderType("1"); |
|
|
|
inquiryDetail.setInquiryBusinessType("1"); |
|
|
|
inquiryDetail.setCorrelationCode(storageCode); |
|
|
|
inquiryDetail.setIncreaseDecreaseNum(warehouseStorageOrderDetail.getStorageNum()); |
|
|
|
inquiryDetail.setInventoryIncreaseDecrease("1"); |
|
|
|
int insertDetailResult = inventoryInquiryDetailMapper.insertWarehouseInventoryInquiryDetail(inquiryDetail); |
|
|
|
if (insertDetailResult <= 0){ |
|
|
|
throw new BusinessException("新增库存履历失败!"); |
|
|
|
} |
|
|
|
}else if(warehouseStorageType.equals("4")){//新增委外入库库存历史记录
|
|
|
|
WarehouseInventoryInquiryDetail inquiryDetail = new WarehouseInventoryInquiryDetail(); |
|
|
|
inquiryDetail = createMakeInOrderInquiryDetail(warehouseStorageOrderDetail); |
|
|
|
// inquiryDetail.setInventoryHistoricalType("2");
|
|
|
|
inventoryInquiryDetailMapper.insertWarehouseInventoryInquiryDetail(inquiryDetail); |
|
|
|
} |
|
|
|
//查询该物料报损数,更新库存查询报损数
|
|
|
|
List<WarehouseInventoryReportDamageChild> damageChildren = damageChildMapper.selectWarehouseInventoryReportDamageChildByMaterialNo(materialNo); |
|
|
|
Integer scrapSum = 0; |
|
|
|
if(StringUtils.isNotEmpty(damageChildren)){ |
|
|
|
for (WarehouseInventoryReportDamageChild damageChild:damageChildren) { |
|
|
|
Integer scrapNum = damageChild.getActualScrapQuantity(); |
|
|
|
scrapSum += scrapSum; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//生成入库库存历史记录
|
|
|
|
public WarehouseInventoryInquiryDetail createMakeInOrderInquiryDetail(WarehouseStorageOrderDetail storageOrderDetail){ |
|
|
|
WarehouseInventoryInquiryDetail inquiryDetail = new WarehouseInventoryInquiryDetail(); |
|
|
|
inquiryDetail.setMaterialNo(storageOrderDetail.getMaterialNo()); |
|
|
|
inquiryDetail.setCorrelationCode(storageOrderDetail.getWarehouseStorageCode()); |
|
|
|
inquiryDetail.setInventoryIncreaseDecrease("1"); |
|
|
|
inquiryDetail.setCreateBy(ShiroUtils.getLoginName()); |
|
|
|
inquiryDetail.setCreateTime(DateUtils.getNowDate()); |
|
|
|
inquiryDetail.setInventoryHistoricalTime(DateUtils.getNowDate()); |
|
|
|
return inquiryDetail; |
|
|
|
} |
|
|
|
} |
|
|
|