package com.propertyManagement.business.domain.bo;

import com.propertyManagement.common.core.domain.BaseEntity;
import com.propertyManagement.common.core.validate.AddGroup;
import com.propertyManagement.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotBlank;
import java.util.Date;

/**
 * 打卡业务对象 wx_clock
 *
 * @author liushuai
 * @date 2025-05-14
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class WxClockBo extends BaseEntity {

    /**
     * 主键
     */
    private Long clockId;

    /**
     * 打卡人员ID
     */
    private Long accountId;

    /**
     * 打卡人员
     */
    private String accountName;

    /**
     * 小区ID
     */
    private Long communityId;

    /**
     * 小区名称
     */
    private String communityName;

    /**
     * 打卡地址
     */
    @NotBlank(message = "打卡地址不能为空", groups = { AddGroup.class, EditGroup.class })
    private String clockAddress;

    /**
     * 打卡图片
     */
    @NotBlank(message = "打卡图片不能为空", groups = { AddGroup.class, EditGroup.class })
    private String clockImg;

    /**
     * 打卡时间
     */
    private Date clockTime;

    /**
     * 打卡时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date clockStartTime;

    /**
     * 打卡时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date clockEndTime;

    /**
     * 打卡人角色
     */
    private Integer clockUserRole;


}
