diff --git a/ruoyi-admin/src/main/java/com/ruoyi/aftersales/domain/AftersalesOutOrder.java b/ruoyi-admin/src/main/java/com/ruoyi/aftersales/domain/AftersalesOutOrder.java index 5007ae55..5c0648c8 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/aftersales/domain/AftersalesOutOrder.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/aftersales/domain/AftersalesOutOrder.java @@ -30,7 +30,7 @@ public class AftersalesOutOrder extends BaseEntity /** 关联生产订单号 */ private String makeNo; - /** 出库状态(0待仓库准备物料、1待售后维护设备1、2待业务确认发货、3待售后维护设备2、4待出库、5部分出库、6全部出库、7已出库、8已取消、9待收货、10待验收、11部分验收、12全部验收) */ + /** 出库状态(0待仓库准备物料、1待售后维护设备1、2待业务确认发货、3待售后维护设备2、4待出库、5部分出库、6全部出库、7已出库、8已取消、9待收货、10待验收、11部分验收、12全部验收、13部分收货、14全部收货) */ @Excel(name = "出库状态",dictType = "warehouse_out_status") private String warehouseOutStatus; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesShippingInform.java b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesShippingInform.java index c7812146..8cdebc41 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesShippingInform.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesShippingInform.java @@ -27,7 +27,7 @@ public class SysSalesShippingInform extends BaseEntity @Excel(name = "出库单号", width = 20, needMerge = true) private String outOrderCode; - /** 出库状态(0待仓库准备物料、1待售后维护设备1、2待业务确认发货、3待售后维护设备2、4待出库、5部分出库、6全部出库、7已出库、8已取消) */ + /** 出库状态(0待仓库准备物料、1待售后维护设备1、2待业务确认发货、3待售后维护设备2、4待出库、5部分出库、6全部出库、7已出库、8已取消、9待收货、10待验收、11部分验收、12全部验收、13部分收货、14全部收货) */ // @Excel(name = "出库状态", readConverterExp = "0=待仓库准备物料、1待售后维护设备1、2待业务确认发货、3待售后维护设备2、4待出库、5部分出库、6全部出库、7已出库、8已取消") @Excel(name = "出库状态", dictType = "warehouse_out_status", width = 20, needMerge = true) private String warehouseOutStatus; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/Vo/ExportSalesShippingInformDetailVo.java b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/Vo/ExportSalesShippingInformDetailVo.java index ef595bdf..ecfffcaf 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/Vo/ExportSalesShippingInformDetailVo.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/Vo/ExportSalesShippingInformDetailVo.java @@ -20,7 +20,7 @@ public class ExportSalesShippingInformDetailVo { @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd HH:mm:ss") private Date createTime; - /** 出库状态(0待仓库准备物料、1待售后维护设备1、2待业务确认发货、3待售后维护设备2、4待出库、5部分出库、6全部出库、7已出库、8已取消) */ + /** 出库状态(0待仓库准备物料、1待售后维护设备1、2待业务确认发货、3待售后维护设备2、4待出库、5部分出库、6全部出库、7已出库、8已取消、9待收货、10待验收、11部分验收、12全部验收、13部分收货、14全部收货) */ // @Excel(name = "出库状态", readConverterExp = "0=待仓库准备物料、1待售后维护设备1、2待业务确认发货、3待售后维护设备2、4待出库、5部分出库、6全部出库、7已出库、8已取消") @Excel(name = "出库状态", dictType = "warehouse_out_status") private String warehouseOutStatus; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesShippingInformServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesShippingInformServiceImpl.java index acba8d31..9119b451 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesShippingInformServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesShippingInformServiceImpl.java @@ -564,6 +564,37 @@ public class SysSalesShippingInformServiceImpl implements ISysSalesShippingInfor processWithShippingDeviceId(withShippingDeviceIdList); } + + // 检查所有详情记录的已收货数与本次出货数对比,确定最终状态 + boolean allReceived = true; + boolean partiallyReceived = false; + + for (SysSalesShippingInformDetail detail : shippingInformDetailList) { + if (detail.getHasReceivingNum() == 0) { + allReceived = false; + } else if (detail.getHasReceivingNum() < detail.getThisShippingNum()) { + allReceived = false; + partiallyReceived = true; + } + } + if (allReceived) { + // 已收货数等于本次出货数 + sysSalesShippingInform.setWarehouseOutStatus("14");//全部收货 + } else if (partiallyReceived) { + // 已收货数大于0小于本次出货数 + sysSalesShippingInform.setWarehouseOutStatus("13");//部分收货 + } else { + // 已收货数等于0 + sysSalesShippingInform.setWarehouseOutStatus("9");//待收货 + } + + //更新销售出货通知 + int updateShippingInformResult = sysSalesShippingInformMapper.updateSysSalesShippingInformByOutOrderCode(sysSalesShippingInform); + if (updateShippingInformResult <= 0){ + throw new BusinessException("更新销售出货通知单数据失败"); + } + + //更新收货维护设备出库单数据 AftersalesOutOrder aftersalesOutOrder = new AftersalesOutOrder(); aftersalesOutOrder.setOutOrderCode(sysSalesShippingInform.getOutOrderCode()); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/domain/WarehouseOutOrder.java b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/domain/WarehouseOutOrder.java index 1d451a6a..435c0662 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/domain/WarehouseOutOrder.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/domain/WarehouseOutOrder.java @@ -30,7 +30,7 @@ public class WarehouseOutOrder extends BaseEntity /** 关联生产订单号 */ private String makeNo; - /** 出库状态(0待仓库准备物料、1待售后维护设备1、2待业务确认发货、3待售后维护设备2、4待出库、5部分出库、6全部出库、7已出库、8已取消、9待收货、10待验收、11部分验收、12全部验收) */ + /** 出库状态(0待仓库准备物料、1待售后维护设备1、2待业务确认发货、3待售后维护设备2、4待出库、5部分出库、6全部出库、7已出库、8已取消、9待收货、10待验收、11部分验收、12全部验收、13部分收货、14全部收货) */ @Excel(name = "出库状态",dictType = "warehouse_out_status") private String warehouseOutStatus;