private void btn_add_project_Click(object sender, EventArgs e)
        {
            errorProvider1.Clear();

            //create project from text- form
            Project project = GetProject();

            //check validation model
            if (ModelState.IsValid(project))
            {
                radWaitingBar1.Show();
                radWaitingBar1.StartWaiting();
                if (TaskRequests.adddProject(project))
                {
                    RadMessageBox.SetThemeName("materialTeal");
                    RadMessageBox.Show("succsess", "project added", MessageBoxButtons.OK, RadMessageIcon.None, MessageBoxDefaultButton.Button1);
                }
                else
                {
                    RadMessageBox.SetThemeName("MaterialTeal");
                    RadMessageBox.Show("error add project", "error", MessageBoxButtons.OK, RadMessageIcon.Error, MessageBoxDefaultButton.Button1);
                }
                radWaitingBar1.StopWaiting();
                radWaitingBar1.Hide();
            }
            else
            {
                foreach (var item in ModelState.Results)
                {
                    errorProvider1.SetError(gb_addProject.Controls["txt_" + item.MemberNames.ToList()[0]], item.ErrorMessage);
                }
            }
        }
Example #2
0
 public void FillProjectsWorker()
 {
     projects = TaskRequests.GetProjectsById(GlobalProp.CurrentUser.UserId);
     listProjectsWorker.Items.AddRange(projects.Select(p => new RadListDataItem()
     {
         Tag = p.Project, Text = p.Project.ProjectName
     }));
 }
Example #3
0
        public MyHours(User worker)
        {
            InitializeComponent();
            Dictionary <string, decimal> workersDictionary = new Dictionary <string, decimal>();

            workersDictionary = TaskRequests.GetWorkerTasksDictionary(worker.UserId);
            chart1.Series[0].Points.DataBindXY(workersDictionary.Keys, workersDictionary.Values);
        }
Example #4
0
 private void FillData()
 {
     projects = TaskRequests.GetAllProjects();
     foreach (var item in projects)
     {
         radGridView1.Rows.Add(item.ProjectName, item.CustomerName, item.DateBegin.ToShortDateString(), item.DateEnd.ToShortDateString(), item.NumHourForProject, item.Manager.UserName, item.IsFinish);
         radGridView1.Rows[radGridView1.Rows.Count - 1].Tag = item;
     }
 }
        public void DeleteItem(int?id)
        {
            TaskRequests taskRequests = db.TaskRequests.Find(id);

            if (taskRequests != null)
            {
                db.TaskRequests.Remove(taskRequests);
            }
        }
Example #6
0
        private void CompanyWorkerTasks_Load(object sender, EventArgs e)
        {
            List <ProjectWorker> projects = TaskRequests.getProjectsById(GlobalProp.CurrentUser.UserId);

            if (projects != null)
            {
                dvg_worker_projects.DataSource = projects.Select(p => new { p.Project.ProjectName, p.HoursForProject, p.SumHoursDone }).ToList();
            }
        }
Example #7
0
        private void GraphHoursStatusCompanyWorker_Load(object sender, EventArgs e)
        {
            Dictionary <string, decimal> projectsDictionary = TaskRequests.GetHoursUsersProject();

            graph_status_hours_for_projects.Series[0].Points.DataBindXY(projectsDictionary.Keys, projectsDictionary.Values);
            if (projectsDictionary.Count == 0)
            {
                lbl_message.Text = "don't have projects...";
            }
        }
