Esempio n. 1
0
        /// <summary>
        /// 其他统计,职位层级统计
        /// </summary>
        public List <PositionGradeStatistics> PositionGradeStatistics()
        {
            //List<Position> positions = _DalPositionHistory.GetPositionByDateTime(dt);
            List <PositionGrade> grades = _IPositionBll.GetAllPositionGrade();
            //List<PositionGradeStatistics> positionGradeStatisticsList = TurnToPositionGradeStatisticsList(positions);
            List <PositionGradeStatistics> positionGradeStatisticsList = TurnToGradeStatisticsList(grades);

            OrderPositionGradeStatisticsBySequence(positionGradeStatisticsList);
            foreach (PositionGradeStatistics positionGradeStatistics in positionGradeStatisticsList)
            {
                positionGradeStatistics.Employees = new List <Employee>();
            }
            _Employeesource = _Employeesource ??
                              _GetEmployeeHistory.GetEmployeeOnDutyByDepartmentAndDateTime(_DepartmentID, _Date, true,
                                                                                           _AccountOperator,
                                                                                           HrmisPowers.A405, null);
            List <Employee> employeeList = Employee.CopyEmployeeList(_Employeesource);

            foreach (Employee employee in employeeList)
            {
                //employee.Account.Position.Grade =
                //    _DalPositionHistory.GetPositionByPositionIDAndDateTime(employee.Account.Position.Id, dt).Grade;
                for (int i = 0; i < positionGradeStatisticsList.Count; i++)
                {
                    if ((employee.Account.Position != null && employee.Account.Position.Grade != null) &&
                        (employee.Account.Position.Grade.Id == positionGradeStatisticsList[i].PositionGrade.Id))
                    {
                        positionGradeStatisticsList[i].Employees.Add(employee);
                    }
                }
            }
            return(positionGradeStatisticsList);
        }
Esempio n. 2
0
        /// <summary>
        /// 绑定职位等级
        /// </summary>
        private void BindGradeTypesSource()
        {
            List <PositionGrade> positionGradeSource = _IPositionBll.GetAllPositionGrade();

            if (positionGradeSource != null)
            {
                _ItsView.PositionGradeSource = positionGradeSource;
            }
        }