333 lines
6.2 KiB
Java
333 lines
6.2 KiB
Java
package org.dromara.crm.domain.vo;
|
|
|
|
import cn.idev.excel.annotation.ExcelProperty;
|
|
import io.github.linpeilie.annotations.AutoMapper;
|
|
import lombok.Data;
|
|
import org.dromara.common.excel.annotation.ExcelDictFormat;
|
|
import org.dromara.common.excel.convert.ExcelDictConvert;
|
|
import org.dromara.common.translation.annotation.Translation;
|
|
import org.dromara.common.translation.constant.TransConstant;
|
|
import org.dromara.crm.domain.CrmQuote;
|
|
|
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
|
|
|
import java.io.Serial;
|
|
import java.io.Serializable;
|
|
import java.math.BigDecimal;
|
|
import java.time.LocalDate;
|
|
import java.time.LocalDateTime;
|
|
import java.util.Date;
|
|
import java.util.List;
|
|
|
|
/**
|
|
* 报价单视图对象 crm_quote
|
|
*
|
|
* @author 系统管理员
|
|
* @date 2025-01-03
|
|
*/
|
|
@Data
|
|
@AutoMapper(target = CrmQuote.class)
|
|
public class CrmQuoteVo implements Serializable {
|
|
|
|
@Serial
|
|
private static final long serialVersionUID = 1L;
|
|
|
|
/**
|
|
* 主键ID
|
|
*/
|
|
@ExcelProperty(value = "ID")
|
|
private Long id;
|
|
|
|
/**
|
|
* 报价单编号
|
|
*/
|
|
@ExcelProperty(value = "报价单编号")
|
|
private String quoteNo;
|
|
|
|
/**
|
|
* 报价单标题
|
|
*/
|
|
@ExcelProperty(value = "报价单标题")
|
|
private String quoteTitle;
|
|
|
|
/**
|
|
* 报价单类型(sales-销售/purchase-采购)
|
|
*/
|
|
@ExcelProperty(value = "报价单类型")
|
|
private String quoteType;
|
|
|
|
/**
|
|
* 客户ID
|
|
*/
|
|
private Long customerId;
|
|
|
|
/**
|
|
* 客户名称
|
|
*/
|
|
@ExcelProperty(value = "客户名称")
|
|
private String customerName;
|
|
|
|
/**
|
|
* 商机ID
|
|
*/
|
|
private Long opportunityId;
|
|
|
|
/**
|
|
* 商机名称
|
|
*/
|
|
@ExcelProperty(value = "商机名称")
|
|
private String opportunityName;
|
|
|
|
/**
|
|
* 联系人ID
|
|
*/
|
|
private Long contactId;
|
|
|
|
/**
|
|
* 联系人姓名
|
|
*/
|
|
@ExcelProperty(value = "联系人")
|
|
private String contactName;
|
|
|
|
/**
|
|
* 联系人手机
|
|
*/
|
|
private String contactMobile;
|
|
|
|
/**
|
|
* 联系人邮箱
|
|
*/
|
|
private String contactEmail;
|
|
|
|
/**
|
|
* 版本号
|
|
*/
|
|
@ExcelProperty(value = "版本号")
|
|
private String version;
|
|
|
|
/**
|
|
* 父版本ID
|
|
*/
|
|
private Long parentId;
|
|
|
|
/**
|
|
* 是否最新版本
|
|
*/
|
|
private Integer isLatest;
|
|
|
|
/**
|
|
* 总金额
|
|
*/
|
|
@ExcelProperty(value = "总金额")
|
|
private BigDecimal totalAmount;
|
|
|
|
/**
|
|
* 整单折扣率
|
|
*/
|
|
@ExcelProperty(value = "折扣率")
|
|
private BigDecimal discountRate;
|
|
|
|
/**
|
|
* 折扣金额
|
|
*/
|
|
@ExcelProperty(value = "折扣金额")
|
|
private BigDecimal discountAmount;
|
|
|
|
/**
|
|
* 最终金额
|
|
*/
|
|
@ExcelProperty(value = "最终金额")
|
|
private BigDecimal finalAmount;
|
|
|
|
/**
|
|
* 有效期(天数)
|
|
*/
|
|
@ExcelProperty(value = "有效期(天)")
|
|
private Integer validityDays;
|
|
|
|
/**
|
|
* 报价日期
|
|
*/
|
|
@ExcelProperty(value = "报价日期")
|
|
private LocalDate quoteDate;
|
|
|
|
/**
|
|
* 到期日期
|
|
*/
|
|
@ExcelProperty(value = "到期日期")
|
|
private LocalDate expireDate;
|
|
|
|
/**
|
|
* 状态
|
|
*/
|
|
@ExcelProperty(value = "状态", converter = ExcelDictConvert.class)
|
|
@ExcelDictFormat(dictType = "crm_quote_status")
|
|
private String status;
|
|
|
|
/**
|
|
* 拒绝原因
|
|
*/
|
|
private String rejectReason;
|
|
|
|
/**
|
|
* PDF文件路径
|
|
*/
|
|
private String pdfUrl;
|
|
|
|
/**
|
|
* PDF是否已生成
|
|
*/
|
|
private Integer pdfGenerated;
|
|
|
|
/**
|
|
* 分享链接
|
|
*/
|
|
private String shareLink;
|
|
|
|
/**
|
|
* 分享码
|
|
*/
|
|
private String shareCode;
|
|
|
|
/**
|
|
* 查看次数
|
|
*/
|
|
@ExcelProperty(value = "查看次数")
|
|
private Integer viewCount;
|
|
|
|
/**
|
|
* 最后查看时间
|
|
*/
|
|
private LocalDateTime lastViewTime;
|
|
|
|
/**
|
|
* 负责人ID
|
|
*/
|
|
private Long ownerUserId;
|
|
|
|
/**
|
|
* 负责人姓名
|
|
*/
|
|
@ExcelProperty(value = "负责人")
|
|
private String ownerUserName;
|
|
|
|
/**
|
|
* 负责人手机号
|
|
*/
|
|
private String ownerUserMobile;
|
|
|
|
/**
|
|
* 报价主体ID
|
|
*/
|
|
private Long supplierId;
|
|
|
|
/**
|
|
* 报价主体名称
|
|
*/
|
|
@ExcelProperty(value = "报价主体")
|
|
private String supplierName;
|
|
|
|
/**
|
|
* 关联合同ID
|
|
*/
|
|
private Long contractId;
|
|
|
|
/**
|
|
* 被合同关联次数
|
|
*/
|
|
private Integer contractLinkedCount;
|
|
|
|
/**
|
|
* 付款条款
|
|
*/
|
|
private String paymentTerms;
|
|
|
|
/**
|
|
* 交付条款
|
|
*/
|
|
private String deliveryTerms;
|
|
|
|
/**
|
|
* 运费(元)
|
|
*/
|
|
@ExcelProperty(value = "运费(元)")
|
|
private BigDecimal freight;
|
|
|
|
/**
|
|
* 附件(多个用逗号分隔)
|
|
*/
|
|
private String attachments;
|
|
|
|
/**
|
|
* 报价单模板内容(富文本HTML)
|
|
*/
|
|
private String templateContent;
|
|
|
|
/**
|
|
* 创建部门
|
|
*/
|
|
private Long createDept;
|
|
|
|
/**
|
|
* 创建部门名称
|
|
*/
|
|
@Translation(type = TransConstant.DEPT_ID_TO_NAME, mapper = "createDept")
|
|
@ExcelProperty(value = "创建部门")
|
|
private String createDeptName;
|
|
|
|
/**
|
|
* 创建者
|
|
*/
|
|
private Long createBy;
|
|
|
|
/**
|
|
* 创建者昵称
|
|
*/
|
|
@Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "createBy")
|
|
@ExcelProperty(value = "创建人")
|
|
private String createByName;
|
|
|
|
/**
|
|
* 创建时间
|
|
*/
|
|
@ExcelProperty(value = "创建时间")
|
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
|
|
private Date createTime;
|
|
|
|
/**
|
|
* 更新者
|
|
*/
|
|
private Long updateBy;
|
|
|
|
/**
|
|
* 更新者昵称
|
|
*/
|
|
@Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "updateBy")
|
|
@ExcelProperty(value = "更新人")
|
|
private String updateByName;
|
|
|
|
/**
|
|
* 更新时间
|
|
*/
|
|
@ExcelProperty(value = "更新时间")
|
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
|
|
private Date updateTime;
|
|
|
|
/**
|
|
* 备注
|
|
*/
|
|
@ExcelProperty(value = "备注")
|
|
private String remark;
|
|
|
|
/**
|
|
* 产品列表
|
|
*/
|
|
private List<CrmQuoteProductVo> productList;
|
|
|
|
/**
|
|
* 当前用户是否可以审批(前端显示审批按钮时使用)
|
|
*/
|
|
private Boolean canApprove;
|
|
|
|
}
|