Browse Source

[fix]

仓库管理 入库单
修改入库单详情根据入库单号、供应商ID、料号查询详情mapper方法;
修改采购入库单采购入库service方法和库存查询相关方法,去除引起冲突字段;
dev
王晓迪 3 months ago
parent
commit
efcef69d4d
  1. 80
      ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderServiceImpl.java
  2. 8
      ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderDetailMapper.xml

80
ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderServiceImpl.java

@ -646,13 +646,11 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS
if (updateWarehouseStorageOrderDetailResult <= 0){
throw new BusinessException("更新仓库入库单详情失败,未影响任何行");
}
// else{
// WarehouseStorageOrderDetail storageOrderDetail = storageOrderDetailMapper.selectWarehouseStorageOrderDetailById(warehouseStorageOrderDetail.getWarehouseStorageDetailId());
// int inventoryInquiryResult = createWarehouseInventoryInquiry(storageOrderDetail);
// if (inventoryInquiryResult <= 0){
// throw new BusinessException("更新/新增库存查询失败,未影响任何行");
// }
// }
WarehouseStorageOrderDetail storageOrderDetail = storageOrderDetailMapper.selectWarehouseStorageOrderDetailById(warehouseStorageOrderDetail.getWarehouseStorageDetailId());
int inventoryInquiryResult = createWarehouseInventoryInquiry(storageOrderDetail);
if (inventoryInquiryResult <= 0){
throw new BusinessException("更新/新增库存查询失败,未影响任何行");
}
}
//更新生产单数据
@ -702,21 +700,25 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS
public int createWarehouseInventoryInquiry(WarehouseStorageOrderDetail warehouseStorageOrderDetail){
String materialNo = warehouseStorageOrderDetail.getMaterialNo();
String correlationCode = warehouseStorageOrderDetail.getRelatedOrderCode();
String warehouseStorageType = warehouseStorageOrderDetail.getWarehouseStorageType();
String storageCode = warehouseStorageOrderDetail.getWarehouseStorageCode();
WarehouseStorageOrder warehouseStorageOrder = warehouseStorageOrderMapper.selectWarehouseStorageOrderByCode(storageCode);
String warehouseStorageType = warehouseStorageOrder.getWarehouseStorageType();
if(warehouseStorageType.equals("0")) {
// 新增采购入库库存历史记录
List<PurchaseOrderChild> purchaseOrderChild = purchaseOrderChildMapper.selectPurchaseOrderChildByOrderCode(warehouseStorageOrderDetail.getRelatedOrderCode());
// PurchaseOrder purchaseOrder = purchaseOrderMapper.selectPurchaseOrderByOrderCode()
List<PurchaseOrderChild> purchaseOrderChild = purchaseOrderChildMapper.selectPurchaseOrderChildByOrderCode(correlationCode);
for (PurchaseOrderChild child : purchaseOrderChild) {
// if(child.getMaterialCode().equals(materialNo)){
// int storageNum = warehouseStorageOrderDetail.getStorageNum();
// WarehouseInventoryInquiryDetail inquiryDetail = new WarehouseInventoryInquiryDetail();
// inquiryDetail = generateInquiryDetailByPurchaseChild(child,storageNum);
// inquiryDetail.setInventoryHistoricalType("0");
//// if (correlationCode.startsWith("QG")) {
////// 有无归属分类
//// }
// inventoryInquiryDetailMapper.insertWarehouseInventoryInquiryDetail(inquiryDetail);
// }
if(child.getMaterialNo().equals(materialNo)){
int storageNum = warehouseStorageOrderDetail.getStorageNum();
WarehouseInventoryInquiryDetail inquiryDetail = new WarehouseInventoryInquiryDetail();
inquiryDetail = generateInquiryDetailByPurchaseChild(child,storageNum);
inquiryDetail.setInventoryHistoricalType("0");
// if (correlationCode.startsWith("QG")) {
//// 有无归属分类
// }
inventoryInquiryDetailMapper.insertWarehouseInventoryInquiryDetail(inquiryDetail);
}
}
}else if(warehouseStorageType.equals("2")){//新增委内入库库存历史记录
WarehouseInventoryInquiryDetail inquiryDetail = new WarehouseInventoryInquiryDetail();
@ -749,7 +751,7 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS
inventoryInquiry.setAvailableStockNum(avaliableStorage);
inventoryInquiry.setReportDamageNum(scrapSum);
// 设置历史总数
if(warehouseStorageOrderDetail.getWarehouseStorageType().equals("0")){
if(warehouseStorageType.equals("0")){
BigDecimal historicalNum = getHistoricalTotalFromQualityOrder(warehouseStorageOrderDetail);
BigDecimal historicalTotal = inventoryInquiry.getHistoricalTotal();
historicalTotal = historicalTotal.add(historicalNum);
@ -776,7 +778,7 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS
Integer storage = warehouseStorageOrderDetail.getStorageNum();
BigDecimal storagenum = BigDecimal.valueOf(storage);
// 设置历史总数
if(warehouseStorageOrderDetail.getWarehouseStorageType().equals("0")){
if(warehouseStorageType.equals("0")){
BigDecimal historicalNum = getHistoricalTotalFromQualityOrder(warehouseStorageOrderDetail);
inventoryInquiry.setHistoricalTotal(historicalNum);
}else{
@ -806,10 +808,10 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS
inquiryDetail.setMaterialType(child.getMaterialType());
inquiryDetail.setMaterialUnit(child.getMaterialUnit());
// inquiryDetail.setInventoryAttributionCode(child.getPurchasePlanCorrelationCode());
// inquiryDetail.setSupplierCode(child.getSupplierCode());
// inquiryDetail.setSupplierCode(child.());
// inquiryDetail.setSupplierName(child.getSupplierName());
inquiryDetail.setPurchaseOrderCode(child.getPurchaseOrderCode());
// inquiryDetail.setPurchaseOrderCode(child.getPurchaseOrderCode());
// 库存归属单号
BigDecimal realStorageNum = BigDecimal.valueOf(storageNum);
inquiryDetail.setAvailableStockNum(realStorageNum);
@ -955,28 +957,26 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS
if (updateWarehouseStorageOrderDetailResult <= 0){
throw new BusinessException("更新仓库入库单详情失败,未影响任何行");
}
// else{
// WarehouseStorageOrderDetail storageOrderDetail = storageOrderDetailMapper.selectWarehouseStorageOrderDetailById(warehouseStorageOrderDetail.getWarehouseStorageDetailId());
// int inventoryInquiryResult = createWarehouseInventoryInquiry(storageOrderDetail);
// if (inventoryInquiryResult <= 0){
// throw new BusinessException("更新/新增库存查询失败,未影响任何行");
// }
// }
WarehouseStorageOrderDetail storageOrderDetail = storageOrderDetailMapper.selectWarehouseStorageOrderDetailById(warehouseStorageOrderDetail.getWarehouseStorageDetailId());
int inventoryInquiryResult = createWarehouseInventoryInquiry(storageOrderDetail);
if (inventoryInquiryResult <= 0){
throw new BusinessException("更新/新增库存查询失败,未影响任何行");
}
}
//更新生产单数据
int updateMakeOrderResult = sysMakeOrderService.updateSysMakeOrderByWarehouseStorageOrder(warehouseStorageOrder,oldWarehouseStorageOrder, warehouseStorageOrderDetailList);
if (updateMakeOrderResult <= 0){
throw new BusinessException("更新生产订单失败,未影响任何行");
}
// int updateMakeOrderResult = sysMakeOrderService.updateSysMakeOrderByWarehouseStorageOrder(warehouseStorageOrder,oldWarehouseStorageOrder, warehouseStorageOrderDetailList);
// if (updateMakeOrderResult <= 0){
// throw new BusinessException("更新生产订单失败,未影响任何行");
// }
//更新开发修改单数据
String relatedOrderCode = warehouseStorageOrder.getRelatedOrderCode();
ErpDevelopModifyorder erpDevelopModifyorder = developModifyorderMapper.selectErpDevelopModifyorderByCode(relatedOrderCode);
if (erpDevelopModifyorder != null){
erpDevelopModifyorder.setPurchaseStorageStatus("8");
developModifyorderMapper.updateErpDevelopModifyorder(erpDevelopModifyorder);
}
// String relatedOrderCode = warehouseStorageOrder.getRelatedOrderCode();
// ErpDevelopModifyorder erpDevelopModifyorder = developModifyorderMapper.selectErpDevelopModifyorderByCode(relatedOrderCode);
// if (erpDevelopModifyorder != null){
// erpDevelopModifyorder.setPurchaseStorageStatus("8");
// developModifyorderMapper.updateErpDevelopModifyorder(erpDevelopModifyorder);
// }
if (warehouseStorageOrder.getStorageNum().equals(oldWarehouseStorageOrder.getTemporaryQualifiedNum())){

8
ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderDetailMapper.xml

@ -147,9 +147,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectWarehouseStorageOrderByObject" parameterType="WarehouseStorageOrder" resultMap="WarehouseStorageOrderDetailResult">
<include refid="selectWarehouseStorageOrderDetailVo"/>
where warehouse_storage_code = #{warehouseStorageCode}
and supplier_code = #{supplierCode}
and material_no = #{materialNo}
<where>
<if test="warehouseStorageCode != null and warehouseStorageCode != ''"> and warehouse_storage_code = #{warehouseStorageCode}</if>
<if test="supplierCode != null and supplierCode != ''"> and supplier_code = #{supplierCode}</if>
<if test="materialNo != null and materialNo != ''"> and material_no = #{materialNo}</if>
</where>
</select>
<select id="selectWarehouseStorageMakeOrderByObject" parameterType="WarehouseStorageOrder" resultMap="WarehouseStorageOrderDetailResult">

Loading…
Cancel
Save