Example #8
0
 private void btn_add_Click(object sender, EventArgs e)
 {
     Models.Task newTask = new Models.Task
     {
         IdUser         = (cmb_workers.SelectedItem as User).UserId,
         IdProject      = (cmb_projects.SelectedItem as Project).ProjectId,
         GivenHours     = num_hours.Value,
         ReservingHours = 0
     };
     MessageBox.Show(TaskRequests.AddTask(newTask));
 }
        private void CompanyWorkerTasks_Load(object sender, EventArgs e)
        {
            List <ProjectWorker> projects = TaskRequests.GetProjectsById(GlobalProp.CurrentUser.UserId);

            if (projects.Count > 0)
            {
                dvg_worker_projects.DataSource = projects.Select(p => new { p.Project.ProjectName, p.Project.DateBegin, p.Project.DateEnd, p.HoursForProject, p.SumHoursDone, p.MadePercent, p.DaysLeft }).ToList();
                dvg_worker_projects.Columns["DateBegin"].FormatString       = "{0:dd/MM/yyyy}";
                dvg_worker_projects.Columns["DateEnd"].FormatString         = "{0:dd/MM/yyyy}";
                this.dvg_worker_projects.MasterTemplate.AutoSizeColumnsMode = GridViewAutoSizeColumnsMode.Fill;
            }
        }
Example #10
0
        public MyHours(User worker)
        {
            InitializeComponent();
            Dictionary <string, Hours> workersDictionary = new Dictionary <string, Hours>();

            workersDictionary = TaskRequests.GetWorkerTasksDictionary(worker.UserId);
            List <decimal> givenList     = workersDictionary.Values.Select(p => p.GivenHours).ToList();
            List <decimal> reservingList = workersDictionary.Values.Select(p => p.ReservingHours).ToList();

            chart1.Series[0].Points.DataBindXY(workersDictionary.Keys, givenList);
            chart1.Series[1].Points.DataBindXY(workersDictionary.Keys, reservingList);
        }
Example #11
0
        private void AddWorkerToProject_Load(object sender, EventArgs e)
        {
            List <Project> projects = TaskRequests.getAllProjects();

            if (projects != null)
            {
                cmbx_projects.DisplayMember = "ProjectName";
                foreach (Project project in projects)
                {
                    cmbx_projects.Items.Add(project);
                }
            }
        }
        private void GraphHoursStatus_Load(object sender, EventArgs e)
        {
            List <Project> projects = TaskRequests.getAllProjects();

            if (projects != null)
            {
                dropDown_projects.DisplayMember = "ProjectName";
                foreach (var item in projects)
                {
                    dropDown_projects.Items.Add(getItemProject(item));
                }
            }
        }
        //add worker to project
        private void AddWorkerToProject_Load(object sender, EventArgs e)
        {
            //get all project
            List <Project> projects = TaskRequests.GetAllProjects();

            cmbx_projects.Items.AddRange(projects.Select(p => new RadListDataItem()
            {
                Tag = p, Text = p.ProjectName
            }));
            if (project != null && project.ProjectId != 0)
            {
                cmbx_projects.SelectedIndex = projects.FindIndex(p => p.ProjectId == project.ProjectId);
            }
        }
Example #14
0
        public ActionResult AddRequest(Tasks task)
        {
            var taskRequest = task.Requests.FirstOrDefault(c => c.UserId == int.Parse(User.Identity.Name));

            if (taskRequest != null)
            {
                return(null);
            }
            TaskRequests requests = new TaskRequests {
                TaskId = task.TaskId
            };

            return(PartialView("_AddRequest", requests));
        }
Example #15
0
        private void ProjectDetails_Load(object sender, EventArgs e)
        {
            listProjectName.Items.Clear();

            List <Project> projects = TaskRequests.GetProjectsManager(GlobalProp.CurrentUser.UserId);

            if (projects != null)
            {
                listProjectName.Items.AddRange(projects.Select(p => new RadListDataItem()
                {
                    Tag = p, Text = p.ProjectName
                }));
            }
        }
Example #16
0
        private void cmb_workers_SelectedIndexChanged(object sender, EventArgs e)
        {
            int userId = ((sender as ComboBox).SelectedItem as User).UserId;

            tasks = TaskRequests.GetAllTasksByUserId(userId);
            List <ShownTask> selectTask = new List <ShownTask>();

            foreach (Models.Task item in tasks)
            {
                selectTask.Add(new ShownTask {
                    ProjectName = item.projectName, ReservingHours = item.ReservingHours
                });
            }
            dataGridView1.DataSource = selectTask;
        }
