TIAS حضور و حقوق تیاس
ارتباط با بک‌اند برقرار نیست. {{ toast }}
Release 0.6.13.4 · Operational Calendar Registry · Recalculable Current Sources

{{ isEmployee ? 'پنل کارکرد و درخواست‌های من' : 'حضور، کارکرد و گردش تأیید تیاس' }}

{{ isEmployee ? 'ترددها، نتیجه‌ی محاسبه و درخواست‌های خودت را در یک صفحه ببین.' : 'محاسبه‌ی حضور، مرخصی و مجوزها با سابقه‌ی قابل حسابرسی.' }}

هسته آماده است
mdi-calendar-clock{{ tehranDateTimeLabel }}به وقت تهران
دوره
{{ attendancePeriodLabel }}
دوره‌ی کارکرد ماهانه
زمان
{{ toPersianDigits(foundation.schedule_profiles?.length || 0) }}
پروفایل برنامه‌ی کاری
CSV
{{ toPersianDigits(sources.length) }}
فایل ورودی حضور
افراد
{{ toPersianDigits(assignedCurrentEmployeeCount) }}/{{ toPersianDigits(employees.length) }}
انتساب برنامه‌ی کاری
پنل من نمای کلی برنامه‌های کاری مرجع کارکنان انتساب کارکنان منابع داده مانده‌ی مرخصی تقویم عملیاتی نهایی‌سازی دوره مرخصی و تأییدها حساب‌های کاربری تاریخچه و حسابرسی دفتر تصمیم‌ها

{{ employeeDisplayName(employeePortal.employee) }}

{{ employeePortal.employee?.employee_id }} · فقط اطلاعات حساب پرسنلی شما نمایش داده می‌شود.

ثبت درخواستتازه‌سازی
منبع حضور یا نتیجه‌ی محاسبه‌ی این دوره هنوز آماده نیست؛ با دکمه‌ی «ثبت درخواست» می‌توانی درخواست رزروی این دوره را تا مهلت تعیین‌شده ثبت کنی. هنوز دوره‌ای برای ثبت درخواست تعریف نشده است؛ منابع انسانی یا مدیر سیستم باید ابتدا دوره و مهلت‌های آن را ایجاد کند.

مانده‌ی مرخصی من

درخواست‌های در انتظار از مانده‌ی قابل استفاده رزرو می‌شوند؛ مرخصی بدون حقوق فقط سابقه‌ی مصرف دارد.

هنوز دوره‌ای برای محاسبه‌ی مانده‌ی مرخصی وجود ندارد.
سهم باحقوق تا این دوره{{ formatLeaveBalance(personalLeaveBalance.paid_entitlement_millidays + personalLeaveBalance.paid_adjustment_millidays) }}
مصرف باحقوق{{ formatLeaveBalance(personalLeaveBalance.paid_used_millidays) }}
در انتظار باحقوق{{ formatLeaveBalance(personalLeaveBalance.paid_pending_millidays) }}
مانده‌ی باحقوق{{ formatLeaveBalance(personalLeaveBalance.paid_available_millidays) }}
سهم استعلاجی تا این دوره{{ formatLeaveBalance(personalLeaveBalance.sick_entitlement_millidays + personalLeaveBalance.sick_adjustment_millidays) }}
مصرف استعلاجی{{ formatLeaveBalance(personalLeaveBalance.sick_used_millidays) }}
در انتظار استعلاجی{{ formatLeaveBalance(personalLeaveBalance.sick_pending_millidays) }}
مانده‌ی استعلاجی{{ formatLeaveBalance(personalLeaveBalance.sick_available_millidays) }}
مرخصی بدون حقوق مصرف‌شده{{ formatLeaveBalance(personalLeaveBalance.unpaid_used_millidays) }}

کارکرد روزانه‌ی من

این جدول آخرین محاسبه‌ی موفق دوره‌ی انتخاب‌شده را نشان می‌دهد و داده‌ی خام را تغییر نمی‌دهد.

