public ActionResult History(Guid requestID, Guid responseID) { var ri = DataContext.Responses.Where(r => r.ID == responseID).FirstOrDefault(); if (ri == null) { return(HttpNotFound()); } var rc = RequestService.GetRequestContext(requestID); var ctx = ResponseService.GetResponseHistoryContext(rc, new[] { ri }); bool canViewIndividualResults = DataContext.CanViewIndividualResults(Auth.ApiIdentity, Auth.CurrentUserID, requestID); return(View("~/Views/Response/History.cshtml", new Models.ResponseViewModel { //TreeNode = TreeNodes.Node(rc.Request), BodyView = DocService.GetListVisualization( canViewIndividualResults ? ctx.DataMartResponses.SelectMany(d => d.Documents) : null, "Response", rc.Plugin.DisplayResponse(ctx, rc.Plugin.GetAggregationModes(rc).EmptyIfNull().FirstOrDefault())) })); }
public ActionResult External(Guid requestID, string responseToken, string aggregationMode) { //var canViewIndividualResults = CanViewIndividualResults(requestID); bool canViewIndividualResults = DataContext.CanViewIndividualResults(Auth.ApiIdentity, Auth.CurrentUserID, requestID); var results = ReturnResponse(requestID, responseToken, canViewIndividualResults, c => c.Detail(requestID, null, aggregationMode), (rc, ctx, resps) => View("~/Views/Response/External.cshtml", new Models.ResponseViewModel { Request = rc.Request, Responses = ctx.DataMartResponses, RequestType = rc.RequestType, ExportFormats = rc.Plugin.GetExportFormats(ctx).EmptyIfNull(), ResponseToken = ctx.Token, AggregationMode = aggregationMode, BodyView = DocService.GetListVisualization( canViewIndividualResults ? ctx.DataMartResponses.SelectMany(d => d.Documents) : null, "Response", rc.Plugin.DisplayResponse(ctx, rc.Plugin.GetAggregationModes(rc).EmptyIfNull().FirstOrDefault(am => am.ID == aggregationMode))), RequestBodyView = DocService.GetListVisualization(rc.Documents, "Request Criteria", rc.Plugin.DisplayRequest(rc)), AllowGroup = resps.Where(r => r.CanGroup).Skip(1).Any(), AllowApprove = resps.Any(r => r.CanApprove), AllowUngroup = resps.Any(r => r.Group != null && r.CanGroup), RequesterCenterName = rc.Request.RequesterCenterID.HasValue && !DataContext.RequesterCenters.Where(rcn => rcn.ID == rc.Request.RequesterCenterID).FirstOrDefault().IsNull() ? DataContext.RequesterCenters.Where(rcn => rcn.ID == rc.Request.RequesterCenterID).FirstOrDefault().Name : "Not Selected", WorkplanTypeName = rc.Request.WorkplanTypeID.HasValue && !DataContext.WorkplanTypes.Where(wt => wt.ID == rc.Request.WorkplanTypeID).FirstOrDefault().IsNull() ? DataContext.WorkplanTypes.Where(wt => wt.ID == rc.Request.WorkplanTypeID).FirstOrDefault().Name : "Not Selected" }), isExternalView: true, logView: false); return(results); }