public static RetornoModel <string[]> EfetuaVendaExterna(CompraModel compra, CompraPagamentoExternoModel compraPagamento) { var oCarrinho = new Carrinho(); var bilheteria = new IRLib.Bilheteria(); var retornoMSG = "Ok"; try { int clienteId = compra.ClienteID; string sessionId = compra.SessionID; var oCliente = new Cliente(); oCliente.Ler(clienteId); RetornoModel <EstruturaReservaInternet> reservaInternet = MontarEstruturaReservaExterno(compraPagamento, compra); if (!reservaInternet.Sucesso) { LogUtil.Error(string.Format("##EfetuaVendaExterna.ERROR## SESSION {0}, MSG {1}", compra.SessionID, reservaInternet.Mensagem)); return(new RetornoModel <string[]>() { Sucesso = false, Mensagem = reservaInternet.Mensagem }); } if (reservaInternet.Retorno.CaixaID == 0) { reservaInternet.Retorno.CaixaID = bilheteria.VerificaCaixaInternet(reservaInternet.Retorno.UsuarioID, reservaInternet.Retorno.LojaID); } var oPagamento = EstruturaPagamentoExterno.Montar(compraPagamento.formaPagamento.IR_FormaPagamentoID, compraPagamento.valor, compraPagamento.formaPagamento.Parcelas, compraPagamento.codigoAutorizacao, compraPagamento.NSU, compraPagamento.IP, compraPagamento.formaPagamento.Nome); var retornoVenda = bilheteria.VenderExterno(oPagamento, oCarrinho.IngressosTaxasCarrinho(clienteId, sessionId), clienteId, sessionId, reservaInternet.Retorno); LogUtil.Info(string.Format("##EfetuaVendaExterna.SUCCESS## SESSION {0}, SENHA {1}", compra.SessionID, retornoVenda)); return(new RetornoModel <string[]>() { Sucesso = true, Mensagem = retornoMSG, Retorno = retornoVenda }); } catch (ApplicationException ex) { LogUtil.Error(ex); return(new RetornoModel <string[]> { Sucesso = false, Mensagem = ex.Message }); } }
public static RetornoModel <EstruturaReservaInternet> MontarEstruturaReservaExterno(CompraPagamentoExternoModel pagamento, CompraModel compra) { if (compra.EstruturaVenda == null) { compra.EstruturaVenda = new CompraEstruturaVendaModel(); } if (compra.EstruturaVenda.CanalID == 0 || compra.EstruturaVenda.LojaID == 0 || compra.EstruturaVenda.UsuarioID == 0) { int canalTipoPOS; int.TryParse(ConfiguracaoAppUtil.Get("CanalTipoPOS"), out canalTipoPOS); compra.EstruturaVenda.LojaID = Convert.ToInt32(ConfiguracaoAppUtil.Get(enumConfiguracaoBO.POSLojaID)); compra.EstruturaVenda.UsuarioID = Convert.ToInt32(ConfiguracaoAppUtil.Get(enumConfiguracaoBO.POSUsuarioID)); compra.EstruturaVenda.CanalID = Convert.ToInt32(ConfiguracaoAppUtil.Get(enumConfiguracaoBO.CanalPOS)); compra.EstruturaVenda.CanalTipo = canalTipoPOS; } var estrutura = new EstruturaReservaInternet() { CaixaID = compra.EstruturaVenda.CaixaID, LojaID = compra.EstruturaVenda.LojaID, UsuarioID = compra.EstruturaVenda.UsuarioID, CanalID = compra.EstruturaVenda.CanalID, ClienteID = compra.ClienteID, SessionID = compra.SessionID, GUID = Guid.NewGuid().ToString(), }; return(new RetornoModel <EstruturaReservaInternet>() { Mensagem = "OK", Sucesso = true, Retorno = estrutura }); }