public async Task <IActionResult> GetSupplierFood(int foodId) { FirebaseUser user = HttpContext.GetFirebaseUser(); GetSupplierFoodQuery model = new GetSupplierFoodQuery() { firebaseId = user.UserId, FoodId = foodId }; ResultWrapper <GetSupplierFoodOutput> result = new ResultWrapper <GetSupplierFoodOutput>(); result = await _mediator.Send(model); return(Ok(result)); }
public async Task <ResultWrapper <GetSupplierFoodOutput> > Handle(GetSupplierFoodQuery request, CancellationToken cancellationToken) { ResultWrapper <GetSupplierFoodOutput> result = new ResultWrapper <GetSupplierFoodOutput>(); var tData = await _dbContext.TFood .Include(x => x.TFoodType) .Include(x => x.TFoodNutritions).ThenInclude(x => x.TNutrition) .Include(x => x.TFoodNutritions).ThenInclude(x => x.TNutritionUnit) .FirstOrDefaultAsync(x => x.TUserId == request.SupplierId && x.Id == request.FoodId); if (tData == null) { result.Status = false; result.Message = "this food doesn't exists"; return(result); } result.Status = true; result.Result = new GetSupplierFoodOutput() { Id = tData.Id, Title = tData.Title, Enabled = tData.Enabled, Image = tData.Image.JoinWithCDNAddress(), Tags = tData.Tags ?? string.Empty, Price = tData.Price, FoodTypeId = tData.TFoodTypeId, FoodTypeName = tData.TFoodType.Title, FoodNutritions = tData.TFoodNutritions.Select(x => new GetSupplierFoodOutput.FoodNutrition() { NutritionId = x.TNutritionId, NutritionName = x.TNutrition.Title, Amount = x.Amount, UnitId = x.TNutritionUnitId, UnitName = x.TNutritionUnit.Title }) .ToList() }; return(result); }