package com.usky.rule.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;

@ApiModel
public class RuleEngineCronVO implements Serializable {
    private static final long serialVersionUID = -71778082126945026L;
    @ApiModelProperty("自增ID")
    private Long id;
    @ApiModelProperty("规则引擎ID")
    private Long ruleEngineId;
    @ApiModelProperty("规则引擎ID")
    private Long ruleEngineName;
    @ApiModelProperty("CRON表达式")
    private String cron;
    @ApiModelProperty("项目ID")
    private Long projectId;
    @ApiModelProperty("空间ID")
    private Long spaceId;
    @ApiModelProperty("更新人")
    private Long updatedBy;
    @ApiModelProperty("记录更新时间")
    private String updateTime;
    @ApiModelProperty("创建人")
    private Long createdBy;
    @ApiModelProperty("记录创建时间")
    private String createTime;

    public static RuleEngineCronVOBuilder builder() {
        return new RuleEngineCronVOBuilder();
    }

    public Long getId() {
        return this.id;
    }

    public Long getRuleEngineId() {
        return this.ruleEngineId;
    }

    public Long getRuleEngineName() {
        return this.ruleEngineName;
    }

    public String getCron() {
        return this.cron;
    }

    public Long getProjectId() {
        return this.projectId;
    }

    public Long getSpaceId() {
        return this.spaceId;
    }

    public Long getUpdatedBy() {
        return this.updatedBy;
    }

    public String getUpdateTime() {
        return this.updateTime;
    }

    public Long getCreatedBy() {
        return this.createdBy;
    }

    public String getCreateTime() {
        return this.createTime;
    }

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

    public void setRuleEngineId(final Long ruleEngineId) {
        this.ruleEngineId = ruleEngineId;
    }

    public void setRuleEngineName(final Long ruleEngineName) {
        this.ruleEngineName = ruleEngineName;
    }

    public void setCron(final String cron) {
        this.cron = cron;
    }

    public void setProjectId(final Long projectId) {
        this.projectId = projectId;
    }

    public void setSpaceId(final Long spaceId) {
        this.spaceId = spaceId;
    }

    public void setUpdatedBy(final Long updatedBy) {
        this.updatedBy = updatedBy;
    }

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

    public void setCreatedBy(final Long createdBy) {
        this.createdBy = createdBy;
    }

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

    public boolean equals(final Object o) {
        if (o == this) {
            return true;
        } else if (!(o instanceof RuleEngineCronVO)) {
            return false;
        } else {
            RuleEngineCronVO other = (RuleEngineCronVO)o;
            if (!other.canEqual(this)) {
                return false;
            } else {
                Object this$id = this.getId();
                Object other$id = other.getId();
                if (this$id == null) {
                    if (other$id != null) {
                        return false;
                    }
                } else if (!this$id.equals(other$id)) {
                    return false;
                }

                Object this$ruleEngineId = this.getRuleEngineId();
                Object other$ruleEngineId = other.getRuleEngineId();
                if (this$ruleEngineId == null) {
                    if (other$ruleEngineId != null) {
                        return false;
                    }
                } else if (!this$ruleEngineId.equals(other$ruleEngineId)) {
                    return false;
                }

                Object this$ruleEngineName = this.getRuleEngineName();
                Object other$ruleEngineName = other.getRuleEngineName();
                if (this$ruleEngineName == null) {
                    if (other$ruleEngineName != null) {
                        return false;
                    }
                } else if (!this$ruleEngineName.equals(other$ruleEngineName)) {
                    return false;
                }

                Object this$projectId = this.getProjectId();
                Object other$projectId = other.getProjectId();
                if (this$projectId == null) {
                    if (other$projectId != null) {
                        return false;
                    }
                } else if (!this$projectId.equals(other$projectId)) {
                    return false;
                }

                Object this$spaceId = this.getSpaceId();
                Object other$spaceId = other.getSpaceId();
                if (this$spaceId == null) {
                    if (other$spaceId != null) {
                        return false;
                    }
                } else if (!this$spaceId.equals(other$spaceId)) {
                    return false;
                }

                Object this$updatedBy = this.getUpdatedBy();
                Object other$updatedBy = other.getUpdatedBy();
                if (this$updatedBy == null) {
                    if (other$updatedBy != null) {
                        return false;
                    }
                } else if (!this$updatedBy.equals(other$updatedBy)) {
                    return false;
                }

                Object this$createdBy = this.getCreatedBy();
                Object other$createdBy = other.getCreatedBy();
                if (this$createdBy == null) {
                    if (other$createdBy != null) {
                        return false;
                    }
                } else if (!this$createdBy.equals(other$createdBy)) {
                    return false;
                }

                Object this$cron = this.getCron();
                Object other$cron = other.getCron();
                if (this$cron == null) {
                    if (other$cron != null) {
                        return false;
                    }
                } else if (!this$cron.equals(other$cron)) {
                    return false;
                }

                Object this$updateTime = this.getUpdateTime();
                Object other$updateTime = other.getUpdateTime();
                if (this$updateTime == null) {
                    if (other$updateTime != null) {
                        return false;
                    }
                } else if (!this$updateTime.equals(other$updateTime)) {
                    return false;
                }

                Object this$createTime = this.getCreateTime();
                Object other$createTime = other.getCreateTime();
                if (this$createTime == null) {
                    if (other$createTime != null) {
                        return false;
                    }
                } else if (!this$createTime.equals(other$createTime)) {
                    return false;
                }

                return true;
            }
        }
    }

