Add Anonymous mode

This commit is contained in:
kradchen
2023-09-15 11:42:40 +08:00
parent 6c5734396a
commit 3799130487
20 changed files with 467 additions and 116 deletions

View File

@@ -32,6 +32,7 @@ ADD_EVENT_VALUE(InvokeOperationEnd)\
ADD_EVENT_VALUE(PromptDialogOpen)\
ADD_EVENT_VALUE(GlobalBannerMessage)\
ADD_EVENT_VALUE(ReloadLanguage)\
ADD_EVENT_VALUE(AnonymousModeChanged)\
ADD_EVENT_VALUE(WarnStateFlagChange)\
ADD_EVENT_VALUE(GUIErrorRaise)\
ADD_EVENT_VALUE(DeviceInfoRaise)\

View File

@@ -10,7 +10,11 @@
#include "components/SlideTableView.h"
#include "db/SQLHelper.h"
#include "json/jsonobject.h"
#include "device/DeviceManager.h"
#include "event/EventCenter.h"
#include "ScanSearchCriteriaForm.h"
#include "ReconStateDelegate.h"
#include "ReconScanTimeDelegate.h"
@@ -62,7 +66,7 @@ ReconFormWidget::ReconFormWidget(QWidget *parent)
connect(mSearchWidget, &ScanSearchCriteriaForm::searchFilterUpdated, this, &ReconFormWidget::updateSearchFilter);
connect(mBtnDelete, &QToolButton::clicked, this, &ReconFormWidget::deleteReconRecord);
connect(mRefreshTimer, &QTimer::timeout, this, &ReconFormWidget::refreshTransferprogress);
connect(EventCenter::Default(), &EventCenter::AnonymousModeChanged, this, &ReconFormWidget::updateSearchFilter);
}
void ReconFormWidget::initTableView(QHBoxLayout *contentLayout)
@@ -119,7 +123,10 @@ void ReconFormWidget::initDataModel()
void ReconFormWidget::updateSearchFilter()
{
mModel->setFilter(mSearchWidget->getSearchFilter());
bool anonymousMode = JsonObject::Instance()->getAnonymousMode();
QString filterString = mSearchWidget->getSearchFilter();
filterString += filterString.isEmpty()?(anonymousMode?"PatientID='000000001'":""):(anonymousMode?" and PatientID='000000001'":"");
mModel->setFilter(filterString);
mModel->select();
}
@@ -185,3 +192,4 @@ void ReconFormWidget::refreshTransferprogress()
mScanTable->viewport()->update();
}
}

View File

