diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/bo/ErpContractChangeSaveBo.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/bo/ErpContractChangeSaveBo.java new file mode 100644 index 00000000..a13fdd7c --- /dev/null +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/bo/ErpContractChangeSaveBo.java @@ -0,0 +1,115 @@ +package org.dromara.oa.erp.domain.bo; + +import lombok.Data; + +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; +import java.util.List; + +/** + * 合同变更保存业务对象(主表+信息快照+物料快照+付款方式快照 一次提交) + * + * @author Yinq + * @date 2026-03-07 + */ +@Data +public class ErpContractChangeSaveBo { + + /** + * 合同变更ID(有值则更新,无则新增) + */ + private Long contractChangeId; + + /** + * 原合同ID + */ + @NotNull(message = "原合同ID不能为空") + private Long contractId; + + /** + * 变更类型(1内容变更 2解除合同) + */ + @NotBlank(message = "变更类型不能为空") + private String changeType; + + /** + * 变更单编号 + */ + private String changeCode; + + /** + * 变更原因(解除合同时即解除原因) + */ + @NotBlank(message = "变更原因不能为空") + private String changeReason; + + /** + * 申请时间 + */ + private java.util.Date applyTime; + + /** + * 承办部门 + */ + private Long undertakeDeptId; + + /** + * 承办人 + */ + private Long undertakeBy; + + /** + * 行业/大区 + */ + private String industryRegion; + + /** + * 印章法人单位 + */ + private String sealLegalEntity; + + /** + * 变更状态(1暂存 2审批中 3可用) + */ + private String changeStatus; + + /** + * 流程状态 + */ + private String flowStatus; + + /** + * 备注 + */ + private String remark; + + /** + * 激活标识(1是 0否) + */ + private String activeFlag; + + /** 以下为冗余字段,列表/主表展示用 */ + private String contractCode; + private String contractName; + private String originalCustomerName; + private Long originalContractAmount; + private String changeContractCode; + private String changeContractName; + private String customerName; + private Long changeContractAmount; + + /** + * 合同变更信息快照(内容变更时必填) + */ + private ErpContractChangeInfoBo changeInfo; + + /** + * 合同变更物料快照列表(内容变更时使用) + */ + private List changeMaterialList; + + /** + * 合同变更付款方式快照列表(内容变更时使用) + */ + private List changePaymentMethodList; +} diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/vo/ContractChangeDetailVo.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/vo/ContractChangeDetailVo.java new file mode 100644 index 00000000..0d5a488e --- /dev/null +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/vo/ContractChangeDetailVo.java @@ -0,0 +1,40 @@ +package org.dromara.oa.erp.domain.vo; + +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.List; + +/** + * 合同变更详情(主表+信息快照+物料快照+付款方式快照) + * + * @author Yinq + * @date 2026-03-07 + */ +@Data +public class ContractChangeDetailVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 合同变更主表 + */ + private ErpContractChangeVo main; + + /** + * 合同变更信息快照(内容变更有值) + */ + private ErpContractChangeInfoVo changeInfo; + + /** + * 合同变更物料快照列表(内容变更有值) + */ + private List changeMaterialList; + + /** + * 合同变更付款方式快照列表(内容变更有值) + */ + private List changePaymentMethodList; +}