package com.yunfeiyun.agmp.fms.domain.resvo;

import com.yunfeiyun.agmp.common.annotation.Excel;
import com.yunfeiyun.agmp.common.core.domain.BaseEntity;
import com.yunfeiyun.agmp.common.utils.DictUtils;
import com.yunfeiyun.agmp.common.utils.StringUtils;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * 预警对象 FmsWarn
 * 
 * @author 杨晓辉
 * @date 2023-05-29
 */
public class FmsWarnResVo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 预警标识 */
    private String warnId;

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

    /** 农事任务标识 */
    @Excel(name = "农事任务标识")
    private String taskId;

    /** 预警标题 */
    @Excel(name = "预警标题")
    private String warnTitle;

    /** 预警内容 */
    @Excel(name = "预警内容")
    private String warnContent;

    /** 预警创建时间 */
    @Excel(name = "预警创建时间")
    private String warnCreatedate;

    /** 预警处理人 */
    @Excel(name = "预警处理人")
    private String warnHandler;

    /** 预警处理时间 */
    @Excel(name = "预警处理时间")
    private String warnHandletime;

    /** 预警处理状态 */
    @Excel(name = "预警处理状态")
    private String warnHandlestatus;

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

    /** 作物标识 */
    private String cropId;

    /** 作物名称 */
    @Excel(name = "作物名称")
    private String cropName;

    /** 作物种类 */
    @Excel(name = "作物种类")
    private String cropType;

    /**作物预览图*/
    private String cropPreview;

    /** 作物主要类型 */
    @Excel(name = "作物主要类型")
    private String cropMaintype;

    /** 作物主要类型 */
    @Excel(name = "作物主要类型")
    private String cropMaintypeContent;

    /** 作物周期阶段名称 */
    @Excel(name = "作物周期阶段名称")
    private String periodName;

    /** 种植计划编号 */
    @Excel(name = "种植计划编号")
    private String planNo;

    /** 种植计划面积 */
    @NotNull(message = "种植计划面积不能为空")
    @Excel(name = "种植计划面积")
    private BigDecimal planArea;

    /** 基地标识 */
    private String landId;

    /** 基地名称 */
    @Excel(name = "基地名称")
    private String landName;

    /** 地块标识 */
    private String blockId;

    /** 地块名称 */
    @Excel(name = "地块名称")
    private String blockName;

    /** 预警处理状态描述 */
    private String warnHandlestatusContent;

    public void setWarnId(String warnId)
    {
        this.warnId = warnId;
    }

    public String getWarnId()
    {
        return warnId;
    }
    public void setPeriodId(String periodId)
    {
        this.periodId = periodId;
    }

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

    public String getTaskId()
    {
        return taskId;
    }
    public void setWarnTitle(String warnTitle)
    {
        this.warnTitle = warnTitle;
    }

    public String getWarnTitle()
    {
        return warnTitle;
    }
    public void setWarnContent(String warnContent)
    {
        this.warnContent = warnContent;
    }

    public String getWarnContent()
    {
        return warnContent;
    }
    public void setWarnCreatedate(String warnCreatedate)
    {
        this.warnCreatedate = warnCreatedate;
    }

    public String getWarnCreatedate()
    {
        return warnCreatedate;
    }
    public void setWarnHandler(String warnHandler)
    {
        this.warnHandler = warnHandler;
    }

    public String getWarnHandler()
    {
        return warnHandler;
    }
    public void setWarnHandletime(String warnHandletime)
    {
        this.warnHandletime = warnHandletime;
    }

    public String getWarnHandletime()
    {
        return warnHandletime;
    }
    public void setWarnHandlestatus(String warnHandlestatus)
    {
        this.warnHandlestatus = warnHandlestatus;
    }

    public String getWarnHandlestatus()
    {
        return warnHandlestatus;
    }
    public void setPlanId(String planId)
    {
        this.planId = planId;
    }

    public String getPlanId()
    {
        return planId;
    }

    public void setCropName(String cropName)
    {
        this.cropName = cropName;
    }
    public String getCropName()
    {
        return cropName;
    }

    public void setCropType(String cropType)
    {
        this.cropType = cropType;
    }
    public String getCropType()
    {
        return cropType;
    }

    public void setCropMaintype(String cropMaintype)
    {
        this.cropMaintype = cropMaintype;
    }
    public String getCropMaintype()
    {
        return cropMaintype;
    }

    public String getCropMaintypeContent() {
        if (!StringUtils.isEmpty(this.cropMaintype)) {
            return DictUtils.getDictLabel("fms_crop_type", this.cropMaintype);
        } else {
            return "";
        }
    }

    public void setPeriodName(String periodName)
    {
        this.periodName = periodName;
    }
    public String getPeriodName()
    {
        return periodName;
    }

    public void setPlanNo(String planNo)
    {
        this.planNo = planNo;
    }
    public String getPlanNo()
    {
        return planNo;
    }

    public void setPlanArea(BigDecimal planArea)
    {
        this.planArea = planArea;
    }
    public BigDecimal getPlanArea()
    {
        return planArea;
    }

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

    public void setLandName(String landName)
    {
        this.landName = landName;
    }
    public String getLandName()
    {
        return landName;
    }

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

    public void setBlockName(String blockName)
    {
        this.blockName = blockName;
    }
    public String getBlockName()
    {
        return blockName;
    }

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

    public String getCropId()
    {
        return cropId;
    }

    public void setCropPreview(String cropPreview){
        this.cropPreview = cropPreview;
    }
    public String getCropPreview(){
        return this.cropPreview;
    }


    public String getWarnHandlestatusContent() {
        if (!StringUtils.isEmpty(this.warnHandlestatus)) {
            return DictUtils.getDictLabel("fms_warn_status", this.warnHandlestatus);
        } else {
            return "";
        }
    }
}
