/**
 * 
 */
package com.ejie.ad74a.model;

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

/**
 * Representacion registro 
 * @author BICUGUAL
 *
 */
public class FacturacionAyuntamiento implements Serializable{


	private static final long serialVersionUID = -480614434877671582L;

	private Long idFacturacion;
	private Long idAyuntamiento;
	private Integer anyoDesde;
	private Integer mesDesde;
	private Integer anyoHasta;
	private Integer mesHasta;
	private Date fEmision;
	private BigDecimal importeFacturado;
	private String referenciaRecibo;
	private int procesado;
	
	public FacturacionAyuntamiento() {
		super();
	}

	public FacturacionAyuntamiento(Ayuntamiento ayto, BigDecimal importe) {
		super();
		this.idAyuntamiento = ayto.getIdAyuntamiento();
		this.anyoDesde = ayto.getFechaProximaFacturacion().getYear();
		this.mesDesde = ayto.getFechaProximaFacturacion().getMonthValue();
		this.anyoHasta = ayto.getFechaProximaFacturacion().plusMonths(ayto.getPeriodicidad() - 1).getYear();
		this.mesHasta = ayto.getFechaProximaFacturacion().plusMonths(ayto.getPeriodicidad() - 1).getMonthValue();
		this.importeFacturado = importe;		
	}
	
	public Long getIdFacturacion() {
		return idFacturacion;
	}

	public void setIdFacturacion(Long idFacturacion) {
		this.idFacturacion = idFacturacion;
	}

	public Long getIdAyuntamiento() {
		return idAyuntamiento;
	}

	public void setIdAyuntamiento(Long idAyuntamiento) {
		this.idAyuntamiento = idAyuntamiento;
	}

	public Integer getAnyoDesde() {
		return anyoDesde;
	}

	public void setAnyoDesde(Integer anyoDesde) {
		this.anyoDesde = anyoDesde;
	}

	public Integer getMesDesde() {
		return mesDesde;
	}

	public void setMesDesde(Integer mesDesde) {
		this.mesDesde = mesDesde;
	}

	public Integer getAnyoHasta() {
		return anyoHasta;
	}

	public void setAnyoHasta(Integer anyoHasta) {
		this.anyoHasta = anyoHasta;
	}

	public Integer getMesHasta() {
		return mesHasta;
	}

	public void setMesHasta(Integer mesHasta) {
		this.mesHasta = mesHasta;
	}

	public Date getfEmision() {
		return fEmision;
	}

	public void setfEmision(Date fEmision) {
		this.fEmision = fEmision;
	}

	public BigDecimal getImporteFacturado() {
		return importeFacturado;
	}

	public void setImporteFacturado(BigDecimal importeFacturado) {
		this.importeFacturado = importeFacturado;
	}

	public String getReferenciaRecibo() {
		return referenciaRecibo;
	}

	public void setReferenciaRecibo(String referenciaRecibo) {
		this.referenciaRecibo = referenciaRecibo;
	}

	public int getProcesado() {
		return procesado;
	}

	public void setProcesado(int procesado) {
		this.procesado = procesado;
	}

	@Override
	public String toString() {
		return "FacturacionAyuntamiento [idFacturacion=" + idFacturacion + ", idAyuntamiento=" + idAyuntamiento
				+ ", anyoDesde=" + anyoDesde + ", mesDesde=" + mesDesde + ", anyoHasta=" + anyoHasta + ", mesHasta="
				+ mesHasta + ", fEmision=" + fEmision + ", importeFacturado=" + importeFacturado + ", referenciaRecibo="
				+ referenciaRecibo + ", procesado=" + procesado + "]";
	}
}
