Esempio n. 1
0
        public async Task <IActionResult> Dashboard()
        {
            var viewModel = new HomeDashboardViewModel();

            var loggedUser = await userManager.GetUserAsync(User);

            var activeRoll = rollsService.GetActiveRoll <HomeDashboardRoll>();

            if (activeRoll != null)
            {
                viewModel.ActiveRoll = activeRoll;
            }

            if (loggedUser != null)
            {
                var isUserJoined = this.rollsService.IsUserJoined(loggedUser.Id, activeRoll?.Id);

                var user = new HomeDashboardUser
                {
                    AlreadyJoined   = isUserJoined,
                    IsLoggedIn      = loggedUser != null,
                    IsAdministrator = await userManager.IsInRoleAsync(loggedUser, Roles.Administrator),
                    Email           = loggedUser.Email
                };

                viewModel.User = user;
            }

            return(this.View(viewModel));
        }
Esempio n. 2
0
        public async Task <IActionResult> Dashboard()
        {
            HomeDashboardViewModel homeDashboardViewModel = new HomeDashboardViewModel()
            {
                Users                     = chatApplicationDBContext.Users.ToList(),
                MessagesBetween           = null,
                ReceiverUser              = null,
                LastMessageBetweenTwoUser = new Dictionary <string, Message>()
            };

            var loggedInUser = await userManager.GetUserAsync(User);

            for (int i = 0; i < homeDashboardViewModel.Users.Count; i++)
            {
                if (homeDashboardViewModel.Users[i] == loggedInUser)
                {
                    homeDashboardViewModel.Users.Remove(homeDashboardViewModel.Users[i]);
                }
            }
            for (int i = 0; i < homeDashboardViewModel.Users.Count; i++)
            {
                if (homeDashboardViewModel.Users[i] != loggedInUser)
                {
                    // fetch mesg between these 2 users.
                    var user2Id = homeDashboardViewModel.Users[i].Id;
                    var result  = chatApplicationDBContext.Messages.Where(q =>
                                                                          ((
                                                                               q.ReceiverUserID == user2Id) && (q.SenderUserID == loggedInUser.Id)) ||
                                                                          ((q.SenderUserID == user2Id) && (q.ReceiverUserID == loggedInUser.Id))
                                                                          );

                    if (result != null)
                    {
                        homeDashboardViewModel.MessagesBetween = result.ToList();
                        if (homeDashboardViewModel.MessagesBetween.Count != 0)
                        {
                            homeDashboardViewModel.LastMessageBetweenTwoUser[user2Id] = homeDashboardViewModel.MessagesBetween[homeDashboardViewModel.MessagesBetween.Count - 1];
                        }
                        else
                        {
                            homeDashboardViewModel.LastMessageBetweenTwoUser[user2Id] = null;
                        }
                    }
                    else
                    {
                        homeDashboardViewModel.LastMessageBetweenTwoUser[user2Id] = null;
                    }
                }
            }
            return(View(model: homeDashboardViewModel));
        }
        public async Task <IActionResult> Index()
        {
            var orgId = getOrg();

            orgDetails();

            var userId = User.FindFirst(ClaimTypes.NameIdentifier).Value;
            var user   = await _signInManager.UserManager.FindByIdAsync(userId);

            var userRoles = await _signInManager.UserManager.GetRolesAsync(user);

            ViewData["StatusMessage"] = StatusMessage;

            if (userRoles.Contains("Employee"))
            {
                return(RedirectToAction("Index", "EmployeeProfile"));
            }

            var clients = _context.Clients.Where(a => a.OrganisationId == orgId).ToList();
            var leads   = _context.LeadPolicies.Where(l => l.OrganisationId == orgId).ToList();

            HomeDashboardViewModel hdVM = new HomeDashboardViewModel();

            hdVM.HumanCapacityReport = _context.EmployeeDetails.Where(x => x.OrganisationId == orgId).Count();

            List <HeadCount> headCounts = new List <HeadCount>();
            var department = _context.Departments.Where(x => x.OrganisationId == orgId).ToList();

            var       allJobs = _context.Jobs.Where(x => x.OrganisationId == orgId);
            HeadCount hC;

            foreach (var item in department)
            {
                hC = new HeadCount();

                hC.Department = item.DepartmentName;
                hC.Female     = allJobs.Where(x => x.DepartmentId == item.Id).Where(x => x.EmployeeDetail.Gender == "Female").ToList().Count();
                hC.Male       = allJobs.Where(x => x.DepartmentId == item.Id).Where(x => x.EmployeeDetail.Gender == "Male").ToList().Count();

                headCounts.Add(hC);
            }

            hdVM.Clients    = clients.Count;
            hdVM.Leads      = leads.Count;
            hdVM.HeadCounts = headCounts;
            return(View(hdVM));
        }
        public async Task <IActionResult> Index()
        {
            TimeNotesUser identityUser = await _userManager.GetUserAsync(User);

            if (identityUser is null)
            {
                throw new ArgumentException($"Usuário não encontrado na base de dados.");
            }

            DateTime currentDate          = DateTime.Now.GetDateTimeInFirstDate();
            DateTime lastDaySearchedMonth = currentDate.GetDateTimeInLastDate();

            IEnumerable <HourPoints> userHourPoints = await _hourPointsRepository
                                                      .GetHourPointsWhere(x => (x.Date.Date >= currentDate.Date && x.Date.Date <= lastDaySearchedMonth.Date) && x.UserId.Equals(Guid.Parse(identityUser.Id)));

            HourPointConfigurations hourPointConfigurations = await _hourPointConfigurationsRepository.GetHourPointConfigurationsByUserId(Guid.Parse(identityUser.Id));

            HomeDashboardViewModel homeDashboardViewModel = new HomeDashboardViewModel(new MonthExtract(currentDate, userHourPoints, hourPointConfigurations));

            return(View(homeDashboardViewModel));
        }
