---
tags: [hr, service]
module: HR
---

# EmployeeServices

## Connections
[[_HR]] · [[[Model]Employee]] · [[[Model]Position]] · [[[Model]Account]] · [[[Service]AccountServices]] · [[[Repo]Repositories]] · [[[Controller]EmployeesController]]

## Source
`Modules/HR/Services/` (employee-related)

| Service | Responsibility |
|---|---|
| `CreatingEmployeeService` | Creates employee + attaches position with salary |
| `UpdatingEmployeeService` | Updates employee; soft-deletes old EmployeePosition, attaches new one |
| `DeletingEmployeeService` | Detaches positions, soft-deletes employee |
| `RetrievingEmployeeDetailsService` | Fetches employee + enriches with salary, position, audit logs |
| `RetrievingEmployeesService` | Filtered list (by position, salary range) |
| `PreparingDataForCreatingEmployeeService` | Loads cost accounts (expense-category) + positions for form |
| `PreparingDataForUpdatingEmployeeService` | Composes create-data + employee details |

## Cross-Module Call
`PreparingDataForCreatingEmployeeService` calls `RetrievingExpensesMainCategoryAccountsService` from [[[Service]AccountServices]] (Accounting) to populate the cost account dropdown — returns only expense-category [[[Model]Account]] records.
