package cn.estsh.i3plus.ext.mes.pcn.pojo.model;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiParam;
import lombok.Data;
import org.hibernate.annotations.ColumnDefault;

import java.io.Serializable;

/**
 * @author wangjie
 * @version 1.0
 * @date 2021/1/15 15:32
 **/
@Data
@ApiModel("停开机记录MODEL")
public class ShiftProdCenterRecordModel implements Serializable {

    private static final long serialVersionUID = -8618504641391004858L;

    @ApiParam("ID")
    private Long id;

    @ApiParam("工作中心代码")
    private String workCenterCode;

    @ApiParam("班次代码")
    private String shiftCode;

    @ApiParam("班次名称")
    private String shiftName;

    @ApiParam("班次开始时间")
    private String shiftStartTime;

    @ApiParam("班次结束时间")
    private String shiftEndTime;

    @ApiParam("作业时间")
    private String workTime;

    @ApiParam("开始时间")
    private String startTime;

    @ApiParam("结束时间")
    private String endTime;

    @ApiParam("作业内容代码")
    private String prodCode;

    @ApiParam("作业内容名称")
    private String prodName;

    @ApiParam("作业内容分类")
    private Integer prodCategory;

    @ApiParam("是否作业时间")
    private Integer isProdTime;

    @ApiParam("作业类型")
    private Integer prodType;

    @ApiParam("作业人数")
    private Double workerQty;

    @ApiParam("备注")
    private String memo;

    @ApiParam("组织代码")
    public String organizeCode;

    @ApiParam("有效性")
    public Integer isValid;

    @ApiParam("是否已删除")
    public Integer isDeleted;

    @ApiParam("创建用户")
    public String createUser;

    @ApiParam("创建日期")
    public String createDatetime;

    @ApiParam("修改人")
    public String modifyUser;

    @ApiParam("修改日期")
    public String modifyDatetime;

    @ApiParam("作业内容分类")
    private String prodCategoryName;

    @ApiParam("是否作业时间")
    private String isProdTimeName;

    @ApiParam("作业类型")
    private String prodTypeName;

    @ApiParam("物料号")
    private String partNo;

    @ApiParam("安灯队列编号")
    private String andonOrderNo;

    @ApiParam("产品别")
    private String categoryCode;

    @ApiParam("产品别")
    private String categoryName;

    @ApiParam("事业别")
    private String careerCode;

    @ApiParam("事业别")
    private String careerName;

    @ApiParam("机种切换次数")
    private Integer partCutCount;

    @ApiParam(value = "在籍人数")
    @ColumnDefault("0")
    public Integer atHomeNum;

    @ApiParam(value = "缺勤人数")
    @ColumnDefault("0")
    public Integer absenteeismNum;

    @ApiParam(value = "加班人数")
    @ColumnDefault("0")
    public Integer overtimeNum;

    @ApiParam(value = "新上班人数")
    @ColumnDefault("0")
    public Integer newWorkNum;

    @ApiParam(value = "退职人数")
    @ColumnDefault("0")
    public Integer quitWorkNum;

    @ApiParam("主要原因")
    private String mainReason;

    @ApiParam(value = "责任部门")
    private String ownerDepartment;

    @ApiParam("对策")
    private String countermeasure;

    @ApiParam("实施日")
    private String implDate;

    @ApiParam("决策者")
    private String decisionMaker;

    @ApiParam("生产区域代码")
    private String areaCode;

}
