示例#1
0
        public async Task <IActionResult> GetConsumtionList([FromQuery] PaginationInputBase input)
        {
            if (string.IsNullOrEmpty(input.SearchTerm) && string.IsNullOrEmpty(input.OrderBy))
            {
                var waterConsumtionDtos = await waterService.GetWaterConsumptionsTotal(input);

                var resultPagination = mapper.Map <PaginationSet <WaterConsumtionTotalContract> >(waterConsumtionDtos);

                return(new OkObjectResult(new ResponseAsObject(resultPagination)));
            }
            else if (!string.IsNullOrEmpty(input.SearchTerm) && string.IsNullOrEmpty(input.OrderBy))
            {
                var waterConsumtionDtos = await waterService.GetWaterConsumptionsTotalByDate(input);

                var resultPagination = mapper.Map <PaginationSet <WaterConsumtionTotalContract> >(waterConsumtionDtos);

                return(new OkObjectResult(new ResponseAsObject(resultPagination)));
            }
            else if (!string.IsNullOrEmpty(input.SearchTerm) && input.OrderBy == "Filter")
            {
                var waterConsumtionDtos = await waterService.GetWaterConsumptionsNotExistOnBlockchainTotalByDate(input);

                var resultPagination = mapper.Map <PaginationSet <WaterConsumtionTotalContract> >(waterConsumtionDtos);

                return(new OkObjectResult(new ResponseAsObject(resultPagination)));
            }
            else
            {
                var waterConsumtionDtos = await waterService.GetListWaterNotExistOnBlockchain(input);

                var resultPagination = mapper.Map <PaginationSet <WaterConsumtionTotalContract> >(waterConsumtionDtos);

                return(new OkObjectResult(new ResponseAsObject(resultPagination)));
            }
        }
示例#2
0
        public async Task <IActionResult> GetWaterSellingList([FromQuery] PaginationInputBase input)
        {
            if (string.IsNullOrEmpty(input.SearchTerm) && string.IsNullOrEmpty(input.OrderBy))
            {
                var waterSellingDtos = await waterService.GetWaterSellingList(input);

                return(new OkObjectResult(new ResponseAsObject(mapper.Map <PaginationSet <WaterSellingContract> >(waterSellingDtos))));
            }
            else if (!string.IsNullOrEmpty(input.SearchTerm) && string.IsNullOrEmpty(input.OrderBy))
            {
                var waterSellingDtos = await waterService.GetWaterSellingListByDate(input);

                return(new OkObjectResult(new ResponseAsObject(mapper.Map <PaginationSet <WaterSellingContract> >(waterSellingDtos))));
            }
            else if (!string.IsNullOrEmpty(input.SearchTerm) && input.OrderBy == "Filter")
            {
                var waterSellingDtos = await waterService.GetWaterSellingListNotExistOnBlockchainByDate(input);

                return(new OkObjectResult(new ResponseAsObject(mapper.Map <PaginationSet <WaterSellingContract> >(waterSellingDtos))));
            }
            else
            {
                var waterSellingDtos = await waterService.GetWaterSellingListNotExistOnBlockchain(input);

                return(new OkObjectResult(new ResponseAsObject(mapper.Map <PaginationSet <WaterSellingContract> >(waterSellingDtos))));
            }
        }
