Add hamster tag management, reinstate tags during import, reorganise

code
This commit is contained in:
3wc
2024-12-07 10:08:20 -05:00
parent 48905953ca
commit fd651ff25a
10 changed files with 389 additions and 134 deletions

View File

@ -3,8 +3,10 @@ from .kimaiapi import (
Customer as KimaiAPICustomer,
Project as KimaiAPIProject,
Activity as KimaiAPIActivity,
Tag as KimaiAPITag,
)
from .db import (
KimaiTag,
db,
KimaiProject,
KimaiCustomer,
@ -18,6 +20,7 @@ def sync() -> None:
KimaiCustomer.delete().execute()
KimaiProject.delete().execute()
KimaiActivity.delete().execute()
KimaiTag.delete().execute()
customers = KimaiAPICustomer.list(api)
with db.atomic():
@ -60,3 +63,16 @@ def sync() -> None:
for activity in activities
]
).execute()
tags = KimaiAPITag.list(api)
with db.atomic():
KimaiTag.insert_many(
[
{
"id": tag.id,
"name": tag.name,
"visible": tag.visible,
}
for tag in tags
]
).execute()