package com.ejie.ad74a.model;

import com.ejie.ad74a.constantes.Constantes;
import com.ejie.x38.serialization.JsonDateDeserializer;
import com.ejie.x38.serialization.JsonDateSerializer;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import java.util.Date;

import org.springframework.context.i18n.LocaleContextHolder;

/**
 * UnidadesBase generated by UDA, 14-may-2024 10:48:39.
 * 
 * @author UDA
 */

public class UnidadesBase implements java.io.Serializable {

	private static final long serialVersionUID = 1L;
	private Long idUnidadBase92;
	private String descEs92;
	private String descEu92;
	private String idProvincia92;
	private String idMunicipio92;
	private Date fecBaja92;
	private String baja92;
	private Date fecAlta92;
	private String usuAlta92;
	private Date fecModif92;
	private String usuModif92;
	private Long idUsuarioAyuntamiento;
	private Usuarios usuarios;

	/**
	 * Method 'UnidadesBase'.
	 */
	public UnidadesBase() {
	}

	/**
	 * Method 'UnidadesBase'.
	 * 
	 * @param idUnidadBase92 Long
	 */
	public UnidadesBase(Long idUnidadBase92) {
		this.idUnidadBase92 = idUnidadBase92;
	}

	/**
	 * Method 'UnidadesBase'.
	 * 
	 * @param idUnidadBase92 Long
	 * @param descEs92       String
	 * @param descEu92       String
	 * @param idProvincia92  String
	 * @param idMunicipio92  String
	 * @param fecBaja92      Date
	 * @param baja92         String
	 * @param FAlta92        Date
	 * @param usuAlta92      String
	 * @param FModif92       Date
	 * @param usuModif92     String
	 */
	public UnidadesBase(Long idUnidadBase92, String descEs92, String descEu92, String idProvincia92,
			String idMunicipio92, Date fecBaja92, String baja92, Date FAlta92, String usuAlta92, Date FModif92,
			String usuModif92) {

		this.idUnidadBase92 = idUnidadBase92;
		this.descEs92 = descEs92;
		this.descEu92 = descEu92;
		this.idProvincia92 = idProvincia92;
		this.idMunicipio92 = idMunicipio92;
		this.fecBaja92 = fecBaja92;
		this.baja92 = baja92;
		this.fecAlta92 = FAlta92;
		this.usuAlta92 = usuAlta92;
		this.fecModif92 = FModif92;
		this.usuModif92 = usuModif92;
	}

	/**
	 * Method 'getIdUnidadBase92'.
	 *
	 * @return Long
	 */

	public Long getIdUnidadBase92() {
		return this.idUnidadBase92;
	}

	/**
	 * Method 'setIdUnidadBase92'.
	 *
	 * @param idUnidadBase92 Long
	 * @return
	 */

	public void setIdUnidadBase92(Long idUnidadBase92) {
		this.idUnidadBase92 = idUnidadBase92;
	}

	/**
	 * Method 'getDescEs92'.
	 *
	 * @return String
	 */

	public String getDescEs92() {
		return this.descEs92;
	}

	/**
	 * Method 'setDescEs92'.
	 *
	 * @param descEs92 String
	 * @return
	 */

	public void setDescEs92(String descEs92) {
		this.descEs92 = descEs92;
	}

	/**
	 * Method 'getDescEu92'.
	 *
	 * @return String
	 */

	public String getDescEu92() {
		return this.descEu92;
	}

	/**
	 * Method 'setDescEu92'.
	 *
	 * @param descEu92 String
	 * @return
	 */

	public void setDescEu92(String descEu92) {
		this.descEu92 = descEu92;
	}

	/**
	 * Method 'getIdProvincia92'.
	 *
	 * @return String
	 */

	public String getIdProvincia92() {
		return this.idProvincia92;
	}

	/**
	 * Method 'setIdProvincia92'.
	 *
	 * @param idProvincia92 String
	 * @return
	 */

	public void setIdProvincia92(String idProvincia92) {
		this.idProvincia92 = idProvincia92;
	}

	/**
	 * Method 'getIdMunicipio92'.
	 *
	 * @return String
	 */

	public String getIdMunicipio92() {
		return this.idMunicipio92;
	}

	/**
	 * Method 'setIdMunicipio92'.
	 *
	 * @param idMunicipio92 String
	 * @return
	 */

	public void setIdMunicipio92(String idMunicipio92) {
		this.idMunicipio92 = idMunicipio92;
	}

