Ejemplo n.º 1
0
        private void AddMainTask()
        {
            bool checkName = true;

            foreach (var t in ProjectMainTasks)
            {
                if (t.Name == NameMainTask)
                {
                    checkName = false;
                }
            }

            if (checkName == true && Effort > 0 && NameMainTask.Length > 0)
            {
                MainTask mainTask = new MainTask
                {
                    Name               = NameMainTask,
                    Effort             = Effort,
                    EarlyFinish        = EarlyFinish,
                    EarlyStart         = EarlyStart,
                    LateFinish         = LateFinish,
                    LateStart          = LateStart,
                    PrecedingMainTasks = new List <MainTask>(),
                    Status             = false
                };
                ProjectMainTasks.Add(mainTask);
            }
            else
            {
                ErrorMessage er = new ErrorMessage("The name exists or effort <= 0!");
                er.ShowDialog();
            }

            setVariable();
        }
Ejemplo n.º 2
0
        private void CalculateCost()
        {
            ManagerValidation MV = new ManagerValidation();
            bool correctForm     = MV.CalculateCostValidation(ProjectMainTasks, ProjectResources);

            if (correctForm)
            {
                double   tmp          = 0;
                DateTime startProject = DateTime.Now;
                DateTime endProject;

                foreach (var resources in ProjectResources)
                {
                    tmp += resources.Cost;
                }

                if (ProjectMainTasks.Count() > 0)
                {
                    startProject = ProjectMainTasks[0].EarlyStart;
                }
                endProject = DateTime.Now;

                foreach (var mt in ProjectMainTasks)
                {
                    if (startProject.CompareTo(mt.EarlyStart) > 0)
                    {
                        startProject = mt.EarlyStart;
                    }

                    if (endProject.CompareTo(mt.LateFinish) < 0)
                    {
                        endProject = mt.LateFinish;
                    }
                }

                TimeSpan interval = endProject - startProject;
                int      days     = interval.Days;

                int month = (int)Math.Ceiling(((double)days) / 30); // OK

                double allSalary = 0;
                foreach (var user in Global.user.Team.Users)
                {
                    allSalary += user.Salary;
                }

                allSalary = allSalary * month;

                tmp  = tmp + allSalary;
                Cost = tmp;
            }
        }
Ejemplo n.º 3
0
        private void RemoveMainTask(object name)
        {
            string   tmpName      = name.ToString();
            MainTask findMainTask = ProjectMainTasks.Where(x => x.Name == tmpName).FirstOrDefault();

            foreach (var mt in ProjectMainTasks)
            {
                foreach (var preMT in mt.PrecedingMainTasks.ToList())
                {
                    if (preMT.Name == findMainTask.Name)
                    {
                        mt.PrecedingMainTasks.Remove(findMainTask);
                    }
                }
            }

            ProjectMainTasks.Remove(findMainTask);

            setVariable();
        }