#include "basicwidget.h" #include "ui_basicwidget.h" #include "compareitemlistdialog.h" #include "DialogBase.h" #include "UIStyleManager.h" #include "customcombobox.h" #include "CompareItemData.h" BasicWidget::BasicWidget(QWidget *parent) : QWidget(parent), ui(new Ui::BasicWidget) { ui->setupUi(this); m_logger = spdlog::get("ACASetting"); if(m_logger == nullptr) { fmt::print("BasicWidget: Logger ACASetting not found\n"); return; } connect(ui->pBtn_compareItem, &QPushButton::clicked, this, &BasicWidget::do_pBtn_CompareItemClicked); /* 设置UI */ UIStyle.registerWidget(this); /* 设置下拉框选项 */ ui->comBox_notConsistency->setViewShadowEffect(); ui->comBox_driverName->setViewShadowEffect(); ui->comBox_recordMode->setViewShadowEffect(); /* 测试用 */ ui->comBox_driverName->addItem("AISO"); } BasicWidget::~BasicWidget() { UIStyle.unregisterWidget(this); delete ui; } /* 保存数据 */ void BasicWidget::saveBasicInfo() { /* 保存基础信息 */ saveBasicSettingInfo(); /* 保存对比项信息 */ saveCompareItemInfo(); } void BasicWidget::do_pBtn_CompareItemClicked() { CompareItemListDialog dlg; /* 设置已有的对比项列表 */ dlg.setCompareItemList(CIData.getCompareItemTableData()); dlg.exec(); } /* 保存基础信息 */ void BasicWidget::saveBasicSettingInfo() { } /* 保存对比项信息 * 先获取数据库中的对比项信息,和现有的进行对比一下,找出新增、修改、删除的对比项。 * 新增的对比项直接添加到数据库中,修改的对比项更新到数据库中,删除的对比项从数据库中删除。 */ void BasicWidget::saveCompareItemInfo() { if(m_fromWebAPI == nullptr) { SPDLOG_LOGGER_ERROR(m_logger, "WebAPI 未设置指针,无法保存对比项信息"); return; } /* 先获取数据库中的对比项信息 */ QList dbCompareItems; }