package br.com.ec.controller.managedbean;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.inject.Inject;
import javax.inject.Named;
import org.springframework.context.annotation.Scope;
import br.com.ec.controller.managedbean.consultademanda.VendaVivoConsultaPorDemanda;
import br.com.ec.core.generic.GenericService;
import br.com.ec.domain.dto.ParametrosConsultaVendasVivoDTO;
import br.com.ec.domain.dto.VendasDTO;
import br.com.ec.domain.model.VendaVivo;
import br.com.ec.domain.service.vendavivo.VendaVivoService;
import br.com.ec.web.generic.AbstractBean;
@Named
@Scope
("view")
public class VendasVivoConsultaBean
extends AbstractBean
<VendaVivo
> implements Serializable {
private static final long serialVersionUID = 1L
;
private ParametrosConsultaVendasVivoDTO parametrosConsultaVendasVivoDTO
;
private VendaVivoConsultaPorDemanda lazy
;
private List<VendasDTO
> vendas
;
private VendaVivoService vendaVivoService
;
@Inject
public VendasVivoConsultaBean
(VendaVivoConsultaPorDemanda lazy, VendaVivoService vendaVivoService
) {
this.
lazy = lazy
;
this.
vendaVivoService = vendaVivoService
;
}
@
Override
public void preCarregamento
() {
entidade =
new VendaVivo
();
parametrosConsultaVendasVivoDTO =
new ParametrosConsultaVendasVivoDTO
();
parametrosConsultaVendasVivoDTO.
setEntidade(entidade
);
prepararConsultaDemanda
();
setVendas
(new ArrayList<VendasDTO
>());
}
@
Override
public void limparEntidade
() {
setEntidade
(new VendaVivo
());
}
@
Override
public GenericService
<VendaVivo
> getService
() {
return vendaVivoService
;
}
@
Override
public VendaVivo getEntidade
() {
return entidade
;
}
@
Override
public VendaVivo getId
() {
return getEntidade
();
}
public ParametrosConsultaVendasVivoDTO getParametrosConsultaVendasVivoDTO
() {
return parametrosConsultaVendasVivoDTO
;
}
public void setParametrosConsultaVendasVivoDTO
(ParametrosConsultaVendasVivoDTO parametrosConsultaVendasVivoDTO
) {
this.
parametrosConsultaVendasVivoDTO = parametrosConsultaVendasVivoDTO
;
}
public VendaVivoConsultaPorDemanda getLazy
() {
return lazy
;
}
public void setLazy
(VendaVivoConsultaPorDemanda lazy
) {
this.
lazy = lazy
;
}
public void prepararConsultaDemanda
() {
lazy.
setarParametrosConsulta(getParametrosConsultaVendasVivoDTO
());
}
public Double getTotalVendasVivo
() {
return vendaVivoService.
obterValorTotalBrutoDeVendasPorLojaEePeriodo(getParametrosConsultaVendasVivoDTO
());
}
public List<VendasDTO
> getVendas
() {
return vendas
;
}
public void setVendas
(List<VendasDTO
> vendas
) {
this.
vendas = vendas
;
}
/***************************************************************/
public void consultarVendas
() {
setVendas
(vendaVivoService.
consultarVendas(getParametrosConsultaVendasVivoDTO
()));
}
}