Exemple #1
0
        /// <summary>
        /// Este evento consulta el cliente en la base de datos
        /// si el cliente no consulta, no se habilitará el agregar detalles
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                ClienteADO clienteADO = new ClienteADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString);
                Cliente    cliente    = clienteADO.ConsultarCliente(Convert.ToInt32(txtCedula.Text.Trim()));

                if (cliente != null)
                {
                    txtNombre.Text = cliente.Nombre;
                    ListarPagos(cliente);
                    clienteEncontrado = true;

                    if (clienteEncontrado)
                    {
                        groupBox2.Enabled = true;
                    }
                }
                else
                {
                    throw new Exception("Cliente no se encuentra registrado\nPrimeramente debe registrarlo");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Exemple #2
0
        private void btnAgregar_Click(object sender, EventArgs e)
        {
            using (TransactionScope scope = new TransactionScope())
            {
                try
                {
                    Cliente    cliente    = new Cliente(Convert.ToInt32(txtCedula.Text.Trim()), txtNombre.Text.Trim(), txtTelefono.Text.Trim(), txtDireccion.Text.Trim());
                    ClienteADO clienteADO = new ClienteADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString);
                    clienteADO.RegistrarCliente(cliente);

                    if (ValidarSeleccionPago())
                    {
                        FacilidadPago    facilidad    = new FacilidadPago(cliente.Cedula, vEfectivo, vTarjeta, vCheque);
                        FacilidadPagoADO facilidadADO = new FacilidadPagoADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString);
                        facilidadADO.RegistrarFacilidadPago(facilidad);
                    }
                    else
                    {
                        throw new Exception("Debe elegir al menos una facilidad de pago para el cliente");
                    }


                    scope.Complete();
                    MessageBox.Show("Cliente registrado correctamente", "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    EstadoInicial();
                }
                catch (Exception ex)
                {
                    scope.Dispose();
                    MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Exemple #3
0
        private void btnModificar_Click(object sender, EventArgs e)
        {
            using (TransactionScope scope = new TransactionScope())
            {
                try
                {
                    Cliente    cliente    = new Cliente(Convert.ToInt32(txtCedula.Text.Trim()), txtNombre.Text.Trim(), txtTelefono.Text.Trim(), txtDireccion.Text.Trim());
                    ClienteADO clienteADO = new ClienteADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString);
                    clienteADO.ModificarCliente(cliente);


                    FacilidadPago    facilidad    = new FacilidadPago(cliente.Cedula, vEfectivo, vTarjeta, vCheque);
                    FacilidadPagoADO facilidadADO = new FacilidadPagoADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString);
                    facilidadADO.ModificarFacilidadPago(facilidad);

                    scope.Complete();
                    MessageBox.Show("Cliente modificado correctamente", "Información", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    EstadoInicial();
                }
                catch (Exception ex)
                {
                    scope.Dispose();
                    EstadoInicial();
                    MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
        public FRM_ListaClientes()
        {
            InitializeComponent();

            ClienteADO clienteADO = new ClienteADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString);

            dataGridView1.DataSource = clienteADO.ListaClientes().Tables[0];
        }
 public ClienteServico()
 {
     _usuario             = new UsuarioServico();
     _repADO              = new ClienteADO();
     _rep                 = new ClienteEF();
     _tipoPrograma        = EnProgramas.Cliente;
     _repositorioConsulta = new ClienteRepositorioDapper();
     _revendaServico      = new RevendaServico();
     _repClienteEmail     = new ClienteEmailEF();
     _repClienteModulo    = new ClienteModuloEF();
     _contatoServico      = new ContatoServico();
 }
Exemple #6
0
        private void btnEliminar_Click(object sender, EventArgs e)
        {
            using (TransactionScope scope = new TransactionScope())
            {
                try
                {
                    if (MessageBox.Show("Desea eliminar el cliente", "Eliminar Cliente", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        Cliente    cliente    = new Cliente(Convert.ToInt32(txtCedula.Text.Trim()), txtNombre.Text.Trim(), txtTelefono.Text.Trim(), txtDireccion.Text.Trim());
                        ClienteADO clienteADO = new ClienteADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString);

                        FacilidadPago    facilidad    = new FacilidadPago(cliente.Cedula, vEfectivo, vTarjeta, vCheque);
                        FacilidadPagoADO facilidadADO = new FacilidadPagoADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString);


                        if (facilidadADO.EliminarFacilidadPago(facilidad))
                        {
                            if (clienteADO.EliminarCliente(cliente))
                            {
                                scope.Complete();
                                EstadoInicial();
                                MessageBox.Show("Cliente " + cliente.Nombre + " eliminado", "Eliminar Cliente", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            }
                            else
                            {
                                scope.Dispose();
                                EstadoInicial();
                            }
                        }
                        else
                        {
                            scope.Dispose();
                            EstadoInicial();
                            MessageBox.Show("Error al eliminar cliente", "Eliminar Cliente", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                    else
                    {
                        EstadoInicial();
                        scope.Dispose();
                    }
                }
                catch (Exception ex)
                {
                    scope.Dispose();
                    MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Exemple #7
0
        private void btnConsultar_Click(object sender, EventArgs e)
        {
            try
            {
                VentaENCADO ventaEncabezadoADO = new VentaENCADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString);
                VentaENC    ventaENC           = ventaEncabezadoADO.ConsultarEncabezado(Convert.ToInt32(txtCodigo.Text));

                if (ventaENC != null)
                {
                    Cliente cliente = new ClienteADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString).ConsultarCliente(ventaENC.Cedula);


                    ListarPagos(cliente);
                    txtCedula.Text           = "" + ventaENC.Cedula;
                    txtNombre.Text           = cliente.Nombre;
                    cbxTipoPago.SelectedItem = "" + ventaENC.TipoPago;
                    txtDescuento.Text        = "" + ventaENC.MontoDescuento;
                    txtTotal.Text            = "" + ventaENC.Total;
                    txtSubtotal.Text         = "" + ventaENC.Subtotal;
                    txtTotalDolares.Text     = "" + ventaENC.TotalDolares;


                    VentaDetalleADO ventaDetalleAdo = new VentaDetalleADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString);

                    dataGridView1.DataSource = ventaDetalleAdo.ListaDetalles(ventaENC.IDVenta).Tables[0];
                    dataGridView1.Visible    = true;

                    HabilitarModEli();
                }
                else
                {
                    DialogResult respuesta = MessageBox.Show("La venta no se encuentra registrada\n¿Desea agregarla?", "Mensaje", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
                    if (respuesta == DialogResult.Yes)
                    {
                        HabilitarAgregar();
                    }//fin if dialogo
                    else
                    {
                        this.EstadoInicial();
                    }//fin de else dialogo
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        public static PedidoDetalheRet RetornaPedidoDetalhe(string codpedpagar, string datasource, string schema)
        {
            PedidoDetalheRet ret = new PedidoDetalheRet();


            ret.pedidoPagamentoDet = RetornaPedidoPagamentoDet(codpedpagar, datasource, schema);
            ret.lstprodutos        = RetornaPedidoPagamento(codpedpagar, datasource, schema);

            PedidoPaypal pedp = (from a in ret.lstprodutos
                                 select a).FirstOrDefault();


            ret.endereco = EnderecoADO.RetornaEnderecoById(pedp.cdenderecoentrega, datasource, schema);

            var cdcliente = (from a in ret.lstprodutos
                             select a).FirstOrDefault();

            ret.cliente = ClienteADO.RetornaClientById(cdcliente.cdcliente, datasource, schema);

            return(ret);
        }
Exemple #9
0
        private void btnConsultar_Click(object sender, EventArgs e)
        {
            try
            {
                ClienteADO clienteADO = new ClienteADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString);
                Cliente    cliente    = clienteADO.ConsultarCliente(Convert.ToInt32(txtCedula.Text.Trim()));

                FacilidadPagoADO facilidadADO = new FacilidadPagoADO(ConfigurationManager.ConnectionStrings["StringVehiculo"].ConnectionString);
                FacilidadPago    facilidad    = facilidadADO.ConsultarFacilidadPago(Convert.ToInt32(txtCedula.Text.Trim()));

                if (cliente != null)
                {
                    txtNombre.Text    = cliente.Nombre;
                    txtTelefono.Text  = cliente.Telefono;
                    txtDireccion.Text = cliente.Direccion;
                    ValidarChecks(facilidad);

                    HabilitarModificarEliminar();
                }
                else
                {
                    DialogResult respuesta = MessageBox.Show("El cliente no se encuentra registrado\n¿Desea agregarlo?", "Mensaje", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
                    if (respuesta == DialogResult.Yes)
                    {
                        HabilitarAgregar();
                    }    //fin if dialogo
                    else
                    {
                        this.EstadoInicial();
                    }    //fin de else dialogo
                }
            }
            catch (Exception ex)
            {
                EstadoInicial();
                MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Exemple #10
0
 public ClienteADOTest1() : base()
 {
     clienteADO = new ClienteADO(ado);
 }
Exemple #11
0
        public RetornoModel <SetExpressCheckoutResponseModel> setExpressCheckout(CompraModel compra, string returnUrl, string cancelUrl)
        {
            var retorno = new RetornoModel <SetExpressCheckoutResponseModel>();
            var setExpressCheckoutResponse = new SetExpressCheckoutResponseModel();

            if (compra.Login != null && compra.Login.ID > 0)
            {
                if (compra.CarrinhoItens != null && compra.CarrinhoItens.Any())
                {
                    if (compra.EntregaControleID > 0)
                    {
                        using (var ado = new MasterADOBase())
                        {
                            var eventoId = compra.CarrinhoItens.FirstOrDefault().EventoID;

                            var urlPagamentoAprovadoUsuario = !string.IsNullOrEmpty(returnUrl) ? returnUrl : ConfigurationManager.AppSettings["urlPagamentoAprovadoUsuario"];
                            urlPagamentoAprovadoUsuario = string.Format(urlPagamentoAprovadoUsuario, eventoId);

                            var urlPagamentoCanceladoUsuario = !string.IsNullOrEmpty(cancelUrl) ? cancelUrl : ConfigurationManager.AppSettings["urlPagamentoCanceladoUsuario"];
                            urlPagamentoCanceladoUsuario = string.Format(urlPagamentoCanceladoUsuario, eventoId);

                            var clienteADO = new ClienteADO(ado);

                            var cliente = clienteADO.Consultar(compra.ClienteID);

                            LogUtil.Debug(string.Format("##Get.PayPal.Token Consultar cliente## SESSION {0}, CLIENTE ID {1}", compra.SessionID, cliente.ID));

                            var endereco = clienteADO.ConsultarEndereco(compra.ClienteEnderecoID);

                            LogUtil.Debug(string.Format("##Get.PayPal.Token Consultar endereço## SESSION {0}, CLIENTE ID {1}", compra.SessionID, cliente.ID));

                            //Get token

                            LogUtil.Debug(string.Format("##Get.PayPal.Token SetExpressCheckout## CLIENTE ID {0}, URL PAGAMENTO APROVADO {1}, URL PAGAMENTO CANCELADO {2}", cliente.ID, urlPagamentoAprovadoUsuario, urlPagamentoCanceladoUsuario));

                            var expressCheckoutApi = PayPalApiFactory.instance.ExpressCheckout();
                            var setExpressCheckout = expressCheckoutApi.SetExpressCheckout(urlPagamentoAprovadoUsuario, urlPagamentoCanceladoUsuario);

                            setExpressCheckout.LocaleCode   = LocaleCode.BRAZILIAN_PORTUGUESE;
                            setExpressCheckout.CurrencyCode = CurrencyCode.BRAZILIAN_REAL;

                            foreach (var item in compra.CarrinhoItens)
                            {
                                var descricao = string.Format("{0} - {1} - {2}", item.ApresentacaoDataHoraAsDateTime.ToString("dd/MM/yyyy"), item.PrecoNome, item.Setor);
                                var preco     = Convert.ToDouble(item.PrecoValor) + Convert.ToDouble(item.TaxaConveniencia);
                                setExpressCheckout.PaymentRequest(0).addItem(item.Evento, 1, preco, descricao);

                                LogUtil.Debug(string.Format("##Get.PayPal.Token SetExpressCheckout## CLIENTE ID {0}, ITEM CARRINHO {1}, PREÇO {2}", cliente.ID, descricao, preco));
                            }

                            var entrega = compra.EntregaControles.FirstOrDefault(x => x.ID == compra.EntregaControleID);

                            LogUtil.Debug(string.Format("##Get.PayPal.Token SetExpressCheckout## CLIENTE ID {0}, TAXA DE ENTREGA {1}", cliente.ID, entrega.Entrega.Nome));

                            setExpressCheckout.PaymentRequest(0).addItem("Taxa de entrega", 1, Convert.ToDouble(entrega.Valor), entrega.Entrega.Nome);

                            setExpressCheckout.PaymentRequest(0).CurrencyCode = CurrencyCode.BRAZILIAN_REAL;

                            if (endereco != null && endereco.ID > 0)
                            {
                                LogUtil.Debug(string.Format("##Get.PayPal.Token SetExpressCheckout## CLIENTE ID {0}, ENDEREÇO ID {1}", cliente.ID, endereco.ID));

                                setExpressCheckout.AddressOverride = true;

                                var enderecoCompleto = string.Format("{0}, {1} {2} - {3}", endereco.Endereco, endereco.Numero, endereco.Complemento, endereco.Bairro);

                                setExpressCheckout.PaymentRequest(0).ShipToName        = endereco.Nome;
                                setExpressCheckout.PaymentRequest(0).ShipToStreet      = enderecoCompleto;
                                setExpressCheckout.PaymentRequest(0).ShipToZip         = endereco.CEP;
                                setExpressCheckout.PaymentRequest(0).ShipToState       = endereco.Estado;
                                setExpressCheckout.PaymentRequest(0).ShipToCity        = endereco.Cidade;
                                setExpressCheckout.PaymentRequest(0).ShipToCountryCode = LocaleCode.BRAZIL.ToString();

                                if (!string.IsNullOrEmpty(cliente.DDDCelular) && !string.IsNullOrEmpty(cliente.Celular))
                                {
                                    setExpressCheckout.PaymentRequest(0).ShipToPhoneNum = string.Format("{0}{1}", cliente.DDDCelular, cliente.Celular);
                                }
                            }
                            else
                            {
                                setExpressCheckout.NoShipping = true;
                            }

                            setExpressCheckout.MaxAmount = Convert.ToDouble(compra.Total.ValorTotal);

                            var response = setExpressCheckout.execute();

                            if (response.ResponseNVP.Ack == Ack.SUCCESS)
                            {
                                setExpressCheckoutResponse.token = response.Token;

                                retorno.Sucesso  = true;
                                retorno.Mensagem = "OK";

                                LogUtil.Info(string.Format("##Get.PayPal.Token SetExpressCheckout.SUCCESS## SESSION {0}, TOKEN {1}", compra.SessionID, setExpressCheckoutResponse.token));
                            }
                            else
                            {
                                retorno.Sucesso  = false;
                                retorno.Mensagem = "Não foi possível efetuar o pagamento com PayPal. Tente novamente ou selecione outra forma de pagamento";

                                LogUtil.Info(string.Format("##Get.PayPal.Token SetExpressCheckout.ERROR## SESSION {0}, MSG {1}", compra.SessionID, response.ResponseNVP.getError(0).LongMessage));
                            }
                        }
                    }
                    else
                    {
                        retorno.Sucesso  = false;
                        retorno.Mensagem = "Selecione uma entrega";

                        LogUtil.Debug(string.Format("##Get.PayPal.Token SetExpressCheckout.ERROR## SESSION {0}, MSG {1}", compra.SessionID, retorno.Mensagem));
                    }
                }
                else
                {
                    retorno.Sucesso  = false;
                    retorno.Mensagem = "Nenhum item encontrado no carrinho";

                    LogUtil.Debug(string.Format("##Get.PayPal.Token SetExpressCheckout.ERROR## SESSION {0}, MSG {1}", compra.SessionID, retorno.Mensagem));
                }
            }
            else
            {
                retorno.Sucesso  = false;
                retorno.Mensagem = "Nenhum cliente logado";

                LogUtil.Debug(string.Format("##Get.PayPal.Token SetExpressCheckout.ERROR## SESSION {0}, MSG {1}", compra.SessionID, retorno.Mensagem));
            }

            retorno.Retorno = setExpressCheckoutResponse;

            return(retorno);
        }
Exemple #12
0
        public HttpResponseMessage TrayPostTransaction(HttpRequestMessage request, [FromBody] TrayCheckoutPost tc)
        {
            ConfigAppMembers cf = Util.ConfigApp.getConfig();

            TrayCheckoutPaymentResponse tckResponse = new TrayCheckoutPaymentResponse();

            try
            {
                TrayCheckoutPayment tcp = new TrayCheckoutPayment();

                double vrtotalpedido = 0;

                CreateTransaction ctrans = new CreateTransaction();
                if (tc.payment_method_id == "6")
                {
                    tcp.payment_payment_method_id = tc.payment_method_id;
                    tcp.payment_split             = "1";
                }
                else
                {
                    //dados do cartao vem do post
                    tcp.payment_card_cvv           = tc.card_cvv;
                    tcp.payment_card_expdate_month = tc.card_expdate_month;
                    tcp.payment_card_expdate_year  = tc.card_expdate_year;
                    tcp.payment_card_name          = tc.card_name;
                    tcp.payment_card_number        = tc.card_number;
                    tcp.payment_payment_method_id  = tc.payment_method_id;
                    tcp.payment_split = tc.split.ToString();
                }

                //dados do produto
                List <PedidoPaypal> lstRet = PedidosADO.RetornaPedidoPagamento(tc.order_number, cf.datasource, cf.schema);
                vrtotalpedido = PedidosADO.RetornaValorTotalPedido(tc.order_number, cf.datasource, cf.schema);

                foreach (var prod in lstRet)
                {
                    transaction_product tp = new transaction_product();
                    tp.quantity    = Convert.ToInt32(prod.quantidade);
                    tp.price_unit  = prod.preco;
                    tp.description = prod.nmproduto;
                    tp.sku_code    = prod.cdproduto;
                    tcp.Products.Add(tp);
                    //vrtotalpedido += Convert.ToInt32(prod.quantidade) * prod.preco;
                }

                string cdenderecoentrega = lstRet[0].cdenderecoentrega;
                double frete             = lstRet[0].frete;
                //vrtotalpedido += frete;
                //Endereco do cliente
                Endereco ende = EnderecoADO.RetornaEnderecoById(cdenderecoentrega, cf.datasource, cf.schema);
                //frete
                if (frete > 0)
                {
                    tcp.shipping_price = frete;
                    tcp.shipping_type  = lstRet[0].txfrete;
                }



                //pegar os dados do cliente
                string  cdcliente = lstRet[0].cdcliente;
                cliente clie      = ClienteADO.RetornaClientById(cdcliente, cf.datasource, cf.schema);

                clientecontato contato = (from a in clie.Contatos
                                          where a.stdefault == "1" && !string.IsNullOrEmpty(a.email) && !string.IsNullOrEmpty(a.telresidencial) && !string.IsNullOrEmpty(a.dddresi)
                                          select a).FirstOrDefault();

                tcp.customer_addresses_city         = ende.txcidade;
                tcp.customer_addresses_neighborhood = ende.txbairro;
                tcp.customer_addresses_number       = ende.txnumero;
                tcp.customer_addresses_postal_code  = ende.cdcep;
                tcp.customer_addresses_state        = ende.cduf;
                tcp.customer_addresses_street       = ende.txlogradouro;
                tcp.customer_addresses_type_address = "D";//entrega



                /*
                 * 1	Contato
                 * 2	Pessoal
                 * 3	Profissional
                 * 4	Bancário
                 * 5	Comercial
                 * 6	Referência
                 * 7	Marketing
                 * 8	Financeiro
                 * 9	Logistica
                 */
                /* tray contato
                 *  Residencial	H
                 *  Celular	M
                 *  Comercial	W
                 */
                string tipocontato = "H";

                //switch (contato.cdtipocontato)
                //{
                //    case "1":
                //    case "2":
                //    case "3":
                //    case "4":
                //    case "6":
                //    case "7":
                //    case "9":
                //    case "8":
                //        {
                //            tipocontato = "H";
                //            break;
                //        }
                //    case "5":
                //        {
                //            tipocontato = "W";
                //            break;
                //        }
                //    default:
                //        break;
                //}

                /* tipo tel
                 * 4	Pessoal
                 * 1	Comercial
                 * 2	Residencial
                 * 3	Celular
                 */
                //clientecontatotelefone tel = (from t in contato.Telefones
                //                              where t.cdtipotelefone == "4"
                //                              select t).FirstOrDefault();

                //if (tel == null)
                //{
                //    tel = (from t in contato.Telefones
                //           where t.cdtipotelefone == "1"
                //           select t).FirstOrDefault();
                //}

                //if (tel == null)
                //{
                //    tel = (from t in contato.Telefones
                //           where t.cdtipotelefone == "2"
                //           select t).FirstOrDefault();
                //}

                //if (tel == null)
                //{
                //    tel = (from t in contato.Telefones
                //           where t.cdtipotelefone == "3"
                //           select t).FirstOrDefault();
                //}

                tcp.customer_contacts_number_contact = contato.dddresi + contato.telresidencial;//telefone

                /* tray
                 * Residencial	H
                 * Celular	M
                 * Comercial	W
                 */

                tcp.customer_contacts_type_contact = tipocontato;


                tcp.customer_cpf = string.IsNullOrEmpty(clie.CPF) ? clie.CNPJ : clie.CPF;


                /*
                 * 1    Comercial
                 * 2    Pessoal
                 * 3    NF-e
                 * 21	Envio de e-mail
                 */
                clientecontatoemail email = (from e in contato.Emails
                                             where e.cdtipoemail == "1"
                                             select e).FirstOrDefault();
                if (email == null)
                {
                    email = (from e in contato.Emails
                             where e.cdtipoemail == "2"
                             select e).FirstOrDefault();
                }
                if (email == null)
                {
                    email = (from e in contato.Emails
                             where e.cdtipoemail == "3"
                             select e).FirstOrDefault();
                }

                if (email == null)
                {
                    tcp.customer_email = contato.email;
                    tcp.customer_name  = clie.nome;
                }
                else
                {
                    tcp.customer_email = email.txemail;
                    tcp.customer_name  = clie.nome;
                }



                // nome cpf email

                /*tray
                 *  2     Diners
                 *  3     Visa
                 *  4     Mastercard
                 *  5     American Express
                 *  6     Boleto Bancário
                 *  7     Itaú Shopline (Transferência)
                 *  14    Peela
                 *  15    Discover
                 *  16    Elo
                 *  18    Aura
                 *  19    JCB
                 *  22    Transf. Online Bradesco
                 *  23    Transf. Online Banco do Brasil
                 */
                /*Optimus
                 * 1    Dinheiro
                 *  2   Visa
                 *  3   Master
                 *  4   Transferencia
                 *  5   Paypal
                 *  6   Traycheckout
                 *  7   Boleto
                 *  8   Diners club
                 *  9   American Express
                 *  10	Elo
                 *  11	Aura
                 *
                 */
                string cdformaopt = "";
                switch (tc.payment_method_id)
                {
                case "3": cdformaopt = "2"; break;

                case "2": cdformaopt = "8"; break;

                case "4": cdformaopt = "3"; break;

                case "5": cdformaopt = "9"; break;

                case "6": cdformaopt = "7"; break;

                case "16": cdformaopt = "10"; break;

                case "18": cdformaopt = "11"; break;

                default: cdformaopt = "4";
                    break;
                }

                List <pedidopagamento> lstpag = PagamentoADO.GravaPagamento(tc.order_number, "6", vrtotalpedido.ToString(), "N", "N", tcp.payment_split, "N", "0", tc.cdforn, "0", tckResponse.token_transaction, tckResponse.transaction_id, tckResponse.payment_response, tckResponse.status_id + "-" + tckResponse.status_name, tckResponse.payment_method_name, cf.datasource, cf.schema, cdformaopt);

                string codpagamento = lstpag[0].cdpag;
                string formdata     = string.Empty;
                string urltrans     = string.Empty;
                string qstring      = string.Empty;
                tcp.transaction_order_number = tc.order_number;

                tckResponse = ctrans.CriarTransacao(tcp, codpagamento, cf.token, out formdata, out urltrans, out qstring);
                Util.LogUtil.GravaLog(this, "urltrans-->" + urltrans, cf.Cnpj, Log.TipoLog.info);
                Util.LogUtil.GravaLog(this, "formdata-->" + formdata, cf.Cnpj, Log.TipoLog.info);
                Util.LogUtil.GravaLog(this, "qstring-->" + qstring, cf.Cnpj, Log.TipoLog.info);

                tckResponse.codpagamento = codpagamento;

                string tkcstring = JsonConvert.SerializeObject(tckResponse);
                Util.LogUtil.GravaLog(this, "RETORNO TRAYCHECOUT-->" + tkcstring, cf.Cnpj, Log.TipoLog.info);

                //if (tckResponse.sucessResponse)
                //{
                //    PagamentoADO.GravaPagamento(tc.order_number, "5", vrtotalpedido.ToString(), "N", "N", tckResponse.split, "N", codpagamento, tc.cdforn, "0", tckResponse.token_transaction, tckResponse.transaction_id, tckResponse.payment_response, tckResponse.status_id + "-" + tckResponse.status_name, tckResponse.payment_method_name, cf.datasource, cf.schema);

                //    // tckResponse.codpagamento = lstpag[0].cdpag;
                //}
            }
            catch (Exception e)
            {
                Util.LogUtil.GravaLog(this, "TrayPostTransaction : " + e.ToString(), cf.Cnpj, Log.TipoLog.erro);
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, "ERRO"));
            }
            return(Request.CreateResponse(HttpStatusCode.OK, tckResponse));
        }