package com.panzhihua.common.model.dtos.community; import javax.validation.constraints.Max; import javax.validation.constraints.Pattern; import org.hibernate.validator.constraints.Length; import com.google.common.base.CaseFormat; import com.panzhihua.common.model.helper.encrypt.EncryptQuery; import com.panzhihua.common.model.helper.encrypt.EncryptQueryClass; 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-06-09 */ @Data @ApiModel("查询用户绑定老人关系请求参数") @EncryptQueryClass public class PageComEldersAuthUserDTO { @ApiModelProperty(value = "分页-当前页数,默认:1", example = "1", position = 1) private Long pageNum = 1L; @ApiModelProperty(value = "分页-每页记录数,默认:10", example = "10", position = 2) private Long pageSize = 10L; @ApiModelProperty(value = "排序字段, 默认createAt", example = "createAt", position = 3) private String sortAttr = "createAt"; @ApiModelProperty(value = "排序方式: asc/desc(默认)", example = "desc", position = 4) @Pattern(regexp = "asc|desc|ASC|DESC") private String sortType = "desc"; @Max(9223372036854775807L) @ApiModelProperty(value = "主键id", hidden = false, example = "1") private Long id; @Max(9223372036854775807L) @ApiModelProperty(value = "用户id", hidden = false, example = "1") private Long userId; @Max(127) @ApiModelProperty(value = "与本人关系(1.父母 2.配偶 3.子女 4.兄弟姐妹 5.祖/外祖父母 6.本人 7.其他)", hidden = false, example = "1") private Integer relation; @Max(127) @ApiModelProperty(value = "是否已认证(1.是 2.否)", hidden = false, example = "1") private Integer isAuth; @Length(max = 50) @ApiModelProperty(value = "姓名", hidden = false, example = "") private String name; @Length(max = 50) @EncryptQuery @ApiModelProperty(value = "身份证号码", hidden = false, example = "") private String idCard; @Max(9223372036854775807L) @ApiModelProperty(value = "社区id", hidden = false, example = "1") private Long communityId; @Max(9223372036854775807L) @ApiModelProperty(value = "高龄老人库id", hidden = false, example = "1") private Long bigAgeId; @ApiModelProperty(value = "(当前操作)用户ID", hidden = true, example = "1") private Long operUserId; @ApiModelProperty(value = "(当前操作)用户名称", hidden = true, example = "张三") private String operUserName; @ApiModelProperty(value = "排序列", example = "create_at", hidden = true) public String getSortColumns() { String dbColumn = CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, sortAttr); return dbColumn; } }