public async Task <ActionResult> Index(Guid id, AnnexViewModel model, Guid?delete) { if (!ModelState.IsValid) { return(View(model)); } if (delete.HasValue) { await DeleteAnnex(id, delete.Value); return(RedirectToAction("Index")); } int numberOfAnnexes = 0; if (model.ProcessOfGeneration != null && model.ProcessOfGenerationStatus.IsRequired) { await mediator.SendAsync( new SetProcessOfGenerationAnnex(new AnnexUpload(await fileReader.GetFileBytes(model.ProcessOfGeneration, User.GetAccessToken()), Path.GetExtension(model.ProcessOfGeneration.FileName), id))); numberOfAnnexes++; } if (model.TechnologyEmployed != null && model.TechnologyEmployedStatus.IsRequired) { await mediator.SendAsync( new SetTechnologyEmployedAnnex(new AnnexUpload(await fileReader.GetFileBytes(model.TechnologyEmployed, User.GetAccessToken()), Path.GetExtension(model.TechnologyEmployed.FileName), id))); numberOfAnnexes++; } if (model.Composition != null && model.WasteCompositionStatus.IsRequired) { await mediator.SendAsync( new SetWasteCompositionAnnex(new AnnexUpload(await fileReader.GetFileBytes(model.Composition, User.GetAccessToken()), Path.GetExtension(model.Composition.FileName), id))); numberOfAnnexes++; } if (model.Composition != null || model.TechnologyEmployed != null || model.ProcessOfGeneration != null) { return(RedirectToAction("Success", new { numberOfAnnexes })); } return(RedirectToAction("Index", "Options")); }
public async Task<ActionResult> Index(Guid id, AnnexViewModel model, Guid? delete) { if (!ModelState.IsValid) { return View(model); } if (delete.HasValue) { await DeleteAnnex(id, delete.Value); return RedirectToAction("Index"); } int numberOfAnnexes = 0; if (model.ProcessOfGeneration != null && model.ProcessOfGenerationStatus.IsRequired) { await mediator.SendAsync( new SetProcessOfGenerationAnnex(new AnnexUpload(await fileReader.GetFileBytes(model.ProcessOfGeneration), Path.GetExtension(model.ProcessOfGeneration.FileName), id))); numberOfAnnexes++; } if (model.TechnologyEmployed != null && model.TechnologyEmployedStatus.IsRequired) { await mediator.SendAsync( new SetTechnologyEmployedAnnex(new AnnexUpload(await fileReader.GetFileBytes(model.TechnologyEmployed), Path.GetExtension(model.TechnologyEmployed.FileName), id))); numberOfAnnexes++; } if (model.Composition != null && model.WasteCompositionStatus.IsRequired) { await mediator.SendAsync( new SetWasteCompositionAnnex(new AnnexUpload(await fileReader.GetFileBytes(model.Composition), Path.GetExtension(model.Composition.FileName), id))); numberOfAnnexes++; } if (model.Composition != null || model.TechnologyEmployed != null || model.ProcessOfGeneration != null) { return RedirectToAction("Success", new { numberOfAnnexes }); } return RedirectToAction("Index", "Options"); }