Compare commits

...

3 Commits

Author SHA1 Message Date
1e271201c5 Set version to 1.5.5. 2024-11-21 09:15:33 +01:00
da66d75a45 getPSAInstalled():
call ptuPackagesVersion. Convert returned JSON-array into JsonObject
	to be appended to CMD_SENDVERSION.
2024-11-21 09:14:05 +01:00
7accabfa53 Add variables for handling ptu-package-versions and append corresponding data
to CMD_SENDVERSION.
2024-11-21 09:12:35 +01:00
4 changed files with 51 additions and 4 deletions

View File

@ -141,7 +141,12 @@ DEFINES += QT_DEPRECATED_WARNINGS
# 1.5.1 : Fix: do not use cleanPath() on a url-address. # 1.5.1 : Fix: do not use cleanPath() on a url-address.
# 1.5.2 : Remove .ipk and .gz files in /var/cache/opkg. # 1.5.2 : Remove .ipk and .gz files in /var/cache/opkg.
# 1.5.3 : Build customer_(id) name without right justification. # 1.5.3 : Build customer_(id) name without right justification.
VERSION="1.5.3" # 1.5.4 : Try to run opkg-commands even under some error conditions (failure
# of customerEnvironment(), filesToUpdate() or
# syncCustomerRepositoryAndFS().
# 1.5.5 : Call into binary ptuPackageVersion to get installed package
# versions.
VERSION="1.5.5"
# PLANNED TODOS: # PLANNED TODOS:
# 1: Das Repository wird repariert bwz. neu geklont. Unabhaengig vom WAIT. # 1: Das Repository wird repariert bwz. neu geklont. Unabhaengig vom WAIT.
# 2: Wenn der WAIT-Button aktiv ist, dann wird ein Repository repariert (neu # 2: Wenn der WAIT-Button aktiv ist, dann wird ein Repository repariert (neu

View File

@ -690,7 +690,8 @@ QString IsmasClient::updateOfPSASendVersion(PSAInstalled const &psa) {
"\"libTCP_ZVT_CCPlugin.so\" : {" "\"libTCP_ZVT_CCPlugin.so\" : {"
"\"VERSION\" : \"%s\"" "\"VERSION\" : \"%s\""
"}" "}"
"}" "},"
"\"PTU-PACKAGE-VERSIONS\" : %s"
"}", "}",
psa.versionInfo.reason.toStdString().c_str(), psa.versionInfo.reason.toStdString().c_str(),
psa.versionInfo.created.toStdString().c_str(), psa.versionInfo.created.toStdString().c_str(),
@ -801,9 +802,11 @@ QString IsmasClient::updateOfPSASendVersion(PSAInstalled const &psa) {
psa.pluginVersion.mobilisisCalculatePriceConfigUi.toStdString().c_str(), psa.pluginVersion.mobilisisCalculatePriceConfigUi.toStdString().c_str(),
psa.pluginVersion.prmCalculatePrice.toStdString().c_str(), psa.pluginVersion.prmCalculatePrice.toStdString().c_str(),
psa.pluginVersion.prmCalculatePriceConfigUi.toStdString().c_str(), psa.pluginVersion.prmCalculatePriceConfigUi.toStdString().c_str(),
psa.pluginVersion.tcpZVT.toStdString().c_str()); psa.pluginVersion.tcpZVT.toStdString().c_str(),
qInfo() << buf; psa.ptuPackageVersion.toStdString().c_str());
qInfo() << buf;
return buf; return buf;
} }

View File

@ -77,6 +77,8 @@ struct PSAInstalled {
DC2C print[32]; DC2C print[32];
QString ptuPackageVersion;
explicit PSAInstalled() { explicit PSAInstalled() {
tariff.name = "N/A"; tariff.name = "N/A";
tariff.version = "N/A"; tariff.version = "N/A";

View File

@ -18,6 +18,7 @@
#include <Qt> #include <Qt>
#include <QScopedPointer> #include <QScopedPointer>
#include <QRegularExpression> #include <QRegularExpression>
#include <QJsonArray>
#include "message_handler.h" #include "message_handler.h"
#include <DeviceController/interfaces.h> #include <DeviceController/interfaces.h>
@ -1461,5 +1462,41 @@ PSAInstalled Worker::getPSAInstalled() {
} }
} }
psaInstalled.ptuPackageVersion = "{}";
if (QFile::exists("/usr/bin/ptuPackageVersions")) {
Command c("/usr/bin/ptuPackageVersions -i -o json");
if (c.execute(m_workingDirectory)) {
QString r = c.getCommandResult();
// ptuPackageVersions returns a json-array
QJsonArray const &ja = QJsonDocument::fromJson(r.remove(QRegExp("\\n")).toUtf8()).array();
if (!ja.empty()) {
// transform the array into an object, containing the objects
// of the array (christian needs it this way)
QJsonObject o;
foreach (QJsonValue const &value, ja) {
if (value.isObject()) {
QJsonObject obj = value.toObject();
QStringList keys = obj.keys();
if (!keys.isEmpty()) {
QString const &k = obj.keys().first();
QJsonValue const &v = obj.value(k);
o.insert(k, v);
}
}
}
psaInstalled.ptuPackageVersion =
QJsonDocument(o).toJson(QJsonDocument::Compact);
} else {
qCritical() << __func__ << ":" << __LINE__
<< "ERROR array return by ptuPackageVersions empty";
}
} else {
qCritical() << __func__ << ":" << __LINE__
<< "ERROR executing ptuPackageVersions";
}
}
return psaInstalled; return psaInstalled;
} }