Esempio n. 1
0
        public async Task <IActionResult> Index()
        {
            string userId = User.FindFirstValue(ClaimTypes.NameIdentifier);
            List <BankListViewModel> vmList   = new List <BankListViewModel>();
            IEnumerable <Expense>    expenses = await _dbContext.Expenses.Include(x => x.Category).Include(x => x.Persons_Expenses).ThenInclude(x => x.Person).Where(expense => expense.BankAppIdentityId == userId).ToListAsync();

            IEnumerable <Expense> sortedExpenses = expenses.OrderBy(x => x.Date);

            foreach (var expense in sortedExpenses)
            {
                BankListViewModel vm = new BankListViewModel()
                {
                    Id          = expense.Id,
                    Description = expense.Description,
                    Amount      = expense.Amount,
                    Category    = expense.Category.Name,
                    Date        = expense.Date,
                    PhotoUrl    = expense.PhotoUrl,
                    Persons     = expense.Persons_Expenses.Select(pe => pe.Person.Name).ToList(),
                };
                vmList.Add(vm);
            }

            return(View(vmList));
        }
        public async Task <BankListViewModel> GetAllBanks(GetAllBanksQuery request, CancellationToken cancellationToken)
        {
            var filteredBanks = _context.Banks
                                .Where(x => !request.ServiceIds.Any() ||
                                       x.Branches.Any(b => b.Counters.Any(c =>
                                                                          c.CounterServices.Any(cs =>
                                                                                                request.ServiceIds.Contains(cs.ServiceId)))));

            var filteredBranches = _context.Branches
                                   .Where(x => !request.ServiceIds.Any() ||
                                          x.Counters.Any(c =>
                                                         c.CounterServices.Any(cs =>
                                                                               request.ServiceIds.Contains(cs.ServiceId))));

            var branchCounters = _context.Counters
                                 .Where(x => !request.ServiceIds.Any() ||
                                        x.Branch.Counters.Any(c =>
                                                              c.CounterServices.Any(cs =>
                                                                                    request.ServiceIds.Contains(cs.ServiceId))));

            var counterServices = _context.CounterServices
                                  .Where(x => !request.ServiceIds.Any() ||
                                         request.ServiceIds.Contains(x.ServiceId));

            var services = _context.Services
                           .Where(x => !request.ServiceIds.Any() ||
                                  request.ServiceIds.Contains(x.ServiceId));

            var queryResult = (from bank in filteredBanks
                               join branch in filteredBranches on bank.Id equals branch.BankId
                               join branchCounter in branchCounters on branch.BranchId equals branchCounter.BranchId
                               join counterService in counterServices on branchCounter.CounterId equals counterService.CounterId
                               join service in services on counterService.ServiceId equals service.ServiceId
                               select new BankGeneralDto
            {
                BankId = bank.Id ?? 0,
                BankName = bank.Name,
                Url = bank.Url,
                BranchId = branch.BranchId,
                Address = branch.Address,
                Phone = branch.Phone,
                ServiceId = service.ServiceId,
                ServiceName = service.ServiceName
            })
                              .Distinct()
                              .AsNoTracking();

            return(await BankListViewModel.Create(queryResult, cancellationToken));
        }
        public DashboardViewModel(
                    BankListViewModel banksViewModel,
                    BankAccountListViewModel bankAccountsViewModel,
                    TransferListViewModel transferListViewModel
                    )
        {
            this.banksViewModel = banksViewModel;
            this.bankAccountsViewModel = bankAccountsViewModel;
            this.transferListViewModel = transferListViewModel;

            ReloadCommand = base.AddNewCommand(new ActionCommand(Reload));
            AddCommand = base.AddNewCommand(new ActionCommand(Add));
            EditCommand = base.AddNewCommand(new ActionCommand(Edit,CanEdit));
            DeleteCommand = base.AddNewCommand(new ActionCommand(Delete, CanDelete));
        }
Esempio n. 4
0
        public PartialViewResult BankList(BankSearchViewModel model)
        {
            int    pageIndex = model.Page ?? 1;
            string sql       = "select * from BANKALAR where ban_kod like '%" + model.BankaKod + "%' and ban_ismi like '%" + model.Bankaismi + "%'  order by ban_RECno desc";
            var    banks     = _bankahesaplarORM.GetList(sql);

            List <BankListViewModel> list = new List <BankListViewModel>();

            foreach (var item in banks)
            {
                BankListViewModel ban = new BankListViewModel();
                ban.Id        = item.ban_RECno;
                ban.BankaKod  = item.ban_kod;
                ban.BankaIsmi = item.ban_ismi;
                list.Add(ban);
            }
            model.BankList = list.ToPagedList(pageIndex, 5);
            if (Request.IsAjaxRequest())
            {
                return(PartialView("_bankList", model));
            }
            return(PartialView("_bankPopup", model));
        }