From 6282849468d592e76274d92658c3f3cfcdf347a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=A6=E9=B8=BF=E5=B1=95?= <18031053041@163.com> Date: Thu, 10 Sep 2026 21:15:14 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A9=B3=E5=9B=9E=E8=AE=A2=E5=8D=95=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BusinessDocumentOrderAdjustService.java | 16 ++++++++++++---- .../entity/BusinessDocumentOrder.java | 2 +- .../entity/BusinessDocumentOrderAdjust.java | 10 ++++++++++ .../BusinessDocumentOrderAdjustDetail.java | 12 ++++++++++++ 4 files changed, 35 insertions(+), 5 deletions(-) diff --git a/mhd_oms/src/main/java/com/mhd/oms/application/service/businessDocumentOrder/BusinessDocumentOrderAdjustService.java b/mhd_oms/src/main/java/com/mhd/oms/application/service/businessDocumentOrder/BusinessDocumentOrderAdjustService.java index fc5e56476..079568f45 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/application/service/businessDocumentOrder/BusinessDocumentOrderAdjustService.java +++ b/mhd_oms/src/main/java/com/mhd/oms/application/service/businessDocumentOrder/BusinessDocumentOrderAdjustService.java @@ -61,7 +61,8 @@ import java.util.stream.Collectors; * 不更新业务单数据,不影响其它状态(order_status / execute_status 不动)。 * 5. 审核通过 -> 覆盖业务单(金额) + 替换费用明细;review_status 一律置为 1(已审核), * 不影响 order_status / execute_status。 - * 审核驳回 -> 不更新业务单数据,review_status 还原为调整前值(主记录 before_review_status),可再次调整。 + * 审核驳回 -> 不更新业务单数据,review_status 置为「调整驳回(4)」,不影响 order_status/execute_status, + * 可再次调整提交审核。 * 6. 直通(未改金额) -> 覆盖业务单可编辑字段 + deliveryFreight(明细合计),并替换 business_order_account * (逻辑删旧 is_delete=1 + 插新 is_delete=0);不改动任何审核/执行状态。 * @@ -78,6 +79,11 @@ public class BusinessDocumentOrderAdjustService { private static final Integer AUDIT_PASS = 1; // 调整记录:审核通过 private static final Integer AUDIT_REJECT = 2; // 调整记录:驳回 + /** 业务单 review_status:调整待审核(提交涉及金额时置) */ + private static final Long REVIEW_ADJUST_WAIT = 3L; + /** 业务单 review_status:调整驳回(审核驳回时置,与普通驳回 2 区分) */ + private static final Long REVIEW_ADJUST_REJECT = 4L; + /** 主表金额(费用)字段,任一变化触发审核 * 含: 运费相关 8 项 + 其他费用 8 项 + 结算币种 + 收款账户(3 字段) * 任意一项变化即需要审核(对应前端"费用合计 / 运费 / 装卸费 / 仓租及柜租(走明细) / @@ -205,7 +211,7 @@ public class BusinessDocumentOrderAdjustService { // 8b. 涉及金额:仅把业务单 review_status 置为"调整待审核(3)",其余状态(exec/orderStatus)不动,不更新业务单数据 BusinessDocumentOrder statusOnly = new BusinessDocumentOrder(); statusOnly.setId(dbOrder.getId()); - statusOnly.setReviewStatus(3L); // 调整待审核 + statusOnly.setReviewStatus(REVIEW_ADJUST_WAIT); // 调整待审核 businessDocumentOrderMapper.updateById(statusOnly); } @@ -386,6 +392,7 @@ public class BusinessDocumentOrderAdjustService { syncTmsAsync(order.getGoodsNumber(), toSave); } else { adjust.setAuditStatus(AUDIT_REJECT); + adjust.setIsAudit(1); // 走到审核即说明该调整需要审核,保持 is_audit 与 audit_status 语义一致 adjust.setAuditBy(auditBy); adjust.setAuditByName(auditByName); adjust.setAuditTime(now); @@ -394,10 +401,11 @@ public class BusinessDocumentOrderAdjustService { adjust.setUpdateTime(now); adjustMapper.updateById(adjust); - // 驳回:不更新业务单数据,仅把 review_status 还原为调整前值(不影响其它状态) + // 驳回:不更新业务单数据,仅把 review_status 置为「调整驳回(4)」; + // 不影响 order_status / execute_status 等其它单据状态;可再次调整提交审核 BusinessDocumentOrder statusOnly = new BusinessDocumentOrder(); statusOnly.setId(adjust.getOrderId()); - statusOnly.setReviewStatus(adjust.getBeforeReviewStatus() == null ? 0L : adjust.getBeforeReviewStatus()); + statusOnly.setReviewStatus(REVIEW_ADJUST_REJECT); businessDocumentOrderMapper.updateById(statusOnly); } return AjaxResult.success(); diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrder/entity/BusinessDocumentOrder.java b/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrder/entity/BusinessDocumentOrder.java index f24f19291..e0b2a1bc0 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrder/entity/BusinessDocumentOrder.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrder/entity/BusinessDocumentOrder.java @@ -660,7 +660,7 @@ public class BusinessDocumentOrder extends BaseVOEntity{ @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") private Date documentDate; - @ApiModelProperty( "审核状态 0-未审核 1-审核通过 2-已驳回 3-调整待审核") + @ApiModelProperty( "审核状态 0-未审核 1-审核通过 2-已驳回 3-调整待审核 4-调整驳回") private Long reviewStatus; @ApiModelProperty("审核时间") diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrderAdjust/entity/BusinessDocumentOrderAdjust.java b/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrderAdjust/entity/BusinessDocumentOrderAdjust.java index d84a978e3..4ea7691f8 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrderAdjust/entity/BusinessDocumentOrderAdjust.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrderAdjust/entity/BusinessDocumentOrderAdjust.java @@ -3,8 +3,10 @@ package com.mhd.oms.domain.businessDocumentOrderAdjust.entity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.util.Date; @@ -38,6 +40,8 @@ public class BusinessDocumentOrderAdjust implements Serializable { private String adjustByName; @ApiModelProperty("调整时间") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date adjustTime; @ApiModelProperty("调整原因") @@ -59,6 +63,8 @@ public class BusinessDocumentOrderAdjust implements Serializable { private String auditByName; @ApiModelProperty("审核时间") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date auditTime; @ApiModelProperty("审核/驳回意见") @@ -77,6 +83,8 @@ public class BusinessDocumentOrderAdjust implements Serializable { private String createName; @ApiModelProperty("创建时间") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date createTime; @ApiModelProperty("更新人") @@ -86,6 +94,8 @@ public class BusinessDocumentOrderAdjust implements Serializable { private String updateName; @ApiModelProperty("更新时间") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date updateTime; @ApiModelProperty("删除标记 1-正常 0-删除") diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrderAdjustDetail/entity/BusinessDocumentOrderAdjustDetail.java b/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrderAdjustDetail/entity/BusinessDocumentOrderAdjustDetail.java index 2587cb23d..3aff8a13f 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrderAdjustDetail/entity/BusinessDocumentOrderAdjustDetail.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/businessDocumentOrderAdjustDetail/entity/BusinessDocumentOrderAdjustDetail.java @@ -3,10 +3,12 @@ package com.mhd.oms.domain.businessDocumentOrderAdjustDetail.entity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.math.BigDecimal; @@ -55,6 +57,8 @@ public class BusinessDocumentOrderAdjustDetail implements Serializable { private String loadingAddress; @ApiModelProperty("装货时间") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date loadingDate; @ApiModelProperty("卸货地") @@ -64,6 +68,8 @@ public class BusinessDocumentOrderAdjustDetail implements Serializable { private String unloadAddress; @ApiModelProperty("卸货时间") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date unloadingData; @ApiModelProperty("发货人") @@ -85,6 +91,8 @@ public class BusinessDocumentOrderAdjustDetail implements Serializable { private String route; @ApiModelProperty("单据日期") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date documentDate; @ApiModelProperty("组织ID") @@ -158,12 +166,16 @@ public class BusinessDocumentOrderAdjustDetail implements Serializable { private String createName; @ApiModelProperty("创建时间") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date createTime; @ApiModelProperty("更新人") private String updateBy; @ApiModelProperty("更新时间") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date updateTime; @ApiModelProperty("删除标记 1-正常 0-删除")