Ejemplo n.º 1
0
        /// <summary>
        /// Recupera a producao realizada de todos os setores.
        /// </summary>
        /// <returns></returns>
        public IList <ProducaoDiariaRealizadaSetor> ObtemProducaoRealizadaSetoresClassificacao(int idClassificacao)
        {
            var resultado = new List <ProducaoDiariaRealizadaSetor>();
            var setores   = new List <Setor>();

            setores = SetorDAO.Instance.GetSetoresClassificacao(idClassificacao);

            // Informa as mensagens que serão passadas no rodapé da página
            foreach (var s in setores)
            {
                if (s.ExibirRelatorio && s.Tipo != TipoSetor.Entregue && s.Tipo != TipoSetor.ExpCarregamento)
                {
                    var prodDiaRealSet = new ProducaoDiariaRealizadaSetor(s.Descricao);

                    var mensagem = new System.Text.StringBuilder()
                                   .AppendFormat("{0}: ", s.Descricao);

                    var pedidoProducaoDAO = ProdutoPedidoProducaoDAO.Instance;

                    // Verifica quais dados serão exibidos no rodapé do painel da produção, de acordo com a empresa.
                    if (PCPConfig.PainelProducao.ExibirTotalM2LidoNoDia)
                    {
                        prodDiaRealSet.TotRealizado = pedidoProducaoDAO
                                                      .ObtemTotM2LidoSetor(s.IdSetor, idClassificacao, DateTime.Today, DateTime.Today.AddDays(1), true);
                    }

                    else if (PCPConfig.PainelProducao.ExibirTotalQtdeLidoNoDia)
                    {
                        prodDiaRealSet.TotRealizado = pedidoProducaoDAO
                                                      .ObtemTotM2LidoSetor(s.IdSetor, idClassificacao, DateTime.Today, DateTime.Today.AddDays(1), false);
                    }

                    else if (OrdemCargaConfig.DataEntregaBaseConsiderarPedidoParaOC != null)
                    {
                        prodDiaRealSet.TotRealizado = pedidoProducaoDAO
                                                      .ObtemTotM2Setor(s.IdSetor, idClassificacao, OrdemCargaConfig.DataEntregaBaseConsiderarPedidoParaOC,
                                                                       DateTime.Today.AddDays(-1).ToString("yyyy-MM-dd 23:59:59"), true);
                    }

                    else
                    {
                        prodDiaRealSet.TotRealizado = ProdutoPedidoProducaoDAO.Instance.ObtemTotM2Setor(s.IdSetor, idClassificacao, null, null, true);
                    }

                    resultado.Add(prodDiaRealSet);
                }
            }

            return(resultado);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Recupera a producao realizada de todos os setores.
        /// </summary>
        /// <returns></returns>
        public IList <ProducaoDiariaRealizadaSetor> ObtemProducaoRealizadaTodosSetores()
        {
            var resultado = new List <ProducaoDiariaRealizadaSetor>();

            var setores = new List <Setor>();

            // Informa as mensagens que serão passadas no rodapé da página.
            if (!ProducaoConfig.ExibirTotalEtiquetaNaoImpressaPainel)
            {
                setores = Data.Helper.Utils.GetSetores.ToList();
            }
            // Na MB Temper as etiquetas não impressas devem ser mostradas no rodapé;
            else
            {
                var setorEtiquetaNaoImpressa = new Setor();
                setorEtiquetaNaoImpressa.IdSetor         = -1;
                setorEtiquetaNaoImpressa.Descricao       = "Etiqueta Não Impressa";
                setorEtiquetaNaoImpressa.ExibirRelatorio = true;
                setorEtiquetaNaoImpressa.Tipo            = TipoSetor.Pendente;

                setores.Add(setorEtiquetaNaoImpressa);
                setores.AddRange(SetorDAO.Instance.GetOrdered());
            }

            // Informa as mensagens que serão passadas no rodapé da página
            foreach (var s in setores)
            {
                if (s.ExibirRelatorio && s.Tipo != TipoSetor.Entregue && s.Tipo != TipoSetor.ExpCarregamento)
                {
                    var prodDiaRealSet = new ProducaoDiariaRealizadaSetor(s.Descricao);

                    var mensagem = new System.Text.StringBuilder()
                                   .AppendFormat("{0}: ", s.Descricao);

                    var pedidoProducaoDAO = ProdutoPedidoProducaoDAO.Instance;

                    // Verifica quais dados serão exibidos no rodapé do painel da produção, de acordo com a empresa.
                    if (PCPConfig.PainelProducao.ExibirTotalM2LidoNoDia)
                    {
                        prodDiaRealSet.TotRealizado = pedidoProducaoDAO
                                                      .ObtemTotM2LidoSetor(s.IdSetor, null, DateTime.Today, DateTime.Today.AddDays(1), true);
                    }

                    else if (PCPConfig.PainelProducao.ExibirTotalQtdeLidoNoDia)
                    {
                        prodDiaRealSet.TotRealizado = pedidoProducaoDAO
                                                      .ObtemTotM2LidoSetor(s.IdSetor, null, DateTime.Today, DateTime.Today.AddDays(1), false);
                    }

                    else if (OrdemCargaConfig.DataEntregaBaseConsiderarPedidoParaOC != null)
                    {
                        prodDiaRealSet.TotRealizado = pedidoProducaoDAO
                                                      .ObtemTotM2Setor(s.IdSetor, null, OrdemCargaConfig.DataEntregaBaseConsiderarPedidoParaOC,
                                                                       DateTime.Today.AddDays(-1).ToString("yyyy-MM-dd 23:59:59"), true);
                    }

                    else
                    {
                        prodDiaRealSet.TotRealizado = ProdutoPedidoProducaoDAO.Instance.ObtemTotM2Setor(s.IdSetor);
                    }

                    resultado.Add(prodDiaRealSet);
                }
            }

            return(resultado);
        }