示例#1
0
        public async Task <ResultWrapper <GetAllDeficienciesOutput> > Handle(GetAllDeficienciesQuery request, CancellationToken cancellationToken)
        {
            ResultWrapper <GetAllDeficienciesOutput> result = new ResultWrapper <GetAllDeficienciesOutput>();

            var tDataList = await _dbContext.TDeficiency
                            .Include(x => x.TUserDeficiencies).ThenInclude(x => x.TUser)
                            .Include(x => x.TFoodDeficiencies).ThenInclude(x => x.TFood)
                            .ToListAsync();

            var list = tDataList.Select(x => new PublicListItem()
            {
                Enabled  = x.Enabled,
                Selected = x.TUserDeficiencies.Any(z => z.TUser.FireBaseId == request.firebaseId) || x.TFoodDeficiencies.Any(z => z.TFood.Id == request.foodId),
                Text     = x.Title,
                Value    = x.Id.ToString(),
                Image    = x.Image.JoinWithCDNAddress()
            })
                       .ToList();

            result.Status = true;
            result.Result = new GetAllDeficienciesOutput()
            {
                list = list
            };

            return(result);
        }
示例#2
0
        public async Task <IActionResult> GetDeficiencies()
        {
            FirebaseUser            user  = HttpContext.GetFirebaseUser();
            GetAllDeficienciesQuery model = new GetAllDeficienciesQuery()
            {
                firebaseId = user.UserId
            };
            ResultWrapper <GetAllDeficienciesOutput> result = new ResultWrapper <GetAllDeficienciesOutput>();

            result = await _mediator.Send(model);

            return(Ok(result));
        }