public async Task <IActionResult> AccountDetails(
            [FromRoute] int tenantId,
            [FromRoute] int accountId,
            [FromQuery] PaginationViewModel pagination)
        {
            // TODO: Either in here or in an attribute, verify authorization for the tenant
            var account = await _accountRepository.GetAccountByIdAsync(accountId);

            if (account == null)
            {
                return(NotFound());
            }

            // TODO: If doesn't belong to selected tenant either 404 not found or 403 forbidden

            // Get pending transactions
            var pendingTransactions = await _accountRepository.GetPendingTransactionsAsync(accountId);

            // Get posted transactions
            var paginationModel             = ViewBag.Pagination as Pagination;
            var paginatedPostedTransactions = await _accountRepository.GetPostedTransactionsAsync(
                accountId,
                paginationModel);

            var resultViewModel = new AccountDetailsViewModel()
            {
                Account             = AccountDisplayViewModel.FromModel(account),
                PendingTransactions = pendingTransactions.Select(AccountTransactionViewModel.FromModel),
                PostedTransactions  = new PagedResult <AccountTransactionViewModel>()
                {
                    Pagination = paginatedPostedTransactions.Pagination,
                    Results    = paginatedPostedTransactions.Results.Select(AccountTransactionViewModel.FromModel)
                }
            };

            return(View(resultViewModel));
        }
예제 #2
0
        public ActionResult CareerClusterDisplay(int id)
        {
            AccountDisplayViewModel model = new AccountDisplayViewModel();

            using (var db = new WiredHackEntities())
            {
                var item = db.CareerClusters.Where(cc => cc.CCId == id);
                model.ClustClusterName = item.FirstOrDefault().Name;
                model.ClustClusterDescription = item.FirstOrDefault().Description;
            }

            return View(model);
        }
예제 #3
0
 public ActionResult SchoolDisplay(int Id)
 {
     using (var db = new WiredHackEntities())
     {
         var model = new AccountDisplayViewModel();
         var itemUniversity = db.Universities.Where(cc => cc.Id == Id);
         if (itemUniversity.Any())
         {
             model.UniAddress = itemUniversity.FirstOrDefault().Address;
             model.UniName = itemUniversity.FirstOrDefault().Name;
             model.UniState = itemUniversity.FirstOrDefault().State;
             model.UniCity = itemUniversity.FirstOrDefault().City;
             model.UniZip = itemUniversity.FirstOrDefault().Zip;
             model.UniDescription = itemUniversity.FirstOrDefault().Description;
             model.UniCounty = itemUniversity.FirstOrDefault().County;
             model.UniLogo = itemUniversity.FirstOrDefault().Logo;
         }
         return View(model);
     }
 }
예제 #4
0
        public ActionResult EmployerDisplay(int Id)
        {
            using (var db = new WiredHackEntities())
            {
                var model = new AccountDisplayViewModel();
            var itemEmployer =
                        db.Employers.Where(cc => cc.EmployerID == Id);

            if (itemEmployer.Any())
            {
                model.EmployerName = itemEmployer.FirstOrDefault().Name;
                model.EmployerDescription = itemEmployer.FirstOrDefault().Description;
                model.EmployerId = itemEmployer.FirstOrDefault().EmployerID;
                model.EmployerAddress = itemEmployer.FirstOrDefault().Address + "</br>" +
                                        itemEmployer.FirstOrDefault().Address2;
                model.EmployerCity = itemEmployer.FirstOrDefault().City;
                model.EmployerState = itemEmployer.FirstOrDefault().State;
                model.EmployerZip = itemEmployer.FirstOrDefault().Zip;
                model.EmployerCounty = itemEmployer.FirstOrDefault().County;
                model.EmployerPhone = itemEmployer.FirstOrDefault().Phone;
                model.EmployerAmtOfEmployees = itemEmployer.FirstOrDefault().NumEmployees;
                model.EmployerLogo = itemEmployer.FirstOrDefault().Logo;


            }
            return View(model);

            }
        }
예제 #5
0
        public ActionResult JobDisplay(int Id)
        {
            using (var db = new WiredHackEntities())
            {
                var model = new AccountDisplayViewModel();
                var itemEmployeeJonCon = db.EmployeeJobConnections.Where(cc => cc.JobId == Id);
                if (itemEmployeeJonCon.Any())
                {
                    model.JobPayRate = itemEmployeeJonCon.FirstOrDefault().PayRate;
                    model.JobStartDate = itemEmployeeJonCon.FirstOrDefault().StartDate;
                    model.JobEndDate = itemEmployeeJonCon.FirstOrDefault().EndDate.HasValue
                        ? itemEmployeeJonCon.FirstOrDefault().EndDate.Value
                        : new DateTime(1, 1, 1);


                    var itemJob = db.Jobs.Where(cc => cc.JobID == itemEmployeeJonCon.FirstOrDefault().JobId);
                    if (itemJob.Any())
                    {
                        model.JobName = itemJob.FirstOrDefault().Name;
                        model.JobBaseSalary = itemJob.FirstOrDefault().BaseSalary;
                    }
                    var itemJobCCConnect =
                                    db.JobCCConnections.Where(cc => cc.JobID == itemJob.FirstOrDefault().JobID);
                    if (itemJobCCConnect.Any())
                    {
                        var itemCareerCluster =
                            db.CareerClusters.Where(
                                cc => cc.CCId == itemJobCCConnect.FirstOrDefault().CCID);
                        if (itemCareerCluster.Any())
                        {
                            model.ClustClusterDescription =
                                itemCareerCluster.FirstOrDefault().Description;
                            model.ClustClusterName = itemCareerCluster.FirstOrDefault().Name;
                            model.CCID = itemCareerCluster.FirstOrDefault().CCId;
                        }
                    }
                }
                return View(model);
            }
        }
