diff --git a/src/UserOperationLogForm.cpp b/src/UserOperationLogForm.cpp index 7db35a9..7c7adc7 100644 --- a/src/UserOperationLogForm.cpp +++ b/src/UserOperationLogForm.cpp @@ -3,7 +3,7 @@ #include #include #include -#include "log/UserOperationLog.h" +#include "log/LogManager.h" #include "log/LogFileTableModel.h" #include #include @@ -13,6 +13,7 @@ #include "src/dialogs/SelectDialog.h" #include "windows/MainWindow.h" #include "event/EventCenter.h" + QString fileNameToDate(QString fileName) { return fileName.split("log/UserOperationLog/")[1].replace("-op.log", ""); @@ -25,51 +26,51 @@ QString dateToFileName(QString date) UserOperationLogForm::UserOperationLogForm(QWidget* parent) : QWidget (parent) { - layout = new QVBoxLayout(this); + mLayout = new QVBoxLayout(this); QWidget* header = new QWidget(this); QHBoxLayout* headerLayout = new QHBoxLayout(header); QLabel* logdate = new QLabel(tr("Log Date:")); headerLayout->addWidget(logdate); - btn = new QPushButton(header); - headerLayout->addWidget(btn, 0, Qt::AlignLeft); + mDateButton = new QPushButton(header); + headerLayout->addWidget(mDateButton, 0, Qt::AlignLeft); headerLayout->addSpacerItem(new QSpacerItem(20, 20, QSizePolicy::Expanding)); - model = new LogFileTableModel(this); - model->setHeader(QStringList()<< tr("Operation Date") << tr("Operation Time") << tr("User") << tr("Operation")); + mModel = new LogFileTableModel(this); + mModel->setHeader(QStringList()<< tr("Operation Date") << tr("Operation Time") << tr("User") << tr("Operation")); loadUserOperationLog(); - table = new SlideTableView(this); - layout->addWidget(header); - layout->addWidget(table); - table->setModel(model); - table->setAlternatingRowColors(true); - table->setSelectionMode(QAbstractItemView::NoSelection); - table->setEditTriggers(QAbstractItemView::NoEditTriggers); - table->verticalHeader()->setDefaultSectionSize(38); - table->horizontalHeader()->setStretchLastSection(true); - table->horizontalHeader()->setSectionResizeMode(QHeaderView::Fixed); - table->setColumnWidth(0, 250); - table->setColumnWidth(1, 250); - table->setColumnWidth(2, 200); - table->verticalScrollBar()->setStyleSheet("QScrollBar:vertical { width: 40px; }");; + mLogTable = new SlideTableView(this); + mLayout->addWidget(header); + mLayout->addWidget(mLogTable); + mLogTable->setModel(mModel); + mLogTable->setAlternatingRowColors(true); + mLogTable->setSelectionMode(QAbstractItemView::NoSelection); + mLogTable->setEditTriggers(QAbstractItemView::NoEditTriggers); + mLogTable->verticalHeader()->setDefaultSectionSize(38); + mLogTable->horizontalHeader()->setStretchLastSection(true); + mLogTable->horizontalHeader()->setSectionResizeMode(QHeaderView::Fixed); + mLogTable->setColumnWidth(0, 250); + mLogTable->setColumnWidth(1, 250); + mLogTable->setColumnWidth(2, 200); + mLogTable->verticalScrollBar()->setStyleSheet("QScrollBar:vertical { width: 40px; }");; //暂时先放构造函数,之后需要移除,等需要时再调用 - connect(btn, &QPushButton::clicked, [=]() { + connect(mDateButton, &QPushButton::clicked, [=]() { auto files = UserOperationLog::getHistoryLogFiles(); QStringList dates; for (auto f : files) { dates << fileNameToDate(f); } - if (!dialog) { - dialog = new SelectDialog(this); - dialog->setWindowModality(Qt::WindowModal); + if (!mSelectDateDialog) { + mSelectDateDialog = new SelectDialog(this); + mSelectDateDialog->setWindowModality(Qt::WindowModal); } - dialog->setValues(dates); - if (!selectedDateStr.isEmpty()) dialog->setSelectedValue(selectedDateStr); - if (dialog->exec() == QDialog::Accepted) + mSelectDateDialog->setValues(dates); + if (!mSelectedDateStr.isEmpty()) mSelectDateDialog->setSelectedValue(mSelectedDateStr); + if (mSelectDateDialog->exec() == QDialog::Accepted) { - QString date = dialog->getSelectedValue(); + QString date = mSelectDateDialog->getSelectedValue(); QString f = dateToFileName(date); this->loadUserOperationLog(f, date); } @@ -77,32 +78,32 @@ UserOperationLogForm::UserOperationLogForm(QWidget* parent) connect(EventCenter::Default(), &EventCenter::ReloadLanguage, [=]() { logdate->setText(tr("Log Date:")); - model->setHeader(QStringList()<< tr("Operation Date") << tr("Operation Time") << tr("User") << tr("Operation")); + mModel->setHeader(QStringList()<< tr("Operation Date") << tr("Operation Time") << tr("User") << tr("Operation")); }); + } UserOperationLogForm::~UserOperationLogForm() { } - -void UserOperationLogForm::loadUserOperationLog() { - - QString filePath = UserOperationLog::Default()->currentLogFile(); - btn->setText(fileNameToDate(filePath)); +void UserOperationLogForm::loadUserOperationLog() +{ + QString filePath = LogManager::getInstance()->getCurrentUserOperationLogFile(); + mDateButton->setText(fileNameToDate(filePath)); loadUserOperationLog(filePath, fileNameToDate(filePath)); - selectedDateStr = fileNameToDate(filePath); + mSelectedDateStr = fileNameToDate(filePath); } void UserOperationLogForm::loadUserOperationLog(const QString& fileName, const QString& date) { - selectedDateStr = date; - model->setFileName(dateToFileName(date)); - btn->setText(date); + mSelectedDateStr = date; + mModel->setFileName(dateToFileName(date)); + mDateButton->setText(date); } void UserOperationLogForm::showEvent(QShowEvent *aEvent) { - loadUserOperationLog("", selectedDateStr); + loadUserOperationLog("", mSelectedDateStr); QWidget::showEvent(aEvent); } diff --git a/src/UserOperationLogForm.h b/src/UserOperationLogForm.h index 26465e2..6e4acd7 100644 --- a/src/UserOperationLogForm.h +++ b/src/UserOperationLogForm.h @@ -19,12 +19,12 @@ protected: void showEvent(QShowEvent *aEvent) override; private: - QTableView* table = nullptr; - QPushButton* btn = nullptr; - LogFileTableModel* model = nullptr; - SelectDialog* dialog = nullptr; - QVBoxLayout* layout = nullptr; - QString selectedDateStr; + QTableView* mLogTable = nullptr; + QPushButton* mDateButton = nullptr; + LogFileTableModel* mModel = nullptr; + SelectDialog* mSelectDateDialog = nullptr; + QVBoxLayout* mLayout = nullptr; + QString mSelectedDateStr; }; diff --git a/src/device/DeviceManager.cpp b/src/device/DeviceManager.cpp index 0a32e95..bf06bca 100644 --- a/src/device/DeviceManager.cpp +++ b/src/device/DeviceManager.cpp @@ -24,7 +24,7 @@ #include "dialogs/MultyMessageDialog.h" #include "UsctStateManager.h" #include "utilities/ScanProcessSequence.h" -#include "log/SystemOperationLog.h" +#include "log/LogManager.h" #define TRIGGER_EVENT EventCenter::Default()->triggerEvent @@ -468,6 +468,7 @@ void DeviceManager::stopFullScan() if(!result.mIsSucessful) { THROW_ERROR(result.mData); + prepareFinishScan(false, ""); return; } @@ -646,6 +647,7 @@ QString DeviceManager::getSoftwareVersion() void DeviceManager::processReceiveDMSInfoResult(int aServerID, int aActionID, const QString& aContents) { qDebug()<<"processReceiveDMSInfoResult " < GUI : %1-%2, Message:%3").arg(aServerID).arg(aActionID).arg(aContents)); switch(aServerID) { case USRV_SCAN : @@ -772,7 +774,6 @@ void DeviceManager::processAlarm(const QString& aAlarm) int alarmCode = jsonObj["code"].toInt(); QString alarm = tr("Error: ") + QString::number(alarmCode); qDebug()<<"processAlarm : "<= 400 && alarmCode < 500) { if(mIsScanning) @@ -807,7 +808,7 @@ void DeviceManager::processGetSoftwareVersion(const QString& aSoftwareVersion) void DeviceManager::scanTimeout() { - prepareFinishScan(false, "Dms connection timeout!"); + prepareFinishScan(false, tr("DMS connection error")); } DeviceStatus DeviceManager::getDeviceStatus() @@ -860,7 +861,6 @@ bool DeviceManager::startFullScan(const QString& aPatientInfo) return false; } mCurrentScanMeasurementID = jsonObj["measurement id"].toString(); - //LOG_SYS_OPERATION("Start full scan succeed.") return true; } @@ -1341,7 +1341,6 @@ bool DeviceManager::startAutoLocate() emit startAutoLocateResult(true); mEffectivePositionCount = 0; mGetAutoLocatePositionTimer = startTimer(1000); - //LOG_SYS_OPERATION("Start auto locate succeed.") return true; } } diff --git a/src/device/DmsSyncAction.cpp b/src/device/DmsSyncAction.cpp index 92465a9..a35b7c3 100644 --- a/src/device/DmsSyncAction.cpp +++ b/src/device/DmsSyncAction.cpp @@ -1,5 +1,6 @@ #include "DmsSyncAction.h" #include "dms_mq.h" +#include "log/LogManager.h" #include #include @@ -45,8 +46,10 @@ DmsSyncActionResult DmsSyncAction::execute() DmsSyncActionResult result(false, "mq error"); return result; } + LOG_SYS_OPERATION(QString("GUI -> DMS : %1-%2, Message:%3").arg(mServerId).arg(mActionId).arg(mSendData)); if(!waitUntilSignalReceived()) { + LOG_SYS_OPERATION(QString("GUI -> DMS : %1-%2, Time out.").arg(mServerId).arg(mActionId)); DmsSyncActionResult result(false, "time out"); return result; } diff --git a/src/device/UsctStateManager.cpp b/src/device/UsctStateManager.cpp index f449e21..5a8e2e6 100644 --- a/src/device/UsctStateManager.cpp +++ b/src/device/UsctStateManager.cpp @@ -1,7 +1,7 @@ #include "UsctStateManager.h" #include "event/EventCenter.h" -#include "log/SystemOperationLog.h" +#include "log/LogManager.h" #include "appvals/AppGlobalValues.h" UsctStateManager* UsctStateManager::getInstance() diff --git a/src/dialogs/AccountFormDialog.cpp b/src/dialogs/AccountFormDialog.cpp index 43805e6..b8671e8 100644 --- a/src/dialogs/AccountFormDialog.cpp +++ b/src/dialogs/AccountFormDialog.cpp @@ -9,7 +9,7 @@ #include #include "event/EventCenter.h" -#include "log/UserOperationLog.h" +#include "log/LogManager.h" #include "db/SQLHelper.h" #include "models/User.h" #include "components/ULineEdit.h" diff --git a/src/dialogs/ChangePasswordFormDialog.cpp b/src/dialogs/ChangePasswordFormDialog.cpp index 7483b8c..f7c1b0d 100644 --- a/src/dialogs/ChangePasswordFormDialog.cpp +++ b/src/dialogs/ChangePasswordFormDialog.cpp @@ -6,7 +6,7 @@ #include "components/ULineEdit.h" #include "models/User.h" -#include "log/UserOperationLog.h" +#include "log/LogManager.h" ChangePasswordFormDialog::ChangePasswordFormDialog(QWidget* parent, Qt::WindowFlags f) : GUIFormBaseDialog(parent, f) diff --git a/src/dialogs/GUIMessageDialog.cpp b/src/dialogs/GUIMessageDialog.cpp index 35df5f6..ca426c2 100644 --- a/src/dialogs/GUIMessageDialog.cpp +++ b/src/dialogs/GUIMessageDialog.cpp @@ -5,7 +5,7 @@ #include #include "event/EventCenter.h" -#include "log/UserOperationLog.h" +#include "log/LogManager.h" GUIMessageDialog::GUIMessageDialog(QWidget *parent) : QDialog(parent) diff --git a/src/dialogs/GetWorkListDialog.cpp b/src/dialogs/GetWorkListDialog.cpp index 21e4e44..55b3f76 100644 --- a/src/dialogs/GetWorkListDialog.cpp +++ b/src/dialogs/GetWorkListDialog.cpp @@ -16,7 +16,7 @@ #include "components/ULineEdit.h" #include "action/GetWorkListAction.h" #include "action/ActionCreator.h" -#include "log/UserOperationLog.h" +#include "log/LogManager.h" #include "event/EventCenter.h" GetWorkListDialog::GetWorkListDialog(QSqlTableModel* aSqlModel, QTableView* aTableView, QWidget* aParent, Qt::WindowFlags aFlags) diff --git a/src/dialogs/IpSettingsDialog.cpp b/src/dialogs/IpSettingsDialog.cpp index 712246e..52f4e7d 100644 --- a/src/dialogs/IpSettingsDialog.cpp +++ b/src/dialogs/IpSettingsDialog.cpp @@ -5,7 +5,7 @@ #include "utilities/InputFormatValidator.h" #include "device/networkmanager.h" #include "DialogManager.h" -#include "log/UserOperationLog.h" +#include "log/LogManager.h" #include #include diff --git a/src/dialogs/MppsSettingsDialog.cpp b/src/dialogs/MppsSettingsDialog.cpp index 5b0c0e7..abb6e1a 100644 --- a/src/dialogs/MppsSettingsDialog.cpp +++ b/src/dialogs/MppsSettingsDialog.cpp @@ -4,7 +4,7 @@ #include "components/ErrorLabel.h" #include "dialogs/DicomSettingsArea.h" #include "json/jsonobject.h" -#include "log/UserOperationLog.h" +#include "log/LogManager.h" #include diff --git a/src/dialogs/PacsSettingsDialog.cpp b/src/dialogs/PacsSettingsDialog.cpp index 42726ed..a1eac3b 100644 --- a/src/dialogs/PacsSettingsDialog.cpp +++ b/src/dialogs/PacsSettingsDialog.cpp @@ -1,7 +1,7 @@ #include "PacsSettingsDialog.h" #include "dialogs/DicomSettingsArea.h" #include "json/jsonobject.h" -#include "log/UserOperationLog.h" +#include "log/LogManager.h" #include "components/ErrorLabel.h" #include diff --git a/src/dialogs/ReconSettingsDialog.cpp b/src/dialogs/ReconSettingsDialog.cpp index b8ebd0e..15c6cc8 100644 --- a/src/dialogs/ReconSettingsDialog.cpp +++ b/src/dialogs/ReconSettingsDialog.cpp @@ -4,7 +4,7 @@ #include "dialogs/DicomSettingsArea.h" #include "json/jsonobject.h" #include "recon/ReconManager.h" -#include "log/UserOperationLog.h" +#include "log/LogManager.h" #include diff --git a/src/dialogs/WorklistSettingsDialog.cpp b/src/dialogs/WorklistSettingsDialog.cpp index c7c25ec..727e94c 100644 --- a/src/dialogs/WorklistSettingsDialog.cpp +++ b/src/dialogs/WorklistSettingsDialog.cpp @@ -3,7 +3,7 @@ #include "components/ErrorLabel.h" #include "dialogs/DicomSettingsArea.h" #include "json/jsonobject.h" -#include "log/UserOperationLog.h" +#include "log/LogManager.h" #include #include diff --git a/src/forms/scan/ScanFormWidget.cpp b/src/forms/scan/ScanFormWidget.cpp index 32cd274..e97d3f9 100644 --- a/src/forms/scan/ScanFormWidget.cpp +++ b/src/forms/scan/ScanFormWidget.cpp @@ -13,7 +13,7 @@ #include "forms/scan/PatientInformationForm.h" #include "event/EventCenter.h" #include "dialogs/DialogManager.h" -#include "log/UserOperationLog.h" +#include "log/LogManager.h" #include "json/jsonobject.h" #include "device/DeviceManager.h" #include "dicom/WorkListManager.h" diff --git a/src/forms/select/SelectFormWidget.cpp b/src/forms/select/SelectFormWidget.cpp index f8e36e0..7a1cc92 100644 --- a/src/forms/select/SelectFormWidget.cpp +++ b/src/forms/select/SelectFormWidget.cpp @@ -17,7 +17,7 @@ #include "db/SQLHelper.h" #include "event/EventCenter.h" #include "dialogs/DialogManager.h" -#include "log/UserOperationLog.h" +#include "log/LogManager.h" #include "components/VerticalTextToolButton.h" #include "PatientAddDateDelegate.h" #include "dicom/WorkListManager.h" diff --git a/src/forms/settings/AccountTableForm.cpp b/src/forms/settings/AccountTableForm.cpp index cdd54d3..4735d2b 100644 --- a/src/forms/settings/AccountTableForm.cpp +++ b/src/forms/settings/AccountTableForm.cpp @@ -11,7 +11,7 @@ #include "models/User.h" #include "components/SlideTableView.h" #include "event/EventCenter.h" -#include "log/UserOperationLog.h" +#include "log/LogManager.h" AccountTableForm::AccountTableForm(QWidget* aParent) : QWidget(aParent) diff --git a/src/forms/settings/GeneralForm.cpp b/src/forms/settings/GeneralForm.cpp index 4c801ec..65cd821 100644 --- a/src/forms/settings/GeneralForm.cpp +++ b/src/forms/settings/GeneralForm.cpp @@ -18,7 +18,7 @@ #include "components/ListBox.h" #include "components/ImageSwitch.h" #include "components/BatteryWidget.h" -#include "log/UserOperationLog.h" +#include "log/LogManager.h" #include "utilities/DiskInfoWorker.h" #include "utilities/GetLockScreenTimeHelper.h" #include "utilities/GetProtocalHelper.h" diff --git a/src/forms/settings/SystemCorrectionForm.cpp b/src/forms/settings/SystemCorrectionForm.cpp index 8aa18fb..50ad84d 100644 --- a/src/forms/settings/SystemCorrectionForm.cpp +++ b/src/forms/settings/SystemCorrectionForm.cpp @@ -2,7 +2,7 @@ #include "db/SQLHelper.h" #include "event/EventCenter.h" #include "dialogs/DialogManager.h" -#include "log/UserOperationLog.h" +#include "log/LogManager.h" #include #include diff --git a/src/log/LogManager.cpp b/src/log/LogManager.cpp new file mode 100644 index 0000000..0fdec7d --- /dev/null +++ b/src/log/LogManager.cpp @@ -0,0 +1,47 @@ +#include "LogManager.h" + +#include + +LogManager* LogManager::getInstance() +{ + static LogManager instance; + return &instance; +} + +LogManager::LogManager() + : QObject() + , mThread(new QThread()) + , mSysLog(new SystemOperationLog()) + , mUserLog(new UserOperationLog()) +{ + mSysLog->moveToThread(mThread); + mUserLog->moveToThread(mThread); + connect(this, &LogManager::doWriteSystemOperationLog, mSysLog, &SystemOperationLog::log); + connect(this, &LogManager::doWriteUserOperationLog, mUserLog, &UserOperationLog::log); + mThread->start(); +} + +LogManager::~LogManager() +{ + mThread->quit(); + mThread->wait(); + + delete mUserLog; + delete mSysLog; + mThread->deleteLater(); +} + +void LogManager::writeSystemOperationLog(const QString& aMessage) +{ + emit doWriteSystemOperationLog(aMessage, QDateTime::currentDateTime()); +} + +void LogManager::writeUserOperationLog(const QString& aMessage) +{ + emit doWriteUserOperationLog(aMessage); +} + +QString LogManager::getCurrentUserOperationLogFile() +{ + return mUserLog->currentLogFile(); +} diff --git a/src/log/LogManager.h b/src/log/LogManager.h new file mode 100644 index 0000000..1be5508 --- /dev/null +++ b/src/log/LogManager.h @@ -0,0 +1,41 @@ +#ifndef LOGMANAGER_H +#define LOGMANAGER_H + +#include + +#include "SystemOperationLog.h" +#include "UserOperationLog.h" + +class QThread; + +#define LOG_SYS_OPERATION(...)\ +LogManager::getInstance()->writeSystemOperationLog(__VA_ARGS__); + + +#define LOG_USER_OPERATION(...)\ +LogManager::getInstance()->writeUserOperationLog(__VA_ARGS__); + +class LogManager : public QObject +{ + Q_OBJECT +public: + static LogManager* getInstance(); + void writeSystemOperationLog(const QString& aMessage); + void writeUserOperationLog(const QString& aMessage); + QString getCurrentUserOperationLogFile(); + +signals: + void doWriteSystemOperationLog(const QString& aMessage, const QDateTime& aOperationDate); + void doWriteUserOperationLog(const QString& aMessage); + +private: + LogManager(); + ~LogManager(); + +private: + QThread* mThread; + SystemOperationLog* mSysLog; + UserOperationLog* mUserLog; +}; + +#endif // LOGMANAGER_H diff --git a/src/log/SystemOperationLog.cpp b/src/log/SystemOperationLog.cpp index d94f6c0..3d4721b 100644 --- a/src/log/SystemOperationLog.cpp +++ b/src/log/SystemOperationLog.cpp @@ -10,15 +10,9 @@ namespace const QString SYS_LOG_SUFFIX = "-sys.log"; } -SystemOperationLog* SystemOperationLog::getInstance() -{ - static SystemOperationLog instance; - return &instance; -} - - SystemOperationLog::SystemOperationLog() - : mCurrentFileName() + : QObject() + , mCurrentFileName() , mLogFile() , mStreamOut() { @@ -50,7 +44,7 @@ SystemOperationLog::~SystemOperationLog() void SystemOperationLog::reloadFile() { QString newFileName = LOG_DIR + QDate::currentDate().toString("/yyyy-MM-dd") + SYS_LOG_SUFFIX; - if (newFileName == mCurrentFileName && !AppGlobalValues::InProcessing().toBool()) return; + if (newFileName == mCurrentFileName) return; mLogFile.close(); mLogFile.setFileName(newFileName); if (mLogFile.exists()) @@ -64,9 +58,8 @@ void SystemOperationLog::reloadFile() mStreamOut.setDevice(&mLogFile); } -void SystemOperationLog::log(const QString &aOperationText) +void SystemOperationLog::log(const QString &aOperationText, const QDateTime& aOperationDate) { reloadFile(); - QDateTime now = QDateTime::currentDateTime(); - mStreamOut << now.toString(Qt::DateFormat::ISODateWithMs).replace("T","\t")<<"\t"< #include #include #include -#define LOG_SYS_OPERATION(...)\ -SystemOperationLog::getInstance()->log(__VA_ARGS__); - -class SystemOperationLog +class SystemOperationLog : public QObject { + Q_OBJECT public: - static SystemOperationLog* getInstance(); - void log(const QString& aOperationText); + SystemOperationLog(); + ~SystemOperationLog(); void reloadFile(); -private: - SystemOperationLog(); - ~SystemOperationLog(); +public slots: + void log(const QString& aOperationText, const QDateTime& aOperationDate); private: QString mCurrentFileName; diff --git a/src/log/UserOperationLog.cpp b/src/log/UserOperationLog.cpp index a117b52..6cd30cd 100644 --- a/src/log/UserOperationLog.cpp +++ b/src/log/UserOperationLog.cpp @@ -12,6 +12,24 @@ namespace const QString logDir = "./log/UserOperationLog"; } +UserOperationLog::UserOperationLog() + : QObject() + , currentFileName() + , logFile() + , out() +{ + init(); +} + +UserOperationLog::~UserOperationLog() +{ + if (logFile.isOpen()) + { + logFile.flush(); + logFile.close(); + } +} + void UserOperationLog::init() { QDir log_dir("./"); if (!log_dir.exists("log")) log_dir.mkdir("log"); @@ -44,20 +62,6 @@ QString addSpace(const char* str) return s; } - -QString getOperationName(UserOperation operation) -{ - switch (operation) { - #define ADD_OPERATION(name)\ - case name: return addSpace(#name); - USER_OPERATIONS() - #undef ADD_OPERATION - default: - return "unknow error"; - } - -} - void UserOperationLog::log(const QString& aOperationText) { reloadFile(); @@ -70,7 +74,7 @@ void UserOperationLog::log(const QString& aOperationText) void UserOperationLog::reloadFile() { QString newFileName = logDir + QDate::currentDate().toString("/yyyy-MM-dd")+QString("-op.log"); //inprocessing 暂时没有使用 - if (newFileName == currentFileName && !AppGlobalValues::InProcessing().toBool()) return; + if (newFileName == currentFileName) return; logFile.close(); logFile.setFileName(newFileName); if (logFile.exists()) diff --git a/src/log/UserOperationLog.h b/src/log/UserOperationLog.h index 2ec3489..606d582 100644 --- a/src/log/UserOperationLog.h +++ b/src/log/UserOperationLog.h @@ -1,53 +1,18 @@ #ifndef GUI_USEROPERATIONLOG_H #define GUI_USEROPERATIONLOG_H +#include #include #include #include -#define USER_OPERATIONS()\ -ADD_OPERATION(Login)\ -ADD_OPERATION(Logout)\ -ADD_OPERATION(ChangePassword)\ -ADD_OPERATION(ChangeUserName)\ -ADD_OPERATION(AddPatient)\ -ADD_OPERATION(ChangePatientInfo)\ -ADD_OPERATION(DeletePatient)\ -ADD_OPERATION(SelectPatient)\ -ADD_OPERATION(StartRefresh)\ -ADD_OPERATION(StopScan)\ -ADD_OPERATION(StopPreview)\ -ADD_OPERATION(StartPreview)\ -ADD_OPERATION(StartScan)\ -ADD_OPERATION(ConfirmError)\ -ADD_OPERATION(AdminChangeAcountInformation) - -#define LOG_USER_OPERATION(...)\ -UserOperationLog::Default()->log(__VA_ARGS__); - - -enum UserOperation{ -#define ADD_OPERATION(name) name,\ - - USER_OPERATIONS() -#undef ADD_OPERATION -}; -class UserOperationLog { +class UserOperationLog : public QObject +{ + Q_OBJECT public: - UserOperationLog(){} - ~UserOperationLog(){ - if (logFile.isOpen()) - { - logFile.flush(); - logFile.close(); - } - } - + UserOperationLog(); + ~UserOperationLog(); void init(); - static UserOperationLog* Default(){ - static UserOperationLog d; - return &d; - } static void cleanHistoryLog(); static QStringList getHistoryLogFiles(); diff --git a/src/main.cpp b/src/main.cpp index 251d83e..a90125c 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -7,8 +7,6 @@ #include #include #include -#include -#include "log/UserOperationLog.h" #include #include #include "dialogs/DialogManager.h" @@ -20,7 +18,7 @@ #include "utilities/TouchScreenSignalSender.h" #include "keyboard/KeyboardManager.h" #include "appvals/AppGlobalValues.h" -#include "log/SystemOperationLog.h" +#include "log/LogManager.h" #include QString loadFontFromFile(QString path) @@ -95,9 +93,8 @@ int main(int argc, char* argv[]) AppGlobalValues::setDBconnected(false); MainWindow w; DialogManager::Default()->init(&w); - UserOperationLog::Default()->init(); + LogManager::getInstance(); LOG_USER_OPERATION("GUI Started"); - SystemOperationLog::getInstance(); QObject::connect(TouchScreenSignalSender::getInstance(), SIGNAL(touchScreen()), Locker::getInstance(), SLOT(refreshTimer())); // QList gestures; diff --git a/src/recon/ReconManager.cpp b/src/recon/ReconManager.cpp index fc080a3..00f0d73 100644 --- a/src/recon/ReconManager.cpp +++ b/src/recon/ReconManager.cpp @@ -1,7 +1,7 @@ #include "ReconManager.h" #include "ReconClient.h" #include "json/jsonobject.h" -#include "log/SystemOperationLog.h" +#include "log/LogManager.h" #include #include "QDebug" diff --git a/src/windows/LoginDialog.cpp b/src/windows/LoginDialog.cpp index 4efbd41..d0c6581 100644 --- a/src/windows/LoginDialog.cpp +++ b/src/windows/LoginDialog.cpp @@ -10,7 +10,7 @@ #include "event/EventCenter.h" #include "dialogs/DialogManager.h" #include "models/User.h" -#include "log/UserOperationLog.h" +#include "log/LogManager.h" #include "json/jsonobject.h" #include "components/ULineEdit.h" #include "appvals/AppGlobalValues.h"