Example #1
0
        public async Task <IActionResult> GetUsersAsync()
        {
            try
            {
                var users    = _userViewRepository.GetUserViews();
                var usersDto = new List <UserDto>();
                foreach (var item in users)
                {
                    var obj      = _mapper.Map <UserDto>(item);
                    var roleName = (Roles)obj.RoleId;
                    obj.RoleName = roleName.ToString();

                    if (!string.IsNullOrWhiteSpace(item.GroupName))
                    {
                        obj.RoleCode = item.GroupName;
                    }
                    else if (!string.IsNullOrWhiteSpace(item.DealerCode))
                    {
                        obj.RoleCode = item.DealerCode;
                    }
                    else if (!string.IsNullOrWhiteSpace(item.ClientCode))
                    {
                        obj.RoleCode = item.ClientCode;
                    }

                    usersDto.Add(obj);
                }
                return(Ok(usersDto));
            }
            catch (Exception ex)
            {
                _log.Error($"Error in GetUserAsync ", ex);
                return(StatusCode(500, new ErrorModel {
                    Message = ex.Message, HttpStatusCode = 500
                }));
            }
        }