package com.yunfeiyun.agmp.fms.domain;

import com.yunfeiyun.agmp.common.annotation.Excel;
import com.yunfeiyun.agmp.common.core.domain.BaseEntity;
import com.yunfeiyun.agmp.common.enums.DictTypeEnums;
import com.yunfeiyun.agmp.common.utils.DictUtils;
import com.yunfeiyun.agmp.common.utils.StringUtils;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 农事任务对象 FmsTask
 * 
 * @author 杨晓辉
 * @date 2023-05-23
 */
public class FmsTask extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 农事任务标识 */
    private String taskId;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String taskNo;

    /** 种植计划标识 */
    @Excel(name = "种植计划标识")
    private String planId;

    /** 地块标识 */
    @Excel(name = "地块标识")
    private String blockId;

    /** 基地标识 */
    @Excel(name = "基地标识")
    private String landId;

    /** 作物标识 */
    @Excel(name = "作物标识")
    private String cropId;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String taskCreatetype;

    /** 农事任务类型 */
    @Excel(name = "农事任务类型")
    private String taskType;

    /** 农事任务详情 */
    @Excel(name = "农事任务详情")
    private String taskContent;

    /** 农事任务计划执行日期 */
    @Excel(name = "农事任务计划执行日期")
    private String taskPlanstartdate;

    /** 农事任务计划截止日期 */
    @Excel(name = "农事任务计划截止日期")
    private String taskPlanenddate;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String taskAudittype;

    /** 农事任务审核状态 */
    @Excel(name = "农事任务审核状态")
    private String taskStatus;

    /** 农事任务负责人 */
    @Excel(name = "农事任务负责人")
    private String taskManager;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String taskManagername;

    /** 农事任务创建人 */
    @Excel(name = "农事任务创建人")
    private String taskCreator;

    /** 农事任务创建时间 */
    @Excel(name = "农事任务创建时间")
    private String taskCreateddate;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String taskCompletedate;

    /** 农事任务修改时间 */
    @Excel(name = "农事任务修改时间")
    private String taskModifieddate;

    /** 农事任务完成原因 */
    @Excel(name = "农事任务完成原因")
    private String taskCompletereason;

    /** 审核人 */
    @Excel(name = "审核人")
    private String taskAuditor;


    /** 农事任务类型名称 */
    private String taskTypeContent;

    /** 审核类型名称 */
    private String taskAudittypeContent;

    /** 农事任务审核状态名称 */
    private String taskStatusContent;

    public String getTaskTypeContent() {
        if (!StringUtils.isEmpty(this.taskType)) {
            return DictUtils.getDictLabel(DictTypeEnums.FMS_TASK_WORK_TYPE.getCode(), this.taskType);
        } else {
            return "";
        }
    }

    public String getTaskAudittypeContent() {
        if (!StringUtils.isEmpty(this.taskAudittype)) {
            return DictUtils.getDictLabel(DictTypeEnums.FMS_TASK_AUDIT_TYPE.getCode(), this.taskAudittype);
        } else {
            return "";
        }
    }

    public String getTaskStatusContent() {
        if (!StringUtils.isEmpty(this.taskStatus)) {
            return DictUtils.getDictLabel(DictTypeEnums.FMS_TASK_STATUS.getCode(), this.taskStatus);
        } else {
            return "";
        }
    }

    public void setTaskId(String taskId)
    {
        this.taskId = taskId;
    }

    public String getTaskId()
    {
        return taskId;
    }
    public void setTaskNo(String taskNo)
    {
        this.taskNo = taskNo;
    }

    public String getTaskNo()
    {
        return taskNo;
    }
    public void setPlanId(String planId)
    {
        this.planId = planId;
    }

    public String getPlanId()
    {
        return planId;
    }
    public void setBlockId(String blockId)
    {
        this.blockId = blockId;
    }

    public String getBlockId()
    {
        return blockId;
    }
    public void setLandId(String landId)
    {
        this.landId = landId;
    }

    public String getLandId()
    {
        return landId;
    }
    public void setCropId(String cropId)
    {
        this.cropId = cropId;
    }

    public String getCropId()
    {
        return cropId;
    }
    public void setTaskCreatetype(String taskCreatetype)
    {
        this.taskCreatetype = taskCreatetype;
    }

    public String getTaskCreatetype()
    {
        return taskCreatetype;
    }
    public void setTaskType(String taskType)
    {
        this.taskType = taskType;
    }

    public String getTaskType()
    {
        return taskType;
    }
    public void setTaskContent(String taskContent)
    {
        this.taskContent = taskContent;
    }

    public String getTaskContent()
    {
        return taskContent;
    }
    public void setTaskPlanstartdate(String taskPlanstartdate)
    {
        this.taskPlanstartdate = taskPlanstartdate;
    }

    public String getTaskPlanstartdate()
    {
        return taskPlanstartdate;
    }
    public void setTaskPlanenddate(String taskPlanenddate)
    {
        this.taskPlanenddate = taskPlanenddate;
    }

    public String getTaskPlanenddate()
    {
        return taskPlanenddate;
    }
    public void setTaskAudittype(String taskAudittype)
    {
        this.taskAudittype = taskAudittype;
    }

    public String getTaskAudittype()
    {
        return taskAudittype;
    }
    public void setTaskStatus(String taskStatus)
    {
        this.taskStatus = taskStatus;
    }

    public String getTaskStatus()
    {
        return taskStatus;
    }
    public void setTaskManager(String taskManager)
    {
        this.taskManager = taskManager;
    }

    public String getTaskManager()
    {
        return taskManager;
    }
    public void setTaskManagername(String taskManagername)
    {
        this.taskManagername = taskManagername;
    }

    public String getTaskManagername()
    {
        return taskManagername;
    }
    public void setTaskCreator(String taskCreator)
    {
        this.taskCreator = taskCreator;
    }

    public String getTaskCreator()
    {
        return taskCreator;
    }
    public void setTaskCreateddate(String taskCreateddate)
    {
        this.taskCreateddate = taskCreateddate;
    }

    public String getTaskCreateddate()
    {
        return taskCreateddate;
    }
    public void setTaskCompletedate(String taskCompletedate)
    {
        this.taskCompletedate = taskCompletedate;
    }

    public String getTaskCompletedate()
    {
        return taskCompletedate;
    }
    public void setTaskModifieddate(String taskModifieddate)
    {
        this.taskModifieddate = taskModifieddate;
    }

    public String getTaskModifieddate()
    {
        return taskModifieddate;
    }

    public void setTaskCompletereason(String taskCompletereason){
        this.taskCompletereason = taskCompletereason;
    }

    public String getTaskCompletereason(){
        return taskCompletereason;
    }

    public String getTaskAuditor() {
        return taskAuditor;
    }

    public void setTaskAuditor(String taskAuditor) {
        this.taskAuditor = taskAuditor;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("taskId", getTaskId())
            .append("taskNo", getTaskNo())
            .append("planId", getPlanId())
            .append("blockId", getBlockId())
            .append("landId", getLandId())
            .append("cropId", getCropId())
            .append("taskCreatetype", getTaskCreatetype())
            .append("taskType", getTaskType())
            .append("taskContent", getTaskContent())
            .append("taskPlanstartdate", getTaskPlanstartdate())
            .append("taskPlanenddate", getTaskPlanenddate())
            .append("taskAudittype", getTaskAudittype())
            .append("taskStatus", getTaskStatus())
            .append("taskManager", getTaskManager())
            .append("taskManagername", getTaskManagername())
            .append("taskCreator", getTaskCreator())
            .append("taskCreateddate", getTaskCreateddate())
            .append("taskCompletedate", getTaskCompletedate())
            .append("taskModifieddate", getTaskModifieddate())
            .append("taskCompletereason",getTaskCompletereason())
            .append("taskAuditor",getTaskAuditor())
            .toString();
    }
}