دریافت CSV این دوره
داده‌ی روزانه‌ای برای نمایش وجود ندارد.
ردیفتاریخروزوضعیتدرخواستثبتورودخروجحضور
عادی
کسرکار
اولیه
کسرکار
نهایی
اضافه‌کار
عادی
عادی
قابل پرداخت
اضافه‌کار
تعطیلی
تعطیلی
قابل پرداخت
{{ index + 1 }}{{ day.work_date }}{{ day.weekday }}{{ day.source_status || '—' }} اصلاح‌شده—{{ formatMinutes(day.normal_presence_minutes) }}{{ formatMinutes(day.gross_underwork_minutes) }}{{ formatMinutes(day.underwork_minutes) }}{{ formatMinutes(day.ordinary_overtime_minutes) }}{{ formatMinutes(day.payable_ordinary_overtime_minutes) }}{{ formatMinutes(day.holiday_overtime_minutes) }}{{ formatMinutes(day.payable_holiday_overtime_minutes) }}
{{ issue.severity === 'error' ? 'خطا' : 'هشدار' }}
{{ issue.code }}

{{ issue.message }}

تاریخ {{ issue.context?.work_date || issue.context?.from_date || '—' }}

درخواست‌های من

تا پیش از تصمیم مدیر می‌توانی درخواست ثبت‌شده‌ی خودت را ویرایش یا پس بگیری.

هنوز درخواستی ثبت نکرده‌ای.
ردیفتاریخنوعمقداروضعیت تأییدوضعیت تطبیقشرحعملیات
{{ employeeRequestRowNumber(index) }}{{ item.work_date }}{{ requestTypeLabel(item.request_type) }}{{ requestAmountLabel(item) }}{{ requestStatusLabel(item.status) }}{{ reconciliationStatusLabel(item.reconciliation_status) }}{{ item.reason }}
{{ employeePortal.request_pagination.total }} رکورد
قواعد تثبیت‌شده‌ی نسخه
ناهار و استراحتجزو کارکرد
اضافه‌کار عادی قابل پرداختفقط تأییدشده‌ی عادی
اضافه‌کار تعطیلی قابل پرداختفقط تأییدشده‌ی تعطیلی
ورود زودهنگامنیازمند مجوز
تشخیص تعطیل رسمیتقویم عملیاتی حسابرسی‌شده
مرز Release 0.6
  • حساب پرسنلی با دسترسی محدود به داده‌ی خود
  • مشاهده‌ی کارکرد روزانه و خلاصه‌ی آخرین محاسبه
  • ثبت، ویرایش و پس‌گرفتن درخواست پیش از تصمیم مدیر
  • درخواست اصلاح تردد با سابقه‌ی حسابرسی
  • اعمال اصلاح تردد تأییدشده بر نسخه‌ی عملیاتی محاسبه، بدون تغییر CSV خام

پروفایل‌های برنامه‌ی کاری

نمایش فشرده است؛ افزودن و ویرایش در پنجره‌ی مستقل انجام می‌شود.

افزودن برنامه
ردیف شناسه عنوان ورود
قابل محاسبه
ورود
بدون کسر
موظفی عادی
شنبه تا سه‌شنبه
اضافه‌کار
اجباری
موظفی عادی
چهارشنبه
اضافه‌کار
اجباری
پنج‌شنبه وضعیت عملیات
{{ index + 1 }} {{ profile.id }} {{ profile.name }} {{ profile.ordinary_earliest_counted_entry }} {{ profile.ordinary_latest_entry }} {{ formatMinutes(profile.sat_tue_regular_minutes) }} {{ formatMinutes(profile.sat_tue_mandatory_overtime_minutes) }} {{ formatMinutes(profile.wednesday_regular_minutes) }} {{ formatMinutes(profile.wednesday_mandatory_overtime_minutes) }} {{ formatMinutes(profile.thursday_mandatory_overtime_minutes) }} {{ profile.active ? 'فعال' : 'غیرفعال' }}

مرجع مستقل کارکنان

کارکنان مستقل از CSV ماهانه ثبت می‌شوند. نام و نام خانوادگی عمداً جدا هستند و رکوردها به‌جای حذف، غیرفعال می‌شوند.

تازه‌سازیافزودن کارمند
ردیفوضعیتعملیات
{{ index + 1 }}{{ employee.employee_id }}{{ employeeDisplayName(employee) }} نیازمند تفکیک نام{{ employee.source_employee_id || '—' }}{{ employee.attendance_mode === 'exempt' ? 'معاف از ثبت تردد' : 'مشمول ثبت تردد' }}{{ employee.active ? 'فعال' : 'غیرفعال' }}

