public AddInteractionVM()
        {
            NextMissionsList       = new ObservableCollection <MissionVM>();
            CurruntMissionsList    = new ObservableCollection <MissionVM>();
            MissionsList           = new ObservableCollection <MissionVM>();
            missionsInteractionsBL = new MissionsInteractionsBL();
            missionsBL             = new MissionsBL();

            Project temp = new Project();

            temp.Code = Cache.Instance.currentProject.Code;
            MissionVM missionVM;
            MissionVM m = new MissionVM();

            foreach (var mission in missionsBL.GetAllMissions(temp))
            {
                missionVM = new MissionVM()
                {
                    Code        = mission.Id,
                    Description = mission.Description,
                    Name        = mission.Name
                };
                MissionsList.Add(missionVM);
                CurruntMissionsList.Add(missionVM);
                NextMissionsList.Add(missionVM);
            }
        }
        private bool IsThereAnInteraction(MissionVM m1)
        {
            Mission m = new Mission();

            m.Id = m1.Code;
            return(!(missionsInteractionsBL.GetNextMissions(m).Count == 0 && missionsInteractionsBL.GetPreviousMissions(m).Count == 0));
        }
Example #3
0
        public void Init()
        {
            InProcessMissionsList.Clear();
            DoneMissionsList.Clear();
            pendingMissionsList.Clear();
            List <Mission> processListFromBL = missionsBL.GetInProcessMissions(switchProjectVMToProject(curProject));
            List <Mission> doneListFromBL    = missionsBL.GetDoneMissions(switchProjectVMToProject(curProject));
            List <Mission> pendingListFromBL = missionsBL.GetPendingMissions(switchProjectVMToProject(curProject));

            foreach (Mission mission in processListFromBL)
            {
                MissionVM m = new MissionVM()
                {
                    Code        = mission.Id,
                    Duration    = mission.Duration,
                    Description = mission.Description,
                    Name        = mission.Name,
                    ProjectId   = mission.ProjectId,
                    Status      = mission.StatusId,
                    Progress    = mission.Progress
                };
                InProcessMissionsList.Add(m);
            }

            foreach (Mission mission1 in doneListFromBL)
            {
                MissionVM m = new MissionVM()
                {
                    Code        = mission1.Id,
                    Duration    = mission1.Duration,
                    Description = mission1.Description,
                    Name        = mission1.Name,
                    ProjectId   = mission1.ProjectId,
                    Status      = mission1.StatusId,
                    Progress    = mission1.Progress
                };
                DoneMissionsList.Add(m);
            }

            foreach (Mission mission2 in pendingListFromBL)
            {
                MissionVM m = new MissionVM()
                {
                    Code        = mission2.Id,
                    Duration    = mission2.Duration,
                    Description = mission2.Description,
                    Name        = mission2.Name,
                    ProjectId   = mission2.ProjectId,
                    Status      = mission2.StatusId,
                    Progress    = mission2.Progress
                };
                pendingMissionsList.Add(m);
            }
            OnPropertyRaised("CountInProcessMissions");
            OnPropertyRaised("CountPendingMissions");
            OnPropertyRaised("CountDoneMissions");
        }
        private bool IsThereAnInteraction(MissionVM m1, MissionVM m2)
        {
            Mission m = new Mission();

            m.Id = m1.Code;
            foreach (var mission in missionsInteractionsBL.GetNextMissions(m))
            {
                if (mission.Id == m2.Code)
                {
                    return(true);
                }
            }
            foreach (var mission2 in missionsInteractionsBL.GetPreviousMissions(m))
            {
                if (mission2.Id == m2.Code)
                {
                    return(true);
                }
            }
            return(false);
        }
        public MissionsInteractionsVM(ProjectVM curProject)
        {
            this.curProject        = curProject;
            missionsBL             = new MissionsBL();
            missionsInteractionsBL = new MissionsInteractionsBL();
            NextMissionsList       = new ObservableCollection <MissionVM>();
            PreviousMissionsList   = new ObservableCollection <MissionVM>();
            MissionsList           = new ObservableCollection <MissionVM>();
            ObservableCollection <MissionVM> tempMissionList = new ObservableCollection <MissionVM>();

            foreach (Mission mission in missionsBL.GetAllMissions(switchProjectVMToProject(curProject)))
            {
                MissionVM m = new MissionVM()
                {
                    Code        = mission.Id,
                    Duration    = mission.Duration,
                    Description = mission.Description,
                    Name        = mission.Name,
                    ProjectId   = mission.ProjectId,
                    Status      = mission.StatusId,
                    Progress    = mission.Progress
                };
                MissionsList.Add(m);
            }
            foreach (var cur in MissionsList)
            {
                if (IsThereAnInteraction(cur))
                {
                    tempMissionList.Add(cur);
                }
            }
            MissionsList.Clear();
            foreach (var mission in tempMissionList)
            {
                MissionsList.Add(mission);
            }
        }