Fix employment contract feature #200

Merged
hansegucker merged 33 commits from 62-fix-employment-contract into master 2026-10-15 19:55:45 +02:00
Member

Information and screenshots

No further information have been provided.

Checklist

  • tox -e reformat,lint used
  • Changelog updated/No update necessary
  • Documentation (incl. Screenshots) up-to-date
  • Copyright in apps.py and README.rst up-to-date
  • (Unit) tests for new feature/regression tests for bug fixes (only if useful)
  • Adhere to URL scheme
  • Tested with admin account
  • Tested with normal account (based on permissions)

Backend checklist

  • Use permissions for all GraphQL mutations
  • Use query optimizer for all GraphQL queries
  • Don't use inefficient DB queries

Frontend checklist (mandatory with ~"part::frontend")

## Information and screenshots No further information have been provided. ## Checklist - [x] `tox -e reformat,lint` used - [x] Changelog updated/No update necessary - [ ] Documentation (incl. Screenshots) up-to-date - [ ] Copyright in `apps.py` and `README.rst` up-to-date - [ ] (Unit) tests for new feature/regression tests for bug fixes (only if useful) - [ ] Adhere to [URL scheme](https://code.teckids.org/aleksis/aleksis/issues/86) - [ ] Tested with admin account - [ ] Tested with normal account (based on permissions) ## Backend checklist - [x] Use permissions for all GraphQL mutations - [x] Use query optimizer for all GraphQL queries - [x] Don't use inefficient DB queries ## Frontend checklist (mandatory with ~"part::frontend") - [x] Screenshots are attached (mobile and desktop) - [x] Tested on mobile, tablet, and desktop sizes - [ ] Adhered to [frontend guidelines](hhttps://code.teckids.org/aleksis/AlekSIS/src/branch/master/project/frontend_guidelines.rst) - [ ] Checked with [Firefox Accessibility Checker](https://firefox-source-docs.mozilla.org/devtools-user/accessibility_inspector/)
yuha self-assigned this 2026-09-25 00:38:53 +02:00
Bump version to 3.0.0
Some checks failed
CI / lock (push) Successful in 40s
CI / build (push) Successful in 1m2s
CI / lint (push) Successful in 1m15s
CI / test (push) Successful in 3m5s
CI / tests-done (push) Successful in 3s
CI / publish (push) Failing after 8s
799e97332a
yuha changed title from Fix employment contract feature to WIP: Fix employment contract feature 2026-09-25 00:39:01 +02:00
Author
Member

Closes #53
Closes #59
Closes #60

