Пример #1
0
        public async Task <EmployeeViewModel> GetEmployeeReportsToAsync(int id,
                                                                        CancellationToken ct = default(CancellationToken))
        {
            var employee = await _employeeRepository.GetReportsToAsync(id, ct);

            return(EmployeeCoverter.Convert(employee));
        }
Пример #2
0
        public async Task <List <EmployeeViewModel> > GetAllEmployeeAsync(
            CancellationToken ct = default(CancellationToken))
        {
            var employees = EmployeeCoverter.ConvertList(await _employeeRepository.GetAllAsync(ct));

            return(employees);
        }
Пример #3
0
        public async Task <List <EmployeeViewModel> > GetDirectReportsAsync(int id,
                                                                            CancellationToken ct = default(CancellationToken))
        {
            var employees = await _employeeRepository.GetDirectReportsAsync(id, ct);

            return(EmployeeCoverter.ConvertList(employees).ToList());
        }
Пример #4
0
        public async Task <EmployeeViewModel> GetEmployeeByIdAsync(int id,
                                                                   CancellationToken ct = default(CancellationToken))
        {
            var employeeViewModel = EmployeeCoverter.Convert(await _employeeRepository.GetByIdAsync(id, ct));

            employeeViewModel.Customers = await GetCustomerBySupportRepIdAsync(employeeViewModel.EmployeeId, ct);

            employeeViewModel.DirectReports = await GetEmployeeDirectReportsAsync(employeeViewModel.EmployeeId, ct);

            employeeViewModel.Manager = employeeViewModel.ReportsTo.HasValue ? await GetEmployeeReportsToAsync(employeeViewModel.ReportsTo.GetValueOrDefault(), ct) : null;

            employeeViewModel.ReportsToName = employeeViewModel.ReportsTo.HasValue ? $"{employeeViewModel.Manager.LastName}, {employeeViewModel.Manager.FirstName}" : string.Empty;
            return(employeeViewModel);
        }
Пример #5
0
        public async Task <List <EmployeeViewModel> > GetAllEmployeeAsync(CancellationToken ct = default(CancellationToken))
        {
            var employees = EmployeeCoverter.ConvertList(await _employeeRepository.GetAllAsync(ct));

            foreach (var employee in employees)
            {
                employee.Customers = await GetCustomerBySupportRepIdAsync(employee.EmployeeId, ct);

                employee.DirectReports = await GetEmployeeDirectReportsAsync(employee.EmployeeId, ct);

                employee.Manager = employee.ReportsTo.HasValue ? await GetEmployeeReportsToAsync(employee.ReportsTo.GetValueOrDefault(), ct) : null;

                employee.ReportsToName = employee.ReportsTo.HasValue ? $"{employee.Manager.LastName}, {employee.Manager.FirstName}" : string.Empty;
            }
            return(employees.ToList());
        }