انتساب برنامه‌ی کاری کارکنان

این فهرست مستقل از CSV ماهانه ذخیره می‌شود. موتور بدون انتساب معتبر هیچ برنامه‌ای را حدس نمی‌زند.

همه غیرخدماتی همه خدماتی ذخیره‌ی انتساب‌ها
ابتدا یک CSV حضور اضافه کن تا کارکنان شناسایی شوند.
ردیف برنامه‌ی کاری تاریخ
شروع اثر
{{ index + 1 }} {{ row.employee_id }} {{ employeeDisplayName(row) }} {{ row.source_employee_id }}

ورودی‌های حضور

CSV را بازرسی یا استخراج کن؛ پس از ذخیره‌ی انتساب برنامه‌های کاری، محاسبه‌ی آزمایشی دوره در دسترس است.

افزودن CSVقالب CSVتازه‌سازی
هنوز فایل CSV اضافه نشده است.
CSV
{{ item.name }}نسخه‌ی {{ item.revision.revision_number }}{{ item.revision.is_current ? ' · جاری' : ' · بایگانی' }}استخراج‌نشده
{{ formatBytes(item.size_bytes) }} · بارگذاری: {{ formatDateTime(item.modified_at) }} دوره: {{ periodLabel(item.revision.report_period) }} · افراد: {{ item.revision.counts.employee_count }} · روزها: {{ item.revision.counts.day_count }} · ترددها: {{ item.revision.counts.interval_count }} تغییر نسبت به نسخه‌ی قبل: افراد {{ countChange(item.revision.count_changes.employee_count) }}، روزها {{ countChange(item.revision.count_changes.day_count) }}، ترددها {{ countChange(item.revision.count_changes.interval_count) }} SHA-256: {{ item.sha256 }}
دانلودبازرسیاستخراجمحاسبه

دفتر مانده‌ی مرخصی

سهم هر دوره: ۲٫۵ روز باحقوق و ۱ روز استعلاجی. درخواست‌های در انتظار از مانده‌ی قابل استفاده رزرو می‌شوند.

تازه‌سازیثبت تعدیل
مانده‌ی باحقوق مثبت یا منفی از آخرین دوره‌ی نهایی‌شده خودکار منتقل می‌شود؛ مانده‌ی استعلاجی در پایان هر دوره منقضی می‌شود. اطلاعاتی برای نمایش وجود ندارد.
ردیفمانده‌ی انتقالیسهم دورهتعدیلمصرفدر انتظارماندهسهم استعلاجیمصرفدر انتظارماندهبدون حقوقعملیات
{{ index + 1 }}{{ item.employee_id }}{{ employeeDisplayName(item) }}{{ formatLeaveBalance(item.paid_opening_millidays) }}{{ formatLeaveBalance(item.paid_entitlement_millidays) }}{{ formatLeaveBalance(item.paid_adjustment_millidays) }}{{ formatLeaveBalance(item.paid_used_millidays) }}{{ formatLeaveBalance(item.paid_pending_millidays) }}{{ formatLeaveBalance(item.paid_available_millidays) }}{{ formatLeaveBalance(item.sick_entitlement_millidays) }}{{ formatLeaveBalance(item.sick_used_millidays) }}{{ formatLeaveBalance(item.sick_pending_millidays) }}{{ formatLeaveBalance(item.sick_available_millidays) }}{{ formatLeaveBalance(item.unpaid_used_millidays) }}تعدیل

تقویم عملیاتی و تعطیلات

فایل سالانه ابتدا اعتبارسنجی می‌شود؛ ثبت نسخه‌ی جدید، سابقه‌ی نسخه‌های پیشین را حذف نمی‌کند.

