package jnpf.entity.attendance;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Builder;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 划线排班计薪工时表
 *
 * @author jnpf
 * @since 2026-02-27
 */
@Data
@TableName("ftb_attendance_line_scheduling_payroll_hours")
@Builder
public class FtbAttendanceLineSchedulingPayrollHours implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @TableId("F_Id")
    private String id;

    /**
     * 用户ID
     */
    @TableField("F_UserId")
    private String userId;

    /**
     * 考勤组ID
     */
    @TableField("F_GroupId")
    private String groupId;

    /**
     * 日期
     */
    @TableField("F_Day")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date day;

    /**
     * 计薪工时（小时）
     */
    @TableField("F_PayrollHours")
    private BigDecimal payrollHours;

    /**
     * 创建用户ID
     */
    @TableField("F_CreatorUserId")
    private String creatorUserId;

    /**
     * 创建时间
     */
    @TableField("F_CreatorTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date creatorTime;

    /**
     * 租户ID
     */
    @TableField("F_TenantId")
    private String tenantId;

    /**
     * 删除标志（0-未删除，1-已删除）
     */
    @TableField("F_DeleteMark")
    private Integer deleteMark;

    /**
     * 最后修改时间
     */
    @TableField("F_LastModifyTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date lastModifyTime;

    /**
     * 最后修改用户ID
     */
    @TableField("F_LastModifyUserId")
    private String lastModifyUserId;
}
