public ActionResult PrepareForAdd(string isDiffTo, int?userId, int?classTypeId, int?standardId, int?sectionId) { if (TempData.Peek("RuleSearchCriteria") != null) { TransactionRuleVM tranRule = (TransactionRuleVM)TempData.Peek("RuleSearchCriteria"); switch (isDiffTo) { case "USER": tranRule.UserDTO = new UserMasterDTO(); tranRule.UserDTO.UserMasterId = userId.Value; break; case "CLASS-TYPE": tranRule.ClassType = new ClassTypeDTO(); tranRule.ClassType.ClassTypeId = classTypeId.Value; break; case "STANDARD": tranRule.Standard = new StandardDTO(); tranRule.Standard.StandardId = standardId.Value; break; case "SECTION": tranRule.Section = new SectionDTO(); tranRule.Section.SectionId = sectionId.Value; tranRule.Standard = new StandardDTO(); tranRule.Standard.StandardId = standardId.Value; break; } TempData["RuleSearchCriteria"] = tranRule; } return(RedirectToAction("TransactionRule")); }
public ActionResult SearchRules(TransactionRuleVM tranRule) { string validMsg = string.Empty; Helpers.UIDropDownRepo uiDDLRepo = new Helpers.UIDropDownRepo(_ddlRepo); tranRule.IsPostBack = "TRUE"; if (ValidateSearch(tranRule, out validMsg)) { //Need to change as it will also store the search result and the memory usage will be high TempData["RuleSearchCriteria"] = tranRule; tranRule.SearchedResult = new List <TransactionRuleVM>(); this.AddSearchResult(ref tranRule); //tranRule.IsPostBack = "TRUE"; } else { tranRule.ErrorMsg = validMsg; } tranRule.TransactionFrequencies = uiDDLRepo.getTransactionFrequencies(); tranRule.Users = uiDDLRepo.getUserDropDown(); tranRule.Standards = uiDDLRepo.getStandardDropDown(); tranRule.Sections = uiDDLRepo.getSectionDropDown(); tranRule.ClassTypes = uiDDLRepo.getClassTypeDropDown(); tranRule.TransactionMasters = new SelectList(_ddlRepo.GetTransactionMasters(tranRule.SelectedFrequency), "TranMasterId", "TransactionName"); return(View(tranRule)); }
private bool ValidateSearch(TransactionRuleVM trRule, out string message) { message = string.Empty; if (string.IsNullOrEmpty(trRule.IsdifferentTo) || string.IsNullOrEmpty(trRule.SelectedFrequency) || trRule.TranMaster == null || trRule.TranMaster.TranMasterId <= 0) { message = "Please select a frequency and a fees name to proceed."; return(false); } if (string.Equals(trRule.IsdifferentTo, "USER")) { if (trRule.UserDTO == null || trRule.UserDTO.UserMasterId <= 0) { message = "Please select a user."; } } if (string.Equals(trRule.IsdifferentTo, "SECTION")) { if (trRule.Standard == null || trRule.Standard.StandardId <= 0) { message = "Please select a standard."; } } if (!string.IsNullOrEmpty(message)) { return(false); } return(true); }
public ActionResult SearchRules() { Helpers.UIDropDownRepo uiDDLRepo = new Helpers.UIDropDownRepo(_ddlRepo); TransactionRuleVM tranRule = new TransactionRuleVM(); tranRule.TransactionMasters = new SelectList(new List <TransactionMasterDTO>(), "TranMasterId", "TransactionName"); tranRule.IsPostBack = "FALSE"; if (TempData.Peek("RuleSearchCriteria") != null) { tranRule = (TransactionRuleVM)TempData.Peek("RuleSearchCriteria"); this.AddSearchResult(ref tranRule); tranRule.TransactionMasters = new SelectList(_ddlRepo.GetTransactionMasters(tranRule.SelectedFrequency), "TranMasterId", "TransactionName"); tranRule.IsPostBack = "TRUE"; } else { tranRule.SearchedResult = new List <TransactionRuleVM>(); } tranRule.TransactionFrequencies = uiDDLRepo.getTransactionFrequencies(); tranRule.Users = uiDDLRepo.getUserDropDown(); tranRule.Standards = uiDDLRepo.getStandardDropDown(); tranRule.Sections = uiDDLRepo.getSectionDropDown(); tranRule.ClassTypes = uiDDLRepo.getClassTypeDropDown(); tranRule.SuccessMsg = ""; tranRule.ErrorMsg = ""; return(View(tranRule)); }
private bool Validate(TransactionRuleVM trRuleVM, out string message, out string diffTo) { diffTo = string.Empty; message = string.Empty; if (trRuleVM.TranMaster == null && trRuleVM.TranMaster.TranMasterId <= 0) { message = message + "Please select a transaction name."; return(false); } diffTo = _trnsMaster.GetIsDifferentTo(trRuleVM.TranMaster.TranMasterId); if (diffTo == "USER") { if (trRuleVM.UserDTO == null || trRuleVM.UserDTO.UserMasterId <= 0) { message = message + " Please select a user for this transaction name."; } } if (diffTo == "CLASS-TYPE") { if (trRuleVM.ClassType == null || trRuleVM.ClassType.ClassTypeId <= 0) { message = message + " Please select a class type for this transaction name."; } } if (diffTo == "STANDARD") { if (trRuleVM.Standard == null || trRuleVM.Standard.StandardId <= 0) { message = message + " Please select a standard for this transaction name."; } } if (diffTo == "SECTION") { if (trRuleVM.Standard == null || trRuleVM.Standard.StandardId <= 0 || trRuleVM.Section == null || trRuleVM.Section.SectionId <= 0) { message = message + " Please select standard and section for this transaction name."; } } if (trRuleVM.ActualAmount == null || trRuleVM.ActualAmount <= 0) { message = message + " Please enter a valid amount for this rule."; } if (trRuleVM.FirstDueAfterDays == null && (string.IsNullOrEmpty(trRuleVM.PenaltyCalculatedIn) || trRuleVM.PenaltyCalculatedIn == "-1") && trRuleVM.PenaltyAmount == null && trRuleVM.DueDateIncreasesBy == null) { } else if (trRuleVM.FirstDueAfterDays != null && (!string.IsNullOrEmpty(trRuleVM.PenaltyCalculatedIn) && trRuleVM.PenaltyCalculatedIn != "-1") && trRuleVM.PenaltyAmount != null && trRuleVM.DueDateIncreasesBy != null) { } else { message = message + " Please enter first due date, penalty calculated in, penalty amount, due date increases by values."; } if (!string.IsNullOrEmpty(message)) { return(false); } return(true); }
public ActionResult TransactionRule(TransactionRuleVM trRuleVM) { Helpers.UIDropDownRepo uiDDLRepo = new Helpers.UIDropDownRepo(_ddlRepo); string message = string.Empty; string diffTo = string.Empty; if (Validate(trRuleVM, out message, out diffTo)) { //string diffTo = _trnsMaster.GetIsDifferentTo(trRuleVM.TranMaster.TranMasterId); if (!_trRule.IsDuplicate(trRuleVM.TranMaster.TranMasterId, trRuleVM.Standard == null?-1: trRuleVM.Standard.StandardId, trRuleVM.Section == null?-1: trRuleVM.Section.SectionId, trRuleVM.ClassType == null?-1: trRuleVM.ClassType.ClassTypeId, trRuleVM.UserDTO == null?-1: trRuleVM.UserDTO.UserMasterId, diffTo, trRuleVM.MODE, trRuleVM.TranRuleId)) { if (string.Equals(trRuleVM.MODE, "EDIT")) { _trRule.Update(trRuleVM); return(RedirectToAction("SearchRules")); } _trRule.Insert(trRuleVM); ModelState.Clear(); trRuleVM.MODE = "ADD"; trRuleVM.Active = true; trRuleVM.SuccessMsg = "Rule added successfully."; trRuleVM.ErrorMsg = string.Empty; } else { trRuleVM.ErrorMsg = "Rule is not unique for this transaction name."; trRuleVM.SuccessMsg = string.Empty; } } else { trRuleVM.ErrorMsg = message; trRuleVM.SuccessMsg = string.Empty; } trRuleVM.TransactionFrequencies = uiDDLRepo.getTransactionFrequencies(); trRuleVM.Users = uiDDLRepo.getUserDropDown(); trRuleVM.Standards = uiDDLRepo.getStandardDropDown(); trRuleVM.Sections = uiDDLRepo.getSectionDropDown(); trRuleVM.PenaltyCalcIn = uiDDLRepo.getCalcType(); trRuleVM.ClassTypes = uiDDLRepo.getClassTypeDropDown(); trRuleVM.PenaltyTransactionTypes = uiDDLRepo.getTransactionTypes(); trRuleVM.TransactionMasters = uiDDLRepo.getTransactionMasters(); trRuleVM.PenaltyTransactionRules = uiDDLRepo.getTransactionRules(); trRuleVM.IsPostBack = "TRUE"; return(RedirectToAction("SearchRules")); }
public ActionResult TransactionRule(string mode, int?id) { Helpers.UIDropDownRepo uiDDLRepo = new Helpers.UIDropDownRepo(_ddlRepo); TransactionRuleVM trRuleVM = new TransactionRuleVM(); trRuleVM.IsPostBack = "FALSE"; if (string.Equals(mode, "EDIT", StringComparison.OrdinalIgnoreCase)) { StatusDTO <TransactionRuleDTO> trRule = _trRule.Select(id.Value); if (trRule != null) { trRuleVM.Active = trRule.ReturnObj.Active; trRuleVM.ActualAmount = trRule.ReturnObj.ActualAmount; trRuleVM.ClassType = trRule.ReturnObj.ClassType; trRuleVM.DueDateIncreasesBy = trRule.ReturnObj.DueDateIncreasesBy; trRuleVM.FirstDueAfterDays = trRule.ReturnObj.FirstDueAfterDays; trRuleVM.IsdifferentTo = trRule.ReturnObj.IsdifferentTo; trRuleVM.PenaltyAmount = trRule.ReturnObj.PenaltyAmount; trRuleVM.PenaltyCalculatedIn = trRule.ReturnObj.PenaltyCalculatedIn; trRuleVM.PenaltyTransactionRule = trRule.ReturnObj.PenaltyTransactionRule; trRuleVM.PenaltyTransactionType = trRule.ReturnObj.PenaltyTransactionType; trRuleVM.RuleName = trRule.ReturnObj.RuleName; trRuleVM.Section = trRule.ReturnObj.Section; trRuleVM.Standard = trRule.ReturnObj.Standard; trRuleVM.TranMaster = trRule.ReturnObj.TranMaster; trRuleVM.TranRuleId = trRule.ReturnObj.TranRuleId; trRuleVM.UserDTO = trRule.ReturnObj.UserDTO; trRuleVM.MODE = "EDIT"; if (trRuleVM.TranMaster != null) { trRuleVM.SelectedFrequency = _trnsMaster.GetFreq(trRuleVM.TranMaster.TranMasterId); } trRuleVM.TransactionMasters = uiDDLRepo.getTransactionMasters(trRuleVM.SelectedFrequency); } else { trRuleVM.TransactionMasters = new SelectList(new List <TransactionMasterDTO>(), "TranMasterId", "TransactionName"); if (TempData.Peek("RuleSearchCriteria") != null) { trRuleVM = (TransactionRuleVM)TempData.Peek("RuleSearchCriteria"); trRuleVM.TransactionMasters = new SelectList(_ddlRepo.GetTransactionMasters(trRuleVM.SelectedFrequency), "TranMasterId", "TransactionName"); trRuleVM.IsPostBack = "TRUE"; } trRuleVM.MODE = "ADD"; trRuleVM.Active = true; } } else { trRuleVM.TransactionMasters = new SelectList(new List <TransactionMasterDTO>(), "TranMasterId", "TransactionName"); if (TempData.Peek("RuleSearchCriteria") != null) { trRuleVM = (TransactionRuleVM)TempData.Peek("RuleSearchCriteria"); trRuleVM.TransactionMasters = new SelectList(_ddlRepo.GetTransactionMasters(trRuleVM.SelectedFrequency), "TranMasterId", "TransactionName"); trRuleVM.IsPostBack = "TRUE"; } trRuleVM.MODE = "ADD"; trRuleVM.Active = true; } trRuleVM.TransactionFrequencies = uiDDLRepo.getTransactionFrequencies(); trRuleVM.Users = uiDDLRepo.getUserDropDown(); trRuleVM.Standards = uiDDLRepo.getStandardDropDown(); trRuleVM.Sections = uiDDLRepo.getSectionDropDown(); trRuleVM.PenaltyCalcIn = uiDDLRepo.getCalcType(); trRuleVM.ClassTypes = uiDDLRepo.getClassTypeDropDown(); trRuleVM.PenaltyTransactionTypes = uiDDLRepo.getTransactionTypes(); trRuleVM.PenaltyTransactionRules = uiDDLRepo.getTransactionRules(); trRuleVM.ErrorMsg = string.Empty; trRuleVM.SuccessMsg = string.Empty; return(View(trRuleVM)); }
private void AddSearchResult(ref TransactionRuleVM tranRule) { List <TransactionRuleDTO> searchResult = null; if (tranRule.TranMaster != null) { switch (tranRule.IsdifferentTo.ToUpper()) { case "NONE": if (tranRule.TranMaster.TranMasterId > 0) { searchResult = _trRule.GetNoneLevelRules(tranRule.TranMaster.TranMasterId); } else { searchResult = _trRule.GetNoneLevelRules(); } break; case "CLASS-TYPE": if (tranRule.ClassType != null && tranRule.ClassType.ClassTypeId > 0) { searchResult = _trRule.GetClassTypeLevelRules(tranRule.TranMaster.TranMasterId, tranRule.ClassType.ClassTypeId); } else { searchResult = _trRule.GetClassTypeLevelRules(tranRule.TranMaster.TranMasterId); } break; case "STANDARD": if (tranRule.Standard != null && tranRule.Standard.StandardId > 0) { searchResult = _trRule.GetStandardLevelRules(tranRule.TranMaster.TranMasterId, tranRule.Standard.StandardId); } else { searchResult = _trRule.GetStandardLevelRules(tranRule.TranMaster.TranMasterId); } break; case "SECTION": if (tranRule.Section != null && tranRule.Section.SectionId > 0) { searchResult = _trRule.GetStandardSectionLevelRules(tranRule.TranMaster.TranMasterId, tranRule.Standard.StandardId, tranRule.Section.SectionId); } else { searchResult = _trRule.GetStandardSectionLevelRules(tranRule.TranMaster.TranMasterId, tranRule.Standard.StandardId); } break; case "USER": searchResult = _trRule.GetUserLevelRules(tranRule.TranMaster.TranMasterId, tranRule.UserDTO.UserMasterId); break; } if (searchResult != null && searchResult.Count > 0) { tranRule.SearchedResult = new List <TransactionRuleVM>(); TransactionRuleVM item = null; foreach (TransactionRuleDTO trDto in searchResult) { item = new TransactionRuleVM(); item.TranRuleId = trDto.TranRuleId; item.TranMaster = trDto.TranMaster; item.RuleName = trDto.RuleName; item.ClassType = trDto.ClassType; item.UserDTO = trDto.UserDTO; item.Standard = trDto.Standard; item.Section = trDto.Section; item.ActualAmount = trDto.ActualAmount; tranRule.SearchedResult.Add(item); } } } }