public ServiceRequestController(IPortfolioService portfolioService, IServiceRequestController serviceRequestController, IRequestManager requestManager, IServiceRequestOptionController serviceRequestOptionController, IServiceRequestUserInputController serviceRequestUserInputController) { _portfolioService = portfolioService; _requestManager = requestManager; _serviceRequestController = serviceRequestController; _serviceRequestOptionController = serviceRequestOptionController; _serviceRequestUserInputController = serviceRequestUserInputController; }
public ServiceRequestApprovalController(IPortfolioService portfolioService, IServiceRequestController serviceRequestController, IRequestManager requestManager, IUserManager userManager) { _portfolioService = portfolioService; _serviceRequestController = serviceRequestController; _requestManager = requestManager; _userManager = userManager; try { _pageSize = ConfigHelper.GetPaginationSize(); } catch (Exception) { _pageSize = 12; } //just in case }
/// <summary> /// Returns all service request approval model for the user Id, ordered by Id /// </summary> /// <param name="srController">service request controller</param> /// <param name="userManager"></param> /// <param name="userId">requesting user</param> /// <param name="currentPage">current page</param> /// <param name="pageSize"></param> /// <returns></returns> public static ServiceRequestApprovalModel GetAllRequests(IServiceRequestController srController, IUserManager userManager, int userId, int currentPage, int pageSize) { var model = new ServiceRequestApprovalModel { Controls = new ServiceRequestApprovalControls() }; var srList = (from s in srController.GetServiceRequestsForRequestorId(userId, userId) where s.State != ServiceRequestState.Cancelled orderby s.Id descending select s).ToList(); model.ServiceRequests = ConvertToTableModel(userManager, srList, userId); Paginate(model, currentPage, pageSize); model.Controls.FilterText = "All My Requests"; return(model); }
/// <summary> /// Get Department Request approvals and filter /// </summary> /// <param name="srController"></param> /// <param name="userManager"></param> /// <param name="userId"></param> /// <param name="currentPage"></param> /// <param name="pageSize"></param> /// <param name="state"></param> /// <returns></returns> public static ServiceRequestApprovalModel GetDepartmentRequests(IServiceRequestController srController, IUserManager userManager, int userId, int currentPage, int pageSize, ServiceRequestState state) { var model = new ServiceRequestApprovalModel { Controls = new ServiceRequestApprovalControls() }; var srList = (from s in srController.GetServiceRequestsForApproverId(userId) where s.State == state orderby s.Id descending select s).ToList(); model.ServiceRequests = ConvertToTableModel(userManager, srList, userId); Paginate(model, currentPage, pageSize); model.Controls.FilterText = $"Filtered Department Requests by {state}"; return(model); }
/// <summary> /// Returns all service request approval model for the user Id, filtered, and ordered by id /// </summary> /// <param name="srController">service request controller</param> /// <param name="userManager"></param> /// <param name="userId">requesting user</param> /// <param name="currentPage">current page</param> /// <param name="pageSize">page size</param> /// <param name="state">state to filter by</param> /// <returns></returns> public static ServiceRequestApprovalModel GetMyRequests(IServiceRequestController srController, IUserManager userManager, int userId, int currentPage, int pageSize, ServiceRequestState state) { var model = new ServiceRequestApprovalModel { Controls = new ServiceRequestApprovalControls() }; // retrieve filtered data var srList = (from s in srController.GetServiceRequestsForRequestorId(userId, userId) where s.State == state && s.State == state orderby s.Id descending select s).ToList(); model.ServiceRequests = ConvertToTableModel(userManager, srList, userId); Paginate(model, currentPage, pageSize); model.Controls.FilterText = $"Filtered My Requests by {state}"; model.Controls.FilterState = state; //hints to pagination model.Controls.FilterStateRequired = true; return(model); }
public RequestController(IUserManager userManager, IRequestManager requestManager, IServiceRequestController serviceRequestController) { _userManager = userManager; _requestManager = requestManager; _serviceRequestController = serviceRequestController; }
/// <summary> /// Data to show a state change of SR /// </summary> /// <param name="ps"></param> /// <param name="userId"></param> /// <param name="sr"></param> /// <param name="serviceRequestId"></param> /// <returns></returns> public static ServiceRequestStateChangeModel CreateStateChangeModel(IPortfolioService ps, int userId, IServiceRequestController sr, int serviceRequestId) { var model = new ServiceRequestStateChangeModel { ServiceRequestModel = new ServiceRequestModel(), ConfirmNextState = false }; model.ServiceRequestModel.ServiceRequest = sr.GetServiceRequest(userId, serviceRequestId); List <DisplayListOption> displayList = new List <DisplayListOption>(); foreach (var serviceRequestOption in model.ServiceRequestModel.ServiceRequest.ServiceRequestOptions) //add the option name { var listOption = new DisplayListOption { ServiceRequestOption = serviceRequestOption, UserInputs = new List <DisplayListUserInput>(), ServiceOption = ps.GetServiceOption(userId, serviceRequestOption.ServiceOptionId) }; var userInputs = ps.GetInputsForServiceOptions(userId, new IServiceOptionDto[1] { new ServiceOptionDto { Id = serviceRequestOption.ServiceOptionId } }); //get user inputs if (userInputs != null) { foreach (var userData in model.ServiceRequestModel.ServiceRequest.ServiceRequestUserInputs) { if (userData.UserInputType == UserInputType.Text) { foreach (var userInput in userInputs.TextInputs) { if (userInput.Id == userData.InputId) { var displayUserInput = new DisplayListUserInput { DisplayName = userInput.DisplayName }; displayUserInput.ServiceRequestUserInput = userData; listOption.UserInputs.Add(displayUserInput); } } } else if (userData.UserInputType == UserInputType.Selection) { foreach (var userInput in userInputs.SelectionInputs) { if (userInput.Id == userData.InputId) { var displayUserInput = new DisplayListUserInput { DisplayName = userInput.DisplayName }; displayUserInput.ServiceRequestUserInput = userData; listOption.UserInputs.Add(displayUserInput); } } } else if (userData.UserInputType == UserInputType.ScriptedSelection) { foreach (var userInput in userInputs.ScriptedSelectionInputs) { if (userInput.Id == userData.InputId) { var displayUserInput = new DisplayListUserInput { DisplayName = userInput.DisplayName }; displayUserInput.ServiceRequestUserInput = userData; listOption.UserInputs.Add(displayUserInput); } } } } displayList.Add(listOption); } } model.DisplayList = displayList; return(model); }
/// <summary> /// Create the model /// </summary> /// <param name="ps">portfolio service</param> /// <param name="sr"></param> /// <param name="nextState"></param> /// <param name="userId"></param> /// <param name="serviceRequestId"></param> /// <returns></returns> public static ServiceRequestStateChangeModel CreateStateChangeModel(IPortfolioService ps, IServiceRequestController sr, ServiceRequestState nextState, int userId, int serviceRequestId) { var model = new ServiceRequestStateChangeModel { NextState = nextState, ServiceRequestModel = new ServiceRequestModel(), ConfirmNextState = true }; return(AddModelData(model, ps, sr, userId, serviceRequestId)); }