Subversion Repositories Integrator Subversion

Rev

Rev 164 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

package br.com.ec.domain.dto;

import br.com.ec.controller.util.UtilBean;
import br.com.ec.core.util.DataUtils;
import br.com.ec.core.util.VerificadorUtil;
import br.com.ec.domain.model.Loja;

public class ConsolidadoVendasLojaDTO implements Comparable<ConsolidadoVendasLojaDTO> {

        private Loja loja;
        private Integer quantidadeTotalVendas;
        private Double valorTotalVendasDoDia;
        private Double valorTotalVendas;
        private Double valorTotalVendasVivo;
        private Double valorTotalVendasAnterioresDoMesAtual;
        private Boolean indicadorLojaAberta;
        private Boolean indicadorVendasNovas;
        private Double valorMetaMensal;
       
        public Loja getLoja() {
                return loja;
        }
        public void setLoja(Loja loja) {
                this.loja = loja;
        }
       
        public Integer getQuantidadeTotalVendas() {
                return quantidadeTotalVendas;
        }
        public void setQuantidadeTotalVendas(Integer quantidadeTotalVendas) {
                this.quantidadeTotalVendas = quantidadeTotalVendas;
        }
       
        public Double getValorTotalVendasDoDia() {
                return valorTotalVendasDoDia;
        }
        public void setValorTotalVendasDoDia(Double valorTotalVendasDoDia) {
                this.valorTotalVendasDoDia = valorTotalVendasDoDia;
        }
       
        public Double getValorTotalVendas() {
                return valorTotalVendas;
        }
        public void setValorTotalVendas(Double valorTotalVendas) {
                this.valorTotalVendas = valorTotalVendas;
        }
       
        public Double getValorTotalVendasVivo() {
                return valorTotalVendasVivo;
        }
        public void setValorTotalVendasVivo(Double valorTotalVendasVivo) {
                this.valorTotalVendasVivo = valorTotalVendasVivo;
        }
       
        public Double getValorTotalVendasAnterioresDoMesAtual() {
                return valorTotalVendasAnterioresDoMesAtual;
        }
        public void setValorTotalVendasAnterioresDoMesAtual(Double valorTotalVendasAnterioresDoMesAtual) {
                this.valorTotalVendasAnterioresDoMesAtual = valorTotalVendasAnterioresDoMesAtual;
        }
       
        public Boolean getIndicadorLojaAberta() {
                return indicadorLojaAberta;
        }
        public void setIndicadorLojaAberta(Boolean indicadorLojaAberta) {
                this.indicadorLojaAberta = indicadorLojaAberta;
        }
       
        public Boolean getIndicadorVendasNovas() {
                return indicadorVendasNovas;
        }
        public void setIndicadorVendasNovas(Boolean indicadorVendasNovas) {
                this.indicadorVendasNovas = indicadorVendasNovas;
        }
       
        public String getEstiloVendas() {
                return UtilBean.estiloVendas(valorTotalVendas);
        }
       
        public String estiloVendasPorMeta(Double valorMeta) {
                return UtilBean.estiloVendasPorMeta(valorTotalVendas, valorMeta);
        }
       
        public Double getValorMetaMensal() {
                return valorMetaMensal;
        }
        public void setValorMetaMensal(Double valorMetaMensal) {
                this.valorMetaMensal = valorMetaMensal;
        }

        @Override
        public int compareTo(ConsolidadoVendasLojaDTO consolidadoVendasLojaDTO) {
                return consolidadoVendasLojaDTO.getValorTotalVendas().compareTo(this.valorTotalVendas);
        }
       
        public Double getPercentualRealizadoMetaMensal() {
                Double percentual = getLoja().percentualRealizadoMetaMensal(getValorTotalVendas(), getValorMetaMensal());
                return VerificadorUtil.naoEstaNulo(percentual)? percentual : 0.0;
        }
       
        public Double getMetaDiariaLiquidaComVendasDoDia() {
                Integer quantidadeDiasNoMesAtual = DataUtils.calcularDiferenceEmDiasEntreDuasDatas(DataUtils.getDataComHorarioMaximo(DataUtils.getUltimoDiaDoMesAtual()), DataUtils.getDataComHorarioMinimo(DataUtils.getDataAtual())) + 1;
                if (VerificadorUtil.naoEstaNulo(getValorMetaMensal())) {
                        return getValorMetaMensal() > 0? ((getValorMetaMensal() - getValorTotalVendasAnterioresDoMesAtual()) / quantidadeDiasNoMesAtual) : null;
                }
                return 0.0;
        }
       
}