Closes https://code.teckids.org/aleksis/AlekSIS-App-Kolego/issues/53 Closes https://code.teckids.org/aleksis/AlekSIS-App-Kolego/issues/59 Closes https://code.teckids.org/aleksis/AlekSIS-App-Kolego/issues/60
Remove v-container from absence CRUD list
All checks were successful
CI / lock (push) Successful in 35s
CI / build (push) Successful in 1m6s
CI / lint (push) Successful in 1m11s
CI / test (push) Successful in 2m31s
CI / tests-done (push) Successful in 2s
CI / publish (push) Successful in 9s
89216413a0
Add uuid to person
Some checks failed
CI / lock (push) Successful in 34s
CI / tests-done (push) Has been cancelled
CI / publish (push) Has been cancelled
CI / lint (push) Has been cancelled
CI / build (push) Has been cancelled
CI / test (push) Has been cancelled
251eff3a81
Re-add date_start
Some checks failed
CI / lock (push) Successful in 30s
CI / tests-done (push) Has been cancelled
CI / build (push) Has been cancelled
CI / publish (push) Has been cancelled
CI / lint (push) Successful in 1m10s
CI / test (push) Successful in 2m54s
cdf668c6b0
Adapt employment contract list to composable API
All checks were successful
CI / lock (push) Successful in 30s
CI / lint (push) Successful in 1m16s
CI / build (push) Successful in 1m22s
CI / test (push) Successful in 2m52s
CI / tests-done (push) Successful in 2s
CI / publish (push) Successful in 9s
8d60bbaf85
Use CalendarFeedField directly from objectSchema
All checks were successful
CI / lock (push) Successful in 35s
CI / lint (push) Successful in 1m15s
CI / build (push) Successful in 1m19s
CI / test (push) Successful in 2m44s
CI / tests-done (push) Successful in 3s
CI / publish (push) Successful in 9s
11da828629
Make subquota form fields wider
Some checks failed
CI / lint (push) Has been cancelled
CI / test (push) Has been cancelled
CI / tests-done (push) Has been cancelled
CI / build (push) Has been cancelled
CI / publish (push) Has been cancelled
CI / lock (push) Has been cancelled
4a2cead553
Fix quota field modelValue update mechanism / drop id
Some checks failed
CI / lock (push) Successful in 36s
CI / lint (push) Failing after 39s
CI / build (push) Successful in 1m9s
CI / test (push) Successful in 2m31s
CI / tests-done (push) Failing after 3s
CI / publish (push) Has been skipped
23fd1ec722
Ensure quota value is always sent with patch data
Some checks failed
CI / lock (push) Successful in 40s
CI / lint (push) Failing after 42s
CI / build (push) Failing after 1m11s
CI / test (push) Successful in 3m10s
CI / tests-done (push) Failing after 4s
CI / publish (push) Has been skipped
8f6e1c14df
Fix time logging calendar feeds creation and display for subquotas
Some checks failed
CI / lock (push) Successful in 1m3s
CI / lint (push) Failing after 44s
CI / build (push) Failing after 3m23s
CI / test (push) Successful in 5m18s
CI / tests-done (push) Failing after 2s
CI / publish (push) Has been skipped
0ff51046d8
Change base durations for quota
Some checks failed
CI / lock (push) Successful in 47s
CI / lint (push) Failing after 49s
CI / tests-done (push) Has been cancelled
CI / publish (push) Has been cancelled
CI / build (push) Has been cancelled
CI / test (push) Has been cancelled
8e9e0d118f
yuha force-pushed 62-fix-employment-contract from 8e9e0d118f
Some checks failed
CI / lock (push) Successful in 47s
CI / lint (push) Failing after 49s
CI / tests-done (push) Has been cancelled
CI / publish (push) Has been cancelled
CI / build (push) Has been cancelled
CI / test (push) Has been cancelled
to 70944dd066
Some checks failed
CI / lock (push) Successful in 41s
CI / lint (push) Failing after 39s
CI / build (push) Successful in 1m8s
CI / test (push) Successful in 2m28s
CI / tests-done (push) Failing after 2s
CI / publish (push) Has been skipped
2026-10-02 00:37:08 +02:00
Compare
WIP: Add function to aggregate linked calendar events' duration for employment contracts
Some checks failed
CI / lock (push) Successful in 41s
CI / test (push) Failing after 34s
CI / build (push) Failing after 37s
CI / lint (push) Failing after 40s
CI / tests-done (push) Failing after 3s
CI / publish (push) Has been skipped
7dbdc0fd74
yuha force-pushed 62-fix-employment-contract from 7dbdc0fd74
Some checks failed
CI / lock (push) Successful in 41s
CI / test (push) Failing after 34s
CI / build (push) Failing after 37s
CI / lint (push) Failing after 40s
CI / tests-done (push) Failing after 3s
CI / publish (push) Has been skipped
to 8c1c9dff59
Some checks failed
CI / lock (push) Successful in 40s
CI / lint (push) Failing after 51s
CI / test (push) Failing after 2m41s
CI / tests-done (push) Failing after 2s
CI / build (push) Successful in 3m17s
CI / publish (push) Has been skipped
2026-10-08 15:35:57 +02:00
Compare
Add calendar event duration fields to graphql types
Some checks failed
CI / lock (push) Successful in 42s
CI / lint (push) Failing after 2m9s
CI / build (push) Successful in 3m46s
CI / test (push) Successful in 7m29s
CI / tests-done (push) Failing after 2s
CI / publish (push) Has been skipped
14a089aad9
WIP: Add person widget for employment contracts
Some checks failed
CI / lock (push) Successful in 2m25s
CI / lint (push) Failing after 3m52s
CI / build (push) Successful in 5m26s
CI / test (push) Successful in 8m18s
CI / tests-done (push) Failing after 3s
CI / publish (push) Has been skipped
85965ba80a
Use i18n for quota display & add seperate card
Some checks failed
CI / lock (push) Successful in 44s
CI / lint (push) Failing after 41s
CI / test (push) Failing after 1m12s
CI / tests-done (push) Failing after 2s
CI / build (push) Successful in 1m38s
CI / publish (push) Has been skipped
233bd30c05
Also display subquotas
Some checks failed
CI / lock (push) Successful in 38s
CI / lint (push) Failing after 44s
CI / build (push) Successful in 1m20s
CI / test (push) Successful in 2m51s
CI / tests-done (push) Failing after 3s
CI / publish (push) Has been skipped
460b36ad33
Use quota units
Some checks failed
CI / lock (push) Successful in 31s
CI / lint (push) Failing after 40s
CI / build (push) Successful in 1m37s
CI / test (push) Successful in 3m11s
CI / tests-done (push) Failing after 3s
CI / publish (push) Has been skipped
80b98af44b
Handle empty subquotas
Some checks failed
CI / lock (push) Successful in 50s
CI / lint (push) Failing after 52s
CI / build (push) Failing after 1m15s
CI / tests-done (push) Has been cancelled
CI / publish (push) Has been cancelled
CI / test (push) Has been cancelled
12cccdd3b7
Factor out useQuotaDisplay
Some checks failed
CI / lock (push) Successful in 30s
CI / lint (push) Failing after 37s
CI / build (push) Successful in 1m11s
CI / tests-done (push) Has been cancelled
CI / publish (push) Has been cancelled
CI / test (push) Has been cancelled
23394d39b1
Improve layout of quota statistics card
Some checks failed
CI / lock (push) Successful in 29s
CI / lint (push) Failing after 34s
CI / build (push) Successful in 1m8s
CI / test (push) Successful in 2m26s
CI / tests-done (push) Failing after 2s
CI / publish (push) Has been skipped
d43a9cda10
Drop statistics page references
Some checks failed
CI / lock (push) Successful in 36s
CI / lint (push) Failing after 35s
CI / build (push) Successful in 1m7s
CI / test (push) Successful in 2m25s
CI / tests-done (push) Failing after 2s
CI / publish (push) Has been skipped
b70b1c8654
Hide calendarEventDurationInTimePeriod field from tables
Some checks failed
CI / lock (push) Successful in 47s
CI / lint (push) Failing after 47s
CI / build (push) Failing after 1m48s
CI / test (push) Successful in 3m41s
CI / tests-done (push) Failing after 3s
CI / publish (push) Has been skipped
8d2ac7789c
Add date field
Some checks failed
CI / lock (push) Successful in 30s
CI / lint (push) Failing after 56s
CI / test (push) Failing after 1m29s
CI / tests-done (push) Failing after 2s
CI / build (push) Successful in 2m1s
CI / publish (push) Has been skipped
24c6210009
Improve layout
Some checks failed
CI / lock (push) Successful in 49s
CI / lint (push) Failing after 42s
CI / build (push) Successful in 1m16s
CI / test (push) Successful in 2m46s
CI / tests-done (push) Failing after 2s
CI / publish (push) Has been skipped
41d0023d03
Show relevant time span
Some checks failed
CI / lock (push) Successful in 44s
CI / lint (push) Failing after 40s
CI / build (push) Successful in 1m13s
CI / tests-done (push) Has been cancelled
CI / publish (push) Has been cancelled
CI / test (push) Has been cancelled
0b5dd46c43
Author
Member

