package cn.iocoder.yudao.module.server.controller.admin.policycommunications.vo;

import cn.iocoder.yudao.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;

@Schema(description = "管理后台 - 政策沟通交流匿名查询 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class PolicyCommunicationsAnonymousQueryReqVO extends PageParam {

    @Schema(description = "政策ID", example = "123")
    private Long id;

    @Schema(description = "用户ID", example = "123")
    private String userId;

    @Schema(description = "政策ID", example = "456")
    private Long policyId;

    @Schema(description = "政策标题", example = "某某政策")
    private String policyTitle;

    @Schema(description = "处理部门", example = "某某部门")
    private String replyDept;

    @Schema(description = "处理部门ID", example = "1")
    private String replyDeptid;

    @Schema(description = "用户姓名", example = "张三")
    private String userName;

    @Schema(description = "手机号", example = "13800138000")
    private String mobile;

    @Schema(description = "提交类型", example = "1")
    private Integer submitType;

    @Schema(description = "标题", example = "咨询问题")
    private String title;

    @Schema(description = "内容", example = "具体咨询内容")
    private String content;

    @Schema(description = "留言", example = "附加留言")
    private String msg;

    @Schema(description = "提交时间范围")
    private LocalDateTime[] submitTime;

    @Schema(description = "提交是否公开", example = "1")
    private Integer submitIsPublic;

    @Schema(description = "附件", example = "file.pdf")
    private String attachment;

    @Schema(description = "处理状态", example = "2")
    private Integer dealStatus;

    @Schema(description = "回复内容", example = "回复内容")
    private String replayContent;

    @Schema(description = "回复时间范围")
    private LocalDateTime[] replayTime;

    @Schema(description = "回复是否公开", example = "1")
    private Integer replayIsPublic;

    @Schema(description = "排序字段", example = "submitTime")
    private String orderBy;

    @Schema(description = "排序方向", example = "desc")
    private String orderDirection;

    @Schema(description = "政策发布地址")
    private String puburl;
}