package com.rjconsultores.ventaboletos.entidad;

import java.util.ArrayList;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Embeddable;
import javax.persistence.OneToMany;

@Embeddable
public class ConvenioCampanha {

	@Column(name = "TERMOECONDICAO")
	private String termoECondicao;
	@Column(name = "MENSAGEMGANHADOR")
	private String mensagemGanhador;
	@Column(name = "VLREMITIRCUPOM")
	private Integer vlrEmitirCupom;
	@Column(name = "ISCUPOMALEATORIO")
	private Boolean isCupomAleatorio;
	@Column(name = "QTDDIGITOSCUPOM")
	private Integer qtdDigitosCupom;
	@Column(name = "CODIGOCUPOM")
	private String codigoCupom;
	@OneToMany(mappedBy = "convenio", cascade = CascadeType.ALL)
	private List<ConvenioCampanhaEmpresa> convenioCampanhaEmpresaList;

	@OneToMany(mappedBy = "convenio", cascade = CascadeType.ALL)
	private List<ConvenioCampanhaPuntoVenta> convenioCampanhaPuntoVentaList;

	public String getTermoECondicao() {
		return termoECondicao;
	}

	public void setTermoECondicao(String termoECondicao) {
		this.termoECondicao = termoECondicao;
	}

	public String getMensagemGanhador() {
		return mensagemGanhador;
	}

	public void setMensagemGanhador(String mensagemGanhador) {
		this.mensagemGanhador = mensagemGanhador;
	}

	public Integer getVlrEmitirCupom() {
		return vlrEmitirCupom;
	}

	public void setVlrEmitirCupom(Integer vlrEmitirCupom) {
		this.vlrEmitirCupom = vlrEmitirCupom;
	}

	public Boolean getIsCupomAleatorio() {
		return isCupomAleatorio == null ? false : isCupomAleatorio;
	}

	public void setIsCupomAleatorio(Boolean isCupomAleatorio) {
		this.isCupomAleatorio = isCupomAleatorio;
	}

	public Integer getQtdDigitosCupom() {
		return qtdDigitosCupom;
	}

	public void setQtdDigitosCupom(Integer qtdDigitosCupom) {
		this.qtdDigitosCupom = qtdDigitosCupom;
	}

	public String getCodigoCupom() {
		return codigoCupom;
	}

	public void setCodigoCupom(String codigoCupom) {
		this.codigoCupom = codigoCupom;
	}

	public List<ConvenioCampanhaEmpresa> getConvenioCampanhaEmpresaList() {
		return convenioCampanhaEmpresaList;
	}
	
	public List<ConvenioCampanhaEmpresa> getConvenioCampanhaEmpresaListAtivo() {
		List<ConvenioCampanhaEmpresa> lsAux = new ArrayList<ConvenioCampanhaEmpresa>();
		if (convenioCampanhaEmpresaList != null && !convenioCampanhaEmpresaList.isEmpty()) {
			for (ConvenioCampanhaEmpresa convenioCampanhaEmpresa : convenioCampanhaEmpresaList) {
				if (convenioCampanhaEmpresa.getActivo()) {
					lsAux.add(convenioCampanhaEmpresa);
				}
			}
		}
		return lsAux;
	}

	public void setConvenioCampanhaEmpresaList(List<ConvenioCampanhaEmpresa> convenioCampanhaEmpresaList) {
		this.convenioCampanhaEmpresaList = convenioCampanhaEmpresaList;
	}

	public List<ConvenioCampanhaPuntoVenta> getConvenioCampanhaPuntoVentaList() {
		return convenioCampanhaPuntoVentaList;
	}

	public void setConvenioCampanhaPuntoVentaList(List<ConvenioCampanhaPuntoVenta> convenioCampanhaPuntoVentaList) {
		this.convenioCampanhaPuntoVentaList = convenioCampanhaPuntoVentaList;
	}

}
