diff options
author | Max Kusatz <max@trialserver.de> | 2020-10-19 13:53:27 +0200 |
---|---|---|
committer | Max Kusatz <max@trialserver.de> | 2020-10-19 13:53:27 +0200 |
commit | 0064d0dd4e1be77714d60c4548294abd73391137 (patch) | |
tree | 9f435ab587fdf78c8dc3727bd50bd9239527b116 | |
parent | 37724b791e4fe4966106d20f7f17b553573ec59c (diff) | |
download | n_core-0064d0dd4e1be77714d60c4548294abd73391137.tar.gz n_core-0064d0dd4e1be77714d60c4548294abd73391137.zip |
further working on Mensa function
-rw-r--r-- | include/GetEssen.hpp | 2 | ||||
-rw-r--r-- | src/GetEssen.cpp | 24 |
2 files changed, 20 insertions, 6 deletions
diff --git a/include/GetEssen.hpp b/include/GetEssen.hpp index b53c028..06aafe2 100644 --- a/include/GetEssen.hpp +++ b/include/GetEssen.hpp @@ -30,7 +30,7 @@ namespace Handler { }; - bool db_update_mensa_message(const int &mensaID, const ptime &mensaDatum, const string &message); + bool db_update_mensa_message(const int &mensaID, const ptime &mensaDatum, const std::vector<crow::json::wvalue> &message); bool db_insert_mensa_message(const int &mensaID, const ptime &mensaDatum, const string &message); diff --git a/src/GetEssen.cpp b/src/GetEssen.cpp index 69a8e5e..44dae59 100644 --- a/src/GetEssen.cpp +++ b/src/GetEssen.cpp @@ -6,8 +6,15 @@ using std::string; bool -Handler::MensaHandler::db_update_mensa_message(const int &mensaID, const ptime &mensaDatum, const string &message) { +Handler::MensaHandler::db_update_mensa_message(const int &mensaID, const ptime &mensaDatum, const std::vector<crow::json::wvalue> &message) { sqdb::Db db("../main.sqlite"); + + std::string messageFromJSON; + for (auto &mes : message){ + messageFromJSON.append(mes.keys().at(0)); + } + + string newTime = to_simple_string(ptime(boost::posix_time::second_clock::local_time())); string mensaDatumString = std::to_string(mensaDatum.date().year()) + "-" + mensaDatum.date().month().as_short_string() + "-" + @@ -15,7 +22,7 @@ Handler::MensaHandler::db_update_mensa_message(const int &mensaID, const ptime & sqdb::QueryStr str; db.Query(str.Format( SQDB_MAKE_TEXT("update mensa set Message = '%s', LastModified = '%s' where ID = %i and Datum = '%s';"), - message.c_str(), newTime.c_str(), mensaID, mensaDatumString.c_str())).Next(); + messageFromJSON.c_str(), newTime.c_str(), mensaID, mensaDatumString.c_str())).Next(); return true; } @@ -49,7 +56,7 @@ Handler::MensaHandler::db_get_mensa_message(const int &mensaID, const ptime &men if (s.Next()) { int ID = s.GetField(0); auto tmpData = crow::json::load(s.GetField(1).GetString()); - string Message = tmpData.; + auto Message = tmpData; string Datum = s.GetField(2); string LastModified = s.GetField(3); @@ -57,7 +64,7 @@ Handler::MensaHandler::db_get_mensa_message(const int &mensaID, const ptime &men ptime LMDate(boost::posix_time::time_from_string(LastModified)); out.ID = ID; - out.Message = Message; + out.Message.push(Message); out.Datum = mensaDatum; out.LastModified = LMDate; return out; @@ -108,6 +115,8 @@ std::vector<crow::json::wvalue> Handler::MensaHandler::getEssen(const int mensa_ std::vector<crow::json::wvalue> Handler::MensaHandler::read_mensa_message_from_file(const int &mensa_id_file) { std::vector<crow::json::wvalue> reply_vec; + crow::json::wvalue test; + string s; bool serious = false; @@ -249,7 +258,12 @@ Handler::MensaHandler::getEssenOnline(int mensa_ID, boost::posix_time::ptime dat return reply_vec; } - db_insert_mensa_message(mensa_ID, datumEssen, crow::json::dump(read_mensa_message_from_file(mensa_ID))); + std::string jsonMessage; + for (auto &mes : read_mensa_message_from_file(mensa_ID)){ + jsonMessage.append(crow::json::dump(mes)); + } + + db_insert_mensa_message(mensa_ID, datumEssen, jsonMessage); return parseEssen(db_get_mensa_message(mensa_ID, datumEssen)); } |