示例#3
0
        public async Task <IActionResult> GetListUserNotExistOnBlockchain([FromQuery] PaginationInputBase input)
        {
            var userDtos = await membershipService.GetListUserNotExistOnBlockchain(input);

            var resultPagination = mapper.Map <PaginationSet <UserContract> >(userDtos);

            return(new OkObjectResult(new ResponseAsObject(resultPagination)));
        }
        public async Task <PaginationSet <UserDto> > GetAllUsers(PaginationInputBase input)
        {
            var users = from aspUsers in dbMemberShip.AspNetUsers
                        join userInfo in dbMemberShip.UserInfo on aspUsers.Id equals userInfo.Id
                        select new UserDto
            {
                Id        = aspUsers.Id,
                FullName  = aspUsers.UserInfo.FullName,
                UserName  = aspUsers.UserName,
                Email     = aspUsers.Email,
                Address   = aspUsers.UserInfo.Address,
                Longitude = aspUsers.UserInfo.Longitude,
                Latitude  = aspUsers.UserInfo.Latitude
            };

            var listUser = users.ToList();

            for (int i = 0; i < listUser.Count; i++)
            {
                var userBlockchain = await dbBlockchain
                                     .UserBlockChains
                                     .FirstOrDefaultAsync(u => u.Id == listUser[i].Id);

                if (userBlockchain != null)
                {
                    listUser[i].isExistedOnNem = true;
                }
                else
                {
                    listUser[i].isExistedOnNem = false;
                }
            }


            int totalCount = await users
                             .CountAsync();

            //var items = await users
            //    .Skip(input.PageSize * input.PageIndex)
            //    .Take(input.PageSize)
            //    .ToArrayAsync();

            var items = listUser
                        .Skip(input.PageSize * input.PageIndex)
                        .Take(input.PageSize)
                        .ToArray();

            return(new PaginationSet <UserDto>()
            {
                Items = items,
                PageIndex = input.PageIndex,
                PageSize = input.PageSize,
                TotalCount = totalCount
            });
        }
        public async Task <PaginationSet <WaterBuyingDto> > GetWaterBuyingListByDate(PaginationInputBase input)
        {
            string searchTerm = string.IsNullOrEmpty(input.SearchTerm) ? "" : input.SearchTerm;

            var param = new SqlParameter("@BuyTime", searchTerm);

            var waterBuyingList = dbWater
                                  .WaterBuyingViewModels
                                  .FromSql("Pro_GetWaterBuyingListByDate @BuyTime", param);

            var listWaterBuying = mapper.Map <List <WaterBuyingDto> >(waterBuyingList.ToList());

            for (int i = 0; i < listWaterBuying.Count; i++)
            {
                var waterBuyingBlockchain = await dbBlockchain
                                            .WaterBuyingBlockChains
                                            .FirstOrDefaultAsync(w => w.Id == listWaterBuying[i].BuyerId && w.BuyTime == DateTime.Parse(listWaterBuying[i].BuyTime));

                if (waterBuyingBlockchain != null)
                {
                    listWaterBuying[i].isExistedOnNem = true;
                }
                else
                {
                    listWaterBuying[i].isExistedOnNem = false;
                }
            }

            int totalCount = await waterBuyingList
                             .CountAsync();

            //var items = await waterBuyingList
            //    .Skip(input.PageSize * input.PageIndex)
            //    .Take(input.PageSize)
            //    .ToArrayAsync();

            var items = listWaterBuying
                        .Skip(input.PageSize * input.PageIndex)
                        .Take(input.PageSize)
                        .ToArray();

            return(new PaginationSet <WaterBuyingDto>
            {
                Items = items,
                PageIndex = input.PageIndex,
                PageSize = input.PageSize,
                TotalCount = totalCount
            });
        }
        public async Task <PaginationSet <WaterSellingDto> > GetWaterSellingList(PaginationInputBase input)
        {
            var waterSellingList = dbWater
                                   .WaterSellingViewModels
                                   .FromSql("Pro_GetWaterSellingList");

            var listWaterSelling = mapper.Map <List <WaterSellingDto> >(waterSellingList.ToList());

            for (int i = 0; i < listWaterSelling.Count; i++)
            {
                var waterSellingBlockchain = await dbBlockchain
                                             .WaterSellingBlockChains
                                             .FirstOrDefaultAsync(w => w.Id == listWaterSelling[i].SellerId && w.SellTime == DateTime.Parse(listWaterSelling[i].SellTime));

                if (waterSellingBlockchain != null)
                {
                    listWaterSelling[i].isExistedOnNem = true;
                }
                else
                {
                    listWaterSelling[i].isExistedOnNem = false;
                }
            }

            int totalCount = await waterSellingList
                             .CountAsync();

            //var items = await waterSellingList
            //    .Skip(input.PageSize * input.PageIndex)
            //    .Take(input.PageSize)
            //    .ToArrayAsync();

            var items = listWaterSelling
                        .Skip(input.PageSize * input.PageIndex)
                        .Take(input.PageSize)
                        .ToArray();

            return(new PaginationSet <WaterSellingDto>
            {
                Items = items,
                PageIndex = input.PageIndex,
                PageSize = input.PageSize,
                TotalCount = totalCount
            });
        }
        public async Task <PaginationSet <WaterConsumtionTotalDto> > GetListWaterNotExistOnBlockchain(PaginationInputBase input)
        {
            var waterConsumptions = dbWater
                                    .WaterConsumtionTotalViewModels
                                    .FromSql("Pro_GetWaterConsumptionsTotal");

            var listWaterConsumption = mapper.Map <List <WaterConsumtionTotalDto> >(waterConsumptions.ToList());
            List <WaterConsumtionTotalDto> listWaterNotExistOnBlockchain = new List <WaterConsumtionTotalDto>();

            for (int i = 0; i < listWaterConsumption.Count; i++)
            {
                var waterBlockchain = await dbBlockchain
                                      .WaterBlockChains
                                      .FirstOrDefaultAsync(w => w.Id == listWaterConsumption[i].UserId && w.LogTime == listWaterConsumption[i].LogTime);

                if (waterBlockchain == null)
                {
                    listWaterConsumption[i].isExistedOnNem = false;
                    listWaterNotExistOnBlockchain.Add(listWaterConsumption[i]);
                }
            }

            int totalCount = listWaterNotExistOnBlockchain.Count;

            var items = listWaterNotExistOnBlockchain
                        .Skip(input.PageSize * input.PageIndex)
                        .Take(input.PageSize)
                        .ToArray();

            return(new PaginationSet <WaterConsumtionTotalDto>
            {
                Items = items,
                PageIndex = input.PageIndex,
                PageSize = input.PageSize,
                TotalCount = totalCount
            });
        }