/// <summary> /// Method to update disciplinary - SS /// </summary> /// <param name="updateDisciplinary">disciplinary</param> /// <param name="loggedInUser">logged in user</param> /// <returns>response</returns> public async Task <DisciplinaryManagementResponse> UpdateDisciplinaryAsync(UpdateDisciplinaryManagementAc updateDisciplinary, ApplicationUser loggedInUser) { if (string.IsNullOrEmpty(updateDisciplinary.Subject.Trim())) { return new DisciplinaryManagementResponse() { HasError = true, Message = "Subject can't be empty", ErrorType = DisciplinaryManagementResponseType.Subject } } ; else if (string.IsNullOrEmpty(updateDisciplinary.Description.Trim())) { return new DisciplinaryManagementResponse() { HasError = true, Message = "Description can't be empty", ErrorType = DisciplinaryManagementResponseType.Description } } ; else { var instituteId = await _instituteUserMappingHelperService.GetUserCurrentSelectedInstituteIdAsync(loggedInUser.Id, true); if (!await _iMSDbContext.DisciplinaryStatuses.AnyAsync(x => x.InstituteId == instituteId && x.Id == updateDisciplinary.StatusId)) { return new DisciplinaryManagementResponse() { HasError = true, Message = "Status not found", ErrorType = DisciplinaryManagementResponseType.StatusId } } ; else { var disciplinary = await _iMSDbContext.Disciplinaries.FirstOrDefaultAsync(x => x.Id == updateDisciplinary.Id && x.Student.InstituteId == instituteId); if (disciplinary == null) { return new DisciplinaryManagementResponse() { HasError = true, Message = "Disciplinary not found", ErrorType = DisciplinaryManagementResponseType.Id } } ; else { disciplinary.CreatedOn = DateTime.UtcNow; disciplinary.Date = updateDisciplinary.Date; disciplinary.Description = updateDisciplinary.Description; disciplinary.Remarks = updateDisciplinary.Remarks; disciplinary.StatusId = updateDisciplinary.StatusId; disciplinary.Subject = updateDisciplinary.Subject; disciplinary.UpdatedById = loggedInUser.Id; disciplinary.UpdatedOn = DateTime.UtcNow; _iMSDbContext.Disciplinaries.Update(disciplinary); await _iMSDbContext.SaveChangesAsync(); return(new DisciplinaryManagementResponse() { HasError = false, Message = "Disciplinary updated successfully" }); } } } }
public async Task <IActionResult> UpdateDisciplinaryAsync([FromBody] UpdateDisciplinaryManagementAc updateDisciplinary) { var user = await _userManager.FindByNameAsync(User.Identity.Name); return(Ok(await _disciplinaryManagementRepository.UpdateDisciplinaryAsync(updateDisciplinary, user))); }