Subversion Repositories bacoAlunos

Rev

Rev 1112 | Rev 1238 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
110 susana 1
<?xml version="1.0"?>
2
<!DOCTYPE hibernate-mapping
3
        PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
4
        "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
5
 
6
<hibernate-mapping>
287 jmachado 7
    <class name="pt.estgp.estgweb.domain.CourseUnit" table="courseunit" abstract="true">
146 jmachado 8
        <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>
110 susana 9
        <meta attribute="scope-class">public abstract</meta>
10
        <id name="id" type="long">
11
            <generator class="native"/>
12
        </id>
13
        <discriminator column="discrimitator"/>
690 jmachado 14
        <timestamp source="db"   name="updateDate" unsaved-value="null"/>
110 susana 15
        <property name="saveDate" type="timestamp"/>
206 jmachado 16
        <property name="semestre" type="string" index="semestreIndex"/>
17
        <property name="name" type="string" index="nameIndex"/>
225 jmachado 18
        <property name="code" type="string" index="codeIndex"/>
19
        <property name="courseCode" type="string" index="courseCodeIndex"/>
20
        <property name="courseName" type="string" index="courseNameIndex"/>
21
        <property name="courseYear" type="string" index="courseYearIndex"/>
206 jmachado 22
        <property name="importYear" type="string" index="importYearIndex"/>
225 jmachado 23
        <property name="institutionCode" type="string" index="institutionCodeIndex" />
214 jmachado 24
        <property name="pathIntranet" type="string" />
25
        <property name="normalizedName" type="string" />
203 jmachado 26
        <property name="objectives" type="text"/>
225 jmachado 27
        <property name="programStreamId" type="string" index="programStreamIdIndex" />
343 jmachado 28
        <property name="validProgram" type="boolean" index="validProgramIndex"/>
225 jmachado 29
        <property name="status" type="boolean" index="statusIndex" />
489 jmachado 30
        <property name="contentsGrants" type="string"/>
917 jmachado 31
        <property name="evaluationStreamId" type="string" index="evaluationStreamIdIndex" />
1077 jmachado 32
        <property name="evaluationOpenByAdmin" type="boolean" index="evaluationOpenByAdminIndex">
33
            <column name="evaluationOpenByAdmin" default="false"/>
34
        </property>
995 jmachado 35
        <property name="summariesJson" type="text">
36
            <column name="summariesJson" sql-type="TEXT"/>
37
        </property>
1112 jmachado 38
        <property name="cdTurma" type="string" index="cdTurmaIndex" />
999 jmachado 39
        <!--Not In Use-->
1029 jmachado 40
        <many-to-one name="validatorUser" class="pt.estgp.estgweb.domain.User" lazy="false" outer-join="true" />
208 jmachado 41
        <many-to-one name="course" class="pt.estgp.estgweb.domain.Course" lazy="false" outer-join="true"/>
1029 jmachado 42
        <many-to-one name="courseUnitProgram" class="pt.estgp.estgweb.domain.CourseUnitProgram" lazy="proxy" />
43
        <many-to-one name="courseUnitEvaluation" class="pt.estgp.estgweb.domain.CourseUnitEvaluation" lazy="proxy" />
938 jmachado 44
        <!--<many-to-one name="courseUnitProgram" class="pt.estgp.estgweb.domain.CourseUnitProgram" lazy="false" outer-join="true"/>
45
        <many-to-one name="courseUnitEvaluation" class="pt.estgp.estgweb.domain.CourseUnitEvaluation" lazy="false" outer-join="true"/>-->
998 jmachado 46
        <many-to-one name="responsableTeacher" class="pt.estgp.estgweb.domain.Teacher" lazy="false" outer-join="true" not-null="false"/>
208 jmachado 47
        <set name="blogs" cascade="delete" lazy="true" order-by="saveDate asc">
203 jmachado 48
            <key column="courseUnit"/>
49
            <one-to-many class="pt.estgp.estgweb.domain.CourseUnitBlog" />
50
        </set>
1236 jmachado 51
 
