Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Meeting scheduling xslx file io (#394)
* Create MeetingSchedulingXslxFileIO and write part of Configuration tab * Finished writing Configuration view and testing it manually (opened created file and inspected it) * Finished and tested Persons and Meetings tabs * Implement writeDays and test it * Implemented writeRooms and tested it * Implement writeRoomsView * Refactor MeetingSchedulingXlsxFileIO to extend AbstractXlsxSolutionFileIO * Implement read: Configuration, personsList and meetingsList * Implemented reader and writer methods, Generator generates the xlsx files * Add id's when initializeingdomain classes in MeetingSchedulingXlsxReader * Fix writing TimeGrainsHours bug in writeRooms * Fix writeRoomsView so that a meeting spans multiple columns * Fix writePersonsView so that a meeting spans multiple columns * Add speakerList and Topic fields to class Meeting * Improve filling the meetings and enforce attendees constraints * remove days and timegrains headers from sheet Rooms * Add 'Start and end on same day' rule to configuration sheet * Add room stability and breaks between meetings ruls * Fix Xslx typo to Xlsx * Convert XML datasets into XLSX * Refactor readMeetingList, add mediumScoreColor and improve readability * Change xml to Xlsx in test files and fix build error * Write date at which the solution is produced in configuration sheet * Add speaker to meeting's requiredAttendanceList * Replace writeConstraintLine with writeIntConstraintLine from parent class * Add a rule to minimize number of overlapping meetings * Add a rule to prioritize bigger rooms first * Add printedFormView and rename Add larger rooms first -> assign larger rooms first * Improve Printed form view sheet * Add an entireGroupMeeting field to Meeting and add a hard constraint if such meeting is not scheduled * Write Gropu column to Meetings sheet and make Room Stability a soft constraint * Fix writing entireGroup meetings in Persons view. Fix writing configurations. Update examples to fix build error * Refactor and clean the code * Fix build error by adding nullPointerException check * Fix continuation indentation to 8 instead of 4 * Refactor constraint names as an enum * Parametrize weight of constraints and read it from a file * Optimize One TimeGrain break rule and add some tests * - Clean code and address reviews on GitHub. - Remove rules 'Don't go in overtime' (@ValueRangeProvider added) and 'Enter group meeting not schedule' (unnecessary). - Update the docs * Remve entireGroupMeeting test case * Refactor constraints weights into MeetingParametrization * Add back don't go in overtime rule and regenerate examples.\n - Use MeetingParametrization in MeetingSchedulingGenerator * Fix documentation styles * Fix IndexOutOfBound bug in writing printedFormView when a meeting is scheduled overtime * Add parametrization field to unit test * Add ProblemFactProperty to MeetingParametrization field * Fix order of MeetingSchedule fields
- Loading branch information