package com.ejie.ad74a.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import com.ejie.x38.serialization.JsonDateDeserializer;
import com.ejie.x38.serialization.JsonDateSerializer;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;

/**
 * MaestroTrSociales generated by UDA, 19-abr-2023 16:38:33.
 * 
 * @author UDA
 */

public class MaestroTrSociales implements java.io.Serializable {

	private static final long serialVersionUID = 1L;
	private Long idTrSocial39;
	private String nombre39;
	private String ape139;
	private String ape239;
	private String identificador39;
	private Long idAyuntamiento39;
	private Ayuntamientos ayuntamientos;
	private Date fAlta39;
	private String usuAlta39;
	private Date fModif39;
	private String usuModif39;
	private String email39;
	private Long telefono39;
	private String nombreCompleto;
	private String unidadBase39;
	private List<Informes> informeses = new ArrayList<Informes>();

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

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

	/**
	 * Method 'MaestroTrSociales'.
	 * 
	 * @param idTrSocial39     Long
	 * @param nombre39         String
	 * @param ape139           String
	 * @param ape239           String
	 * @param identificador39  String
	 * @param idAyuntamiento39 Long
	 * @param fAlta39          Date
	 * @param usuAlta39        String
	 * @param fModif39         Date
	 * @param usuModif39       String
	 */
	public MaestroTrSociales(Long idTrSocial39, String nombre39, String ape139, String ape239, String identificador39,
			Long idAyuntamiento39, Date fAlta39, String usuAlta39, Date fModif39, String usuModif39) {
		this.idTrSocial39 = idTrSocial39;
		this.nombre39 = nombre39;
		this.ape139 = ape139;
		this.ape239 = ape239;
		this.identificador39 = identificador39;
		this.idAyuntamiento39 = idAyuntamiento39;
		this.fAlta39 = fAlta39;
		this.usuAlta39 = usuAlta39;
		this.fModif39 = fModif39;
		this.usuModif39 = usuModif39;
	}

	/**
	 * Method 'MaestroTrSociales'.
	 * 
	 * @param idTrSocial39     Long
	 * @param nombre39         String
	 * @param ape139           String
	 * @param ape239           String
	 * @param identificador39  String
	 * @param idAyuntamiento39 Long
	 * @param fAlta39          Date
	 * @param usuAlta39        String
	 * @param fModif39         Date
	 * @param usuModif39       String
	 * @param informeses       List<Informes>
	 */
	public MaestroTrSociales(Long idTrSocial39, String nombre39, String ape139, String ape239, String identificador39,
			Long idAyuntamiento39, Date fAlta39, String usuAlta39, Date fModif39, String usuModif39,
			List<Informes> informeses) {

		this.idTrSocial39 = idTrSocial39;
		this.nombre39 = nombre39;
		this.ape139 = ape139;
		this.ape239 = ape239;
		this.identificador39 = identificador39;
		this.idAyuntamiento39 = idAyuntamiento39;
		this.fAlta39 = fAlta39;
		this.usuAlta39 = usuAlta39;
		this.fModif39 = fModif39;
		this.usuModif39 = usuModif39;
		this.informeses = informeses;
	}

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

	public Long getIdTrSocial39() {
		return this.idTrSocial39;
	}

	/**
	 * Method 'setIdTrSocial39'.
	 *
	 * @param idTrSocial39 Long
	 * @return
	 */

	public void setIdTrSocial39(Long idTrSocial39) {
		this.idTrSocial39 = idTrSocial39;
	}

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

	public String getNombre39() {
		return this.nombre39;
	}

	/**
	 * Method 'setNombre39'.
	 *
	 * @param nombre39 String
	 * @return
	 */

	public void setNombre39(String nombre39) {
		this.nombre39 = nombre39;
	}

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

	public String getApe139() {
		return this.ape139;
	}

	/**
	 * Method 'setApe139'.
	 *
	 * @param ape139 String
	 * @return
	 */

	public void setApe139(String ape139) {
		this.ape139 = ape139;
	}

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

	public String getApe239() {
		return this.ape239;
	}

	/**
	 * Method 'setApe239'.
	 *
	 * @param ape239 String
	 * @return
	 */

	public void setApe239(String ape239) {
		this.ape239 = ape239;
	}

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

	public String getIdentificador39() {
		return this.identificador39;
	}