Example #17
0
        private void SetTime_Load(object sender, EventArgs e)
        {
            projects = TaskRequests.getProjectsById(GlobalProp.CurrentUser.UserId);
            if (projects != null)
            {
                cmbx_projects.DisplayMember = "ProjectName";

                foreach (ProjectWorker project in projects)
                {
                    cmbx_projects.Items.Add(project.Project);
                }
            }

            // dvg_worker_projects.DataSource = projects.Select(p => new { p.Project.ProjectName, p.HoursForProject, p.SumHoursDone }).ToList();
        }
Example #18
0
        private void ProjectDetails_Load(object sender, EventArgs e)
        {
            cmbx_projects.Items.Clear();

            List <Project> projects = TaskRequests.getProjectsManager(GlobalProp.CurrentUser.UserId);

            if (projects != null)
            {
                cmbx_projects.DisplayMember = "ProjectName";

                foreach (Project project in projects)
                {
                    cmbx_projects.Items.Add(project);
                }
            }
        }
Example #19
0
        private void Edit_hours(object sender, Telerik.WinControls.UI.GridViewCellEventArgs e)
        {
            decimal       x             = Decimal.Parse(dgv_projectHours.Rows[e.RowIndex].Cells["NumHoursForProject"].Value.ToString());
            ProjectWorker projectWorker = new ProjectWorker()
            {
                UserId = (list_workers.SelectedItem.Tag as User).UserId, HoursForProject = x, ProjectId = tasks[e.RowIndex].ProjectId
            };

            if (TaskRequests.UpdateProjectHours(projectWorker))
            {
                BaseService.GetMessage("sucsess update hours", "succsess");
            }
            else
            {
                BaseService.GetMessage("failed to update hours", "error");
            }
        }
Example #20
0
        private void listProjectName_SelectedIndexChanged(object sender, Telerik.WinControls.UI.Data.PositionChangedEventArgs e)
        {
            Project project = listProjectName.SelectedItem.Tag as Project;

            List <User> projectWorkers = TaskRequests.GetUserBelongProject(project.ProjectId);

            if (projectWorkers != null)
            {
                grid_worker_project.DataSource = projectWorkers.Select(p => new { p.UserName, p.Email, p.NumHoursWork, p.DepartmentUser.Department });
                txt_name.Text       = project.ProjectName;
                txt_customer.Text   = project.CustomerName;
                txt_hour.Text       = project.NumHourForProject.ToString();
                txt_date_begin.Text = project.DateBegin.ToShortDateString();
                txt_date_end.Text   = project.DateEnd.ToShortDateString();
                UpdateGroupDepartmentsHours();
            }
        }
Example #21
0
        private void btn_add_project_Click(object sender, EventArgs e)
        {
            if (txt_development.Value + txt_qa.Value + txt_ui.Value + txt_ux.Value > txt_num_hors.Value)
            {
                MessageBox.Show("sum hours greater than hours for project please change it");
                return;
            }

            Project project = new Project();

            project.ProjectName        = txt_name.Text;
            project.numHourForProject  = int.Parse(txt_num_hors.Text);
            project.CustomerName       = txt_customer.Text;
            project.DateBegin          = DateTime.Parse(dateTimeBegin.Text);
            project.DateEnd            = DateTime.Parse(dateTimeEnd.Text);
            project.IdManager          = (cmbx_team_leader.SelectedItem as User).UserId;
            project.IsFinish           = false;
            project.HoursForDepartment = new List <HourForDepartment>();
            project.HoursForDepartment.Add(new HourForDepartment()
            {
                DepartmentId = 2, SumHours = int.Parse(txt_development.Text)
            });
            project.HoursForDepartment.Add(new HourForDepartment()
            {
                DepartmentId = 3, SumHours = int.Parse(txt_qa.Text)
            });
            project.HoursForDepartment.Add(new HourForDepartment()
            {
                DepartmentId = 4, SumHours = int.Parse(txt_ui.Text)
            });
            project.HoursForDepartment.Add(new HourForDepartment()
            {
                DepartmentId = 5, SumHours = int.Parse(txt_ux.Text)
            });
            project.ProjectId = 0;


            if (TaskRequests.adddProject(project))
            {
                MessageBox.Show("the project added");
            }
            else
            {
                MessageBox.Show("error add new project");
            }
        }
