public static PregeneratedCard GetCardSerialNumber(string loggedInUser) { try { var user = UserDL.RetrieveUserByUsername(loggedInUser); if (user == null) { throw new Exception("Invalid username"); } else if (user.ID == 0) { throw new Exception("Invalid username"); } else { var existingCard = new PregeneratedCard(); using (var context = new LicenseDBEntities()) { existingCard = context.PregeneratedCards .Include("Branch1") .Where(t => t.Status == false && t.Branch == user.UserBranch) .Take(1) .FirstOrDefault(); } return(existingCard); } } catch (Exception ex) { throw ex; } }
public static bool PregeneratedCardExists(string pregeneratedCard) { try { var existingCard = new PregeneratedCard(); using (var context = new LicenseDBEntities()) { existingCard = context.PregeneratedCards .Where(t => t.HashedCardNumber.Equals(pregeneratedCard)) .FirstOrDefault(); } if (existingCard == null) { return(false); } else { return(true); } } catch (Exception ex) { throw ex; } }
public static PregeneratedCard RetrievePregeneratedCard(string pregeneratedCard) { try { var existingCard = new PregeneratedCard(); using (var context = new LicenseDBEntities()) { existingCard = context.PregeneratedCards .Include("Branch1") .Where(t => t.HashedCardNumber.Equals(pregeneratedCard)) .FirstOrDefault(); } return(existingCard); } catch (Exception ex) { throw ex; } }
public static bool Save(List <string> cards, long branchID, out long successfulCards) { try { var result = false; var pregeneratedCards = new List <PregeneratedCard>(); string key = System.Configuration.ConfigurationManager.AppSettings.Get("ekey"); cards.ForEach(card => { string hashedCardNumber = PasswordHash.MD5Hash(card); if (!CardDL.PregeneratedCardExists(hashedCardNumber)) { var pregeneratedCard = new PregeneratedCard { CardNumber = Crypter.Encrypt(key, card), HashedCardNumber = hashedCardNumber, Status = false, Branch = branchID, DateUploaded = System.DateTime.Now }; pregeneratedCards.Add(pregeneratedCard); } }); if (pregeneratedCards.Any()) { result = CardDL.Save(pregeneratedCards); } successfulCards = pregeneratedCards.Count(); return(result); } catch (Exception ex) { throw ex; } }