#include "ScanSearchCriteriaForm.h" #include "ui_ScanSearchCriteriaForm.h" #include #include "components/ListBox.h" #include "dialogs/DialogManager.h" ScanSearchCriteriaForm::ScanSearchCriteriaForm(QWidget *parent) : QWidget(parent) , ui(new Ui::ScanSearchCriteriaForm) , mSearchFilter() { ui->setupUi(this); auto beginBox = new ListBox(this); // beginBox->setSmallBox(true); ui->verticalLayoutDate->replaceWidget(ui->mLBBeginDate,beginBox); ui->mLBBeginDate->setVisible(false); ui->mLBBeginDate->deleteLater(); ui->mLBBeginDate=beginBox; ui->mLBBeginDate->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); ui->mLBBeginDate->setUpdatesEnabled(true); ui->mLBBeginDate->setText(QDate::currentDate().toString("yyyy-MM-dd")); auto endBox = new ListBox(this); // endBox->setSmallBox(true); ui->verticalLayoutDate->replaceWidget(ui->mLBEndDate,endBox); ui->mLBEndDate->setVisible(false); ui->mLBEndDate->deleteLater(); ui->mLBEndDate=endBox; ui->mLBEndDate->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); ui->mLBEndDate->setUpdatesEnabled(true); ui->mLBEndDate->setText(QDate::currentDate().toString("yyyy-MM-dd")); ui->CriteriaTitle->setObjectName("parameterTitle"); ui->ScanTitle->setObjectName("parameterTitle"); ui->holder1->setObjectName("endSpaceLine"); connect(ui->mLBEndDate, &QToolButton::clicked, [=]() { DialogResult result = DialogManager::Default()->requestSelectDate(ui->mLBEndDate->text()); if (result.ResultCode == QDialog::Accepted) { ui->mLBEndDate->setText(result.ResultData.toString()); } }); connect(ui->mLBBeginDate, &QToolButton::clicked, [=]() { DialogResult result = DialogManager::Default()->requestSelectDate(ui->mLBEndDate->text()); if (result.ResultCode == QDialog::Accepted) { ui->mLBBeginDate->setText(result.ResultData.toString()); } }); connect(ui->mBtnToday, &QToolButton::clicked, [=]() { QString today = QDate::currentDate().toString("yyyy-MM-dd"); ui->mLBEndDate->setText(today); ui->mLBBeginDate->setText(today); updateSearchFilter(); }); connect(ui->mBtnSevenDays, &QToolButton::clicked, [=]() { ui->mLBEndDate->setText(QDate::currentDate().toString("yyyy-MM-dd")); ui->mLBBeginDate->setText(QDate::currentDate().addDays(-7).toString("yyyy-MM-dd")); updateSearchFilter(); }); connect(ui->mBtnYesterday, &QToolButton::clicked, [=]() { QString yesterday = QDate::currentDate().addDays(-1).toString("yyyy-MM-dd"); ui->mLBEndDate->setText(yesterday); ui->mLBBeginDate->setText(yesterday); updateSearchFilter(); }); connect(ui->mBtnAll, &QToolButton::clicked, [=]() { QString today = QDate::currentDate().toString("yyyy-MM-dd"); ui->mLBEndDate->setText(today); ui->mLBBeginDate->setText("1990-01-01"); updateSearchFilter(); }); connect(ui->mBtnDates, &QPushButton::clicked, this, &ScanSearchCriteriaForm::updateSearchFilter); } ScanSearchCriteriaForm::~ScanSearchCriteriaForm() { delete ui; } QString ScanSearchCriteriaForm::getSearchFilter() { return QString("ScanDateTime >= '%1 00:00:00' And ScanDateTime <= '%2 23:59:59'").arg(ui->mLBBeginDate->text()).arg(ui->mLBEndDate->text()); } void ScanSearchCriteriaForm::updateSearchFilter() { emit searchFilterUpdated(); }