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;

/**
 * Clasecontrata generated by UDA, 17-abr-2015 11:56:29.
 * 
 * @author UDA
 */

public class Clasecontrata implements java.io.Serializable {

	private static final long serialVersionUID = 1L;
	// Clave compuesta
	private Integer idclase;
	private Long idtecnico;
	private Date feini;
	private String baja;
	private Integer idcodigo;
	private String nombre;

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

	/**
	 * Method 'Clasecontrata'.
	 * 
	 * @param idclase
	 *            Integer
	 * @param idtecnico
	 *            Long
	 * @param feini
	 *            Date
	 * @param baja
	 *            String
	 * @param idcodigo
	 *            Integer
	 * @param nombre
	 *            String
	 */
	public Clasecontrata(Integer idclase, Long idtecnico, Date feini,
			String baja, Integer idcodigo, String nombre) {

		this.idclase = idclase;
		this.idtecnico = idtecnico;
		this.feini = feini;
		this.baja = baja;
		this.idcodigo = idcodigo;
		this.nombre = nombre;
	}

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

	public Integer getIdclase() {
		return this.idclase;
	}

	/**
	 * Method 'setIdclase'.
	 * 
	 * @param idclase
	 *            Integer
	 * @return
	 */

	public void setIdclase(Integer idclase) {
		this.idclase = idclase;
	}

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

	public Long getIdtecnico() {
		return this.idtecnico;
	}

	/**
	 * Method 'setIdtecnico'.
	 * 
	 * @param idtecnico
	 *            Long
	 * @return
	 */

	public void setIdtecnico(Long idtecnico) {
		this.idtecnico = idtecnico;
	}

	/**
	 * 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 'getIdcodigo'.
	 * 
	 * @return Integer
	 */

	public Integer getIdcodigo() {
		return this.idcodigo;
	}

	/**
	 * Method 'setIdcodigo'.
	 * 
	 * @param idcodigo
	 *            Integer
	 * @return
	 */

	public void setIdcodigo(Integer idcodigo) {
		this.idcodigo = idcodigo;
	}

	/**
	 * 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 { ");
		// Clave compuesta

		result.append("[ idclase: ").append(this.idclase).append(" ]");

		result.append(", [ idtecnico: ").append(this.idtecnico).append(" ]");
		result.append(", [ feini: ").append(this.feini).append(" ]");
		result.append(", [ baja: ").append(this.baja).append(" ]");
		result.append(", [ idcodigo: ").append(this.idcodigo).append(" ]");
		result.append(", [ nombre: ").append(this.nombre).append(" ]");
		result.append("}");
		return result.toString();
	}

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

	public String getNombre() {
		return nombre;
	}

}
