Exemple #1
0
        public async Task <IActionResult> UpdateActivityStatusAsync([FromBody] UpdateActivityStatusAC updateActivityStatus)
        {
            if (string.IsNullOrEmpty(updateActivityStatus.Name.Trim()))
            {
                return(Ok(new SharedLookUpResponse()
                {
                    ErrorType = SharedLookUpResponseType.Name, HasError = true, Message = "Activity Status name can't be empty"
                }));
            }
            else if (string.IsNullOrEmpty(updateActivityStatus.Code.Trim()))
            {
                return(Ok(new SharedLookUpResponse()
                {
                    ErrorType = SharedLookUpResponseType.Code, HasError = true, Message = "Activity Status code can't be empty"
                }));
            }
            else
            {
                int loggedInUserInstituteId = await GetUserCurrentSelectedInstituteIdAsync();

                if (await _iMSDbContext.ActivityStatus.AnyAsync(x => x.Id == updateActivityStatus.ActivityStatusId && x.InstituteId == loggedInUserInstituteId))
                {
                    return(Ok(await _activityStatusManagementRepository.UpdateActivityStatusAsync(updateActivityStatus, loggedInUserInstituteId)));
                }
                else
                {
                    return(Ok(new SharedLookUpResponse()
                    {
                        HasError = true, ErrorType = SharedLookUpResponseType.Code, Message = "Activity Status not found"
                    }));
                }
            }
        }
        /// <summary>
        /// Method to update Activity Status - RS
        /// </summary>
        /// <param name="updateMeetingAgenda">Slab detail</param>
        /// <param name="instituteId">institute id</param>
        /// <returns>message</returns>
        public async Task <SharedLookUpResponse> UpdateActivityStatusAsync(UpdateActivityStatusAC updateActivityStatus, int instituteId)
        {
            List <ActivityStatus> activityStatuses = await _iMSDbContext.ActivityStatus.Where(x => x.InstituteId == instituteId && x.Id != updateActivityStatus.ActivityStatusId).ToListAsync();

            bool isDuplicate = activityStatuses.Any(x => x.Code.ToLowerInvariant() == updateActivityStatus.Code.ToLowerInvariant());

            if (isDuplicate)
            {
                return new SharedLookUpResponse()
                       {
                           HasError = true, ErrorType = SharedLookUpResponseType.Code, Message = "Duplicate code of Activity Status. Please use unique code"
                       }
            }
            ;
            else
            {
                ActivityStatus activityStatus = await _iMSDbContext.ActivityStatus.FirstAsync(x => x.Id == updateActivityStatus.ActivityStatusId);

                activityStatus.Name        = updateActivityStatus.Name;
                activityStatus.Code        = updateActivityStatus.Code;
                activityStatus.Description = updateActivityStatus.Description;
                activityStatus.Status      = updateActivityStatus.Status;

                _iMSDbContext.ActivityStatus.Update(activityStatus);
                await _iMSDbContext.SaveChangesAsync();

                return(new SharedLookUpResponse()
                {
                    HasError = false, Message = "Activity Status updated successfully"
                });
            }
        }