@@ -4,6 +4,9 @@
#include <QDate>
#include "components/ListBox.h"
#include "dialogs/DialogManager.h"
#include "event/EventCenter.h"
#include "json/jsonobject.h"
ScanSearchCriteriaForm::ScanSearchCriteriaForm(QWidget *parent)
: QWidget(parent)
@@ -36,6 +39,12 @@ ScanSearchCriteriaForm::ScanSearchCriteriaForm(QWidget *parent)
ui->holder1->setObjectName("endSpaceLine");
ui->mPatientIDEdit->setEnabled(!JsonObject::Instance()->getAnonymousMode());
ui->mPatientNameEdit->setEnabled(!JsonObject::Instance()->getAnonymousMode());
ui->mAccessionNumberEdit->setEnabled(!JsonObject::Instance()->getAnonymousMode());
ui->mClearButton->setEnabled(!JsonObject::Instance()->getAnonymousMode());
ui->mRetrieveButton->setEnabled(!JsonObject::Instance()->getAnonymousMode());
connect(ui->mLBEndDate, &QToolButton::clicked, [=]()
{
DialogResult result = DialogManager::Default()->requestSelectDate(ui->mLBEndDate->text());
@@ -88,6 +97,27 @@ ScanSearchCriteriaForm::ScanSearchCriteriaForm(QWidget *parent)
connect(ui->mBtnDates, &QPushButton::clicked, this, &ScanSearchCriteriaForm::updateSearchFilter);
connect(ui->mRetrieveButton, &QPushButton::clicked, this, &ScanSearchCriteriaForm::updateSearchFilter);
connect(ui->mClearButton, &QPushButton::clicked, this, &ScanSearchCriteriaForm::clearCriteria);
connect(EventCenter::Default(),&EventCenter::AnonymousModeChanged,[=](){
bool AnonymousMode = JsonObject::Instance()->getAnonymousMode();
if (AnonymousMode){
ui->mPatientIDEdit->clear();
ui->mPatientIDEdit->setEnabled(false);
ui->mPatientNameEdit->clear();
ui->mPatientNameEdit->setEnabled(false);
ui->mAccessionNumberEdit->clear();
ui->mAccessionNumberEdit->setEnabled(false);
ui->mClearButton->setEnabled(false);
ui->mRetrieveButton->setEnabled(false);
}
else{
ui->mPatientIDEdit->setEnabled(true);
ui->mPatientNameEdit->setEnabled(true);
ui->mAccessionNumberEdit->setEnabled(true);
ui->mClearButton->setEnabled(true);
ui->mRetrieveButton->setEnabled(true);
}
});
}
ScanSearchCriteriaForm::~ScanSearchCriteriaForm()

View File

@@ -24,11 +24,23 @@ PatientInformationForm::~PatientInformationForm()
}
void PatientInformationForm::setPatientInformation(PatientInformation* information) {
mUI->lbl_ID->setText(information->ID);
mUI->lbl_Date->setText(information->BirthDate);
mUI->lbl_Name->setText(information->Name);
mUI->lbl_Sex->setText(information->Sex);
mUI->lbl_Acc->setText(information->AccessionNumber);
if(information){
mUI->lbl_ID->setText(information->ID);
mUI->lbl_Date->setText(information->BirthDate);
mUI->lbl_Name->setText(information->Name);
mUI->lbl_Sex->setText(information->Sex);
mUI->lbl_Acc->setText(information->AccessionNumber);
}
else{
mUI->lbl_ID->clear();
mUI->lbl_Date->clear();
mUI->lbl_Name->clear();
mUI->lbl_Sex->clear();
mUI->lbl_Acc->clear();
}
if (mInfo){
mInfo->deleteLater();
}
mInfo = information;
}

View File

@@ -295,13 +295,18 @@ void ScanFormWidget::renderPreviewData(const QObject* /*sender*/,const QObject *
void ScanFormWidget::initEvents() {//Events---------------------------------------------------------------
connect(EventCenter::Default(), &EventCenter::PatientSelected, [=](QObject* sender, QObject* data) {
if (mUnInited)
if (data)
{
mBtnScan->setEnabled(true);
mBtnRefresh->setEnabled(true);
mBtnPreview->setEnabled(true);
mBtnStop->setEnabled(true);
mUnInited = false;
}
else{
mBtnScan->setEnabled(false);
mBtnRefresh->setEnabled(false);
mBtnPreview->setEnabled(false);
mBtnStop->setEnabled(false);
}
mPatInf->setPatientInformation((PatientInformation*)data);
});
@@ -310,9 +315,6 @@ void ScanFormWidget::initEvents() {//Events-------------------------------------
});
connect(EventCenter::Default(), &EventCenter::ResponsePreview, this,&ScanFormWidget::renderLoading);
connect(EventCenter::Default(), &EventCenter::ResponsePreviewData, this,&ScanFormWidget::renderPreviewData);
connect(EventCenter::Default(), &EventCenter::PatientSelected, [=](QObject* sender, QObject* data) {
mPatInf->setPatientInformation((PatientInformation*)data);
});
connect(EventCenter::Default(), &EventCenter::ReloadLanguage, this, &ScanFormWidget::reloadLanguage);
connect(EventCenter::Default(), &EventCenter::DeviceErrorRaise, [=](QObject* parent, QObject* msg){
printf("signal:%d\r\n",senderSignalIndex());

View File

@@ -48,6 +48,7 @@ mUI(new Ui::PatientDetailForm)
connect(mBtnDelete, &QToolButton::clicked, [=](){
emit deleteClicked();
});
setBtnEnable(false);
}
void PatientDetailForm::reloadLanguage() {
@@ -72,6 +73,8 @@ void PatientDetailForm::setPatientInformation(PatientInformation* information) {
mUI->lblAccno->setText(tr("AccNo: ")+information->AccessionNumber);
mStore = *information;
setBtnEnable(true);
}
}
@@ -94,6 +97,12 @@ void PatientDetailForm::confirmModeOn(int protocol)
}
void PatientDetailForm::setBtnEnable(bool enable)
{
mBtnDelete->setEnabled(enable);
mBtnEdit->setEnabled(enable);
}
void PatientDetailForm::storePatientInformation() {
}

View File

@@ -20,6 +20,7 @@ public:
}
void clearPatientInformation();
void confirmModeOn(int protocol);
void setBtnEnable(bool enable);
signals:
void hideBtnClicked();
void editClicked();

