Exemple #1
0
        public RetornoModel <PropostaModel> AprovarProposta(PropostaModel model)
        {
            try
            {
                if (DateTime.Now > model.Data.AddHours(ConfiguracaoAppUtil.GetAsInt(ConfiguracaoGeral.tempoExpiracaoProposta)))
                {
                    return(new RetornoModel <PropostaModel>
                    {
                        Mensagem = "Proposta não pode ser aprovada pois já expirou o prazo de validade"
                    });
                }

                var usuarioCorrente = new UsuarioService().Carregar(model.IdUsuario);

                if (usuarioCorrente.Perfil == PerfilUsuario.AnalistaComercial)
                {
                    return(new RetornoModel <PropostaModel>
                    {
                        Mensagem = "Proposta não pode ser aprovada por usuários com perfil " + PerfilUsuario.AnalistaComercial.Description()
                    });
                }
                else if (usuarioCorrente.Perfil == PerfilUsuario.AnalistaFinanceiro)
                {
                    InserirHistorico(model.ID, AcaoProposta.AprovacaoAnalista, model.IdUsuario);
                    if (model.Valor > ConfiguracaoAppUtil.GetAsDecimal(ConfiguracaoGeral.valorMinimoAprovacaoDiretoria))
                    {
                        InserirHistorico(model.ID, AcaoProposta.SolicitadoAprovacao, model.IdUsuario);
                        model.Status = StatusProposta.PedenteDiretoria;
                    }
                }
                else
                {
                    InserirHistorico(model.ID, AcaoProposta.AprovacaoDiretoria, model.IdUsuario);
                }

                var result = Salvar(model);
                if (result.Sucesso)
                {
                    if (model.Status == StatusProposta.PedenteDiretoria)
                    {
                        result.Mensagem = "Proposta enviada para aprovação do " + PerfilUsuario.DiretorFinanceiro.Description();
                    }
                    else
                    {
                        result.Mensagem = "Proposta aprovada com sucesso!";
                    }
                }
                return(result);
            }
            catch (Exception ex)
            {
                LogUtil.Error(ex);
                throw;
            }
        }
