package com.ejie.ad74a.model;

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;
import java.math.BigDecimal;
import java.util.Date;

/**
 * MaestroBenefFactu generated by UDA, 01-jun-2023 13:17:33.
 * 
 * @author UDA
 */

public class MaestroBenefFactu implements java.io.Serializable {

	private static final long serialVersionUID = 1L;
	private Long idBenefFacturacion43;
	private String descEs43;
	private String descEu43;
	private BigDecimal costeFactura43;
	private String usuAlta43;
	private Date fAlta43;
	private Date fBaja43;

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

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

	/**
	 * Method 'MaestroBenefFactu'.
	 * 
	 * @param idBenefFacturacion43 Long
	 * @param descEs43             String
	 * @param descEu43             String
	 * @param costeFactura43       BigDecimal
	 * @param usuAlta43            String
	 * @param fAlta43              Date
	 * @param fBaja43              Date
	 */
	public MaestroBenefFactu(Long idBenefFacturacion43, String descEs43, String descEu43, BigDecimal costeFactura43,
			String usuAlta43, Date fAlta43, Date fBaja43) {

		this.idBenefFacturacion43 = idBenefFacturacion43;
		this.descEs43 = descEs43;
		this.descEu43 = descEu43;
		this.costeFactura43 = costeFactura43;
		this.usuAlta43 = usuAlta43;
		this.fAlta43 = fAlta43;
		this.fBaja43 = fBaja43;
	}

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

	public Long getIdBenefFacturacion43() {
		return this.idBenefFacturacion43;
	}

	/**
	 * Method 'setIdBenefFacturacion43'.
	 *
	 * @param idBenefFacturacion43 Long
	 * @return
	 */

	public void setIdBenefFacturacion43(Long idBenefFacturacion43) {
		this.idBenefFacturacion43 = idBenefFacturacion43;
	}

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

	public String getDescEs43() {
		return this.descEs43;
	}

	/**
	 * Method 'setDescEs43'.
	 *
	 * @param descEs43 String
	 * @return
	 */

	public void setDescEs43(String descEs43) {
		this.descEs43 = descEs43;
	}

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

	public String getDescEu43() {
		return this.descEu43;
	}

	/**
	 * Method 'setDescEu43'.
	 *
	 * @param descEu43 String
	 * @return
	 */

	public void setDescEu43(String descEu43) {
		this.descEu43 = descEu43;
	}

	/**
	 * Method 'getCosteFactura43'.
	 *
	 * @return BigDecimal
	 */

	public BigDecimal getCosteFactura43() {
		return this.costeFactura43;
	}

	/**
	 * Method 'setCosteFactura43'.
	 *
	 * @param costeFactura43 BigDecimal
	 * @return
	 */

	public void setCosteFactura43(BigDecimal costeFactura43) {
		this.costeFactura43 = costeFactura43;
	}

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

	public String getUsuAlta43() {
		return this.usuAlta43;
	}

	/**
	 * Method 'setUsuAlta43'.
	 *
	 * @param usuAlta43 String
	 * @return
	 */

	public void setUsuAlta43(String usuAlta43) {
		this.usuAlta43 = usuAlta43;
	}

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

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

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

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

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

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

	/**
	 * 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(" [ idBenefFacturacion43: ").append(this.idBenefFacturacion43).append(" ]");
		result.append(", [ descEs43: ").append(this.descEs43).append(" ]");
		result.append(", [ descEu43: ").append(this.descEu43).append(" ]");
		result.append(", [ costeFactura43: ").append(this.costeFactura43).append(" ]");
		result.append(", [ usuAlta43: ").append(this.usuAlta43).append(" ]");
		result.append(", [ fAlta43: ").append(this.fAlta43).append(" ]");
		result.append(", [ fBaja43: ").append(this.fBaja43).append(" ]");
		result.append("}");
		return result.toString();
	}

}
