public IHttpActionResult DepositHGSCard(DepositCard req) { try { if (!CacheManager.HGSCardList.Any(x => x.CardNo == req.CardNo)) { response.IsSuccess = false; response.Message = "Kart bilgisi bulunamadı."; return(Json(response)); } if (req.PaymentPrice < 0) { response.IsSuccess = false; response.Message = "Geçersiz bir işlem yürütüldü."; return(Json(response)); } HGSCard card = CacheManager.HGSCardList.Find(x => x.CardNo == req.CardNo); card.Balance += req.PaymentPrice; CacheManager.PaymentList.Add(new Payment() { Card = card, PaymentDate = DateTime.Now, PaymentType = req.PaymentType }); response.IsSuccess = true; response.Message = $"Yükleme başarıyla gerçekleştirildi. Hesabınıza {req.PaymentPrice} TL bakiye yüklendi."; return(Json(response)); } catch (Exception) { response.IsSuccess = false; response.Message = "Girdiğiniz bilgilerin doğruluğunu kontrol ediniz."; return(Json(response)); } }
private static Card GetCard(User user, BankServerContext context) { try { Console.Write("New card number: "); string cardNum = Console.ReadLine(); if (!cardNum.All(char.IsDigit) || cardNum.Length < 4) { Console.WriteLine("Invalid card number. Must be only numbers and no less than 4 digits."); return(null); } if (context.Card.FirstOrDefault(card => card.CardNum == cardNum) != null) { Console.WriteLine("Card already exists."); return(null); } Console.Write("Enter balance: "); int balance = Int32.Parse(Console.ReadLine()); Console.Write("Enter pin: "); string pin = Console.ReadLine(); if (!pin.All(char.IsDigit) || pin.Length != 4) { Console.WriteLine("Invalid pin. Must be only numbers and 4 digits."); return(null); } Console.Write("Enter card type (checking, credit, deposit): "); string type = Console.ReadLine(); switch (type) { case "checking": CheckingCard card = new CheckingCard(); card.CardNum = cardNum; card.CardUser = user; card.UserId = user.UserId; card.DateCreated = DateTime.Now; card.Balance = balance; card.Pin = ComputeSha256Hash(pin); return(card); case "credit": CreditCard crCard = new CreditCard(); crCard.CardNum = cardNum; crCard.CardUser = user; crCard.UserId = user.UserId; crCard.DateCreated = DateTime.Now; crCard.OwnMoney = balance; Console.Write("Enter credit limit: "); int limit = Int32.Parse(Console.ReadLine()); crCard.Limit = limit; crCard.Pin = ComputeSha256Hash(pin); return(crCard); case "deposit": DepositCard dpCard = new DepositCard(); dpCard.CardNum = cardNum; dpCard.CardUser = user; dpCard.UserId = user.UserId; dpCard.DateCreated = DateTime.Now; dpCard.Balance = balance; dpCard.Pin = ComputeSha256Hash(pin); return(dpCard); default: Console.Write("Not found"); return(null); } } catch (Exception e) { Console.WriteLine("Error."); return(null); } }