package cn.timer.api.bean.kqmk;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.extension.activerecord.Model;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @author LAL 2020-05-11
 */
@Entity
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table(name = "kqgl_asso_dkjl")
@ApiModel("打卡记录表")
public class KqglAssoDkjl extends Model<KqglAssoDkjl> {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue
	@TableId(type = IdType.AUTO)
	@ApiModelProperty(value = "id id", example = "101")
	private Integer id;

	@ApiModelProperty(value = "打卡时间 打卡时间", example = "101")
	private Long dktime;

	@ApiModelProperty(value = "经度 ", example = "经度")
	private Double lon;

	@ApiModelProperty(value = "纬度 ", example = "纬度")
	private Double lat;

	@ApiModelProperty(value = "定位地址 ", example = "定位地址")
	private String address;

	@ApiModelProperty(value = "打卡结果 打卡结果", example = "101")
	private Integer results;

	@ApiModelProperty(value = "用户id 用户id", example = "101")
	private Integer userId;

	@ApiModelProperty(value = "类型(0:无排班打卡 1:上班 2:下班)", example = "101")
	private Integer type;

	@ApiModelProperty(value = "(0:打卡无效:此记录已被更新 1:正常 2:异常 3:迟到 4:早退 5:补卡 6:请假 7:加班 8:调休 9:管理员改为正常 10:管理员改为迟到 11:管理员改为早退 12:补卡通过/正常 13:补卡通过/迟到 14:补卡通过/早退 15:严重迟到 16:旷工迟到)", example = "101")
	private Integer status;

	@ApiModelProperty(value = "序号(0:打卡无效:此记录已被更新) 序号(0:打卡无效:此记录已被更新)", example = "101")
	private Integer sort;

	@ApiModelProperty(value = "打卡类型(1:GPS 2:WIFI 3:考勤机)", example = "101")
	private Integer cardType;

	@ApiModelProperty(value = "mac地址 ", example = "mac地址")
	private String mac;

	@ApiModelProperty(value = "wifi名称 ", example = "wifi名称")
	private String macname;

	@ApiModelProperty(value = "企业id 企业id", example = "101")
	private Integer qyid;

	@ApiModelProperty(value = "考勤日期 ", example = "考勤日期")
	private String attdate;

	@ApiModelProperty(value = "考勤时间 ", example = "考勤时间")
	private Long attime;

	@ApiModelProperty(value = "打卡明细id 打卡明细id", example = "101")
	private Integer dkmxid;

	@ApiModelProperty(value = "班次id 班次id", example = "101")
	private Integer bcid;

	@ApiModelProperty(value = "考勤备注 ", example = "考勤备注")
	private String remarks;

	@ApiModelProperty(value = "考勤机打卡方式==>1:指紋;2:人脸;3:密码;4:ID卡 考勤机打卡方式==>1:指紋;2:人脸;3:密码;4:ID卡", example = "101")
	private Integer punchmode;

	@ApiModelProperty(value = "打卡设备 ", example = "打卡设备")
	private String punchequipment;
	
	@ApiModelProperty(value="解释 ",example="解释")
    private String commentary;
	
	
	
	@TableField(exist = false)
	private Integer calendar_status_type;//0:无;1:事假;2:调休;3:病假;4:年假;5:产假;6:陪产假;7:婚假;8:例假;9:丧假;10:哺乳假;11:加班;12:出差;13:外出
	
	@TableField(exist = false)
	private String calendar_status_name;

}