    protected boolean canEqual(final Object other) {
        return other instanceof RuleEngineCronVO;
    }

    public int hashCode() {
        int PRIME = 59;
        int result = 1;
        Object $id = this.getId();
        result = result * 59 + ($id == null ? 43 : $id.hashCode());
        Object $ruleEngineId = this.getRuleEngineId();
        result = result * 59 + ($ruleEngineId == null ? 43 : $ruleEngineId.hashCode());
        Object $ruleEngineName = this.getRuleEngineName();
        result = result * 59 + ($ruleEngineName == null ? 43 : $ruleEngineName.hashCode());
        Object $projectId = this.getProjectId();
        result = result * 59 + ($projectId == null ? 43 : $projectId.hashCode());
        Object $spaceId = this.getSpaceId();
        result = result * 59 + ($spaceId == null ? 43 : $spaceId.hashCode());
        Object $updatedBy = this.getUpdatedBy();
        result = result * 59 + ($updatedBy == null ? 43 : $updatedBy.hashCode());
        Object $createdBy = this.getCreatedBy();
        result = result * 59 + ($createdBy == null ? 43 : $createdBy.hashCode());
        Object $cron = this.getCron();
        result = result * 59 + ($cron == null ? 43 : $cron.hashCode());
        Object $updateTime = this.getUpdateTime();
        result = result * 59 + ($updateTime == null ? 43 : $updateTime.hashCode());
        Object $createTime = this.getCreateTime();
        result = result * 59 + ($createTime == null ? 43 : $createTime.hashCode());
        return result;
    }

    public String toString() {
        return "RuleEngineCronVO(id=" + this.getId() + ", ruleEngineId=" + this.getRuleEngineId() + ", ruleEngineName=" + this.getRuleEngineName() + ", cron=" + this.getCron() + ", projectId=" + this.getProjectId() + ", spaceId=" + this.getSpaceId() + ", updatedBy=" + this.getUpdatedBy() + ", updateTime=" + this.getUpdateTime() + ", createdBy=" + this.getCreatedBy() + ", createTime=" + this.getCreateTime() + ")";
    }

    public RuleEngineCronVO(final Long id, final Long ruleEngineId, final Long ruleEngineName, final String cron, final Long projectId, final Long spaceId, final Long updatedBy, final String updateTime, final Long createdBy, final String createTime) {
        this.id = id;
        this.ruleEngineId = ruleEngineId;
        this.ruleEngineName = ruleEngineName;
        this.cron = cron;
        this.projectId = projectId;
        this.spaceId = spaceId;
        this.updatedBy = updatedBy;
        this.updateTime = updateTime;
        this.createdBy = createdBy;
        this.createTime = createTime;
    }

    public RuleEngineCronVO() {
    }

    public static class RuleEngineCronVOBuilder {
        private Long id;
        private Long ruleEngineId;
        private Long ruleEngineName;
        private String cron;
        private Long projectId;
        private Long spaceId;
        private Long updatedBy;
        private String updateTime;
        private Long createdBy;
        private String createTime;

        RuleEngineCronVOBuilder() {
        }

        public RuleEngineCronVOBuilder id(final Long id) {
            this.id = id;
            return this;
        }

        public RuleEngineCronVOBuilder ruleEngineId(final Long ruleEngineId) {
            this.ruleEngineId = ruleEngineId;
            return this;
        }

        public RuleEngineCronVOBuilder ruleEngineName(final Long ruleEngineName) {
            this.ruleEngineName = ruleEngineName;
            return this;
        }

        public RuleEngineCronVOBuilder cron(final String cron) {
            this.cron = cron;
            return this;
        }

        public RuleEngineCronVOBuilder projectId(final Long projectId) {
            this.projectId = projectId;
            return this;
        }

        public RuleEngineCronVOBuilder spaceId(final Long spaceId) {
            this.spaceId = spaceId;
            return this;
        }

        public RuleEngineCronVOBuilder updatedBy(final Long updatedBy) {
            this.updatedBy = updatedBy;
            return this;
        }

        public RuleEngineCronVOBuilder updateTime(final String updateTime) {
            this.updateTime = updateTime;
            return this;
        }

        public RuleEngineCronVOBuilder createdBy(final Long createdBy) {
            this.createdBy = createdBy;
            return this;
        }

        public RuleEngineCronVOBuilder createTime(final String createTime) {
            this.createTime = createTime;
            return this;
        }

        public RuleEngineCronVO build() {
            return new RuleEngineCronVO(this.id, this.ruleEngineId, this.ruleEngineName, this.cron, this.projectId, this.spaceId, this.updatedBy, this.updateTime, this.createdBy, this.createTime);
        }

        public String toString() {
            return "RuleEngineCronVO.RuleEngineCronVOBuilder(id=" + this.id + ", ruleEngineId=" + this.ruleEngineId + ", ruleEngineName=" + this.ruleEngineName + ", cron=" + this.cron + ", projectId=" + this.projectId + ", spaceId=" + this.spaceId + ", updatedBy=" + this.updatedBy + ", updateTime=" + this.updateTime + ", createdBy=" + this.createdBy + ", createTime=" + this.createTime + ")";
        }
    }
}
