| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332 |
- 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;
- }
|