Spring MVC Practice - Tuong-Nguyen/Spring GitHub Wiki
Description
- Build an web application that allows user register and enroll a course.
- A logged user can view his registered courses list and unenroll them only.
- Hard-coded admin account, only admin can add course info.
Models
User
- ID
- Username
- Password
- Birthday
- Gender
Course
- ID
- Title
- Description
- StartDate
- EndDate
- Pax
- IsActive
Enrollment
- ID
- User
- Course
- EnrollDate
- Status (None, Approved, Rejected)
Lesson
- ID
- Title
- Time
Pages
User
- Login
- Register
- View/update user's detail (Tao)
- View/unenroll user's courses (Tao)
- List/find/view/enroll a course
Admin
- List/find/add/update/delete course (Kim)
- Add/remove lessons to course (Kim)
- Approve/reject enrollment (Tao)
Validations
Login
- Username: required
- Password: required
Register
- Username
- Required
- Unique
- Can not be changed
- Min length: 5
- Max length: 25
- Password
- Required
- Min length: 8
- Max length: 25
- Must contain at least one lower case letter, one upper case letter, one digit and one of these special characters
~!@#$%^&*()_+
- Confirm Password
- Required
- Match
Password
- Email
- Required
- Valid email
- Birthday
- Required
- Valid date
- At least 13 years old
- Gender
- Required
Course
- Title
- Required
- Max length: 255
- Description
- Required
- StartDate
- Required
- Valid date
- EndDate
- Required
- Valid date
- Must be greater than StartDate
- Pax
- Required
- Min: 15
- Max: 100
- IsActive
- Default: false
- Lessons
- Required
- At least 3 lessons
Lesson
- Title
- Required
- Max length: 255
- Description
- Required
Enrollment
- (Course, User) must be unique, a user can not enroll a course more than 1 time
- Course
- Required
- User
- Required
- EnrollDate
- Required
- Valid date
- Must be earlier than Course's StartDate
- Status
- Default: None
Assignments
- Tao:
- Login
- Register
- Enrollment
- Update wiki for validation
- Kim:
Must read: https://github.com/Tuong-Nguyen/Spring/wiki/Spring-MVC-Validation
Deadline: end of day 15/05/2017
Wire frames
Register and Login

Course catalog
