feat(audit): show actor full name + role in logs, click to view details
CI/CD / CI · API (dotnet build + test) (push) Successful in 44s
CI/CD / CI · Admin API (dotnet build) (push) Successful in 31s
CI/CD / CI · Dashboard (tsc) (push) Successful in 1m11s
CI/CD / CI · Admin Web (tsc) (push) Successful in 38s
CI/CD / CI · Website (tsc) (push) Successful in 46s
CI/CD / CI · Koja (tsc) (push) Successful in 50s
CI/CD / Deploy · all services (push) Successful in 3m39s
CI/CD / CI · API (dotnet build + test) (push) Successful in 44s
CI/CD / CI · Admin API (dotnet build) (push) Successful in 31s
CI/CD / CI · Dashboard (tsc) (push) Successful in 1m11s
CI/CD / CI · Admin Web (tsc) (push) Successful in 38s
CI/CD / CI · Website (tsc) (push) Successful in 46s
CI/CD / CI · Koja (tsc) (push) Successful in 50s
CI/CD / Deploy · all services (push) Successful in 3m39s
Logs showed the raw User ID (ActorName was almost never stored) and an English role enum. Now: - AuditController resolves each entry's actor to the employee's CURRENT full name and localized role at read time (joins Employees with IgnoreQueryFilters, so it also names soft-deleted staff and fixes all historical rows — no migration). - The audit table renders "Full name (Role)" with the role localized (fa/en/ar); the name is a button that opens an employee-details dialog. - New EmployeeDetailsDialog: fetches the employee and shows name, role, phone, base salary, and an "Open in HR" link; handles removed staff gracefully. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
{
|
||||
"common": {
|
||||
"save": "حفظ",
|
||||
"close": "إغلاق",
|
||||
"cancel": "إلغاء",
|
||||
"confirm": "تأكيد",
|
||||
"delete": "حذف",
|
||||
@@ -462,6 +463,9 @@
|
||||
"addEmployee": "إضافة موظف",
|
||||
"noEmployees": "لا يوجد موظفون بعد.",
|
||||
"employeeCreated": "تمت إضافة الموظف",
|
||||
"employeeDetails": "تفاصيل الموظف",
|
||||
"employeeNotFound": "هذا المستخدم لم يعد نشطًا.",
|
||||
"openInHr": "فتح في الموارد البشرية",
|
||||
"save": "حفظ",
|
||||
"cancel": "إلغاء",
|
||||
"fields": {
|
||||
@@ -648,6 +652,7 @@
|
||||
"colSummary": "الوصف",
|
||||
"details": "التفاصيل",
|
||||
"systemActor": "النظام",
|
||||
"unknownActor": "مستخدم غير معروف",
|
||||
"prevPage": "السابق",
|
||||
"nextPage": "التالي"
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{
|
||||
"common": {
|
||||
"save": "Save",
|
||||
"close": "Close",
|
||||
"cancel": "Cancel",
|
||||
"confirm": "Confirm",
|
||||
"delete": "Delete",
|
||||
@@ -481,6 +482,9 @@
|
||||
"addEmployee": "Add employee",
|
||||
"noEmployees": "No employees yet.",
|
||||
"employeeCreated": "Employee added",
|
||||
"employeeDetails": "Employee details",
|
||||
"employeeNotFound": "This user is no longer active.",
|
||||
"openInHr": "Open in HR",
|
||||
"save": "Save",
|
||||
"cancel": "Cancel",
|
||||
"fields": {
|
||||
@@ -667,6 +671,7 @@
|
||||
"colSummary": "Summary",
|
||||
"details": "Details",
|
||||
"systemActor": "System",
|
||||
"unknownActor": "Unknown user",
|
||||
"prevPage": "Previous",
|
||||
"nextPage": "Next"
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{
|
||||
"common": {
|
||||
"save": "ذخیره",
|
||||
"close": "بستن",
|
||||
"cancel": "انصراف",
|
||||
"confirm": "تأیید",
|
||||
"delete": "حذف",
|
||||
@@ -481,6 +482,9 @@
|
||||
"addEmployee": "افزودن کارمند",
|
||||
"noEmployees": "هنوز کارمندی ثبت نشده است.",
|
||||
"employeeCreated": "کارمند اضافه شد",
|
||||
"employeeDetails": "مشخصات کارمند",
|
||||
"employeeNotFound": "این کاربر دیگر فعال نیست.",
|
||||
"openInHr": "مشاهده در منابع انسانی",
|
||||
"save": "ذخیره",
|
||||
"cancel": "انصراف",
|
||||
"fields": {
|
||||
@@ -667,6 +671,7 @@
|
||||
"colSummary": "شرح",
|
||||
"details": "جزئیات",
|
||||
"systemActor": "سیستم",
|
||||
"unknownActor": "کاربر نامشخص",
|
||||
"prevPage": "قبلی",
|
||||
"nextPage": "بعدی"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user