Example #22
0
        public ActionResult AddRequest(TaskRequests taskRequests)
        {
            taskRequests.UserId = int.Parse(User.Identity.Name);
            if (ModelState.IsValid)
            {
                unitOfWork.TaskRequests.AddNewItem(taskRequests);
                unitOfWork.Save();

                var task = unitOfWork.Tasks.GetTaskByIdWithJoin(taskRequests.TaskId, false, false, true, true);

                MailTools mail = new MailTools();

                mail.SendMailToUser(task.Users.Email, "На вашу задачу оставили заявку!", $"<p>На вашу задачу оставили заявку! Зайдите на сайт и проверьте ее.</p>");

                return(RedirectToLocal("~/Account/MyRequests"));
            }
            return(PartialView("_AddRequest"));
        }
        private void GraphHoursStatus_Load(object sender, EventArgs e)
        {
            GlobalStyle.SetStyleForm(Controls);
            GlobalStyle.SetMiddle(gb_graf_hours);
            List <Project> projects = TaskRequests.GetProjectsManager(GlobalProp.CurrentUser.UserId);

            if (projects != null)
            {
                dropDown_projects.Items.AddRange(projects.Select(p => new RadListDataItem()
                {
                    Tag = p, Text = p.ProjectName
                }));
                if (project != null && project.ProjectId != 0)
                {
                    dropDown_projects.SelectedIndex = projects.FindIndex(p => p.ProjectId == project.ProjectId);
                }
            }
        }
Example #24
0
        public ActionResult EditRequest(TaskRequests taskRequests)
        {
            taskRequests.UserId = int.Parse(User.Identity.Name);
            var request = unitOfWork.TaskRequests.GetItemById(taskRequests.RequestId);

            unitOfWork.Dispose();
            if (ModelState.IsValid)
            {
                if (request == null || taskRequests.TaskId != request.TaskId)
                {
                    return(HttpNotFound());
                }
                unitOfWork = new UnitOfWork();
                unitOfWork.TaskRequests.UpdateItem(taskRequests);
                unitOfWork.Save();
                return(RedirectToAction("MyRequests"));
            }
            return(View());
        }
Example #25
0
        private void UpdateWorkerInDB(GridViewRowInfo RowInfo)
        {
            Project editProject = GetUpdateProject();
            var     isValid     = ModelState.IsValid(editProject);

            if (ModelState.Results.Count <= 1)
            {
                try
                {
                    if (TaskRequests.UpdateProject(editProject) == true)
                    {
                        RadMessageBox.SetThemeName(ThemeName);
                        RadMessageBox.Show("sucsess to update project", "sucsess", MessageBoxButtons.OK, RadMessageIcon.None, MessageBoxDefaultButton.Button1);
                        UpdateProjectInGridView();
                    }
                    else
                    {
                        RadMessageBox.SetThemeName(ThemeName);
                        RadMessageBox.Show("update project failed", "error", MessageBoxButtons.OK, RadMessageIcon.None, MessageBoxDefaultButton.Button1);
                    }
                }
                catch
                {
                    RadMessageBox.SetThemeName(ThemeName);
                    RadMessageBox.Show("update project failed", "error", MessageBoxButtons.OK, RadMessageIcon.None, MessageBoxDefaultButton.Button1);
                }
            }
            else
            {
                foreach (var item in ModelState.Results)
                {
                    if (item.MemberNames.ToList()[0] == "UX")
                    {
                        errorProvider1.SetError(gb_departmentsHours, item.ErrorMessage);
                    }
                    else
                    {
                        errorProvider1.SetError(radPanel1.Controls["txt_" + item.MemberNames.ToList()[0]], item.ErrorMessage);
                    }
                }
            }
        }
        private void cmbx_workers_SelectedIndexChanged(object sender, EventArgs e)
        {
            dgv_projectHours.Visible = true;

            int userId = (cmbx_workers.SelectedItem as User).UserId;

            tasks = TaskRequests.GetAllTasksByUserId(userId);
            List <ProjectWithHoursForUser> selectTask = new List <ProjectWithHoursForUser>();

            if (tasks != null)
            {
                foreach (ProjectWorker item in tasks)
                {
                    selectTask.Add(new ProjectWithHoursForUser {
                        ProjectName = item.Project.ProjectName, NumHoursForProject = item.HoursForProject
                    });
                }
                dgv_projectHours.DataSource = selectTask;
            }
        }
