Beispiel #1
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);
            }
        }
Beispiel #2
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);
            }
        }
Beispiel #3
0
        public static CreateSubscriptionItemRequest ConverteItemNovoDbEmApi(AssinaturaItemDb assinaturaItem)
        {
            try
            {
                var item = new CreateSubscriptionItemRequest
                {
                    Description   = assinaturaItem.Descricao,
                    Cycles        = assinaturaItem.Ciclos,
                    Quantity      = assinaturaItem.Quant,
                    PricingScheme = new CreatePricingSchemeRequest
                    {
                        Price = assinaturaItem.GetValor()
                    }
                };

                return(item);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Beispiel #4
0
        public static UpdateSubscriptionItemRequest ConverteItemAlteradoDbEmApi(AssinaturaItemDb assinaturaItem)
        {
            try
            {
                var item = new UpdateSubscriptionItemRequest
                {
                    Description   = assinaturaItem.Descricao,
                    Cycles        = assinaturaItem.Ciclos,
                    Quantity      = assinaturaItem.Quant,
                    PricingScheme = new UpdatePricingSchemeRequest
                    {
                        Price = assinaturaItem.GetValor()
                    },
                    Status = assinaturaItem.Status == "A" ? "active" : "inactive"
                };

                return(item);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Beispiel #5
0
        /// <summary>
        /// Busca UM item de assinatura
        /// </summary>
        /// <param name="id">id do item</param>
        /// <returns></returns>
        public AssinaturaItemDb GetItemAssinatura(string id)
        {
            const string metodo = "GetItemAssinatura";

            try
            {
                var item = new AssinaturaItemDb();

                var sql = new StringBuilder();

                sql.Append("select i.id, i.id_assinatura, i.descricao, i.ciclos, i.quant, i.valor, i.status, i.id_api from rec_assinatura_item i ");
                sql.Append("where i.id = @id");

                using (var conn = ConexaoBd.GetConnection())
                {
                    using (var cmd = new SqlCommand(sql.ToString(), conn))
                    {
                        cmd.Parameters.Clear();
                        cmd.Parameters.AddWithValue("@id", id);

                        using (var dr = cmd.ExecuteReader())
                        {
                            while (dr.Read())
                            {
                                item.Id            = Convert.ToInt32(dr["id"]);
                                item.Id_Assinatura = Convert.ToInt32(dr["id_assinatura"]);
                                item.Descricao     = dr["descricao"].ToString();
                                item.Ciclos        = Convert.ToInt32(dr["ciclos"]);
                                item.Quant         = Convert.ToInt32(dr["quant"]);
                                item.Status        = dr["status"].ToString();
                                item.Id_Api        = dr["id_api"].ToString();
                                item.Valor         = Convert.ToDouble(dr["valor"]);
                            }
                        }
                    }
                }

                return(item);
            }
            catch (SqlException sqlException)
            {
                string strMensagem = "";
                strMensagem = LogDatabaseErrorUtil.CreateErrorDatabaseMessage(sqlException);
                LogDatabaseErrorUtil.LogFileWrite(strMensagem, metodo);

                sqlException.Data["MensagemCustomizada"] = LogDatabaseErrorUtil.ValidateDataBaseErrorNumber(sqlException.Number);
                sqlException.Data["Metodo"] = metodo;
                sqlException.Data["Classe"] = Camada;
                sqlException.Data["Hora"]   = DateTime.Now;

                throw;
            }
            catch (Exception ex)
            {
                string strMensagem = "";

                strMensagem = LogDatabaseErrorUtil.CreateErrorMessage(ex);
                LogDatabaseErrorUtil.LogFileWrite(strMensagem, metodo);

                ex.Data["MensagemCustomizada"] = "Ocorreu um erro ao tentar executar a operação.";
                ex.Data["Metodo"] = metodo;
                ex.Data["Classe"] = Camada;
                ex.Data["Hora"]   = DateTime.Now;

                throw;
            }
        }