Compare commits
5 Commits
Author | SHA1 | Date | |
---|---|---|---|
686e113c3a | |||
6ddfbbfd9e | |||
7bfbdc0f07 | |||
dd591fdd23 | |||
18c7b656c3 |
@@ -53,7 +53,7 @@ DEFINES += QT_DEPRECATED_WARNINGS
|
||||
# local filesystem, json-files will be downloaded to firmware.
|
||||
# The device-controller firmware will be handled in a later version.
|
||||
# 1.3.15: Bug fixes found during testing.
|
||||
# Don't disable Exit-button during update-process.
|
||||
# Do not disable Exit-button during update-process.
|
||||
# Removed worker-thread with an own event-loop: only the GUI thread
|
||||
# has an event loop. Tested JSON-downloads several times successfully
|
||||
# (using the slave lib where the CA helper tool was active as master).
|
||||
@@ -81,7 +81,9 @@ DEFINES += QT_DEPRECATED_WARNINGS
|
||||
# Fix the path-names of the json-files and the device-controller.
|
||||
# Set automatic download of json-file in ATBUpdateTool.ini file for
|
||||
# a fresh clone of the repository.
|
||||
VERSION="1.3.23"
|
||||
# 1.3.23 Added a 'break' to prevent a possible endless loop when checking if
|
||||
# the device is alive.
|
||||
VERSION="1.3.24"
|
||||
|
||||
# PLANNED TODOS:
|
||||
# 1: Das Repository wird repariert bwz. neu geklont. Unabhaengig vom WAIT.
|
||||
@@ -116,6 +118,31 @@ VERSION="1.3.23"
|
||||
# Tariff-Files syncen (d.h. nur wenn noch kein Repo vorhanden ist), und
|
||||
# zwar auch ohne WAIT-Button.
|
||||
# 11: Das Edit-Fenster teilen um die Anzeige zu verbessern.
|
||||
# 12: Bei einem Update muss immer ersichtlich sein, warum es ueberhaupt
|
||||
# angestossen wurde. Steht kein "WAIT" im ISMAS-Trigger, dann kann man
|
||||
# davon ausgehen, dass es sich um ein automatisches Update handelt.
|
||||
# In jedem Fall wird bei einem automatischen Update, bei dem der WAIT-
|
||||
# Button nicht gesetzt war, ein "OK" gesendet, falls sonst nichts weiter
|
||||
# zu tun ist. Beachte aber: wir haben auch noch den Fall, dass eine SD-
|
||||
# Karte gesteckt wird. In diesem Fall wird ein komplettes Update gefahren,
|
||||
# und zwar explizit auch ohne WAIT-Button.
|
||||
# Am Ende eines Updates steht im ISMAS entweder ein "OK" oder ein "FAIL".
|
||||
# 13: SendLastVersion: fuer jedes erfolgreich installierte Paket eine
|
||||
# Send-Last-Version-Nachricht an ISMAS. Dadurch entsteht im ISMAS eine
|
||||
# History (Christian darueber informieren).
|
||||
# 14: Installiert werden nur Dateien, die neu sind oder geaendert wurden.
|
||||
# Nicht etwas Dateien, die geloescht wurden: sicherstellen, dass man hier
|
||||
# immer direkt im repository arbeitet, nicht auf dem Filesystem.
|
||||
# Ferner: der DeviceController heisst dc2c.bin, auch fuer die Jsons
|
||||
# sind Dtandard-Namen vergeben. Alternativ: alle vorhandenen Jsons
|
||||
# werden runtergeladen: Thomas ist eh fuer deren Inhalte verantworlich.
|
||||
# WICHTIG: immer ueberpruefen, ob die Dateien im Customer-Repository
|
||||
# wirklich die richtigen Dateien sind.
|
||||
# 15: Der WAIT-Button laesst sich auf WAIT zuruecksetzen (etwa wenn git
|
||||
# selber Probleme hatte).
|
||||
# 16: Der Download-Thread sollte sowohl die auto-Variable auf false setzen
|
||||
# als auch den cycle-Timer stoppen, damit sichergestellt ist, dass der
|
||||
# Download des DC nicht gestoert wird.
|
||||
|
||||
|
||||
win32 {
|
||||
|
BIN
doc/ATBUpdateTool4.pdf
Normal file
BIN
doc/ATBUpdateTool4.pdf
Normal file
Binary file not shown.
@@ -793,6 +793,152 @@ QString IsmasClient::updateOfPSASendVersion(PSAInstalled const &psa) {
|
||||
return buf;
|
||||
}
|
||||
|
||||
#if 0
|
||||
// prepare
|
||||
QString IsmasClient::sendLastVersion(UPDATE_COMPONENT updateComponent,
|
||||
PSAInstalled const &psa) {
|
||||
static char buf[4096*2];
|
||||
memset(buf, 0, sizeof(buf));
|
||||
|
||||
switch (updateComponent) {
|
||||
case UPDATE_COMPONENT::TARIFF:
|
||||
snprintf(buf, sizeof(buf)-1,
|
||||
"{"
|
||||
"\"VERSION_INFO\" : {"
|
||||
"\"UPDATE_REASON\":\"%s\","
|
||||
"\"CREATED\":\"%s\","
|
||||
"\"GIT_COMMIT\":\"%s\""
|
||||
"},"
|
||||
"\"TARIFF\" : {"
|
||||
"\"VERSION\" : \"%s\","
|
||||
"\"PROJECT\" : \"%s\","
|
||||
"\"ZONE\" : %d,"
|
||||
"\"INFO\" : \"%s\","
|
||||
"\"SIZE\" : %d\""
|
||||
"},"
|
||||
"}",
|
||||
psa.tariff.versionInfo.reason.toStdString().c_str(),
|
||||
psa.tariff.versionInfo.created.toStdString().c_str(),
|
||||
psa.tariff.versionInfo.lastCommit.toStdString().c_str(),
|
||||
|
||||
psa.tariff.version.toStdString().c_str(),
|
||||
psa.tariff.project.toStdString().c_str(),
|
||||
psa.tariff.zone,
|
||||
psa.tariff.info.toStdString().c_str(),
|
||||
psa.tariff.size);
|
||||
break;
|
||||
case UPDATE_COMPONENT::SOFTWARE_ATBQT:
|
||||
break;
|
||||
case UPDATE_COMPONENT::SOFTWARE_APISM:
|
||||
break;
|
||||
case UPDATE_COMPONENT::SOFTWARE_ATB_UPDATE_TOOL:
|
||||
break;
|
||||
case UPDATE_COMPONENT::CONFIG_PTU5_CPU_SERIAL:
|
||||
break;
|
||||
case UPDATE_COMPONENT::CONFIG_DEVICE_CONTROLLER:
|
||||
break;
|
||||
case UPDATE_COMPONENT::CONFIG_PRINTER:
|
||||
break;
|
||||
case UPDATE_COMPONENT::CONFIG_BNA:
|
||||
break;
|
||||
case UPDATE_COMPONENT::PLUGIN_ATB_DEVICE_CONTROLLER:
|
||||
break;
|
||||
case UPDATE_COMPONENT::PLUGIN_INGENICO_CC:
|
||||
break;
|
||||
case UPDATE_COMPONENT::PLUGIN_MOBILISIS_CALC_PRICE:
|
||||
break;
|
||||
case UPDATE_COMPONENT::PLUGIN_MOBILISIS_CALC_PRICE_UI:
|
||||
break;
|
||||
case UPDATE_COMPONENT::PLUGIN_PRM_CALC_PRICE:
|
||||
break;
|
||||
case UPDATE_COMPONENT::PLUGIN_PRM_CALC_PRICE_UI:
|
||||
break;
|
||||
case UPDATE_COMPONENT::PLUGIN_TCP_ZVT_CC:
|
||||
break;
|
||||
case UPDATE_COMPONENT::OPKG_COMMANDS:
|
||||
break;
|
||||
case UPDATE_COMPONENT::HARDWARE_DEVICES:
|
||||
break;
|
||||
case UPDATE_COMPONENT::OS:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_CASH_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_CONF_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_DEVICE_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT01_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT02_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT03_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT04_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT05_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT06_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT07_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT08_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT09_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT10_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT11_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT12_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT13_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT14_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT15_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT16_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT17_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT18_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT19_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT20_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT21_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT22_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT23_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT24_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT25_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT26_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT27_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT28_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT29_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT30_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT31_JSON:
|
||||
break;
|
||||
case UPDATE_COMPONENT::DC2C_PRINT32_JSON:
|
||||
break;
|
||||
}
|
||||
|
||||
qInfo() << buf;
|
||||
|
||||
return buf;
|
||||
}
|
||||
#endif
|
||||
|
||||
QString IsmasClient::updateOfPSAContinues(QString currentStage,
|
||||
QString currentStageInfo,
|
||||
QString const &version) {
|
||||
|
@@ -14,6 +14,7 @@ struct PSAInstalled {
|
||||
} versionInfo;
|
||||
|
||||
struct Tariff {
|
||||
// VersionInfo versionInfo;
|
||||
QString name;
|
||||
QString version;
|
||||
QString project;
|
||||
@@ -31,6 +32,7 @@ struct PSAInstalled {
|
||||
} hw;
|
||||
|
||||
struct Opkg {
|
||||
// VersionInfo versionInfo;
|
||||
int size;
|
||||
QString blob;
|
||||
QString lastCommit;
|
||||
@@ -38,6 +40,7 @@ struct PSAInstalled {
|
||||
} opkg;
|
||||
|
||||
struct DC {
|
||||
// VersionInfo versionInfo;
|
||||
QString versionHW;
|
||||
QString versionSW;
|
||||
QString gitBlob;
|
||||
@@ -62,6 +65,7 @@ struct PSAInstalled {
|
||||
} pluginVersion;
|
||||
|
||||
struct DC2C {
|
||||
// VersionInfo versionInfo;
|
||||
QString name;
|
||||
QString blob;
|
||||
int size;
|
||||
@@ -194,8 +198,68 @@ public:
|
||||
QString jsonParseFailed(int resultCode, QString reason, QString const &version = QString());
|
||||
std::optional<QString> finalResult(int resultCode, QString reason, QString const &version = QString());
|
||||
|
||||
// legacy
|
||||
QString updateOfPSASendVersion(PSAInstalled const &psa);
|
||||
|
||||
#if 0
|
||||
enum class UPDATE_COMPONENT {
|
||||
TARIFF,
|
||||
SOFTWARE_ATBQT,
|
||||
SOFTWARE_APISM,
|
||||
SOFTWARE_ATB_UPDATE_TOOL,
|
||||
CONFIG_PTU5_CPU_SERIAL,
|
||||
CONFIG_DEVICE_CONTROLLER,
|
||||
CONFIG_PRINTER,
|
||||
CONFIG_BNA,
|
||||
PLUGIN_ATB_DEVICE_CONTROLLER,
|
||||
PLUGIN_INGENICO_CC,
|
||||
PLUGIN_MOBILISIS_CALC_PRICE,
|
||||
PLUGIN_MOBILISIS_CALC_PRICE_UI,
|
||||
PLUGIN_PRM_CALC_PRICE,
|
||||
PLUGIN_PRM_CALC_PRICE_UI,
|
||||
PLUGIN_TCP_ZVT_CC,
|
||||
OPKG_COMMANDS,
|
||||
HARDWARE_DEVICES,
|
||||
OS,
|
||||
DC2C_CASH_JSON,
|
||||
DC2C_CONF_JSON,
|
||||
DC2C_DEVICE_JSON,
|
||||
DC2C_PRINT01_JSON,
|
||||
DC2C_PRINT02_JSON,
|
||||
DC2C_PRINT03_JSON,
|
||||
DC2C_PRINT04_JSON,
|
||||
DC2C_PRINT05_JSON,
|
||||
DC2C_PRINT06_JSON,
|
||||
DC2C_PRINT07_JSON,
|
||||
DC2C_PRINT08_JSON,
|
||||
DC2C_PRINT09_JSON,
|
||||
DC2C_PRINT10_JSON,
|
||||
DC2C_PRINT11_JSON,
|
||||
DC2C_PRINT12_JSON,
|
||||
DC2C_PRINT13_JSON,
|
||||
DC2C_PRINT14_JSON,
|
||||
DC2C_PRINT15_JSON,
|
||||
DC2C_PRINT16_JSON,
|
||||
DC2C_PRINT17_JSON,
|
||||
DC2C_PRINT18_JSON,
|
||||
DC2C_PRINT19_JSON,
|
||||
DC2C_PRINT20_JSON,
|
||||
DC2C_PRINT21_JSON,
|
||||
DC2C_PRINT22_JSON,
|
||||
DC2C_PRINT23_JSON,
|
||||
DC2C_PRINT24_JSON,
|
||||
DC2C_PRINT25_JSON,
|
||||
DC2C_PRINT26_JSON,
|
||||
DC2C_PRINT27_JSON,
|
||||
DC2C_PRINT28_JSON,
|
||||
DC2C_PRINT29_JSON,
|
||||
DC2C_PRINT30_JSON,
|
||||
DC2C_PRINT31_JSON,
|
||||
DC2C_PRINT32_JSON,
|
||||
};
|
||||
QString sendLastVersion(UPDATE_COMPONENT comp, PSAInstalled const &psa);
|
||||
#endif
|
||||
|
||||
private:
|
||||
static void printDebugMessage(int port, QString const &clientIP, int clientPort,
|
||||
QString const &message);
|
||||
|
@@ -123,6 +123,7 @@ Update::Update(Worker *worker,
|
||||
// must deliver 'true', only then are all data from hwapi valid
|
||||
if (--tries < 0) {
|
||||
qCritical() << "ERROR!!! DC DATA NOT VALID -> CA-MASTER-PLUGIN NOT CONNECTED";
|
||||
break;
|
||||
}
|
||||
m_hw->dc_autoRequest(true);
|
||||
QThread::msleep(500);
|
||||
|
Reference in New Issue
Block a user