package com.zzsmart.qomo.kn.cost.manage.entity;

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 java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

/**
 * <p>
 * 物料工时工序表
 * </p>
 *
 * @author
 * @since 2024-06-19
 */
@Getter
@Setter
@Accessors(chain = true)
@TableName("cost_material_process_hours")
public class CostMaterialProcessHours implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @ApiModelProperty(value = "id")
    @TableId(value = "id", type = IdType.AUTO)
    private String id;

    /**
     * 物料编码
     */
    @ApiModelProperty(value = "物料编码")
    @TableField("material_code")
    private String materialCode;

    /**
     * 物料名称
     */
    @ApiModelProperty(value = "物料名称")
    @TableField("material_name")
    private String materialName;

    /**
     * 层级
     */
    @ApiModelProperty(value = "层级")
    @TableField("level")
    private String level;

    /**
     * 数量
     */
    @ApiModelProperty(value = "数量")
    @TableField("quantity")
    private BigDecimal quantity;

    /**
     * 采购类型
     */
    @ApiModelProperty(value = "采购类型")
    @TableField("purchase_type")
    private String purchaseType;

    /**
     * 工序
     */
    @ApiModelProperty(value = "工序")
    @TableField("work_process")
    private String workProcess;

    /**
     * 描述
     */
    @ApiModelProperty(value = "描述")
    @TableField("described")
    private String described;

    /**
     * 人工工时
     */
    @ApiModelProperty(value = "人工工时")
    @TableField("labor_hours")
    private BigDecimal laborHours;

    /**
     * 设备工时
     */
    @ApiModelProperty(value = "设备工时")
    @TableField("device_hours")
    private BigDecimal deviceHours;

    /**
     * 工作中心
     */
    @ApiModelProperty(value = "工作中心")
    @TableField("work_center")
    private String workCenter;

    /**
     * 创建人
     */
    @TableField("create_by")
    private String createBy;

    /**
     * 创建时间
     */
    @TableField("create_time")
    private LocalDateTime createTime;

    /**
     * 修改人
     */
    @TableField("update_by")
    private String updateBy;

    /**
     * 修改时间
     */
    @TableField("update_time")
    private LocalDateTime updateTime;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    @TableField("remark")
    private String remark;


    public static final String ID = "id";

    public static final String MATERIAL_CODE = "material_code";

    public static final String MATERIAL_NAME = "material_name";

    public static final String LEVEL = "level";

    public static final String QUANTITY = "quantity";

    public static final String PURCHASE_TYPE = "purchase_type";

    public static final String WORK_PROCESS = "work_process";

    public static final String DESCRIBED = "described";

    public static final String LABOR_HOURS = "labor_hours";

    public static final String DEVICE_HOURS = "device_hours";

    public static final String WORK_CENTER = "work_center";

    public static final String CREATE_BY = "create_by";

    public static final String CREATE_TIME = "create_time";

    public static final String UPDATE_BY = "update_by";

    public static final String UPDATE_TIME = "update_time";

    public static final String REMARK = "remark";

}