تازه‌سازی
تعطیلات رسمی، جمعه‌ها و پنج‌شنبه‌های سازمانی از هم تفکیک می‌شوند. تغییرات موردی فقط با عنوان و دلیل حسابرسی‌شده ذخیره می‌شوند.
{{ calendarFile?.name || 'فایل تقویم انتخاب نشده است' }}قالب مرکز تقویم دانشگاه تهران؛ یک سال کامل در هر فایل
انتخاب CSV پیش‌نمایش و اعتبارسنجی ثبت نسخه‌ی تقویم
{{ calendarPreview.calendar_year }}سال شمسی
{{ calendarPreview.summary.day_count }}روز
{{ calendarPreview.summary.official_holiday_count }}تعطیل رسمی
{{ calendarPreview.summary.friday_count }}جمعه‌ی غیررسمی
{{ calendarPreview.summary.thursday_count }}پنج‌شنبه‌ی غیررسمی
ردیفسالنسخهوضعیتفایلروزهاتعطیلات رسمیثبت‌کنندهزمان ثبت
{{ index + 1 }}{{ item.calendar_year }}{{ item.revision_number }}{{ item.is_current ? 'جاری' : 'بایگانی' }}{{ item.file_name }}{{ item.day_count }}{{ item.official_holiday_count }}{{ item.imported_by }}{{ formatDateTime(item.imported_at) }}
هنوز تقویم سالانه‌ای ثبت نشده است.

روزهای تقویم و تغییرات موردی

تعطیلی آلودگی هوا یا تغییر روز کاری را روی همان تاریخ ثبت کن.

ابتدا یک تقویم سالانه ثبت کنید.
ردیفتاریخ شمسیتاریخ میلادیروزنوعاثر محاسباتیمناسبت/عنوانمنبععملیات
{{ index + 1 }}{{ day.jalali_date }}{{ day.gregorian_date }}{{ day.weekday }}{{ calendarDayTypeLabel(day.day_type) }}{{ calendarCalculationLabel(day.calculation_class) }}{{ day.title || '—' }}{{ day.override ? 'تغییر دستی' : 'فایل سالانه' }}

مدیریت، نهایی‌سازی و قفل دوره

دوره را پیش از دریافت CSV بساز؛ مهلت کارکنان، مدیران و زمان قفل برای هر دوره مستقل و قابل تنظیم است.

تازه‌سازیدوره‌ی جدید
ردیفدورهوضعیتمهلت کارکنانمهلت مدیرانقفل خودکارمنبع/محاسبهکنترل آمادگیعملیات
{{ index + 1 }}{{ periodLabel(period) }}{{ periodStatusLabel(period.status) }}{{ formatDateTime(period.employee_submission_deadline) }}{{ formatDateTime(period.manager_decision_deadline) }}{{ formatDateTime(period.lock_at) }}{{ period.source_files?.length ? `${period.source_files.length} نسخه` : 'در انتظار CSV' }}{{ period.latest_calculated_at ? formatDateTime(period.latest_calculated_at) : 'بدون محاسبه' }}بررسیشروع بررسینهایی‌سازیبازگشاییخروجی نهایی
برای مشاهده یا مدیریت درخواست‌ها ابتدا وارد سامانه شوید.

حساب‌های کاربری

حساب اشتباه حذف فیزیکی نمی‌شود؛ آن را ویرایش یا غیرفعال کن تا سابقه‌ی حسابرسی محفوظ بماند.

حساب جدید
ردیفوضعیتعملیات
{{ index + 1 }}{{ user.username }}{{ accountDisplayName(user) }}{{ user.display_name || '—' }}{{ (user.roles || [user.role]).map(roleLabel).join('، ') }}{{ user.employee_id || '—' }}{{ user.active ? 'فعال' : 'غیرفعال' }}

تاریخچه و حسابرسی

نسخه‌های محاسبه و تغییرات مهم بدون بازنویسی سوابق قبلی نگهداری می‌شوند.

تازه‌سازی
{{ persistenceStatus.backend }}موتور پایگاه داده
{{ persistenceStatus.schema_version }}نسخه‌ی ساختار
{{ persistenceStatus.calculation_run_count || 0 }}اجرای ذخیره‌شده
{{ persistenceStatus.employee_reference_count || 0 }}مرجع کارکنان
{{ persistenceStatus.audit_event_count || 0 }}رویداد حسابرسی
{{ persistenceStatus.authentication_event_count || 0 }}رویداد ورود
{{ persistenceStatus.workflow_request_count || 0 }}درخواست ثبت‌شده
{{ persistenceStatus.user_account_count || 0 }}حساب کاربری