Example #27
0
 private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
 {
     try
     {
         decimal     reservingHours = (decimal)dataGridView1.Rows[e.RowIndex].Cells["ReservingHours"].Value;
         Models.Task task           = tasks[e.RowIndex];
         task.ReservingHours = reservingHours;
         if (TaskRequests.UpdateTask(task))
         {
             MessageBox.Show("Updated!");
         }
         else
         {
             MessageBox.Show("Failed to update...");
         }
     }
     catch
     {
         MessageBox.Show("Enter only numbers!");
     }
 }
Example #28
0
        private void btn_add_project_Click(object sender, EventArgs e)
        {
            errorProvider1.Clear();

            //create project from text- form
            Project project = GetProject();

            //check validation model
            if (ModelState.IsValid(project))
            {
                radWaitingBar2.Show();
                radWaitingBar2.StartWaiting();

                //add project to db
                if (TaskRequests.AddProject(project))
                {
                    RadMessageBox.SetThemeName(ThemeName);
                    RadMessageBox.Show("succsess", "project added", MessageBoxButtons.OK, RadMessageIcon.None, MessageBoxDefaultButton.Button1);
                    BaseService.CloseAllPageWithoutMain();
                    new ManagerMenu().Show();
                }
                radWaitingBar2.StopWaiting();
                radWaitingBar2.Hide();
            }
            else
            {
                //set errors if project inValid
                foreach (var item in ModelState.Results)
                {
                    if (item.MemberNames.ToList()[0] == "UX")
                    {
                        errorProvider1.SetError(grbx_hours, item.ErrorMessage);
                    }
                    else
                    {
                        errorProvider1.SetError(gb_addProject.Controls["txt_" + item.MemberNames.ToList()[0]], item.ErrorMessage);
                    }
                }
            }
        }
Example #29
0
        private void btn_add_Click(object sender, EventArgs e)
        {
            errorProvider1.Clear();

            User worker = getWorker();

            //check if all worker details valid
            if (ModelState.IsValid(worker))
            {
                radWaitingBar1.Show();
                radWaitingBar1.StartWaiting();

                //add worker to db
                if (TaskRequests.addWorker(worker))
                {
                    //secsess add worker
                    RadMessageBox.SetThemeName(ThemeName);
                    RadMessageBox.Show("succsess", "worker added", MessageBoxButtons.OK, RadMessageIcon.None, MessageBoxDefaultButton.Button1);
                }
                else
                {
                    //fail to add worker
                    RadMessageBox.SetThemeName(ThemeName);
                    RadMessageBox.Show("error add project", "error", MessageBoxButtons.OK, RadMessageIcon.Error, MessageBoxDefaultButton.Button1);
                }

                radWaitingBar1.StopWaiting();
                radWaitingBar1.Hide();
            }
            else
            {
                //model invalid set error
                foreach (var item in ModelState.Results)
                {
                    errorProvider1.SetError(Controls["txt_" + item.MemberNames.ToList()[0]], item.ErrorMessage);
                }
            }
        }
Example #30
0
        private void AddWorkerToProject_Load(object sender, EventArgs e)
        {
            List <User> workers = UserRequests.getSimpleWorkers();

            if (workers != null)
            {
                checkedListBoxWorkers.DisplayMember = "UserName";
                foreach (User worker in workers)
                {
                    checkedListBoxWorkers.Items.Add(worker);
                }
            }
            List <Project> projects = TaskRequests.getAllProjects();

            if (projects != null)
            {
                cmbx_projects.DisplayMember = "ProjectName";
                foreach (Project project in projects)
                {
                    cmbx_projects.Items.Add(project);
                }
            }
        }