Esempio n. 1
0
        public void AlteraCartaoEmAssinatura(string id_Api, CreateCardRequest cartaoApi, string idCartaoDb)
        {
            try
            {
                // Secret key fornecida pela Mundipagg
                string basicAuthUserName = SistemaSingleton.Instancia.TokenApi;
                // Senha em branco. Passando apenas a secret key
                string basicAuthPassword = "";

                var client = new MundiAPIClient(basicAuthUserName, basicAuthPassword);

                var assinaturaApi = new UpdateSubscriptionCardRequest
                {
                    Card = cartaoApi
                };

                var response = client.Subscriptions.UpdateSubscriptionCard(id_Api, assinaturaApi);

                var cartaoDal = new CartaoDal();

                cartaoDal.CartaoGravadoNaApiAtualizaBanco(idCartaoDb, response.Card.Id);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Esempio n. 2
0
        public string GravaAssinaturaApi(CreateSubscriptionRequest assinaturaApi)
        {
            // Secret key fornecida pela Mundipagg
            var basicAuthUserName = SistemaSingleton.Instancia.TokenApi;

            // Senha em branco. Passando apenas a secret key
            var basicAuthPassword = "";

            var client = new MundiAPIClient(basicAuthUserName, basicAuthPassword);

            var response = client.Subscriptions.CreateSubscription(assinaturaApi);

            assinaturaDal.AssinaturaGravadaNaApiAtualizaBanco(assinaturaApi.Metadata["id"], response.Id);

            assinaturaDal.GravaIdApiListaItens(response.Items, assinaturaApi.Metadata["id"]);

            var clienteDal = new ClienteDal();
            var codCliente = clienteDal.GetClienteByAssinatura(assinaturaApi.Metadata["id"]);

            clienteDal.ClienteGravado(codCliente, response.Customer.Id);

            var cartaoDal = new CartaoDal();
            var codCard   = cartaoDal.getCardByIdAssinatura(assinaturaApi.Metadata["id"]);

            cartaoDal.CartaoGravadoNaApiAtualizaBanco(codCard, response.Card.Id);

            return(response.Id);
        }
Esempio n. 3
0
        public void CancelaAssinaturaApi(string id_Api)
        {
            try
            {
                // Secret key fornecida pela Mundipagg
                string basicAuthUserName = SistemaSingleton.Instancia.TokenApi;
                // Senha em branco. Passando apenas a secret key
                string basicAuthPassword = "";

                var client = new MundiAPIClient(basicAuthUserName, basicAuthPassword);

                string subscrptionId = id_Api;

                var request = new CreateCancelSubscriptionRequest
                {
                    CancelPendingInvoices = true
                };

                var response = client.Subscriptions.CancelSubscription(subscrptionId, request);

                assinaturaDal.AssinaturaCanceladaAtualizaStatus(response.Metadata["id"]);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Esempio n. 4
0
        public void AlteraDataInicioAssinatura(string id_Api, int dias)
        {
            try
            {
                // Secret key fornecida pela Mundipagg
                string basicAuthUserName = SistemaSingleton.Instancia.TokenApi;
                // Senha em branco. Passando apenas a secret key
                string basicAuthPassword = "";

                var client = new MundiAPIClient(basicAuthUserName, basicAuthPassword);


                var request = new UpdateSubscriptionStartAtRequest
                {
                    StartAt = DateTime.UtcNow.AddDays(2)
                };


                client.Subscriptions.UpdateSubscriptionStartAt(id_Api, request);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            throw new NotImplementedException();
        }
        static IMundiAPIClient BuildClient()
        {
            // Configuration parameters and credentials
            string basicAuthUserName = "******"; // The username to use with basic authentication
            string basicAuthPassword = "";                         // The password to use with basic authentication

            IMundiAPIClient client = new MundiAPIClient(basicAuthUserName, basicAuthPassword);

            return(client);
        }
Esempio n. 6
0
        /// <summary>
        /// Edita o cliente cadastrado na API
        /// </summary>
        /// <param name="id_api">codigo do id da APi. ex: "cus_6l5dMWZ0hkHZ4XnE"</param>
        /// <param name="cliApi">Modelo da entidade cliente no formado de requisição da api</param>
        public void EditaClienteApi(string id_api, UpdateCustomerRequest cliApi)
        {
            try
            {
                // Secret key fornecida pela Mundipagg
                string basicAuthUserName = SistemaSingleton.Instancia.TokenApi;
                // Senha em branco. Passando apenas a secret key
                string basicAuthPassword = "";

                var client = new MundiAPIClient(basicAuthUserName, basicAuthPassword);

                var response = client.Customers.UpdateCustomer(id_api, cliApi);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Esempio n. 7
0
        public void ItemIncluirNaAssinatura(AssinaturaDb assinaturaDb, AssinaturaItemDb assinaturaItemDb, CreateSubscriptionItemRequest assinaturaItemApi)
        {
            try
            {
                // Secret key fornecida pela Mundipagg
                string basicAuthUserName = SistemaSingleton.Instancia.TokenApi;
                // Senha em branco. Passando apenas a secret key
                string basicAuthPassword = "";

                var client = new MundiAPIClient(basicAuthUserName, basicAuthPassword);

                var response = client.Subscriptions.CreateSubscriptionItem(assinaturaDb.Id_Api, assinaturaItemApi);

                assinaturaDal.ItemAssinaturaGravadaNaApiAtualizaBanco(assinaturaItemDb.Id.ToString(), response.Id);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Esempio n. 8
0
        public void ItemRemoverNaAssinatura(string assinaturaId_api, AssinaturaItemDb itemAssinatura)
        {
            try
            {
                // Secret key fornecida pela Mundipagg
                string basicAuthUserName = SistemaSingleton.Instancia.TokenApi;
                // Senha em branco. Passando apenas a secret key
                string basicAuthPassword = "";

                var client = new MundiAPIClient(basicAuthUserName, basicAuthPassword);

                var response = client.Subscriptions.DeleteSubscriptionItem(assinaturaId_api, itemAssinatura.Id_Api);

                assinaturaDal.IntivaItemDeAssinaturaRemovido(itemAssinatura.Id.ToString());
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Esempio n. 9
0
        public ListInvoicesResponse ListaFaturasPorAssinatura(string _id_Api, int _page = 1)
        {
            try
            {
                // Secret key fornecida pela Mundipagg
                string basicAuthUserName = SistemaSingleton.Instancia.TokenApi;
                // Senha em branco. Passando apenas a secret key
                string basicAuthPassword = "";

                var client = new MundiAPIClient(basicAuthUserName, basicAuthPassword);

                var response = client.Invoices.GetInvoices(subscriptionId: _id_Api, page: _page);

                return(response);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Esempio n. 10
0
        public void CancelaAssinaturaApi(FaturaDb faturaDb)
        {
            try
            {
                // Secret key fornecida pela Mundipagg
                string basicAuthUserName = SistemaSingleton.Instancia.TokenApi;
                // Senha em branco. Passando apenas a secret key
                string basicAuthPassword = "";

                var client = new MundiAPIClient(basicAuthUserName, basicAuthPassword);

                var response = client.Invoices.CancelInvoice(faturaDb.IdApi);

                faturaDal.FaturaCanceladaAtualizaStatus(response, faturaDb.Id);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Esempio n. 11
0
        public void AlteraDataFaturamentoAssinatura(AssinaturaDb assinatura)
        {
            try
            {
                // Secret key fornecida pela Mundipagg
                string basicAuthUserName = SistemaSingleton.Instancia.TokenApi;
                // Senha em branco. Passando apenas a secret key
                string basicAuthPassword = "";

                var client = new MundiAPIClient(basicAuthUserName, basicAuthPassword);

                var request = new UpdateSubscriptionBillingDateRequest
                {
                    NextBillingAt = Convert.ToDateTime(assinatura.Dia_Cobranca)
                };

                client.Subscriptions.UpdateSubscriptionBillingDate(assinatura.Id_Api, request);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Esempio n. 12
0
        //a rotina é um timer de 100ms para monitorar a porta de comunicação (COM4) ao aguardo de uma TAG RFID.
        //Quando chegar um conjunto de 40bits for redebido nessa porta, tal informação será armazenada na variavel X1

        private void Timer1_Tick(object sender, EventArgs e)
        {
            String x1 = "";



            if (serialPort1.IsOpen)
            {
                comando.Connection = conn;      // parametro para banco de dados

                x1 = serialPort1.ReadExisting();
            }

            //A rotina abaixo verifica se a variavel x1 recebeu a instrução da tag de 40bits atravez da porta COM4.
            //caso X1 ainda tenha o valor null continuará presa em um lopp aguardando TAG e essa tag será verificada novamente a cada
            //100ms devido ao timer implementado em "void Timer1_Tick"
            if (x1 != "")
            {
                //Assim que for feita a leitura de uma TAG RFID na porta serial emulada a variavel X1 assume o valor dessa TAG, afim de que seja
                //realizado um select no bando de dados em busda id do cliente relacionado.

                conn.Open();
                comando.CommandText = "select id from pessoa where RFID = '" + x1 + "'";
                comando.ExecuteScalar();
                SqlDataReader dr = comando.ExecuteReader();
                dr.Read();
                var idcliente = Convert.ToString(dr["id"]);
                conn.Close();

                x1            = "";
                textBox1.Text = "";
                textBox1.AppendText(idcliente);

                //A rotina abaixo realiza a consulta na base de dados da mundipagg, atravez do Id do cliente(carregada na variavel cachorrinho),
                //retornando os dados de nome, email,...
                string basicAuthUserName = "******";
                string basicAuthPassword = "";
                var    client            = new MundiAPIClient(basicAuthUserName, basicAuthPassword);
                var    response1         = client.Customers.GetCustomer(idcliente);
                textBox3.Text = response1.Name;
                textBox4.Text = response1.Email;
                textBox5.Text = response1.Type;


                conn.Open();
                comando.CommandText = "UPDATE pessoa SET email = '" + response1.Email + "', name = '" + response1.Name + "'   WHERE id  = '" + idcliente + "'";

                comando.ExecuteNonQuery();
                conn.Close();

                //a etapa abaixo sera de requeisitar dados do cartão passando o id do cliente.


                //aqui seria realizado a busca dos dados do cartão do cliente, mas nao consegui informação de como trabalhar com os dados
                //que receber dentro da String response2
                // var response2 = client.Customers.GetCards(idcliente);


                if (checkBox1.Checked)
                {
                    var valor   = textBox8.Text;
                    var cart    = textBox9.Text;
                    var request = new CreateChargeRequest()



                    {
                        Amount = Convert.ToInt32(valor),


                        CustomerId = idcliente,

                        Payment = new CreatePaymentRequest()
                        {
                            PaymentMethod = "credit_card",

                            CreditCard = new CreateCreditCardPaymentRequest()
                            {
                                //colocar proteção de if
                                CardId = cart,
                                Card   = new CreateCardRequest
                                {
                                    Cvv = "353",
                                }
                            }
                        }
                    };


                    {
                        try {
                            var response = client.Charges.CreateCharge(request);
                            textBox6.Text     = response.Status;
                            textBox5.Text     = response.Id;
                            checkBox1.Checked = false;
                        }
                        catch
                        {
                            MessageBox.Show("Esse Cartão não pertence ao cliente " + textBox3.Text + ". Por favor altere os dados");
                            textBox9.Focus();
                        }
                    }
                }
            }
        }
        public GetOrderResponse CreateMundiPaggOrder(CreateOrderRequest mundiPaggOrder)
        {
            var client = new MundiAPIClient(_basicAuthUserName, _basicAuthPassword);

            return(client.Orders.CreateOrder(mundiPaggOrder));
        }