예제 #1
0
        public RetornoModel <RetornoOsespModel> PostBloquearIngresso([FromBody] OsespIngresso req)
        {
            RetornoModel <RetornoOsespModel> retorno = new RetornoModel <RetornoOsespModel>();

            if (req.ingressoID == 0)
            {
                retorno.Mensagem = "Ingresso ID obrigatório";
                retorno.Sucesso  = false;
                NewRelicIgnoreTransaction();
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.BadRequest, ParseRetorno(retorno)));
            }

            int UsuarioOSESPID = Convert.ToInt32(ConfigurationManager.AppSettings["UsuarioOSESPID"]);
            int PluID          = Convert.ToInt32(ConfigurationManager.AppSettings["OSESPID_PLU"]);
            int PluUtilizadoID = Convert.ToInt32(ConfigurationManager.AppSettings["OSESPID_PLU_UTILIZADO"]);
            int BloqueioPadrao = Convert.ToInt32(ConfigurationManager.AppSettings["BLOQUEIO_PADRAO"]);

            try
            {
                using (var ado = new MasterADOBase())
                {
                    EventoBO   eventoBO   = new EventoBO(ado);
                    IngressoBO ingressoBO = new IngressoBO(ado);
                    retorno.Sucesso = ingressoBO.BloquearIngressoOSESP(req.ingressoID, UsuarioOSESPID, PluID, PluUtilizadoID, BloqueioPadrao);

                    if (retorno.Sucesso)
                    {
                        tIngresso ingresso = ingressoBO.BuscaRetornoOsesp(req.ingressoID);


                        RetornoOsespModel rom = new RetornoOsespModel();
                        rom.BloqueioID   = Convert.ToInt32(ingresso.BloqueioID);
                        rom.Status       = "Bloqueado";
                        rom.BloqueioNome = ingressoBO.BuscaNomeBloqueio(Convert.ToInt32(ingresso.BloqueioID));

                        retorno.Retorno = rom;
                    }
                }
            }
            catch (Exception ex)
            {
                retorno.Mensagem = ex.Message;
                retorno.Sucesso  = false;
                LogUtil.Error(ex);
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.InternalServerError, ParseRetorno(retorno)));
            }
            if (!retorno.Sucesso)
            {
                retorno.Mensagem = "Ingresso não encontrado ou não disponível para bloqueio";
                NewRelicIgnoreTransaction();
                throw new HttpResponseException(Request.CreateResponse((HttpStatusCode)422, ParseRetorno(retorno)));
            }
            else
            {
                retorno.Mensagem = "OK";
                return(ParseRetorno(retorno));
            }
        }
예제 #2
0
        public RetornoModel <RetornoOsespModel> DeleteDesbloquearIngresso(int ingressoID)
        {
            RetornoModel <RetornoOsespModel> retorno = new RetornoModel <RetornoOsespModel>();

            int UsuarioOSESPID = Convert.ToInt32(ConfigurationManager.AppSettings["UsuarioOSESPID"]);
            int PluID          = Convert.ToInt32(ConfigurationManager.AppSettings["OSESPID_PLU"]);
            int PluUtilizadoID = Convert.ToInt32(ConfigurationManager.AppSettings["OSESPID_PLU_UTILIZADO"]);
            int BloqueioPadrao = Convert.ToInt32(ConfigurationManager.AppSettings["BLOQUEIO_PADRAO"]);

            try
            {
                using (var ado = new MasterADOBase())
                {
                    IngressoBO ingressoBO = new IngressoBO(ado);
                    retorno.Sucesso = ingressoBO.DesbloquearIngressoOSESP(ingressoID, UsuarioOSESPID, PluID, PluUtilizadoID, BloqueioPadrao);

                    if (retorno.Sucesso)
                    {
                        RetornoOsespModel rom      = new RetornoOsespModel();
                        tIngresso         ingresso = ingressoBO.BuscaRetornoOsesp(ingressoID);

                        switch (ingresso.Status)
                        {
                        case "B":
                            rom.Status = "Bloqueado";
                            break;

                        case "D":
                            rom.Status = "Desbloqueado";
                            break;

                        default:
                            rom.Status = ingresso.Status;
                            break;
                        }

                        rom.BloqueioID   = Convert.ToInt32(ingresso.BloqueioID);
                        rom.BloqueioNome = ingressoBO.BuscaNomeBloqueio(Convert.ToInt32(ingresso.BloqueioID));

                        retorno.Retorno = rom;
                    }
                }
            }
            catch (Exception ex)
            {
                retorno.Mensagem = ex.Message;
                retorno.Sucesso  = false;
                LogUtil.Error(ex);
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.InternalServerError, ParseRetorno(retorno)));
            }

            if (!retorno.Sucesso)
            {
                retorno.Mensagem = "Ingresso não encontrado ou não disponível para desbloqueio";
                NewRelicIgnoreTransaction();
                throw new HttpResponseException(Request.CreateResponse((HttpStatusCode)422, ParseRetorno(retorno)));
            }
            else
            {
                retorno.Mensagem = "OK";
                return(ParseRetorno(retorno));
            }
        }