package com.ejie.ad74a.model;

import java.sql.Clob;
import java.sql.SQLException;
import java.util.Date;

import com.ejie.ad74a.util.UtilSQL;
import com.ejie.x38.serialization.JsonDateDeserializer;
import com.ejie.x38.serialization.JsonDateSerializer;
import com.ejie.x38.serialization.JsonDateTimeDeserializer;
import com.ejie.x38.serialization.JsonDateTimeSerializer;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;

/**
 * ErroresTelevida generated by UDA, 07-jun-2023 12:06:39.
 * 
 * @author UDA
 */

public class ErroresTelevida implements java.io.Serializable {

	private static final long serialVersionUID = 1L;
	private Long idError51;
	private String error51;
	private String errormsg51;
	private Date fecrecep51;
	private Clob mensaje51;
	private String mensaje51Str;
	private String tipomensaje51;
	private String estado51;
	private Integer sentido51;
	private Date fecrecep51desde;
	private Date fecrecep51hasta;

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

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

	/**
	 * Method 'ErroresTelevida'.
	 * 
	 * @param idError51     Long
	 * @param error51       String
	 * @param errormsg51    String
	 * @param fecrecep51    Date
	 * @param mensaje51     Clob
	 * @param tipomensaje51 String
	 * @param estado51      String
	 */
	public ErroresTelevida(Long idError51, String error51, String errormsg51, Date fecrecep51, Clob mensaje51,
			String tipomensaje51, String estado51, Integer sentido51) {

		this.idError51 = idError51;
		this.error51 = error51;
		this.errormsg51 = errormsg51;
		this.fecrecep51 = fecrecep51;
		this.mensaje51 = mensaje51;
		this.tipomensaje51 = tipomensaje51;
		this.estado51 = estado51;
		this.sentido51 = sentido51;
		this.mensaje51Str = UtilSQL.clobToString(this.mensaje51);
	}

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

	public Long getIdError51() {
		return this.idError51;
	}

	/**
	 * Method 'setIdError51'.
	 *
	 * @param idError51 Long
	 * @return
	 */

	public void setIdError51(Long idError51) {
		this.idError51 = idError51;
	}

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

	public String getError51() {
		return this.error51;
	}

	/**
	 * Method 'setError51'.
	 *
	 * @param error51 String
	 * @return
	 */

	public void setError51(String error51) {
		this.error51 = error51;
	}

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

	public String getErrormsg51() {
		return this.errormsg51;
	}

	/**
	 * Method 'setErrormsg51'.
	 *
	 * @param errormsg51 String
	 * @return
	 */

	public void setErrormsg51(String errormsg51) {
		this.errormsg51 = errormsg51;
	}

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

	@JsonSerialize(using = JsonDateTimeSerializer.class)
	public Date getFecrecep51() {
		return this.fecrecep51;
	}

	/**
	 * Method 'setFecrecep51'.
	 *
	 * @param fecrecep51 java.util.Date
	 * @return
	 */
	@JsonDeserialize(using = JsonDateTimeDeserializer.class)
	public void setFecrecep51(Date fecrecep51) {
		this.fecrecep51 = fecrecep51;
	}

	/**
	 * Method 'getMensaje51'.
	 *
	 * @return Clob
	 */
	@JsonIgnore

	public Clob getMensaje51() {
		return this.mensaje51;
	}

	/**
	 * Method 'getMensaje51Str'.
	 *
	 * @return String
	 */
	public String getMensaje51Str() {
		return this.mensaje51Str;
	}

	/**
	 * Method 'setMensaje51'.
	 *
	 * @param mensaje51 Clob
	 * @return
	 */

	public void setMensaje51(Clob mensaje51) {
		this.mensaje51 = mensaje51;
	}

	/**
	 * Method 'setMensaje51'.
	 *
	 * @param mensaje51 String
	 * @return
	 */
	public void setMensaje51(String mensaje51) throws SQLException {
		this.mensaje51 = UtilSQL.stringToClob(mensaje51);
	}

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

	public String getTipomensaje51() {
		return this.tipomensaje51;
	}

	/**
	 * Method 'setTipomensaje51'.
	 *
	 * @param tipomensaje51 String
	 * @return
	 */

	public void setTipomensaje51(String tipomensaje51) {
		this.tipomensaje51 = tipomensaje51;
	}

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

	public String getEstado51() {
		return this.estado51;
	}

	/**
	 * Method 'setEstado51'.
	 *
	 * @param estado51 String
	 * @return
	 */

	public void setEstado51(String estado51) {
		this.estado51 = estado51;
	}

	/**
	 * 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(" [ idError51: ").append(this.idError51).append(" ]");
		result.append(", [ error51: ").append(this.error51).append(" ]");
		result.append(", [ errormsg51: ").append(this.errormsg51).append(" ]");
		result.append(", [ fecrecep51: ").append(this.fecrecep51).append(" ]");
		result.append(", [ tipomensaje51: ").append(this.tipomensaje51).append(" ]");
		result.append(", [ estado51: ").append(this.estado51).append(" ]");
		result.append("}");
		return result.toString();
	}

	/**
	 * Method 'getFecrecep51desde'.
	 *
	 * @return java.util.Date
	 */
	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFecrecep51desde() {
		return fecrecep51desde;
	}

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

	/**
	 * Method 'getFecrecep51hasta'.
	 *
	 * @return java.util.Date
	 */
	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFecrecep51hasta() {
		return fecrecep51hasta;
	}

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

	public Integer getSentido51() {
		return sentido51;
	}

	public void setSentido51(Integer sentido51) {
		this.sentido51 = sentido51;
	}

}