image

![image](/attachments/94dfcd2e-cd3a-451f-9a18-6c2502afd9f5)
Author
Member

image

![image](/attachments/39570909-55ce-436b-9b60-83d652967a62)
Also shrink size of absence reason chip
Some checks failed
CI / lock (push) Successful in 29s
CI / lint (push) Failing after 36s
CI / build (push) Successful in 1m14s
CI / test (push) Successful in 2m44s
CI / tests-done (push) Failing after 2s
CI / publish (push) Has been skipped
81dc920c82
Remove todos & add permissions
Some checks failed
CI / lock (push) Successful in 36s
CI / lint (push) Failing after 40s
CI / tests-done (push) Has been cancelled
CI / publish (push) Has been cancelled
CI / test (push) Has been cancelled
CI / build (push) Has been cancelled
17de5d20ca
Fix rules naming
Some checks failed
CI / lock (push) Successful in 42s
CI / lint (push) Failing after 36s
CI / build (push) Successful in 1m19s
CI / tests-done (push) Has been cancelled
CI / publish (push) Has been cancelled
CI / test (push) Has been cancelled
06a9c19ed8
Add changelog
Some checks failed
CI / lock (push) Successful in 30s
CI / lint (push) Failing after 35s
CI / build (push) Successful in 1m19s
CI / test (push) Successful in 2m34s
CI / tests-done (push) Failing after 2s
CI / publish (push) Has been skipped
5ab2b2dfbc
Fix predicate naming
Some checks failed
CI / lock (push) Successful in 27s
CI / lint (push) Failing after 37s
CI / tests-done (push) Has been cancelled
CI / publish (push) Has been cancelled
CI / test (push) Has been cancelled
CI / build (push) Has been cancelled
df5aacdb37
Reformat
Some checks failed
CI / lock (push) Successful in 31s
CI / lint (push) Failing after 52s
CI / build (push) Successful in 1m13s
CI / test (push) Successful in 2m43s
CI / tests-done (push) Failing after 2s
CI / publish (push) Has been skipped
8bce7219f5
yuha changed title from WIP: Fix employment contract feature to Fix employment contract feature 2026-10-09 02:40:26 +02:00
@ -3,9 +3,12 @@ import { defineAsyncComponent } from "vue";
export const collectionItems = {
corePersonWidgets: [
{
key: "core-person-widgets",
Owner

Why is this widget no longer there?

Why is this widget no longer there?
Author
Member

oh good that you noticed that. that was an accident.

oh good that you noticed that. that was an accident.
yuha marked this conversation as resolved
@ -55,4 +64,3 @@
quota_base_duration = models.GeneratedField(
expression=ExpressionWrapper(
Case(
When(quota_base_unit="minutes", then=F("quota_base") * Value(60)),
Owner

Why is this removed?

Why is this removed?
Author
Member

Because I can't really think of cases where using hours or even minutes as the quota base feels reasonable & because allowing this would complicate the statistical evaluation mechanism (now, statistics are calculated and shown for the length of their quota base, starting on a given day which is the current date per default; adapting this to hours/minutes felt contraintuitive for me)

Because I can't really think of cases where using hours or even minutes as the quota base feels reasonable & because allowing this would complicate the statistical evaluation mechanism (now, statistics are calculated and shown for the length of their quota base, starting on a given day which is the current date per default; adapting this to hours/minutes felt contraintuitive for me)
yuha marked this conversation as resolved
Move widgets & re-add wrongly removed absence widget
Some checks failed
CI / lock (push) Successful in 42s
CI / tests-done (push) Has been cancelled
CI / publish (push) Has been cancelled
CI / lint (push) Has been cancelled
CI / test (push) Has been cancelled
CI / build (push) Has been cancelled
6d1f14aaf5
yuha force-pushed 62-fix-employment-contract from 6d1f14aaf5
Some checks failed
CI / lock (push) Successful in 42s
CI / tests-done (push) Has been cancelled
CI / publish (push) Has been cancelled
CI / lint (push) Has been cancelled
CI / test (push) Has been cancelled
CI / build (push) Has been cancelled
to 280908645a
Some checks failed
CI / lock (push) Successful in 36s
CI / tests-done (push) Has been cancelled
CI / publish (push) Has been cancelled
CI / lint (push) Has been cancelled
CI / build (push) Has been cancelled
CI / test (push) Has been cancelled
2026-10-13 23:27:06 +02:00
Compare
Reformat
All checks were successful
CI / lock (push) Successful in 35s
CI / lint (push) Successful in 1m38s
CI / build (push) Successful in 1m50s
CI / test (push) Successful in 4m18s
CI / tests-done (push) Successful in 3s
CI / publish (push) Successful in 11s
2158e38d9a
hansegucker scheduled this pull request to auto merge when all checks succeed 2026-10-15 12:25:51 +02:00
Merge branch 'master' into 62-fix-employment-contract
All checks were successful
CI / lock (push) Successful in 39s
CI / lint (push) Successful in 6m33s
CI / build (push) Successful in 6m45s
CI / test (push) Successful in 2m53s
CI / tests-done (push) Successful in 5s
CI / publish (push) Successful in 12s
a150ab95cd
hansegucker scheduled this pull request to auto merge when all checks succeed 2026-10-15 15:09:40 +02:00
hansegucker deleted branch 62-fix-employment-contract 2026-10-15 19:55:46 +02:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
aleksis/AlekSIS-App-Kolego!200
No description provided.