public ActionResult AddMerchant(AddMerchantModel MerchantToAdd) { IMerchantDAO MerchantData = new MerchantDAO(); if (MerchantToAdd.MerchantID != null) { if (MerchantData.GetMerchant(MerchantToAdd.MerchantID) != null) { ModelState.AddModelError("MerchantID", "Merchant ID already on file"); } } if (MerchantToAdd.MerchantUserName != null) { //if (MerchantData.GetMerchantByUserName(MerchantToAdd.MerchantUserName) != null) // ModelState.AddModelError("UserName", "Merchant User Name already on file"); IUserDAO UserDAO = new UserDAO(); if (UserDAO.GetUser(MerchantToAdd.MerchantUserName) != null) { ModelState.AddModelError("UserName", "Merchant 'user name' already on file"); } } if (ModelState.IsValid) { // Attempt to add the merchant try { String AgentUserName = (String)Session["AgentUserName"]; if (AgentUserName == null) { AgentUserName = User.Identity.Name; } if (AgentUserName.Length == 0) { AgentUserName = User.Identity.Name; } bool createStatus = MerchantServiceInstance.AddMerchant(MerchantToAdd, AgentUserName, Roles.IsUserInRole(AgentUserName, "Agent")); if (createStatus == true) { ModelState.AddModelError("", "Merchant Created"); } else { ModelState.AddModelError("", "Failed to create the merchant"); } } catch (Exception Ex) { ModelState.AddModelError("", Common.StandardExceptionErrorMessage(Ex)); } } // If we got this far, something failed, redisplay form return(View(MerchantToAdd)); }
public async Task <bool> Delete(Merchant Merchant) { MerchantDAO MerchantDAO = await DataContext.Merchant.Where(x => x.Id == Merchant.Id).FirstOrDefaultAsync(); DataContext.Merchant.Remove(MerchantDAO); await DataContext.SaveChangesAsync(); return(true); }
public async Task <bool> Update(Merchant Merchant) { MerchantDAO MerchantDAO = DataContext.Merchant.Where(x => x.Id == Merchant.Id).FirstOrDefault(); MerchantDAO.Id = Merchant.Id; MerchantDAO.Name = Merchant.Name; MerchantDAO.Phone = Merchant.Phone; MerchantDAO.ContactPerson = Merchant.ContactPerson; MerchantDAO.Address = Merchant.Address; await DataContext.SaveChangesAsync(); return(true); }
List <CardHistory> IHistoryDAO.GetMerchantHistory(int MerchantToList, int Page, int PageSize) { using (var GiftEntity = new GiftEntities()) { IMerchantDAO MerchantData = new MerchantDAO(); List <CardHistory> Histories = new List <CardHistory>(); ICardRepository CardData = new CardRepository(GiftEntity); Merchant MerchToList = MerchantData.GetMerchant(MerchantToList); if (MerchToList == null) { return(Histories); } Guid MerchantToListGUID = MerchToList.MerchantGUID; var MerchHistories = (from m in GiftEntity.Histories where m.WhichMerchantGUID == MerchantToListGUID orderby m.ID descending select m ).Skip(Page * PageSize).Take(PageSize); // need to restructure what we return to the calling program if (MerchHistories == null) { return(Histories); } foreach (var Hist in MerchHistories) { string CardNumber = (from c in GiftEntity.Cards where c.CardGUID == Hist.CardGUID select c.CardNumLast4).FirstOrDefault(); CardHistory Chist = new CardHistory(); Chist.ID = Hist.ID; Chist.CardNumber = CardNumber; Chist.MerchWhere = (from m in GiftEntity.Merchants where m.MerchantGUID == Hist.WhichMerchantGUID select m.MerchantName).FirstOrDefault(); Chist.Clerk = Hist.Clerk; Chist.When = Hist.WhenHappened; Chist.TransType = Hist.TransType; Chist.Transaction = ConvertTransactionType(Hist.TransType); Chist.Amount = Hist.Amount; Chist.Text = Hist.TransactionText; //Chist.Card2 = Hist.Card2; Chist.InvoiceNumber = Hist.InvoiceNumber; Histories.Add(Chist); } return(Histories); } }
bool ICLerkService.AddClerk(String MerchantID, AddClerkModel WebPageData) { String ResultMessage = ""; using (GiftEntities GiftEntity = new GiftEntities()) { IClerkDAO ClerkData = new ClerkDAO(GiftEntity); Clerk ClerkToAdd = new Clerk(); // verify that this is not a duplicate clerk at this merchant location IMerchantDAO MerchantData = new MerchantDAO(GiftEntity); Merchant Merch = MerchantData.GetMerchant(MerchantID); Clerk Duplicate = ClerkData.GetClerk(Merch.MerchantGUID, WebPageData.ClerkID); if (Duplicate != null) { throw new Exception("Clerk ID already in system"); } // this is something that would make sense to have in a transaction // but to do that would require a DAO that can have the // connection defined outside of it. String ClerkUserName = GetUniqueClerkUserName(WebPageData.ClerkName); ClerkToAdd.Whom = WebPageData.ClerkName; ClerkToAdd.ClerkID = WebPageData.ClerkID; ClerkToAdd.UserName = ClerkUserName; ClerkData.CreateClerk(MerchantID, ClerkToAdd); String ClerkEmail = GetUniqueClerkEmail(MerchantID, ClerkUserName); // we also need to define this "user name" in the system MembershipUser user = AddClerkToUsers(ClerkUserName, ClerkEmail, WebPageData.ClerkPassword, out ResultMessage); if (user == null) { throw new Exception(ResultMessage); } // and give it the clerk role AddUserToClerkRole(ClerkUserName); } return(true); }
public async Task <bool> Create(Merchant Merchant) { MerchantDAO MerchantDAO = new MerchantDAO(); MerchantDAO.Id = Merchant.Id; MerchantDAO.Name = Merchant.Name; MerchantDAO.Phone = Merchant.Phone; MerchantDAO.ContactPerson = Merchant.ContactPerson; MerchantDAO.Address = Merchant.Address; await DataContext.Merchant.AddAsync(MerchantDAO); await DataContext.SaveChangesAsync(); Merchant.Id = MerchantDAO.Id; return(true); }
// we are mixing in both data field validation and content validation bool ITerminalService.ValidateMerchantID(String MerchantID, out String Message) { // first do data field validation Message = "NO MERCH ID"; if (MerchantID == null) { return(false); } Message = "BAD MERCH ID"; if (MerchantID.Length > 46) { return(false); } MerchantIDAttribute MerchantTest = new MerchantIDAttribute(); if (!(MerchantTest.IsValid(MerchantID))) { return(false); } // then check the database to see if this merchant id is valid Message = "MID NOT FOUND"; using (GiftEntities GiftEntity = new GiftEntities()) { IMerchantDAO MerchantData = new MerchantDAO(GiftEntity); Merchant Merch = MerchantData.GetMerchant(MerchantID); if (Merch == null) { return(false); } Message = "MID NOT ACTIVE"; if (Merch.GiftActive != "A") { return(false); } return(true); } }
// F o r m a t L o y a l t y R e c e i p t Receipt ITransactionService.FormatLoyaltyReceipt(ReceiptInformation RecInfo) { Merchant Merch; Receipt aRec = new Receipt(); using (GiftEntities GiftEntity = new GiftEntities()) { IMerchantDAO MerchantData = new MerchantDAO(GiftEntity); Merch = MerchantData.GetMerchant(RecInfo.MerchantID); // format the header lines aRec.AddCentered(Merch.ReceiptHeaderLine1); aRec.AddCentered(Merch.ReceiptHeaderLine2); aRec.AddCentered(Merch.ReceiptHeaderLine3); aRec.AddCentered(Merch.ReceiptHeaderLine4); aRec.AddCentered(Merch.ReceiptHeaderLine5); // format the date & time line String TransactionDate; String TransactionTime; if (RecInfo.LocalTime != null) { TransactionDate = RecInfo.LocalTime.ToShortDateString(); TransactionTime = RecInfo.LocalTime.ToShortTimeString(); } else { TransactionDate = RecInfo.When.ToShortDateString(); TransactionTime = RecInfo.When.ToShortTimeString(); } aRec.JustifyBoth(TransactionDate, TransactionTime); if (RecInfo.TransactionNumber > 0) { aRec.AddCentered("#: " + RecInfo.TransactionNumber.ToString()); } // format the transaction type aRec.Add(""); aRec.AddCentered(RecInfo.TransactionType);//Utils.getMappedMessage("Activate")); if (RecInfo.ApprovalMessage != null) { if (RecInfo.ApprovalMessage.Length > 0) { aRec.AddCentered(RecInfo.ApprovalMessage); } } aRec.Add(""); if (RecInfo.CardNumber != null) { if (RecInfo.CardNumber.Length > 0) { aRec.AddCentered("Account " + //Utils.getMappedMessage("Account") + " " aRec.GetPrintableCardNumber(RecInfo.CardNumber)); } else { aRec.AddCentered("Phone: " + //Utils.getMappedMessage("Phone:") + " " RecInfo.PhoneNumber); } } else { aRec.AddCentered("Phone: " + //Utils.getMappedMessage("Phone:") + " " RecInfo.PhoneNumber); } // format the amount line if (RecInfo.Amount != null) { aRec.Add(""); aRec.AddCentered("Amount: " + RecInfo.Amount); //Utils.getMappedMessage("Amount") + amount); } if (RecInfo.Description != null) { if (RecInfo.Description.Length > 0) { aRec.Add(""); aRec.AddCentered(RecInfo.Description); } } if (RecInfo.AdditionalMessage != null) { if (RecInfo.AdditionalMessage.Length > 0) { aRec.Add(""); aRec.AddCentered(RecInfo.AdditionalMessage); } } // add the footer lines aRec.Add(""); aRec.Add(Merch.ReceiptFooterLine1); aRec.Add(Merch.ReceiptFooterLine2); } return(aRec); }