-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Welcome to the wagio wiki!
Human Resource Management System
Requirements:
- open-jdk 8
- eclipse Neon: Eclipse IDE for Java Developers with Maven(http://www.eclipse.org/downloads/eclipse-packages/)
- install STS in eclipse Marketplace (Help -> Marketplace)
HowTo Create Database:
cat database/create_database.sql | mysql -u root -p
HowTo Configure Database in the project:
edit application.properties:
spring.datasource.url=jdbc:mysql://localhost:3306/organization
spring.datasource.username=root
spring.datasource.password=pass
HowTo Run:
right-click on MyApplication.java -> Run As -> Spring Boot App
Login:
username: some email from the database
password: all passwords are 'password', BCrypt encrupted in the database
REST API:
- GET http://localhost:8080/login
- GET http://localhost:8080/login?logout
- GET http://localhost:8080/user/members (only users with Role ADMIN can access it)
- GET http://localhost:8080/user/member/ID (users with Role ADMIN for all and Role USER with the same ID)
BACKLOG:
- GET http://localhost:8080/user/members/ID (show one level down, Role ADMIN for all and Role MANAGER for his direct team)
- GET http://localhost:8080/user/salary/ID/YYYY/MM (Role ADMIN for all, Role MANAGER for the team, Role USER for himself)
- GET http://localhost:8080/user/report/ID/YYYY/MM (Role ADMIN for all, Role MANAGER for the team, Role USER for himself)
- POST, PUT, DELETE for all mount paths
Links:
Spring Boot with MySQL: http://www.concretepage.com/spring-boot/spring-boot-rest-jpa-hibernate-mysql-example
HasRole example: http://www.baeldung.com/spring-security-expressions-basic
Get User in spring security: http://www.baeldung.com/get-user-in-spring-security
Registration with Spring Security plus complete guide about Captcha, etc: http://www.baeldung.com/spring-security-registration-password-encoding-bcrypt (http://www.programming-free.com/2015/09/spring-security-jdbc-authentication.html, http://www.programming-free.com/2015/09/spring-security-password-encryption.html)