اجرای محاسبات

هنوز اجرای محاسباتی در پایگاه داده ثبت نشده است.
ردیفشناسه‌ی اجرازمان ثبتفایل مبدأدورهوضعیتکارکنانخروجی خلاصه
{{ index + 1 }} {{ shortId(run.id) }} {{ formatDateTime(run.generated_at) }} {{ run.source_file }} {{ run.report_period?.from }} – {{ run.report_period?.to }} {{ statusLabel(run.status) }} {{ run.summary?.employee_count || 0 }} دریافت—

رویدادهای حسابرسی

ردیفزمانعملیاتنوع موجودیتشناسهعاملدلیل
{{ index + 1 }} {{ formatDateTime(event.occurred_at) }} {{ actionLabel(event.action) }} {{ event.entity_type }} {{ shortId(event.entity_id) }} {{ event.actor }} {{ event.reason || '—' }}
دفتر تصمیم‌های معماری
{{ decision.id }}

{{ decision.title }}

{{ decision.summary }}

ورود به سامانهانصرافورود {{ periodEditorMode === 'add' ? 'تعریف دوره‌ی جدید' : 'ویرایش دوره و مهلت‌ها' }}
همه‌ی تاریخ‌های این پنجره شمسی و همه‌ی ساعت‌ها ۲۴ساعته و به وقت تهران هستند. مهلت‌ها می‌توانند متناسب با تعطیلات جابه‌جا شوند.
انصرافذخیره‌ی دوره
{{ jalaliPickerMonthTitle }}
{{ weekday }}
انصراف
تغییر حسابرسی‌شده‌ی روز تقویم
انصرافذخیره‌ی تغییر
{{ requestEditorMode === 'edit' ? 'ویرایش درخواست' : 'ثبت درخواست جدید' }}
{{ requestSuggestion }} این پنجره از ردیف روزانه باز شده است؛ تاریخ درخواست روی همان روز قفل است. این درخواست قبلاً تصمیم‌گیری شده است. با ذخیره‌ی هر نوع ویرایش، تصمیم قبلی کنار گذاشته می‌شود و درخواست برای تأیید مجدد به وضعیت «در انتظار» برمی‌گردد.
پیشنهادهای این روز
انتخاب تاریخ از دوره{{ attendanceCalendar.report_period.from }} – {{ attendanceCalendar.report_period.to }}
ابتدا کارمند را انتخاب کن.
{{ weekday }}
{{ selectedAttendanceDay.source_pending ? 'درخواست پیش از دریافت تردد' : 'تردد همان روز' }}منبع حضور این دوره هنوز دریافت نشده است. درخواست اکنون قابل ثبت و تأیید است و پس از ورود CSV به‌طور خودکار تطبیق داده می‌شود.

درخواست‌های ثبت‌شده برای این روز

برای این روز هنوز درخواستی ثبت نشده است.
{{ requestTypeLabel(item.request_type) }}{{ item.reason }}
{{ requestAmountLabel(item) }} {{ requestStatusLabel(item.status) }}
انصراف{{ requestEditorMode === 'edit' ? 'ذخیره‌ی ویرایش' : 'ثبت و ارسال' }}
{{ bulkDecisionForm.decision === 'approve' ? 'تأیید گروهی درخواست‌ها' : 'رد گروهی درخواست‌ها' }}این تصمیم برای {{ selectedWorkflowRequestIds.length }} درخواست انتخاب‌شده ثبت می‌شود. مجوز و وضعیت هر درخواست دوباره در سرور بررسی خواهد شد.انصرافثبت تصمیم‌های گروهی {{ decisionForm.decision === 'approve' ? 'تأیید درخواست' : 'رد درخواست' }}

{{ requestTypeLabel(decisionForm.request.request_type) }} برای {{ decisionForm.request.employee_id }} در تاریخ {{ decisionForm.request.work_date }}

{{ decisionForm.request.start_time }} – {{ decisionForm.request.end_time || '—' }}

