package com.ejie.ad74a.model;

import java.math.BigDecimal;
import java.util.Date;

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;

/**
 * Dependencia generated by UDA, 01-jun-2023 10:30:02.
 * 
 * @author UDA
 */

public class Dependencia implements java.io.Serializable {

	private static final long serialVersionUID = 1L;
	private Long idDependencia04;
	private Long idGradoDependencia04;
	private String descOtraDependencia04;
	private Long idExpediente04;
	private Long idSolicitante04;
	private Date fResolucion04;
	private String usuHistorico04;
	private Date fHistorico04;
	private String usuAlta04;
	private Date fAlta04;
	private BigDecimal baremo04;

	// Parametros para filtrado unicamente
	private Boolean isHistorico;

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

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

	/**
	 * Method 'Dependencia'.
	 * 
	 * @param idDependencia04       Long
	 * @param idGradoDependencia04  String
	 * @param descOtraDependencia04 String
	 * @param idExpediente04        Long
	 * @param idSolicitante04       Long
	 * @param fResolucion04         Date
	 * @param usuHistorico04        String
	 * @param fHistorico04          Date
	 * @param usuAlta04             String
	 * @param fAlta04               Date
	 */
	public Dependencia(Long idDependencia04, Long idGradoDependencia04, String descOtraDependencia04,
			Long idExpediente04, Long idSolicitante04, Date fResolucion04, String usuHistorico04, Date fHistorico04,
			String usuAlta04, Date fAlta04, BigDecimal baremo04) {

		this.idDependencia04 = idDependencia04;
		this.idGradoDependencia04 = idGradoDependencia04;
		this.descOtraDependencia04 = descOtraDependencia04;
		this.idExpediente04 = idExpediente04;
		this.idSolicitante04 = idSolicitante04;
		this.fResolucion04 = fResolucion04;
		this.usuHistorico04 = usuHistorico04;
		this.fHistorico04 = fHistorico04;
		this.usuAlta04 = usuAlta04;
		this.fAlta04 = fAlta04;
		this.baremo04 = baremo04;
	}

	/**
	 * Method 'Dependencia'.
	 * 
	 * @param idDependencia04       Long
	 * @param gradoDependencia04    String
	 * @param descOtraDependencia04 String
	 * @param fResolucion04         Date
	 * @param usuHistorico04        String
	 * @param fHistorico04          Date
	 */
	public Dependencia(Long idDependencia04, Long idGradoDependencia04, String descOtraDependencia04,
			Date fResolucion04, String usuHistorico04, Date fHistorico04) {
		this.idDependencia04 = idDependencia04;
		this.idGradoDependencia04 = idGradoDependencia04;
		this.descOtraDependencia04 = descOtraDependencia04;
		this.fResolucion04 = fResolucion04;
		this.usuHistorico04 = usuHistorico04;
		this.fHistorico04 = fHistorico04;
	}

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

	public Long getIdDependencia04() {
		return this.idDependencia04;
	}

	/**
	 * Method 'setIdDependencia04'.
	 *
	 * @param idDependencia04 Long
	 * @return
	 */

	public void setIdDependencia04(Long idDependencia04) {
		this.idDependencia04 = idDependencia04;
	}

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

	public Long getIdExpediente04() {
		return this.idExpediente04;
	}

	/**
	 * Method 'setIdExpediente04'.
	 *
	 * @param idExpediente04 Long
	 * @return
	 */

	public void setIdExpediente04(Long idExpediente04) {
		this.idExpediente04 = idExpediente04;
	}

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

	public Long getIdSolicitante04() {
		return this.idSolicitante04;
	}

	/**
	 * Method 'setIdSolicitante04'.
	 *
	 * @param idSolicitante04 Long
	 * @return
	 */

	public void setIdSolicitante04(Long idSolicitante04) {
		this.idSolicitante04 = idSolicitante04;
	}

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

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

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

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

	public String getUsuHistorico04() {
		return this.usuHistorico04;
	}

	/**
	 * Method 'setUsuHistorico04'.
	 *
	 * @param usuHistorico04 String
	 * @return
	 */

	public void setUsuHistorico04(String usuHistorico04) {
		this.usuHistorico04 = usuHistorico04;
	}

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

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

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

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

	public String getUsuAlta04() {
		return this.usuAlta04;
	}

	/**
	 * Method 'setUsuAlta04'.
	 *
	 * @param usuAlta04 String
	 * @return
	 */

	public void setUsuAlta04(String usuAlta04) {
		this.usuAlta04 = usuAlta04;
	}

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

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

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

	/**
	 * 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(" [ idDependencia04: ").append(this.idDependencia04).append(" ]");
		result.append(", [ idGradoDependencia04: ").append(this.idGradoDependencia04).append(" ]");
		result.append(", [ descOtraDependencia04: ").append(this.descOtraDependencia04).append(" ]");
		result.append(", [ idExpediente04: ").append(this.idExpediente04).append(" ]");
		result.append(", [ idSolicitante04: ").append(this.idSolicitante04).append(" ]");
		result.append(", [ fResolucion04: ").append(this.fResolucion04).append(" ]");
		result.append(", [ usuHistorico04: ").append(this.usuHistorico04).append(" ]");
		result.append(", [ fHistorico04: ").append(this.fHistorico04).append(" ]");
		result.append(", [ usuAlta04: ").append(this.usuAlta04).append(" ]");
		result.append(", [ fAlta04: ").append(this.fAlta04).append(" ]");
		result.append("}");
		return result.toString();
	}

	/**
	 * Method 'getBaremo04'.
	 *
	 * @return Long
	 */
	public BigDecimal getBaremo04() {
		return baremo04;
	}

	/**
	 * Method 'setBaremo04'.
	 *
	 * @param baremo04 Long
	 * @return
	 */
	public void setBaremo04(BigDecimal baremo04) {
		this.baremo04 = baremo04;
	}

	public Long getIdGradoDependencia04() {
		return idGradoDependencia04;
	}

	public void setIdGradoDependencia04(Long idGradoDependencia04) {
		this.idGradoDependencia04 = idGradoDependencia04;
	}
/*
	public Combo getIdGradoDependenciaCombo() {
		if (idGradoDependencia04 != null && idGradoDependencia04.compareTo(0L) > 0) {
			return GradoDependenciaEnum.getByIdBBDD(idGradoDependencia04).getCombo();
		}
		return null;

	}
*/
	public String getDescOtraDependencia04() {
		return descOtraDependencia04;
	}

	public void setDescOtraDependencia04(String descOtraDependencia04) {
		this.descOtraDependencia04 = descOtraDependencia04;
	}

	/**
	 * Method 'getIsHistorico'.
	 *
	 * @return Boolean
	 */
	public Boolean getIsHistorico() {
		return this.isHistorico;
	}

	/**
	 * Method 'setIsHistorico'.
	 *
	 * @param isHistorico {@link Boolean}
	 */
	public void setIsHistorico(Boolean isHistorico) {
		this.isHistorico = isHistorico;
	}

}
