Files
QT_wuhan_YT/pages/debugmaintain.h
T
2026-10-14 18:22:41 +08:00

75 lines
2.2 KiB
C++

#ifndef DEBUGMAINTAINPAGE_H
#define DEBUGMAINTAINPAGE_H
#include "base.h"
class TitleBar;
class AlarmBanner;
class DataCard;
class LedIndicator;
class ParamControl;
class QPushButton;
class QLabel;
class QCheckBox;
// ===================== ⑪ 调试维护界面 =====================
class DebugMaintainPage : public BasePage
{
Q_OBJECT
public:
explicit DebugMaintainPage(AppContext* ctx, QWidget* parent = nullptr);
void setReturnPage(PageId id) { m_returnPage = id; }
private slots:
void refresh();
private:
// 单个球阀组:控制开/关 + 开启到位 + 关闭到位 + 故障提示
QWidget* makeValveGroup(int valve);
// 单个泵组:转速调节 + 启动/停止
QWidget* makePumpGroup(const QString& pump, const QString& name);
TitleBar* m_titleBar = nullptr;
AlarmBanner* m_warn = nullptr;
DataCard* m_chassisCard = nullptr;
DataCard* m_armCard = nullptr;
DataCard* m_gasCard = nullptr;
DataCard* m_washCard = nullptr;
// 球阀
QPushButton* m_valve1Btn = nullptr;
QPushButton* m_valve2Btn = nullptr;
LedIndicator* m_v1Open = nullptr;
LedIndicator* m_v1Close = nullptr;
LedIndicator* m_v2Open = nullptr;
LedIndicator* m_v2Close = nullptr;
QLabel* m_valveFault1 = nullptr;
QLabel* m_valveFault2 = nullptr;
// 泵
ParamControl* m_airRpm = nullptr;
ParamControl* m_plungerRpm = nullptr;
ParamControl* m_leafRpm = nullptr;
QPushButton* m_airStart = nullptr;
QPushButton* m_airStop = nullptr;
QPushButton* m_plungerStart = nullptr;
QPushButton* m_plungerStop = nullptr;
QPushButton* m_leafStart = nullptr;
QPushButton* m_leafStop = nullptr;
// 底部指示灯
LedIndicator* m_ledPlunger = nullptr;
LedIndicator* m_ledAir = nullptr;
LedIndicator* m_ledLeaf = nullptr;
LedIndicator* m_ledLevel = nullptr;
// 是否收到过车端遥测:未收到时球阀到位灯保持“开启=绿、关闭=红”的缺省显示
bool m_telemetrySeen = false;
// “返回”去向:本页有两个入口(系统首页 / 作业选择),由 MainWindow 记录来源后原路返回
PageId m_returnPage = PageJob;
};
#endif // DEBUGMAINTAINPAGE_H