package com.ssm.manage.entity;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

import java.io.Serializable;
import javax.persistence.*;

@Table(name = "store_parament")
@JsonIgnoreProperties(ignoreUnknown = true)
public class StoreParament implements Serializable {
    /**
     * 门店参数
     */
    @Column(name = "parament_name")
    private String paramentName;

    /**
     * 门店参数取值
     */
    @Column(name = "parament_value")
    private String paramentValue;

    /**
     * 参数说明
     */
    private String remark;

    /**
     * 门店编码
     */
    @Column(name = "store_id")
    private Long storeId;

    /**
     * 门店名称
     */
    @Column(name = "store_name")
    private String storeName;

    private static final long serialVersionUID = 1L;

    /**
     * 获取门店参数
     *
     * @return parament_name - 门店参数
     */
    public String getParamentName() {
        return paramentName;
    }

    /**
     * 设置门店参数
     *
     * @param paramentName 门店参数
     */
    public void setParamentName(String paramentName) {
        this.paramentName = paramentName;
    }

    /**
     * 获取门店参数取值
     *
     * @return parament_value - 门店参数取值
     */
    public String getParamentValue() {
        return paramentValue;
    }

    /**
     * 设置门店参数取值
     *
     * @param paramentValue 门店参数取值
     */
    public void setParamentValue(String paramentValue) {
        this.paramentValue = paramentValue;
    }

    /**
     * 获取参数说明
     *
     * @return remark - 参数说明
     */
    public String getRemark() {
        return remark;
    }

    /**
     * 设置参数说明
     *
     * @param remark 参数说明
     */
    public void setRemark(String remark) {
        this.remark = remark;
    }

    /**
     * 获取门店编码
     *
     * @return store_id - 门店编码
     */
    public Long getStoreId() {
        return storeId;
    }

    /**
     * 设置门店编码
     *
     * @param storeId 门店编码
     */
    public void setStoreId(Long storeId) {
        this.storeId = storeId;
    }

    /**
     * 获取门店名称
     *
     * @return store_name - 门店名称
     */
    public String getStoreName() {
        return storeName;
    }

    /**
     * 设置门店名称
     *
     * @param storeName 门店名称
     */
    public void setStoreName(String storeName) {
        this.storeName = storeName;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        StoreParament other = (StoreParament) that;
        return (this.getParamentName() == null ? other.getParamentName() == null : this.getParamentName().equals(other.getParamentName()))
            && (this.getParamentValue() == null ? other.getParamentValue() == null : this.getParamentValue().equals(other.getParamentValue()))
            && (this.getRemark() == null ? other.getRemark() == null : this.getRemark().equals(other.getRemark()))
            && (this.getStoreId() == null ? other.getStoreId() == null : this.getStoreId().equals(other.getStoreId()))
            && (this.getStoreName() == null ? other.getStoreName() == null : this.getStoreName().equals(other.getStoreName()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getParamentName() == null) ? 0 : getParamentName().hashCode());
        result = prime * result + ((getParamentValue() == null) ? 0 : getParamentValue().hashCode());
        result = prime * result + ((getRemark() == null) ? 0 : getRemark().hashCode());
        result = prime * result + ((getStoreId() == null) ? 0 : getStoreId().hashCode());
        result = prime * result + ((getStoreName() == null) ? 0 : getStoreName().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", paramentName=").append(paramentName);
        sb.append(", paramentValue=").append(paramentValue);
        sb.append(", remark=").append(remark);
        sb.append(", storeId=").append(storeId);
        sb.append(", storeName=").append(storeName);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}