	/**
	 * Method 'getFBaja92'.
	 *
	 * @return java.util.Date
	 */

	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFecBaja92() {
		return this.fecBaja92;
	}

	/**
	 * Method 'setFBaja92'.
	 *
	 * @param fecBaja92 java.util.Date
	 * @return
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFecBaja92(Date fecBaja92) {
		this.fecBaja92 = fecBaja92;
	}

	/**
	 * Method 'getBaja92'.
	 *
	 * @return String
	 */

	public String getBaja92() {
		return this.baja92;
	}

	/**
	 * Method 'setBaja92'.
	 *
	 * @param baja92 String
	 * @return
	 */

	public void setBaja92(String baja92) {
		this.baja92 = baja92;
	}

	/**
	 * Method 'getFAlta92'.
	 *
	 * @return java.util.Date
	 */

	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFecAlta92() {
		return this.fecAlta92;
	}

	/**
	 * Method 'setFAlta92'.
	 *
	 * @param FAlta92 java.util.Date
	 * @return
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFecAlta92(Date FAlta92) {
		this.fecAlta92 = FAlta92;
	}

	/**
	 * Method 'getUsuAlta92'.
	 *
	 * @return String
	 */

	public String getUsuAlta92() {
		return this.usuAlta92;
	}

	/**
	 * Method 'setUsuAlta92'.
	 *
	 * @param usuAlta92 String
	 * @return
	 */

	public void setUsuAlta92(String usuAlta92) {
		this.usuAlta92 = usuAlta92;
	}

	/**
	 * Method 'getFModif92'.
	 *
	 * @return java.util.Date
	 */

	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFecModif92() {
		return this.fecModif92;
	}

	/**
	 * Method 'setFModif92'.
	 *
	 * @param FModif92 java.util.Date
	 * @return
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFecModif92(Date FModif92) {
		this.fecModif92 = FModif92;
	}

	/**
	 * Method 'getUsuModif92'.
	 *
	 * @return String
	 */

	public String getUsuModif92() {
		return this.usuModif92;
	}

	/**
	 * Method 'setUsuModif92'.
	 *
	 * @param usuModif92 String
	 * @return
	 */

	public void setUsuModif92(String usuModif92) {
		this.usuModif92 = usuModif92;
	}

	/**
	 * Intended only for logging and debugging.
	 * 
	 * Here, the contents of every main field are placed into the result.
	 * 
	 * @return String
	 */
	@Override
	public String toString() {
		StringBuilder result = new StringBuilder();
		result.append(this.getClass().getName()).append(" Object { ");
		result.append(" [ idUnidadBase92: ").append(this.idUnidadBase92).append(" ]");
		result.append(", [ descEs92: ").append(this.descEs92).append(" ]");
		result.append(", [ descEu92: ").append(this.descEu92).append(" ]");
		result.append(", [ idProvincia92: ").append(this.idProvincia92).append(" ]");
		result.append(", [ idMunicipio92: ").append(this.idMunicipio92).append(" ]");
		result.append(", [ fecBaja92: ").append(this.fecBaja92).append(" ]");
		result.append(", [ baja92: ").append(this.baja92).append(" ]");
		result.append(", [ FAlta92: ").append(this.fecAlta92).append(" ]");
		result.append(", [ usuAlta92: ").append(this.usuAlta92).append(" ]");
		result.append(", [ FModif92: ").append(this.fecModif92).append(" ]");
		result.append(", [ usuModif92: ").append(this.usuModif92).append(" ]");
		result.append("}");
		return result.toString();
	}

	public String getDesc() {
		if (LocaleContextHolder.getLocale().getLanguage().equalsIgnoreCase(Constantes.LOCALE_ES.getLanguage())) {
			return this.getDescEs92();
		} else if (LocaleContextHolder.getLocale().getLanguage().equalsIgnoreCase(Constantes.LOCALE_EU.getLanguage())) {
			return this.getDescEu92();
		}
		return "";
	}

	public Long getIdUsuarioAyuntamiento() {
		return idUsuarioAyuntamiento;
	}

	public void setIdUsuarioAyuntamiento(Long idUsuarioAyuntamiento) {
		this.idUsuarioAyuntamiento = idUsuarioAyuntamiento;
	}

	public Usuarios getUsuarios() {
		return usuarios;
	}

	public void setUsuarios(Usuarios usuarios) {
		this.usuarios = usuarios;
	}

}