296 jmachado 52
        <set name="teachers" lazy="true" table="teachedunits">
180 jmachado 53
            <key column="courseUnitId"/>
205 jmachado 54
            <many-to-many class="pt.estgp.estgweb.domain.TeacherImpl" column="teacherId"/>
180 jmachado 55
        </set>
56
        <set name="students" lazy="true" table="subscribedunits">
57
            <key column="courseUnitId"/>
58
            <many-to-many class="pt.estgp.estgweb.domain.StudentImpl" column="studentId"/>
59
        </set>
202 jmachado 60
        <set name="announcements" cascade="delete" lazy="true" order-by="saveDate desc">
61
            <key column="courseUnit"/>
62
            <one-to-many class="pt.estgp.estgweb.domain.CourseUnitAnnouncement" />
63
        </set>
203 jmachado 64
        <set name="questions" cascade="delete" lazy="true" order-by="saveDate desc">
65
            <key column="courseUnit"/>
66
            <one-to-many class="pt.estgp.estgweb.domain.CourseUnitQuestion" />
67
        </set>
207 jmachado 68
        <set name="assignements" cascade="delete" lazy="true" order-by="deliverDate desc">
205 jmachado 69
            <key column="courseUnit"/>
70
            <one-to-many class="pt.estgp.estgweb.domain.CourseUnitAssignement"/>
71
        </set>
358 jmachado 72
        <set name="summaries" cascade="delete" lazy="true" order-by="dataAula desc">
73
            <key column="courseUnit"/>
74
            <one-to-many class="pt.estgp.estgweb.domain.CourseUnitSummary"/>
75
        </set>
1236 jmachado 76
        <set name="turmas" cascade="delete" lazy="true" order-by="saveDate desc">
77
            <key column="courseUnit"/>
78
            <one-to-many class="pt.estgp.estgweb.domain.CourseUnitTurma" />
79
        </set>
110 susana 80
        <subclass name="pt.estgp.estgweb.domain.CourseUnitImpl" discriminator-value="CourseUnitImpl"/>
81
    </class>
203 jmachado 82
 
296 jmachado 83
    <class name="pt.estgp.estgweb.domain.CourseUnitQuestion" table="courseunitquestion" abstract="true">
236 jmachado 84
        <meta attribute="extends">pt.estgp.estgweb.domain.OwnedDomainObject</meta>
203 jmachado 85
        <meta attribute="scope-class">public abstract</meta>
86
        <id name="id" type="long">
87
            <generator class="native"/>
88
        </id>
89
        <discriminator column="discrimitator"/>
690 jmachado 90
        <timestamp source="db"   name="updateDate" unsaved-value="null"/>
203 jmachado 91
        <property name="saveDate" type="timestamp"/>
92
        <property name="question" type="text"/>
93
        <property name="answer" type="text"/>
94
        <property name="answred" type="boolean" index="answredIndex"/>
236 jmachado 95
        <many-to-one name="owner" class="pt.estgp.estgweb.domain.GenericUser" lazy="false" outer-join="true"/>
203 jmachado 96
        <many-to-one name="courseUnit" class="pt.estgp.estgweb.domain.CourseUnit" lazy="false" outer-join="true"/>
97
        <subclass name="pt.estgp.estgweb.domain.CourseUnitQuestionImpl" discriminator-value="CourseUnitQuestionImpl"/>
98
    </class>
99
 
296 jmachado 100
    <class name="pt.estgp.estgweb.domain.CourseUnitAssignement" table="courseunitassignement" abstract="true">
203 jmachado 101
        <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>
102
        <meta attribute="scope-class">public abstract</meta>
103
        <id name="id" type="long">
104
            <generator class="native"/>
105
        </id>
106
        <discriminator column="discrimitator"/>
690 jmachado 107
        <timestamp source="db"   name="updateDate" unsaved-value="null"/>
203 jmachado 108
        <property name="saveDate" type="timestamp"/>
109
        <property name="deliverDate" type="timestamp"/>
110
        <property name="deliverType" type="string"/>
111
        <property name="lateDelivers" type="boolean"/>
