From f51df727048c58ab67d5dfcf45ae3895447eea4d Mon Sep 17 00:00:00 2001 From: GME Date: Thu, 22 Nov 2018 17:08:56 +0100 Subject: [PATCH] modify database modified database, api front for transaction --- .../java/database/transaction/Transaction.java | 12 ------------ .../database/transaction/TransactionDao.java | 12 ++++++------ .../DatabaseTransactionImplementation.java | 12 ++++++------ .../DatabaseTransactionResource.java | 18 +++++++++--------- 4 files changed, 21 insertions(+), 33 deletions(-) diff --git a/src/main/java/database/transaction/Transaction.java b/src/main/java/database/transaction/Transaction.java index 442e827..bb9d94e 100644 --- a/src/main/java/database/transaction/Transaction.java +++ b/src/main/java/database/transaction/Transaction.java @@ -3,15 +3,11 @@ package database.transaction; import com.j256.ormlite.field.DatabaseField; import com.j256.ormlite.table.DatabaseTable; -import java.math.BigDecimal; - @DatabaseTable(tableName = "T_TRANSACTION") public class Transaction { @DatabaseField(generatedId = true) private int transactionId; @DatabaseField(canBeNull = false) - private int userId; - @DatabaseField(canBeNull = false) private long transactionDate; @DatabaseField(canBeNull = false) private String transactionFrom; @@ -78,13 +74,6 @@ public class Transaction { this.transactionId = transactionId; } - public int getUserId() { - return userId; - } - - public void setUserId(int userId) { - this.userId = userId; - } public long getTransactionDate() { return transactionDate; @@ -106,7 +95,6 @@ public class Transaction { public String toString() { return "Transaction{" + "transactionId=" + transactionId + - ", userId=" + userId + ", transactionDate=" + transactionDate + ", transactionFrom='" + transactionFrom + '\'' + ", transactionTo='" + transactionTo + '\'' + diff --git a/src/main/java/database/transaction/TransactionDao.java b/src/main/java/database/transaction/TransactionDao.java index 13aca80..1120b9e 100644 --- a/src/main/java/database/transaction/TransactionDao.java +++ b/src/main/java/database/transaction/TransactionDao.java @@ -26,28 +26,28 @@ public class TransactionDao { transactionDao.create(transaction); } - public List getUserTransactions(int userId)throws Exception{ + public List getUserTransactions(String userHash)throws Exception{ transactionDao = createTransactionDaoConnection(); QueryBuilder queryBuilder = transactionDao.queryBuilder(); - queryBuilder.where().eq("userId",userId); + queryBuilder.where().eq("transactionFrom",userHash); PreparedQuery preparedQuery = queryBuilder.prepare(); return transactionDao.query(preparedQuery); } - public List getTenLastUserTransactions(int userId)throws Exception{ + public List getTenLastUserTransactions(String userHash)throws Exception{ transactionDao = createTransactionDaoConnection(); QueryBuilder queryBuilder = transactionDao.queryBuilder(); - queryBuilder.where().eq("userId",userId); + queryBuilder.where().eq("transactionFrom",userHash).or().eq("transactionTo",userHash); queryBuilder.limit(new Long(10)); queryBuilder.orderBy("transactionDate",false); PreparedQuery preparedQuery = queryBuilder.prepare(); return transactionDao.query(preparedQuery); } - public Transaction getTransaction(int userId, String transactionHash)throws Exception{ + public Transaction getTransaction(String userHash, String transactionHash)throws Exception{ transactionDao = createTransactionDaoConnection(); QueryBuilder queryBuilder = transactionDao.queryBuilder(); - queryBuilder.where().eq("userId",userId).and().eq("transactionHash",transactionHash); + queryBuilder.where().eq("transactionTo",userHash).or().eq("transactionFrom",userHash).and().eq("transactionHash",transactionHash); PreparedQuery preparedQuery = queryBuilder.prepare(); return transactionDao.queryForFirst(preparedQuery); } diff --git a/src/main/java/restImplementation/DatabaseTransactionImplementation.java b/src/main/java/restImplementation/DatabaseTransactionImplementation.java index 556ccbc..a1fd367 100644 --- a/src/main/java/restImplementation/DatabaseTransactionImplementation.java +++ b/src/main/java/restImplementation/DatabaseTransactionImplementation.java @@ -15,9 +15,9 @@ public class DatabaseTransactionImplementation { transactionDao.addTransaction(transaction); } - public Transaction getUserTransaction(int userId, String transactionHash)throws Exception{ + public Transaction getUserTransaction(String userHash, String transactionHash)throws Exception{ TransactionDao transactionDao = new TransactionDao(); - Transaction tx = transactionDao.getTransaction(userId,transactionHash); + Transaction tx = transactionDao.getTransaction(userHash,transactionHash); if(tx != null){ return tx; }else { @@ -25,14 +25,14 @@ public class DatabaseTransactionImplementation { } } - public List getAllUserTransactions(int userId)throws Exception{ + public List getAllUserTransactions(String userHash)throws Exception{ TransactionDao transactionDao = new TransactionDao(); - return transactionDao.getUserTransactions(userId); + return transactionDao.getUserTransactions(userHash); } - public List getLastTenTransactions(int userId)throws Exception{ + public List getLastTenTransactions(String userHash)throws Exception{ TransactionDao transactionDao = new TransactionDao(); - return transactionDao.getTenLastUserTransactions(userId); + return transactionDao.getTenLastUserTransactions(userHash); } } diff --git a/src/main/java/restService/DatabaseTransactionResource.java b/src/main/java/restService/DatabaseTransactionResource.java index d4d9b5f..8f5834f 100644 --- a/src/main/java/restService/DatabaseTransactionResource.java +++ b/src/main/java/restService/DatabaseTransactionResource.java @@ -25,12 +25,12 @@ public class DatabaseTransactionResource { } } - @GetMapping("/get") + @RequestMapping(value = "/get", method = RequestMethod.GET, params = {"userHash","transactionHash"}, produces = "application/json") @ResponseStatus(HttpStatus.OK) - public ResponseEntity getTransaction(@Valid @RequestBody Transaction transaction){ + public ResponseEntity getTransaction(@RequestParam(value = "userHash") String userHash, @RequestParam(value = "transactionHash") String transactionHash){ try{ DatabaseTransactionImplementation databaseTransactionImplementation = new DatabaseTransactionImplementation(); - Transaction tx = databaseTransactionImplementation.getUserTransaction(transaction.getUserId(),transaction.getTransactionHash()); + Transaction tx = databaseTransactionImplementation.getUserTransaction(userHash,transactionHash); if(tx != null){ return ResponseEntity.status(HttpStatus.OK).body(tx); }else { @@ -41,12 +41,12 @@ public class DatabaseTransactionResource { } } - @RequestMapping(value = "/getLatest", method = RequestMethod.GET, params = {"userId"}, produces = "application/json") + @RequestMapping(value = "/getLatest", method = RequestMethod.GET, params = {"userHash"}, produces = "application/json") @ResponseStatus(HttpStatus.OK) - public ResponseEntity> getLatestTransactions(@RequestParam(value = "userId") int userId){ + public ResponseEntity> getLatestTransactions(@RequestParam(value = "userHash") String userHash){ try{ DatabaseTransactionImplementation databaseTransactionImplementation = new DatabaseTransactionImplementation(); - List transactionList = databaseTransactionImplementation.getLastTenTransactions(userId); + List transactionList = databaseTransactionImplementation.getLastTenTransactions(userHash); if(!transactionList.isEmpty()){ return ResponseEntity.status(HttpStatus.OK).body(transactionList); }else { @@ -58,12 +58,12 @@ public class DatabaseTransactionResource { } - @RequestMapping(value = "/getAll", method = RequestMethod.GET, params = {"userId"}, produces = "application/json") + @RequestMapping(value = "/getAll", method = RequestMethod.GET, params = {"userHash"}, produces = "application/json") @ResponseStatus(HttpStatus.OK) - public ResponseEntity> getAllTransactions(@RequestParam(value = "userId") int userId){ + public ResponseEntity> getAllTransactions(@RequestParam(value = "userHash") String userHash){ try{ DatabaseTransactionImplementation databaseTransactionImplementation = new DatabaseTransactionImplementation(); - List transactionList = databaseTransactionImplementation.getAllUserTransactions(userId); + List transactionList = databaseTransactionImplementation.getAllUserTransactions(userHash); if(!transactionList.isEmpty()){ return ResponseEntity.status(HttpStatus.OK).body(transactionList); }else {