تردد همان روزوضعیت: {{ decisionAttendanceDay.status }}کسرکار اولیه: {{ formatMinutes(decisionAttendanceDay.gross_underwork_minutes) }}
انصرافثبت تصمیم
{{ employeeEditorMode === 'add' ? 'افزودن کارمند' : 'ویرایش کارمند' }}
نام خانوادگی چندبخشی را کامل وارد کن. شناسه‌ی منبع باید یکتا باشد؛ خالی‌کردن آن، اتصال فعلی CSV را غیرفعال می‌کند.
انصرافذخیره
{{ userEditorMode === 'add' ? 'ساخت حساب کاربری' : 'ویرایش حساب کاربری' }}
انصرافذخیره
تغییر رمز عبور

{{ passwordForm.user?.display_name }}

انصرافثبت رمز
تغییر رمز عبور منانصرافثبت رمز تاریخچه‌ی درخواستبستن
{{ workflowActionLabel(action.action) }} · {{ requestStatusLabel(action.to_status) }}{{ action.actor?.display_name || '—' }} · {{ formatDateTime(action.occurred_at) }}

{{ action.note || 'بدون توضیح' }}

{{ scheduleEditorMode === 'add' ? 'افزودن برنامه‌ی کاری' : 'ویرایش برنامه‌ی کاری' }}
انصرافذخیره‌ی برنامه
حذف برنامه‌ی کاری

برای حذف «{{ scheduleToDelete.name }}» عنوان برنامه را وارد کن. برنامه‌ی منتسب‌شده قابل حذف نیست.

انصرافحذف
نتیجه‌ی بازرسیبستن {{ inspection.recognized_as_attendance_csv ? 'هر هشت ستون الزامی CSV شناسایی شدند.' : 'ساختار CSV کامل نیست؛ فهرست ستون‌های مفقود را بررسی کن.' }}
نام فایل
{{ inspection.name }}
تعداد ردیف داده
{{ inspection.row_count }}
تعداد ستون
{{ inspection.column_count }}
Encoding
{{ inspection.encoding }}
SHA-256
{{ inspection.sha256 }}

ستون‌های فایل

{{ header }}
ستون‌های مفقود: {{ inspection.missing_fields.join(', ') }}
نتیجه‌ی محاسبه‌ی آزمایشی {{ calculationResult.source.file_name }} · Engine {{ calculationResult.engine_version }} · Run {{ shortId(calculationResult.persistence?.run_id) }}
بستن
{{ calculationResult.summary.status === 'invalid' ? 'محاسبه کامل نیست؛ خطاهای مانع‌دار را اصلاح کن.' : calculationResult.summary.status === 'ready_with_warnings' ? 'محاسبه انجام شد و موارد نیازمند بررسی نیز گزارش شده‌اند.' : 'محاسبه بدون خطا یا هشدار انجام شد.' }}
{{ calculationResult.summary.employee_count }} پرسنل
{{ calculationResult.summary.valid_day_count }} روز معتبر
{{ formatMinutes(calculationResult.summary.required_minutes) }} موظفی عادی
{{ formatMinutes(calculationResult.summary.eligible_presence_minutes) }} حضور مؤثر
{{ formatMinutes(calculationResult.summary.normal_presence_minutes) }} حضور عادی
{{ formatMinutes(calculationResult.summary.gross_underwork_minutes) }} کسرکار اولیه
{{ formatMinutes(calculationResult.summary.underwork_minutes) }} کسرکار نهایی
{{ formatMinutes(calculationResult.summary.ordinary_overtime_minutes) }} اضافه‌کار عادی
{{ formatMinutes(calculationResult.summary.holiday_overtime_minutes) }} اضافه‌کار تعطیلی
{{ formatMinutes(calculationResult.summary.mandatory_overtime_shortfall_minutes) }} کسری تعهد اضافه‌کار
{{ formatMinutes(calculationResult.summary.paid_leave_minutes) }}مرخصی باحقوق
{{ formatMinutes(calculationResult.summary.sick_leave_minutes) }}مرخصی استعلاجی
{{ formatMinutes(calculationResult.summary.unpaid_leave_minutes) }}مرخصی بدون حقوق
{{ formatMinutes(calculationResult.summary.payable_ordinary_overtime_minutes) }}اضافه‌کار عادی قابل پرداخت
{{ formatMinutes(calculationResult.summary.payable_holiday_overtime_minutes) }}اضافه‌کار تعطیلی قابل پرداخت
دریافت JSON جزئیات روزانه خلاصه‌ی کارکنان ضرایب ریالی: عادی ۱٫۴ · تعطیلی ۱٫۸

