package com.mortals.xhx.module.matter.model;

import java.util.List;
import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.matter.model.vo.MatterDatumVo;
/**
* 事项申请材料实体对象
*
* @author zxfei
* @date 2022-10-13
*/

public class MatterDatumEntity extends MatterDatumVo {
    private static final long serialVersionUID = 1L;

    /**
    * 事项matter id
    */
    private Long matterId;
    /**
    * 部门ID
    */
    private Long deptId;
    /**
    * 材料名
    */
    private String materialName;
    /**
    * 材料全名
    */
    private String materiaFullName;
    /**
    * 事项来源(0.政务网，1.自定义)
    */
    private Integer source;
    /**
    * 是否推荐(0.未推荐，1.推荐)
    */
    private Integer isRecommend;
    /**
    * 填单次数
    */
    private Integer total;
    /**
    * 排序
    */
    private Integer sort;
    /**
    * 填单的附件名称
    */
    private String fileName;
    /**
    * 填单的附件下载地址
    */
    private String fileUrl;
    /**
    * 样表名称
    */
    private String sampleName;
    /**
    * 样表地址
    */
    private String samplePath;
    /**
    * 模板名称
    */
    private String templateName;
    /**
    * 模板地址
    */
    private String templatePath;
    /**
    * 样表预览地址
    */
    private String preViewPath;
    /**
    * 表单内容
    */
    private String formContent;



    public MatterDatumEntity(){}
    /**
    * 获取 事项matter id
    * @return Long
    */
    public Long getMatterId(){
        return matterId;
    }
    /**
    * 设置 事项matter id
    * @param matterId
    */
    public void setMatterId(Long matterId){
        this.matterId = matterId;
    }
    /**
    * 获取 部门ID
    * @return Long
    */
    public Long getDeptId(){
        return deptId;
    }
    /**
    * 设置 部门ID
    * @param deptId
    */
    public void setDeptId(Long deptId){
        this.deptId = deptId;
    }
    /**
    * 获取 材料名
    * @return String
    */
    public String getMaterialName(){
        return materialName;
    }
    /**
    * 设置 材料名
    * @param materialName
    */
    public void setMaterialName(String materialName){
        this.materialName = materialName;
    }
    /**
    * 获取 材料全名
    * @return String
    */
    public String getMateriaFullName(){
        return materiaFullName;
    }
    /**
    * 设置 材料全名
    * @param materiaFullName
    */
    public void setMateriaFullName(String materiaFullName){
        this.materiaFullName = materiaFullName;
    }
    /**
    * 获取 事项来源(0.政务网，1.自定义)
    * @return Integer
    */
    public Integer getSource(){
        return source;
    }
    /**
    * 设置 事项来源(0.政务网，1.自定义)
    * @param source
    */
    public void setSource(Integer source){
        this.source = source;
    }
    /**
    * 获取 是否推荐(0.未推荐，1.推荐)
    * @return Integer
    */
    public Integer getIsRecommend(){
        return isRecommend;
    }
    /**
    * 设置 是否推荐(0.未推荐，1.推荐)
    * @param isRecommend
    */
    public void setIsRecommend(Integer isRecommend){
        this.isRecommend = isRecommend;
    }
    /**
    * 获取 填单次数
    * @return Integer
    */
    public Integer getTotal(){
        return total;
    }
    /**
    * 设置 填单次数
    * @param total
    */
    public void setTotal(Integer total){
        this.total = total;
    }
    /**
    * 获取 排序
    * @return Integer
    */
    public Integer getSort(){
        return sort;
    }
    /**
    * 设置 排序
    * @param sort
    */
    public void setSort(Integer sort){
        this.sort = sort;
    }
    /**
    * 获取 填单的附件名称
    * @return String
    */
    public String getFileName(){
        return fileName;
    }
    /**
    * 设置 填单的附件名称
    * @param fileName
    */
    public void setFileName(String fileName){
        this.fileName = fileName;
    }
    /**
    * 获取 填单的附件下载地址
    * @return String
    */
    public String getFileUrl(){
        return fileUrl;
    }
    /**
    * 设置 填单的附件下载地址
    * @param fileUrl
    */
    public void setFileUrl(String fileUrl){
        this.fileUrl = fileUrl;
    }
    /**
    * 获取 样表名称
    * @return String
    */
    public String getSampleName(){
        return sampleName;
    }
    /**
    * 设置 样表名称
    * @param sampleName
    */
    public void setSampleName(String sampleName){
        this.sampleName = sampleName;
    }
    /**
    * 获取 样表地址
    * @return String
    */
    public String getSamplePath(){
        return samplePath;
    }
    /**
    * 设置 样表地址
    * @param samplePath
    */
    public void setSamplePath(String samplePath){
        this.samplePath = samplePath;
    }
    /**
    * 获取 模板名称
    * @return String
    */
    public String getTemplateName(){
        return templateName;
    }
    /**
    * 设置 模板名称
    * @param templateName
    */
    public void setTemplateName(String templateName){
        this.templateName = templateName;
    }
    /**
    * 获取 模板地址
    * @return String
    */
    public String getTemplatePath(){
        return templatePath;
    }
    /**
    * 设置 模板地址
    * @param templatePath
    */
    public void setTemplatePath(String templatePath){
        this.templatePath = templatePath;
    }
    /**
    * 获取 样表预览地址
    * @return String
    */
    public String getPreViewPath(){
        return preViewPath;
    }
    /**
    * 设置 样表预览地址
    * @param preViewPath
    */
    public void setPreViewPath(String preViewPath){
        this.preViewPath = preViewPath;
    }
    /**
    * 获取 表单内容
    * @return String
    */
    public String getFormContent(){
        return formContent;
    }
    /**
    * 设置 表单内容
    * @param formContent
    */
    public void setFormContent(String formContent){
        this.formContent = formContent;
    }




    @Override
    public int hashCode() {
         return this.getId().hashCode();
    }
    @Override
    public boolean equals(Object obj) {
        if (obj == null) return false;
        if (obj instanceof MatterDatumEntity) {
            MatterDatumEntity tmp = (MatterDatumEntity) obj;
            if (this.getId() == tmp.getId()) {
                 return true;
            }
        }
        return false;
    }

    public String toString(){
        StringBuilder sb = new StringBuilder("");
        sb.append(",matterId:").append(getMatterId());
        sb.append(",deptId:").append(getDeptId());
        sb.append(",materialName:").append(getMaterialName());
        sb.append(",materiaFullName:").append(getMateriaFullName());
        sb.append(",source:").append(getSource());
        sb.append(",isRecommend:").append(getIsRecommend());
        sb.append(",total:").append(getTotal());
        sb.append(",sort:").append(getSort());
        sb.append(",fileName:").append(getFileName());
        sb.append(",fileUrl:").append(getFileUrl());
        sb.append(",sampleName:").append(getSampleName());
        sb.append(",samplePath:").append(getSamplePath());
        sb.append(",templateName:").append(getTemplateName());
        sb.append(",templatePath:").append(getTemplatePath());
        sb.append(",preViewPath:").append(getPreViewPath());
        sb.append(",formContent:").append(getFormContent());
        return sb.toString();
    }

    public void initAttrValue(){

            this.matterId = null;

            this.deptId = null;

            this.materialName = "";

            this.materiaFullName = "";

            this.source = 0;

            this.isRecommend = 0;

            this.total = null;

            this.sort = null;

            this.fileName = "";

            this.fileUrl = "";

            this.sampleName = "";

            this.samplePath = "";

            this.templateName = "";

            this.templatePath = "";

            this.preViewPath = "";

            this.formContent = "";
    }
}