예제 #6
0
        public ActionResult AccountDisplay(int Id)
        {
            AccountDisplayViewModel model = new AccountDisplayViewModel();
            using (var db = new WiredHackEntities())
            {
                var itemUsers = db.Users.Where(cc => cc.Id == Id);
                model.AccFirstName = itemUsers.FirstOrDefault().FirstName;
                model.AccLastName = itemUsers.FirstOrDefault().LastName;

                if (itemUsers.FirstOrDefault().EmployerId.HasValue)
                {
                    var itemEmployer =
                        db.Employers.Where(cc => cc.EmployerID == itemUsers.FirstOrDefault().EmployerId.Value);
                    if (itemEmployer.Any())
                    {
                        model.EmployerName = itemEmployer.FirstOrDefault().Name;
                        model.EmployerDescription = itemEmployer.FirstOrDefault().Description;
                        model.EmployerId = itemEmployer.FirstOrDefault().EmployerID;
                        model.EmployerAddress = itemEmployer.FirstOrDefault().Address + "</br>" +
                                                itemEmployer.FirstOrDefault().Address2;
                        model.EmployerCity = itemEmployer.FirstOrDefault().City;
                        model.EmployerState = itemEmployer.FirstOrDefault().State;
                        model.EmployerZip = itemEmployer.FirstOrDefault().Zip;
                        model.EmployerCounty = itemEmployer.FirstOrDefault().County;
                        model.EmployerPhone = itemEmployer.FirstOrDefault().Phone;
                        model.EmployerAmtOfEmployees = itemEmployer.FirstOrDefault().NumEmployees;
                        model.EmployerLogo = itemEmployer.FirstOrDefault().Logo;


                    }
                }
                if (itemUsers.FirstOrDefault().EmployeeId.HasValue)
                {
                    model.AccEmployeeId = itemUsers.FirstOrDefault().EmployeeId.Value;
                    var itemEmployee = db.Employees.Where(cc => cc.Id == itemUsers.FirstOrDefault().Id);
                    if (itemEmployee.Any())
                    {
                        model.AccAddress = itemEmployee.FirstOrDefault().Address;
                        model.AccCity = itemEmployee.FirstOrDefault().City;
                        model.AccState = itemEmployee.FirstOrDefault().State;
                        model.AccZip = itemEmployee.FirstOrDefault().Zip;
                        model.AccCounty = itemEmployee.FirstOrDefault().County;
                        model.AccImage = itemEmployee.FirstOrDefault().Image;
                        model.AccJobId = itemEmployee.FirstOrDefault().JobID.HasValue
                            ? itemEmployee.FirstOrDefault().JobID.Value
                            : 0;
                        model.AccBio = itemEmployee.FirstOrDefault().Bio;
                        model.UniID = itemEmployee.FirstOrDefault().UniversityID;
                        model.MajorID = itemEmployee.FirstOrDefault().MajorID;

                       var itemEmployeeJonCon = db.EmployeeJobConnections.Where(cc => cc.JobId == model.AccJobId);
                        if (itemEmployeeJonCon.Any())
                        {
                            model.JobPayRate = itemEmployeeJonCon.FirstOrDefault().PayRate;
                            model.JobStartDate = itemEmployeeJonCon.FirstOrDefault().StartDate;
                            model.JobEndDate = itemEmployeeJonCon.FirstOrDefault().EndDate.HasValue
                                ? itemEmployeeJonCon.FirstOrDefault().EndDate.Value
                                : new DateTime(1, 1, 1);
                           

                            var itemJob = db.Jobs.Where(cc => cc.JobID == itemEmployeeJonCon.FirstOrDefault().JobId);
                            if (itemJob.Any())
                            {
                            model.JobName = itemJob.FirstOrDefault().Name;
                            model.JobBaseSalary = itemJob.FirstOrDefault().BaseSalary;
                                
                            var itemJobCCConnect =
                                    db.JobCCConnections.Where(cc => cc.JobID == itemJob.FirstOrDefault().JobID);
                            if (itemJobCCConnect.Any())
                            {
                                var itemCareerCluster =
                                    db.CareerClusters.Where(
                                        cc => cc.CCId == itemJobCCConnect.FirstOrDefault().CCID);
                                if (itemCareerCluster.Any())
                                {
                                    model.ClustClusterDescription =
                                        itemCareerCluster.FirstOrDefault().Description;
                                    model.ClustClusterName = itemCareerCluster.FirstOrDefault().Name;
                                    model.CCID = itemCareerCluster.FirstOrDefault().CCId;
                                }
                            }
                            }
                        }
                        var itemUniversity = db.Universities.Where(cc => cc.Id == model.UniID);
                        if (itemUniversity.Any())
                        {
                            model.UniAddress = itemUniversity.FirstOrDefault().Address;
                            model.UniName = itemUniversity.FirstOrDefault().Name;
                            model.UniState = itemUniversity.FirstOrDefault().State;
                            model.UniCity = itemUniversity.FirstOrDefault().City;
                            model.UniZip = itemUniversity.FirstOrDefault().Zip;
                            model.UniDescription = itemUniversity.FirstOrDefault().Description;
                            model.UniCounty = itemUniversity.FirstOrDefault().County;
                            model.UniLogo = itemUniversity.FirstOrDefault().Logo;
                        }

                        var itemMajor = db.Majors.Where(cc => cc.Id == model.MajorID);
                        if (itemMajor.Any())
                        {
                            model.MajorDescription = itemMajor.FirstOrDefault().Description;
                        }
                    }
                }
            }

                return View(model);
        }