75 lines
3 KiB
Java
75 lines
3 KiB
Java
package restService;
|
|
|
|
import database.user.User;
|
|
import org.springframework.http.HttpStatus;
|
|
import org.springframework.http.ResponseEntity;
|
|
import org.springframework.web.bind.annotation.*;
|
|
import restImplementation.DatabaseUserImplementation;
|
|
|
|
import javax.validation.Valid;
|
|
|
|
@RestController
|
|
@RequestMapping(value = "/api/rest/user")
|
|
public class DatabaseUserResource {
|
|
|
|
@PostMapping("/save")
|
|
@ResponseStatus(HttpStatus.CREATED)
|
|
public ResponseEntity<String> saveUser(@Valid @RequestBody User user){
|
|
try{
|
|
DatabaseUserImplementation databaseUserImplementation = new DatabaseUserImplementation();
|
|
boolean result = databaseUserImplementation.saveUser(user);
|
|
if(result){
|
|
return ResponseEntity.status(HttpStatus.OK).body("Ok");
|
|
}else {
|
|
return ResponseEntity.status(HttpStatus.FOUND).body("User already exist");
|
|
}
|
|
}catch (Exception e){
|
|
return ResponseEntity.status(HttpStatus.CONFLICT).body(e.getMessage());
|
|
}
|
|
}
|
|
|
|
@PostMapping("/login")
|
|
@ResponseStatus(HttpStatus.OK)
|
|
public ResponseEntity<String> login(@Valid @RequestBody User user){
|
|
try{
|
|
DatabaseUserImplementation databaseUserImplementation = new DatabaseUserImplementation();
|
|
String response = databaseUserImplementation.userLogger(user);
|
|
switch (response){
|
|
case "Not Exist" : return ResponseEntity.status(HttpStatus.NOT_FOUND).body("User not found");
|
|
case "Not Allowed" : return ResponseEntity.status(HttpStatus.FORBIDDEN).body("Wrong Password!");
|
|
case "" : return ResponseEntity.status(HttpStatus.CONFLICT).body("Error");
|
|
case "Ok": return ResponseEntity.status(HttpStatus.OK).body("Ok");
|
|
default: return ResponseEntity.status(HttpStatus.CONFLICT).body("Error");
|
|
}
|
|
}catch (Exception e){
|
|
return ResponseEntity.status(HttpStatus.CONFLICT).body(e.getMessage());
|
|
}
|
|
}
|
|
|
|
@PostMapping("/get")
|
|
@ResponseBody
|
|
public ResponseEntity<User> getUser(@RequestBody User user){
|
|
try{
|
|
DatabaseUserImplementation databaseUserImplementation = new DatabaseUserImplementation();
|
|
User response = databaseUserImplementation.getUser(user.getEmail(), user.getPassword());
|
|
if(response != null){
|
|
User userResponse = new User();
|
|
userResponse.setUser_hash(response.getUser_hash());
|
|
userResponse.setUserId(response.getUserId());
|
|
return ResponseEntity.status(HttpStatus.OK).body(userResponse);
|
|
}else{
|
|
return new ResponseEntity("Error", HttpStatus.CONFLICT);
|
|
}
|
|
}catch (Exception e){
|
|
return new ResponseEntity(e.getMessage(), HttpStatus.CONFLICT);
|
|
}
|
|
}
|
|
|
|
@PostMapping("/update")
|
|
@ResponseStatus(HttpStatus.OK)
|
|
public ResponseEntity updateUser(@RequestBody User user){
|
|
return new ResponseEntity(null, HttpStatus.OK);
|
|
}
|
|
|
|
}
|