Exemple #2
0
        public RetornoModel <List <Setor> > GetSetores(int eventoID, int apresentacaoID, [FromUri] bool comCotaNominal = true, [FromUri] bool comCotaPromocional = true, int mostrarEstatistica = 0)
        {
            var retorno = new RetornoModel <List <Setor> >();

            var stopwatch = new Stopwatch();

            stopwatch.Start();

            List <Setor> resultado;

            try
            {
                using (var setorBO = new SetorBO())
                {
                    var ado = new MasterADOBase();

                    var canalTipoPOS = ConfiguracaoAppUtil.GetAsInt("CanalTipoPOS");
                    var isPOS        = new CanalBO(ado).isPOS(SessionModel.CanalID, canalTipoPOS);

                    resultado = setorBO.Listar(apresentacaoID, eventoID, SessionModel.CanalID, comCotaNominal, comCotaPromocional, isPOS, SessionModel.SessionID, Convert.ToBoolean(mostrarEstatistica));
                }
            }
            catch (Exception ex)
            {
                stopwatch.Stop();
                retorno.Mensagem = ex.Message;
                LogUtil.Error(string.Format("##GET.Eventos/id/apresentacao/id/setores.EXCEPTION## SESSION {0}, MSG {1}, TEMPO DECORRIDO {2}", SessionModel.SessionID, ex.Message, stopwatch.Elapsed), ex);
                retorno.Sucesso = false;
                LogUtil.Error(ex);
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound, ParseRetorno(retorno)));
            }
            retorno.Retorno = resultado;
            retorno.Sucesso = true;

            stopwatch.Stop();

            if (resultado == null || resultado.Count == 0)
            {
                retorno.Sucesso  = false;
                retorno.Mensagem = "Nenhum setor encontrado par a apresentação ou apresentação não encontrada";
                LogUtil.Info(string.Format("##GET.Eventos/id/apresentacao/id/setores## SESSION {0}, TEMPO DECORRIDO {1}, MSG {2}", SessionModel.SessionID, stopwatch.Elapsed, retorno.Mensagem));
                NewRelicIgnoreTransaction();
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound, ParseRetorno(retorno)));
            }

            retorno.Mensagem = "OK";

            LogUtil.Info(string.Format("##GET.Eventos/id/apresentacao/id/setores## SESSION {0}, TEMPO DECORRIDO {1}, MSG {2}", SessionModel.SessionID, stopwatch.Elapsed, retorno.Mensagem));

            return(ParseRetorno(retorno));
        }
        public RetornoModel <string> Upload(HttpPostedFileBase arquivo)
        {
            string nomeArq = null;

            try
            {
                if ((arquivo != null) && (arquivo.ContentLength > 0))
                {
                    string content = arquivo.ContentType.Split('/')[0];
                    if (content == "image" || content == "video")
                    {
                        //Salva o arquivo
                        nomeArq = Guid.NewGuid().ToString();
                        string nomeArqSalvar = nomeArq;
                        if (content == "image")
                        {
                            if (arquivo.ContentLength > ConfiguracaoAppUtil.GetAsInt(enumConfiguracaoLib.uploadImagemMaxSize))
                            {
                                int maxKb = Convert.ToInt32(ConfiguracaoAppUtil.GetAsInt(enumConfiguracaoLib.uploadImagemMaxSize) / 1024);
                                return(new RetornoModel <string> {
                                    Mensagem = "O tamanho máximo para upload de imagem é de " + ((maxKb > 1024) ? Convert.ToInt32(maxKb / 1024) + "Mb" : maxKb + "Kb") + ".", Sucesso = false
                                });
                            }
                            nomeArqSalvar += Path.GetExtension(arquivo.FileName);
                            nomeArq        = nomeArqSalvar;
                        }
                        else
                        {
                            if (arquivo.ContentLength > ConfiguracaoAppUtil.GetAsInt(enumConfiguracaoLib.uploadVideoMaxSize))
                            {
                                int maxKb = Convert.ToInt32(ConfiguracaoAppUtil.GetAsInt(enumConfiguracaoLib.uploadVideoMaxSize) / 1024);
                                return(new RetornoModel <string> {
                                    Mensagem = "O tamanho máximo para upload de vídeo é de " + ((maxKb > 1024) ? Convert.ToInt32(maxKb / 1024) + "Mb" : maxKb + "Kb") + ".", Sucesso = false
                                });
                            }
                            nomeArqSalvar += ".orig" + Path.GetExtension(arquivo.FileName);
                        }
                        string caminhoArquivo = ConfiguracaoAppUtil.GetPath(enumConfiguracaoLib.historiaMidiaDiretorio, nomeArqSalvar);
                        arquivo.SaveAs(caminhoArquivo);

                        if (!AntivirusUtil.Verificar(caminhoArquivo))
                        {
                            return(new RetornoModel <string> {
                                Mensagem = "Este arquivo contém vírus, favor tentar outro arquivo.", Sucesso = false
                            });
                        }
                        else
                        {
                            if (content == "video")
                            {
                                Task.Run(() => ConverterVideo(caminhoArquivo, nomeArq));
                            }
                        }
                    }
                    else
                    {
                        return(new RetornoModel <string> {
                            Mensagem = "Tipo de arquivo inválido.", Sucesso = false
                        });
                    }
                }
                else
                {
                    return(new RetornoModel <string> {
                        Mensagem = "Nenhum arquivo enviado.", Sucesso = false
                    });
                }
            }
            catch (Exception e)
            {
                LogUtil.Error(e);
                return(new RetornoModel <string> {
                    Mensagem = "Falha no upload, tente novamente!", Sucesso = false
                });
            }
            return(new RetornoModel <string> {
                Retorno = nomeArq, Mensagem = "Upload realizado com sucesso", Sucesso = true
            });
        }
