diff --git a/NFCServer.iml b/NFCServer.iml index a17aed6..b8be68a 100644 --- a/NFCServer.iml +++ b/NFCServer.iml @@ -1,14 +1,31 @@ - + + + + + file://$MODULE_DIR$/src/main/java/application/Config.java + file://$MODULE_DIR$/src/main/resources/Spring-Module.xml + + + + + + + + + + + + - + @@ -74,10 +91,6 @@ - - - - @@ -89,6 +102,10 @@ + + + + diff --git a/build.gradle b/build.gradle index 7cec1f0..6c96dff 100644 --- a/build.gradle +++ b/build.gradle @@ -40,6 +40,6 @@ dependencies { providedRuntime("javax.servlet:jstl") /*Potrzebne do mapowanie widokow jsp, u*/ - /*providedRuntime("org.springframework.boot:spring-boot-starter-tomcat") - providedRuntime("org.apache.tomcat.embed:tomcat-embed-jasper")*/ +// providedRuntime("org.springframework.boot:spring-boot-starter-tomcat") +// providedRuntime("org.apache.tomcat.embed:tomcat-embed-jasper") } \ No newline at end of file diff --git a/src/main/java/application/controllers/RoleController.java b/src/main/java/application/controllers/RoleController.java index 6124c4a..d182b97 100644 --- a/src/main/java/application/controllers/RoleController.java +++ b/src/main/java/application/controllers/RoleController.java @@ -28,6 +28,16 @@ public class RoleController { roleRepository.save(role); } + @RequestMapping(value = "/addSampleRoles") + @ResponseBody + public String addSampleRoles() { + roleRepository.save(new Role("CLEANER", "shityJob")); + roleRepository.save(new Role("BOSS", "fuckYea")); + roleRepository.save(new Role("SECURITY", "ochroniarzPatryk")); + + return "roles added"; + } + @RequestMapping("/{roleId}") @ResponseBody public String getRole(@PathVariable("roleId") Long roleId) throws JSONException{ @@ -49,7 +59,6 @@ public class RoleController { JSONArray roleArray = new JSONArray(); for (Role role : roleRepository.findAll()) { JSONObject roleJSON = new JSONObject(); - roleJSON.put("id", role.getRoleId()); roleJSON.put("role", role.getRoleName()); roleJSON.put("password", role.getPassword()); roleArray.put(roleJSON); @@ -57,6 +66,25 @@ public class RoleController { return roleArray.toString(); } + @RequestMapping("/getRoles") + public + @ResponseBody + String getRoles() throws JSONException { + JSONObject accessCodes = new JSONObject(); + accessCodes.put("success",true); + + JSONArray roleArray = new JSONArray(); + for (Role role : roleRepository.findAll()) { + JSONObject roleJSON = new JSONObject(); + roleJSON.put("role", role.getRoleName()); + roleJSON.put("password", role.getPassword()); + roleArray.put(roleJSON); + } + accessCodes.put("accessCodes", roleArray); + + return accessCodes.toString(); + } + @RequestMapping("/remove/{roleId}") public String removeRole(@PathVariable("roleId") Long roleId) { roleRepository.delete(roleId); diff --git a/src/main/java/application/controllers/UserController.java b/src/main/java/application/controllers/UserController.java index 1dcbdad..4eed374 100644 --- a/src/main/java/application/controllers/UserController.java +++ b/src/main/java/application/controllers/UserController.java @@ -1,5 +1,6 @@ package application.controllers; +import application.model.Message; import application.model.Role; import application.model.User; import application.repositories.RoleRepository; @@ -14,9 +15,8 @@ import org.springframework.web.bind.annotation.*; import javax.persistence.EntityManager; import javax.persistence.PersistenceContext; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Map; +import java.util.HashSet; +import java.util.Set; /** * Created by lukasgol on 21.04.14. @@ -60,14 +60,27 @@ public class UserController { //access codes JSONArray accessCodes = new JSONArray(); - // array of obejcts {role:role, code:code} + for(Role role : user.getRoles()){ + JSONObject returnedRole = new JSONObject(); + returnedRole.put("role", role.getRoleName()); + returnedRole.put("password", role.getPassword()); + accessCodes.put(returnedRole); + } //message - JSONObject message = new JSONObject(); - // {role:role, message:message} + JSONArray messages = new JSONArray(); + for( Message message : user.getMessages()){ + JSONObject returnedMessage = new JSONObject(); + returnedMessage.put("dateTime", message.getDateTime()); + returnedMessage.put("isRead", message.isRead()); + returnedMessage.put("message", message.getMessage()); + + messages.put(returnedMessage); + } loginResponse.put("accessCodes", accessCodes); - loginResponse.put("message", message); + loginResponse.put("messages", messages); + } if(login.equals(user.getEmail()) && !password.equals(user.getPassword())){ @@ -84,13 +97,21 @@ public class UserController { loginResponse.put("error_message", "NO_SUCH_USER"); } + System.out.println(loginResponse.toString()); return loginResponse.toString(); } @RequestMapping("/addMe") @ResponseBody public String addMe() { - User marcin = new User("Marcin", "Michalek", "marcin.marcim@gmail.com", "pass"); + User marcin = new User("Marcin", "Michalek", "m", "p"); + Set roles = new HashSet(); + roles.add(new Role("CLEANER", "shityJob")); + roles.add(new Role("BOSS", "fuckYea")); + marcin.setRoles(roles); + marcin.addMessage(new Message("hello")); + marcin.addMessage(new Message("You're fired")); + userRepository.save(marcin); return "User created" + marcin.getUserId(); @@ -129,7 +150,15 @@ public class UserController { roleJSON.put("password", r.getPassword()); roleArray.put(roleJSON); } - userJSON.put("roles", roleArray); + JSONArray messageArray = new JSONArray(); + for(Message m:user.getMessages()){ + JSONObject messJSON = new JSONObject(); + messJSON.put("dataTime", m.getDateTime()); + messJSON.put("message", m.getMessage()); + messJSON.put("isRead", m.isRead()); + messageArray.put(messJSON); + } + userJSON.put("messages", messageArray); userArray.put(userJSON); } return userArray.toString(); diff --git a/src/main/java/application/model/Message.java b/src/main/java/application/model/Message.java new file mode 100644 index 0000000..d61f5ee --- /dev/null +++ b/src/main/java/application/model/Message.java @@ -0,0 +1,59 @@ +package application.model; + +import javax.persistence.*; +import java.util.Date; + +/** + * Created by Marcin on 2014-05-09. + */ +@Entity (name = "messsage") +public class Message { + + @Id + @Column(name = "ID") + @GeneratedValue(strategy = GenerationType.AUTO) + private Long messageId; + + @Basic + public String dateTime; + + public Message() { + } + + @Basic + public boolean isRead; + @Basic + public String message; + + public Message(String message) { + this.message = message; + isRead=false; + dateTime=new Date().toString(); + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public String getDateTime() { + return dateTime; + } + + + public void setDateTime(String dateTime) { + this.dateTime = dateTime; + } + + public boolean isRead() { + return isRead; + } + + public void setRead(boolean read) { + this.isRead = read; + } + +} diff --git a/src/main/java/application/model/User.java b/src/main/java/application/model/User.java index e404c89..b5409d0 100644 --- a/src/main/java/application/model/User.java +++ b/src/main/java/application/model/User.java @@ -31,6 +31,9 @@ public class User { inverseJoinColumns = @JoinColumn( name="Role_ID")) private Set roles = new HashSet(0); + @OneToMany( cascade=CascadeType.ALL, fetch=FetchType.EAGER) + Set messages = new HashSet(0); + public User(String firstName, String lastName, String email, String password) { this.firstName = firstName; this.lastName = lastName; @@ -45,6 +48,10 @@ public class User { roles.add(role); } + public void addMessage(Message message){ + messages.add(message); + } + //getter and setter private Set getRole(){ return roles; @@ -97,6 +104,14 @@ public class User { public void setPassword(String password) { this.password = password; } + public Set getMessages() { + return messages; + } + + public void setMessages(Set messages) { + this.messages = messages; + } + //end }