61 lines
2.6 KiB
Java
61 lines
2.6 KiB
Java
package restService;
|
|
|
|
import database.transaction.Transaction;
|
|
import org.springframework.http.HttpStatus;
|
|
import org.springframework.http.ResponseEntity;
|
|
import org.springframework.web.bind.annotation.*;
|
|
import restImplementation.DatabaseTransactionImplementation;
|
|
|
|
import javax.validation.Valid;
|
|
import java.util.List;
|
|
|
|
@RestController
|
|
@RequestMapping(value = "/api/rest/transaction")
|
|
public class DatabaseTransactionResource {
|
|
|
|
@PostMapping("/save")
|
|
@ResponseStatus(HttpStatus.CREATED)
|
|
public ResponseEntity<String> saveTransaction(@Valid @RequestBody Transaction transaction){
|
|
try{
|
|
DatabaseTransactionImplementation databaseTransactionImplementation = new DatabaseTransactionImplementation();
|
|
databaseTransactionImplementation.saveTransaction(transaction);
|
|
return ResponseEntity.status(HttpStatus.OK).body("");
|
|
}catch (Exception e){
|
|
return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(e.getMessage());
|
|
}
|
|
}
|
|
|
|
@GetMapping("/get")
|
|
@ResponseStatus(HttpStatus.OK)
|
|
public ResponseEntity<Transaction> getTransaction(@Valid @RequestBody Transaction transaction){
|
|
try{
|
|
DatabaseTransactionImplementation databaseTransactionImplementation = new DatabaseTransactionImplementation();
|
|
Transaction tx = databaseTransactionImplementation.getUserTransaction(transaction.getUserId(),transaction.getTransactionHash());
|
|
if(tx != null){
|
|
return ResponseEntity.status(HttpStatus.OK).body(tx);
|
|
}else {
|
|
return new ResponseEntity("Error", HttpStatus.NOT_FOUND);
|
|
}
|
|
}catch (Exception e){
|
|
return new ResponseEntity(e.getMessage(), HttpStatus.BAD_REQUEST);
|
|
}
|
|
}
|
|
|
|
@RequestMapping(value = "/getAll", method = RequestMethod.GET, params = {"userId"}, produces = "application/json")
|
|
@ResponseStatus(HttpStatus.OK)
|
|
public ResponseEntity<List<Transaction>> getAllTransaction(@RequestParam(value = "userId") int userId){
|
|
try{
|
|
DatabaseTransactionImplementation databaseTransactionImplementation = new DatabaseTransactionImplementation();
|
|
List<Transaction> transactionList = databaseTransactionImplementation.getAllUserTransactions(userId);
|
|
if(!transactionList.isEmpty()){
|
|
return ResponseEntity.status(HttpStatus.OK).body(transactionList);
|
|
}else {
|
|
return new ResponseEntity("Error", HttpStatus.NOT_FOUND);
|
|
}
|
|
}catch (Exception e){
|
|
return new ResponseEntity(e.getMessage(), HttpStatus.BAD_REQUEST);
|
|
}
|
|
}
|
|
|
|
}
|