package vn.azteam.tpf.service.dto;

import java.io.Serializable;
import java.util.Objects;

/**
 * A DTO for the TBAddress entity.
 */
public class TBAddressDTO implements Serializable {

    private Long id;

    private String address;

    private Long tbCountryId;

    private String tbCountryName;

    private Long tbCityId;

    private String tbCityName;

    private Long tbDistrictId;

    private String tbDistrictName;

    private Long tbWardId;

    private String tbWardName;

    public Long getId() {
        return id;
    }

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

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public Long getTbCountryId() {
        return tbCountryId;
    }

    public void setTbCountryId(Long tBCountryId) {
        this.tbCountryId = tBCountryId;
    }

    public Long getTbCityId() {
        return tbCityId;
    }

    public void setTbCityId(Long tBCityId) {
        this.tbCityId = tBCityId;
    }

    public Long getTbDistrictId() {
        return tbDistrictId;
    }

    public void setTbDistrictId(Long tBDistrictId) {
        this.tbDistrictId = tBDistrictId;
    }

    public Long getTbWardId() {
        return tbWardId;
    }

    public void setTbWardId(Long tBWardId) {
        this.tbWardId = tBWardId;
    }

    public String getTbCountryName() {
        return tbCountryName;
    }

    public void setTbCountryName(String tbCountryName) {
        this.tbCountryName = tbCountryName;
    }

    public String getTbCityName() {
        return tbCityName;
    }

    public void setTbCityName(String tbCityName) {
        this.tbCityName = tbCityName;
    }

    public String getTbDistrictName() {
        return tbDistrictName;
    }

    public void setTbDistrictName(String tbDistrictName) {
        this.tbDistrictName = tbDistrictName;
    }

    public String getTbWardName() {
        return tbWardName;
    }

    public void setTbWardName(String tbWardName) {
        this.tbWardName = tbWardName;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        TBAddressDTO that = (TBAddressDTO) o;
        return Objects.equals(id, that.id) && Objects.equals(address, that.address) && Objects.equals(tbCountryId, that.tbCountryId) && Objects.equals(tbCountryName, that.tbCountryName) && Objects.equals(tbCityId, that.tbCityId) && Objects.equals(tbCityName, that.tbCityName) && Objects.equals(tbDistrictId, that.tbDistrictId) && Objects.equals(tbDistrictName, that.tbDistrictName) && Objects.equals(tbWardId, that.tbWardId) && Objects.equals(tbWardName, that.tbWardName);
    }

    @Override
    public int hashCode() {
        return Objects.hash(id, address, tbCountryId, tbCountryName, tbCityId, tbCityName, tbDistrictId, tbDistrictName, tbWardId, tbWardName);
    }

    @Override
    public String toString() {
        return "TBAddressDTO{" +
            "id=" + getId() +
            ", address='" + getAddress() + "'" +
            ", tbCountry=" + getTbCountryId() +
            ", tbCity=" + getTbCityId() +
            ", tbDistrict=" + getTbDistrictId() +
            ", tbWard=" + getTbWardId() +
            "}";
    }
}
