package com.zt.plat.module.qms.common.data.controller.vo;

import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.zt.plat.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;

import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - 表单设计器模板分页 Request VO")
@Data
public class DataTemplatePageReqVO extends PageParam {

    @Schema(description = "上级id", example = "14825")
    private Long parentId;

    @Schema(description = "主数据id，用于版本识别", example = "12080")
    private Long mainId;

    @Schema(description = "id路径")
    private String idPath;

    @Schema(description = "名称", example = "张三")
    private String name;

    @Schema(description = "节点类型,字典：qms_tree_node_type，category-分类；data-表单", example = "2")
    private String nodeType;

    @Schema(description = "数据键")
    private String dataKey;

    @Schema(description = "版本")
    private Integer version;

    @Schema(description = "是否最新版本,默认显示最新版本")
    private String currentFlag;

    @Schema(description = "禁用状态,0-启用；1-禁用")
    private String cancelFlag;

    @Schema(description = "排序号")
    private Integer sortNo;

    @Schema(description = "其他配置")
    private String customConfig;

    @Schema(description = "模板内容")
    private String formContent;

    @Schema(description = "移动端模板内容")
    private String mobileContent;

    @Schema(description = "所属部门")
    private String systemDepartmentCode;

    @Schema(description = "备注")
    private String remark;

    @Schema(description = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

}