-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathweddingplaner_final.jh
77 lines (67 loc) · 1.66 KB
/
weddingplaner_final.jh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
/**
* 'User' is a predesigned special entity
* and can not have additional attributes etc.
*
* List to see User-fields (without constraints, pattern...)
* entity User {
* login String
* password String
* firstName String
* lastName String
* email String
* activated Boolean
* langKey String
* imageUrl String
* activationKey String
* resetKey String
* resetDate Instant
* }
*/
entity UserExtra {
code String required minlength(8) maxlength(15)
addressLine1 String
addressLine2 String
city String
zipCode String
country String
businessPhoneNr String
privatePhoneNr String
mobilePhoneNr String
guestInvitationDate LocalDate
guestCommitted Boolean
}
enum AllowGroup {
ADRESSE, EMAIL, TELEFON
}
entity AllowControl {
allowGroup AllowGroup
}
entity PartyFood {
foodName String required minlength(6) maxlength(80)
foodShortDescription String minlength(20) maxlength(1024)
foodLongDescription TextBlob
foodQuantityPersons Integer
foodBestServeTime Instant
foodProposalAccepted Boolean
}
entity Message {
messageShortDescription String required minlength(6) maxlength(80)
messageInitTime Instant
messageText TextBlob
messageValidFrom Instant
messageValidUntil Instant
}
relationship OneToOne {
UserExtra{user required} to User
}
relationship ManyToOne {
PartyFood{userExtra} to UserExtra{partyFood(foodName) required}
AllowControl{controlGroup} to UserExtra{owner}
Message{from required} to UserExtra{ownedMessage}
}
relationship ManyToMany {
AllowControl{controlledGroup} to UserExtra{allowedUser}
Message{to required} to UserExtra{receivedMessage}
}
paginate * with pagination
service * with serviceImpl