package cn.iocoder.yudao.module.crm.controller.admin.cancellation.vo; import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat; import cn.iocoder.yudao.framework.excel.core.convert.DictConvert; import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import cn.idev.excel.annotation.ExcelProperty; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.math.BigDecimal; import java.time.LocalDate; import java.time.LocalDateTime; import static cn.iocoder.yudao.module.crm.enums.DictTypeConstants.CRM_AUDIT_STATUS; import static cn.iocoder.yudao.module.crm.enums.DictTypeConstants.CRM_CANCELLATION_TYPE; @Schema(description = "管理后台 - CRM 销户申请 Response VO") @Data @ExcelIgnoreUnannotated public class CrmCancellationRespVO { @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty("编号") private Long id; @Schema(description = "销户编号", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty("销户编号") private String cancellationNo; @Schema(description = "客户ID", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty("客户ID") private Long customerId; @Schema(description = "客户名称") @ExcelProperty("客户名称") private String customerName; @Schema(description = "合同ID") @ExcelProperty("合同ID") private Long contractId; @Schema(description = "合同编号") @ExcelProperty("合同编号") private String contractNo; @Schema(description = "销户类型") @ExcelProperty(value = "销户类型", converter = DictConvert.class) @DictFormat(CRM_CANCELLATION_TYPE) private String cancellationType; @Schema(description = "销户原因") @ExcelProperty("销户原因") private String cancelReason; @Schema(description = "预计销户日期") @ExcelProperty("预计销户日期") private LocalDate expectedCancelDate; @Schema(description = "实际销户日期") @ExcelProperty("实际销户日期") private LocalDate actualCancelDate; @Schema(description = "退费金额") @ExcelProperty("退费金额") private BigDecimal refundAmount; @Schema(description = "申请用户ID") @ExcelProperty("申请用户ID") private Long applyUserId; @Schema(description = "申请用户姓名") @ExcelProperty("申请用户姓名") private String applyUserName; @Schema(description = "申请时间") @ExcelProperty("申请时间") private LocalDateTime applyTime; @Schema(description = "审批状态") @ExcelProperty(value = "审批状态", converter = DictConvert.class) @DictFormat(CRM_AUDIT_STATUS) private Integer auditStatus; @Schema(description = "流程实例ID") private String processInstanceId; @Schema(description = "备注") @ExcelProperty("备注") private String remark; @Schema(description = "创建时间") @ExcelProperty("创建时间") private LocalDateTime createTime; }