package cn.timer.api.bean.kqmk;

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

import com.baomidou.mybatisplus.annotation.IdType;
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 Tang 2020-07-04
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table(name = "kqgl_asso_overtime_rules_m")
@ApiModel("加班规则")
public class KqglAssoOvertimeRulesM extends Model<KqglAssoOvertimeRulesM> {

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

	@Id
	@GeneratedValue
	@TableId(type = IdType.AUTO)
	@ApiModelProperty(value = "加班规则编号 加班规则编号", example = "101")
	private Integer id;

	@ApiModelProperty(value = "规则名称 ", example = "规则名称")
	private String name;

	@ApiModelProperty(value = "应用范围(0:全公司 >0:考勤组id)", example = "101")
	private Integer appliedScope;

	@ApiModelProperty(value = "工作日是否允许加班 0:否;1:是", example = "101")
	private Integer isWorkovertime;

	@ApiModelProperty(value = "计算方式 1:按审批时长计算", example = "101")
	private Integer workMode;

	@ApiModelProperty(value = "扣除休息时间开关 0:关;1:开", example = "101")
	private Integer workBuckleRest;

	@ApiModelProperty(value = "计为调休或加班费开关 0:关;1:开", example = "101")
	private Integer workSwitch;

	@ApiModelProperty(value = "1:按n计为调休 ", example = "按1:n计为调休每年12月31日作废")
	private String workOne;

	@ApiModelProperty(value = "2:计为加班费 0:未选择;1:已选择", example = "101")
	private Integer workTwo;

	@ApiModelProperty(value = "3:多种选择 ", example = "员工申请加班时可选择,计为加班费或者按1:n计为调休时长")
	private String workThree;

	@ApiModelProperty(value = "休息日是否允许加班 0:否;1:是", example = "101")
	private Integer isRestovertime;

	@ApiModelProperty(value = "计算方式 1:按审批时长计算", example = "101")
	private Integer restMode;

	@ApiModelProperty(value = "扣除休息时间开关 0:关;1:开", example = "101")
	private Integer restBuckleRest;

	@ApiModelProperty(value = "计为调休或加班费开关 0:关;1:开", example = "101")
	private Integer restSwitch;

	@ApiModelProperty(value = "1:按n计为调休 ", example = "按1:n计为调休每年12月31日作废")
	private String restOne;

	@ApiModelProperty(value = "2:计为加班费 0:未选择;1:已选择", example = "101")
	private Integer restTwo;

	@ApiModelProperty(value = "3:多种选择 ", example = "员工申请加班时可选择,计为加班费或者按1:n计为调休时长")
	private String restThree;

	@ApiModelProperty(value = "节假日是否允许加班 0:否;1:是", example = "101")
	private Integer isHolidays;

	@ApiModelProperty(value = "计算方式 ", example = "1:按审批时长计算")
	private Double holidaysMode;

	@ApiModelProperty(value = "扣除休息时间开关 0:关;1:开", example = "101")
	private Integer holidaysBuckleRest;

	@ApiModelProperty(value = "计为调休或加班费开关 0:关;1:开", example = "101")
	private Integer holidaysSwitch;

	@ApiModelProperty(value = "1:按n计为调休 ", example = "按1:n计为调休每年12月31日作废")
	private String holidaysOne;

	@ApiModelProperty(value = "2:计为加班费 0:未选择;1:已选择", example = "101")
	private Integer holidaysTwo;

	@ApiModelProperty(value = "3:多种选择 ", example = "员工申请加班时可选择,计为加班费或者按1:n计为调休时长")
	private String holidaysThree;

	@ApiModelProperty(value = "创建时间 创建时间", example = "101")
	private Long createTime;

	@ApiModelProperty(value = "创建人员 创建人员", example = "101")
	private Integer createUserid;

	@ApiModelProperty(value = "企业组织代码 企业组织代码", example = "101")
	private Integer orgCode;

	@ApiModelProperty(value = "work work", example = "101")
	private Integer work;

	@ApiModelProperty(value = "rest rest", example = "101")
	private Integer rest;

	@ApiModelProperty(value = "holidays holidays", example = "101")
	private Integer holidays;

	@ApiModelProperty(value = "是否为默认(0:否,1:是) 是否为默认(0:否,1:是)", example = "101")
	private Integer overtimeruledefault;

}