public ActionResult ResponseDetail([System.Web.Http.FromUri] IEnumerable <Guid> id, DTO.Enums.TaskItemTypes view, Guid workflowID) { ViewBag.Responses = id; ViewBag.View = view; if (workflowID == Guid.Parse("942A2B39-0E9C-4ECE-9E2C-C85DF0F42663")) { //datachecker workflow ViewBag.ViewPath = "~/areas/workflow/views/response/datacheckerresponsedetails.cshtml"; } else if (workflowID == Guid.Parse("5CE55AF8-9737-4E7A-8E0A-8C483B23EA1D")) { //modular program workflow ViewBag.ViewPath = "~/areas/workflow/views/response/modularprogramresponsedetails.cshtml"; } else if (workflowID == Guid.Parse("931C0001-787C-464D-A90F-A64F00FB23E7")) { //modular program workflow ViewBag.ViewPath = "~/areas/workflow/views/response/simplemodularprogramresponsedetails.cshtml"; } else if (workflowID == Guid.Parse("E9656288-33FF-4D1F-BA77-C82EB0BF0192")) { //modular program workflow ViewBag.ViewPath = "~/areas/workflow/views/response/DistributedRegressionResponsedetails.cshtml"; } else { //all other workflows ViewBag.ViewPath = "~/areas/workflow/views/response/commonresponsedetail.cshtml"; } return(View("~/areas/workflow/views/requests/responsecontainer.cshtml")); }
public async Task <ActionResult> ExportResponses([System.Web.Http.FromUri] IEnumerable <Guid> id, DTO.Enums.TaskItemTypes view, string format, string authToken) { using (var web = new System.Net.Http.HttpClient()) { var cookie = Request.Cookies.Get("Authorization").Value; var model = Newtonsoft.Json.JsonConvert.DeserializeObject <LoginResponseModel>(cookie); web.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue(model.AuthenticationType, authToken); var response = await web.GetAsync(WebConfigurationManager.AppSettings["ServiceUrl"] + "response/Export?" + string.Join("&", id.Select(r => "id=" + r).ToArray()) + "&view=" + (int)view + "&format=" + format); if (response.StatusCode == System.Net.HttpStatusCode.NotFound) { return(HttpNotFound()); } else { response.EnsureSuccessStatusCode(); var fileStream = await response.Content.ReadAsStreamAsync(); Response.BufferOutput = false; return(File(fileStream, "application/octet-stream", string.Format("response.{0}", format))); } } }