Beispiel #1
0
        private void GetSubTree(ref TreeViewItem iSubTree, CompanyDataSet.DepartmentRow department)
        {
            var employees = department.GetEmployeeRows();

            foreach (var employee in employees)
            {
                var ep = new EmployeeDetailsPage(employee.employee_id);
                ep.OnEmployeeChanged += (s, e) => ((TreeViewItem)treeCompany.SelectedItem).Header = e.Name;

                var subItem = new TreeViewItem
                {
                    Header = employee.PersonRow.Name,
                    Tag    = ep
                };
                iSubTree.Items.Add(subItem);
            }

            foreach (var subDept in department.GetDepartmentRows())
            {
                var subItem = new TreeViewItem
                {
                    Header = subDept.Name,
                    Tag    = new DepartmentDetailsPage(subDept.department_id)
                };
                iSubTree.Items.Add(subItem);
                GetSubTree(ref subItem, subDept);
            }
        }
Beispiel #2
0
        private static decimal GetSubDeptsTotal(CompanyDataSet.DepartmentRow parent, decimal total)
        {
            var subDepts = Ds.Department.Where(d => (d.Isparent_idNull() == false) && (d.parent_id == parent.department_id));

            foreach (var dept in subDepts)
            {
                total += dept.GetEmployeeRows().Sum(er => er.Salary);
                total += GetSubDeptsTotal(dept, total);
            }

            return(total);
        }
Beispiel #3
0
        private static void CutSubDept(CompanyDataSet.DepartmentRow parent)
        {
            var subDepts = Ds.Department.Where(d => (d.Isparent_idNull() == false) && (d.parent_id == parent.department_id));

            foreach (var subDept in subDepts)
            {
                foreach (var employeeRow in subDept.GetEmployeeRows())
                {
                    employeeRow.Salary /= 2;
                }

                CutSubDept(subDept);
            }
        }