public IActionResult GetServiceInfo(string userId, string serviceTypeName) { var response = new ApiResponseModel(); var userOffice = _userOfficeRepository.GetSingle(x => x.UserId.Equals(userId)); if (userOffice == null) { return(NotFound(response)); } if (string.IsNullOrEmpty(serviceTypeName)) { var services = _userOfficeManager.GetUserServices(userOffice); var mapped = new List <ServiceInfoResponseModel>(); foreach (var s in services) { mapped.Add(_mapper.Map <ServiceInfoResponseModel>(s)); } response.Data.Add(nameof(services), mapped); return(Ok(response)); } var service = _userOfficeManager.GetUserService(userOffice, serviceTypeName); response.Data.Add(nameof(service), _mapper.Map <ServiceInfoResponseModel>(service)); return(Ok(response)); }
public override void OnActionExecuting(ActionExecutingContext context) { var userId = _httpContextAccessor.HttpContext.User.FindFirst(ClaimTypes.NameIdentifier)?.Value; var userOffice = _userOfficeRepository.GetSingle(x => x.UserId.Equals(userId)) ?? _userOfficeRepository.Create(new UserOffice { UserId = userId }); _userOfficeManager.AddServiceToUserOffice(userOffice, _appSettings.Value.ServiceTypeNames.PBXType); _userOfficeManager.AddServiceToUserOffice(userOffice, _appSettings.Value.ServiceTypeNames.CloudStorageType); base.OnActionExecuting(context); }
public OfficeController( IUserServcieRepository userServcieRepository, IHttpContextAccessor httpContextAccessor, IUserOfficeRepository userOfficeRepository, IUserOfficeManager userOfficeManager, IMapper mapper, IUserServiceDataRepository userServiceDataRepository) { _userServcieRepository = userServcieRepository; _httpContextAccessor = httpContextAccessor; _userOfficeRepository = userOfficeRepository; _userOfficeManager = userOfficeManager; _mapper = mapper; _userServiceDataRepository = userServiceDataRepository; _currentUserId = _httpContextAccessor.HttpContext.User.FindFirst(ClaimTypes.NameIdentifier)?.Value; UserOffice = _userOfficeRepository.GetSingle(x => x.UserId.Equals(_currentUserId)); }