Exemple #4
0
        public RetornoModel <Evento> GetEvento(int id, int mostrarEstatistica = 0)
        {
            var retorno = new RetornoModel <Evento>();

            var stopwatch = new Stopwatch();

            stopwatch.Start();

            try
            {
                using (var ado = new MasterADOBase())
                {
                    var eventoBO = new EventoBO(ado);

                    var canalTipoPOS = ConfiguracaoAppUtil.GetAsInt("CanalTipoPOS");
                    var isPOS        = new CanalBO(ado).isPOS(SessionModel.CanalID, canalTipoPOS);

                    retorno.Retorno = eventoBO.Consultar(id, isPOS, Convert.ToBoolean(mostrarEstatistica));

                    var pacoteBO = new PacoteBO(ado);

                    if (retorno.Retorno != null)
                    {
                        retorno.Retorno.Pacote = pacoteBO.ListarPorEvento(id, SessionModel.CanalID);

                        if (retorno.Retorno.Pacote.Any())
                        {
                            foreach (var pacote in retorno.Retorno.Pacote)
                            {
                                pacote.PacoteItem = pacoteBO.ListarItens(pacote.ID);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                stopwatch.Stop();
                retorno.Mensagem = ex.Message;
                LogUtil.Error(string.Format("##GET.Eventos.eventos/id.EXCEPTION## SESSION {0}, MSG {1}, TEMPO DECORRIDO {2}", this.SessionModel.SessionID, ex.Message, stopwatch.Elapsed), ex);
                retorno.Sucesso = false;
                LogUtil.Error(ex);
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.InternalServerError, ParseRetorno(retorno)));
            }

            stopwatch.Stop();

            retorno.Sucesso = (retorno.Retorno != null);

            if (!retorno.Sucesso)
            {
                retorno.Mensagem = "Evento não encontrado";
                LogUtil.Info(string.Format("##GET.Eventos.eventos/id## SESSION {0}, TEMPO DECORRIDO {1}, MSG {2}", this.SessionModel.SessionID, stopwatch.Elapsed, retorno.Mensagem));
                retorno.Sucesso = false;
                NewRelicIgnoreTransaction();
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound, ParseRetorno(retorno)));
            }
            retorno.Mensagem = "OK";

            LogUtil.Info(string.Format("##GET.Eventos.eventos/id## SESSION {0}, TEMPO DECORRIDO {1}, MSG {2}", this.SessionModel.SessionID, stopwatch.Elapsed, retorno.Mensagem));

            return(ParseRetorno(retorno));
        }
        public RetornoModel <UploadFotoModel> Upload(HttpPostedFileBase arquivo)
        {
            string          nomeArq = null;
            UploadFotoModel retorno = null;

            try
            {
                if ((arquivo != null) && (arquivo.ContentLength > 0))
                {
                    string content = arquivo.ContentType.Split('/')[0];
                    if (content == "image")
                    {
                        if (arquivo.ContentLength > ConfiguracaoAppUtil.GetAsInt(enumConfiguracaoLib.uploadImagemMaxSize))
                        {
                            int maxKb = Convert.ToInt32(ConfiguracaoAppUtil.GetAsInt(enumConfiguracaoLib.uploadImagemMaxSize) / 1024);
                            return(new RetornoModel <UploadFotoModel> {
                                Mensagem = "O tamanho máximo para upload de imagem é de " + ((maxKb > 1024) ? Convert.ToInt32(maxKb / 1024) + "Mb" : maxKb + "Kb") + ".", Sucesso = false
                            });
                        }
                        //Salva o arquivo
                        nomeArq = Guid.NewGuid().ToString() + Path.GetExtension(arquivo.FileName);
                        string caminhoArquivo = ConfiguracaoAppUtil.GetPath(enumConfiguracaoLib.indicadoFotoDiretorio, nomeArq);
                        arquivo.SaveAs(caminhoArquivo);

                        if (!AntivirusUtil.Verificar(caminhoArquivo))
                        {
                            return(new RetornoModel <UploadFotoModel> {
                                Mensagem = "Este arquivo contém vírus, favor tentar outro arquivo.", Sucesso = false
                            });
                        }
                        Image img = Image.FromFile(caminhoArquivo);
                        retorno = new UploadFotoModel
                        {
                            file   = nomeArq,
                            width  = img.Width,
                            height = img.Height,
                            x      = Convert.ToInt32((indicadoMaxWidth - img.Width) / 2),
                            y      = Convert.ToInt32((indicadoMaxHeight - img.Height) / 2)
                        };
                    }
                    else
                    {
                        return(new RetornoModel <UploadFotoModel> {
                            Mensagem = "Tipo de arquivo inválido.", Sucesso = false
                        });
                    }
                }
                else
                {
                    return(new RetornoModel <UploadFotoModel> {
                        Mensagem = "Nenhum arquivo enviado.", Sucesso = false
                    });
                }
            }
            catch (Exception e)
            {
                LogUtil.Error(e);
                return(new RetornoModel <UploadFotoModel> {
                    Mensagem = "Falha no upload, tente novamente!", Sucesso = false
                });
            }
            return(new RetornoModel <UploadFotoModel> {
                Retorno = retorno, Mensagem = "Upload realizado com sucesso.", Sucesso = true
            });
        }
