package cn.iocoder.yudao.module.finance.controller.admin.reimbursement.vo; import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import cn.idev.excel.annotation.ExcelProperty; import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat; import cn.iocoder.yudao.framework.excel.core.convert.DictConvert; import cn.iocoder.yudao.module.finance.controller.admin.reimbursement.vo.item.FinanceReimbursementItemRespVO; import cn.iocoder.yudao.module.finance.enums.DictTypeConstants; import cn.iocoder.yudao.module.system.api.storage.dto.StorageBlobRespDTO; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.math.BigDecimal; import java.time.LocalDate; import java.time.LocalDateTime; import java.util.List; @Schema(description = "管理后台 - 报销单 Response VO") @Data @ExcelIgnoreUnannotated public class FinanceReimbursementRespVO { @Schema(description = "编号", example = "1") private Long id; @Schema(description = "报销单号", example = "BX20260928000001") @ExcelProperty("报销单号") private String no; @Schema(description = "报销标题", example = "9月差旅报销") @ExcelProperty("报销标题") private String title; @Schema(description = "报销总金额", example = "1000.00") @ExcelProperty("报销总金额") private BigDecimal totalAmount; @Schema(description = "状态", example = "0") @ExcelProperty(value = "状态", converter = DictConvert.class) @DictFormat(DictTypeConstants.REIMBURSEMENT_STATUS) private Integer status; @Schema(description = "申请人ID", example = "1") private Long applicantId; @Schema(description = "申请人姓名", example = "张三") @ExcelProperty("申请人") private String applicantName; @Schema(description = "申请日期") @ExcelProperty("申请日期") private LocalDate applyDate; @Schema(description = "BPM流程实例ID") private String processInstanceId; @Schema(description = "归档时间") @ExcelProperty("归档时间") private LocalDateTime archiveTime; @Schema(description = "备注", example = "出差北京") @ExcelProperty("备注") private String remark; @Schema(description = "创建时间") @ExcelProperty("创建时间") private LocalDateTime createTime; @Schema(description = "更新时间") private LocalDateTime updateTime; @Schema(description = "创建人名称") private String creatorName; @Schema(description = "创建者") private String creator; /** 报销明细列表 */ @Schema(description = "报销明细列表") private List items; /** 发票附件列表 */ @Schema(description = "发票附件列表") private List attachmentList; /** 是否有附件 */ @Schema(description = "是否有附件") @ExcelProperty("是否上传发票") private Boolean hasAttachment; }