Fuckin yaldi, working kimai import 💅

This commit is contained in:
3wc
2023-11-01 19:28:55 +00:00
parent e8ff5f1411
commit ebf2dca695
4 changed files with 118 additions and 34 deletions

View File

@ -22,7 +22,7 @@ from .db import (
KimaiProject,
KimaiCustomer,
KimaiActivity,
HamsterKimaiMapping,
HamsterActivityKimaiMapping,
)
from .kimai import (
KimaiAPI,
@ -303,11 +303,11 @@ class ActivityListScreen(ListScreen):
)
mappings_count_query = (
HamsterKimaiMapping.select(
HamsterKimaiMapping.hamster_activity_id,
fn.COUNT(HamsterKimaiMapping.id).alias("mappings_count"),
HamsterActivityKimaiMapping.select(
HamsterActivityKimaiMapping.hamster_activity_id,
fn.COUNT(HamsterActivityKimaiMapping.id).alias("mappings_count"),
)
.group_by(HamsterKimaiMapping.hamster_activity_id)
.group_by(HamsterActivityKimaiMapping.hamster_activity_id)
.alias("mappings_count_query")
)
@ -460,7 +460,7 @@ class ActivityListScreen(ListScreen):
def handle_mapping(mapping):
if mapping is None:
return
m = HamsterKimaiMapping.create(
m = HamsterActivityKimaiMapping.create(
hamster_activity=selected_activity, **mapping
)
m.save()
@ -613,6 +613,7 @@ class KimaiProjectListScreen(ListScreen):
"id": project.id,
"name": project.name,
"customer_id": project.customer.id,
"allow_global_activities": project.allow_global_activities
}
for project in projects
]