205 jmachado 112
        <property name="title" type="string"/>
113
        <property name="description" type="text"/>
208 jmachado 114
        <property name="repositoryStream" type="string" index="repositoryStreamIndex"/>
205 jmachado 115
        <property name="status" type="boolean"/>
203 jmachado 116
        <many-to-one name="courseUnit" class="pt.estgp.estgweb.domain.CourseUnit" lazy="false" outer-join="true"/>
208 jmachado 117
        <set name="deliverables" cascade="delete" lazy="true" order-by="deliverDate asc">
207 jmachado 118
            <key column="courseUnitAssignement"/>
119
            <one-to-many class="pt.estgp.estgweb.domain.CourseUnitDeliverable"/>
120
        </set>
203 jmachado 121
        <subclass name="pt.estgp.estgweb.domain.CourseUnitAssignementImpl" discriminator-value="CourseUnitAssignementImpl"/>
122
    </class>
123
 
296 jmachado 124
    <class name="pt.estgp.estgweb.domain.CourseUnitDeliverable" table="courseunitdeliverable" abstract="true">
203 jmachado 125
        <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>
126
        <meta attribute="scope-class">public abstract</meta>
127
        <id name="id" type="long">
128
            <generator class="native"/>
129
        </id>
130
        <discriminator column="discrimitator"/>
690 jmachado 131
        <timestamp source="db"   name="updateDate" unsaved-value="null"/>
203 jmachado 132
        <property name="saveDate" type="timestamp"/>
208 jmachado 133
        <property name="deliverDate" type="timestamp"/>
134
        <property name="grade" type="string"/>
135
        <property name="obs" type="text"/>
428 jmachado 136
        <property name="studentId" type="long"/>
137
        <property name="studentUsername" type="string"/>
138
        <property name="studentCode" type="string"/>
139
        <property name="studentName" type="string"/>
208 jmachado 140
        <property name="deliverableRepositoryStream" type="string" index="deliverableRepositoryStreamIndex"/>
203 jmachado 141
        <many-to-one name="courseUnitAssignement" class="pt.estgp.estgweb.domain.CourseUnitAssignement" lazy="false" outer-join="true"/>
142
        <many-to-one name="student" class="pt.estgp.estgweb.domain.Student" lazy="false" outer-join="true"/>
143
        <subclass name="pt.estgp.estgweb.domain.CourseUnitDeliverableImpl" discriminator-value="CourseUnitDeliverableImpl"/>
144
    </class>
145
 
296 jmachado 146
    <class name="pt.estgp.estgweb.domain.CourseUnitGrade" table="courseunitgrade" abstract="true">
219 jmachado 147
        <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>
148
        <meta attribute="scope-class">public abstract</meta>
149
        <id name="id" type="long">
150
            <generator class="native"/>
151
        </id>
152
        <discriminator column="discrimitator"/>
690 jmachado 153
        <timestamp source="db"   name="updateDate" unsaved-value="null"/>
219 jmachado 154
        <property name="saveDate" type="timestamp"/>
155
        <property name="publishDate" type="timestamp"/>
156
        <property name="grade" type="int" index="gradeIndex"/>
228 jmachado 157
        <property name="normalizedCourseUnitName" type="string"/>
219 jmachado 158
        <property name="statusEpoca" type="int" index="statusEpocaIndex"/>
1057 jmachado 159
        <property name="descStatusEpoca" type="string"/>
160
        <property name="descEpoca" type="string" />
161
        <property name="codigoMomento" type="string" />
162
        <property name="codigoEpoca" type="string" />
219 jmachado 163
        <property name="importYear" type="string" index="importYearIndex"/>
164
        <many-to-one name="courseUnit" class="pt.estgp.estgweb.domain.CourseUnit" lazy="false" outer-join="true"/>
165
        <many-to-one name="student" class="pt.estgp.estgweb.domain.Student" lazy="false" outer-join="true"/>
166
        <subclass name="pt.estgp.estgweb.domain.CourseUnitGradeImpl" discriminator-value="CourseUnitGradeImpl"/>
167
    </class>
168
 
