package cn.wisenergy.model.app;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

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

/**
 * <p>
 *
 * </p>
 *
 * @author chenqi
 * @since 2021-01-19
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "WorkTimeOrder", description = "工时单实体类")
public class WorkTimeOrder implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(name = "workId", value = "主键id")
    @TableId(value = "work_id", type = IdType.AUTO)
    private Integer workId;

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

    @ApiModelProperty(name = "projectId", value = "项目id")
    private Integer projectId;

    @ApiModelProperty(name = "deptId", value = "用户部门主键")
    private Integer deptId;

    @ApiModelProperty(name = "workTime", value = "工时（整数）")
    private Integer workTime;

    @ApiModelProperty(name = "workDay", value = "工单日期")
    private Date workDay;

    @ApiModelProperty(name = "status", value = "工单审核状态 1：已填报，2：已审批，3：被驳回  4:重新提交  5：自动审核")
    private Integer status;

    @ApiModelProperty(name = "reviewerId", value = "审核人userId")
    private Integer reviewerId;

    @ApiModelProperty(name = "des", value = "工作简述")
    private String des;

    @ApiModelProperty(name = "reason", value = "审核理由")
    private String reason;

    @ApiModelProperty(name = "type", value = "1：项目，2：商机，3：请假，4：调休，5：外部商务、技术交流  6：内部培训、技术准备、管理   7：其他非项目/商机工作")
    private Integer type;

    @ApiModelProperty(name = "isOvertime", value = "0:正常工时，1：加班")
    private Integer isOvertime;

    @ApiModelProperty(name = "createTime", value = "工单创建时间")
    private Date createTime;

    @ApiModelProperty(name = "modifyTime", value = "工单修改时间")
    private Date modifyTime;


    @ApiModelProperty(name = "rejectTime",value = "驳回时间")
    private Date rejectTime;



}
