package com.ruoyi.syzy.domain;

import java.util.List;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

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

/**
 * 志愿记录对象 b_busi_wish_records
 * 
 * @author mingxue
 * @date 2021-08-23
 */
@ApiModel("志愿记录表")
public class BBusiWishRecords extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @ApiModelProperty("主键")
    private Long id;

    /** 客户 */
    @Excel(name = "客户")
    @ApiModelProperty("客户编码")
    private String customerCode;

    /** 类型(1:估分,2:真实) */
    @Excel(name = "类型(1:估分,2:真实)")
    @ApiModelProperty("类型:1估分")
    private Integer type;

    @Excel(name = "编码")
    @ApiModelProperty("编码")
    private String code;

    @Excel(name = "记录表名称")
    @ApiModelProperty("记录表名称")
    private String name;

    // 是否精确匹配名称
    private boolean exactName = false;

    /** 批次 */
    @Excel(name = "批次")
    @ApiModelProperty("批次")
    private String batch;
    @ApiModelProperty("批次名称")
    private String batchName;


    @ApiModelProperty("科类:文科,理科")
    private String mode;
    @ApiModelProperty("总分")
    private Float score;

    @ApiModelProperty("用户快照")
    private String userSnapshot;
    /** 志愿详情 */
    @Excel(name = "志愿详情")
    @ApiModelProperty("志愿详情")
    private String detail;
    @ApiModelProperty("志愿摘要")
    private List<String> summary;
    /** 状态(0:无效,1:有效) */
    @Excel(name = "状态(0:无效,1:有效)")
    @ApiModelProperty("状态")
    private Integer status;

    private Boolean obsoleted;

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

    public Long getId() {
        return id;
    }

    public void setCustomerCode(String customerCode) {
        this.customerCode = customerCode;
    }

    public String getCustomerCode() {
        return customerCode;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public Integer getType() {
        return type;
    }

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

    public String getCode() {
        return code;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setBatch(String batch) {
        this.batch = batch;
    }

    public String getBatch() {
        return batch;
    }

    public String getBatchName() {
        return batchName;
    }

    public void setBatchName(String batchName) {
        this.batchName = batchName;
    }

    public String getMode() {
        return mode;
    }

    public void setMode(String mode) {
        this.mode = mode;
    }

    public Float getScore() {
        return score;
    }

    public void setScore(Float score) {
        this.score = score;
    }

    public String getUserSnapshot() {
        return userSnapshot;
    }

    public void setUserSnapshot(String userSnapshot) {
        this.userSnapshot = userSnapshot;
    }

    public void setDetail(String detail) {
        this.detail = detail;
    }

    public String getDetail() {
        return detail;
    }

    public List<String> getSummary() {
        return summary;
    }

    public void setSummary(List<String> summary) {
        this.summary = summary;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Integer getStatus() {
        return status;
    }

    public Boolean getObsoleted() {
        return obsoleted;
    }

    public void setObsoleted(Boolean obsoleted) {
        this.obsoleted = obsoleted;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).append("id", getId()).append("customerCode", getCustomerCode())
            .append("type", getType()).append("code", getCode()).append("name", getName()).append("batch", getBatch())
            .append("detail", getDetail()).append("createTime", getCreateTime()).append("status", getStatus()).toString();
    }

    public boolean getExactName() {return exactName;}

    public void setExactName(boolean exactName) {this.exactName = exactName;}
}
