Example #1
0
        private void AddBonus()
        {
            ManagerValidation MV = new ManagerValidation();
            bool correctForm     = MV.BonusAmountValidation(BonusAmount);

            if (correctForm)
            {
                PayoutBonus payoutBonus = new PayoutBonus()
                {
                    DateOfGrantiedBonuses = GrantedBonus,
                    Value = BonusAmount,
                    User  = SelectedUserInTeamPayout
                };

                dbContext.PayoutBonus.Add(payoutBonus);
                dbContext.SaveChanges();

                GrantedBonus             = DateTime.Now;
                BonusAmount              = 0;
                SelectedUserInTeamPayout = null;

                ErrorMessage er = new ErrorMessage("Add payout bonus!");
                er.ShowDialog();
            }
        }
        private void EditClient()
        {
            ManagerValidation VM = new ManagerValidation();
            bool correctForm     = VM.ClientValidation(EditFirstName, EditLastName, EditCompanyName, EditNIP, EditREGON);

            if (correctForm)
            {
                MySelectedClient.FirstName = EditFirstName;
                MySelectedClient.LastName  = EditLastName;

                MySelectedClient.CompanyName = EditCompanyName;

                MySelectedClient.NIP             = EditNIP;
                MySelectedClient.REGON           = EditREGON;
                MySelectedClient.Street          = EditStreet;
                MySelectedClient.HouseNumber     = EditHouseNumber;
                MySelectedClient.ApartmentNumber = EditApartmentNumber;
                MySelectedClient.Postcode        = EditPostcode;
                MySelectedClient.City            = EditCity;

                dbContext.SaveChanges();


                _FilteredClients = new ObservableCollection <Client>(dbContext.Client);
                _Clients         = new ObservableCollection <Client>(dbContext.Client);

                RaisePropertyChanged("FilteredClients");
                RaisePropertyChanged("Clients");

                clear();

                ErrorMessage er = new ErrorMessage("Client edit successfully!");
                er.ShowDialog();
            }
        }
        private void AddClient()
        {
            ManagerValidation VM = new ManagerValidation();
            bool correctForm     = VM.ClientValidation(FirstName, LastName, CompanyName, NIP, REGON);

            if (correctForm)
            {
                Client client;

                client = AddClientObject();

                dbContext.Client.Add(client);
                dbContext.SaveChanges();


                _FilteredClients = new ObservableCollection <Client>(dbContext.Client);
                _Clients         = new ObservableCollection <Client>(dbContext.Client);

                RaisePropertyChanged("FilteredClients");
                RaisePropertyChanged("Clients");

                clear();

                ErrorMessage er = new ErrorMessage("Client created successfully!");
                er.ShowDialog();
            }
        }
        private void CalculateCost()
        {
            ManagerValidation MV = new ManagerValidation();
            bool correctForm     = MV.CalculateCostValidation(ListOfMaintask, ListOfResources);

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

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

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

                foreach (var mt in ListOfMaintask)
                {
                    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;
            }
        }
Example #5
0
        private void CreateVacation()
        {
            ManagerValidation MV = new ManagerValidation();
            bool correctForm     = MV.AddVacationValidation(StartVacation, EndVacation);

            if (correctForm)
            {
                addCaVacation();
                setVariableWhenAddVacation();

                ErrorMessage er = new ErrorMessage("Vacation added successfully!");
                er.ShowDialog();
            }
        }
Example #6
0
        private void AddTask()
        {
            ManagerValidation MV = new ManagerValidation();
            bool correctForm     = MV.AddTaskValidation(Name, Description);

            if (correctForm)
            {
                PMSContext dbContext = new PMSContext();

                Subtask subtask = new Subtask
                {
                    Name            = Name,
                    Description     = Description,
                    StartTime       = DateTime.Now,
                    EndTime         = EndTime,
                    MainTaskID      = SelectedListOfMainTasks.MainTaskID,
                    SubtaskStatusID = 1,
                    Priority        = SelectedPriority,
                    UserID          = SelectedUser.UserID,
                    WhoCreated      = Global.user.UserID
                };


                RecentActivity ra = new RecentActivity
                {
                    DateAdded   = DateTime.Now,
                    TeamID      = (int)Global.user.TeamID,
                    Description = $"User {Global.user.FullName} has created a new task " +
                                  $"for {SelectedUser.FullName} called: {_Name}"
                };

                dbContext.Subtask.Add(subtask);
                dbContext.RecentActivity.Add(ra);
                dbContext.SaveChanges();

                setVariableWhenAddTask();

                ErrorMessage er = new ErrorMessage("Subtask created successfully!");
                er.ShowDialog();
            }
        }
        private void AddProject()
        {
            ManagerValidation MV = new ManagerValidation();
            bool correctForm     = MV.AddProjectValidation(ProjectMainTasks, ProjectResources, Name, Cost);

            bool tmp2 = checkWhichAreCyclicDependency();

            if (tmp2 && correctForm && Clients != null)
            {
                DateTime startProject = DateTime.Now;
                DateTime endProject;


                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;
                    }
                }

                Project project = new Project()
                {
                    Name            = Name,
                    Cost            = Cost,
                    StartTime       = startProject,
                    EndTime         = endProject,
                    ClientID        = SelectedClient.ClientID,
                    TeamID          = Global.user.Team.TeamID,
                    ProjectStatusID = 1,
                };

                dbContext.Project.Add(project);
                dbContext.SaveChanges();

                //dodanie resources do projektu
                Project projectWithID = dbContext.Project.Where(x => x.Name == Name).FirstOrDefault();

                foreach (var r in ProjectResources)
                {
                    r.ProjectID = projectWithID.ProjectID;
                    dbContext.Resources.Add(r);
                    dbContext.SaveChanges();
                }


                //dodac najpier do kazdego main taska id projektu, potem zapisywa do bazy   CZY TO BEDZIE POTEM DOBRZE POWIAZANE?
                foreach (var r in ProjectMainTasks)
                {
                    r.ProjectID = projectWithID.ProjectID;
                }


                List <MainTask> calc        = new List <MainTask>();
                List <MainTask> tmpTaskList = new List <MainTask>(ProjectMainTasks);

                while (tmpTaskList.Count() != 0)
                {
                    foreach (MainTask task in tmpTaskList.ToList())
                    {
                        bool tmp = check(calc, task.PrecedingMainTasks.ToList());

                        if (tmp)
                        {
                            dbContext.MainTask.Add(task);
                            dbContext.SaveChanges();

                            calc.Add(task);
                            tmpTaskList.Remove(task);
                        }
                    }
                }

                //zerowanie zmiennych itp

                ErrorMessage er = new ErrorMessage("Add project!");
                er.ShowDialog();
            }
        }