public async Task <IActionResult> UpdateDisciplinaryStatusAsync([FromBody] UpdateDisciplinaryStatusManagementAc updateDisciplinaryStatusManagement) { if (string.IsNullOrEmpty(updateDisciplinaryStatusManagement.Name.Trim())) { return(Ok(new SharedLookUpResponse() { ErrorType = SharedLookUpResponseType.Name, HasError = true, Message = "Disciplinary status name can't be empty" })); } if (string.IsNullOrEmpty(updateDisciplinaryStatusManagement.Code.Trim())) { return(Ok(new SharedLookUpResponse() { ErrorType = SharedLookUpResponseType.Code, HasError = true, Message = "Disciplinary status code can't be empty" })); } else { var loggedInUserInstituteId = await GetUserCurrentSelectedInstituteIdAsync(); if (await _iMSDbContext.DisciplinaryStatuses.AnyAsync(x => x.Id == updateDisciplinaryStatusManagement.Id && x.InstituteId == loggedInUserInstituteId)) { return(Ok(await _disciplinaryStatusManagementRepository.UpdateDisciplinaryStatusAsync(updateDisciplinaryStatusManagement, loggedInUserInstituteId))); } else { return(Ok(new SharedLookUpResponse() { HasError = true, ErrorType = SharedLookUpResponseType.Code, Message = "Disciplinary status not found" })); } } }
/// <summary> /// Method to update Disciplinary Status - SS /// </summary> /// <param name="updateDisciplinaryStatusManagement">DisciplinaryStatus detail</param> /// <param name="instituteId">institute id</param> /// <returns>message</returns> public async Task <SharedLookUpResponse> UpdateDisciplinaryStatusAsync(UpdateDisciplinaryStatusManagementAc updateDisciplinaryStatusManagement, int instituteId) { var disciplinaryStatuss = await _iMSDbContext.DisciplinaryStatuses.Where(x => x.InstituteId == instituteId && x.Id != updateDisciplinaryStatusManagement.Id).ToListAsync(); var isDuplicate = disciplinaryStatuss.Any(x => x.Code.ToLowerInvariant() == updateDisciplinaryStatusManagement.Code.ToLowerInvariant()); if (isDuplicate) { return new SharedLookUpResponse() { HasError = true, ErrorType = SharedLookUpResponseType.Code, Message = "Duplicate code of Disciplinary status. Please use unique code" } } ; else { var disciplinaryStatus = await _iMSDbContext.DisciplinaryStatuses.FirstAsync(x => x.Id == updateDisciplinaryStatusManagement.Id); disciplinaryStatus.Name = updateDisciplinaryStatusManagement.Name; disciplinaryStatus.Code = updateDisciplinaryStatusManagement.Code; disciplinaryStatus.Description = updateDisciplinaryStatusManagement.Description; disciplinaryStatus.Status = updateDisciplinaryStatusManagement.Status; _iMSDbContext.DisciplinaryStatuses.Update(disciplinaryStatus); await _iMSDbContext.SaveChangesAsync(); return(new SharedLookUpResponse() { Message = "Disciplinary status updated successfully", HasError = false }); } }