Esempio n. 5
0
        public ActionResult Index()
        {
            if (!User.Identity.IsAuthenticated)
            {
                return(RedirectToAction("Login", "Cuenta"));
            }
            //else if (!User.IsInRole(RoleConst.Colaborador))
            //{
            //    var usuarioActual = UsuarioClienteHelper.Actual(db);

            //    //if(usuarioActual.Cliente.Habilitado)
            //        return RedirectToAction("Index", "Frontend");
            //    //else
            //    //    return RedirectToAction("Logoff", "Cuenta");
            //}
            //var userID = User.Identity.GetUserId();
            //var viewModel = new HomeDashboardViewModel() {
            //    UsuarioActual = new Repositorio<Colaborador>(db).TraerTodos().FirstOrDefault(x => x.UsuarioApplicacion.Id == userID)
            //};
            var viewModel = new HomeDashboardViewModel();

            return(View(viewModel));
        }
Esempio n. 6
0
        /// <summary>
        /// Constructor to subscription of events for overall program navigation.
        /// </summary>
        public MainWindowViewModel(IUnitOfWork unitOfWork)
        {
            NavCommand = new RelayCommand <string>(OnNav);

            //View Model Initializations
            _loginViewModel                    = new LoginViewModel(unitOfWork, DialogCoordinator.Instance);
            _homeDashboardViewModel            = new HomeDashboardViewModel();
            _inventoryDashboardViewModel       = new InventoryDashboardViewModel();
            _workCycleListViewModel            = new WorkCycleListViewModel(unitOfWork, DialogCoordinator.Instance);
            _addEditWorkingCycleViewModel      = new AddEditWorkingCycleViewModel(unitOfWork, DialogCoordinator.Instance);
            _purchaseOrderListViewModel        = new PurchaseOrderListViewModel(unitOfWork, DialogCoordinator.Instance);
            _addEditPurchaseOrderListViewModel = new AddEditPurchaseOrderViewModel(unitOfWork, DialogCoordinator.Instance);
            _supplierListViewModel             = new SupplierListViewModel(unitOfWork, DialogCoordinator.Instance);
            _rawMaterialListViewModel          = new RawMaterialListViewModel(unitOfWork, DialogCoordinator.Instance);
            _rawMaterialCategoryListViewModel  = new RawMaterialCategoryListViewModel(unitOfWork, DialogCoordinator.Instance);
            _locationListViewModel             = new LocationListViewModel(unitOfWork, DialogCoordinator.Instance);
            _inventorySettingViewModel         = new InventorySettingViewModel(unitOfWork, DialogCoordinator.Instance);
            _procurePurchaseOrderViewModel     = new ProcurePurchaseOrderViewModel(unitOfWork, DialogCoordinator.Instance);

            //Set Login context
            SetLoginContext();

            //Event Subscriptions
            _loginViewModel.LoginRequested += NavToHomeDashboard;

            _homeDashboardViewModel.LogoutRequested             += NavToLoginView;
            _homeDashboardViewModel.InventoryDashboardRequested += NavigateToInventoryDashboard;
            _inventoryDashboardViewModel.HomeDashboardRequested += NavToHomeDashboard;

            _inventoryDashboardViewModel.LogoutRequested                      += NavToLoginView;
            _inventoryDashboardViewModel.ManageWorkCyclesRequsted             += NavToManageWorkCycles;
            _inventoryDashboardViewModel.PurchaseOrdersListsViewRequested     += NavToPurchaseOrdersListView;
            _inventoryDashboardViewModel.SupplierListViewRequested            += NavToSupplierListView;
            _inventoryDashboardViewModel.RawMaterialListViewRequested         += NavToRawMaterialsListView;
            _inventoryDashboardViewModel.RawMaterialCategoryListViewRequested += NavToRawMaterialCategoryListView;
            _inventoryDashboardViewModel.LocationListViewRequested            += NavToLocationListView;
            _inventoryDashboardViewModel.InventorySettingViewRequested        += NavToInventorySettingView;
            _inventoryDashboardViewModel.ProcurePurchaseOrderViewRequested    += NavToProcurePurchaseOrderView;

            _workCycleListViewModel.InventoryDashboardRequested += NavigateToInventoryDashboard;
            _workCycleListViewModel.LogoutRequested             += NavToLoginView;
            _workCycleListViewModel.HomeViewRequested           += NavToHomeDashboard;
            _workCycleListViewModel.AddWorkCycleRequested       += NavToAddWorkCycleView;
            _workCycleListViewModel.EditWorkCycleRequested      += NavToEditWorkCycleView;

            _addEditWorkingCycleViewModel.LogoutRequested          += NavToLoginView;
            _addEditWorkingCycleViewModel.ManageWorkCyclesRequsted += NavToManageWorkCycles;
            _addEditWorkingCycleViewModel.Done += NavToManageWorkCycles;

            _purchaseOrderListViewModel.LogoutRequested             += NavToLoginView;
            _purchaseOrderListViewModel.InventoryDashboardRequested += NavigateToInventoryDashboard;
            _purchaseOrderListViewModel.HomeViewRequested           += NavToHomeDashboard;
            _purchaseOrderListViewModel.AddPurchaseOrderRequested   += NavToAddPurchaseOrder;
            _purchaseOrderListViewModel.EditPurchaseOrderRequested  += NavToEditPurchaseOrder;

            _addEditPurchaseOrderListViewModel.LogoutRequested             += NavToLoginView;
            _addEditPurchaseOrderListViewModel.HomeViewRequested           += NavToHomeDashboard;
            _addEditPurchaseOrderListViewModel.InventoryDashboardRequested += NavigateToInventoryDashboard;
            _addEditPurchaseOrderListViewModel.PurchaseOrderListRequested  += NavToPurchaseOrdersListView;
            _addEditPurchaseOrderListViewModel.Done += NavToPurchaseOrdersListView;

            _supplierListViewModel.LogoutRequested             += NavToLoginView;
            _supplierListViewModel.HomeViewRequested           += NavToHomeDashboard;
            _supplierListViewModel.InventoryDashboardRequested += NavigateToInventoryDashboard;

            _rawMaterialListViewModel.LogoutRequested             += NavToLoginView;
            _rawMaterialListViewModel.HomeViewRequested           += NavToHomeDashboard;
            _rawMaterialListViewModel.InventoryDashboardRequested += NavigateToInventoryDashboard;

            _rawMaterialCategoryListViewModel.LogoutRequested             += NavToLoginView;
            _rawMaterialCategoryListViewModel.HomeViewRequested           += NavToHomeDashboard;
            _rawMaterialCategoryListViewModel.InventoryDashboardRequested += NavigateToInventoryDashboard;

            _locationListViewModel.LogoutRequested             += NavToLoginView;
            _locationListViewModel.HomeViewRequested           += NavToHomeDashboard;
            _locationListViewModel.InventoryDashboardRequested += NavigateToInventoryDashboard;

            _inventorySettingViewModel.LogoutRequested             += NavToLoginView;
            _inventorySettingViewModel.HomeViewRequested           += NavToHomeDashboard;
            _inventorySettingViewModel.InventoryDashboardRequested += NavigateToInventoryDashboard;

            _procurePurchaseOrderViewModel.LogoutRequested             += NavToLoginView;
            _procurePurchaseOrderViewModel.HomeViewRequested           += NavToHomeDashboard;
            _procurePurchaseOrderViewModel.InventoryDashboardRequested += NavigateToInventoryDashboard;
        }