package com.ruoyi.system.dto; import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.common.core.domain.BasePage; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import java.util.Date; /** * 访客登记记录分页查询请求 * * @author ruoyi */ @Data @EqualsAndHashCode(callSuper = true) @ApiModel(value = "SysVisitorRecordPageRequest", description = "管理侧访客记录分页查询请求") public class SysVisitorRecordPageRequest extends BasePage { /** 被访人 */ @ApiModelProperty(value = "被访人姓名,支持模糊查询", example = "李维") private String intervieweeName; /** 被访人关键字:姓名 */ @ApiModelProperty(value = "被访人关键字,等同于被访人姓名模糊查询", example = "李") private String intervieweeKeyword; /** 被访人部门 */ @ApiModelProperty(value = "被访人部门名称", example = "安全部") private String intervieweeDept; /** 访问区域ID */ @ApiModelProperty(value = "访问区域ID,按区域树节点筛选", example = "1001") private Long areaId; /** 访问区域关键字:区域/楼层 */ @ApiModelProperty(value = "访问区域关键字,支持区域名称或楼层模糊查询", example = "A区域") private String visitAreaKeyword; /** 有效期开始时间 */ @ApiModelProperty(value = "来访时间范围开始时间,筛选与有效期有交集的记录", example = "2025-06-01 00:00:00") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date validStartTime; /** 有效期结束时间 */ @ApiModelProperty(value = "来访时间范围结束时间,筛选与有效期有交集的记录", example = "2025-06-30 23:59:59") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date validEndTime; /** 状态 */ @ApiModelProperty(value = "访客状态:VISITING来访中,SIGNED_OUT已签离,PENDING_CONFIRM逾期滞留,OVERDUE_AUTO_SIGNED_OUT超期自动,CANCELLED已取消", example = "VISITING") private String status; /** 访客 */ @ApiModelProperty(value = "访客姓名,支持模糊查询", example = "王丽白") private String visitorName; /** 访客关键字:姓名/证件号 */ @ApiModelProperty(value = "访客关键字,支持访客姓名或证件号模糊查询", example = "510151") private String visitorKeyword; /** 来访事由 */ @ApiModelProperty(value = "来访事由", example = "商务洽谈") private String visitReason; /** 登记类型 */ @ApiModelProperty(value = "登记类型:APPOINTMENT预约登记,ONSITE现场登记", example = "APPOINTMENT") private String registerType; }