Exemplo n.º 1
0
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
            SetContentView(Resource.Layout.main);

            Forms.Init(this, bundle);

            MessagingCenter.Instance.Subscribe <string[]>(this, "DisplayAlert", (s) =>
            {
                DisplayAlert(s);
            });

            MessagingCenter.Instance.Subscribe <ProjectOnlineMobile2.Models2.UserModel>(this, "UserInfo", (userInfo) =>
            {
                UserName  = userInfo.UserName;
                UserEmail = userInfo.UserEmail;
            });

            MessagingCenter.Instance.Subscribe <String>(this, "TimesheetPeriod", (tsp) =>
            {
                TimesheetPeriod = tsp;
            });

            MessagingCenter.Instance.Subscribe <String>(this, "TimesheetStatus", (status) =>
            {
                SetTimesheetStatus(status);
            });

            MessagingCenter.Instance.Subscribe <ProjectOnlineMobile2.Models2.LineModel.LineModel>(this, "PushTimesheetWorkPage", (timesheetLine) =>
            {
                PushTimesheetWorkPage(timesheetLine);
            });

            MessagingCenter.Instance.Subscribe <string>(this, "ShowProjectDetails", (projectName) =>
            {
                ShowProjectDetails(projectName);
            });

            MessagingCenter.Instance.Subscribe <string>(this, "ShowEditTaskPage", (s) =>
            {
                PushOtherPages(Resource.Id.menu_tasks, "Edit task", Resource.Menu.edit_task_menu, _editTaskFragment);
            });

            MessagingCenter.Instance.Subscribe <ProjectOnlineMobile2.Models2.LineModel.LineModel>(this, "EditComment", (line) =>
            {
                dialogHelper.DisplayUpdateLineDialog(line.Comment, line.ID.ToString());
            });

            toolbar = FindViewById <Android.Support.V7.Widget.Toolbar>(Resource.Id.toolbar);
            if (toolbar != null)
            {
                SetSupportActionBar(toolbar);
                SupportActionBar.SetDisplayHomeAsUpEnabled(false);
                SupportActionBar.SetHomeButtonEnabled(false);
                toolbar.NavigationClick += (sender, e) => { GoBack(); };
            }

            bottomNavigation = FindViewById <BottomNavigationView>(Resource.Id.bottom_navigation);

            bottomNavigation.NavigationItemSelected += BottomNavigation_NavigationItemSelected;

            _homepageFragment      = new HomePage().CreateSupportFragment(this);
            _timesheetWorkFragment = new TimesheetWorkPage().CreateSupportFragment(this);
            _projectsFragment      = new ProjectPage().CreateSupportFragment(this);
            _tasksFragment         = new TasksPage().CreateSupportFragment(this);
            _timesheetFragment     = new TimesheetPage().CreateSupportFragment(this);

            _addProjectFragment  = new AddProjectPage().CreateSupportFragment(this);
            _addTaskFragment     = new AddTaskPage().CreateSupportFragment(this);
            _editTaskFragment    = new EditTaskPage().CreateSupportFragment(this);
            _projectInfoFragment = new ProjectInfoPage().CreateSupportFragment(this);

            dialogHelper = new DialogHelper(this);

            LoadFragment(Resource.Id.menu_projects);
        }
