package com.ruoyi.mall.domain.Vo;

import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.math.BigDecimal;
import java.util.Objects;

/**
 * 添加志愿 院校专业列表  专业vo
 *
 * @author Lsm
 * @date 2023-10-23
 */
public class MajorItemVo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 关联主键ID */
    @Excel(name = "关联主键ID")
    private Long linkId;

    /** 批次 */
    private Long batchId;
    /** 专业ID */
    @Excel(name = "专业ID")
    private Long majorId;

    /** 专业名称 */
    @Excel(name = "专业名称")
    private String majorName;

    /** 学校ID */
    @Excel(name = "学校ID")
    private Long schoolId;

    /** userId */
    private Long userId;

    /** 专业标签 如 省级一流专业*/
    @Excel(name = "专业标签")
    private String tag;

//    /** 类型*/
//    private String type;


    /** 专业录取最低分 */
    private BigDecimal lowestScore;

    /** 录取原则id*/
    private Long acceptRuleId;

    /** 投档公式 */
    private String ruleStr;


    /** 专业录取率 */
    private BigDecimal acceptRate;

    /** 录取率百分比展示 */
    private String showAcceptRate;

    /** 录取率类型 */
    private Integer rateType;


    /** 文化分数线 */
    private Integer cultureLowest;

    /** 专业分数线 */
    private Integer majorLowest;

    /** 专业加入状态(0-不是,1-是) */
    private Integer targetStatus;


    /** 招生人数*/
    private String  aNum;
    private String  bNum;
    /** 最低学费*/
    private BigDecimal schoolPrice;

    /** 招生对应年份 */
    private String aYear;

    private String bYear;

    /** 专业招生计划信息 */
    private MajorPlanVO majorPlanVO;

    /** 小分限制 */
    private String littleScoreLimit;

    /** 我的分数 */
    private BigDecimal myScore;

    /** 去年分数 */
    private BigDecimal afterYearScore;

    /** 平均分 */
    private BigDecimal average;

    /** 招生计划年份 */
    private String planYear;

    /** 是否新招 */
    private Integer isNew;

    /** 文理科*/
    private String subjectType;

    /** 参考分 */
    private BigDecimal reference;

    public BigDecimal getReference() {
        return reference;
    }

    public void setReference(BigDecimal reference) {
        this.reference = reference;
    }

    public String getSubjectType() {
        return subjectType;
    }

    public void setSubjectType(String subjectType) {
        this.subjectType = subjectType;
    }

    public Integer getIsNew() {
        return isNew;
    }

    public void setIsNew(Integer isNew) {
        this.isNew = isNew;
    }

    public String getaYear() {
        return aYear;
    }

    public void setaYear(String aYear) {
        this.aYear = aYear;
    }

    public String getbYear() {
        return bYear;
    }

    public void setbYear(String bYear) {
        this.bYear = bYear;
    }

    public BigDecimal getAfterYearScore() {
        return afterYearScore;
    }

    public void setAfterYearScore(BigDecimal afterYearScore) {
        this.afterYearScore = afterYearScore;
    }

    public BigDecimal getAverage() {
        return average;
    }

    public void setAverage(BigDecimal average) {
        this.average = average;
    }

    public String getPlanYear() {
        return planYear;
    }

    public void setPlanYear(String planYear) {
        this.planYear = planYear;
    }

    public BigDecimal getMyScore() {
        return myScore;
    }

    public void setMyScore(BigDecimal myScore) {
        this.myScore = myScore;
    }

    public String getLittleScoreLimit() {
        return littleScoreLimit;
    }

    public void setLittleScoreLimit(String littleScoreLimit) {
        this.littleScoreLimit = littleScoreLimit;
    }

    public String getRuleStr() {
        return ruleStr;
    }

    public void setRuleStr(String ruleStr) {
        this.ruleStr = ruleStr;
    }

    public MajorPlanVO getMajorPlanVO() {
        return majorPlanVO;
    }

    public void setMajorPlanVO(MajorPlanVO majorPlanVO) {
        this.majorPlanVO = majorPlanVO;
    }
    /** 用户文化成绩 */
    private Integer cultureScore;
    /** 用户专业成绩 */
    private Integer majorScore;

    public String getaNum() {
        return aNum;
    }

    public void setaNum(String aNum) {
        this.aNum = aNum;
    }

    public String getbNum() {
        return bNum;
    }

    public void setbNum(String bNum) {
        this.bNum = bNum;
    }

    public Long getLinkId() {
        return linkId;
    }

    public void setLinkId(Long linkId) {
        this.linkId = linkId;
    }

    public Long getMajorId() {
        return majorId;
    }

    public void setMajorId(Long majorId) {
        this.majorId = majorId;
    }

    public String getMajorName() {
        return majorName;
    }

    public void setMajorName(String majorName) {
        this.majorName = majorName;
    }

    public Long getSchoolId() {
        return schoolId;
    }

    public void setSchoolId(Long schoolId) {
        this.schoolId = schoolId;
    }

    public String getTag() {
        return tag;
    }

    public void setTag(String tag) {
        this.tag = tag;
    }

    public BigDecimal getLowestScore() {
        return lowestScore;
    }

    public void setLowestScore(BigDecimal lowestScore) {
        this.lowestScore = lowestScore;
    }

    public Long getAcceptRuleId() {
        return acceptRuleId;
    }

    public void setAcceptRuleId(Long acceptRuleId) {
        this.acceptRuleId = acceptRuleId;
    }

    public BigDecimal getAcceptRate() {
        return acceptRate;
    }

    public void setAcceptRate(BigDecimal acceptRate) {
        this.acceptRate = acceptRate;
    }

    public String getShowAcceptRate() {
        return showAcceptRate;
    }

    public void setShowAcceptRate(String showAcceptRate) {
        this.showAcceptRate = showAcceptRate;
    }

    public Integer getRateType() {
        return rateType;
    }

    public void setRateType(Integer rateType) {
        this.rateType = rateType;
    }

    public Integer getCultureLowest() {
        return cultureLowest;
    }

    public void setCultureLowest(Integer cultureLowest) {
        this.cultureLowest = cultureLowest;
    }

    public Integer getMajorLowest() {
        return majorLowest;
    }

    public void setMajorLowest(Integer majorLowest) {
        this.majorLowest = majorLowest;
    }

    public Integer getTargetStatus() {
        return targetStatus;
    }

    public void setTargetStatus(Integer targetStatus) {
        this.targetStatus = targetStatus;
    }



    public BigDecimal getSchoolPrice() {
        return schoolPrice;
    }

    public void setSchoolPrice(BigDecimal schoolPrice) {
        this.schoolPrice = schoolPrice;
    }

    public Long getBatchId() {
        return batchId;
    }

    public void setBatchId(Long batchId) {
        this.batchId = batchId;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Integer getCultureScore() {
        return cultureScore;
    }

    public void setCultureScore(Integer cultureScore) {
        this.cultureScore = cultureScore;
    }

    public Integer getMajorScore() {
        return majorScore;
    }

    public void setMajorScore(Integer majorScore) {
        this.majorScore = majorScore;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        MajorItemVo that = (MajorItemVo) o;
        return Objects.equals(linkId, that.linkId) && Objects.equals(batchId, that.batchId) && Objects.equals(majorId, that.majorId) && Objects.equals(majorName, that.majorName) && schoolId.equals(that.schoolId) && Objects.equals(userId, that.userId) && Objects.equals(tag, that.tag) && Objects.equals(lowestScore, that.lowestScore) && Objects.equals(acceptRuleId, that.acceptRuleId) && Objects.equals(ruleStr, that.ruleStr) && Objects.equals(acceptRate, that.acceptRate) && Objects.equals(showAcceptRate, that.showAcceptRate) && Objects.equals(rateType, that.rateType) && Objects.equals(cultureLowest, that.cultureLowest) && Objects.equals(majorLowest, that.majorLowest) && Objects.equals(targetStatus, that.targetStatus) && Objects.equals(aNum, that.aNum) && Objects.equals(bNum, that.bNum) && Objects.equals(schoolPrice, that.schoolPrice) && Objects.equals(aYear, that.aYear) && Objects.equals(bYear, that.bYear) && Objects.equals(majorPlanVO, that.majorPlanVO) && Objects.equals(littleScoreLimit, that.littleScoreLimit) && Objects.equals(myScore, that.myScore) && Objects.equals(afterYearScore, that.afterYearScore) && Objects.equals(average, that.average) && Objects.equals(planYear, that.planYear) && Objects.equals(isNew, that.isNew) && Objects.equals(subjectType, that.subjectType) && Objects.equals(cultureScore, that.cultureScore) && Objects.equals(majorScore, that.majorScore);
    }

    @Override
    public int hashCode() {
        return Objects.hash(linkId, batchId, majorId, majorName, schoolId, userId, tag, lowestScore, acceptRuleId, ruleStr, acceptRate, showAcceptRate, rateType, cultureLowest, majorLowest, targetStatus, aNum, bNum, schoolPrice, aYear, bYear, majorPlanVO, littleScoreLimit, myScore, afterYearScore, average, planYear, isNew, subjectType, cultureScore, majorScore);
    }
}