	/**
	 * Method 'setIdentificador39'.
	 *
	 * @param identificador39 String
	 * @return
	 */

	public void setIdentificador39(String identificador39) {
		this.identificador39 = identificador39;
	}

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

	public Long getIdAyuntamiento39() {
		return this.idAyuntamiento39;
	}

	/**
	 * Method 'setIdAyuntamiento39'.
	 *
	 * @param idAyuntamiento39 Long
	 * @return
	 */

	public void setIdAyuntamiento39(Long idAyuntamiento39) {
		this.idAyuntamiento39 = idAyuntamiento39;
	}

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

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

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

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

	public String getUsuAlta39() {
		return this.usuAlta39;
	}

	/**
	 * Method 'setUsuAlta39'.
	 *
	 * @param usuAlta39 String
	 * @return
	 */

	public void setUsuAlta39(String usuAlta39) {
		this.usuAlta39 = usuAlta39;
	}

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

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

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

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

	public String getUsuModif39() {
		return this.usuModif39;
	}

	/**
	 * Method 'setUsuModif39'.
	 *
	 * @param usuModif39 String
	 * @return
	 */

	public void setUsuModif39(String usuModif39) {
		this.usuModif39 = usuModif39;
	}

	/**
	 * Method 'getInformeses'.
	 *
	 * @return List
	 */
	@JsonIgnore
	public List<Informes> getInformeses() {
		return this.informeses;
	}

	/**
	 * Method 'setInformeses'.
	 *
	 * @param informeses List
	 * @return
	 */
	public void setInformeses(List<Informes> informeses) {
		this.informeses = informeses;
	}

	/**
	 * 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(" [ idTrSocial39: ").append(this.idTrSocial39).append(" ]");
		result.append(", [ nombre39: ").append(this.nombre39).append(" ]");
		result.append(", [ ape139: ").append(this.ape139).append(" ]");
		result.append(", [ ape239: ").append(this.ape239).append(" ]");
		result.append(", [ identificador39: ").append(this.identificador39).append(" ]");
		result.append(", [ idAyuntamiento39: ").append(this.idAyuntamiento39).append(" ]");
		result.append(", [ fAlta39: ").append(this.fAlta39).append(" ]");
		result.append(", [ usuAlta39: ").append(this.usuAlta39).append(" ]");
		result.append(", [ fModif39: ").append(this.fModif39).append(" ]");
		result.append(", [ usuModif39: ").append(this.usuModif39).append(" ]");
		result.append("}");
		return result.toString();
	}

	/**
	 * Method 'getEmail39'.
	 *
	 * @return String
	 */
	public String getEmail39() {
		return email39;
	}

	/**
	 * Method 'setEmail39'.
	 *
	 * @param email39 String
	 * @return
	 */
	public void setEmail39(String email39) {
		this.email39 = email39;
	}

	/**
	 * Method 'getTelefono39'.
	 *
	 * @return Long
	 */
	public Long getTelefono39() {
		return telefono39;
	}

	/**
	 * Method 'setTelefono39'.
	 *
	 * @param telefono39 Long
	 * @return
	 */
	public void setTelefono39(Long telefono39) {
		this.telefono39 = telefono39;
	}

	/**
	 * Method 'getNombreCompleto'.
	 *
	 * @return String
	 */
	public String getNombreCompleto() {
		return this.nombre39 + " " + this.ape139 + " " + this.ape239;
	}

	/**
	 * Method 'getAyuntamientos'.
	 *
	 * @return Ayuntamientos
	 */
	public Ayuntamientos getAyuntamientos() {
		return ayuntamientos;
	}

	/**
	 * Method 'setAyuntamientos'.
	 *
	 * @param ayuntamientos Ayuntamientos
	 * @return
	 */
	public void setAyuntamientos(Ayuntamientos ayuntamientos) {
		this.ayuntamientos = ayuntamientos;
	}

	/**
	 * Method 'getUnidadBase39'.
	 *
	 * @return String
	 */
	public String getUnidadBase39() {
		return unidadBase39;
	}

	/**
	 * Method 'setUnidadBase39'.
	 *
	 * @param unidadBase39 String
	 * @return
	 */
	public void setUnidadBase39(String unidadBase39) {
		this.unidadBase39 = unidadBase39;
	}

}
