-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathschema-db-jdl.jh
232 lines (205 loc) · 4.51 KB
/
schema-db-jdl.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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
entity Actor {
codAnagr String required minlength(3),
codClienteConosc String,
codDocumento String,
codEnteRilascioDoc String,
codFiscale String,
codGruppo String,
codNdg String,
codNucleo String,
codPIva String,
codPotenzialita String,
codProfessione String,
codProvenienza String,
codProvinciaDoc String,
codProvinciaNasc String,
codRamoAttivita String,
codSottogruppo String,
codStatoDoc String,
codStatoCivile String,
codStatoCliente String,
codStileVita String,
codTitOnorario String,
codTitoloStudio String,
desCognome String,
desCognome1 String,
desComuneNasc String,
desComuneRilascioDoc String,
desNazioneNasc String,
desNome String,
desNumeroDoc String,
desSecondNome String,
dataCreazione ZonedDateTime,
dataDecesso ZonedDateTime,
dataNascita ZonedDateTime,
dataPrivacy1 ZonedDateTime,
dataPrivacy2 ZonedDateTime,
dataPrivacy3 ZonedDateTime,
dataRilascioDoc ZonedDateTime,
dataRinnovoDoc ZonedDateTime,
dataScadenzaDoc ZonedDateTime,
dataValidita ZonedDateTime,
dataVariazione ZonedDateTime,
flagCodFiscErrato String,
flagPersona String,
flagPrivacy1 String,
flagPrivacy2 String,
flagPrivacy3 String,
flagResidente String,
flagSesso String,
numFamiliari BigDecimal,
numFigli BigDecimal,
numMatricola String,
tipoCategPatente String,
handle String required minlength(2)
}
entity Cliente {
codCliente String required,
codFiscale String,
codPiva String,
codProvinciaNasc String,
desCognome String,
desCognome1 String,
desComuneNasc String,
desNazioneNasc String,
desNome String,
desSecnome String,
dtaCreazione ZonedDateTime,
dtaNascita LocalDate,
flgCfErrato String,
flgPersona String,
flgSesso String,
codLingua String,
proclie String,
ac_version Integer,
ac_dta_version ZonedDateTime,
dtaDecesso LocalDate,
codMotDecesso String
}
entity ClientePrivacy {
codCliente String required,
tipoSoggetto String required,
codDomanda String required,
risDomanda String,
ris2_domanda String,
dta_creazione ZonedDateTime,
flag_inviato String
}
entity ClientePrivacyStor {
codCliente String required,
tipoSoggetto String required,
codDomanda String required,
dataInizio LocalDate,
risDomanda String,
ris2_domanda String,
dta_creazione ZonedDateTime,
dataFine ZonedDateTime,
codUtente String
}
entity Tag {
name String required minlength(2)
content TextBlob required,
date ZonedDateTime required
}
relationship ManyToOne {
Blog{user(login)} to User,
Entry{blog(name)} to Blog
}
relationship ManyToMany {
Entry{tag(name)} to Tag{entry}
}
paginate Entry, Tag with infinite-scroll
entity Region {
regionName String
}
entity Country {
countryName String
}
// an ignored comment
/** not an ignored comment */
entity Location {
streetAddress String,
postalCode String,
city String,
stateProvince String
}
entity Department {
departmentName String required
}
/**
* Task entity.
* @author The JHipster team.
*/
entity Task {
title String,
description String
}
/**
* The Employee entity.
*/
entity Employee {
/**
* The firstname attribute.
*/
firstName String,
lastName String,
email String,
phoneNumber String,
hireDate ZonedDateTime,
salary Long,
commissionPct Long
}
entity Job {
jobTitle String,
minSalary Long,
maxSalary Long
}
entity JobHistory {
startDate ZonedDateTime,
endDate ZonedDateTime,
language Language
}
enum Language {
FRENCH, ENGLISH, SPANISH
}
relationship OneToOne {
Country{region} to Region
}
relationship OneToOne {
Location{country} to Country
}
relationship OneToOne {
Department{location} to Location
}
relationship ManyToMany {
Job{task(title)} to Task{job}
}
// defining multiple OneToMany relationships with comments
relationship OneToMany {
Employee{job} to Job,
/**
* A relationship
*/
Department{employee} to
/**
* Another side of the same relationship
*/
Employee
}
relationship ManyToOne {
Employee{manager} to Employee
}
// defining multiple oneToOne relationships
relationship OneToOne {
JobHistory{job} to Job,
JobHistory{department} to Department,
JobHistory{employee} to Employee
}
// Set pagination options
paginate JobHistory, Employee with infinite-scroll
paginate Job with pagination
dto * with mapstruct
// Set service options to all except few
service all with serviceImpl except Employee, Job
// Set an angular suffix
angularSuffix * with mySuffix