251 lines
4.1 KiB
Java
251 lines
4.1 KiB
Java
package org.dromara.crm.domain;
|
|
|
|
import com.baomidou.mybatisplus.annotation.*;
|
|
import lombok.Data;
|
|
import lombok.EqualsAndHashCode;
|
|
import org.dromara.common.tenant.core.TenantEntity;
|
|
|
|
import java.io.Serial;
|
|
import java.math.BigDecimal;
|
|
import java.time.LocalDate;
|
|
import java.time.LocalDateTime;
|
|
|
|
/**
|
|
* 报价单对象 crm_quote
|
|
*
|
|
* @author 系统管理员
|
|
* @date 2025-01-03
|
|
*/
|
|
@Data
|
|
@EqualsAndHashCode(callSuper = true)
|
|
@TableName("crm_quote")
|
|
public class CrmQuote extends TenantEntity {
|
|
|
|
@Serial
|
|
private static final long serialVersionUID = 1L;
|
|
|
|
/**
|
|
* 主键ID
|
|
*/
|
|
@TableId(value = "id")
|
|
private Long id;
|
|
|
|
/**
|
|
* 报价单编号(SXDD-yyyyMMdd+3位流水号,如:SXDD-20250922001)
|
|
*/
|
|
private String quoteNo;
|
|
|
|
/**
|
|
* 报价单标题
|
|
*/
|
|
private String quoteTitle;
|
|
|
|
/**
|
|
* 报价单类型(sales-销售/purchase-采购)
|
|
*/
|
|
private String quoteType;
|
|
|
|
/**
|
|
* 客户ID
|
|
*/
|
|
private Long customerId;
|
|
|
|
/**
|
|
* 客户名称(冗余字段)
|
|
*/
|
|
private String customerName;
|
|
|
|
/**
|
|
* 商机ID
|
|
*/
|
|
private Long opportunityId;
|
|
|
|
/**
|
|
* 联系人ID
|
|
*/
|
|
private Long contactId;
|
|
|
|
/**
|
|
* 联系人姓名(冗余字段)
|
|
*/
|
|
private String contactName;
|
|
|
|
/**
|
|
* 联系人手机(冗余字段)
|
|
*/
|
|
private String contactMobile;
|
|
|
|
/**
|
|
* 联系人邮箱(冗余字段)
|
|
*/
|
|
private String contactEmail;
|
|
|
|
/**
|
|
* 版本号(如V1.0,V1.1,V2.0)
|
|
*/
|
|
private String version;
|
|
|
|
/**
|
|
* 父版本ID(版本管理,0表示首版)
|
|
*/
|
|
private Long parentId;
|
|
|
|
/**
|
|
* 是否最新版本(0否 1是)
|
|
*/
|
|
private Integer isLatest;
|
|
|
|
/**
|
|
* 总金额(未折扣前)
|
|
*/
|
|
private BigDecimal totalAmount;
|
|
|
|
/**
|
|
* 整单折扣率(百分比)
|
|
*/
|
|
private BigDecimal discountRate;
|
|
|
|
/**
|
|
* 折扣金额
|
|
*/
|
|
private BigDecimal discountAmount;
|
|
|
|
/**
|
|
* 最终金额(折扣后)
|
|
*/
|
|
private BigDecimal finalAmount;
|
|
|
|
/**
|
|
* 有效期(天数)
|
|
*/
|
|
private Integer validityDays;
|
|
|
|
/**
|
|
* 报价日期
|
|
*/
|
|
private LocalDate quoteDate;
|
|
|
|
/**
|
|
* 到期日期
|
|
*/
|
|
private LocalDate expireDate;
|
|
|
|
/**
|
|
* 状态(draft-草稿/submitted-已提交/accepted-已接受/rejected-已拒绝/expired-已过期/contract-已转合同)
|
|
*/
|
|
private String status;
|
|
|
|
/**
|
|
* 拒绝原因
|
|
*/
|
|
private String rejectReason;
|
|
|
|
/**
|
|
* PDF文件路径
|
|
*/
|
|
private String pdfUrl;
|
|
|
|
/**
|
|
* PDF是否已生成(0否 1是)
|
|
*/
|
|
private Integer pdfGenerated;
|
|
|
|
/**
|
|
* 分享链接
|
|
*/
|
|
private String shareLink;
|
|
|
|
/**
|
|
* 分享码
|
|
*/
|
|
private String shareCode;
|
|
|
|
/**
|
|
* 分享密码(可选)
|
|
*/
|
|
private String sharePassword;
|
|
|
|
/**
|
|
* 分享链接过期时间
|
|
*/
|
|
private LocalDateTime shareExpireTime;
|
|
|
|
/**
|
|
* 查看次数
|
|
*/
|
|
private Integer viewCount;
|
|
|
|
/**
|
|
* 最后查看时间
|
|
*/
|
|
private LocalDateTime lastViewTime;
|
|
|
|
/**
|
|
* 负责人ID
|
|
*/
|
|
private Long ownerUserId;
|
|
|
|
/**
|
|
* 负责人姓名(冗余字段)
|
|
*/
|
|
private String ownerUserName;
|
|
|
|
/**
|
|
* 报价主体ID(关联crm_supplier_info表)
|
|
*/
|
|
private Long supplierId;
|
|
|
|
/**
|
|
* 报价主体名称(冗余字段)
|
|
*/
|
|
private String supplierName;
|
|
|
|
/**
|
|
* 关联合同ID(转合同后)
|
|
*/
|
|
private Long contractId;
|
|
|
|
/**
|
|
* 付款条款
|
|
*/
|
|
private String paymentTerms;
|
|
|
|
/**
|
|
* 交付条款
|
|
*/
|
|
private String deliveryTerms;
|
|
|
|
/**
|
|
* 运费(元)
|
|
*/
|
|
private BigDecimal freight;
|
|
|
|
/**
|
|
* 附件(多个用逗号分隔)
|
|
*/
|
|
private String attachments;
|
|
|
|
/**
|
|
* 报价单模板内容(富文本HTML)
|
|
*/
|
|
private String templateContent;
|
|
|
|
/**
|
|
* 逻辑删除标志(0存在 1删除)
|
|
*/
|
|
@TableLogic
|
|
private Integer delFlag;
|
|
|
|
/**
|
|
* 版本号(乐观锁)
|
|
*/
|
|
@Version
|
|
private Integer versionNo;
|
|
|
|
/**
|
|
* 备注
|
|
*/
|
|
private String remark;
|
|
|
|
}
|