package org.jeecg.modules.projectManagement.entity;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @ClassName FdClinicalProjectMilestonesItemsTree
 * @Author 谷瑞
 * @Description //TODO
 * @Date 2019/6/19 14:06
 **/


public class FdClinicalProjectMilestonesItemsTree implements Serializable {

    private static final long serialVersionUID = 1L;

    private String key;

    private String value;

    private String title;
    /** 是否叶子节点*/
    private boolean isLeaf;

    private List<FdClinicalProjectMilestonesItemsTree> children = new ArrayList<>();

    private java.lang.String id;
    /**临床项目里程碑id*/
    private java.lang.String pkClinicalProjectMilestones;
    //里程碑模板项id
    private String pkClinicalProjectMilestonesItemId;
    /**编码/序号*/
    private java.lang.String code;
    /**里程碑描述*/
    private java.lang.String description;
    /**权重*/
    private java.lang.String weight;
    /**排序*/
    private java.lang.String sort;
    /**预计开始时间*/
    private java.util.Date estimateStartTime;
    /**预计完成时间*/
    private java.util.Date estimateEndTime;
    /**实际开始时间*/
    private java.util.Date actualStartTime;
    /**实际完成时间*/
    private java.util.Date actualEndTime;
    /**是否关键节点0否1是*/
    private java.lang.String isKeypoint;
    /**是否付款里程碑*/
    private java.lang.String isPayMilestones;
    /**合同付款节点id*/
    private java.lang.String pkContractClause;
    /**付款节点名称*/
    private java.lang.String contractClauseDescription;
    /**是否上传文档*/
    private java.lang.String isUploadFile;
    /**预计工时*/
    private String estimateDays;
    /**父节点*/
    private java.lang.String parentId;
    /**所有父节点*/
    private java.lang.String parentIds;
    /**版本号*/
    private java.lang.String version;
    /**删除标记0正常1删除*/
    private java.lang.String delFlag;
    /**创建人*/
    private java.lang.String createBy;
    /**创建时间*/
    private java.util.Date createTime;
    /**最后修改人*/
    private java.lang.String updateBy;
    /**最后修改时间*/
    private java.util.Date updateTime;
    /**备注*/
    private java.lang.String memo;
    private boolean isPayMilestonesBoo;
    private boolean isUploadFileBoo;
    private Integer completionTimeDifference;
    private String clinicalUrl;
    private List<Object> fileList;
    //完成进度
    private String projectProgress;

    public FdClinicalProjectMilestonesItemsTree(){}

    public FdClinicalProjectMilestonesItemsTree(FdClinicalProjectMilestonesItems fdClinicalProjectMilestonesItems) {
        this.key = fdClinicalProjectMilestonesItems.getId() ;
        this.value = fdClinicalProjectMilestonesItems.getId();
        this.title = fdClinicalProjectMilestonesItems.getCode();
        this.id = fdClinicalProjectMilestonesItems.getId();
        this.pkClinicalProjectMilestones = fdClinicalProjectMilestonesItems.getPkClinicalProjectMilestones();
        this.pkClinicalProjectMilestonesItemId=fdClinicalProjectMilestonesItems.getPkClinicalProjectMilestonesItemId();
        this.code = fdClinicalProjectMilestonesItems.getCode();
        this.description = fdClinicalProjectMilestonesItems.getDescription();
        this.weight = fdClinicalProjectMilestonesItems.getWeight();
        this.sort = fdClinicalProjectMilestonesItems.getSort();
        this.estimateStartTime = fdClinicalProjectMilestonesItems.getEstimateStartTime();
        this.estimateEndTime = fdClinicalProjectMilestonesItems.getEstimateEndTime();
        this.actualStartTime = fdClinicalProjectMilestonesItems.getActualStartTime();
        this.actualEndTime = fdClinicalProjectMilestonesItems.getActualEndTime();
        this.isKeypoint = fdClinicalProjectMilestonesItems.getIsKeypoint();
        this.isPayMilestones = fdClinicalProjectMilestonesItems.getIsPayMilestones();
        this.pkContractClause = fdClinicalProjectMilestonesItems.getPkContractClause();
        this.contractClauseDescription = fdClinicalProjectMilestonesItems.getContractClauseDescription();
        this.isUploadFile = fdClinicalProjectMilestonesItems.getIsUploadFile();
        this.estimateDays = fdClinicalProjectMilestonesItems.getEstimateDays();
        this.parentId = fdClinicalProjectMilestonesItems.getParentId();
        this.parentIds = fdClinicalProjectMilestonesItems.getParentIds();
        this.version = fdClinicalProjectMilestonesItems.getVersion();
        this.delFlag = fdClinicalProjectMilestonesItems.getDelFlag();
        this.createBy = fdClinicalProjectMilestonesItems.getCreateBy();
        this.createTime = fdClinicalProjectMilestonesItems.getCreateTime();
        this.updateBy = fdClinicalProjectMilestonesItems.getUpdateBy();
        this.updateTime = fdClinicalProjectMilestonesItems.getUpdateTime();
        this.memo = fdClinicalProjectMilestonesItems.getMemo();
        this.completionTimeDifference=fdClinicalProjectMilestonesItems.getCompletionTimeDifference();
        this.clinicalUrl=fdClinicalProjectMilestonesItems.getClinicalUrl();
        this.fileList=new ArrayList<>();
        this.projectProgress=fdClinicalProjectMilestonesItems.getProjectProgress();
    }

