|
|
@ -412,8 +412,8 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS |
|
|
|
String loginName = ShiroUtils.getLoginName(); |
|
|
|
warehouseStorageOrder.setUpdateBy(loginName); |
|
|
|
warehouseStorageOrder.setUpdateTime(DateUtils.getNowDate()); |
|
|
|
//改变状态为已暂收
|
|
|
|
warehouseStorageOrder.setWarehouseStorageStatus("1"); |
|
|
|
//改变状态为待入库
|
|
|
|
warehouseStorageOrder.setWarehouseStorageStatus("2"); |
|
|
|
//设置品质状态,为待品质
|
|
|
|
warehouseStorageOrder.setWarehouseQualityStatus("0"); |
|
|
|
warehouseStorageOrder.setWarehouseEmployee(loginName); |
|
|
@ -432,11 +432,11 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS |
|
|
|
actualArriveNum = warehouseStorageOrderDetailList.stream().mapToInt(WarehouseStorageOrderDetail::getActualArriveNum).sum(); |
|
|
|
|
|
|
|
int temporaryQualifiedNum = 0; |
|
|
|
//检查填写的品质合格数是否有空值
|
|
|
|
//检查填写的暂收合格数是否有空值
|
|
|
|
boolean hasTemporaryQualifiedNumNull = warehouseStorageOrderDetailList.stream() |
|
|
|
.anyMatch(item -> item.getTemporaryQualifiedNum() == null); |
|
|
|
if (hasTemporaryQualifiedNumNull) { |
|
|
|
throw new BusinessException("存在品质合格数为空,请检查!"); |
|
|
|
throw new BusinessException("存在暂收合格数为空,请检查!"); |
|
|
|
} |
|
|
|
//入库单主表的暂收合格数为子表的合计
|
|
|
|
temporaryQualifiedNum = warehouseStorageOrderDetailList.stream().mapToInt(WarehouseStorageOrderDetail::getTemporaryQualifiedNum).sum(); |
|
|
@ -461,7 +461,7 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS |
|
|
|
if (updateResult <= 0) { |
|
|
|
throw new BusinessException("更新入库单主记录失败"); |
|
|
|
} |
|
|
|
|
|
|
|
if(temporaryQualifiedNum>0){ |
|
|
|
try { |
|
|
|
qualityOrderService.insertQualityOrderByOutsourceStorageOrder(warehouseStorageOrder, warehouseStorageOrder.getWarehouseStorageOrderDetailList()); |
|
|
|
} catch (Exception e) { |
|
|
@ -469,7 +469,7 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS |
|
|
|
log.error("生成品质单时发生错误", e); |
|
|
|
throw new BusinessException("生成品质单时发生错误"); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
return updateResult; |
|
|
|
} |
|
|
|
|
|
|
@ -752,17 +752,9 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS |
|
|
|
inventoryInquiry.setAvailableStockNum(avaliableStorage); |
|
|
|
inventoryInquiry.setReportDamageNum(scrapSum); |
|
|
|
// 设置历史总数
|
|
|
|
if(warehouseStorageType.equals("0")){ |
|
|
|
BigDecimal historicalNum = getHistoricalTotalFromQualityOrder(warehouseStorageOrderDetail); |
|
|
|
BigDecimal historicalTotal = inventoryInquiry.getHistoricalTotal(); |
|
|
|
historicalTotal = historicalTotal.add(historicalNum); |
|
|
|
inventoryInquiry.setHistoricalTotal(historicalTotal); |
|
|
|
}else{ |
|
|
|
BigDecimal historicalNum = BigDecimal.valueOf(warehouseStorageOrderDetail.getStorageNum()); |
|
|
|
BigDecimal historicalTotal = inventoryInquiry.getHistoricalTotal(); |
|
|
|
historicalTotal = historicalTotal.add(historicalNum); |
|
|
|
historicalTotal = historicalTotal.add(storagenum); |
|
|
|
inventoryInquiry.setHistoricalTotal(historicalTotal); |
|
|
|
} |
|
|
|
inventoryInquiry.setUpdateBy(ShiroUtils.getLoginName()); |
|
|
|
inventoryInquiry.setUpdateTime(DateUtils.getNowDate()); |
|
|
|
return warehouseInventoryInquiryMapper.updateWarehouseInventoryInquiry(inventoryInquiry); |
|
|
@ -779,12 +771,7 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS |
|
|
|
Integer storage = warehouseStorageOrderDetail.getStorageNum(); |
|
|
|
BigDecimal storagenum = BigDecimal.valueOf(storage); |
|
|
|
// 设置历史总数
|
|
|
|
if(warehouseStorageType.equals("0")){ |
|
|
|
BigDecimal historicalNum = getHistoricalTotalFromQualityOrder(warehouseStorageOrderDetail); |
|
|
|
inventoryInquiry.setHistoricalTotal(historicalNum); |
|
|
|
}else{ |
|
|
|
inventoryInquiry.setHistoricalTotal(storagenum); |
|
|
|
} |
|
|
|
inventoryInquiry.setAvailableStockNum(storagenum); |
|
|
|
inventoryInquiry.setReportDamageNum(scrapSum); |
|
|
|
|
|
|
@ -931,9 +918,9 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS |
|
|
|
oldPurchaseOrderChild.setUpdateTime(DateUtils.getNowDate()); |
|
|
|
|
|
|
|
Integer storageNumDetail = warehouseStorageOrderDetail.getStorageNum(); |
|
|
|
Integer temporaryQualifiedNum = warehouseStorageOrderDetail.getTemporaryQualifiedNum(); |
|
|
|
if (temporaryQualifiedNum < storageNumDetail){ |
|
|
|
throw new BusinessException("入库数量不能大于暂收合格数"); |
|
|
|
Integer qualityHasQualifiedNum = warehouseStorageOrderDetail.getQualityHasQualifiedNum(); |
|
|
|
if (qualityHasQualifiedNum < storageNumDetail){ |
|
|
|
throw new BusinessException("入库数量不能大于品质合格数"); |
|
|
|
} |
|
|
|
|
|
|
|
Integer hasStorageNum = warehouseStorageOrderDetail.getHasStorageNum(); |
|
|
@ -941,19 +928,22 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS |
|
|
|
//更新已入库数
|
|
|
|
hasStorageNum = storageNumDetail; |
|
|
|
oldPurchaseOrderChild.setHasStorageNum(hasStorageNum); |
|
|
|
warehouseStorageOrderDetail.setHasStorageNum(hasStorageNum); |
|
|
|
}else{ |
|
|
|
hasStorageNum = hasStorageNum + storageNumDetail; |
|
|
|
oldPurchaseOrderChild.setHasStorageNum(hasStorageNum); |
|
|
|
warehouseStorageOrderDetail.setHasStorageNum(hasStorageNum); |
|
|
|
} |
|
|
|
|
|
|
|
if (temporaryQualifiedNum < hasStorageNum){ |
|
|
|
throw new BusinessException("已入库数量不能大于暂收合格数"); |
|
|
|
if (qualityHasQualifiedNum < hasStorageNum){ |
|
|
|
throw new BusinessException("已入库数量不能大于品质合格数"); |
|
|
|
} |
|
|
|
|
|
|
|
int updatePurchaseOrderChildResult = purchaseOrderChildMapper.updatePurchaseOrderChild(oldPurchaseOrderChild); |
|
|
|
if (updatePurchaseOrderChildResult <= 0){ |
|
|
|
throw new BusinessException("更新采购订单子表数据失败"); |
|
|
|
} |
|
|
|
|
|
|
|
int updateWarehouseStorageOrderDetailResult = storageOrderDetailMapper.updateWarehouseStorageOrderDetail(warehouseStorageOrderDetail); |
|
|
|
if (updateWarehouseStorageOrderDetailResult <= 0){ |
|
|
|
throw new BusinessException("更新仓库入库单详情失败,未影响任何行"); |
|
|
@ -966,10 +956,10 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS |
|
|
|
} |
|
|
|
|
|
|
|
//更新生产单数据
|
|
|
|
// 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();
|
|
|
|