Add set pacs settings.

This commit is contained in:
sunwen
2023-08-24 15:11:18 +08:00
parent 4cf795d368
commit 236e1e84a2
4 changed files with 87 additions and 50 deletions

View File

@@ -4,11 +4,13 @@
#include <QPushButton>
#include <QToolButton>
#include <QGridLayout>
#include <QThread>
#include "dialogs/DialogManager.h"
#include "dialogs/MultyMessageDialogManager.h"
#include "json/jsonobject.h"
#include "event/EventCenter.h"
#include "device/DeviceManager.h"
#include "recon/ReconManager.h"
#include "json/cmdhelper.h"
#include "components/ListBox.h"
@@ -100,8 +102,12 @@ SystemSettingForm::SystemSettingForm(QWidget* parent)
}
});
connect(mUI->btnDICOM, &QToolButton::clicked, [=]() {
DialogManager::Default()->requestEditDicomConfig();
connect(mUI->btnDICOM, &QToolButton::clicked, [&]() {
if(DialogManager::Default()->requestEditDicomConfig() == QDialog::Accepted)
{
auto server = JsonObject::Instance()->getServer(JsonObject::PACS);
emit pacsSettingsSaved(server.name, server.ae, server.ip, server.port.toInt());
}
});
@@ -139,12 +145,14 @@ SystemSettingForm::SystemSettingForm(QWidget* parent)
updateStorageSize();
updateStorageUsed();
});
}
connect(ReconManager::getInstance(), &ReconManager::setPacsSettingsResponsed, this, &SystemSettingForm::processPacsSettingsResponsed);
connect(this, &SystemSettingForm::pacsSettingsSaved, ReconManager::getInstance(), &ReconManager::setPacsSettings, Qt::QueuedConnection);
}
SystemSettingForm::~SystemSettingForm()
{
mDiskInfoCaller->terminate();
delete mDiskInfoCaller;
}
@@ -160,6 +168,7 @@ void SystemSettingForm::updateStorageUsed()
mUI->lbl_used->setText(tr("Get disk used size fail!"));
}
}
void SystemSettingForm::updateStorageSize()
{
//bool flag = AppGlobalValues::StorageFlag();
@@ -176,3 +185,8 @@ void SystemSettingForm::updateStorageSize()
mUI->lbl_size->setText(tr("Get disk total size fail!"));
}
}
void SystemSettingForm::processPacsSettingsResponsed(bool aResult, const QVariant& aMessage)
{
MultyMessageDialogManager::getInstance()->raiseDialog(aMessage.toString(), aResult ? MessageLevel::Sucess : MessageLevel::Error);
}

View File

@@ -16,6 +16,12 @@ public:
explicit SystemSettingForm(QWidget* aParent = nullptr);
~SystemSettingForm();
signals:
void pacsSettingsSaved(const QString& aClientAETitle, const QString& aServerAETitle, const QString& aServerIP, int aServerPort);
private slots:
void processPacsSettingsResponsed(bool aResult, const QVariant& aMessage);
private:
void updateStorageSize();
void updateStorageUsed();

View File

@@ -94,3 +94,18 @@ void ReconManager::queryReconStatus(const QStringList& aScanIDs)
}
emit queryReconStateResponsed(true, QVariant::fromValue(result));
}
void ReconManager::setPacsSettings(const QString& aClientAETitle, const QString& aServerAETitle, const QString& aServerIP, int aServerPort)
{
PACSSetting settings = {aClientAETitle.toStdString(), aServerAETitle.toStdString(), aServerIP.toStdString(), aServerPort};
auto response = mReconClient->SetPACSSetting(settings);
if(response.bad())
{
QString msg = QString("Set PACS settings failed : ") + response.error().data();
qDebug()<< msg;
emit setPacsSettingsResponsed(false, QVariant::fromValue(msg));
return;
}
emit setPacsSettingsResponsed(true, QVariant::fromValue(QString("Set PACS settings succeed.")));
}

View File

@@ -23,6 +23,7 @@ public slots:
void createEmptyScan(const QString& aScanID, const QString& aPath);
void createScan(const QString& aScanID, const QString& aPatientID, const QString& aReferenceID, const QString& aPath);
void queryReconStatus(const QStringList& aScanIDs);
void setPacsSettings(const QString& aClientAETitle, const QString& aServerAETitle, const QString& aServerIP, int aServerPort);
private:
void init();
@@ -31,6 +32,7 @@ signals:
void createEmptyScanResponsed(bool aResult, const QString& aScanID, const QString& aMessage = "");
void createScanResponsed(bool aResult, const QString& aScanID, const QString& aMessage = "");
void queryReconStateResponsed(bool aResult, const QVariant& aData);
void setPacsSettingsResponsed(bool aResult, const QVariant& aMessage);
private:
Recon::ReconClient* mReconClient;