驳回订单修改

This commit is contained in:
秦鸿展
2026-09-10 21:15:14 +08:00
parent 60381ad7c9
commit 6282849468
4 changed files with 35 additions and 5 deletions
@@ -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();
@@ -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("审核时间")
@@ -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-删除")
@@ -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-删除")