package cn.meowrain.aioj.backend.blogservice.dto.req;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * 文章查询请求DTO
 *
 * @author AIOJ
 */
@Data
@Schema(description = "文章查询请求")
public class ArticleQueryRequestDTO {

    @Schema(description = "页码", example = "1")
    private Integer current = 1;

    @Schema(description = "每页数量", example = "10")
    private Integer size = 10;

    @Schema(description = "文章ID", example = "1")
    private Long id;

    @Schema(description = "文章标题（模糊查询）", example = "Spring Boot")
    private String title;

    @Schema(description = "分类ID", example = "1")
    private Long categoryId;

    @Schema(description = "标签ID", example = "1")
    private Long tagId;

    @Schema(description = "作者ID", example = "1")
    private Long authorId;

    @Schema(description = "是否置顶", example = "0")
    private Integer isTop;

    @Schema(description = "是否精华", example = "0")
    private Integer isEssence;

    @Schema(description = "是否发布（1=发布，0=草稿）", example = "1")
    private Integer isPublished;

    @Schema(description = "文章状态：1=正常，2=审核中，3=已关闭，4=已删除", example = "1")
    private Integer status;

    @Schema(description = "排序字段（view_count/like_count/comment_count/publish_time）", example = "publish_time")
    private String sortField;

    @Schema(description = "排序方式（asc/desc）", example = "desc")
    private String sortOrder;
}
