diff --git a/db/toco_soap.sql b/db/toco_soap.sql index 27b1a8bb45a9c3ca5bbf6e6ce44998c955ff629a..3c4287bed729bdf5e984716d9c39de19f5d25c98 100644 --- a/db/toco_soap.sql +++ b/db/toco_soap.sql @@ -34,10 +34,14 @@ CREATE TABLE `transaction`( CREATE TABLE `api`( api_id int(11) NOT NULL AUTO_INCREMENT, api_key VARCHAR(255) NOT NULL, - service VARCHAR(255) NOT NULL, PRIMARY KEY (`api_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; +INSERT INTO `api` (`api_key`) VALUES + ('Postman'), + ('toco_rest'), + ('toco_php'); + diff --git a/src/main/java/org/toco/model/transaction_model.java b/src/main/java/org/toco/model/transaction_model.java index ee5fc7c295bee116af4cb8372f955d9c4827a2e8..32a264c035a42372ee1e6ec222514bb8972ba2a5 100644 --- a/src/main/java/org/toco/model/transaction_model.java +++ b/src/main/java/org/toco/model/transaction_model.java @@ -21,13 +21,13 @@ public class transaction_model { } // GET TRANSACTION a user does return in transaction_entity array public transaction_entity[] getTransaction(Integer user_id){ - String sql = "select * from transaction where user_id = (?)"; + String sql = "select * from transaction where user_id = (?) order by tid desc"; try (Connection connection = connector.connect() ; PreparedStatement command = connection.prepareStatement(sql)) { command.setInt(1, user_id); command.execute(); ResultSet rs = command.getResultSet(); - transaction_entity[] transactions = new transaction_entity[100]; + transaction_entity[] transactions = new transaction_entity[getTransactionCount(user_id)]; int i = 0; while(rs.next()){ transactions[i] = new transaction_entity(rs.getInt(2), rs.getInt(3), rs.getString(4), rs.getString(5)); diff --git a/src/main/java/org/toco/service/toco_service.java b/src/main/java/org/toco/service/toco_service.java index bd7bc6fa13a91168546325ab1f5c1bc328dcd8fa..b5a5f9e94b432d52916539058d278359dad192b9 100644 --- a/src/main/java/org/toco/service/toco_service.java +++ b/src/main/java/org/toco/service/toco_service.java @@ -32,7 +32,7 @@ public interface toco_service { ); @WebMethod - public String getTransactions( + public String[] getTransactions( @WebParam(name = "user_id") Integer user_id ); diff --git a/src/main/java/org/toco/service/toco_service_impl.java b/src/main/java/org/toco/service/toco_service_impl.java index c357cf76eb77a0f9862904036351126544be364b..06509eaedd3cd3999f6c2c20053055c99e3e8dd9 100644 --- a/src/main/java/org/toco/service/toco_service_impl.java +++ b/src/main/java/org/toco/service/toco_service_impl.java @@ -85,15 +85,15 @@ public class toco_service_impl implements toco_service { } @Override - public String getTransactions(Integer user_id) { + public String[] getTransactions(Integer user_id) { if(validateApiKey()){ transaction_model transactionModel = new transaction_model(); transaction_entity[] transactions = transactionModel.getTransaction(user_id); // create transactions to a string with each transaction on a new line - String ret = ""; + String[] ret = new String[transactionModel.getTransactionCount(user_id)]; int len = transactionModel.getTransactionCount(user_id); for (int i = 0; i < len; i++) { - ret += transactions[i].toString() + "\n"; + ret[i] =transactions[i].getAmount().toString()+", "+transactions[i].getImage()+", "+transactions[i].getStatus(); } addLoggging("User with id " + user_id + " requested his transactions"); return ret;