package com.zhongshu.card.client.model.base;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.github.microservice.auth.security.type.AuthType;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.data.domain.Sort;

import java.io.Serializable;
import java.util.List;

/**
 * @author TRX
 * @date 2024/5/26
 */
@Data
public class SuperSearch implements Serializable {

    @Schema(description = "数据ID", hidden = true)
    private String id;

    @Parameter(name = "oid")
    @JsonProperty("oid")
    private String oid;

    @Schema(description = "epId")
    private String epId;

    @Schema(description = "所属项目oid")
    private String projectOid;

    @Schema(description = "数据主题的oid", hidden = true)
    private String aboutOid;

    @Schema(description = "数据主题管理的oid机构类型", hidden = true)
    private AuthType aboutAuthType;

    @Schema(description = "搜索时间范围")
    private List<Long> times;

    @Schema(description = "开始时间", hidden = true)
    private Long startTime;

    @Schema(description = "结束时间", hidden = true)
    private Long endTime;

    @Schema(description = "自定义排序", hidden = true)
    private Sort orderSort;

    @Schema(description = "是否按照序号排序", hidden = true)
    private Boolean isSortDesc;
}
