iobroker.time-tracker 0.4.1 → 0.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +16 -16
- package/build/lib/db/migrations.js +12 -0
- package/build/lib/db/migrations.js.map +2 -2
- package/build/lib/db/repositories/absences.js +29 -0
- package/build/lib/db/repositories/absences.js.map +2 -2
- package/build/lib/db/seed.js +9 -9
- package/build/lib/db/seed.js.map +2 -2
- package/build/lib/web/api.js +67 -24
- package/build/lib/web/api.js.map +2 -2
- package/io-package.json +27 -27
- package/package.json +1 -1
- package/src-pwa/src/i18n/de.json +9 -3
- package/src-pwa/src/i18n/en.json +9 -3
- package/src-pwa/src/i18n/es.json +9 -3
- package/src-pwa/src/i18n/fr.json +9 -3
- package/src-pwa/src/i18n/it.json +9 -3
- package/src-pwa/src/i18n/nl.json +9 -3
- package/src-pwa/src/i18n/pl.json +9 -3
- package/src-pwa/src/i18n/pt.json +9 -3
- package/src-pwa/src/i18n/ru.json +9 -3
- package/src-pwa/src/i18n/uk.json +9 -3
- package/src-pwa/src/i18n/zh-cn.json +9 -3
- package/www/assets/{index-dp7TWY3R.js → index-B_bqnMkf.js} +3 -3
- package/www/assets/index-B_bqnMkf.js.map +1 -0
- package/www/index.html +1 -1
- package/www/sw.js +1 -1
- package/www/sw.js.map +1 -1
- package/www/assets/index-dp7TWY3R.js.map +0 -1
package/io-package.json
CHANGED
|
@@ -1,9 +1,35 @@
|
|
|
1
1
|
{
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "time-tracker",
|
|
4
|
-
"version": "0.4.
|
|
4
|
+
"version": "0.4.3",
|
|
5
5
|
"nogit": true,
|
|
6
6
|
"news": {
|
|
7
|
+
"0.4.3": {
|
|
8
|
+
"en": "change: “active” of an absence type now reads “visible for everybody” and means exactly that. Switched on, the employees pick the type in the app and request it (vacation, further training); switched off, the type belongs to the administration alone (sickness, accident, military service — such a note reaches a company on the same day and is booked, not requested). The server refuses an employee a type that is not public, sickness, accident and military service start switched off (migration 22), and the hint in the card explains the switch",
|
|
9
|
+
"de": "Änderung: „Aktiv“ einer Abwesenheitsart heißt jetzt „Für alle sichtbar“ und bedeutet genau das. Eingeschaltet wählen die Mitarbeiter die Art in der App und beantragen sie (Urlaub, Weiterbildung); ausgeschaltet gehört die Art nur der Verwaltung (Krankheit, Unfall, Militär — so eine Meldung erreicht das Unternehmen am selben Tag und wird gebucht, nicht beantragt). Der Server verweigert dem Mitarbeiter eine nicht öffentliche Art, Krankheit, Unfall und Militär starten ausgeschaltet (Migration 22), und der Hinweis in der Karte erklärt den Schalter",
|
|
10
|
+
"ru": "изменение: «активно» для вида отсутствия теперь называется «видно всем» и означает именно это. Включено — сотрудники выбирают вид в приложении и запрашивают его (отпуск, повышение квалификации); выключено — вид принадлежит только администрированию (болезнь, несчастный случай, военная служба — такая справка приходит на предприятие в тот же день и оформляется, а не запрашивается). Сервер отказывает сотруднику в непубличном виде, болезнь, несчастный случай и военная служба стартуют выключенными (миграция 22), а подсказка в карточке объясняет переключатель",
|
|
11
|
+
"pt": "alteração: «ativo» de um tipo de ausência passa a «visível para todos» e significa exatamente isso. Ligado, os funcionários escolhem o tipo na aplicação e pedem-no (férias, formação); desligado, o tipo pertence apenas à administração (doença, acidente, serviço militar — essa nota chega à empresa no mesmo dia e é registada, não pedida). O servidor recusa ao funcionário um tipo não público, doença, acidente e serviço militar começam desligados (migração 22), e a dica no cartão explica o interruptor",
|
|
12
|
+
"nl": "wijziging: “actief” van een afwezigheidstype heet nu “zichtbaar voor iedereen” en betekent precies dat. Ingeschakeld kiezen medewerkers het type in de app en vragen het aan (vakantie, opleiding); uitgeschakeld hoort het type alleen bij het beheer (ziekte, ongeval, militaire dienst — zo'n melding bereikt het bedrijf dezelfde dag en wordt geboekt, niet aangevraagd). De server weigert een medewerker een niet-openbaar type, ziekte, ongeval en militaire dienst starten uitgeschakeld (migratie 22), en de hint in de kaart verklaart de schakelaar",
|
|
13
|
+
"fr": "changement : « actif » d'un type d'absence devient « visible pour tous » et signifie exactement cela. Activé, les employés choisissent le type dans l'application et le demandent (vacances, formation) ; désactivé, le type appartient uniquement à l'administration (maladie, accident, service militaire — un tel avis arrive dans l'entreprise le jour même et est enregistré, pas demandé). Le serveur refuse à un employé un type non public, maladie, accident et service militaire démarrent désactivés (migration 22), et l'indication dans la carte explique l'interrupteur",
|
|
14
|
+
"it": "modifica: «attivo» di un tipo di assenza ora si chiama «visibile a tutti» e significa esattamente questo. Attivato, i dipendenti scelgono il tipo nell'app e lo richiedono (ferie, formazione); disattivato, il tipo appartiene solo all'amministrazione (malattia, infortunio, servizio militare — un simile avviso arriva in azienda lo stesso giorno e viene registrato, non richiesto). Il server rifiuta al dipendente un tipo non pubblico, malattia, infortunio e servizio militare partono disattivati (migrazione 22), e il suggerimento nella scheda spiega l'interruttore",
|
|
15
|
+
"es": "cambio: «activo» de un tipo de ausencia ahora se llama «visible para todos» y significa exactamente eso. Activado, los empleados eligen el tipo en la aplicación y lo solicitan (vacaciones, formación); desactivado, el tipo pertenece solo a la administración (enfermedad, accidente, servicio militar — tal aviso llega a la empresa el mismo día y se registra, no se solicita). El servidor rechaza al empleado un tipo no público, enfermedad, accidente y servicio militar empiezan desactivados (migración 22), y la sugerencia de la tarjeta explica el interruptor",
|
|
16
|
+
"pl": "zmiana: „aktywny” rodzaju nieobecności nazywa się teraz „widoczny dla wszystkich” i dokładnie to oznacza. Włączony — pracownicy wybierają rodzaj w aplikacji i składają wniosek (urlop, szkolenie); wyłączony — rodzaj należy tylko do administracji (choroba, wypadek, służba wojskowa — takie zgłoszenie trafia do firmy tego samego dnia i jest księgowane, nie wnioskowane). Serwer odmawia pracownikowi niepublicznego rodzaju, choroba, wypadek i służba wojskowa startują wyłączone (migracja 22), a podpowiedź na karcie wyjaśnia przełącznik",
|
|
17
|
+
"uk": "зміна: «активно» для виду відсутності тепер називається «видно всім» і означає саме це. Увімкнено — працівники вибирають вид у застосунку й запитують його (відпустка, підвищення кваліфікації); вимкнено — вид належить лише адмініструванню (хвороба, нещасний випадок, військова служба — така довідка надходить на підприємство того ж дня й оформлюється, а не запитується). Сервер відмовляє працівникові в непублічному виді, хвороба, нещасний випадок і військова служба стартують вимкненими (міграція 22), а підказка на картці пояснює перемикач",
|
|
18
|
+
"zh-cn": "变更:缺勤类型的「启用」现在称为「所有人可见」,并且正是指这一点。开启时,员工可在应用中选择该类型并申请(如休假、进修);关闭时该类型仅属于管理方(如疾病、事故、兵役 —— 此类通知当天就到达企业,是登记而非申请)。服务器会拒绝员工使用非公开类型;疾病、事故与兵役默认为关闭(迁移 22),卡片中的提示说明了该开关"
|
|
19
|
+
},
|
|
20
|
+
"0.4.2": {
|
|
21
|
+
"en": "fix: the roles appear in the language of the display (the database keeps “Administrator”, “Manager” and “Employee”, the app translates them now), the two date fields of “enter an absence” no longer overlap with their label, an absence type can be removed again as long as no absence uses it (new DELETE /absence-types/:id with a confirmation that names the type), and an inactive type stays in the lists of the administration while the employees no longer see it in their picker",
|
|
22
|
+
"de": "fix: die Rollen erscheinen in der Sprache der Anzeige (die Datenbank behält „Administrator“, „Manager“ und „Employee“, die App übersetzt sie jetzt), die beiden Datumsfelder von „Abwesenheit erfassen“ überlappen nicht mehr mit ihrer Beschriftung, eine Abwesenheitsart lässt sich wieder entfernen, solange keine Abwesenheit sie nutzt (neues DELETE /absence-types/:id mit einer Bestätigung, die die Art nennt), und eine inaktive Art bleibt in den Listen der Verwaltung, während die Mitarbeiter sie nicht mehr in ihrer Auswahl sehen",
|
|
23
|
+
"ru": "исправление: роли отображаются на языке интерфейса (база данных хранит «Administrator», «Manager» и «Employee», приложение теперь переводит их), два поля даты в «внести отсутствие» больше не перекрываются с подписью, вид отсутствия снова можно удалить, пока его не использует ни одно отсутствие (новый DELETE /absence-types/:id с подтверждением, называющим вид), а неактивный вид остаётся в списках администрирования, тогда как сотрудники его в выборе больше не видят",
|
|
24
|
+
"pt": "correção: as funções aparecem na língua do ecrã (a base de dados mantém «Administrator», «Manager» e «Employee», a aplicação traduz-as agora), os dois campos de data de «registar uma ausência» já não se sobrepõem à etiqueta, um tipo de ausência pode voltar a ser eliminado enquanto nenhuma ausência o usar (novo DELETE /absence-types/:id com uma confirmação que nomeia o tipo), e um tipo inativo permanece nas listas da administração enquanto os funcionários já não o veem na sua escolha",
|
|
25
|
+
"nl": "fix: de rollen verschijnen in de taal van de weergave (de database houdt “Administrator”, “Manager” en “Employee”, de app vertaalt ze nu), de twee datumvelden van “een afwezigheid invoeren” overlappen niet meer met hun label, een afwezigheidstype kan weer worden verwijderd zolang geen afwezigheid het gebruikt (nieuw DELETE /absence-types/:id met een bevestiging die het type noemt), en een inactief type blijft in de lijsten van het beheer terwijl de medewerkers het niet meer in hun keuzelijst zien",
|
|
26
|
+
"fr": "correctif : les rôles apparaissent dans la langue de l'affichage (la base de données garde « Administrator », « Manager » et « Employee », l'application les traduit désormais), les deux champs de date de « saisir une absence » ne chevauchent plus leur libellé, un type d'absence peut à nouveau être supprimé tant qu'aucune absence ne l'utilise (nouveau DELETE /absence-types/:id avec une confirmation qui nomme le type), et un type inactif reste dans les listes de l'administration tandis que les employés ne le voient plus dans leur choix",
|
|
27
|
+
"it": "correzione: i ruoli appaiono nella lingua dell'interfaccia (il database conserva «Administrator», «Manager» e «Employee», l'app li traduce ora), i due campi data di «inserisci un'assenza» non si sovrappongono più all'etichetta, un tipo di assenza può essere di nuovo rimosso finché nessuna assenza lo usa (nuovo DELETE /absence-types/:id con una conferma che nomina il tipo), e un tipo inattivo resta negli elenchi dell'amministrazione mentre i dipendenti non lo vedono più nella loro scelta",
|
|
28
|
+
"es": "corrección: los roles aparecen en el idioma de la pantalla (la base de datos conserva «Administrator», «Manager» y «Employee», la aplicación los traduce ahora), los dos campos de fecha de «registrar una ausencia» ya no se solapan con su etiqueta, un tipo de ausencia se puede volver a eliminar mientras ninguna ausencia lo use (nuevo DELETE /absence-types/:id con una confirmación que nombra el tipo), y un tipo inactivo permanece en las listas de la administración mientras los empleados ya no lo ven en su elección",
|
|
29
|
+
"pl": "poprawka: role pojawiają się w języku interfejsu (baza danych zachowuje „Administrator”, „Manager” i „Employee”, aplikacja tłumaczy je teraz), dwa pola daty w „wpisz nieobecność” nie nachodzą już na etykietę, rodzaj nieobecności można znów usunąć, dopóki nie używa go żadna nieobecność (nowy DELETE /absence-types/:id z potwierdzeniem nazywającym rodzaj), a nieaktywny rodzaj pozostaje na listach administracji, gdy pracownicy nie widzą go już w swoim wyborze",
|
|
30
|
+
"uk": "виправлення: ролі відображаються мовою інтерфейсу (база даних зберігає «Administrator», «Manager» і «Employee», застосунок тепер перекладає їх), два поля дати у «внести відсутність» більше не перекриваються з підписом, вид відсутності знову можна видалити, доки його не використовує жодна відсутність (новий DELETE /absence-types/:id із підтвердженням, що називає вид), а неактивний вид залишається у списках адміністрування, тоді як працівники його у своєму виборі більше не бачать",
|
|
31
|
+
"zh-cn": "修复:角色现在以界面语言显示(数据库保留「Administrator」「Manager」「Employee」,应用现在会翻译它们);「登记缺勤」的两个日期字段不再与标签重叠;只要没有缺勤使用该类型,就可以再次删除它(新增 DELETE /absence-types/:id,并有指明该类型的确认提示);停用的类型仍保留在管理列表中,而员工在选择中不再看到它"
|
|
32
|
+
},
|
|
7
33
|
"0.4.1": {
|
|
8
34
|
"en": "docs: the installation chapter no longer carries the build steps for work on the sources — they live in `CONTRIBUTING.md` and `docs/entwicklung.md`, so the README stays a manual for users",
|
|
9
35
|
"de": "docs: das Installationskapitel der README enthält nicht mehr die Build-Schritte für die Arbeit an den Quellen — sie stehen in `CONTRIBUTING.md` und `docs/entwicklung.md`, die README bleibt eine Anleitung für Anwender",
|
|
@@ -68,32 +94,6 @@
|
|
|
68
94
|
"pl": "poprawka: reguły automatyki są teraz kompaktową listą - jeden wiersz na regułę z nazwą, rodzajem, godziną, pracownikiem i dniami tygodnia oraz przyciskami aktywna, edytuj i usuń. Formularz otwiera się tylko w oknie dialogowym, a przycisk zapisu na karcie nazywa się „Zapisz reguły” (wcześniej miał opis reguł przerw)",
|
|
69
95
|
"uk": "виправлення: правила автоматики тепер компактний список — по одному рядку на правило з назвою, видом, часом, працівником і днями тижня, а також кнопки «активно», «змінити» та «видалити». Форма відкривається лише в діалозі, а кнопка збереження на картці називається «Зберегти правила» (раніше на ній був підпис правил перерв)",
|
|
70
96
|
"zh-cn": "修复:自动化规则现在是紧凑列表 —— 每条规则一行,包含名称、类型、时间、员工和星期,以及「启用」「编辑」「删除」按钮。表单只在对话框中打开,卡片上的保存按钮现在显示「保存规则」(此前显示的是休息规则的文字)"
|
|
71
|
-
},
|
|
72
|
-
"0.3.1": {
|
|
73
|
-
"en": "fix: the presence board shows the running working time of the day now. The API adds the minutes of an open punch to its answer (the stored day aggregate only changes on a punch, so the value stood still), the tile shows that value directly and the board refreshes every 20 seconds instead of 60",
|
|
74
|
-
"de": "fix: die Anwesenheitskarte zeigt jetzt die wirklich laufende Arbeitszeit des Tages. Die API rechnet die Minuten eines offenen Stempels in ihre Antwort ein (das gespeicherte Tagesaggregat ändert sich nur bei einem Stempel, deshalb stand der Wert still), die Kachel zeigt diesen Wert direkt und die Karte aktualisiert alle 20 Sekunden statt alle 60",
|
|
75
|
-
"ru": "исправление: карточка присутствия теперь показывает действительно текущее рабочее время дня. API добавляет минуты открытой отметки в свой ответ (сохранённый агрегат дня меняется только при отметке, поэтому значение стояло), плитка показывает это значение напрямую, а карточка обновляется каждые 20 секунд вместо 60",
|
|
76
|
-
"pt": "correção: o cartão de presença mostra agora o tempo de trabalho realmente a correr. A API soma os minutos de uma marcação aberta à sua resposta (o agregado diário guardado só muda numa marcação, por isso o valor ficava parado), a placa mostra esse valor diretamente e o cartão atualiza a cada 20 segundos em vez de 60",
|
|
77
|
-
"nl": "fix: het aanwezigheidsbord toont nu de echt lopende werktijd van de dag. De API telt de minuten van een open stempeling bij het antwoord op (het opgeslagen dagsaldo verandert alleen bij een stempeling, daarom stond de waarde stil), de tegel toont die waarde direct en het bord ververst elke 20 seconden in plaats van 60",
|
|
78
|
-
"fr": "correctif : le tableau de présence affiche désormais le temps de travail réellement en cours. L'API ajoute les minutes d'un pointage ouvert à sa réponse (l'agrégat journalier enregistré ne change qu'à un pointage, la valeur restait donc figée), la tuile affiche directement cette valeur et le tableau se rafraîchit toutes les 20 secondes au lieu de 60",
|
|
79
|
-
"it": "correzione: la bacheca delle presenze mostra ora il tempo di lavoro realmente in corso. L'API somma i minuti di una timbratura aperta alla sua risposta (l'aggregato giornaliero salvato cambia solo con una timbratura, perciò il valore restava fermo), la scheda mostra quel valore direttamente e la bacheca si aggiorna ogni 20 secondi invece di 60",
|
|
80
|
-
"es": "corrección: el tablero de presencia muestra ahora el tiempo de trabajo realmente en curso. La API suma los minutos de un fichaje abierto a su respuesta (el agregado diario guardado solo cambia con un fichaje, por eso el valor se quedaba parado), la tarjeta muestra ese valor directamente y el tablero se actualiza cada 20 segundos en lugar de 60",
|
|
81
|
-
"pl": "poprawka: tablica obecności pokazuje teraz rzeczywiście biegnący czas pracy dnia. API dolicza minuty otwartego wpisu do swojej odpowiedzi (zapisany agregat dnia zmienia się tylko przy wpisie, dlatego wartość stała), kafelek pokazuje tę wartość bezpośrednio, a tablica odświeża się co 20 sekund zamiast co 60",
|
|
82
|
-
"uk": "виправлення: табло присутності тепер показує дійсно поточний робочий час дня. API додає хвилини відкритої відмітки до своєї відповіді (збережений агрегат дня змінюється лише при відмітці, тому значення стояло), плитка показує це значення напряму, а табло оновлюється кожні 20 секунд замість 60",
|
|
83
|
-
"zh-cn": "修复:在岗看板现在显示真正持续更新的当天工作时间。API 会在响应中加入未结束打卡的分钟数(已保存的当日汇总只在打卡时变化,因此数值一直不动),卡片直接显示该数值,看板改为每 20 秒刷新一次(原为 60 秒)"
|
|
84
|
-
},
|
|
85
|
-
"0.3.0": {
|
|
86
|
-
"en": "new: the presence board can show the working time of today on the employee tiles — next to `Present`/`Away`, for example `1:23` (and `0:00` before the first punch). It is switched on **per employee** in the work profile (*Arbeitszeit auf der Anwesenheitskarte*), because the board is visible before the PIN is entered; without that permission the API never sends the minutes. While the employee is present the tile keeps counting",
|
|
87
|
-
"de": "neu: die Anwesenheitskarte kann die heute geleistete Arbeitszeit auf den Mitarbeiter-Kacheln zeigen — neben `Anwesend`/`Abwesend`, z. B. `1:23` (und `0:00` vor dem ersten Stempel). Eingeschaltet wird das **pro Mitarbeiter** im Arbeitsprofil (*Arbeitszeit auf der Anwesenheitskarte*), weil die Karte schon vor der PIN-Eingabe sichtbar ist; ohne diese Freigabe liefert die API die Minuten gar nicht erst. Solange der Mitarbeiter anwesend ist, zählt die Kachel weiter",
|
|
88
|
-
"ru": "новое: карточка присутствия может показывать отработанное сегодня время на плитках сотрудников — рядом с `присутствует`/`отсутствует`, например `1:23` (и `0:00` до первой отметки). Включается **для каждого сотрудника** в рабочем профиле (*Arbeitszeit auf der Anwesenheitskarte*), потому что карточка видна ещё до ввода PIN; без этого разрешения API вообще не передаёт минуты. Пока сотрудник на месте, плитка продолжает считать",
|
|
89
|
-
"pt": "novo: o cartão de presença pode mostrar o tempo trabalhado hoje nas placas dos funcionários — ao lado de `presente`/`ausente`, por exemplo `1:23` (e `0:00` antes da primeira marcação). Ativa-se **por funcionário** no perfil de trabalho (*Arbeitszeit auf der Anwesenheitskarte*), porque o cartão é visível antes de introduzir o PIN; sem essa permissão a API não envia os minutos. Enquanto o funcionário está presente, a placa continua a contar",
|
|
90
|
-
"nl": "nieuw: het aanwezigheidsbord kan de vandaag gewerkte tijd op de tegels tonen — naast `aanwezig`/`afwezig`, bijvoorbeeld `1:23` (en `0:00` vóór de eerste stempeling). Het wordt **per medewerker** in het werkprofiel aangezet (*Arbeitszeit auf der Anwesenheitskarte*), omdat het bord al vóór het invoeren van de PIN zichtbaar is; zonder die vrijgave stuurt de API de minuten niet eens. Zolang de medewerker aanwezig is, telt de tegel door",
|
|
91
|
-
"fr": "nouveau : le tableau de présence peut afficher le temps travaillé aujourd'hui sur les tuiles des employés — à côté de `présent`/`absent`, par exemple `1:23` (et `0:00` avant le premier pointage). Cela s'active **par employé** dans le profil de travail (*Arbeitszeit auf der Anwesenheitskarte*), car le tableau est visible avant la saisie du PIN ; sans cette autorisation, l'API n'envoie même pas les minutes. Tant que l'employé est présent, la tuile continue de compter",
|
|
92
|
-
"it": "novità: la bacheca delle presenze può mostrare il tempo lavorato oggi sulle schede dei dipendenti — accanto a `presente`/`assente`, per esempio `1:23` (e `0:00` prima della prima timbratura). Si attiva **per dipendente** nel profilo di lavoro (*Arbeitszeit auf der Anwesenheitskarte*), perché la bacheca è visibile prima di inserire il PIN; senza questa autorizzazione l'API non invia affatto i minuti. Finché il dipendente è presente, la scheda continua a contare",
|
|
93
|
-
"es": "nuevo: el tablero de presencia puede mostrar el tiempo trabajado hoy en las tarjetas de los empleados — junto a `presente`/`ausente`, por ejemplo `1:23` (y `0:00` antes del primer fichaje). Se activa **por empleado** en el perfil de trabajo (*Arbeitszeit auf der Anwesenheitskarte*), porque el tablero es visible antes de introducir el PIN; sin esa autorización la API no envía los minutos. Mientras el empleado está presente, la tarjeta sigue contando",
|
|
94
|
-
"pl": "nowość: tablica obecności może pokazywać czas przepracowany dzisiaj na kafelkach pracowników — obok `obecny`/`nieobecny`, np. `1:23` (i `0:00` przed pierwszym wpisem). Włącza się to **dla każdego pracownika** w profilu pracy (*Arbeitszeit auf der Anwesenheitskarte*), bo tablica jest widoczna jeszcze przed wpisaniem PIN-u; bez tej zgody API w ogóle nie przesyła minut. Dopóki pracownik jest obecny, kafelek liczy dalej",
|
|
95
|
-
"uk": "нове: табло присутності може показувати відпрацьований сьогодні час на плитках працівників — поряд з `присутній`/`відсутній`, наприклад `1:23` (і `0:00` до першої відмітки). Вмикається **для кожного працівника** у робочому профілі (*Arbeitszeit auf der Anwesenheitskarte*), бо табло видно ще до введення PIN; без цього дозволу API взагалі не надсилає хвилини. Поки працівник на місці, плитка продовжує рахувати",
|
|
96
|
-
"zh-cn": "新增:在岗看板可以在员工卡片上显示今天的工作时间 —— 与「在岗/缺勤」并列,例如 `1:23`(首次打卡前为 `0:00`)。此功能在**每位员工的**工作资料中开启(*Arbeitszeit auf der Anwesenheitskarte*),因为在岗看板在输入 PIN 之前就可见;没有该授权时 API 根本不会发送分钟数。员工在岗期间卡片会持续计时"
|
|
97
97
|
}
|
|
98
98
|
},
|
|
99
99
|
"titleLang": {
|
package/package.json
CHANGED
package/src-pwa/src/i18n/de.json
CHANGED
|
@@ -365,13 +365,13 @@
|
|
|
365
365
|
"admin.automation.newTitle": "Neue Regel",
|
|
366
366
|
"absences.vacationTag": "Urlaub",
|
|
367
367
|
"admin.absenceTypes.title": "Abwesenheitsarten",
|
|
368
|
-
"admin.absenceTypes.hint": "Kürzel, Bezeichnung und Wirkung der Abwesenheiten. „
|
|
368
|
+
"admin.absenceTypes.hint": "Kürzel, Bezeichnung und Wirkung der Abwesenheiten. „Für alle sichtbar“ heißt: die Mitarbeiter können die Art selbst wählen und beantragen — ausgeschaltet ist sie nur für die Verwaltung da (z. B. Krankheit, Unfall, Militär).",
|
|
369
369
|
"admin.absenceTypes.code": "Kürzel",
|
|
370
370
|
"admin.absenceTypes.name": "Bezeichnung",
|
|
371
371
|
"admin.absenceTypes.paid": "Bezahlt",
|
|
372
372
|
"admin.absenceTypes.factor": "Faktor (%)",
|
|
373
373
|
"admin.absenceTypes.reduceVacation": "Zieht vom Urlaub ab",
|
|
374
|
-
"admin.absenceTypes.active": "
|
|
374
|
+
"admin.absenceTypes.active": "Für alle sichtbar",
|
|
375
375
|
"admin.absenceTypes.add": "Art hinzufügen",
|
|
376
376
|
"admin.absenceTypes.edit": "Bearbeiten",
|
|
377
377
|
"admin.absenceTypes.editTitle": "Art bearbeiten",
|
|
@@ -402,5 +402,11 @@
|
|
|
402
402
|
"absences.state.requested": "beantragt",
|
|
403
403
|
"absences.state.approved": "genehmigt",
|
|
404
404
|
"absences.state.rejected": "abgelehnt",
|
|
405
|
-
"absences.reason": "Begründung"
|
|
405
|
+
"absences.reason": "Begründung",
|
|
406
|
+
"role.admin": "Administrator",
|
|
407
|
+
"role.manager": "Manager",
|
|
408
|
+
"role.employee": "Mitarbeiter",
|
|
409
|
+
"admin.absenceTypes.remove": "Löschen",
|
|
410
|
+
"admin.absenceTypes.removeTitle": "Art löschen",
|
|
411
|
+
"admin.absenceTypes.removeConfirm": "„{{name}}“ wirklich entfernen? Abwesenheiten, die diese Art noch nutzen, müssen zuerst gelöscht oder umgestellt werden."
|
|
406
412
|
}
|
package/src-pwa/src/i18n/en.json
CHANGED
|
@@ -365,13 +365,13 @@
|
|
|
365
365
|
"admin.automation.newTitle": "New rule",
|
|
366
366
|
"absences.vacationTag": "vacation",
|
|
367
367
|
"admin.absenceTypes.title": "Absence types",
|
|
368
|
-
"admin.absenceTypes.hint": "Code, name and effect of the absences. “
|
|
368
|
+
"admin.absenceTypes.hint": "Code, name and effect of the absences. “Visible for everybody” means the employees may pick the type in the app and request it — switched off it is there for the administration only (sickness, accident, military service).",
|
|
369
369
|
"admin.absenceTypes.code": "Code",
|
|
370
370
|
"admin.absenceTypes.name": "Name",
|
|
371
371
|
"admin.absenceTypes.paid": "Paid",
|
|
372
372
|
"admin.absenceTypes.factor": "Factor (%)",
|
|
373
373
|
"admin.absenceTypes.reduceVacation": "Reduces vacation",
|
|
374
|
-
"admin.absenceTypes.active": "
|
|
374
|
+
"admin.absenceTypes.active": "Visible for everybody",
|
|
375
375
|
"admin.absenceTypes.add": "Add type",
|
|
376
376
|
"admin.absenceTypes.edit": "Edit",
|
|
377
377
|
"admin.absenceTypes.editTitle": "Edit type",
|
|
@@ -402,5 +402,11 @@
|
|
|
402
402
|
"absences.state.requested": "requested",
|
|
403
403
|
"absences.state.approved": "approved",
|
|
404
404
|
"absences.state.rejected": "rejected",
|
|
405
|
-
"absences.reason": "Reason"
|
|
405
|
+
"absences.reason": "Reason",
|
|
406
|
+
"role.admin": "Administrator",
|
|
407
|
+
"role.manager": "Manager",
|
|
408
|
+
"role.employee": "Employee",
|
|
409
|
+
"admin.absenceTypes.remove": "Delete",
|
|
410
|
+
"admin.absenceTypes.removeTitle": "Delete the type",
|
|
411
|
+
"admin.absenceTypes.removeConfirm": "Really remove “{{name}}”? Absences that still use this type have to be deleted or changed first."
|
|
406
412
|
}
|
package/src-pwa/src/i18n/es.json
CHANGED
|
@@ -365,13 +365,13 @@
|
|
|
365
365
|
"admin.automation.newTitle": "Nueva regla",
|
|
366
366
|
"absences.vacationTag": "vacaciones",
|
|
367
367
|
"admin.absenceTypes.title": "Tipos de ausencia",
|
|
368
|
-
"admin.absenceTypes.hint": "Código, denominación y efecto de las ausencias. «
|
|
368
|
+
"admin.absenceTypes.hint": "Código, denominación y efecto de las ausencias. «Visible para todos» significa que los empleados pueden elegir el tipo y solicitarlo — desactivado queda solo para la administración (enfermedad, accidente, servicio militar).",
|
|
369
369
|
"admin.absenceTypes.code": "Código",
|
|
370
370
|
"admin.absenceTypes.name": "Denominación",
|
|
371
371
|
"admin.absenceTypes.paid": "Pagado",
|
|
372
372
|
"admin.absenceTypes.factor": "Factor de tiempo (%)",
|
|
373
373
|
"admin.absenceTypes.reduceVacation": "Reduce las vacaciones",
|
|
374
|
-
"admin.absenceTypes.active": "
|
|
374
|
+
"admin.absenceTypes.active": "Visible para todos",
|
|
375
375
|
"admin.absenceTypes.add": "Añadir tipo",
|
|
376
376
|
"admin.absenceTypes.edit": "Editar",
|
|
377
377
|
"admin.absenceTypes.editTitle": "Editar tipo",
|
|
@@ -402,5 +402,11 @@
|
|
|
402
402
|
"absences.state.requested": "solicitado",
|
|
403
403
|
"absences.state.approved": "aprobado",
|
|
404
404
|
"absences.state.rejected": "rechazado",
|
|
405
|
-
"absences.reason": "Motivo"
|
|
405
|
+
"absences.reason": "Motivo",
|
|
406
|
+
"role.admin": "Administrador",
|
|
407
|
+
"role.manager": "Responsable",
|
|
408
|
+
"role.employee": "Empleado",
|
|
409
|
+
"admin.absenceTypes.remove": "Eliminar",
|
|
410
|
+
"admin.absenceTypes.removeTitle": "Eliminar el tipo",
|
|
411
|
+
"admin.absenceTypes.removeConfirm": "¿Eliminar «{{name}}» de verdad? Las ausencias que aún usan este tipo deben borrarse o cambiarse primero."
|
|
406
412
|
}
|
package/src-pwa/src/i18n/fr.json
CHANGED
|
@@ -365,13 +365,13 @@
|
|
|
365
365
|
"admin.automation.newTitle": "Nouvelle règle",
|
|
366
366
|
"absences.vacationTag": "vacances",
|
|
367
367
|
"admin.absenceTypes.title": "Types d'absence",
|
|
368
|
-
"admin.absenceTypes.hint": "Code, libellé et effet des absences. «
|
|
368
|
+
"admin.absenceTypes.hint": "Code, libellé et effet des absences. « Visible pour tous » signifie que les employés peuvent choisir le type et le demander — désactivé, il n'existe que pour l'administration (maladie, accident, service militaire).",
|
|
369
369
|
"admin.absenceTypes.code": "Abréviation",
|
|
370
370
|
"admin.absenceTypes.name": "Libellé",
|
|
371
371
|
"admin.absenceTypes.paid": "Payé",
|
|
372
372
|
"admin.absenceTypes.factor": "Facteur (%)",
|
|
373
373
|
"admin.absenceTypes.reduceVacation": "Réduit les vacances",
|
|
374
|
-
"admin.absenceTypes.active": "
|
|
374
|
+
"admin.absenceTypes.active": "Visible pour tous",
|
|
375
375
|
"admin.absenceTypes.add": "Ajouter un type",
|
|
376
376
|
"admin.absenceTypes.edit": "Modifier",
|
|
377
377
|
"admin.absenceTypes.editTitle": "Modifier le type",
|
|
@@ -402,5 +402,11 @@
|
|
|
402
402
|
"absences.state.requested": "demandé",
|
|
403
403
|
"absences.state.approved": "approuvé",
|
|
404
404
|
"absences.state.rejected": "refusé",
|
|
405
|
-
"absences.reason": "Motif"
|
|
405
|
+
"absences.reason": "Motif",
|
|
406
|
+
"role.admin": "Administrateur",
|
|
407
|
+
"role.manager": "Responsable",
|
|
408
|
+
"role.employee": "Employé",
|
|
409
|
+
"admin.absenceTypes.remove": "Supprimer",
|
|
410
|
+
"admin.absenceTypes.removeTitle": "Supprimer le type",
|
|
411
|
+
"admin.absenceTypes.removeConfirm": "Vraiment supprimer « {{name}} » ? Les absences qui utilisent encore ce type doivent d'abord être supprimées ou modifiées."
|
|
406
412
|
}
|
package/src-pwa/src/i18n/it.json
CHANGED
|
@@ -365,13 +365,13 @@
|
|
|
365
365
|
"admin.automation.newTitle": "Nuova regola",
|
|
366
366
|
"absences.vacationTag": "ferie",
|
|
367
367
|
"admin.absenceTypes.title": "Tipi di assenza",
|
|
368
|
-
"admin.absenceTypes.hint": "Codice, denominazione ed effetto delle assenze. «
|
|
368
|
+
"admin.absenceTypes.hint": "Codice, denominazione ed effetto delle assenze. «Visibile a tutti» significa che i dipendenti possono scegliere il tipo e richiederlo — disattivato resta a disposizione solo dell'amministrazione (malattia, infortunio, servizio militare).",
|
|
369
369
|
"admin.absenceTypes.code": "Codice",
|
|
370
370
|
"admin.absenceTypes.name": "Denominazione",
|
|
371
371
|
"admin.absenceTypes.paid": "Pagato",
|
|
372
372
|
"admin.absenceTypes.factor": "Fattore (%)",
|
|
373
373
|
"admin.absenceTypes.reduceVacation": "Riduce le ferie",
|
|
374
|
-
"admin.absenceTypes.active": "
|
|
374
|
+
"admin.absenceTypes.active": "Visibile a tutti",
|
|
375
375
|
"admin.absenceTypes.add": "Aggiungi tipo",
|
|
376
376
|
"admin.absenceTypes.edit": "Modifica",
|
|
377
377
|
"admin.absenceTypes.editTitle": "Modifica tipo",
|
|
@@ -402,5 +402,11 @@
|
|
|
402
402
|
"absences.state.requested": "richiesto",
|
|
403
403
|
"absences.state.approved": "approvato",
|
|
404
404
|
"absences.state.rejected": "rifiutato",
|
|
405
|
-
"absences.reason": "Motivo"
|
|
405
|
+
"absences.reason": "Motivo",
|
|
406
|
+
"role.admin": "Amministratore",
|
|
407
|
+
"role.manager": "Responsabile",
|
|
408
|
+
"role.employee": "Dipendente",
|
|
409
|
+
"admin.absenceTypes.remove": "Elimina",
|
|
410
|
+
"admin.absenceTypes.removeTitle": "Elimina il tipo",
|
|
411
|
+
"admin.absenceTypes.removeConfirm": "Rimuovere davvero «{{name}}»? Le assenze che usano ancora questo tipo devono prima essere eliminate o modificate."
|
|
406
412
|
}
|
package/src-pwa/src/i18n/nl.json
CHANGED
|
@@ -365,13 +365,13 @@
|
|
|
365
365
|
"admin.automation.newTitle": "Nieuwe regel",
|
|
366
366
|
"absences.vacationTag": "vakantie",
|
|
367
367
|
"admin.absenceTypes.title": "Afwezigheidstypes",
|
|
368
|
-
"admin.absenceTypes.hint": "Code, naam en werking van de afwezigheden. “
|
|
368
|
+
"admin.absenceTypes.hint": "Code, naam en werking van de afwezigheden. “Zichtbaar voor iedereen” betekent dat medewerkers het type zelf kunnen kiezen en aanvragen — uitgeschakeld is het er alleen voor het beheer (ziekte, ongeval, militaire dienst).",
|
|
369
369
|
"admin.absenceTypes.code": "Afkorting",
|
|
370
370
|
"admin.absenceTypes.name": "Naam",
|
|
371
371
|
"admin.absenceTypes.paid": "Betaald",
|
|
372
372
|
"admin.absenceTypes.factor": "Rekenfactor (%)",
|
|
373
373
|
"admin.absenceTypes.reduceVacation": "Verlaagt vakantie",
|
|
374
|
-
"admin.absenceTypes.active": "
|
|
374
|
+
"admin.absenceTypes.active": "Zichtbaar voor iedereen",
|
|
375
375
|
"admin.absenceTypes.add": "Type toevoegen",
|
|
376
376
|
"admin.absenceTypes.edit": "Bewerken",
|
|
377
377
|
"admin.absenceTypes.editTitle": "Type bewerken",
|
|
@@ -402,5 +402,11 @@
|
|
|
402
402
|
"absences.state.requested": "aangevraagd",
|
|
403
403
|
"absences.state.approved": "goedgekeurd",
|
|
404
404
|
"absences.state.rejected": "afgewezen",
|
|
405
|
-
"absences.reason": "Reden"
|
|
405
|
+
"absences.reason": "Reden",
|
|
406
|
+
"role.admin": "Beheerder",
|
|
407
|
+
"role.manager": "Leidinggevende",
|
|
408
|
+
"role.employee": "Medewerker",
|
|
409
|
+
"admin.absenceTypes.remove": "Verwijderen",
|
|
410
|
+
"admin.absenceTypes.removeTitle": "Het type verwijderen",
|
|
411
|
+
"admin.absenceTypes.removeConfirm": "“{{name}}” echt verwijderen? Afwezigheden die dit type nog gebruiken moeten eerst worden verwijderd of gewijzigd."
|
|
406
412
|
}
|
package/src-pwa/src/i18n/pl.json
CHANGED
|
@@ -365,13 +365,13 @@
|
|
|
365
365
|
"admin.automation.newTitle": "Nowa reguła",
|
|
366
366
|
"absences.vacationTag": "urlop",
|
|
367
367
|
"admin.absenceTypes.title": "Rodzaje nieobecności",
|
|
368
|
-
"admin.absenceTypes.hint": "Kod, nazwa i działanie nieobecności. „
|
|
368
|
+
"admin.absenceTypes.hint": "Kod, nazwa i działanie nieobecności. „Widoczny dla wszystkich” oznacza, że pracownicy mogą sami wybrać rodzaj i złożyć wniosek — wyłączony jest tylko dla administracji (choroba, wypadek, służba wojskowa).",
|
|
369
369
|
"admin.absenceTypes.code": "Kod",
|
|
370
370
|
"admin.absenceTypes.name": "Nazwa",
|
|
371
371
|
"admin.absenceTypes.paid": "Płatne",
|
|
372
372
|
"admin.absenceTypes.factor": "Współczynnik (%)",
|
|
373
373
|
"admin.absenceTypes.reduceVacation": "Zmniejsza urlop",
|
|
374
|
-
"admin.absenceTypes.active": "
|
|
374
|
+
"admin.absenceTypes.active": "Widoczny dla wszystkich",
|
|
375
375
|
"admin.absenceTypes.add": "Dodaj rodzaj",
|
|
376
376
|
"admin.absenceTypes.edit": "Edytuj",
|
|
377
377
|
"admin.absenceTypes.editTitle": "Edytuj rodzaj",
|
|
@@ -402,5 +402,11 @@
|
|
|
402
402
|
"absences.state.requested": "złożony",
|
|
403
403
|
"absences.state.approved": "zatwierdzony",
|
|
404
404
|
"absences.state.rejected": "odrzucony",
|
|
405
|
-
"absences.reason": "Powód"
|
|
405
|
+
"absences.reason": "Powód",
|
|
406
|
+
"role.admin": "Administrator systemu",
|
|
407
|
+
"role.manager": "Kierownik",
|
|
408
|
+
"role.employee": "Pracownik",
|
|
409
|
+
"admin.absenceTypes.remove": "Usuń",
|
|
410
|
+
"admin.absenceTypes.removeTitle": "Usuń rodzaj",
|
|
411
|
+
"admin.absenceTypes.removeConfirm": "Naprawdę usunąć „{{name}}”? Nieobecności, które nadal używają tego rodzaju, trzeba najpierw usunąć lub zmienić."
|
|
406
412
|
}
|
package/src-pwa/src/i18n/pt.json
CHANGED
|
@@ -365,13 +365,13 @@
|
|
|
365
365
|
"admin.automation.newTitle": "Nova regra",
|
|
366
366
|
"absences.vacationTag": "férias",
|
|
367
367
|
"admin.absenceTypes.title": "Tipos de ausência",
|
|
368
|
-
"admin.absenceTypes.hint": "Código, designação e efeito das ausências. «
|
|
368
|
+
"admin.absenceTypes.hint": "Código, designação e efeito das ausências. «Visível para todos» significa que os funcionários podem escolher o tipo e pedi-lo — desligado, fica apenas para a administração (doença, acidente, serviço militar).",
|
|
369
369
|
"admin.absenceTypes.code": "Código",
|
|
370
370
|
"admin.absenceTypes.name": "Designação",
|
|
371
371
|
"admin.absenceTypes.paid": "Pago",
|
|
372
372
|
"admin.absenceTypes.factor": "Fator (%)",
|
|
373
373
|
"admin.absenceTypes.reduceVacation": "Reduz as férias",
|
|
374
|
-
"admin.absenceTypes.active": "
|
|
374
|
+
"admin.absenceTypes.active": "Visível para todos",
|
|
375
375
|
"admin.absenceTypes.add": "Adicionar tipo",
|
|
376
376
|
"admin.absenceTypes.edit": "Editar",
|
|
377
377
|
"admin.absenceTypes.editTitle": "Editar tipo",
|
|
@@ -402,5 +402,11 @@
|
|
|
402
402
|
"absences.state.requested": "pedido",
|
|
403
403
|
"absences.state.approved": "aprovado",
|
|
404
404
|
"absences.state.rejected": "rejeitado",
|
|
405
|
-
"absences.reason": "Motivo"
|
|
405
|
+
"absences.reason": "Motivo",
|
|
406
|
+
"role.admin": "Administrador",
|
|
407
|
+
"role.manager": "Gestor",
|
|
408
|
+
"role.employee": "Funcionário",
|
|
409
|
+
"admin.absenceTypes.remove": "Eliminar",
|
|
410
|
+
"admin.absenceTypes.removeTitle": "Eliminar o tipo",
|
|
411
|
+
"admin.absenceTypes.removeConfirm": "Remover «{{name}}» mesmo? As ausências que ainda usam este tipo têm de ser eliminadas ou alteradas primeiro."
|
|
406
412
|
}
|
package/src-pwa/src/i18n/ru.json
CHANGED
|
@@ -365,13 +365,13 @@
|
|
|
365
365
|
"admin.automation.newTitle": "Новое правило",
|
|
366
366
|
"absences.vacationTag": "отпуск",
|
|
367
367
|
"admin.absenceTypes.title": "Виды отсутствия",
|
|
368
|
-
"admin.absenceTypes.hint": "Код, название и действие отсутствий.
|
|
368
|
+
"admin.absenceTypes.hint": "Код, название и действие отсутствий. «Видно всем» означает, что сотрудники могут сами выбрать вид и запросить его — выключенный вид доступен только администрированию (болезнь, несчастный случай, военная служба).",
|
|
369
369
|
"admin.absenceTypes.code": "Код",
|
|
370
370
|
"admin.absenceTypes.name": "Название",
|
|
371
371
|
"admin.absenceTypes.paid": "Оплачивается",
|
|
372
372
|
"admin.absenceTypes.factor": "Коэффициент (%)",
|
|
373
373
|
"admin.absenceTypes.reduceVacation": "Уменьшает отпуск",
|
|
374
|
-
"admin.absenceTypes.active": "
|
|
374
|
+
"admin.absenceTypes.active": "Видно всем",
|
|
375
375
|
"admin.absenceTypes.add": "Добавить вид",
|
|
376
376
|
"admin.absenceTypes.edit": "Изменить",
|
|
377
377
|
"admin.absenceTypes.editTitle": "Изменить вид",
|
|
@@ -402,5 +402,11 @@
|
|
|
402
402
|
"absences.state.requested": "запрошено",
|
|
403
403
|
"absences.state.approved": "одобрено",
|
|
404
404
|
"absences.state.rejected": "отклонено",
|
|
405
|
-
"absences.reason": "Причина"
|
|
405
|
+
"absences.reason": "Причина",
|
|
406
|
+
"role.admin": "Администратор",
|
|
407
|
+
"role.manager": "Менеджер",
|
|
408
|
+
"role.employee": "Сотрудник",
|
|
409
|
+
"admin.absenceTypes.remove": "Удалить",
|
|
410
|
+
"admin.absenceTypes.removeTitle": "Удалить вид",
|
|
411
|
+
"admin.absenceTypes.removeConfirm": "Действительно удалить «{{name}}»? Отсутствия, которые ещё используют этот вид, нужно сначала удалить или изменить."
|
|
406
412
|
}
|
package/src-pwa/src/i18n/uk.json
CHANGED
|
@@ -365,13 +365,13 @@
|
|
|
365
365
|
"admin.automation.newTitle": "Нове правило",
|
|
366
366
|
"absences.vacationTag": "відпустка",
|
|
367
367
|
"admin.absenceTypes.title": "Види відсутності",
|
|
368
|
-
"admin.absenceTypes.hint": "Код, назва та дія відсутностей.
|
|
368
|
+
"admin.absenceTypes.hint": "Код, назва та дія відсутностей. «Видно всім» означає, що працівники можуть самі вибрати вид і запросити його — вимкнений вид доступний лише адмініструванню (хвороба, нещасний випадок, військова служба).",
|
|
369
369
|
"admin.absenceTypes.code": "Код",
|
|
370
370
|
"admin.absenceTypes.name": "Назва",
|
|
371
371
|
"admin.absenceTypes.paid": "Оплачується",
|
|
372
372
|
"admin.absenceTypes.factor": "Коефіцієнт (%)",
|
|
373
373
|
"admin.absenceTypes.reduceVacation": "Зменшує відпустку",
|
|
374
|
-
"admin.absenceTypes.active": "
|
|
374
|
+
"admin.absenceTypes.active": "Видно всім",
|
|
375
375
|
"admin.absenceTypes.add": "Додати вид",
|
|
376
376
|
"admin.absenceTypes.edit": "Змінити",
|
|
377
377
|
"admin.absenceTypes.editTitle": "Змінити вид",
|
|
@@ -402,5 +402,11 @@
|
|
|
402
402
|
"absences.state.requested": "запитано",
|
|
403
403
|
"absences.state.approved": "схвалено",
|
|
404
404
|
"absences.state.rejected": "відхилено",
|
|
405
|
-
"absences.reason": "Причина"
|
|
405
|
+
"absences.reason": "Причина",
|
|
406
|
+
"role.admin": "Адміністратор",
|
|
407
|
+
"role.manager": "Керівник",
|
|
408
|
+
"role.employee": "Працівник",
|
|
409
|
+
"admin.absenceTypes.remove": "Видалити",
|
|
410
|
+
"admin.absenceTypes.removeTitle": "Видалити вид",
|
|
411
|
+
"admin.absenceTypes.removeConfirm": "Справді видалити «{{name}}»? Відсутності, які ще використовують цей вид, потрібно спочатку видалити або змінити."
|
|
406
412
|
}
|
|
@@ -365,13 +365,13 @@
|
|
|
365
365
|
"admin.automation.newTitle": "新规则",
|
|
366
366
|
"absences.vacationTag": "休假",
|
|
367
367
|
"admin.absenceTypes.title": "缺勤类型",
|
|
368
|
-
"admin.absenceTypes.hint": "
|
|
368
|
+
"admin.absenceTypes.hint": "缺勤的代号、名称与作用。「所有人可见」表示员工可以自行选择该类型并申请 —— 关闭后仅供管理员使用(如疾病、事故、兵役)。",
|
|
369
369
|
"admin.absenceTypes.code": "代号",
|
|
370
370
|
"admin.absenceTypes.name": "名称",
|
|
371
371
|
"admin.absenceTypes.paid": "带薪",
|
|
372
372
|
"admin.absenceTypes.factor": "系数(%)",
|
|
373
373
|
"admin.absenceTypes.reduceVacation": "扣减休假",
|
|
374
|
-
"admin.absenceTypes.active": "
|
|
374
|
+
"admin.absenceTypes.active": "所有人可见",
|
|
375
375
|
"admin.absenceTypes.add": "添加类型",
|
|
376
376
|
"admin.absenceTypes.edit": "编辑",
|
|
377
377
|
"admin.absenceTypes.editTitle": "编辑类型",
|
|
@@ -402,5 +402,11 @@
|
|
|
402
402
|
"absences.state.requested": "已申请",
|
|
403
403
|
"absences.state.approved": "已批准",
|
|
404
404
|
"absences.state.rejected": "已拒绝",
|
|
405
|
-
"absences.reason": "原因"
|
|
405
|
+
"absences.reason": "原因",
|
|
406
|
+
"role.admin": "管理员",
|
|
407
|
+
"role.manager": "主管",
|
|
408
|
+
"role.employee": "员工",
|
|
409
|
+
"admin.absenceTypes.remove": "删除",
|
|
410
|
+
"admin.absenceTypes.removeTitle": "删除类型",
|
|
411
|
+
"admin.absenceTypes.removeConfirm": "确实要删除「{{name}}」吗?仍在使用该类型的缺勤必须先删除或更改。"
|
|
406
412
|
}
|