public async Task <ResultWrapper <GetAllRegionCountriesOutput> > Handle(GetAllRegionCountriesQuery request, CancellationToken cancellationToken)
        {
            ResultWrapper <GetAllRegionCountriesOutput> result = new ResultWrapper <GetAllRegionCountriesOutput>();

            var tDataList = await _dbContext.TRegionCountry
                            .Include(x => x.TRegionStates).ThenInclude(x => x.TRegionCities)
                            .ThenInclude(x => x.TUsers).ToListAsync();

            var list = tDataList.Select(x => new PublicListItem()
            {
                Enabled  = x.Enabled,
                Selected = x.TRegionStates.SelectMany(z => z.TRegionCities)
                           .SelectMany(z => z.TUsers)
                           .Any(z => (z.FireBaseId == request.firebaseId) || (z.Id == request.userId)),
                Text  = x.Title,
                Value = x.Id.ToString(),
                Image = x.Image.JoinWithCDNAddress()
            })
                       .ToList();

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

            return(result);
        }
Example #2
0
        public async Task <IActionResult> GetRegionCountries(int userId = 0)
        {
            GetAllRegionCountriesQuery model = new GetAllRegionCountriesQuery()
            {
                userId = userId
            };
            ResultWrapper <GetAllRegionCountriesOutput> result = new ResultWrapper <GetAllRegionCountriesOutput>();

            result = await _mediator.Send(model);

            return(Ok(result));
        }
Example #3
0
        public async Task <IActionResult> GetRegionCountries()
        {
            FirebaseUser user = HttpContext.GetFirebaseUser();
            GetAllRegionCountriesQuery model = new GetAllRegionCountriesQuery()
            {
                firebaseId = user.UserId
            };
            ResultWrapper <GetAllRegionCountriesOutput> result = new ResultWrapper <GetAllRegionCountriesOutput>();

            result = await _mediator.Send(model);

            return(Ok(result));
        }