358 jmachado 169
    <class name="pt.estgp.estgweb.domain.CourseUnitSummary" table="courseunitsummary" abstract="true">
170
        <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>
171
        <meta attribute="scope-class">public abstract</meta>
172
        <id name="id" type="long">
173
            <generator class="native"/>
174
        </id>
175
        <discriminator column="discrimitator"/>
690 jmachado 176
        <timestamp source="db"   name="updateDate" unsaved-value="null"/>
358 jmachado 177
        <property name="saveDate" type="timestamp"/>
178
        <property name="dataAula" type="timestamp"/>
1236 jmachado 179
        <property name="cdTipoOcupacao" type="int"/>
358 jmachado 180
        <property name="tipoAula" type="string"/>
181
        <property name="codigoAula" type="string"/>
182
        <property name="codigoSumario" type="string"/>
183
        <property name="codigoSalaAula" type="string"/>
1236 jmachado 184
        <property name="codigoDocente" type="string"/>
358 jmachado 185
        <property name="alunosPresentes" type="int"/>
186
        <property name="numeroAula" type="int"/>
1236 jmachado 187
        <property name="nrAula" type="int"/>
358 jmachado 188
        <property name="titulo" type="string" index="tituloIndex"/>
189
        <property name="descricao" type="text"/>
190
        <property name="cEstado" type="string"/>
995 jmachado 191
        <property name="numeroHoras" type="string"/>
358 jmachado 192
        <many-to-one name="courseUnit" class="pt.estgp.estgweb.domain.CourseUnit" lazy="false" outer-join="true"/>
193
        <subclass name="pt.estgp.estgweb.domain.CourseUnitSummaryImpl" discriminator-value="CourseUnitSummaryImpl"/>
194
    </class>
195
 
726 jmachado 196
 
197
 
198
    <class name="pt.estgp.estgweb.domain.CourseUnitProgram" table="courseunitprogram" abstract="true">
199
           <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>
200
           <meta attribute="scope-class">public abstract</meta>
201
           <id name="id" type="long">
202
               <generator class="native"/>
203
           </id>
204
           <discriminator column="discrimitator"/>
205
           <timestamp source="db"   name="updateDate" unsaved-value="null"/>
206
           <property name="saveDate" type="timestamp"/>
207
           <property name="bibliografia" type="text"/>
730 jmachado 208
           <property name="bibliografiaComplementar" type="text"/>
726 jmachado 209
           <property name="adaptacaoObjectivosMetodologia" type="text"/>
210
           <property name="demonstracaoCargaEcts" type="text"/>
211
           <property name="garantiaAvaliacaoFuncaObjectivos" type="text"/>
212
           <property name="metodologiasActividadeCientifica" type="text"/>
213
           <property name="ects" type="string"/>
214
           <property name="prerequisitos" type="text"/>
215
           <property name="obrigatoria" type="string"/>
216
           <property name="lingua1" type="string"/>
217
           <property name="lingua2" type="string"/>
749 jmachado 218
 
219
           <property name="cargaHorariaTotal" type="string"/>
220
           <property name="cargaHorariaT" type="string"/>
221
           <property name="cargaHorariaTP" type="string"/>
222
           <property name="cargaHorariaPL" type="string"/>
223
           <property name="cargaHorariaS" type="string"/>
224
           <property name="cargaHorariaTC" type="string"/>
225
           <property name="cargaHorariaO" type="string"/>
226
           <property name="cargaHorariaOT" type="string"/>
227
 
747 jmachado 228
           <many-to-one name="courseUnitProgramPart2" class="pt.estgp.estgweb.domain.CourseUnitProgramPart2" lazy="false" outer-join="true"/>
726 jmachado 229
           <subclass name="pt.estgp.estgweb.domain.CourseUnitProgramImpl" discriminator-value="CourseUnitProgramImpl"/>
230
       </class>
231
 
747 jmachado 232
       <class name="pt.estgp.estgweb.domain.CourseUnitProgramPart2" table="courseunitprogrampart2" abstract="true">
233
           <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>
