package cn.iocoder.yudao.module.archive.controller.admin.document.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.archive.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.time.LocalDate;
|
import java.time.LocalDateTime;
|
import java.util.List;
|
|
@Schema(description = "管理后台 - 档案 Response VO")
|
@Data
|
@ExcelIgnoreUnannotated
|
public class ArchiveDocumentRespVO {
|
|
@Schema(description = "编号", example = "1")
|
private Long id;
|
|
@Schema(description = "档案编号", example = "DA20260929000001")
|
@ExcelProperty("档案编号")
|
private String no;
|
|
@Schema(description = "档案标题", example = "2026年度学会工作总结")
|
@ExcelProperty("档案标题")
|
private String title;
|
|
@Schema(description = "档案分类 ID", example = "1")
|
private Long categoryId;
|
|
@Schema(description = "档案分类名称", example = "文书档案")
|
@ExcelProperty("档案分类")
|
private String categoryName;
|
|
@Schema(description = "密级:1-公开 2-内部 3-保密", example = "2")
|
@ExcelProperty(value = "密级", converter = DictConvert.class)
|
@DictFormat(DictTypeConstants.SECRET_LEVEL)
|
private Integer secretLevel;
|
|
@Schema(description = "载体:1-电子 2-实体 3-电子+实体", example = "3")
|
@ExcelProperty(value = "载体", converter = DictConvert.class)
|
@DictFormat(DictTypeConstants.CARRIER_TYPE)
|
private Integer carrierType;
|
|
@Schema(description = "实体-书架号", example = "A")
|
@ExcelProperty("书架号")
|
private String shelfNo;
|
|
@Schema(description = "实体-层号", example = "2")
|
@ExcelProperty("层号")
|
private String layerNo;
|
|
@Schema(description = "实体-列号", example = "3")
|
@ExcelProperty("列号")
|
private String columnNo;
|
|
@Schema(description = "实体-册号/档案盒号", example = "B-03")
|
@ExcelProperty("册号/档案盒号")
|
private String boxNo;
|
|
@Schema(description = "实体存放位置描述", example = "3号库房A架2层")
|
@ExcelProperty("存放位置")
|
private String storePlace;
|
|
@Schema(description = "来源类型:1-手工 2-课题 3-会员 4-财务", example = "1")
|
@ExcelProperty(value = "来源类型", converter = DictConvert.class)
|
@DictFormat(DictTypeConstants.SOURCE_TYPE)
|
private Integer sourceType;
|
|
@Schema(description = "来源单号", example = "LX20260929000001")
|
@ExcelProperty("来源单号")
|
private String sourceNo;
|
|
@Schema(description = "来源单据 ID", example = "1024")
|
private Long sourceId;
|
|
@Schema(description = "来源单据标题(冗余快照)", example = "XX技术研究课题")
|
@ExcelProperty("来源单据标题")
|
private String sourceTitle;
|
|
@Schema(description = "归档日期", example = "2026-09-29")
|
@ExcelProperty("归档日期")
|
private LocalDate archiveDate;
|
|
@Schema(description = "归档人用户 ID", example = "1")
|
private Long archivistUserId;
|
|
@Schema(description = "归档人姓名", example = "管理员")
|
@ExcelProperty("归档人")
|
private String archivistName;
|
|
@Schema(description = "档案状态:10-在库 20-借出中", example = "10")
|
@ExcelProperty(value = "档案状态", converter = DictConvert.class)
|
@DictFormat(DictTypeConstants.DOCUMENT_STATUS)
|
private Integer status;
|
|
@Schema(description = "摘要")
|
@ExcelProperty("摘要")
|
private String summary;
|
|
@Schema(description = "关键词,英文逗号分隔", example = "工作总结,年度计划")
|
@ExcelProperty("关键词")
|
private String tags;
|
|
@Schema(description = "备注")
|
private String remark;
|
|
@Schema(description = "创建时间")
|
private LocalDateTime createTime;
|
|
@Schema(description = "附件列表")
|
private List<StorageBlobRespDTO> attachmentList;
|
|
@Schema(description = "是否有附件")
|
private Boolean hasAttachment;
|
|
}
|