    public String getProjectProgress() {
        return projectProgress;
    }

    public void setProjectProgress(String projectProgress) {
        this.projectProgress = projectProgress;
    }

    public List<Object> getFileList() {
        return fileList;
    }

    public void setFileList(List<Object> fileList) {
        this.fileList = fileList;
    }

    public String getClinicalUrl() {
        return clinicalUrl;
    }

    public void setClinicalUrl(String clinicalUrl) {
        this.clinicalUrl = clinicalUrl;
    }

    public Integer getCompletionTimeDifference() {
        return completionTimeDifference;
    }

    public void setCompletionTimeDifference(Integer completionTimeDifference) {
        this.completionTimeDifference = completionTimeDifference;
    }

    public boolean isPayMilestonesBoo() {
        return isPayMilestonesBoo;
    }

    public void setPayMilestonesBoo(boolean payMilestonesBoo) {
        isPayMilestonesBoo = payMilestonesBoo;
    }

    public boolean isUploadFileBoo() {
        return isUploadFileBoo;
    }

    public void setUploadFileBoo(boolean uploadFileBoo) {
        isUploadFileBoo = uploadFileBoo;
    }

    public String getPkClinicalProjectMilestonesItemId() {
        return pkClinicalProjectMilestonesItemId;
    }

    public void setPkClinicalProjectMilestonesItemId(String pkClinicalProjectMilestonesItemId) {
        this.pkClinicalProjectMilestonesItemId = pkClinicalProjectMilestonesItemId;
    }

    public String getKey() {
        return key;
    }

    public void setKey(String key) {
        this.key = key;
    }

    public String getValue() {
        return value;
    }

    public void setValue(String value) {
        this.value = value;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public boolean getIsLeaf() {
        return isLeaf;
    }

    public void setIsLeaf(boolean leaf) {
        isLeaf = leaf;
    }

    public List<FdClinicalProjectMilestonesItemsTree> getChildren() {
        return children;
    }

    public void setChildren(List<FdClinicalProjectMilestonesItemsTree> children) {
        if (children == null) {
            this.isLeaf = true;
        }
        this.children = children;
    }

    public String getId() {
        return id;
    }

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

    public String getPkClinicalProjectMilestones() {
        return pkClinicalProjectMilestones;
    }

    public void setPkClinicalProjectMilestones(String pkClinicalProjectMilestones) {
        this.pkClinicalProjectMilestones = pkClinicalProjectMilestones;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getWeight() {
        return weight;
    }

    public void setWeight(String weight) {
        this.weight = weight;
    }

    public String getSort() {
        return sort;
    }

    public void setSort(String sort) {
        this.sort = sort;
    }

    public Date getEstimateStartTime() {
        return estimateStartTime;
    }

    public void setEstimateStartTime(Date estimateStartTime) {
        this.estimateStartTime = estimateStartTime;
    }

    public Date getEstimateEndTime() {
        return estimateEndTime;
    }

    public void setEstimateEndTime(Date estimateEndTime) {
        this.estimateEndTime = estimateEndTime;
    }

    public Date getActualStartTime() {
        return actualStartTime;
    }

    public void setActualStartTime(Date actualStartTime) {
        this.actualStartTime = actualStartTime;
    }

    public Date getActualEndTime() {
        return actualEndTime;
    }

    public void setActualEndTime(Date actualEndTime) {
        this.actualEndTime = actualEndTime;
    }

    public String getIsKeypoint() {
        return isKeypoint;
    }

    public void setIsKeypoint(String isKeypoint) {
        this.isKeypoint = isKeypoint;
    }

    public String getIsPayMilestones() {
        return isPayMilestones;
    }

    public void setIsPayMilestones(String isPayMilestones) {
        this.isPayMilestones = isPayMilestones;
    }

    public String getPkContractClause() {
        return pkContractClause;
    }

    public void setPkContractClause(String pkContractClause) {
        this.pkContractClause = pkContractClause;
    }

    public String getContractClauseDescription() {
        return contractClauseDescription;
    }

    public void setContractClauseDescription(String contractClauseDescription) {
        this.contractClauseDescription = contractClauseDescription;
    }

    public String getIsUploadFile() {
        return isUploadFile;
    }

    public void setIsUploadFile(String isUploadFile) {
        this.isUploadFile = isUploadFile;
    }

    public String getEstimateDays() {
        return estimateDays;
    }

    public void setEstimateDays(String estimateDays) {
        this.estimateDays = estimateDays;
    }

    public String getParentId() {
        return parentId;
    }

    public void setParentId(String parentId) {
        this.parentId = parentId;
    }

    public String getParentIds() {
        return parentIds;
    }

    public void setParentIds(String parentIds) {
        this.parentIds = parentIds;
    }

    public String getVersion() {
        return version;
    }

    public void setVersion(String version) {
        this.version = version;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public Date getCreateTime() {
        return createTime;
    }

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

    public String getUpdateBy() {
        return updateBy;
    }

    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getMemo() {
        return memo;
    }

    public void setMemo(String memo) {
        this.memo = memo;
    }
}

