public async Task <ActionResult> CreateSpeciality(SpecialityViewModel speciality) { string currentUserId = System.Web.HttpContext.Current.User.Identity.GetUserId(); if (currentUserId == null) { return(new HttpUnauthorizedResult()); } ViewBag.SubjectName = (await SubjectService.GetAsync(speciality.SubjectId)).SubjectName; ViewBag.ParentId = speciality.SubjectId; ViewBag.Action = "SubjectSpecialities"; if (ModelState.IsValid) { SpecialityDTO specialityDTO = new SpecialityDTO { SubjectId = speciality.SubjectId, SpecialityName = speciality.Name, Description = speciality.Description, IsApproved = speciality.IsApproved }; OperationDetails operationDetails = await SpecialityService.CreateAsync(specialityDTO, currentUserId); if (operationDetails.Succedeed) { return(PartialView("Report", operationDetails)); } else { ModelState.AddModelError(operationDetails.Property, operationDetails.Message); return(PartialView("Report", operationDetails)); } } ViewBag.Message = "Non valid"; return(PartialView("~/Views/Admin/Speciality/CreateSpeciality.cshtml", speciality)); }
public async Task <ActionResult> SuggestSpeciality(SpecialityViewModel speciality) { try { // I. Checks. string currentUserId = System.Web.HttpContext.Current.User.Identity.GetUserId(); if (currentUserId == null) { return(new HttpUnauthorizedResult()); } // II. Set ViewBag properties. ViewBag.SubjectName = (await SubjectService.GetAsync(speciality.SubjectId)).SubjectName; ViewBag.ParentId = speciality.SubjectId; ViewBag.Action = "SubjectSpecialities"; // III. Create a new speciality. if (ModelState.IsValid) { SpecialityDTO specialityDTO = new SpecialityDTO { SubjectId = speciality.SubjectId, SpecialityName = speciality.Name, Description = speciality.Description, IsApproved = false }; OperationDetails operationDetails = await SpecialityService.CreateAsync(specialityDTO, currentUserId); if (operationDetails.Succedeed) { return(PartialView("Report", operationDetails)); } else { ModelState.AddModelError(operationDetails.Property, operationDetails.Message); return(PartialView("Report", operationDetails)); } } // IV. ViewBag.Message = "Non valid"; return(PartialView(speciality)); } catch (Exception ex) { throw new Exception(ex.Message); } }