View File

@@ -14,6 +14,7 @@
#include <QDebug>
#include "components/SlideTableView.h"
#include "json/jsonobject.h"
#include "db/SQLHelper.h"
#include "event/EventCenter.h"
#include "dialogs/DialogManager.h"
@@ -62,16 +63,23 @@ SelectFormWidget::SelectFormWidget(QWidget* parent)
});
// event ReloadLanguage slot;
connect(EventCenter::Default(), &EventCenter::ReloadLanguage, this, &SelectFormWidget::reloadLanguage);
connect(EventCenter::Default(), &EventCenter::AnonymousModeChanged, this, &SelectFormWidget::updateDataByAnonymousMode);
//first prepare buttons!
prepareButtons(false);
}
void SelectFormWidget::prepareButtons(bool disableALL) {
bool anonymousMode = JsonObject::Instance()->getAnonymousMode();
bool stateFlag = (mPatTable->currentIndex().row() >= 0);
mBtnAdd->setEnabled(!anonymousMode && !disableALL);
mBtnWorklist->setEnabled(!anonymousMode && !disableALL);
patientDetailForm->setBtnEnable(!anonymousMode && stateFlag && !disableALL);
// if (mBtnAdd)mBtnEdit->setEnabled(!anonymousMode && stateFlag && !disableALL);
// if (mBtnAdd)mBtnDelete->setEnabled(!anonymousMode&& stateFlag && !disableALL);
mBtnSelect->setEnabled(stateFlag && !disableALL);
// mBtnDelete->setEnabled(stateFlag && !disableALL);
// mBtnEdit->setEnabled(stateFlag && !disableALL);
mBtnAdd->setEnabled(!disableALL);
}
void SelectFormWidget::initGeneralButtons(QHBoxLayout *layout) {
@@ -231,7 +239,26 @@ void SelectFormWidget::initTableView(QHBoxLayout *contentLayout) {// TableView f
void SelectFormWidget::initDataModel() {//TODO:单独初始化预防SQL错误
mModel = SQLHelper::getTable("Patient");
mModel->sort(mModel->record().indexOf("AddDate"), Qt::DescendingOrder);
mModel->setEditStrategy(QSqlTableModel::OnManualSubmit);
bool anonymousMode = JsonObject::Instance()->getAnonymousMode();
if (anonymousMode)
{
mModel->setFilter("1=2");
}
mModel->select();
if (anonymousMode)
{
mModel->insertRow(0);
mModel->setData(mModel->index(0,0),"000000001");
mModel->setData(mModel->index(0,1),"AnonymousPatient");
mModel->setData(mModel->index(0,2),"");
mModel->setData(mModel->index(0,3),"AnonymousPatient");
mModel->setData(mModel->index(0,4),"2000-01-01");
mModel->setData(mModel->index(0,5),"M");
mModel->setData(mModel->index(0,6),"2000-01-01");
mModel->setData(mModel->index(0,7),"");
}
mModel->setHeaderData(1, Qt::Horizontal, "ID");
mModel->setHeaderData(2, Qt::Horizontal, tr("AccessionNumber"));
mModel->setHeaderData(3, Qt::Horizontal, tr("Name"));
@@ -264,8 +291,37 @@ void SelectFormWidget::reloadLanguage(){
//mBtnWorklist->setText(tr("Worklist"));
mBtnAdd->setText(tr("Add"));
mBtnEdit->setText(tr("Edit"));
mBtnDelete->setText(tr("Delete"));
mBtnSelect->setText(tr("Select"));
}
void SelectFormWidget::updateDataByAnonymousMode(){
bool anonymousMode = JsonObject::Instance()->getAnonymousMode();
EventCenter::Default()->triggerEvent(GUIEvents::PatientSelected,this,nullptr);
if (anonymousMode)
{
mModel->setFilter("1=2");
mModel->select();
mModel->insertRow(0);
mModel->setData(mModel->index(0,0),"000000001");
mModel->setData(mModel->index(0,1),"AnonymousPatient");
mModel->setData(mModel->index(0,2),"");
mModel->setData(mModel->index(0,3),"AnonymousPatient");
mModel->setData(mModel->index(0,4),"2000-01-01");
mModel->setData(mModel->index(0,5),"M");
mModel->setData(mModel->index(0,6),"2000-01-01");
mModel->setData(mModel->index(0,7),"");
mPatTable->selectRow(0);
mModel->selectRow(0);
}
else{
mModel->revertAll();
mModel->setFilter("");
mModel->select();
if (mModel->rowCount()>0){
mPatTable->selectRow(0);
mModel->selectRow(0);
}
}
prepareButtons(false);
}

View File

@@ -20,13 +20,14 @@ Q_OBJECT
public:
explicit SelectFormWidget(QWidget *parent = nullptr);
~SelectFormWidget() override = default;;
~SelectFormWidget() override = default;
public slots:
void updateDataByAnonymousMode();
private:
QString selectedPatientUID;
void
setPatientDetail(const SlideTableView *table, const QSqlTableModel *model, PatientDetailForm *edit_patient) const;
void setPatientDetail(const SlideTableView *table, const QSqlTableModel *model, PatientDetailForm *edit_patient) const;
QToolButton *mBtnAccount;
QToolButton *mBtnWorklist;

View File

@@ -15,6 +15,7 @@
#include "SystemSettingForm.h"
#include "AccountTableForm.h"
#include "event/EventCenter.h"
#include "json/jsonobject.h"
#include "AboutForm.h"
#include "UserOperationLogForm.h"
@@ -37,6 +38,8 @@ SettingFormWidget::SettingFormWidget(QWidget* aParent, Qt::WindowFlags f)
widget->item(i)->setTextAlignment(Qt::AlignCenter);
}
layout->addWidget(widget);
//reset visible for AnonymousMode
widget->item(4)->setHidden(JsonObject::Instance()->getAnonymousMode());
QStackedWidget* stackedWidget = new QStackedWidget(ui->contentWidget);
QWidget* spacerLine = new QWidget(this);
@@ -64,6 +67,9 @@ SettingFormWidget::SettingFormWidget(QWidget* aParent, Qt::WindowFlags f)
connect(widget, &QListWidget::currentRowChanged, [=](int rowindex) {
stackedWidget->setCurrentIndex(rowindex);
});
connect(EventCenter::Default(), &EventCenter::AnonymousModeChanged, [=]() {
widget->item(4)->setHidden(JsonObject::Instance()->getAnonymousMode());
});
connect(EventCenter::Default(), &EventCenter::ReloadLanguage, [=]() {
QStringList menus;
menus << tr("General") << tr("Account") << tr("System") << tr("About") << tr("Operation Log");

View File

@@ -31,8 +31,8 @@ SystemSettingForm::SystemSettingForm(QWidget* parent)
//style init
mUI->btnDICOM->setObjectName("btnDICOM");
mUI->btnNetwork->setObjectName("btnNetwork");
mUI->swt_verify->setChecked(true);
mUI->lbl_verify->setFixedWidth(100);
mUI->AnonyButton->setChecked(JsonObject::Instance()->getAnonymousMode());
// mUI->lbl_verify->setFixedWidth(100);
//data init
mUI->btnPro->setText(JsonObject::Instance()->defaultProtocal());
@@ -82,11 +82,9 @@ SystemSettingForm::SystemSettingForm(QWidget* parent)
mDiskInfoCaller->start();
//connection
connect(mUI->swt_verify, &ImageSwitch::clicked, [=]() {
if (mUI->swt_verify->getChecked())
{
////
}
connect(mUI->AnonyButton, &ImageSwitch::clicked, [=]() {
JsonObject::Instance()->setAnonymousMode(mUI->AnonyButton->getChecked());
EventCenter::Default()->triggerEvent(AnonymousModeChanged,this,nullptr);
});
connect(scanConfirmButton, &ImageSwitch::clicked, [=]() {
JsonObject::Instance()->setScanConfirm(scanConfirmButton->getChecked());
@@ -141,7 +139,7 @@ SystemSettingForm::SystemSettingForm(QWidget* parent)
mUI->retranslateUi(this);
mUI->btnPro->setText(JsonObject::Instance()->defaultProtocal());
mUI->btnFlt->setText(JsonObject::Instance()->defaultFilter());
mUI->swt_verify->setChecked(true);
mUI->AnonyButton->setChecked(JsonObject::Instance()->getAnonymousMode());
updateStorageSize();
updateStorageUsed();
});

View File

@@ -58,25 +58,13 @@
</item>
<item row="2" column="0">
<widget class="QLabel" name="lbl_verify">
<property name="minimumSize">
<size>
<width>100</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Auto Verify</string>
<string>Anonymous Mode</string>
</property>
</widget>
</item>
<item row="2" column="2">
<widget class="ImageSwitch" name="swt_verify" native="true">
<property name="minimumSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<widget class="ImageSwitch" name="AnonyButton" >
</widget>
</item>
<item row="3" column="0">

View File

@@ -539,6 +539,16 @@ void JsonObject::setCompleteNotify(bool val) {
setBool("general","CompleteNotify", val, true);
}
bool JsonObject::getAnonymousMode()
{
return getBool("general","AnonymousMode");
}
void JsonObject::setAnonymousMode(bool val)
{
setBool("general","AnonymousMode", val, true);
}
QStringList JsonObject::getScreenSaverInfomation()
{
return QString(getJsonString("screensaver", "content")).split(";");

View File

@@ -94,6 +94,9 @@ public:
bool getCompleteNotify();
void setCompleteNotify(bool val);
bool getAnonymousMode();
void setAnonymousMode(bool val);
const char* getEmptyScanID();
void setEmptyScanID(const char* id);

View File

@@ -700,6 +700,9 @@ QWidget#SearchCriteriaForm QPushButton {
min-height: 56px;
max-height: 56px;
}
QWidget#SearchCriteriaForm QPushButton:disabled {
color:#505050;
}

View File

@@ -35,10 +35,6 @@
<source>Qt 5.12.0</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Loading...</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Copyright (c) 1994-2021, OFFIS e.V.</source>
<translation type="unfinished"></translation>
@@ -55,6 +51,22 @@
<source>Copyright © 2017-2020 Zhejiang Equilibrium Nine Medical Equipment Co., Ltd. All Rights Reversed</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>USCT Software V0.1.0</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Reconstruction Software Loading...</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Operation System Information Loading...</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>DICOM Library Information Loading...</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AccountFormDialog</name>
@@ -178,6 +190,17 @@
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AdminSPwdDialog</name>
<message>
<source>Please give this code to producer for getting the SP Code to reset admininistrator&apos;s password!</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Input the SP Code here</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AlertDialog</name>
<message>
@@ -231,6 +254,30 @@
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>DeviceManager</name>
<message>
<source>Patient can leave.
</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Data is currently being transmitted, please shut down later.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Shut down failed, please push emergency button to shutdown.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Recon disconnected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Open pump failed.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>DicomCfgDialog</name>
<message>
@@ -328,6 +375,10 @@
<source>M</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Accession Number</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>GUIFormBaseDialog</name>
@@ -350,6 +401,19 @@
<source>OK</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Stop</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cancle</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Confirm stop the scan.
</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>GeneralForm</name>
@@ -437,22 +501,10 @@
<source>Search Query Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>DB Unknow Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>WorkList Search Failed</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Same Patient Existed</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>DB Error,Patient Write Failed</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>GetWorkListDialog</name>
@@ -472,6 +524,14 @@
<source>Unknow Error. code:001001001</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Accession Number</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>DB Error,Patient Write Failed</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>InputModeMenu</name>
@@ -657,6 +717,30 @@
<source>Login</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>New password:%1</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Reset success</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Shut down now ?</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Shut Down</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>System mode Notice</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Anonymous Mode active!</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindow</name>
@@ -673,11 +757,15 @@
<translation type="unfinished"></translation>
</message>
<message>
<source>Verify</source>
<source>Settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Settings</source>
<source>Recon</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Shut down failed, please push emergency button to shutdown.</source>
<translation type="unfinished"></translation>
</message>
</context>
@@ -786,10 +874,6 @@
<source>Form</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>ID</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Name</source>
<translation type="unfinished"></translation>
@@ -798,10 +882,6 @@
<source>Date Of Birth</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Comment</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Gender</source>
<translation type="unfinished"></translation>
@@ -814,18 +894,58 @@
<source>Male</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>...</source>
<translation type="unfinished"></translation>
</message>
<message>
<source> Hide Panel</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Other</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Patient Information</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>111</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Edit</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Delete</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>PatientID: </source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Add Date: </source>
<translation type="unfinished"></translation>
</message>
<message>
<source>AccNo: </source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Scan with this Patient?</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Protocol: </source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Left</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Right</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>PatientInformationForm</name>
@@ -899,10 +1019,6 @@
<source>Refresh</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>PatientName</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Scan Time</source>
<translation type="unfinished"></translation>
@@ -912,22 +1028,102 @@
<translation type="unfinished"></translation>
</message>
<message>
<source>OperatorName</source>
<source>State</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>State</source>
<source>Patient ID</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Accession Number</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Patient Name</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Operator Name</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>No data selected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Alert</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Can not delete this record before pacs succeed.</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Delete recon record with patient &quot;%1&quot; ?</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Confirm</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Can&apos;t delete selected record , db error!</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>RollingMessageWidget</name>
<name>ReconStateDelegate</name>
<message>
<source>Message of warn!</source>
<source>Wait to transfer</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Message2 of warn!</source>
<source>Transfering</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Transfer failed</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Transfer completed</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Recon create failed</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Wait to recon</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>No empty scan data</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Recon ing</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Recon failed</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Recon succeed</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>PACS failed</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>PACS succeed</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Unknow</source>
<translation type="unfinished"></translation>
</message>
</context>
@@ -1043,10 +1239,6 @@ parameters
<source>Patient ID</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Scan State</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Patient Name</source>
<translation type="unfinished"></translation>
@@ -1056,7 +1248,7 @@ parameters
<translation type="unfinished"></translation>
</message>
<message>
<source>Query</source>
<source>Retrieve</source>
<translation type="unfinished"></translation>
</message>
</context>
@@ -1078,10 +1270,6 @@ parameters
<source>Edit</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Delete</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Select</source>
<translation type="unfinished"></translation>
@@ -1126,6 +1314,22 @@ parameters
<source>Can&apos;t delete selected Patient , db submit error!</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>ShutDown</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Shut down now ?</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Shut Down</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>AccessionNumber</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SettingFormWidget</name>
@@ -1145,6 +1349,17 @@ parameters
<source>About</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Operation Log</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>ShutdownWidget</name>
<message>
<source>shut down</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SystemSettingForm</name>
@@ -1156,10 +1371,6 @@ parameters
<source>Protocal</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Auto Verify</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>IP</source>
<translation type="unfinished"></translation>
@@ -1196,6 +1407,10 @@ parameters
<source>Get disk total size fail!</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Anonymous Mode</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>TabFormWidget</name>

View File

@@ -1083,7 +1083,7 @@
</message>
<message>
<location filename="../windows/MainWindow.cpp" line="122"/>
<location filename="../windows/MainWindow.cpp" line="304"/>
<location filename="../windows/MainWindow.cpp" line="306"/>
<source>Settings</source>
<translation></translation>
</message>
@@ -1386,7 +1386,7 @@
</message>
<message>
<location filename="../../build/ui_PatientInformationForm.h" line="128"/>
<location filename="../forms/scan/PatientInformationForm.cpp" line="45"/>
<location filename="../forms/scan/PatientInformationForm.cpp" line="57"/>
<source>LEFT ONLY</source>
<translation></translation>
</message>
@@ -1399,7 +1399,7 @@
<translation type="obsolete"></translation>
</message>
<message>
<location filename="../forms/scan/PatientInformationForm.cpp" line="49"/>
<location filename="../forms/scan/PatientInformationForm.cpp" line="61"/>
<source>RIGHT ONLY</source>
<translation></translation>
</message>
@@ -1581,25 +1581,25 @@
<name>ScanFormWidget</name>
<message>
<location filename="../forms/scan/ScanFormWidget.cpp" line="63"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="329"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="331"/>
<source>Protocol</source>
<translation></translation>
</message>
<message>
<location filename="../forms/scan/ScanFormWidget.cpp" line="70"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="323"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="325"/>
<source>LEFT</source>
<translation></translation>
</message>
<message>
<location filename="../forms/scan/ScanFormWidget.cpp" line="71"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="324"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="326"/>
<source>RIGHT</source>
<translation></translation>
</message>
<message>
<location filename="../forms/scan/ScanFormWidget.cpp" line="133"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="325"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="327"/>
<source>Empty Scan</source>
<translation type="unfinished"></translation>
</message>
@@ -1607,7 +1607,7 @@
<location filename="../forms/scan/ScanFormWidget.cpp" line="137"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="174"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="214"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="334"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="336"/>
<source>Drainage</source>
<translation type="unfinished"></translation>
</message>
@@ -1619,7 +1619,7 @@
<message>
<location filename="../forms/scan/ScanFormWidget.cpp" line="178"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="207"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="334"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="336"/>
<source>Drainaging</source>
<translation type="unfinished"></translation>
</message>
@@ -1629,33 +1629,33 @@
</message>
<message>
<location filename="../forms/scan/ScanFormWidget.cpp" line="134"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="326"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="328"/>
<source>Preview</source>
<translation></translation>
</message>
<message>
<location filename="../forms/scan/ScanFormWidget.cpp" line="135"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="327"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="329"/>
<source>Stop</source>
<translation></translation>
</message>
<message>
<location filename="../forms/scan/ScanFormWidget.cpp" line="136"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="328"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="330"/>
<source>Scan</source>
<translation></translation>
</message>
<message>
<location filename="../forms/scan/ScanFormWidget.cpp" line="101"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="330"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="332"/>
<source>Preview Parameters</source>
<translation></translation>
</message>
<message>
<location filename="../forms/scan/ScanFormWidget.cpp" line="106"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="116"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="332"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="333"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="334"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="335"/>
<source>some settings
parameters
@@ -1664,7 +1664,7 @@ parameters
</message>
<message>
<location filename="../forms/scan/ScanFormWidget.cpp" line="111"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="331"/>
<location filename="../forms/scan/ScanFormWidget.cpp" line="333"/>
<source>Scan Parameters</source>
<translation></translation>
</message>

View File

@@ -172,6 +172,10 @@ void LoginDialog::doLogin()
void LoginDialog::accept()
{
if (JsonObject::Instance()->getAnonymousMode()){
DialogManager::Default()->requestAlertMessage(tr("Anonymous Mode active!"),
DialogButtonMode::OkOnly,tr("System mode Notice"));
}
QDialog::accept();
clearInputData();
mIsRunning = false;

View File

@@ -24,6 +24,8 @@
#include "models/User.h"
#include "appvals/AppGlobalValues.h"
#include "components/UTextEdit.h"
#include "json/jsonobject.h"
MainWindow::MainWindow(QWidget* aParent)
: QMainWindow(aParent)
@@ -131,7 +133,9 @@ void MainWindow::processShutdownDmsFailed()
triggerError(tr("Shut down failed, please push emergency button to shutdown."));
}
void MainWindow::switchToScanTab() { mTabWidget->setCurrentIndex(1); }
void MainWindow::switchToScanTab(QObject* sender, QObject* data) {
if (data)mTabWidget->setCurrentIndex(1);
}
void MainWindow::centerWidgetHide()
{

View File

@@ -69,7 +69,7 @@ private:
QThread* mThread;
bool mIsDebugMode;
void switchToScanTab();
void switchToScanTab(QObject* sender, QObject* data);
void reloadLanguage() ;