Exemplo n.º 2
0
        private void LoadPageById(int moduleId)
        {
            switch (moduleId)
            {
            case (int)AdministrationClass.Modules.OperationCatalog:
            {
                MinimazeMenu();

                if (!MainFrame.HasContent || !(MainFrame.Content is CatalogPage))
                {
                    var hasFullAccess =
                        AdministrationClass.HasFullAccess(AdministrationClass.Modules.OperationCatalog);
                    if (_cp == null)
                    {
                        _cp = new CatalogPage(hasFullAccess);
                    }
                    _cp.Tag = moduleId;
                    MainFrame.Navigate(_cp);
                    ShowWaitAnimation();
                }
            }
            break;

            case (int)AdministrationClass.Modules.Workers:
            {
                MinimazeMenu();

                if (!MainFrame.HasContent || !(MainFrame.Content is StaffPage))
                {
                    var hasFullAccess =
                        AdministrationClass.HasFullAccess(AdministrationClass.Modules.Workers);
                    if (_staffPage == null)
                    {
                        _staffPage = new StaffPage(hasFullAccess);
                    }
                    _staffPage.Tag = moduleId;
                    MainFrame.Navigate(_staffPage);
                    ShowWaitAnimation();
                }
            }
            break;

            case (int)AdministrationClass.Modules.TimeTracking:
            {
                if (_ttc.GetIsDayEnd(AdministrationClass.CurrentWorkerId))
                {
                    //MenuTogleButton.IsChecked = false;

                    //MessageBox.Show("Для запуска данного модуля необходимо начать рабочий день!", "Информация",
                    //    MessageBoxButton.OK, MessageBoxImage.Information);
                    //break;


                    BlinkWorkingDayButton();
                }
                else
                {
                    if (!MainFrame.HasContent || !(MainFrame.Content is TimeTrackingPage))
                    {
                        if (_ttp == null)
                        {
                            _ttp = new TimeTrackingPage();
                        }
                        _ttp.Tag = moduleId;
                        MainFrame.Navigate(_ttp);
                        ShowWaitAnimation();
                    }
                }
                MinimazeMenu();
            }
            break;

            case (int)AdministrationClass.Modules.Administration:
            {
                MinimazeMenu();

                if (!MainFrame.HasContent || !(MainFrame.Content is AdministrationPage))
                {
                    var hasFullAccess =
                        AdministrationClass.HasFullAccess(AdministrationClass.Modules.Administration);
                    if (_administrationPage == null)
                    {
                        _administrationPage = new AdministrationPage(hasFullAccess);
                    }
                    _administrationPage.Tag = moduleId;
                    MainFrame.Navigate(_administrationPage);
                    ShowWaitAnimation();
                }
            }
            break;

            case (int)AdministrationClass.Modules.ControlTimeTracking:
            {
                MinimazeMenu();

                if (!MainFrame.HasContent || !(MainFrame.Content is TimeControlPage))
                {
                    if (_timeControlPage == null)
                    {
                        _timeControlPage = new TimeControlPage();
                    }
                    _timeControlPage.Tag = moduleId;
                    MainFrame.Navigate(_timeControlPage);
                    ShowWaitAnimation();
                }
            }
            break;

            case (int)AdministrationClass.Modules.ServiceEquipment:
            {
                MinimazeMenu();

                if (!MainFrame.HasContent || !(MainFrame.Content is ServiceEquipmentPage))
                {
                    var hasFullAccess =
                        AdministrationClass.HasFullAccess(AdministrationClass.Modules.ServiceEquipment);
                    if (_serviceEquipmentPage == null)
                    {
                        _serviceEquipmentPage = new ServiceEquipmentPage(hasFullAccess);
                    }
                    _serviceEquipmentPage.Tag = moduleId;
                    MainFrame.Navigate(_serviceEquipmentPage);
                    ShowWaitAnimation();
                }
            }
            break;

            case (int)AdministrationClass.Modules.TasksPage:
            {
                MinimazeMenu();

                if (!MainFrame.HasContent || !(MainFrame.Content is TaskPage))
                {
                    var hasFullAccess =
                        AdministrationClass.HasFullAccess(AdministrationClass.Modules.TasksPage);
                    if (_taskPage == null)
                    {
                        _taskPage = new TaskPage(hasFullAccess);
                    }
                    _taskPage.Tag = moduleId;
                    MainFrame.Navigate(_taskPage);
                    ShowWaitAnimation();
                }
            }
            break;

            case (int)AdministrationClass.Modules.TechnologyProblem:
            {
                MinimazeMenu();

                if (!MainFrame.HasContent || !(MainFrame.Content is TechnologyProblemPage))
                {
                    var hasFullAccess =
                        AdministrationClass.HasFullAccess(AdministrationClass.Modules.TechnologyProblem);
                    if (_technologyProblemPage == null)
                    {
                        _technologyProblemPage = new TechnologyProblemPage(hasFullAccess);
                    }
                    _technologyProblemPage.Tag = moduleId;
                    MainFrame.Navigate(_technologyProblemPage);
                    ShowWaitAnimation();
                }
            }
            break;

            case (int)AdministrationClass.Modules.WorkersStimulation:
            {
                MinimazeMenu();

                if (!MainFrame.HasContent || !(MainFrame.Content is StimulationPage))
                {
                    var hasFullAccess =
                        AdministrationClass.HasFullAccess(AdministrationClass.Modules.WorkersStimulation);
                    if (_stimulationPage == null)
                    {
                        _stimulationPage = new StimulationPage(hasFullAccess);
                    }
                    _stimulationPage.Tag = moduleId;
                    MainFrame.Navigate(_stimulationPage);
                    ShowWaitAnimation();
                }
            }
            break;

            case (int)AdministrationClass.Modules.ProductionRooms:
            {
                if (!MainFrame.HasContent || !(MainFrame.Content is ProdRoomsPage))
                {
                    var hasFullAccess =
                        AdministrationClass.HasFullAccess(AdministrationClass.Modules.ProductionRooms);
                    if (_prodRoomsPage == null)
                    {
                        _prodRoomsPage = new ProdRoomsPage(hasFullAccess);
                    }
                    _prodRoomsPage.Tag = moduleId;
                    MainFrame.Navigate(_prodRoomsPage);
                    ShowWaitAnimation();
                }

                MinimazeMenu();
            }
            break;

            case (int)AdministrationClass.Modules.WorkshopMap:
            {
                MinimazeMenu();

                if (!MainFrame.HasContent || !(MainFrame.Content is WorkshopMapPage))
                {
                    var hasFullAccess =
                        AdministrationClass.HasFullAccess(AdministrationClass.Modules.WorkshopMap);
                    if (_workshopMapPage == null)
                    {
                        _workshopMapPage = new WorkshopMapPage(hasFullAccess);
                    }
                    _workshopMapPage.Tag = moduleId;
                    MainFrame.Navigate(_workshopMapPage);
                    ShowWaitAnimation();
                }
            }
            break;

            case (int)AdministrationClass.Modules.WorkerRequests:
            {
                MinimazeMenu();

                if (!MainFrame.HasContent || !(MainFrame.Content is WorkerRequestsPage))
                {
                    var hasFullAccess =
                        AdministrationClass.HasFullAccess(AdministrationClass.Modules.WorkerRequests);
                    if (_workerRequestsPage == null)
                    {
                        _workerRequestsPage = new WorkerRequestsPage(hasFullAccess);
                    }
                    _workerRequestsPage.Tag = moduleId;
                    MainFrame.Navigate(_workerRequestsPage);
                    ShowWaitAnimation();
                }
            }
            break;

            case (int)AdministrationClass.Modules.TimeSheet:
            {
                MinimazeMenu();

                if (!MainFrame.HasContent || !(MainFrame.Content is TimesheetPage))
                {
                    var hasFullAccess =
                        AdministrationClass.HasFullAccess(AdministrationClass.Modules.TimeSheet);
                    if (_timeSheetPage == null)
                    {
                        _timeSheetPage = new TimesheetPage();
                    }
                    _timeSheetPage.Tag = moduleId;
                    MainFrame.Navigate(_timeSheetPage);
                    ShowWaitAnimation();
                }
            }
            break;

            case (int)AdministrationClass.Modules.PlannedWorks:
            {
                MinimazeMenu();

                if (!MainFrame.HasContent || !(MainFrame.Content is PlannedWorksPage))
                {
                    var hasFullAccess =
                        AdministrationClass.HasFullAccess(AdministrationClass.Modules.PlannedWorks);
                    if (_plannedWorksPage == null)
                    {
                        _plannedWorksPage = new PlannedWorksPage(hasFullAccess);
                    }
                    _plannedWorksPage.Tag = moduleId;
                    MainFrame.Navigate(_plannedWorksPage);
                    ShowWaitAnimation();
                }
            }
            break;
            }
        }