public async Task <ActionResult> GetDashboardRobotsAsync([FromBody] RobotFilterParamsDto filterParams) { BuildUserPrincipal(); filterParams.UserId = ApiUser.Id; var robots = await _robotService.GetDashboardRobotByFilterParamsAsync(filterParams); return(Json(JsonResultData.Success(robots))); }
public async Task <CollectionResult <GetDashboardRobotDto> > GetDashboardRobotByFilterParamsAsync( RobotFilterParamsDto filterParamsDto, CancellationToken ct = default) { var filterParams = _mapper.Map <RobotFilterParams>(filterParamsDto); var robotModels = await _unitOfWork.RobotRepository.GetDashboardRobotByFilterParamsAsync(filterParams, ct); return(_mapper.Map <CollectionResult <GetDashboardRobotDto> >(robotModels)); }
public async Task <CollectionResult <GetRobotDto> > GetRobotsByFilterParamsAsync( RobotFilterParamsDto filterParamsDto, CancellationToken ct = default) { var filterParams = _mapper.Map <RobotFilterParams>(filterParamsDto); var robotModels = await _unitOfWork.RobotRepository.GetRobotByFilterParamsAsync(filterParams, ct); var result = _mapper.Map <CollectionResult <GetRobotDto> >(robotModels); foreach (var robot in result.Collection) { robot.IsFavorite = robot.UserFavorites.Any(t => t == filterParams.UserId); } return(result); }
public async Task <ActionResult> GetRobotsAsync([FromBody] RobotFilterParamsDto filterParams) { BuildUserPrincipal(); if (ApiUser.Role == Role.User) { filterParams.UserId = ApiUser.Id; } if (filterParams.FilterType == RobotFilterType.OnlyInterestedAt) { filterParams.UserInterests = ApiUser.Interests; } var robots = await _robotService.GetRobotsByFilterParamsAsync(filterParams); if (filterParams.FilterType == RobotFilterType.OnlyInterestedAt && !robots.Collection.Any()) { _client.Enqueue(() => _userService.AddUserSearchResultAsync(ApiUser.Id, CancellationToken.None)); } return(Json(JsonResultData.Success(robots))); }