Beispiel #1
0
        public static ResultsPair <LocalCoins.Portfolio> UpdatePortfolio(int portfolioId, string portfolioName, Types.PortfolioDisplayType displayType, bool isDefault)
        {
            try
            {
                using (PegasunDBContext db = new PegasunDBContext())
                {
                    Portfolios portfolio = db.Portfolios.FirstOrDefault(x => x.PortfolioId == portfolioId);
                    if (portfolio != null)
                    {
                        portfolio.Name        = portfolioName.Clean(new[] { Types.CleanInputType.AZ09CommonCharsSM });
                        portfolio.DisplayType = (short)displayType;
                        portfolio.IsDefault   = isDefault;

                        db.Update(portfolio);
                        db.SaveChanges();
                    }

                    return(ResultsPair.Create(ResultsItem.Success("Successfully updated portfolio name."), portfolio.Adapt <LocalCoins.Portfolio>()));
                }
            }
            catch (Exception ex)
            {
                Utilities.LogException(new[] { "UpdatePortfolio", $"portfolioId:{portfolioId},portfolioName:{portfolioName}" }, ex);
                return(ResultsPair.CreateError <LocalCoins.Portfolio>($"Unable to update portfolio. {ex.Message}"));
            }
        }
Beispiel #2
0
        public static async Task <ResultsItem> UpdateUserCoinAsync(LocalCoins.CryptoCoin coin)
        {
            try
            {
                using (PegasunDBContext db = new PegasunDBContext())
                {
                    Coins serviceCoin = db.Coins.FirstOrDefault(x => x.CoinId == coin.CoinId);
                    if (serviceCoin == null)
                    {
                        return(ResultsItem.Error("This coin was not found."));
                    }

                    serviceCoin.Shares                = coin.Shares;
                    serviceCoin.CoinCurrency          = (short)coin.CoinCurrency;
                    serviceCoin.PricePerUnit          = coin.PricePerUnit;
                    serviceCoin.TotalPricePaidUsd     = coin.TotalPricePaidUSD;
                    serviceCoin.Exchange              = (short)coin.Exchange;
                    serviceCoin.OrderType             = (short)coin.OrderType;
                    serviceCoin.OrderDate             = coin.OrderDate;
                    serviceCoin.SoldCoinCurrency      = (short)coin.SoldCoinCurrency;
                    serviceCoin.SoldPricePerUnit      = coin.SoldPricePerUnit;
                    serviceCoin.TotalSoldPricePaidUsd = coin.TotalSoldPricePaidUSD;

                    db.Update(serviceCoin);
                    await db.SaveChangesAsync();
                }

                return(ResultsItem.Success("Successfully updated coin."));
            }
            catch (Exception ex)
            {
                Utilities.LogException(new[] { "UpdateUserCoinAsync", $"coinId:{coin.CoinId},portfolioId:{coin.PortfolioId}" }, ex);
                return(ResultsItem.Error($"Unable to updated coin. {ex.Message}"));
            }
        }