package org.jeecg.modules.mdc.entity; import cn.hutool.core.date.DatePattern; import com.baomidou.mybatisplus.annotation.IdType; 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 io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import org.jeecg.common.aspect.annotation.Dict; import org.jeecg.common.system.base.entity.JeecgEntity; import org.jeecgframework.poi.excel.annotation.Excel; import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.math.BigDecimal; import java.util.Date; /** * @Description: mdc_equipment_punch * @Author: jeecg-boot * @Date: 2025-06-09 * @Version: V1.0 */ @Data @TableName("mdc_equipment_punch") @Accessors(chain = true) @EqualsAndHashCode(callSuper = false) @ApiModel(value = "mdc_equipment_punch对象", description = "mdc_equipment_punch") public class MdcEquipmentPunch extends JeecgEntity implements Serializable { private static final long serialVersionUID = 1L; /** * id */ @TableId(type = IdType.ASSIGN_ID) @ApiModelProperty(value = "id") private String id; /** * 设备编号 */ @Excel(name = "设备编号", width = 15) @ApiModelProperty(value = "设备编号") private String equipmentId; /** * 打卡用户 */ @Excel(name = "打卡用户", width = 15) @ApiModelProperty(value = "打卡用户") @Dict(dicCode = "id", dictTable = "sys_user", dicText = "realname") private String punchUser; /** * 打卡用户账号 */ @ApiModelProperty(value = "打卡用户账号") @TableField(exist = false) private String punchUserRealName; /** * 打卡用户名称 */ @ApiModelProperty(value = "打卡用户名称") @TableField(exist = false) private String punchUserUserName; /** * 上班时间 */ @Excel(name = "上班时间", width = 15, format = DatePattern.NORM_DATETIME_PATTERN) @JsonFormat(timezone = "GMT+8", pattern = DatePattern.NORM_DATETIME_PATTERN) @DateTimeFormat(pattern = DatePattern.NORM_DATETIME_PATTERN) @ApiModelProperty(value = "上班时间") private Date checkInTime; /** * 下班时间 */ @Excel(name = "下班时间", width = 15, format = DatePattern.NORM_DATETIME_PATTERN) @JsonFormat(timezone = "GMT+8", pattern = DatePattern.NORM_DATETIME_PATTERN) @DateTimeFormat(pattern = DatePattern.NORM_DATETIME_PATTERN) @ApiModelProperty(value = "下班时间") private Date checkOutTime; /** * 记录日期 */ @Excel(name = "记录日期", width = 15) @ApiModelProperty(value = "记录日期") private String recordDate; /** * 班次 */ @Excel(name = "班次", width = 15) @ApiModelProperty(value = "班次") @Dict(dicCode = "shift_schedule") private Integer shiftSchedule; /** * 班次名称 */ @Excel(name = "班次名称", width = 15) @ApiModelProperty(value = "班次名称") @TableField(exist = false) private String shiftScheduleName; /** * 是否缺卡 */ @Excel(name = "是否缺卡", width = 15) @ApiModelProperty(value = "是否缺卡") private Integer isAbsent; /** * 是否迟到(0未早退,1早退) */ @Excel(name = "是否迟到", width = 15) @ApiModelProperty(value = "是否迟到") private Integer isLate; /** * 是否早退 */ @Excel(name = "是否早退", width = 15) @ApiModelProperty(value = "是否早退") private Integer isEarly; /** * 早班上班打卡率 */ @TableField(exist = false) @Excel(name = "早班上班打卡率", width = 15) @ApiModelProperty(value = "早班上班打卡率") private BigDecimal morningShiftInRate; /** * 晚班上班打卡率 */ @TableField(exist = false) @Excel(name = "晚班上班打卡率", width = 15) @ApiModelProperty(value = "晚班上班打卡率") private BigDecimal eveningShiftInRate; /** * 早班下班打卡率 */ @TableField(exist = false) @Excel(name = "早班下班打卡率", width = 15) @ApiModelProperty(value = "早班下班打卡率") private BigDecimal morningShiftOutRate; /** * 晚班下班打卡率 */ @TableField(exist = false) @Excel(name = "晚班下班打卡率", width = 15) @ApiModelProperty(value = "晚班下班打卡率") private BigDecimal eveningShiftOutRate; /** * 白班上班打卡设备数量 */ @TableField(exist = false) @Excel(name = "白班上班打卡设备数量", width = 15) @ApiModelProperty(value = "白班上班打卡设备数量") private Integer morningShiftInDeviceNum; /** * 白班下班打卡设备数量 */ @TableField(exist = false) @Excel(name = "白班下班打卡设备数量", width = 15) @ApiModelProperty(value = "白班下班打卡设备数量") private Integer morningShiftOutDeviceNum; /** * 夜班上班打卡设备数量 */ @TableField(exist = false) @Excel(name = "夜班上班打卡设备数量", width = 15) @ApiModelProperty(value = "夜班上班打卡设备数量") private Integer eveningShiftInDeviceNum; /** * 夜班下班打卡设备数量 */ @TableField(exist = false) @Excel(name = "夜班下班打卡设备数量", width = 15) @ApiModelProperty(value = "夜班下班打卡设备数量") private Integer eveningShiftOutDeviceNum; /** * 设备总数 */ @TableField(exist = false) @Excel(name = "设备总数", width = 15) @ApiModelProperty(value = "设备总数") private Integer deviceCountNum; }