package com.zt.plat.module.base.controller.admin.templtp.vo;

import com.zt.plat.module.system.api.dept.dto.DeptRespDTO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;

@Schema(description = "管理后台 - 模板实例与业务中间 Response VO")
@Data
@ExcelIgnoreUnannotated
public class TmplInscBsnRelRespVO {

    @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "14132")
    @ExcelProperty("主键")
    private Long id;

    @Schema(description = "业务主键", example = "30969")
    @ExcelProperty("业务主键")
    private Long bsnId;

    @Schema(description = "实例主键", example = "10551")
    @ExcelProperty("实例主键")
    private String inscId;

    @Schema(description = "文件内容")
    @ExcelProperty("文件内容")
    private String cntt;

    @Schema(description = "版本号,如v1.0")
    @ExcelProperty("版本号,如v1.0")
    private String ver;

    @Schema(description = "创建时间")
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;


    @Schema(description = "使用部门编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "")
    private List<String> deptIds;


//    @Schema(description = "实例字段;这个是实例字段绑定的字段", requiredMode = Schema.RequiredMode.REQUIRED, example = "")
//    private List<TemplateInstanceDataRespVO> templateInstanceDataRespVOS;

//    @Schema(description = "实例条款；这个是实例条款绑定的条款;", requiredMode = Schema.RequiredMode.REQUIRED, example = "")
//    private List<TemplateInstanceItemRespVO> instanceItemRespVOS;

    @Schema(description = "使用部门编", requiredMode = Schema.RequiredMode.REQUIRED, example = "")
    private List<DeptRespDTO> DeptRespVOS;

//    @Schema(description = "模版实例名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "测试分类名称")
//    @ExcelProperty("模版实例名称")
//    private String inscName;

    @Schema(description = "业务实例字段", requiredMode = Schema.RequiredMode.REQUIRED, example = "")
    @ExcelProperty("业务实例字段")
    private List<TmplInscDatBsnRespVO> tmplInscDatBsnRespVOS;

    @Schema(description = "业务实例条款", requiredMode = Schema.RequiredMode.REQUIRED, example = "")
    @ExcelProperty("业务实例条款")
    private List<TmplInscItmBsnRespVO> tmplInscItmBsnRespVOS;

    @Schema(description = "创建人", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("创建人")
    private String creator;
}
