Rev 1554 | Rev 1692 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1554 | Rev 1626 | ||
---|---|---|---|
1 | <?xml version="1.0"?> |
1 | <?xml version="1.0"?> |
2 | <!DOCTYPE hibernate-mapping |
2 | <!DOCTYPE hibernate-mapping |
3 | PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" |
3 | PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" |
4 | "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> |
4 | "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> |
5 | 5 | ||
6 | <hibernate-mapping> |
6 | <hibernate-mapping> |
7 | <class name="pt.estgp.estgweb.domain.Course" table="course" abstract="true"> |
7 | <class name="pt.estgp.estgweb.domain.Course" table="course" abstract="true"> |
8 | <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta> |
8 | <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta> |
9 | <meta attribute="scope-class">public abstract</meta> |
9 | <meta attribute="scope-class">public abstract</meta> |
10 | <id name="id" type="long"> |
10 | <id name="id" type="long"> |
11 | <generator class="native"/> |
11 | <generator class="native"/> |
12 | </id> |
12 | </id> |
13 | <discriminator column="discrimitator"/> |
13 | <discriminator column="discrimitator"/> |
14 | <timestamp source="db" name="updateDate" unsaved-value="null"/> |
14 | <timestamp source="db" name="updateDate" unsaved-value="null"/> |
15 | <property name="saveDate" type="timestamp"/> |
15 | <property name="saveDate" type="timestamp"/> |
16 | <property name="name" type="string"/> |
16 | <property name="name" type="string"/> |
17 | <property name="nameEn" type="string"/> |
17 | <property name="nameEn" type="string"/> |
18 | <property name="nameEs" type="string"/> |
18 | <property name="nameEs" type="string"/> |
19 | <property name="nameFr" type="string"/> |
19 | <property name="nameFr" type="string"/> |
20 | <property name="description" type="text"/> |
20 | <property name="description" type="text"/> |
21 | <property name="code" type="string"/> |
21 | <property name="code" type="string"/> |
22 | <property name="importYear" type="string" index="importYearIndex"/> |
22 | <property name="importYear" type="string" index="importYearIndex"/> |
23 | <property name="institutionalCode" type="string"/> |
23 | <property name="institutionalCode" type="string"/> |
24 | <property name="externalSiteServer" type="string"/> |
24 | <property name="externalSiteServer" type="string"/> |
25 | <property name="externalSitePath" type="string"/> |
25 | <property name="externalSitePath" type="string"/> |
26 | <property name="degree" type="string" index="degreeIndex"/> |
26 | <property name="degree" type="string" index="degreeIndex"/> |
27 | <property name="status" type="boolean"/> |
27 | <property name="status" type="boolean"/> |
28 | <property name="showStudiesPlan" type="boolean"> |
28 | <property name="showStudiesPlan" type="boolean"> |
29 | <column name="showStudiesPlan" default="false"/> |
29 | <column name="showStudiesPlan" default="false"/> |
30 | </property> |
30 | </property> |
31 | <property name="cacheWebDocument" type="text"> |
31 | <property name="cacheWebDocument" type="text"> |
32 | <column name="cacheWebDocument" sql-type="MEDIUMTEXT"/> |
32 | <column name="cacheWebDocument" sql-type="MEDIUMTEXT"/> |
33 | </property> |
33 | </property> |
34 | <!--legacy--> |
34 | <!--legacy--> |
35 | <property name="studiesPlan" type="string" index="studiesPlanIndex"/> |
35 | <property name="studiesPlan" type="string" index="studiesPlanIndex"/> |
36 | <property name="validationRole" type="string" index="validationRoleIndex"/> |
36 | <property name="validationRole" type="string" index="validationRoleIndex"/> |
37 | <property name="area" type="string" index="areaIndex" insert="false" update="false"/> |
37 | <property name="area" type="string" index="areaIndex" insert="false" update="false"/> |
38 | <property name="userGroupStudents" type="string"/> |
38 | <property name="userGroupStudents" type="string"/> |
39 | <property name="json" type="text"> |
39 | <property name="json" type="text"> |
40 | <column name="json" sql-type="MEDIUMTEXT"/> |
40 | <column name="json" sql-type="MEDIUMTEXT"/> |
41 | </property> |
41 | </property> |
42 | <many-to-one name="department" class="pt.estgp.estgweb.domain.CourseDepartment" outer-join="true" lazy="false"> |
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"/> |
43 | <column name="area" length="20" sql-type="VARCHAR"/> |
44 | </many-to-one> |
44 | </many-to-one> |
45 | <many-to-one name="courseContents" class="pt.estgp.estgweb.domain.PageSection" lazy="proxy" outer-join="false"> |
45 | <many-to-one name="courseContents" class="pt.estgp.estgweb.domain.PageSection" lazy="proxy" outer-join="false"> |
46 | <column name="courseContents"/> |
46 | <column name="courseContents"/> |
47 | </many-to-one> |
47 | </many-to-one> |
48 | <many-to-one name="director" class="pt.estgp.estgweb.domain.Teacher" outer-join="false" lazy="proxy"/> |
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"/> |
49 | <many-to-one name="coordinator" class="pt.estgp.estgweb.domain.Teacher" outer-join="false" lazy="proxy"/> |
50 | <set name="studiesPlans" order-by="id desc" lazy="true"> |
50 | <set name="studiesPlans" order-by="id desc" lazy="true"> |
51 | <key column="course_id"/> |
51 | <key column="course_id"/> |
52 | <one-to-many class="pt.estgp.estgweb.domain.CourseStudiesPlan"/> |
52 | <one-to-many class="pt.estgp.estgweb.domain.CourseStudiesPlan"/> |
53 | </set> |
53 | </set> |
54 | <set name="users" order-by="user.name asc" lazy="true"> |
54 | <set name="users" order-by="user.name asc" lazy="true"> |
55 | <key column="course_id"/> |
55 | <key column="course_id"/> |
56 | <one-to-many class="pt.estgp.estgweb.domain.CourseUserAssociation"/> |
56 | <one-to-many class="pt.estgp.estgweb.domain.CourseUserAssociation"/> |
57 | </set> |
57 | </set> |
58 | <set name="courseUnits" order-by="name asc" lazy="true"> |
58 | <set name="courseUnits" order-by="name asc" lazy="true"> |
59 | <key column="course"/> |
59 | <key column="course"/> |
60 | <one-to-many class="pt.estgp.estgweb.domain.CourseUnit"/> |
60 | <one-to-many class="pt.estgp.estgweb.domain.CourseUnit"/> |
61 | </set> |
61 | </set> |
62 | <set name="courseYears" order-by="importYear asc" lazy="true"> |
62 | <set name="courseYears" order-by="importYear asc" lazy="true"> |
63 | <key column="course_id"/> |
63 | <key column="course_id"/> |
64 | <one-to-many class="pt.estgp.estgweb.domain.CourseYear"/> |
64 | <one-to-many class="pt.estgp.estgweb.domain.CourseYear"/> |
65 | </set> |
65 | </set> |
66 | <subclass name="pt.estgp.estgweb.domain.CourseImpl" discriminator-value="CourseImpl"/> |
66 | <subclass name="pt.estgp.estgweb.domain.CourseImpl" discriminator-value="CourseImpl"/> |
67 | </class> |
67 | </class> |
68 | 68 | ||
69 | <class name="pt.estgp.estgweb.domain.CourseYear" table="course_year" abstract="true"> |
69 | <class name="pt.estgp.estgweb.domain.CourseYear" table="course_year" abstract="true"> |
70 | <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta> |
70 | <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta> |
71 | <meta attribute="scope-class">public abstract</meta> |
71 | <meta attribute="scope-class">public abstract</meta> |
72 | <id name="id" type="long"> |
72 | <id name="id" type="long"> |
73 | <generator class="native"/> |
73 | <generator class="native"/> |
74 | </id> |
74 | </id> |
75 | <discriminator column="discrimitator"/> |
75 | <discriminator column="discrimitator"/> |
76 | <timestamp source="db" name="updateDate" unsaved-value="null"/> |
76 | <timestamp source="db" name="updateDate" unsaved-value="null"/> |
77 | <property name="saveDate" type="timestamp"/> |
77 | <property name="saveDate" type="timestamp"/> |
78 | <property name="importYear" type="string" index="importYearIndex"/> |
78 | <property name="importYear" type="string" index="importYearIndex"/> |
79 | <property name="separatedTurmas" type="boolean"> |
79 | <property name="separatedTurmas" type="boolean"> |
80 | <column name="separatedTurmas" default="false"/> |
80 | <column name="separatedTurmas" default="false"/> |
81 | </property> |
81 | </property> |
82 | <many-to-one name="course" class="pt.estgp.estgweb.domain.Course" outer-join="true" lazy="false" column="course_id"/> |
82 | <many-to-one name="course" class="pt.estgp.estgweb.domain.Course" outer-join="true" lazy="false" column="course_id"/> |
83 | <subclass name="pt.estgp.estgweb.domain.CourseYearImpl" discriminator-value="CourseYearImpl"/> |
83 | <subclass name="pt.estgp.estgweb.domain.CourseYearImpl" discriminator-value="CourseYearImpl"/> |
84 | </class> |
84 | </class> |
85 | 85 | ||
86 | <class name="pt.estgp.estgweb.domain.CourseStudiesPlan" table="course_studies_plan" abstract="true"> |
86 | <class name="pt.estgp.estgweb.domain.CourseStudiesPlan" table="course_studies_plan" abstract="true"> |
87 | <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta> |
87 | <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta> |
88 | <meta attribute="scope-class">public abstract</meta> |
88 | <meta attribute="scope-class">public abstract</meta> |
89 | <id name="id" type="long"> |
89 | <id name="id" type="long"> |
90 | <generator class="native"/> |
90 | <generator class="native"/> |
91 | </id> |
91 | </id> |
92 | <discriminator column="discrimitator"/> |
92 | <discriminator column="discrimitator"/> |
93 | <timestamp source="db" name="updateDate" unsaved-value="null"/> |
93 | <timestamp source="db" name="updateDate" unsaved-value="null"/> |
94 | <property name="saveDate" type="timestamp"/> |
94 | <property name="saveDate" type="timestamp"/> |
95 | <property name="version" type="int"/> |
95 | <property name="version" type="int"/> |
96 | <property name="versionDescription" type="string"/> |
96 | <property name="versionDescription" type="string"/> |
97 | <property name="importLog" type="text"> |
97 | <property name="importLog" type="text"> |
98 | <column name="importLog" sql-type="MEDIUMTEXT"/> |
98 | <column name="importLog" sql-type="MEDIUMTEXT"/> |
99 | </property> |
99 | </property> |
100 | <property name="xml" type="text"> |
100 | <property name="xml" type="text"> |
101 | <column name="xml" sql-type="MEDIUMTEXT"/> |
101 | <column name="xml" sql-type="MEDIUMTEXT"/> |
102 | </property> |
102 | </property> |
103 | <property name="json" type="text"> |
103 | <property name="json" type="text"> |
104 | <column name="json" sql-type="MEDIUMTEXT"/> |
104 | <column name="json" sql-type="MEDIUMTEXT"/> |
105 | </property> |
105 | </property> |
106 | <many-to-one name="course" class="pt.estgp.estgweb.domain.Course" outer-join="true" lazy="false" column="course_id"/> |
106 | <many-to-one name="course" class="pt.estgp.estgweb.domain.Course" outer-join="true" lazy="false" column="course_id"/> |
107 | <subclass name="pt.estgp.estgweb.domain.CourseStudiesPlanImpl" discriminator-value="CourseYearImpl"/> |
107 | <subclass name="pt.estgp.estgweb.domain.CourseStudiesPlanImpl" discriminator-value="CourseYearImpl"/> |
108 | </class> |
108 | </class> |
109 | 109 | ||
110 | <class name="pt.estgp.estgweb.domain.CourseDepartment" table="course_department" abstract="true"> |
110 | <class name="pt.estgp.estgweb.domain.CourseDepartment" table="course_department" abstract="true"> |
111 | <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta> |
111 | <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta> |
112 | <meta attribute="scope-class">public abstract</meta> |
112 | <meta attribute="scope-class">public abstract</meta> |
113 | <id name="sigla" type="string" length="20"> |
113 | <id name="sigla" type="string" length="20"> |
114 | <generator class="assigned"/> |
114 | <generator class="assigned"/> |
115 | </id> |
115 | </id> |
116 | <discriminator column="discrimitator"/> |
116 | <discriminator column="discrimitator"/> |
117 | <timestamp source="db" name="updateDate" unsaved-value="null"/> |
117 | <timestamp source="db" name="updateDate" unsaved-value="null"/> |
118 | <property name="saveDate" type="timestamp"/> |
118 | <property name="saveDate" type="timestamp"/> |
119 | <property name="institutionalCode" type="string"/> |
119 | <property name="institutionalCode" type="string"/> |
120 | <property name="active" type="boolean"> |
120 | <property name="active" type="boolean"> |
121 | <column name="active" default="true"/> |
121 | <column name="active" default="true"/> |
122 | </property> |
122 | </property> |
123 | <property name="name" type="string"/> |
123 | <property name="name" type="string"/> |
124 | <property name="nameEn" type="string"/> |
124 | <property name="nameEn" type="string"/> |
125 | <property name="nameEs" type="string"/> |
125 | <property name="nameEs" type="string"/> |
126 | <property name="nameFr" type="string"/> |
126 | <property name="nameFr" type="string"/> |
- | 127 | <property name="directorRole" type="string"/> |
|
- | 128 | <property name="boardRole" type="string"/> |
|
127 | <!--Todo colocar aqui o director e vice director de departamento Remover do Curso ou no proprio curso afeta aqui--> |
129 | <!--Todo colocar aqui o director e vice director de departamento Remover do Curso ou no proprio curso afeta aqui--> |
128 | <subclass name="pt.estgp.estgweb.domain.CourseDepartmentImpl" discriminator-value="CourseDepartmentImpl"/> |
130 | <subclass name="pt.estgp.estgweb.domain.CourseDepartmentImpl" discriminator-value="CourseDepartmentImpl"/> |
129 | </class> |
131 | </class> |
130 | 132 | ||
131 | 133 | ||
132 | </hibernate-mapping> |
134 | </hibernate-mapping> |