#include "markerhelper.h" #include #include #include #include #include #include #include MarkerHelper::MarkerHelper() { m_manager = new QNetworkAccessManager(this); } void MarkerHelper::startSimulation(QString replayId) { } void MarkerHelper::postObject(QString replayId,int id, double lat, double lng, QString status, QString partie) { // Erstelle das GeoJSON-Objekt QString sidic; if(status == "damaged") { sidic = "10061000001212000000"; // SIDIC CODE FOR SMYBOL ( DAMAGED ) } else if (status == "destroyed") { sidic = "10031500001202000000"; // SIDIC CODE FOR SMYBOL ( DESTROYED ) } else if (status == "fully_capable") { sidic = "30031020000000000000"; // SIDIC CODE FOR SYMBOL ( FULLY_CAPALE ) } QJsonObject geoJson; geoJson.insert("type", "Feature"); QJsonObject geometry; geometry.insert("type", "Point"); QJsonArray coordinates; coordinates.append(lng); coordinates.append(lat); geometry.insert("coordinates", coordinates); QJsonObject properties; properties.insert("id", id); properties.insert("timestamp", QDateTime::currentMSecsSinceEpoch()); properties.insert("replay_id", replayId); properties.insert("parties", partie); properties.insert("sidic", sidic); geoJson.insert("properties", properties); geoJson.insert("geometry", geometry); QJsonDocument jsonDoc(geoJson); QByteArray jsonData = jsonDoc.toJson(); QNetworkRequest request; request.setUrl(QUrl("http://localhost:8080/objects")); request.setHeader(QNetworkRequest::ContentTypeHeader, "application/json"); QSslConfiguration sslConfig = QSslConfiguration::defaultConfiguration(); sslConfig.setPeerVerifyMode(QSslSocket::VerifyNone); request.setSslConfiguration(sslConfig); QNetworkReply *reply = m_manager->post(request, jsonData); connect(reply, &QNetworkReply::finished, [reply] { if (reply->error() == QNetworkReply::NoError) { QByteArray response = reply->readAll(); // Verarbeite die Antwort } else { qDebug() << "Error sending GeoJSON:" << reply->errorString(); } reply->deleteLater(); }); }