Subversion Repositories bacoAlunos

Rev

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

Rev Author Line No. Line
1 fvelez 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>
7
    <class name="pt.estgp.estgweb.domain.Course" table="course" abstract="true">
146 jmachado 8
        <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>
1 fvelez 9
        <meta attribute="scope-class">public abstract</meta>
10
        <id name="id" type="long">
11
            <generator class="native"/>
12
        </id>
13
        <discriminator column="discrimitator"/>
1549 jmachado 14
        <timestamp source="db"   name="updateDate" unsaved-value="null"/>
1 fvelez 15
        <property name="saveDate" type="timestamp"/>
16
        <property name="name" type="string"/>
1505 jmachado 17
        <property name="nameEn" type="string"/>
18
        <property name="nameEs" type="string"/>
19
        <property name="nameFr" type="string"/>
1 fvelez 20
        <property name="description" type="text"/>
21
        <property name="code" type="string"/>
206 jmachado 22
        <property name="importYear" type="string" index="importYearIndex"/>
1692 jmachado 23
        <!--<property name="institutionalCode" type="string"/>-->
1 fvelez 24
        <property name="externalSiteServer" type="string"/>
25
        <property name="externalSitePath" type="string"/>
1070 jmachado 26
        <property name="degree" type="string" index="degreeIndex"/>
790 jmachado 27
        <property name="status" type="boolean"/>
1521 jmachado 28
        <property name="showStudiesPlan" type="boolean">
29
            <column name="showStudiesPlan" default="false"/>
30
        </property>
248 jmachado 31
        <property name="cacheWebDocument" type="text">
1504 jmachado 32
            <column name="cacheWebDocument" sql-type="MEDIUMTEXT"/>
248 jmachado 33
        </property>
1496 jmachado 34
        <!--legacy-->
214 jmachado 35
        <property name="studiesPlan" type="string" index="studiesPlanIndex"/>
507 jmachado 36
        <property name="validationRole" type="string" index="validationRoleIndex"/>
1505 jmachado 37
        <property name="area" type="string" index="areaIndex" insert="false" update="false"/>
901 jmachado 38
        <property name="userGroupStudents" type="string"/>
1496 jmachado 39
        <property name="json" type="text">
40
            <column name="json" sql-type="MEDIUMTEXT"/>
41
        </property>
1505 jmachado 42
        <many-to-one name="department" class="pt.estgp.estgweb.domain.CourseDepartment" outer-join="true" lazy="false">
43
            <column name="area" length="20" sql-type="VARCHAR"/>
44
        </many-to-one>
1312 jmachado 45
        <many-to-one name="courseContents" class="pt.estgp.estgweb.domain.PageSection" lazy="proxy" outer-join="false">
46
            <column name="courseContents"/>
47
        </many-to-one>
214 jmachado 48
        <many-to-one name="director" class="pt.estgp.estgweb.domain.Teacher" outer-join="false" lazy="proxy"/>
49
        <many-to-one name="coordinator" class="pt.estgp.estgweb.domain.Teacher" outer-join="false" lazy="proxy"/>
1496 jmachado 50
        <set name="studiesPlans" order-by="id desc" lazy="true">
51
            <key column="course_id"/>
52
            <one-to-many class="pt.estgp.estgweb.domain.CourseStudiesPlan"/>
53
        </set>
1780 jmachado 54
        <!--<set name="users" order-by="user.name asc" lazy="true">
1 fvelez 55
            <key column="course_id"/>
56
            <one-to-many class="pt.estgp.estgweb.domain.CourseUserAssociation"/>
1780 jmachado 57
        </set>-->
343 jmachado 58
        <set name="courseUnits" order-by="name asc" lazy="true">
180 jmachado 59
            <key column="course"/>
60
            <one-to-many class="pt.estgp.estgweb.domain.CourseUnit"/>
61
        </set>
1312 jmachado 62
        <set name="courseYears" order-by="importYear asc" lazy="true">
63
            <key column="course_id"/>
64
            <one-to-many class="pt.estgp.estgweb.domain.CourseYear"/>
65
        </set>
1 fvelez 66
        <subclass name="pt.estgp.estgweb.domain.CourseImpl" discriminator-value="CourseImpl"/>
67
    </class>
1312 jmachado 68
 
69
    <class name="pt.estgp.estgweb.domain.CourseYear" table="course_year" abstract="true">
70
        <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>
71
        <meta attribute="scope-class">public abstract</meta>
72
        <id name="id" type="long">
73
            <generator class="native"/>
74
        </id>
75
        <discriminator column="discrimitator"/>
1549 jmachado 76
        <timestamp source="db"   name="updateDate" unsaved-value="null"/>
1312 jmachado 77
        <property name="saveDate" type="timestamp"/>
78
        <property name="importYear" type="string" index="importYearIndex"/>
79
        <property name="separatedTurmas" type="boolean">
80
            <column name="separatedTurmas" default="false"/>
81
        </property>
1916 grupo1 82
        <property name="courseReportDocument" type="text">
83
            <column name="courseReportDocument" sql-type="LONGTEXT"/>
84
        </property>
1312 jmachado 85
        <many-to-one name="course" class="pt.estgp.estgweb.domain.Course" outer-join="true" lazy="false" column="course_id"/>
86
        <subclass name="pt.estgp.estgweb.domain.CourseYearImpl" discriminator-value="CourseYearImpl"/>
87
    </class>
88
 
