package com.mvc.model.produce;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.mvc.model.ReqPageGeeker;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
* @Description:
* @Author: guozhao
* @CreateDate: 2024-11-12 10:22:27
*/
public class TProductionPlanModel extends ReqPageGeeker {
    /**
     * 主键ID
     */
    private Integer id;

    /**
     * 计划名称
     */
    private String planName;

    /**
     * 创建人
     */
    private String createMan;

    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8",locale="zh")
    private Date createTime;

    /**
     * 生产数量
     */
    private Integer productionQty;

    /**
     * 交付时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8",locale="zh")
    private Date deliveryTime;

    /**
     * 状态
     */
    private String status;

    /**
     * 备注
     */
    private String remarks;

    /**
     * 生产人
     */
    private String producer;

    /**
     * 设备类型
     */
    private String deviceType;

    /**
     * 生产时间
     */
    private Date productionTime;

    /**
     * 完成时间
     */
    private Date finishedTime;

    /**
     * 实际生产人
     */
    private String actualProducer;

    private Map<Integer, String> partMap;//<parentId,id>,String 类型是为了适配前台的defaultValues?: { [key: string]: any }; // 默认值

    private List<TProductionPlanDetailModel> details;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getPlanName() {
        return planName;
    }

    public void setPlanName(String planName) {
        this.planName = planName == null ? null : planName.trim();
    }

    public String getCreateMan() {
        return createMan;
    }

    public void setCreateMan(String createMan) {
        this.createMan = createMan == null ? null : createMan.trim();
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Integer getProductionQty() {
        return productionQty;
    }

    public void setProductionQty(Integer productionQty) {
        this.productionQty = productionQty;
    }

    public Date getDeliveryTime() {
        return deliveryTime;
    }

    public void setDeliveryTime(Date deliveryTime) {
        this.deliveryTime = deliveryTime;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status == null ? null : status.trim();
    }

    public String getRemarks() {
        return remarks;
    }

    public void setRemarks(String remarks) {
        this.remarks = remarks == null ? null : remarks.trim();
    }

    public String getProducer() {
        return producer;
    }

    public void setProducer(String producer) {
        this.producer = producer == null ? null : producer.trim();
    }

    public Map<Integer, String> getPartMap() {
        return partMap;
    }

    public void setPartMap(Map<Integer, String> partMap) {
        this.partMap = partMap;
    }

    public List<TProductionPlanDetailModel> getDetails() {
        return details;
    }

    public void setDetails(List<TProductionPlanDetailModel> details) {
        this.details = details;
    }

    public String getDeviceType() {
        return deviceType;
    }

    public void setDeviceType(String deviceType) {
        this.deviceType = deviceType == null ? null : deviceType.trim();
    }

    public Date getProductionTime() {
        return productionTime;
    }

    public void setProductionTime(Date productionTime) {
        this.productionTime = productionTime;
    }

    public Date getFinishedTime() {
        return finishedTime;
    }

    public void setFinishedTime(Date finishedTime) {
        this.finishedTime = finishedTime;
    }

    public String getActualProducer() {
        return actualProducer;
    }

    public void setActualProducer(String actualProducer) {
        this.actualProducer = actualProducer == null ? null : actualProducer.trim();
    }
}