public IEnumerable <Order> GetNewOrdersAvailableForFreelancer(string userName) { var result = repository.GetAll() .Include(a => a.Customer) .ThenInclude(a => a.ApplicationUser) .Include(a => a.Speciality) .Where(a => a.CurrentFreelancer == null); FreelancerUser user = _freelancerRepository.GetAll().Include(a => a.ApplicationUser) .Include(a => a.Specs) .FirstOrDefault(a => a.ApplicationUser.UserName == userName); List <Order> resultOrders = new List <Order>(); foreach (var order in result) { if (user.Specs != null) { if (user.Specs.Id == order.SpecialityId) { resultOrders.Add(order); } } } return(resultOrders); }
public async Task <IActionResult> Put([FromRoute] string id, [FromBody] FreelancerUser user) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != user.Id) { return(BadRequest()); } try { user.Specs = await _specialitiesRepository.Get(user.Specs.Id); await _freelancersRepository.Update(user); } catch (DbUpdateConcurrencyException) { return(NotFound()); } return(NoContent()); }