Exemple #6
0
        /// <summary>
        /// Método que cadastra um preço de ingresso para um parceiro de midia, se ainda não existir
        /// </summary>
        /// <param name="ingresso"></param>
        public RetornoModel CadastrarParaIngressoParceiroMidia(tIngresso ingresso, int usuarioID, ParceiroMidia parceiroMidia)
        {
            int     lojaId  = ConfiguracaoAppUtil.GetAsInt(enumConfiguracaoBO.lojaIdSistema);
            LojaADO lojaADO = new LojaADO(ado);
            tLoja   loja    = lojaADO.Consultar(lojaId);

            if (parceiroMidia != null && ingresso.ApresentacaoID != null && ingresso.SetorID != null)
            {
                PrecoParceiroMidia precoParceiro = ConsultarParceiro(ingresso.SetorID.Value, ingresso.ApresentacaoID.Value, parceiroMidia.ID);
                if (precoParceiro == null)
                {
                    tPreco      preco      = ado.ConsultarPreco(ingresso.SetorID.Value, ingresso.ApresentacaoID.Value, parceiroMidia.ID);
                    tCanalPreco canalPreco = null;

                    if (preco == null)
                    {
                        preco       = new tPreco();
                        preco.Nome  = parceiroMidia.Nome;
                        preco.Valor = 0;
                        preco.ApresentacaoSetorID = ingresso.ApresentacaoSetorID;
                        preco.ParceiroMidiaID     = parceiroMidia.ID;
                        preco.IRVende             = "F";
                        preco.CorID = 1;
                        Salvar(preco, usuarioID);

                        try
                        {
                            IRLib.CodigoBarra codigoBarra = new IRLib.CodigoBarra();
                            codigoBarra.Inserir(ingresso.EventoID.Value, ingresso.ApresentacaoID.Value, ingresso.SetorID.Value, preco.ID, new BD());
                        }
                        catch (Exception ex)
                        {
                            LogUtil.Error(ex);
                            Remover(preco, usuarioID);
                            return(new RetornoModel()
                            {
                                Sucesso = false, Mensagem = "Erro para gerar o codigo de barras do preco"
                            });
                        }
                    }
                    else
                    {
                        canalPreco = ado.ConsultarCanal(preco.ID, loja.CanalID.Value);
                    }

                    if ((preco != null) && (canalPreco == null))
                    {
                        canalPreco            = new tCanalPreco();
                        canalPreco.DataInicio = "";
                        canalPreco.DataFim    = "";
                        canalPreco.PrecoID    = preco.ID;
                        canalPreco.Quantidade = 0;
                        canalPreco.CanalID    = loja.CanalID.Value;
                        Salvar(canalPreco, usuarioID);
                    }
                }
            }
            return(new RetornoModel()
            {
                Sucesso = true
            });
        }