/*
* Copyright 2021 E.J.I.E., S.A.
*
* Licencia con arreglo a la EUPL, Versión 1.1 exclusivamente (la «Licencia»);
* Solo podrá usarse esta obra si se respeta la Licencia.
* Puede obtenerse una copia de la Licencia en
*
* http://ec.europa.eu/idabc/eupl.html
*
* Salvo cuando lo exija la legislación aplicable o se acuerde por escrito,
* el programa distribuido con arreglo a la Licencia se distribuye «TAL CUAL»,
* SIN GARANT�?AS NI CONDICIONES DE NINGÚN TIPO, ni expresas ni implícitas.
* Véase la Licencia en el idioma concreto que rige los permisos y limitaciones
* que establece la Licencia.
*/
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;

/**
 * Mancomunidades generated by UDA, 04-sep-2023 12:41:48.
 * 
 * @author UDA
 */

public class Mancomunidades implements java.io.Serializable {

	private static final long serialVersionUID = 1L;

	private Long idMancomunidad49;
	private String mancomunidad49;
	private String idProvincia49;
	private String descEs49;
	private String descEu49;
	private String direccion49;
	private String cp49;
	private String descMuniPostal49;
	private Date fAlta49;
	private String usuAlta49;
	private Date fModif49;
	private String usuModif49;

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

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

	/**
	 * Method 'Mancomunidades'.
	 * 
	 * @param idMancomunidad49 Long
	 * @param mancomunidad49   String
	 * @param idProvincia49    String
	 * @param descEs49         String
	 * @param descEu49         String
	 * @param direccion49      String
	 * @param cp49             String
	 * @param descMuniPostal49 String
	 * @param fAlta49          Date
	 * @param usuAlta49        String
	 * @param fModif49         Date
	 * @param usuModif49       String
	 */
	public Mancomunidades(Long idMancomunidad49, String mancomunidad49, String idProvincia49, String descEs49,
			String descEu49, String direccion49, String cp49, String descMuniPostal49, Date fAlta49, String usuAlta49,
			Date fModif49, String usuModif49) {
		this.idMancomunidad49 = idMancomunidad49;
		this.mancomunidad49 = mancomunidad49;
		this.idProvincia49 = idProvincia49;
		this.descEs49 = descEs49;
		this.descEu49 = descEu49;
		this.direccion49 = direccion49;
		this.cp49 = cp49;
		this.descMuniPostal49 = descMuniPostal49;
		this.fAlta49 = fAlta49;
		this.usuAlta49 = usuAlta49;
		this.fModif49 = fModif49;
		this.usuModif49 = usuModif49;

	}

	/**
	 * Method 'Mancomunidades'.
	 * 
	 * @param idMancomunidad49 Long
	 * @param descEs49         String
	 * @param descEu49         String
	 */
	public Mancomunidades(Long idMancomunidad49, String descEs49, String descEu49) {
		this.idMancomunidad49 = idMancomunidad49;
		this.descEs49 = descEs49;
		this.descEu49 = descEu49;
	}

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

	public Long getIdMancomunidad49() {
		return this.idMancomunidad49;
	}

	/**
	 * Method 'setIdMancomunidad49'.
	 *
	 * @param idMancomunidad49 Long
	 * @return
	 */

	public void setIdMancomunidad49(Long idMancomunidad49) {
		this.idMancomunidad49 = idMancomunidad49;
	}

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

	public String getMancomunidad49() {
		return this.mancomunidad49;
	}

	/**
	 * Method 'setMancomunidad49'.
	 *
	 * @param mancomunidad49 String
	 * @return
	 */

	public void setMancomunidad49(String mancomunidad49) {
		this.mancomunidad49 = mancomunidad49;
	}

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

	public String getIdProvincia49() {
		return this.idProvincia49;
	}

	/**
	 * Method 'setIdProvincia49'.
	 *
	 * @param idProvincia49 String
	 * @return
	 */

	public void setIdProvincia49(String idProvincia49) {
		this.idProvincia49 = idProvincia49;
	}

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

	public String getDescEs49() {
		return this.descEs49;
	}

	/**
	 * Method 'setDescEs49'.
	 *
	 * @param descEs49 String
	 * @return
	 */

	public void setDescEs49(String descEs49) {
		this.descEs49 = descEs49;
	}

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

	public String getDescEu49() {
		return this.descEu49;
	}

	/**
	 * Method 'setDescEu49'.
	 *
	 * @param descEu49 String
	 * @return
	 */

	public void setDescEu49(String descEu49) {
		this.descEu49 = descEu49;
	}

	/**
	 * Method 'getDesc'.
	 *
	 * @return String
	 */
	public String getDesc() {
		if (LocaleContextHolder.getLocale().getLanguage().equalsIgnoreCase(Constantes.LOCALE_ES.getLanguage())) {
			return this.descEs49;
		} else if (LocaleContextHolder.getLocale().getLanguage().equalsIgnoreCase(Constantes.LOCALE_EU.getLanguage())) {
			return this.descEu49;
		}
		return "";
	}

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

	public String getDireccion49() {
		return this.direccion49;
	}

	/**
	 * Method 'setDireccion49'.
	 *
	 * @param direccion49 String
	 * @return
	 */

	public void setDireccion49(String direccion49) {
		this.direccion49 = direccion49;
	}

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

	public String getCp49() {
		return this.cp49;
	}

	/**
	 * Method 'setCp49'.
	 *
	 * @param cp49 String
	 * @return
	 */

	public void setCp49(String cp49) {
		this.cp49 = cp49;
	}

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

	public String getDescMuniPostal49() {
		return this.descMuniPostal49;
	}

	/**
	 * Method 'setDescMuniPostal49'.
	 *
	 * @param descMuniPostal49 String
	 * @return
	 */

	public void setDescMuniPostal49(String descMuniPostal49) {
		this.descMuniPostal49 = descMuniPostal49;
	}

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

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

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

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

	public String getUsuAlta49() {
		return this.usuAlta49;
	}

	/**
	 * Method 'setUsuAlta49'.
	 *
	 * @param usuAlta49 String
	 * @return
	 */

	public void setUsuAlta49(String usuAlta49) {
		this.usuAlta49 = usuAlta49;
	}

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

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

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

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

	public String getUsuModif49() {
		return this.usuModif49;
	}

	/**
	 * Method 'setUsuModif49'.
	 *
	 * @param usuModif49 String
	 * @return
	 */

	public void setUsuModif49(String usuModif49) {
		this.usuModif49 = usuModif49;
	}

	/**
	 * 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(" [ idMancomunidad49: ").append(this.idMancomunidad49).append(" ]");
		result.append(", [ mancomunidad49: ").append(this.mancomunidad49).append(" ]");
		result.append(", [ idProvincia49: ").append(this.idProvincia49).append(" ]");
		result.append(", [ descEs49: ").append(this.descEs49).append(" ]");
		result.append(", [ descEu49: ").append(this.descEu49).append(" ]");
		result.append(", [ direccion49: ").append(this.direccion49).append(" ]");
		result.append(", [ cp49: ").append(this.cp49).append(" ]");
		result.append(", [ descMuniPostal49: ").append(this.descMuniPostal49).append(" ]");
		result.append(", [ fAlta49: ").append(this.fAlta49).append(" ]");
		result.append(", [ usuAlta49: ").append(this.usuAlta49).append(" ]");
		result.append(", [ fModif49: ").append(this.fModif49).append(" ]");
		result.append(", [ usuModif49: ").append(this.usuModif49).append(" ]");
		result.append("}");
		return result.toString();
	}

}
