Add WorkList Module.
This commit is contained in:
86
src/dialogs/GetWorkListDialog.cpp
Normal file
86
src/dialogs/GetWorkListDialog.cpp
Normal file
@@ -0,0 +1,86 @@
|
||||
#include "GetWorkListDialog.h"
|
||||
|
||||
#include <QVBoxLayout>
|
||||
#include <QPushButton>
|
||||
#include <QLabel>
|
||||
|
||||
#include "components/ULineEdit.h"
|
||||
#include "action/GetWorkListAction.h"
|
||||
#include "action/ActionCreator.h"
|
||||
|
||||
GetWorkListDialog::GetWorkListDialog(QSqlTableModel* aSqlModel, QWidget* aParent, Qt::WindowFlags aFlags)
|
||||
: AsyncActionDialog(ActionCreator::getAsyncAction<GetWorkListAction>("GetWorkListAction"),"Work List", aParent, aFlags)
|
||||
, mAccessionNumber(new ULineEdit(mContentWidget))
|
||||
, mPatientId(new ULineEdit(mContentWidget))
|
||||
, mErrorLabel(new QLabel(mContentWidget))
|
||||
{
|
||||
initializeContentWidgets();
|
||||
GetWorkListAction* action = qobject_cast<GetWorkListAction*>(getAction());
|
||||
if (action != nullptr)
|
||||
{
|
||||
action->setSqlModel(aSqlModel);
|
||||
}
|
||||
}
|
||||
|
||||
GetWorkListDialog::~GetWorkListDialog()
|
||||
{
|
||||
}
|
||||
|
||||
void GetWorkListDialog::initializeContentWidgets()
|
||||
{
|
||||
QVBoxLayout* contentLayout = new QVBoxLayout(mContentWidget);
|
||||
//Accession Nummber
|
||||
QLabel* accessionNumText = new QLabel(mContentWidget);
|
||||
accessionNumText->setText(tr("Accession Nummber"));
|
||||
contentLayout->addWidget(accessionNumText);
|
||||
contentLayout->addWidget(mAccessionNumber);
|
||||
QLabel* endLine1 = new QLabel(mContentWidget);
|
||||
endLine1->setObjectName("endline");
|
||||
contentLayout->addWidget(endLine1);
|
||||
|
||||
//PatientId
|
||||
QLabel* patientIdText = new QLabel(mContentWidget);
|
||||
patientIdText->setText(tr("Patient ID"));
|
||||
contentLayout->addWidget(patientIdText);
|
||||
contentLayout->addWidget(mPatientId);
|
||||
QLabel* endLine2 = new QLabel(mContentWidget);
|
||||
endLine2->setObjectName("endline");
|
||||
contentLayout->addWidget(endLine2);
|
||||
|
||||
//ErrorLabel
|
||||
contentLayout->addWidget(mErrorLabel);
|
||||
mErrorLabel->setObjectName("warn");
|
||||
mErrorLabel->hide();
|
||||
}
|
||||
|
||||
bool GetWorkListDialog::updateReferenceData()
|
||||
{
|
||||
QString accessionNum = mAccessionNumber->text();
|
||||
QString patientId = mPatientId->text();
|
||||
if (accessionNum.isEmpty() && patientId.isEmpty())
|
||||
{
|
||||
mErrorLabel->setText(tr("Accession Number and Patient Id is Empty."));
|
||||
mErrorLabel->show();
|
||||
return false;
|
||||
}
|
||||
GetWorkListAction* action = qobject_cast<GetWorkListAction*>(getAction());
|
||||
if (action == nullptr)
|
||||
{
|
||||
mErrorLabel->setText(tr("Unknow Error. code:001001001"));
|
||||
return false;
|
||||
}
|
||||
action->setWorkListQueryData(WorkListQueryData(accessionNum, patientId));
|
||||
return AsyncActionDialog::updateReferenceData();
|
||||
}
|
||||
|
||||
void GetWorkListDialog::handleFinishedAction(const ActionResult& aResult)
|
||||
{
|
||||
if (aResult.Code == Failed)
|
||||
{
|
||||
mErrorLabel->setText(aResult.Message);
|
||||
mContentWidget->show();
|
||||
mBtnWidget->show();
|
||||
mErrorLabel->show();
|
||||
}
|
||||
AsyncActionDialog::handleFinishedAction(aResult);
|
||||
}
|
||||
Reference in New Issue
Block a user