خلاصه‌ی کارکنان

ردیف شناسه نام روز
نامعتبر
موظفی
عادی
حضور
خام
حضور
مؤثر
حضور
عادی
کسرکار
اولیه
مرخصی
باحقوق
مرخصی
استعلاجی
مرخصی
بدون حقوق
کارکرد عادی
قابل پرداخت
مصرف باحقوق
(روز)
مانده باحقوق
(روز)
مصرف استعلاجی
(روز)
مانده استعلاجی
(روز)
کسرکار
نهایی
اضافه‌کار
عادی
عادی
قابل پرداخت
اضافه‌کار
تعطیلی
تعطیلی
قابل پرداخت
کسری تعهد
اضافه‌کار
تأخیر
{{ index + 1 }} {{ employee.employee_id }} {{ employeeName(employee.employee_id) }} {{ employee.summary.invalid_day_count }} {{ formatMinutes(employee.summary.required_minutes) }} {{ formatMinutes(employee.summary.raw_presence_minutes) }} {{ formatMinutes(employee.summary.eligible_presence_minutes) }} {{ formatMinutes(employee.summary.normal_presence_minutes) }} {{ formatMinutes(employee.summary.gross_underwork_minutes) }} {{ formatMinutes(employee.summary.paid_leave_minutes) }} {{ formatMinutes(employee.summary.sick_leave_minutes) }} {{ formatMinutes(employee.summary.unpaid_leave_minutes) }} {{ formatMinutes(employee.summary.payable_regular_minutes) }} {{ formatLeaveDays(employee.summary.paid_leave_consumed_millidays) }} {{ formatLeaveDays(employee.summary.paid_leave_remaining_millidays) }} {{ formatLeaveDays(employee.summary.sick_leave_consumed_millidays) }} {{ formatLeaveDays(employee.summary.sick_leave_remaining_millidays) }} {{ formatMinutes(employee.summary.underwork_minutes) }} {{ formatMinutes(employee.summary.ordinary_overtime_minutes) }} {{ formatMinutes(employee.summary.payable_ordinary_overtime_minutes) }} {{ formatMinutes(employee.summary.holiday_overtime_minutes) }} {{ formatMinutes(employee.summary.payable_holiday_overtime_minutes) }} {{ formatMinutes(employee.summary.mandatory_overtime_shortfall_minutes) }} {{ formatMinutes(employee.summary.late_minutes) }}
نتیجه‌ی استخراج {{ importResult.source.file_name }}
بستن
{{ importResult.summary.status === 'invalid' ? 'خطاهای مانع‌دار وجود دارد؛ پیش از محاسبه باید اصلاح شوند.' : importResult.summary.status === 'ready_with_warnings' ? 'داده‌ها آماده‌اند، اما موارد نیازمند بررسی انسانی وجود دارد.' : 'داده‌ها بدون خطا یا هشدار آماده‌اند.' }} این فایل به‌عنوان نسخه‌ی {{ importResult.persistence.source_revision.revision_number }} و منبع جاری دوره ثبت شد. نسخه‌های پیشین حذف نشده‌اند.
{{ importResult.summary.employee_count }} پرسنل
{{ importResult.summary.day_count }} روز
{{ importResult.summary.interval_count }} بازه‌ی تردد
{{ importResult.summary.warning_count }} هشدار
{{ importResult.summary.error_count }} خطا
دریافت JSON دریافت CSV دوره‌ی شناسایی‌شده: {{ importResult.report_period.from || '—' }} تا {{ importResult.report_period.to || '—' }}

پیش‌نمایش پرسنل

شناسه‌ی
تیاس
شناسه‌ی
زمان‌پرداز
نام ردیف‌های
منبع
روزها بازه‌های
تردد
{{ employee.employee_id || '—' }}{{ employee.source_employee_id || '—' }}{{ employee.employee_name || '—' }}{{ employee.source_rows.first }}–{{ employee.source_rows.last }}{{ employee.days.length }}{{ employee.days.reduce((sum, day) => sum + day.intervals.length, 0) }}
ثبت تعدیل مانده‌ی مرخصی
انصرافثبت تعدیل