update proto files matching with pauls proto version, update code which use them

This commit is contained in:
Dario 2020-09-21 18:54:11 +02:00 committed by Ulf Gebhardt
parent 3df0d461b1
commit 662aed72b9
No known key found for this signature in database
GPG Key ID: 81308EFE29ABFEBD
9 changed files with 365 additions and 341 deletions

View File

@ -5,14 +5,14 @@
#include "Poco/DeflatingStream.h" #include "Poco/DeflatingStream.h"
#line 7 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 7 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
#include "sodium.h" #include "sodium.h"
#include "../proto/gradido/TransactionBody.pb.h" #include "../proto/gradido/TransactionBody.pb.h"
#include "../controller/User.h" #include "../controller/User.h"
#include "../model/TransactionBase.h" #include "../model/TransactionBase.h"
#include "../model/TransactionCreation.h" #include "../model/TransactionCreation.h"
#line 1 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_old.cpsp" #line 1 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\header_old.cpsp"
#include "../ServerConfig.h" #include "../ServerConfig.h"
@ -31,10 +31,10 @@ void DecodeTransactionPage::handleRequest(Poco::Net::HTTPServerRequest& request,
if (_compressResponse) response.set("Content-Encoding", "gzip"); if (_compressResponse) response.set("Content-Encoding", "gzip");
Poco::Net::HTMLForm form(request, request.stream()); Poco::Net::HTMLForm form(request, request.stream());
#line 14 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 14 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
const char* pageName = "Decode Transaction"; const char* pageName = "Decode Transaction";
model::messages::gradido::TransactionBody transactionBody; proto::gradido::TransactionBody transactionBody;
bool decoded = false; bool decoded = false;
bool adminUser = false; bool adminUser = false;
if(mSession && mSession->getNewUser()) { if(mSession && mSession->getNewUser()) {
@ -99,12 +99,12 @@ void DecodeTransactionPage::handleRequest(Poco::Net::HTTPServerRequest& request,
responseStream << "<meta charset=\"UTF-8\">\n"; responseStream << "<meta charset=\"UTF-8\">\n";
responseStream << "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n"; responseStream << "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n";
responseStream << "<title>Gradido Login Server: "; responseStream << "<title>Gradido Login Server: ";
#line 9 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_old.cpsp" #line 9 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\header_old.cpsp"
responseStream << ( pageName ); responseStream << ( pageName );
responseStream << "</title>\n"; responseStream << "</title>\n";
responseStream << "<!--<link rel=\"stylesheet\" type=\"text/css\" href=\"css/styles.min.css\">-->\n"; responseStream << "<!--<link rel=\"stylesheet\" type=\"text/css\" href=\"css/styles.min.css\">-->\n";
responseStream << "<link rel=\"stylesheet\" type=\"text/css\" href=\""; responseStream << "<link rel=\"stylesheet\" type=\"text/css\" href=\"";
#line 11 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_old.cpsp" #line 11 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\header_old.cpsp"
responseStream << ( ServerConfig::g_php_serverPath ); responseStream << ( ServerConfig::g_php_serverPath );
responseStream << "/css/styles.css\">\n"; responseStream << "/css/styles.css\">\n";
responseStream << "<style type=\"text/css\" >\n"; responseStream << "<style type=\"text/css\" >\n";
@ -149,7 +149,7 @@ void DecodeTransactionPage::handleRequest(Poco::Net::HTTPServerRequest& request,
responseStream << "<div class=\"versionstring dev-info\">\n"; responseStream << "<div class=\"versionstring dev-info\">\n";
responseStream << "\t<p class=\"grd_small\">Login Server in Entwicklung</p>\n"; responseStream << "\t<p class=\"grd_small\">Login Server in Entwicklung</p>\n";
responseStream << "\t<p class=\"grd_small\">Alpha "; responseStream << "\t<p class=\"grd_small\">Alpha ";
#line 53 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\header_old.cpsp" #line 53 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\header_old.cpsp"
responseStream << ( ServerConfig::g_versionString ); responseStream << ( ServerConfig::g_versionString );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "</div>\n"; responseStream << "</div>\n";
@ -158,84 +158,79 @@ void DecodeTransactionPage::handleRequest(Poco::Net::HTTPServerRequest& request,
responseStream << "<div class=\"grd_container\">\n"; responseStream << "<div class=\"grd_container\">\n";
responseStream << "\t<h1>Transaktion dekodieren</h1>\n"; responseStream << "\t<h1>Transaktion dekodieren</h1>\n";
responseStream << "\t"; responseStream << "\t";
#line 72 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 72 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
responseStream << ( getErrorsHtml() ); responseStream << ( getErrorsHtml() );
responseStream << "\n"; responseStream << "\n";
responseStream << "\t<form method=\"POST\">\n"; responseStream << "\t<form method=\"POST\">\n";
responseStream << "\t\t<fieldset class=\"grd_container_small\">\n"; responseStream << "\t\t<fieldset class=\"grd_container_small\">\n";
responseStream << "\t\t\t<legend>Transaktion dekodieren</legend>\n"; responseStream << "\t\t\t<legend>Transaktion dekodieren</legend>\n";
responseStream << "\t\t\t<textarea style=\"width:100%;height:100px\" name=\"transaction\">"; responseStream << "\t\t\t<textarea style=\"width:100%;height:100px\" name=\"transaction\">";
#line 76 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 76 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
responseStream << ( !form.empty() ? form.get("transaction", "") : "" ); responseStream << ( !form.empty() ? form.get("transaction", "") : "" );
responseStream << "</textarea>\n"; responseStream << "</textarea>\n";
responseStream << "\t\t</fieldset>\n"; responseStream << "\t\t</fieldset>\n";
responseStream << "\t\t<input class=\"grd-form-bn grd-form-bn-succeed\" type=\"submit\" name=\"submit\" value=\"Dekodieren\">\n"; responseStream << "\t\t<input class=\"grd-form-bn grd-form-bn-succeed\" type=\"submit\" name=\"submit\" value=\"Dekodieren\">\n";
responseStream << "\t</form>\n"; responseStream << "\t</form>\n";
responseStream << "\t"; responseStream << "\t";
#line 80 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 80 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
if(decoded) { responseStream << "\n"; if(decoded) { responseStream << "\n";
responseStream << "\t\t<p><b>Verwendungszweck:</b></p>\n"; responseStream << "\t\t<p><b>Verwendungszweck:</b></p>\n";
responseStream << "\t\t<p>"; responseStream << "\t\t<p>";
#line 82 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 82 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
responseStream << ( transactionBody.memo() ); responseStream << ( transactionBody.memo() );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t"; responseStream << "\t\t";
#line 83 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 83 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
if(transactionBody.has_transfer()) { if(transactionBody.has_transfer()) {
auto transfer = transactionBody.transfer(); auto transfer = transactionBody.transfer();
responseStream << "\n";
responseStream << "\t\t<h3>Transfer</h3>\n";
responseStream << "\t\t<b>Sender</b>\n";
responseStream << "\t\t";
#line 88 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp"
for(int i = 0; i < transfer.senderamounts_size(); i++) {
auto sender = transfer.senderamounts(i);
char hex[65]; memset(hex, 0, 65); char hex[65]; memset(hex, 0, 65);
sodium_bin2hex(hex, 65, (const unsigned char*)sender.ed25519_sender_pubkey().data(), sender.ed25519_sender_pubkey().size());
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t\t<p>pubkey: "; responseStream << "\t\t\t";
#line 93 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 87 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
responseStream << ( hex ); if(transfer.has_local()) {
responseStream << "</p>\n"; auto local_transfer = transfer.local();
responseStream << "\t\t\t<p>amount: "; auto sender_pubkey = local_transfer.sender().pubkey();
#line 94 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" auto receiver_pubkey = local_transfer.receiver();
responseStream << ( TransactionBase::amountToString(sender.amount()) ); sodium_bin2hex(hex, 65, (const unsigned char*)sender_pubkey.data(), sender_pubkey.size());
responseStream << " GDD</p>\n";
responseStream << "\t\t";
#line 95 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp"
} responseStream << "\n";
responseStream << "\t\t<b>Receiver</b>\n";
responseStream << "\t\t";
#line 97 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp"
for(int i = 0; i < transfer.receiveramounts_size(); i++) {
auto receiver = transfer.receiveramounts(i);
char hex[65]; memset(hex, 0, 65);
sodium_bin2hex(hex, 65, (const unsigned char*)receiver.ed25519_receiver_pubkey().data(), receiver.ed25519_receiver_pubkey().size());
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t\t<p>pubkey: "; responseStream << "\t\t\t\t<h3>Local Transfer</h3>\n";
#line 102 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" responseStream << "\t\t\t\t<b>From: </b>";
#line 94 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
responseStream << ( hex ); responseStream << ( hex );
responseStream << "</p>\n"; responseStream << "\n";
responseStream << "\t\t\t<p>amount: "; responseStream << "\t\t\t\t";
#line 103 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 95 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
responseStream << ( TransactionBase::amountToString(receiver.amount()) ); sodium_bin2hex(hex, 65, (const unsigned char*)receiver_pubkey.data(), receiver_pubkey.size()); responseStream << "\n";
responseStream << " GDD</p>\n"; responseStream << "\t\t\t\t<b>To: </b>";
responseStream << "\t\t"; #line 96 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
#line 104 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" responseStream << ( hex );
responseStream << "\n";
responseStream << "\t\t\t\t<b>Amount: </b>";
#line 97 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
responseStream << ( TransactionBase::amountToString(local_transfer.sender().amount()) );
responseStream << "\n";
responseStream << "\t\t\t";
#line 98 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
} else { responseStream << "\n";
responseStream << "\t\t\t\t<h3>- Not implemented yet (Group Transfer) -</h3>\n";
responseStream << "\t\t\t";
#line 100 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t"; responseStream << "\t\t";
#line 105 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 102 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
} else if(transactionBody.has_creation()) { } else if(transactionBody.has_creation()) {
auto creation = transactionBody.creation(); auto creation = transactionBody.creation();
TransactionCreation creationObject("", creation); TransactionCreation creationObject("", creation);
auto receiver = creation.receiveramount(); auto receiver = creation.receiveramount();
char hex[65]; memset(hex, 0, 65); char hex[65]; memset(hex, 0, 65);
sodium_bin2hex(hex, 65, (const unsigned char*)receiver.ed25519_receiver_pubkey().data(), receiver.ed25519_receiver_pubkey().size()); sodium_bin2hex(hex, 65, (const unsigned char*)receiver.pubkey().data(), receiver.pubkey().size());
Poco::AutoPtr<controller::User> user = nullptr; Poco::AutoPtr<controller::User> user = nullptr;
if(adminUser) { if(adminUser) {
user = controller::User::create(); user = controller::User::create();
if(!user->load((const unsigned char*)receiver.ed25519_receiver_pubkey().data())) { if(!user->load((const unsigned char*)receiver.pubkey().data())) {
user.assign(nullptr); user.assign(nullptr);
} }
} }
@ -243,36 +238,36 @@ void DecodeTransactionPage::handleRequest(Poco::Net::HTTPServerRequest& request,
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t<h3>Creation</h3>\n"; responseStream << "\t\t<h3>Creation</h3>\n";
responseStream << "\t\t"; responseStream << "\t\t";
#line 122 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 121 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
if(!adminUser || user.isNull() || !user->getModel()) { responseStream << "\n"; if(!adminUser || user.isNull() || !user->getModel()) { responseStream << "\n";
responseStream << "\t\t<p>pubkey: "; responseStream << "\t\t<p>pubkey: ";
#line 123 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 122 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
responseStream << ( hex ); responseStream << ( hex );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t"; responseStream << "\t\t";
#line 124 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 123 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
} else { responseStream << "\n"; } else { responseStream << "\n";
responseStream << "\t\t<p>user: </p>\n"; responseStream << "\t\t<p>user: </p>\n";
responseStream << "\t\t<p>"; responseStream << "\t\t<p>";
#line 126 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 125 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
responseStream << ( user->getModel()->toHTMLString() ); responseStream << ( user->getModel()->toHTMLString() );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t"; responseStream << "\t\t";
#line 127 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 126 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t\t<p>amount: "; responseStream << "\t\t<p>amount: ";
#line 128 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 127 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
responseStream << ( TransactionBase::amountToString(receiver.amount()) ); responseStream << ( TransactionBase::amountToString(receiver.amount()) );
responseStream << " GDD</p>\n"; responseStream << " GDD</p>\n";
responseStream << "\t\t<p>target date: "; responseStream << "\t\t<p>target date: ";
#line 129 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 128 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
responseStream << ( creationObject.getTargetDateString() ); responseStream << ( creationObject.getTargetDateString() );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << "\t\t"; responseStream << "\t\t";
#line 130 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 129 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "\t"; responseStream << "\t";
#line 131 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\decodeTransaction.cpsp" #line 130 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\decodeTransaction.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "</div>\n"; responseStream << "</div>\n";
// begin include footer.cpsp // begin include footer.cpsp
@ -282,14 +277,14 @@ void DecodeTransactionPage::handleRequest(Poco::Net::HTTPServerRequest& request,
responseStream << " </div>\n"; responseStream << " </div>\n";
responseStream << " <div class=\"bottomleft\">\n"; responseStream << " <div class=\"bottomleft\">\n";
responseStream << " "; responseStream << " ";
#line 6 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\footer.cpsp" #line 6 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\footer.cpsp"
responseStream << ( mTimeProfiler.string() ); responseStream << ( mTimeProfiler.string() );
responseStream << "\n"; responseStream << "\n";
responseStream << " </div>\n"; responseStream << " </div>\n";
responseStream << " <div class=\"bottomright\">\n"; responseStream << " <div class=\"bottomright\">\n";
responseStream << " <p>Login Server in Entwicklung</p>\n"; responseStream << " <p>Login Server in Entwicklung</p>\n";
responseStream << " <p>Alpha "; responseStream << " <p>Alpha ";
#line 10 "F:\\Gradido\\gradido_login_server\\src\\cpsp\\footer.cpsp" #line 10 "D:\\code\\gradido\\gradido_login_server_grpc\\src\\cpsp\\footer.cpsp"
responseStream << ( ServerConfig::g_versionString ); responseStream << ( ServerConfig::g_versionString );
responseStream << "</p>\n"; responseStream << "</p>\n";
responseStream << " </div>\n"; responseStream << " </div>\n";

View File

@ -2,7 +2,8 @@
#include "Poco/DateTimeFormatter.h" #include "Poco/DateTimeFormatter.h"
#include <sodium.h> #include <sodium.h>
TransactionCreation::TransactionCreation(const std::string& memo, const model::messages::gradido::TransactionCreation& protoCreation) //TransactionCreation::TransactionCreation(const std::string& memo, const model::messages::gradido::TransactionCreation& protoCreation)
TransactionCreation::TransactionCreation(const std::string& memo, const proto::gradido::GradidoCreation& protoCreation)
: TransactionBase(memo), mProtoCreation(protoCreation), mReceiverUser(nullptr) : TransactionBase(memo), mProtoCreation(protoCreation), mReceiverUser(nullptr)
{ {
memset(mReceiverPublicHex, 0, 65); memset(mReceiverPublicHex, 0, 65);

View File

@ -12,26 +12,26 @@
#pragma warning(disable:4800) #pragma warning(disable:4800)
#include "TransactionBase.h" #include "TransactionBase.h"
#include "../proto/gradido/TransactionCreation.pb.h" #include "../proto/gradido/GradidoCreation.pb.h"
#include "User.h" #include "User.h"
class TransactionCreation : public TransactionBase class TransactionCreation : public TransactionBase
{ {
public: public:
TransactionCreation(const std::string& memo, const model::messages::gradido::TransactionCreation& protoCreation); TransactionCreation(const std::string& memo, const proto::gradido::GradidoCreation& protoCreation);
~TransactionCreation(); ~TransactionCreation();
int prepare(); int prepare();
inline User* getUser() { return mReceiverUser; } inline User* getUser() { return mReceiverUser; }
inline google::protobuf::int64 getAmount() { return mProtoCreation.receiveramount().amount(); } inline google::protobuf::int64 getAmount() { return mProtoCreation.receiver().amount(); }
inline char* getPublicHex() { return mReceiverPublicHex; } inline char* getPublicHex() { return mReceiverPublicHex; }
inline std::string getAmountString() { return amountToString(getAmount()); } inline std::string getAmountString() { return amountToString(getAmount()); }
std::string getTargetDateString(); std::string getTargetDateString();
protected: protected:
const model::messages::gradido::TransactionCreation& mProtoCreation; const proto::gradido::GradidoCreation& mProtoCreation;
char mReceiverPublicHex[65]; char mReceiverPublicHex[65];
User* mReceiverUser; User* mReceiverUser;
}; };

View File

@ -46,7 +46,8 @@ void TransactionTransfer::KontoTableEntry::composeAmountCellString(google::proto
// ******************************************************************************************************************************** // ********************************************************************************************************************************
TransactionTransfer::TransactionTransfer(const std::string& memo, const model::messages::gradido::Transfer& protoTransfer) //TransactionTransfer::TransactionTransfer(const std::string& memo, const model::messages::gradido::Transfer& protoTransfer)
TransactionTransfer::TransactionTransfer(const std::string& memo, const proto::gradido::GradidoTransfer& protoTransfer)
: TransactionBase(memo), mProtoTransfer(protoTransfer) : TransactionBase(memo), mProtoTransfer(protoTransfer)
{ {
@ -80,6 +81,34 @@ int TransactionTransfer::prepare()
char pubkeyHexTemp[65]; char pubkeyHexTemp[65];
/*
if (mProtoTransfer.has_local())
{
auto local_transfer = mProtoTransfer.local();
auto sender = local_transfer.sender();
auto sender_pubkey = sender.pubkey();
auto receiver_pubkey = local_transfer.receiver();
auto amount = sender.amount();
auto sender_user = controller::User::create();
auto receiver_user = controller::User::create();
if (!sender_user->load((const unsigned char*)sender_pubkey.data())) {
sodium_bin2hex(pubkeyHexTemp, 65, (const unsigned char*)sender_pubkey.data(), sender_pubkey.size());
mKontoTable.push_back(KontoTableEntry(pubkeyHexTemp, -amount, true));
}
else {
mKontoTable.push_back(KontoTableEntry(sender_user->getModel(), -amount, true));
}
if (!receiver_user->load((const unsigned char*)receiver_pubkey.data())) {
sodium_bin2hex(pubkeyHexTemp, 65, (const unsigned char*)receiver_pubkey.data(), receiver_pubkey.size());
mKontoTable.push_back(KontoTableEntry(pubkeyHexTemp, amount, true));
}
else {
mKontoTable.push_back(KontoTableEntry(sender_user->getModel(), amount, true));
}
}
*/
for (int i = 0; i < mProtoTransfer.senderamounts_size(); i++) { for (int i = 0; i < mProtoTransfer.senderamounts_size(); i++) {
auto senderAmount = mProtoTransfer.senderamounts(i); auto senderAmount = mProtoTransfer.senderamounts(i);
auto pubkey = senderAmount.ed25519_sender_pubkey(); auto pubkey = senderAmount.ed25519_sender_pubkey();
@ -128,6 +157,7 @@ int TransactionTransfer::prepare()
return -6; return -6;
} }
/* /*
mReceiverUser = new User(receiverPublic.data()); mReceiverUser = new User(receiverPublic.data());
getErrors(mReceiverUser); getErrors(mReceiverUser);
@ -170,3 +200,4 @@ const std::string& TransactionTransfer::getAmountCell(int index)
return mKontoTable[index].amountCell; return mKontoTable[index].amountCell;
} }
>>>>>>> 1e4ae4a (update proto files matching with pauls proto version, update code which use them)

View File

@ -12,14 +12,14 @@
#pragma warning(disable:4800) #pragma warning(disable:4800)
#include "TransactionBase.h" #include "TransactionBase.h"
#include "../proto/gradido/Transfer.pb.h" #include "../proto/gradido/GradidoTransfer.pb.h"
#include "../controller/User.h" #include "../controller/User.h"
class TransactionTransfer : public TransactionBase class TransactionTransfer : public TransactionBase
{ {
public: public:
TransactionTransfer(const std::string& memo, const model::messages::gradido::Transfer& protoTransfer); TransactionTransfer(const std::string& memo, const proto::gradido::GradidoTransfer& protoTransfer);
~TransactionTransfer(); ~TransactionTransfer();
int prepare(); int prepare();
@ -44,7 +44,7 @@ protected:
void composeAmountCellString(google::protobuf::int64 amount, bool negativeAmount); void composeAmountCellString(google::protobuf::int64 amount, bool negativeAmount);
}; };
const model::messages::gradido::Transfer& mProtoTransfer; const proto::gradido::GradidoTransfer& mProtoTransfer;
std::vector<KontoTableEntry> mKontoTable; std::vector<KontoTableEntry> mKontoTable;
}; };

View File

@ -63,7 +63,7 @@ protected:
TransactionType mType; TransactionType mType;
std::string mProtoMessageBase64; std::string mProtoMessageBase64;
model::messages::gradido::TransactionBody mTransactionBody; proto::gradido::TransactionBody mTransactionBody;
TransactionBase* mTransactionSpecific; TransactionBase* mTransactionSpecific;
HASH mHash; HASH mHash;

View File

@ -11,8 +11,6 @@
#include "../lib/Profiler.h" #include "../lib/Profiler.h"
#include "../proto/gradido/Transaction.pb.h"
#include "sodium.h" #include "sodium.h"
#include "../ServerConfig.h" #include "../ServerConfig.h"
@ -99,8 +97,8 @@ int SigningTransaction::run() {
} }
} }
// get body bytes // get body bytes
model::messages::gradido::Transaction transaction; proto::gradido::GradidoTransaction transaction;
auto bodyBytes = transaction.mutable_bodybytes(); auto bodyBytes = transaction.mutable_body_bytes();
*bodyBytes = mProcessingeTransaction->getBodyBytes(); *bodyBytes = mProcessingeTransaction->getBodyBytes();
if (*bodyBytes == "") { if (*bodyBytes == "") {
getErrors(mProcessingeTransaction); getErrors(mProcessingeTransaction);
@ -135,7 +133,7 @@ int SigningTransaction::run() {
} }
*/ */
// add to message // add to message
auto sigMap = transaction.mutable_sigmap(); auto sigMap = transaction.mutable_sig_map();
auto sigPair = sigMap->add_sigpair(); auto sigPair = sigMap->add_sigpair();
auto pubkeyBytes = sigPair->mutable_pubkey(); auto pubkeyBytes = sigPair->mutable_pubkey();
@ -150,7 +148,7 @@ int SigningTransaction::run() {
/*std::string protoPrettyPrint; /*std::string protoPrettyPrint;
google::protobuf::TextFormat::PrintToString(transaction, &protoPrettyPrint); google::protobuf::TextFormat::PrintToString(transaction, &protoPrettyPrint);
printf("transaction pretty: %s\n", protoPrettyPrint.data()); printf("transaction pretty: %s\n", protoPrettyPrint.data());
model::messages::gradido::TransactionBody transactionBody; proto::gradido::TransactionBody transactionBody;
transactionBody.MergeFromString(transaction.bodybytes()); transactionBody.MergeFromString(transaction.bodybytes());
google::protobuf::TextFormat::PrintToString(transactionBody, &protoPrettyPrint); google::protobuf::TextFormat::PrintToString(transactionBody, &protoPrettyPrint);
printf("transaction body pretty: \n%s\n", protoPrettyPrint.data()); printf("transaction body pretty: \n%s\n", protoPrettyPrint.data());

View File

@ -8,7 +8,7 @@
#include "../model/User.h" #include "../model/User.h"
#include "../controller/User.h" #include "../controller/User.h"
#include "../proto/gradido/Transaction.pb.h" #include "../proto/gradido/GradidoTransaction.pb.h"
#include "ProcessingTransaction.h" #include "ProcessingTransaction.h"

View File

@ -13,7 +13,7 @@
%> %>
<%% <%%
const char* pageName = "Decode Transaction"; const char* pageName = "Decode Transaction";
model::messages::gradido::TransactionBody transactionBody; proto::gradido::TransactionBody transactionBody;
bool decoded = false; bool decoded = false;
bool adminUser = false; bool adminUser = false;
if(mSession && mSession->getNewUser()) { if(mSession && mSession->getNewUser()) {
@ -82,37 +82,36 @@
<p><%= transactionBody.memo() %></p> <p><%= transactionBody.memo() %></p>
<% if(transactionBody.has_transfer()) { <% if(transactionBody.has_transfer()) {
auto transfer = transactionBody.transfer(); auto transfer = transactionBody.transfer();
%>
<h3>Transfer</h3>
<b>Sender</b>
<% for(int i = 0; i < transfer.senderamounts_size(); i++) {
auto sender = transfer.senderamounts(i);
char hex[65]; memset(hex, 0, 65); char hex[65]; memset(hex, 0, 65);
sodium_bin2hex(hex, 65, (const unsigned char*)sender.ed25519_sender_pubkey().data(), sender.ed25519_sender_pubkey().size());
%> %>
<p>pubkey: <%= hex %></p> <% if(transfer.has_local()) {
<p>amount: <%= TransactionBase::amountToString(sender.amount()) %> GDD</p> auto local_transfer = transfer.local();
<% } %> auto sender_pubkey = local_transfer.sender().pubkey();
<b>Receiver</b> auto receiver_pubkey = local_transfer.receiver();
<% for(int i = 0; i < transfer.receiveramounts_size(); i++) { sodium_bin2hex(hex, 65, (const unsigned char*)sender_pubkey.data(), sender_pubkey.size());
auto receiver = transfer.receiveramounts(i);
char hex[65]; memset(hex, 0, 65);
sodium_bin2hex(hex, 65, (const unsigned char*)receiver.ed25519_receiver_pubkey().data(), receiver.ed25519_receiver_pubkey().size());
%> %>
<p>pubkey: <%= hex %></p> <h3>Local Transfer</h3>
<p>amount: <%= TransactionBase::amountToString(receiver.amount()) %> GDD</p> <b>From: </b><%= hex %>
<% sodium_bin2hex(hex, 65, (const unsigned char*)receiver_pubkey.data(), receiver_pubkey.size()); %>
<b>To: </b><%= hex %>
<b>Amount: </b><%= TransactionBase::amountToString(local_transfer.sender().amount()) %>
<% } else { %>
<h3>- Not implemented yet (Group Transfer) -</h3>
<% } %> <% } %>
<% } else if(transactionBody.has_creation()) { <% } else if(transactionBody.has_creation()) {
auto creation = transactionBody.creation(); auto creation = transactionBody.creation();
TransactionCreation creationObject("", creation); TransactionCreation creationObject("", creation);
auto receiver = creation.receiveramount(); auto receiver = creation.receiveramount();
char hex[65]; memset(hex, 0, 65); char hex[65]; memset(hex, 0, 65);
sodium_bin2hex(hex, 65, (const unsigned char*)receiver.ed25519_receiver_pubkey().data(), receiver.ed25519_receiver_pubkey().size()); sodium_bin2hex(hex, 65, (const unsigned char*)receiver.pubkey().data(), receiver.pubkey().size());
Poco::AutoPtr<controller::User> user = nullptr; Poco::AutoPtr<controller::User> user = nullptr;
if(adminUser) { if(adminUser) {
user = controller::User::create(); user = controller::User::create();
if(!user->load((const unsigned char*)receiver.ed25519_receiver_pubkey().data())) { if(!user->load((const unsigned char*)receiver.pubkey().data())) {
user.assign(nullptr); user.assign(nullptr);
} }
} }