package com.ejie.aa20b.model;

import com.ejie.x38.serialization.JsonDateDeserializer;
import com.ejie.x38.serialization.JsonDateSerializer;
import java.util.Date;
import org.codehaus.jackson.map.annotate.JsonDeserialize;
import org.codehaus.jackson.map.annotate.JsonSerialize;

/**
 * Usuarios generated by UDA, 10-mar-2015 14:56:20.
 * 
 * @author UDA
 */

public class Usuarios implements java.io.Serializable {

	private static final long serialVersionUID = 1L;
	private String uidPer;
	private String nombre;
	private Integer responsable;
	private Date feini;
	private String baja;
	private Integer idservicio;
	private Servicios servicio;
	private String email;
	private String emailurgente;
	private String idterritorio;
	private Integer idClase;

	private String strFeini; // para recoger los filtros y mantener al Volver.
	private Clase clase;

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

	/**
	 * Method 'Usuarios'.
	 * 
	 * @param uidPer
	 *            String
	 * @param nombre
	 *            String
	 * @param responsable
	 *            Integer
	 * @param feini
	 *            Date
	 * @param baja
	 *            String
	 * @param idservicio
	 *            Integer
	 */
	public Usuarios(String uidPer, String nombre, Integer responsable,
			Date feini, String baja, Integer idservicio, String email,
			String emailurgente, String idterritorio) {

		this.uidPer = uidPer;
		this.nombre = nombre;
		this.responsable = responsable;
		this.feini = feini;
		this.baja = baja;
		this.idservicio = idservicio;
		this.email = email;
		this.emailurgente = emailurgente;
		this.idterritorio = idterritorio;
	}

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

	public String getUidPer() {
		return this.uidPer;
	}

	/**
	 * Method 'setUidPer'.
	 * 
	 * @param uidPer
	 *            String
	 * @return
	 */

	public void setUidPer(String uidPer) {
		this.uidPer = uidPer;
	}

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

	public String getNombre() {
		return this.nombre;
	}

	/**
	 * Method 'setNombre'.
	 * 
	 * @param nombre
	 *            String
	 * @return
	 */

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	/**
	 * Method 'getResponsable'.
	 * 
	 * @return Integer
	 */

	public Integer getResponsable() {
		return this.responsable;
	}

	/**
	 * Method 'setResponsable'.
	 * 
	 * @param responsable
	 *            Integer
	 * @return
	 */

	public void setResponsable(Integer responsable) {
		this.responsable = responsable;
	}

	/**
	 * Method 'getFeini'.
	 * 
	 * @return Date
	 */

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

	/**
	 * Method 'setFeini'.
	 * 
	 * @param feini
	 *            Date
	 * @return
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFeini(Date feini) {
		this.feini = feini;
	}

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

	public String getBaja() {
		return this.baja;
	}

	/**
	 * Method 'setBaja'.
	 * 
	 * @param baja
	 *            String
	 * @return
	 */

	public void setBaja(String baja) {
		this.baja = baja;
	}

	/**
	 * Method 'setIdservicio'.
	 * 
	 * @param idservicio
	 *            Integer
	 * @return
	 */

	public void setIdservicio(Integer idservicio) {
		this.idservicio = idservicio;
	}

	/**
	 * Method 'getIdservicio'.
	 * 
	 * @return Integer
	 */

	public Integer getIdservicio() {
		return idservicio;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public String getEmailurgente() {
		return emailurgente;
	}

	public void setEmailurgente(String emailurgente) {
		this.emailurgente = emailurgente;
	}

	/**
	 * 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(" [ uidPer: ").append(this.uidPer).append(" ]");
		result.append(", [ nombre: ").append(this.nombre).append(" ]");
		result.append(", [ responsable: ").append(this.responsable)
				.append(" ]");
		result.append(", [ feini: ").append(this.feini).append(" ]");
		result.append(", [ baja: ").append(this.baja).append(" ]");
		result.append(", [ idservicio: ").append(this.idservicio).append(" ]");
		result.append(", [ email: ").append(this.email).append(" ]");
		result.append(", [ emailurgente: ").append(this.emailurgente)
				.append(" ]");
		result.append(", [ idterritorio: ").append(this.idterritorio)
				.append(" ]");
		result.append("}");
		return result.toString();
	}

	public void setServicio(Servicios servicio) {
		this.servicio = servicio;
	}

	public Servicios getServicio() {
		return servicio;
	}

	public void setStrFeini(String strFeini) {
		this.strFeini = strFeini;
	}

	public String getStrFeini() {
		return strFeini;
	}

	public String getIdterritorio() {
		return idterritorio;
	}

	public void setIdterritorio(String idterritorio) {
		this.idterritorio = idterritorio;
	}

	public Integer getIdClase() {
		return idClase;
	}

	public void setIdClase(Integer idClase) {
		this.idClase = idClase;
	}

	public Clase getClase() {
		return clase;
	}

	public void setClase(Clase clase) {
		this.clase = clase;
	}

}
