Files
shanxia2.0/docs/crm-migration/reference/java/quote/domain/bo/CrmQuoteApprovalBo.java
T
2026-06-01 08:21:21 +08:00

80 lines
1.7 KiB
Java

package org.dromara.crm.domain.bo;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.crm.domain.CrmQuoteApproval;
import java.time.LocalDateTime;
/**
* 报价单审批业务对象 crm_quote_approval
*
* @author 系统管理员
* @date 2025-01-03
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = CrmQuoteApproval.class, reverseConvertGenerate = false)
public class CrmQuoteApprovalBo extends BaseEntity {
/**
* 主键ID
*/
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
private Long id;
/**
* 报价单ID
*/
@NotNull(message = "报价单ID不能为空", groups = { AddGroup.class })
private Long quoteId;
/**
* 报价单编号(冗余)
*/
private String quoteNo;
/**
* 审批步骤(1/2/3...)
*/
private Integer step;
/**
* 审批人ID
*/
@NotNull(message = "审批人ID不能为空", groups = { AddGroup.class })
private Long approverId;
/**
* 审批人姓名(冗余)
*/
private String approverName;
/**
* 审批结果(pending-待审批/approved-通过/rejected-拒绝)
*/
@NotBlank(message = "审批结果不能为空", groups = { EditGroup.class })
private String approvalResult;
/**
* 审批意见
*/
private String approvalOpinion;
/**
* 审批时间
*/
private LocalDateTime approvalTime;
/**
* 备注
*/
private String remark;
}