234
           <meta attribute="scope-class">public abstract</meta>
235
           <id name="id" type="long">
236
               <generator class="native"/>
237
           </id>
238
           <discriminator column="discrimitator"/>
239
           <timestamp source="db" name="updateDate" unsaved-value="null"/>
240
           <property name="saveDate" type="timestamp"/>
241
           <property name="objectivos" type="text"/>
242
           <property name="conteudos" type="text"/>
243
           <property name="demonstracaoCoerenciaConteudos" type="text"/>
244
           <property name="metodologiasEnsino" type="text"/>
245
           <property name="avaliacaoOrdinariosFrequencia" type="text"/>
246
           <property name="avaliacaoOrdinariosExame" type="text"/>
247
           <property name="avaliacaoEspeciaisFrequencia" type="text"/>
248
           <property name="avaliacaoEspeciaissExame" type="text"/>
249
           <property name="demonstracaoObjectivosMetodologia" type="text"/>
250
           <subclass name="pt.estgp.estgweb.domain.CourseUnitProgramPart2Impl" discriminator-value="CourseUnitProgramPart2Impl"/>
251
       </class>
726 jmachado 252
 
747 jmachado 253
 
881 jmachado 254
 
255
    <class name="pt.estgp.estgweb.domain.CourseUnitEvaluation" table="courseunitevaluation" abstract="true">
256
        <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>
257
        <meta attribute="scope-class">public abstract</meta>
258
        <id name="id" type="long">
259
            <generator class="native"/>
260
        </id>
261
        <discriminator column="discrimitator"/>
262
        <timestamp source="db"   name="updateDate" unsaved-value="null"/>
263
        <property name="saveDate" type="timestamp"/>
887 jmachado 264
        <property name="closed" type="boolean"/>
1017 jmachado 265
        <!-- todo update aos do ano anterior para meter todos os evaluations salvos com teacherComplete = true -->
1024 jmachado 266
        <property name="teacherComplete" type="boolean" index="teacherCompleteIndex">
1017 jmachado 267
            <column name="teacherComplete" default="true"/>
268
        </property>
881 jmachado 269
        <property name="numAlunosInscritos" type="text"/>
270
        <property name="numAlunosSemElementosAvaliacao" type="integer"/>
271
 
272
        <property name="numAlunosAprovFrequencia" type="integer"/>
273
        <property name="numAlunosAprovNormal" type="integer"/>
274
        <property name="numAlunosAprovRecurso" type="integer"/>
275
        <property name="numAlunosAprovEspecial" type="integer"/>
276
        <property name="numAlunosAprovTotal" type="integer"/>
277
 
278
        <property name="numAlunosAprov1013" type="integer"/>
279
        <property name="numAlunosAprov1416" type="integer"/>
280
        <property name="numAlunosAprov1720" type="integer"/>
281
 
282
        <property name="numAlunosAprovados" type="integer"/>
283
        <property name="numAlunosReprovados" type="integer"/>
284
 
285
        <property name="qualApreciacaoQuantitivos" type="text"/>
286
        <property name="qualApreciacaoUC" type="text"/>
287
        <property name="qualApreciacaoCumprimentoPrograma" type="text"/>
288
        <property name="qualConclusoes" type="text"/>
289
 
953 jmachado 290
 
881 jmachado 291
        <subclass name="pt.estgp.estgweb.domain.CourseUnitEvaluationImpl" discriminator-value="CourseUnitEvaluationImpl"/>
292
    </class>
293
 
294
 
1236 jmachado 295
    <!-- todo Verificar o serviço de apagar cadeira
296
        Parece-me que vai sempre haver aqui turmas a menos que se removam
297
        as turmas quando nao há mais alunos, pelo menos tem de se vir removendo
298
        daqui as associações aos estudantes e profs quando saiem da lista primária
299
    -->
300
    <class name="pt.estgp.estgweb.domain.CourseUnitTurma" table="courseunitturma" abstract="true">
301
        <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>
302
        <meta attribute="scope-class">public abstract</meta>
303
        <id name="id" type="long">
304
            <generator class="native"/>
