modify database

modified database, api front for transaction
This commit is contained in:
GME 2018-11-22 17:08:56 +01:00
parent 4f794b5bca
commit f51df72704
4 changed files with 21 additions and 33 deletions

View file

@ -3,15 +3,11 @@ package database.transaction;
import com.j256.ormlite.field.DatabaseField; import com.j256.ormlite.field.DatabaseField;
import com.j256.ormlite.table.DatabaseTable; import com.j256.ormlite.table.DatabaseTable;
import java.math.BigDecimal;
@DatabaseTable(tableName = "T_TRANSACTION") @DatabaseTable(tableName = "T_TRANSACTION")
public class Transaction { public class Transaction {
@DatabaseField(generatedId = true) @DatabaseField(generatedId = true)
private int transactionId; private int transactionId;
@DatabaseField(canBeNull = false) @DatabaseField(canBeNull = false)
private int userId;
@DatabaseField(canBeNull = false)
private long transactionDate; private long transactionDate;
@DatabaseField(canBeNull = false) @DatabaseField(canBeNull = false)
private String transactionFrom; private String transactionFrom;
@ -78,13 +74,6 @@ public class Transaction {
this.transactionId = transactionId; this.transactionId = transactionId;
} }
public int getUserId() {
return userId;
}
public void setUserId(int userId) {
this.userId = userId;
}
public long getTransactionDate() { public long getTransactionDate() {
return transactionDate; return transactionDate;
@ -106,7 +95,6 @@ public class Transaction {
public String toString() { public String toString() {
return "Transaction{" + return "Transaction{" +
"transactionId=" + transactionId + "transactionId=" + transactionId +
", userId=" + userId +
", transactionDate=" + transactionDate + ", transactionDate=" + transactionDate +
", transactionFrom='" + transactionFrom + '\'' + ", transactionFrom='" + transactionFrom + '\'' +
", transactionTo='" + transactionTo + '\'' + ", transactionTo='" + transactionTo + '\'' +

View file

@ -26,28 +26,28 @@ public class TransactionDao {
transactionDao.create(transaction); transactionDao.create(transaction);
} }
public List<Transaction> getUserTransactions(int userId)throws Exception{ public List<Transaction> getUserTransactions(String userHash)throws Exception{
transactionDao = createTransactionDaoConnection(); transactionDao = createTransactionDaoConnection();
QueryBuilder<Transaction, String> queryBuilder = transactionDao.queryBuilder(); QueryBuilder<Transaction, String> queryBuilder = transactionDao.queryBuilder();
queryBuilder.where().eq("userId",userId); queryBuilder.where().eq("transactionFrom",userHash);
PreparedQuery<Transaction> preparedQuery = queryBuilder.prepare(); PreparedQuery<Transaction> preparedQuery = queryBuilder.prepare();
return transactionDao.query(preparedQuery); return transactionDao.query(preparedQuery);
} }
public List<Transaction> getTenLastUserTransactions(int userId)throws Exception{ public List<Transaction> getTenLastUserTransactions(String userHash)throws Exception{
transactionDao = createTransactionDaoConnection(); transactionDao = createTransactionDaoConnection();
QueryBuilder<Transaction, String> queryBuilder = transactionDao.queryBuilder(); QueryBuilder<Transaction, String> queryBuilder = transactionDao.queryBuilder();
queryBuilder.where().eq("userId",userId); queryBuilder.where().eq("transactionFrom",userHash).or().eq("transactionTo",userHash);
queryBuilder.limit(new Long(10)); queryBuilder.limit(new Long(10));
queryBuilder.orderBy("transactionDate",false); queryBuilder.orderBy("transactionDate",false);
PreparedQuery<Transaction> preparedQuery = queryBuilder.prepare(); PreparedQuery<Transaction> preparedQuery = queryBuilder.prepare();
return transactionDao.query(preparedQuery); return transactionDao.query(preparedQuery);
} }
public Transaction getTransaction(int userId, String transactionHash)throws Exception{ public Transaction getTransaction(String userHash, String transactionHash)throws Exception{
transactionDao = createTransactionDaoConnection(); transactionDao = createTransactionDaoConnection();
QueryBuilder<Transaction, String> queryBuilder = transactionDao.queryBuilder(); QueryBuilder<Transaction, String> 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<Transaction> preparedQuery = queryBuilder.prepare(); PreparedQuery<Transaction> preparedQuery = queryBuilder.prepare();
return transactionDao.queryForFirst(preparedQuery); return transactionDao.queryForFirst(preparedQuery);
} }

View file

@ -15,9 +15,9 @@ public class DatabaseTransactionImplementation {
transactionDao.addTransaction(transaction); 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(); TransactionDao transactionDao = new TransactionDao();
Transaction tx = transactionDao.getTransaction(userId,transactionHash); Transaction tx = transactionDao.getTransaction(userHash,transactionHash);
if(tx != null){ if(tx != null){
return tx; return tx;
}else { }else {
@ -25,14 +25,14 @@ public class DatabaseTransactionImplementation {
} }
} }
public List<Transaction> getAllUserTransactions(int userId)throws Exception{ public List<Transaction> getAllUserTransactions(String userHash)throws Exception{
TransactionDao transactionDao = new TransactionDao(); TransactionDao transactionDao = new TransactionDao();
return transactionDao.getUserTransactions(userId); return transactionDao.getUserTransactions(userHash);
} }
public List<Transaction> getLastTenTransactions(int userId)throws Exception{ public List<Transaction> getLastTenTransactions(String userHash)throws Exception{
TransactionDao transactionDao = new TransactionDao(); TransactionDao transactionDao = new TransactionDao();
return transactionDao.getTenLastUserTransactions(userId); return transactionDao.getTenLastUserTransactions(userHash);
} }
} }

View file

@ -25,12 +25,12 @@ public class DatabaseTransactionResource {
} }
} }
@GetMapping("/get") @RequestMapping(value = "/get", method = RequestMethod.GET, params = {"userHash","transactionHash"}, produces = "application/json")
@ResponseStatus(HttpStatus.OK) @ResponseStatus(HttpStatus.OK)
public ResponseEntity<Transaction> getTransaction(@Valid @RequestBody Transaction transaction){ public ResponseEntity<Transaction> getTransaction(@RequestParam(value = "userHash") String userHash, @RequestParam(value = "transactionHash") String transactionHash){
try{ try{
DatabaseTransactionImplementation databaseTransactionImplementation = new DatabaseTransactionImplementation(); DatabaseTransactionImplementation databaseTransactionImplementation = new DatabaseTransactionImplementation();
Transaction tx = databaseTransactionImplementation.getUserTransaction(transaction.getUserId(),transaction.getTransactionHash()); Transaction tx = databaseTransactionImplementation.getUserTransaction(userHash,transactionHash);
if(tx != null){ if(tx != null){
return ResponseEntity.status(HttpStatus.OK).body(tx); return ResponseEntity.status(HttpStatus.OK).body(tx);
}else { }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) @ResponseStatus(HttpStatus.OK)
public ResponseEntity<List<Transaction>> getLatestTransactions(@RequestParam(value = "userId") int userId){ public ResponseEntity<List<Transaction>> getLatestTransactions(@RequestParam(value = "userHash") String userHash){
try{ try{
DatabaseTransactionImplementation databaseTransactionImplementation = new DatabaseTransactionImplementation(); DatabaseTransactionImplementation databaseTransactionImplementation = new DatabaseTransactionImplementation();
List<Transaction> transactionList = databaseTransactionImplementation.getLastTenTransactions(userId); List<Transaction> transactionList = databaseTransactionImplementation.getLastTenTransactions(userHash);
if(!transactionList.isEmpty()){ if(!transactionList.isEmpty()){
return ResponseEntity.status(HttpStatus.OK).body(transactionList); return ResponseEntity.status(HttpStatus.OK).body(transactionList);
}else { }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) @ResponseStatus(HttpStatus.OK)
public ResponseEntity<List<Transaction>> getAllTransactions(@RequestParam(value = "userId") int userId){ public ResponseEntity<List<Transaction>> getAllTransactions(@RequestParam(value = "userHash") String userHash){
try{ try{
DatabaseTransactionImplementation databaseTransactionImplementation = new DatabaseTransactionImplementation(); DatabaseTransactionImplementation databaseTransactionImplementation = new DatabaseTransactionImplementation();
List<Transaction> transactionList = databaseTransactionImplementation.getAllUserTransactions(userId); List<Transaction> transactionList = databaseTransactionImplementation.getAllUserTransactions(userHash);
if(!transactionList.isEmpty()){ if(!transactionList.isEmpty()){
return ResponseEntity.status(HttpStatus.OK).body(transactionList); return ResponseEntity.status(HttpStatus.OK).body(transactionList);
}else { }else {