public ActionResult SiteOrganisationSearch(int page = 1) { //Create model OrganisationSearchVM model = new OrganisationSearchVM(); //Repopulate search criteria if already entered if (null == model.SearchCriteria && sessionManager.OrganisationSearchCriteria != null) { model.SearchCriteria = sessionManager.OrganisationSearchCriteria; } else { // Add criteria to search only on Organisation Type of Site model.SearchCriteria = new OrganisationSearchCriteriaModel(); model.SearchCriteria.OrganisationType = "Site"; } // Create service instance IUcbService sc = UcbService; try { // Convert search criteria to data contract OrganisationSearchCriteriaDC organisationSearch = Mapper.Map <OrganisationSearchCriteriaDC>(model.SearchCriteria); // Call service OrganisationSearchVMDC response = sc.SearchOrganisation(CurrentUser, CurrentUser, appID, "", organisationSearch, page, PageSize, true); // Close service communication ((ICommunicationObject)sc).Close(); //Map response back to view model model.MatchList = Mapper.Map <IEnumerable <OrganisationSearchMatchDC>, List <OrganisationSearchMatchModel> >(response.MatchList); // Set paging values model.TotalRows = response.RecordCount; model.PageSize = sessionManager.PageSize; model.PageNumber = page; // Store the page number we were on sessionManager.OrganisationPageNumber = model.PageNumber; return(View(model)); } catch (Exception e) { // Handle the exception string message = ExceptionManager.HandleException(e, (ICommunicationObject)sc); model.Message = message; return(View(model)); } }
public ActionResult SiteOrganisationSearchCriteriaPost(OrganisationSearchVM model, int page = 1) { // Add Organisation Type search to ensure we only search within Site model.SearchCriteria.OrganisationType = "Site"; // Create service instance IUcbService sc = UcbService; try { // Convert search criteria to data contract OrganisationSearchCriteriaDC organisationSearch = Mapper.Map <OrganisationSearchCriteriaDC>(model.SearchCriteria); // Call service OrganisationSearchVMDC response = sc.SearchOrganisation(CurrentUser, CurrentUser, appID, "", organisationSearch, page, PageSize, true); // Close service communication ((ICommunicationObject)sc).Close(); //Map response back to view model model.MatchList = Mapper.Map <IEnumerable <OrganisationSearchMatchDC>, List <OrganisationSearchMatchModel> >(response.MatchList); // Set paging values model.TotalRows = response.RecordCount; model.PageSize = sessionManager.PageSize; model.PageNumber = page; // Store the page number we were on sessionManager.OrganisationPageNumber = model.PageNumber; sessionManager.OrganisationSearchCriteria = model.SearchCriteria; return(View("SiteOrganisationSearch", model)); } catch (Exception e) { // Handle the exception string message = ExceptionManager.HandleException(e, (ICommunicationObject)sc); model.Message = message; return(View("SiteOrganisationSearch", model)); } }
public ActionResult SiteOrganisationSearchPost(OrganisationSearchVM model, int page = 1) { // Iterate through form keys foreach (string Key in Request.Form.Keys) { // Test if Select button was clicked... if (Key.StartsWith("Search::SiteOrganisationSearchPost_")) { // Retrieve ID for entity which was selected Guid Value = Guid.Parse(Key.Substring(35)); // Store ID for Edit screen sessionManager.OrganisationCode = Value.ToString(); // Call out to Edit screen return(RedirectToAction("Edit", "Site", new { code = Value })); } } // Return to the Screen return(View(model)); }
public ActionResult Search(int page = 1) { // Create service instance IUcbService sc = UcbService; // Create model OrganisationSearchVM model = new OrganisationSearchVM(); try { OrganisationSearchVMDC response = sc.SearchOrganisation(CurrentUser, CurrentUser, appID, "", null, page, PageSize, true); // Close service communication ((ICommunicationObject)sc).Close(); //Map response back to view model model.MatchList = Mapper.Map <IEnumerable <OrganisationSearchMatchDC>, List <OrganisationSearchMatchModel> >(response.MatchList); // Set paging values model.TotalRows = response.RecordCount; model.PageSize = sessionManager.PageSize; model.PageNumber = page; // Store the page number we were on sessionManager.OrganisationPageNumber = model.PageNumber; return(View(model)); } catch (Exception e) { // Handle the exception string message = ExceptionManager.HandleException(e, (ICommunicationObject)sc); model.Message = message; return(View(model)); } }