305
        </id>
306
        <discriminator column="discrimitator"/>
307
        <timestamp source="db"   name="updateDate" unsaved-value="null"/>
308
        <property name="saveDate" type="timestamp"/>
309
        <property name="turma" type="string"/>
310
        <set name="docentesTipologia" cascade="delete" lazy="true" order-by="deliverDate asc">
311
            <key column="courseUnitTurma"/>
312
            <one-to-many class="pt.estgp.estgweb.domain.CourseUnitTurmaDocenteTipologia"/>
313
        </set>
314
        <set name="teachers" lazy="true" table="teachedunits">
315
            <key column="courseUnitId"/>
316
            <many-to-many class="pt.estgp.estgweb.domain.TeacherImpl" column="teacherId"/>
317
        </set>
318
        <set name="students" lazy="true" table="subscribedunits">
319
            <key column="courseUnitId"/>
320
            <many-to-many class="pt.estgp.estgweb.domain.StudentImpl" column="studentId"/>
321
        </set>
322
        <subclass name="pt.estgp.estgweb.domain.CourseUnitTurmaImpl" discriminator-value="CourseUnitTurmaImpl"/>
323
    </class>
324
 
325
    <class name="pt.estgp.estgweb.domain.CourseUnitTurmaDocenteTipologia" table="courseunitturmadocentetipologia" abstract="true">
326
        <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>
327
        <meta attribute="scope-class">public abstract</meta>
328
        <id name="id" type="long">
329
            <generator class="native"/>
330
        </id>
331
        <discriminator column="discrimitator"/>
332
        <timestamp source="db" name="updateDate" unsaved-value="null"/>
333
        <property name="saveDate" type="timestamp"/>
334
        <property name="codigoTipoOcupacao" type="string"/>
335
        <property name="tipoOcupacaoDesc" type="string"/>
336
        <many-to-one name="teacher" class="pt.estgp.estgweb.domain.Teacher" lazy="false" outer-join="true" not-null="false"/>
337
        <subclass name="pt.estgp.estgweb.domain.CourseUnitTurmaDocenteTipologiaImpl" discriminator-value="CourseUnitTurmaDocenteTipologiaImpl"/>
338
    </class>
339
 
340
 
296 jmachado 341
    <!--<class name="pt.estgp.estgweb.domain.CourseUnit" table="courseunitassignement" abstract="true">-->
226 jmachado 342
        <!--<meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>-->
343
        <!--<meta attribute="scope-class">public abstract</meta>-->
344
        <!--<id name="id" type="long">-->
345
            <!--<generator class="native"/>-->
346
        <!--</id>-->
347
        <!--<discriminator column="discrimitator"/>-->
690 jmachado 348
        <!--<timestamp source="db"   name="updateDate" unsaved-value="null"/>-->
226 jmachado 349
        <!--<property name="saveDate" type="timestamp"/>-->
350
        <!--<property name="deliverDate" type="timestamp"/>-->
351
        <!--<property name="deliverType" type="string"/>-->
352
        <!--<property name="lateDelivers" type="boolean"/>-->
353
        <!--<property name="title" type="string"/>-->
354
        <!--<property name="description" type="text"/>-->
355
        <!--<property name="repositoryStream" type="string" index="repositoryStreamIndex"/>-->
356
        <!--<property name="status" type="boolean"/>-->
357
        <!--<many-to-one name="courseUnit" class="pt.estgp.estgweb.domain.CourseUnit" lazy="false" outer-join="true"/>-->
358
        <!--<set name="deliverables" cascade="delete" lazy="true" order-by="deliverDate asc">-->
359
            <!--<key column="courseUnitAssignement"/>-->
360
            <!--<one-to-many class="pt.estgp.estgweb.domain.CourseUnitDeliverable"/>-->
361
        <!--</set>-->
362
        <!--<subclass name="pt.estgp.estgweb.domain.CourseUnitAssignementImpl" discriminator-value="CourseUnitAssignementImpl"/>-->
363
    <!--</class>-->
225 jmachado 364
 
110 susana 365
</hibernate-mapping>