1496 jmachado 89
    <class name="pt.estgp.estgweb.domain.CourseStudiesPlan" table="course_studies_plan" abstract="true">
90
        <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>
91
        <meta attribute="scope-class">public abstract</meta>
92
        <id name="id" type="long">
93
            <generator class="native"/>
94
        </id>
95
        <discriminator column="discrimitator"/>
1549 jmachado 96
        <timestamp source="db"   name="updateDate" unsaved-value="null"/>
1496 jmachado 97
        <property name="saveDate" type="timestamp"/>
98
        <property name="version" type="int"/>
99
        <property name="versionDescription" type="string"/>
1535 jmachado 100
        <property name="importLog" type="text">
101
            <column name="importLog" sql-type="MEDIUMTEXT"/>
102
        </property>
1496 jmachado 103
        <property name="xml" type="text">
104
            <column name="xml" sql-type="MEDIUMTEXT"/>
105
        </property>
106
        <property name="json" type="text">
107
            <column name="json" sql-type="MEDIUMTEXT"/>
108
        </property>
109
        <many-to-one name="course" class="pt.estgp.estgweb.domain.Course" outer-join="true" lazy="false" column="course_id"/>
110
        <subclass name="pt.estgp.estgweb.domain.CourseStudiesPlanImpl" discriminator-value="CourseYearImpl"/>
111
    </class>
1312 jmachado 112
 
1505 jmachado 113
    <class name="pt.estgp.estgweb.domain.CourseDepartment" table="course_department" abstract="true">
114
        <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>
115
        <meta attribute="scope-class">public abstract</meta>
116
        <id name="sigla" type="string" length="20">
117
            <generator class="assigned"/>
118
        </id>
119
        <discriminator column="discrimitator"/>
1549 jmachado 120
        <timestamp source="db"   name="updateDate" unsaved-value="null"/>
1505 jmachado 121
        <property name="saveDate" type="timestamp"/>
1670 jmachado 122
        <!--Este deixa de existir procurar todos os sitios onde isto está
123
        podemos ainda reimplementar o método para ir buscar à escola-->
1692 jmachado 124
        <!--<property name="institutionalCode" type="string"/>-->
1505 jmachado 125
        <property name="active" type="boolean">
126
            <column name="active" default="true"/>
127
        </property>
128
        <property name="name" type="string"/>
129
        <property name="nameEn" type="string"/>
130
        <property name="nameEs" type="string"/>
131
        <property name="nameFr" type="string"/>
1626 jmachado 132
        <property name="directorRole" type="string"/>
133
        <property name="boardRole" type="string"/>
1554 jmachado 134
        <!--Todo colocar aqui o director e vice director de departamento Remover do Curso ou no proprio curso afeta aqui-->
1670 jmachado 135
        <many-to-one name="courseSchool" class="pt.estgp.estgweb.domain.CourseSchoolImpl" outer-join="true" lazy="false" column="school_id"/>
136
 
137
        <set name="teachers" order-by="name asc" lazy="true">
138
            <key column="departmentSigla"/>
139
            <one-to-many class="pt.estgp.estgweb.domain.TeacherImpl"/>
140
        </set>
1505 jmachado 141
        <subclass name="pt.estgp.estgweb.domain.CourseDepartmentImpl" discriminator-value="CourseDepartmentImpl"/>
142
    </class>
1496 jmachado 143
 
1505 jmachado 144
 
1670 jmachado 145
    <class name="pt.estgp.estgweb.domain.CourseSchool" table="course_school" abstract="true">
146
        <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta>
147
        <meta attribute="scope-class">public abstract</meta>
148
        <id name="id" type="long">
149
            <generator class="native"/>
150
        </id>
151
        <discriminator column="discrimitator"/>
152
        <timestamp source="db"   name="updateDate" unsaved-value="null"/>
153
        <property name="saveDate" type="timestamp"/>
1696 jmachado 154
        <property name="institutionalCode" type="string"/>
1730 jmachado 155
        <property name="initials" type="string"/>
1670 jmachado 156
        <property name="active" type="boolean">
157
            <column name="active" default="true"/>
158
        </property>
159
        <property name="name" type="string"/>
160
        <property name="nameEn" type="string"/>
161
        <property name="nameEs" type="string"/>
162
        <property name="nameFr" type="string"/>
163
 
164
        <property name="schoolDirectorRole" type="string"/>
165
        <property name="schoolBoardRole" type="string"/>
166
        <property name="schoolSecretariadoRole" type="string"/>
167
 
168
        <property name="ctcPresidentRole" type="string"/>
169
        <property name="ctcMemberRole" type="string"/>
170
        <property name="ctcSecretariadoRole" type="string"/>
171
 
172
        <property name="pedagogicoPresidentRole" type="string"/>
173
        <property name="pedagogicoMemberRole" type="string"/>
174
        <property name="pedagogicoSecretariadoRole" type="string"/>
175
 
1728 jmachado 176
        <property name="funcionarioRole" type="string"/>
177
        <property name="studentRole" type="string"/>
178
        <property name="teacherRole" type="string"/>
179
 
1670 jmachado 180
        <set name="departments" order-by="name asc" lazy="true">
181
            <key column="school_id"/>
182
            <one-to-many class="pt.estgp.estgweb.domain.CourseDepartmentImpl"/>
183
        </set>
184
        <subclass name="pt.estgp.estgweb.domain.CourseSchoolImpl" discriminator-value="CourseSchoolImpl"/>
185
    </class>
186
 
187
 
1 fvelez 188
</hibernate-mapping>