public IHttpActionResult PutconfigCards(Guid id, configCards configCards) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != configCards.CardID) { return(BadRequest()); } db.Entry(configCards).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!configCardsExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public IHttpActionResult PostconfigCards(configCards configCards) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.configCards.Add(configCards); try { db.SaveChanges(); } catch (DbUpdateException) { if (configCardsExists(configCards.CardID)) { return(Conflict()); } else { throw; } } return(CreatedAtRoute("DefaultApi", new { id = configCards.CardID }, configCards)); }
public IHttpActionResult GetconfigCards(Guid id) { configCards configCards = db.configCards.Find(id); if (configCards == null) { return(NotFound()); } return(Ok(configCards)); }
public IHttpActionResult DeleteconfigCards(Guid id) { configCards configCards = db.configCards.Find(id); if (configCards == null) { return(NotFound()); } db.configCards.Remove(configCards); db.SaveChanges(); return(Ok(configCards)); }
public IHttpActionResult AddCard() { configCards configCards = new configCards(); configCards.CardID = Guid.NewGuid(); configCards.HolderID = 2; configCards.NoOfCoins = 50; configCards.ActionDate = System.DateTime.Now; configCards.BranchID = 4; db.configCards.Add(configCards); db.SaveChanges(); return(Ok(configCards)); }
[Route("api/hajjCoin/VerifyTransaction/{cardQR}/{Total}")]///{SupplierID}")] public IHttpActionResult VerifyTransaction(string cardQR, int Total) { var cQR = Guid.Parse(cardQR); //return class contains password or not found if there is no password Messages msg = new Messages(); using (db = new HajjCoinsModel()) { configCards configCards = new configCards(); var card = db.configCards.Where(a => a.CardID == cQR).ToList(); if (card.Count > 0) { var coin = db.configCards.Where(m => m.NoOfCoins >= Total).ToList(); //Check no of coins if (coin.Count > 0) { msg.message = "Amount of " + Total + " hajjCoins will be debited from your account."; msg.status = true; return(Ok(msg)); } else { msg.message = "Your hajjCoins balance is not enough"; msg.status = false; return(Ok(msg)); } } else { msg.message = "Your hajjCoins card Not Found"; msg.status = false; return(Ok(msg)); } } }
public IHttpActionResult PerformTransaction(string cardQR, int Total, int SupplierID, int password) { var cQR = Guid.Parse(cardQR); //return class contains password or not found if there is no password Messages msg = new Messages(); using (db = new HajjCoinsModel()) { configCards configCards = new configCards(); var CoinsCount = db.configCards.Where(a => a.CardID == cQR).Select(a => a.NoOfCoins).FirstOrDefault(); if (CoinsCount >= Total) { //var coinsList = db.Coins.Where(a => a.CardID == cQR).ToList(); //var validCoins = (from coinsList in db.Coins // join usedList in db.TransactionsCoinsSupplier // on coinsList.CoinID equals usedList.CoinsID // where db.TransactionsCoinsSupplier.Contains(usedList.CoinsID) // select new { coinsList.CoinID }).ToList(); var trans_coinList = db.TransactionsCoinsSupplier.Select(x => x.CoinsID).ToArray(); var validCoins = db.Coins.Where(p => !trans_coinList.Contains(p.CoinID)).ToList(); if (validCoins.Count > 0) { var cardCoin = db.configCards.Where(a => a.CardID == cQR).FirstOrDefault(); db.Entry(cardCoin).State = EntityState.Modified; cardCoin.NoOfCoins -= Total; db.SaveChanges(); Transaction tr = new Transaction(); tr.TotalCoinsUsed = Total; tr.TransactionDate = System.DateTime.Now; tr.SupplyerID = SupplierID; db.Transaction.Add(tr); db.SaveChanges(); for (int i = 0; i < Total; i++) { TransactionsCoinsSupplier coin = new TransactionsCoinsSupplier(); coin.CoinsID = validCoins[i].CoinID; coin.TransactionID = tr.TransactionID; db.TransactionsCoinsSupplier.Add(coin); } msg.message = Total + " hajjCoins successfully received"; msg.status = true; return(Ok(msg)); } else { msg.message = "Your hajjCoins balance is not enough"; msg.status = false; return(Ok(msg)); } } else { msg.message = "Your hajjCoins balance is not enough"; msg.status = false; return(Ok(msg)); } } }