--- /dev/null
+<?xml version="1.0"?>
+<!DOCTYPE service-builder PUBLIC "-//Liferay//DTD Service Builder 5.2.0//EN" "http://www.liferay.com/dtd/liferay-service-builder_5_2_0.dtd">
+
+<service-builder package-path="com.pentila.entSavoie.cdt">
+ <author>Cedric Lecarpentier</author>
+ <namespace>CDT</namespace>
+
+ <entity name="CDTSession" local-service="true" remote-service="false">
+
+ <column name="sessionId" type="long" primary="true" />
+ <column name="sessionStart" type="Date" />
+ <column name="sessionEnd" type="Date" />
+ <column name="weekId" type="long" />
+ <column name="publish" type="boolean" />
+ <column name="title" type="String" />
+ <column name="description" type="String" />
+ <column name="room" type="String" />
+ <column name="type" type="int" />
+ <column name="subjectId" type="long" />
+ <column name="schoolId" type="long" />
+ <column name="groupId" type="long" />
+ <column name="cancelled" type="boolean" />
+ <column name="previousSession" type="long" />
+ <column name="nextSession" type="long" />
+ <column name="sessionGroupId" type="long" />
+ <column name="isManual" type="boolean" />
+ <column name="hasAttachFile" type="boolean" />
+ <column name="visa" type="long" />
+ <column name="deleted" type="boolean" />
+ <column name="deletedBy" type="long" />
+ <column name="deleteDate" type="Date" />
+ <column name="parentClassName" type="String" /> <!-- Only used in subClass mode (ie groupId==0) -->
+
+ <!-- Get all CDTSessions for a given group, a given week and a given type (for DS) -->
+ <finder return-type="Collection" name="groupId_weekId_type">
+ <finder-column name="groupId" />
+ <finder-column name="weekId" />
+ <finder-column name="type" />
+ <finder-column name="deleted" />
+ </finder>
+
+ <!-- Get all CDTSessions from sessionGroupId-->
+ <finder return-type="Collection" name="SessionGroupId">
+ <finder-column name="sessionGroupId" />
+ <finder-column name="deleted" />
+ </finder>
+
+ <!-- Get all subClass CDTSessions for given school -->
+ <finder return-type="Collection" name="groupId_schoolId">
+ <finder-column name="groupId" />
+ <finder-column name="schoolId" />
+ </finder>
+ </entity>
+
+ <!-- Manage which teacher operates for a given session -->
+ <entity name="Visa" local-service="true" remote-service="false">
+ <column name="visaId" type="long" primary="true"/>
+ <column name="teacherId" type="long" />
+ <column name="schoolId" type="long" />
+ <column name="fromDate" type="Date" />
+ <column name="toDate" type="Date" />
+ <column name="creatorId" type="long"></column>
+ <column name="creationDate" type="Date"></column>
+
+ <!-- Teacher view : get all sessions related to a teacher -->
+ <finder return-type="Collection" name="teacherId">
+ <finder-column name="teacherId" />
+ </finder>
+ <!-- Get teacher from session id-->
+ <finder return-type="Collection" name="schoolId">
+ <finder-column name="schoolId" />
+ </finder>
+ </entity>
+
+ <!-- Manage which teacher operates for a given session -->
+ <entity name="SessionTeacher" local-service="true" remote-service="false">
+ <column name="sessionTeacherId" type="long" primary="true"/>
+ <column name="sessionId" type="long" />
+ <column name="teacherId" type="long" />
+
+ <!-- Teacher view : get all sessions related to a teacher -->
+ <finder return-type="Collection" name="teacherId">
+ <finder-column name="teacherId" />
+ </finder>
+ <!-- GEt teacher from session id-->
+ <finder return-type="Collection" name="sessionId">
+ <finder-column name="sessionId" />
+ </finder>
+
+ </entity>
+
+ <!-- Manage which student has a given session (subClass sessions) -->
+ <entity name="SessionStudent" local-service="true" remote-service="false">
+ <column name="sessionStudentId" type="long" primary="true"/>
+ <column name="sessionId" type="long" />
+ <column name="studentId" type="long" />
+
+ <finder return-type="Collection" name="sessionId">
+ <finder-column name="sessionId" />
+ </finder>
+ <finder return-type="Collection" name="studentId">
+ <finder-column name="studentId" />
+ </finder>
+ <finder return-type="Collection" name="sessionId_studentId">
+ <finder-column name="sessionId" />
+ <finder-column name="studentId" />
+ </finder>
+
+ </entity>
+
+
+ <!-- Manage homeworks -->
+ <entity name="Homework" local-service="true" remote-service="false">
+
+ <column name="homeworkId" type="long" primary="true"/>
+ <column name="type" type="long"/>
+ <column name="sourceSessionId" type="long" />
+ <column name="targetSessionId" type="long" />
+ <column name="targetWeekId" type="int" />
+ <column name="targetDate" type="Date" />
+ <column name="groupId" type="long" />
+ <column name="teacherId" type="long" />
+ <column name="description" type="String" />
+ <column name="estimatedTime" type="long" />
+ <column name="fromDate" type="Date" />
+ <column name="hasAttachFile" type="boolean" />
+ <column name="isToBeSent" type="boolean" />
+ <column name="isCustomStudentList" type="boolean" />
+
+ <!-- Teacher view : get homeworks given for a given session -->
+ <finder return-type="Collection" name="targetSessionId">
+ <finder-column name="targetSessionId" />
+ </finder>
+
+ <!-- Teacher view : get homeworks given during a given session -->
+ <finder return-type="Collection" name="sourceSessionId">
+ <finder-column name="sourceSessionId" />
+ </finder>
+
+ <!-- Calendar panel : get 'free date' homeworks given for a given week -->
+ <finder return-type="Collection" name="targetWeekId">
+ <finder-column name="targetWeekId" />
+ </finder>
+
+ </entity>
+
+ <!-- Manage user-specific homeworks -->
+ <entity name="StudentHomework" local-service="true" remote-service="false">
+ <column name="studentHomeworkId" type="long" primary="true"/>
+ <column name="homeworkId" type="long"/>
+ <column name="studentId" type="long"/>
+
+ <finder return-type="Collection" name="homeworkId">
+ <finder-column name="homeworkId" />
+ </finder>
+ <finder return-type="Collection" name="studentId">
+ <finder-column name="studentId" />
+ </finder>
+ <finder return-type="Collection" name="studentId_homeworkId">
+ <finder-column name="studentId" />
+ <finder-column name="homeworkId" />
+ </finder>
+ </entity>
+
+ <!-- Store the folder in dropbox for teacher. These folder are used for student homework returns -->
+ <entity name="HomeworkDropboxFolder" local-service="true" remote-service="false">
+ <column name="homeworkDropboxFolderId" type="long" primary="true"/>
+ <column name="homeworkId" type="long"/>
+ <column name="teacherId" type="long"/>
+ <column name="folderId" type="long"/>
+
+ <finder return-type="Collection" name="HomeworkId">
+ <finder-column name="homeworkId" />
+ </finder>
+ </entity>
+
+ <!-- Manage homework achievement by students -->
+ <entity name="HomeworkDone" local-service="true" remote-service="false">
+
+ <column name="homeworkDoneId" type="long" primary="true"/>
+ <column name="homeworkId" type="long" />
+ <column name="groupId" type="long" />
+ <column name="studentId" type="long" />
+ <column name="isDone" type="boolean" />
+ <column name="isSent" type="boolean" />
+ <column name="sentFileId" type="long" />
+
+ <!-- Teacher view : get students having done the homework -->
+ <finder return-type="Collection" name="homeworkId_done">
+ <finder-column name="homeworkId" />
+ <finder-column name="isDone" />
+ </finder>
+
+ <!-- Teacher view : get students having sent the homework -->
+ <finder return-type="Collection" name="homeworkId_sent">
+ <finder-column name="homeworkId" />
+ <finder-column name="isSent" />
+ </finder>
+
+ <finder return-type="Collection" name="HomeworkIdStudentId">
+ <finder-column name="homeworkId" />
+ <finder-column name="studentId" />
+ </finder>
+
+ <finder return-type="Collection" name="homeworkId">
+ <finder-column name="homeworkId" />
+ </finder>
+ </entity>
+
+ <!-- Manage subjects -->
+ <entity name="Subject" local-service="true" remote-service="false">
+
+ <column name="subjectId" type="long" primary="true"/>
+ <column name="family" type="String" />
+ <column name="numCode" type="String" />
+ <column name="strCode" type="String" />
+ <column name="shortLabel" type="String" />
+ <column name="longLabel" type="String" />
+
+ <!-- Get all subjects for a given code -->
+ <finder return-type="Collection" name="strCode">
+ <finder-column name="strCode" />
+ </finder>
+
+ <!-- Get all subjects for a given "longLabel" -->
+ <finder return-type="Collection" name="longLabel">
+ <finder-column name="longLabel" />
+ </finder>
+
+ </entity>
+
+ <!-- Manage subjects -->
+ <entity name="SchoolSubject" local-service="true" remote-service="false">
+
+ <column name="schoolSubjectId" type="long" primary="true"/>
+ <column name="schoolId" type="long"/>
+ <column name="subjectId" type="long"/>
+ <column name="color" type="String" />
+
+ <!-- Get all schoolSubjects for a given schoolId -->
+ <finder return-type="Collection" name="schoolId">
+ <finder-column name="schoolId" />
+ </finder>
+
+ <!-- Get all schoolSubjects for a given schoolId and subjectId -->
+ <finder return-type="Collection" name="schoolId_subjectId">
+ <finder-column name="schoolId" />
+ <finder-column name="subjectId" />
+ </finder>
+
+ </entity>
+
+
+ <!-- Manage colors for teachers and classes -->
+ <entity name="TeacherGroupColor" local-service="true" remote-service="false">
+
+ <column name="teacherGroupColorId" type="long" primary="true"/>
+ <column name="teacherId" type="long"/>
+ <column name="groupId" type="long"/>
+ <column name="color" type="String" />
+
+ <!-- Get all schoolSubjects for a given schoolId -->
+ <finder return-type="Collection" name="teacherId">
+ <finder-column name="teacherId" />
+ </finder>
+
+ <!-- Get all schoolSubjects for a given schoolId and subjectId -->
+ <finder return-type="Collection" name="teacherId_groupId">
+ <finder-column name="teacherId" />
+ <finder-column name="groupId" />
+ </finder>
+
+ </entity>
+
+
+ <!-- Weekly schedule -->
+ <entity name="WeeklySchedule" local-service="true" remote-service="false">
+
+ <column name="schoolId" type="long" primary="true" />
+ <column name="dayId" type="int" primary="true" />
+
+ <!-- Get opening days for a given school -->
+ <finder return-type="Collection" name="schoolId">
+ <finder-column name="schoolId" />
+ </finder>
+
+ </entity>
+
+ <!-- Daily schedule -->
+ <entity name="DailySchedule" local-service="true" remote-service="false">
+
+ <column name="schoolId" type="long" primary="true" />
+ <column name="sessionId" type="int" primary="true" />
+ <column name="sessionStartHour" type="String" />
+ <column name="sessionEndHour" type="String" />
+
+ <!-- Get session hours for a given school -->
+ <finder return-type="Collection" name="schoolId">
+ <finder-column name="schoolId" />
+ </finder>
+
+ </entity>
+
+ <!-- Global schedule -->
+ <entity name="Configuration" local-service="true" remote-service="false">
+
+ <column name="confId" type="long" primary="true" />
+ <column name="schoolId" type="long"/>
+ <column name="startDayTime" type="String" />
+ <column name="endDayTime" type="String" />
+ <column name="startSessionsDate" type="Date" />
+ <column name="endSessionsDate" type="Date" />
+ <!-- Get hours and endDate for a given school -->
+
+ <finder return-type="Collection" name="schoolId">
+ <finder-column name="schoolId" />
+ </finder>
+
+ </entity>
+
+
+</service-builder>
\ No newline at end of file