public JsonResult AddCard(int cardNumber, CardAmounts cardAmounts)//List<int> where, int howMany, string newDeck) { try { if (!User.Identity.IsAuthenticated) { return(new CustomJsonResult(new List <string> { "Please Log In " })); } else { IDbConnection db = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString); var idCheck = $@"SELECT ID FROM Users WHERE Email = '{User.Identity.Name}'"; var id = db.Query <int>(idCheck).First(); if (cardAmounts.LibraryAmount != cardAmounts.OrigionalLibraryAmount) { _cardData.UpdateLibraryCardAmount(cardNumber, id, cardAmounts.LibraryAmount, cardAmounts.CurrentRecordId); } _cardData.UpdateDeckCardAmounts(cardAmounts.DeckInfo, cardNumber, id); } return(new CustomJsonResult { Data = "test", JsonRequestBehavior = JsonRequestBehavior.AllowGet }); } catch (Exception ex) { return(new CustomJsonResult(new List <string> { ex.Message })); } }
public CardAmounts GetCardAmountForUser(int cardId, int userId) { string users = (userId == 3 || userId == 4) ? "3, 4" : userId.ToString(); var amounts = new CardAmounts(); var sqlString = $@"SELECT Name FROM Cards WHERE ID = {cardId}"; amounts.CardId = cardId; amounts.CardName = Connection.Query <string>(sqlString, transaction: Transaction).FirstOrDefault(); sqlString = $@"SELECT Amount FROM Library WHERE UserId IN ({users}) AND CardId = {cardId} AND IsActive = 1"; amounts.LibraryAmount = Connection.Query <int>(sqlString, transaction: Transaction).FirstOrDefault(); sqlString = $@"SELECT LibraryId FROM Library WHERE UserId IN ({users}) AND CardId = {cardId} AND IsActive = 1"; amounts.CurrentRecordId = Connection.Query <int>(sqlString, transaction: Transaction).FirstOrDefault(); amounts.OrigionalLibraryAmount = amounts.LibraryAmount; sqlString = $@"SELECT n.Id AS DeckId, DeckName, ISNULL(Amount, 0) AS DeckAmount, ISNULL(Amount,0) AS OrigionalDeckAmount, DecksId AS CurrentRecordId FROM DeckNames n LEFT JOIN Decks d ON d.DeckId = n.ID AND d.CardId = {cardId} AND d.IsActive = 1 WHERE n.UserId = {userId}"; amounts.DeckInfo = Connection.Query <CardAmountsPerDeck>(sqlString, transaction: Transaction).ToList(); amounts.DeckInfo.Add(new CardAmountsPerDeck { CurrentRecordId = 0, DeckId = 0, DeckName = "", DeckAmount = 0, OrigionalDeckAmount = 0 }); return(amounts); }
public JsonResult GetAddInfo(int cardId) { try { IDbConnection db = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString); string idCheck = $@"SELECT ID FROM Users WHERE Email = '{User.Identity.Name}'"; var id = db.Query <int>(idCheck).First(); CardAmounts results = _cardData.GetCardAmountForUser(cardId, id); return(new CustomJsonResult { Data = results, JsonRequestBehavior = JsonRequestBehavior.AllowGet }); } catch (Exception ex) { return(new CustomJsonResult(new List <string> { ex.Message })); } }