#1027: VisitorbookDO.kt

projectforge-business/src/main/kotlin/org/projectforge/business/orga/VisitorbookDO.kt JPA Entity (Visitorbook), projectforge-business/src/main/kotlin/org/projectforge/business/orga/VisitorbookDO.kt 123 lines · 86 code · 24 comments · 13 blank
Master entity for visitor tracking. Maps to t_orga_visitorbook. Stores visitor identity (first/last name, company, type) and links to EmployeeDO contact persons (ManyToMany). Has a OneToMany relationship with VisitorbookEntryDO for individual visit records.

Entity Design

Key relationships: contactPersons is a @ManyToMany to EmployeeDO via join table T_ORGA_VISITORBOOK_EMPLOYEE, serialized as IDs only. entries is @OneToMany (lazy, cascade persist/merge) to VisitorbookEntryDO, marked @NoHistory. Uses @NamedEntityGraph for eager loading of contact persons. The @AUserRightId("ORGA_VISITORBOOK") annotation declares the access right key.

Git History

868d6abb7 2025 -> 2026
a19992578 Multi selection of employees fixed: Visitorbook and Vacation entries.
63081666f Source file headers: 2024-> 2025.
0237d5eba Json serialization refactored: IdOnlySerializer and IdsOnlySerializer introduced.
27a5e6cad Visitorbook: bugfix on contactPersons.
18bf92219 WIP: History entries handling. VisitorBookDao.
d394f410f Migration stuff in progress...
50c9d6104 Migration stuff in progress...
4bc37b3a1 Migration stuff in progress...
b5dc26e24 Migration stuff in progress...
c8f8ed935 Declared all entities as FetchType.LAZY (was EAGER).
1be507bde Migration stuff in progress...
b6092df09 Copyright 2023 -> 2024
ab45d51fa Copyright 2001-2022 -> 2001-2023.
5f7ef41b8 Copyright 2021 -> 2022
c0f2b9de0 Tenants functionality removed everywhere.
ceb63e8a1 Source code header: (C) 2001-2021.
9ac06b25a Add Visitorbook rest pages
558273786 VisitorBookDO.java -> VisitorBookDO.kt