package com.panzhihua.common.model.dtos.grid; import javax.validation.constraints.Max; import javax.validation.constraints.Pattern; import com.google.common.base.CaseFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** * 事件管理分页查询表单 * * @author cedoo email:cedoo(a)qq.com * @version 1.0 * @since 1.0 * @date 2021-05-26 */ @Data @ApiModel("查询事件请求参数") public class PageEventManageDTO { @ApiModelProperty(value = "分页-当前页数", example = "1") private Long pageNum = 1L; @ApiModelProperty(value = "分页-每页记录数", example = "10") private Long pageSize = 10L; @ApiModelProperty(value = "排序字段, 默认createAt", example = "createAt") private String sortAttr = "createAt"; @ApiModelProperty(value = "排序方式: asc/desc(默认)", example = "desc") @Pattern(regexp = "asc|desc|ASC|DESC", message = "排序方式参数错误") private String sortType = "desc"; @ApiModelProperty(value = "撤销类型 1 网格员 2 社区", hidden = true, example = "1") private Integer revokeType; @ApiModelProperty(value = "搜索关键词", hidden = false, example = "1", required = true) private String keyWord; @ApiModelProperty(value = "上报社区处理: 0 否 1 是", hidden = false, example = "1") private Integer communityProcess; @Max(value = 6, message = "事件处理状态参数错误") @ApiModelProperty(value = "事件处理状态(为空时查询全部):1 待处理、2 待验证、4 已解决、6 已失效", hidden = false, example = "1") private Integer eventDealStatus; @Max(127) @ApiModelProperty(value = "事件分类:1治安隐患、2公共服务、3矛盾纠纷、4不稳定因素、5突发事件", hidden = false, example = "1") // @NotNull(message = "事件分类不能为空") private Integer eventType; @ApiModelProperty(value = "事件类型") private String eventClazz; @Max(127) @ApiModelProperty(value = "危险级别", hidden = false, example = "1") private Integer dangerLevel; @ApiModelProperty(value = "是否紧急", hidden = false, example = "true") private Boolean urgent; @ApiModelProperty(value = "是否重大", hidden = false, example = "true") private Boolean major; @ApiModelProperty(value = "红牌", hidden = false, example = "true") private Boolean redCard; @ApiModelProperty(value = "黄牌", hidden = false, example = "true") private Boolean yellowCard; @ApiModelProperty(value = "是否有效", hidden = false, example = "true") private Boolean invalid; @ApiModelProperty(value = "(当前操作)用户ID", hidden = true, example = "1") private Long userId; @Max(9223372036854775807L) @ApiModelProperty(value = "社区ID", hidden = true, example = "1") private Long communityId; public String getSortColumns() { String dbColumn = CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, sortAttr); return dbColumn; } }