package com.yxproject.start.entity.prod;

import com.yxproject.start.entity.accu.AccCardTEntity;

import javax.persistence.*;
import java.util.Objects;

@Entity
@Table(name = "PROD_CARD_T", schema = "PROD_DBA", catalog = "")
public class ProdCardTEntity {
    private String upload_No;
    private String accept_No;
    private String photo_No;
    private String name;
    private String sex_No;
    private String nation_No;
    private String birthday;
    private String id_No;
    private String addr1;
    private String addr2;
    private String addr3;
    private String address1;
    private String sign_Govt;
    private String expire_Date;
    private String begin_Date;
    private String apply_Reason;
    private String status_No;
    @Basic
    @Column(name = "UPLOAD_NO", nullable = false, length = 22)
    public String getUpload_No() {
        return upload_No;
    }

    public void setUpload_No(String upload_No) {
        this.upload_No = upload_No;
    }
    @Id
    @Column(name = "ACCEPT_NO", nullable = false, length = 12)
    public String getAccept_No() {
        return accept_No;
    }

    public void setAccept_No(String accept_No) {
        this.accept_No = accept_No;
    }

    @Basic
    @Column(name = "PHOTO_NO", nullable = true, length = 12)
    public String getPhoto_No() {
        return photo_No;
    }

    public void setPhoto_No(String photo_No) {
        this.photo_No = photo_No;
    }

    @Basic
    @Column(name = "NAME", nullable = false, length = 45)
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
    @Basic
    @Column(name = "SEX_NO", nullable = false, length = 1)
    public String getSex_No() {
        return sex_No;
    }

    public void setSex_No(String sex_No) {
        this.sex_No = sex_No;
    }
    @Basic
    @Column(name = "NATION_NO", nullable = false, length = 2)
    public String getNation_No() {
        return nation_No;
    }

    public void setNation_No(String nation_No) {
        this.nation_No = nation_No;
    }

    @Basic
    @Column(name = "BIRTHDAY", nullable = false, length = 8)
    public String getBirthday() {
        return birthday;
    }

    public void setBirthday(String birthday) {
        this.birthday = birthday;
    }
    @Basic
    @Column(name = "ID_NO", nullable = false, length = 18)
    public String getId_No() {
        return id_No;
    }

    public void setId_No(String id_No) {
        this.id_No = id_No;
    }

    @Basic
    @Column(name = "ADDR1", nullable = false, length = 36)
    public String getAddr1() {
        return addr1;
    }

    public void setAddr1(String addr1) {
        this.addr1 = addr1;
    }

    @Basic
    @Column(name = "ADDR2", nullable = true, length = 36)
    public String getAddr2() {
        return addr2;
    }

    public void setAddr2(String addr2) {
        this.addr2 = addr2;
    }

    @Basic
    @Column(name = "ADDR3", nullable = true, length = 36)
    public String getAddr3() {
        return addr3;
    }

    public void setAddr3(String addr3) {
        this.addr3 = addr3;
    }

    @Basic
    @Column(name = "ADDRESS1", nullable = true, length = 105)
    public String getAddress1() {
        return address1;
    }

    public void setAddress1(String address1) {
        this.address1 = address1;
    }
    @Basic
    @Column(name = "SIGN_GOVT", nullable = false, length = 45)
    public String getSign_Govt() {
        return sign_Govt;
    }

    public void setSign_Govt(String sign_Govt) {
        this.sign_Govt = sign_Govt;
    }
    @Basic
    @Column(name = "EXPIRE_DATE", nullable = false, length = 8)
    public String getExpire_Date() {
        return expire_Date;
    }

    public void setExpire_Date(String expire_Date) {
        this.expire_Date = expire_Date;
    }
    @Basic
    @Column(name = "BEGIN_DATE", nullable = false, length = 8)
    public String getBegin_Date() {
        return begin_Date;
    }

    public void setBegin_Date(String begin_Date) {
        this.begin_Date = begin_Date;
    }
    @Basic
    @Column(name = "APPLY_REASON", nullable = false, length = 2)
    public String getApply_Reason() {
        return apply_Reason;
    }

    public void setApply_Reason(String apply_Reason) {
        this.apply_Reason = apply_Reason;
    }
    @Basic
    @Column(name = "STATUS_NO", nullable = true, length = 1)
    public String getStatus_No() {
        return status_No;
    }

    public void setStatus_No(String status_No) {
        this.status_No = status_No;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        AccCardTEntity that = (AccCardTEntity) o;
        return Objects.equals(upload_No, this.upload_No) &&
                Objects.equals(accept_No, this.accept_No) &&
                Objects.equals(photo_No, this.photo_No) &&
                Objects.equals(name, this.name) &&
                Objects.equals(sex_No, this.sex_No) &&
                Objects.equals(nation_No, this.nation_No) &&
                Objects.equals(birthday, this.birthday) &&
                Objects.equals(id_No, this.id_No) &&
                Objects.equals(addr1, this.addr1) &&
                Objects.equals(addr2, this.addr2) &&
                Objects.equals(addr3, this.addr3) &&
                Objects.equals(address1, this.address1) &&
                Objects.equals(sign_Govt, this.sign_Govt) &&
                Objects.equals(expire_Date, this.expire_Date) &&
                Objects.equals(begin_Date, this.begin_Date) &&
                Objects.equals(apply_Reason, this.apply_Reason) &&
                Objects.equals(status_No, this.status_No);
    }

    @Override
    public int hashCode() {
        return Objects.hash(upload_No, accept_No, photo_No, name, sex_No, nation_No, birthday, id_No, addr1, addr2, addr3, address1, sign_Govt, expire_Date, begin_Date, apply_Reason, status_No);
    }
}
