fix: Fix auto drainage logic.

This commit is contained in:
sunwen
2025-07-08 15:58:22 +08:00
parent 37cd84ae82
commit 9979b7941c
4 changed files with 20 additions and 26 deletions

View File

@@ -115,7 +115,6 @@ void DeviceManager::initDevice()
connect(EventCenter::Default(), &EventCenter::RequestShutdown, this, &DeviceManager::shutdownDms);
//Drainage
connect(EventCenter::Default(), &EventCenter::RequestDrainage, this, &DeviceManager::startDrainage);
connect(EventCenter::Default(), &EventCenter::RequestAutoDrainage, this, &DeviceManager::startAutoDrainage);
connect(EventCenter::Default(), &EventCenter::RequestWaterflood, this, &DeviceManager::startWaterflood);
connect(EventCenter::Default(), &EventCenter::RequestWaterClean, this, &DeviceManager::startWaterClean);
connect(EventCenter::Default(), &EventCenter::RequestWaterModeExit, this, &DeviceManager::exitWaterProcess);
@@ -1184,31 +1183,15 @@ bool DeviceManager::getCEStatus()
void DeviceManager::startDrainage()
{
mIsAutoDrainage = false;
if(!mDrainageControlAction->execute())
{
emit startDrainageControlResult(false);
QString msg = tr("Open drain vavle failed.");
THROW_ERROR(msg);
emit startDrainageControlResult(false, msg);
}
}
void DeviceManager::startAutoDrainage()
{
if(!JsonObject::Instance()->getAutoDrainage())
{
return;
}
mIsAutoDrainage = true;
mDrainageControlAction->execute();
}
void DeviceManager::processDrainageResult(const QString& aResponse)
{
if(mIsAutoDrainage)
{
return;
}
QJsonObject jsonObj = toJsonObject(aResponse);
if(jsonObj["code"].toInt() == 0 )
{
@@ -1216,9 +1199,8 @@ void DeviceManager::processDrainageResult(const QString& aResponse)
return;
}
emit startDrainageControlResult(false);
QString msg = tr("Open drain vavle failed.") + tr("\nError: ") + jsonObj["info"].toString();
THROW_ERROR(msg);
emit startDrainageControlResult(false, msg);
}
void DeviceManager::startWaterflood()

View File

@@ -105,7 +105,6 @@ private:
bool startCEScan();
void initEmptyScanMeasurementID();
void startDrainage();
void startAutoDrainage();
void startWaterflood();
void startWaterClean();
void exitWaterProcess();
@@ -185,7 +184,7 @@ signals:
void initializeFinished();
void initializeProgress(const QString& aProgress);
void startPreviewScanResult(bool aIsSucessful);
void startDrainageControlResult(bool aIsSucessful);
void startDrainageControlResult(bool aIsSucessful, const QString& aMessage = "");
void startWaterfloodResult(bool aIsSucessful);
void startWaterCleanResult(bool aIsSucessful);
void exitWaterProcessResult(bool aIsSucessful);
@@ -211,7 +210,6 @@ private:
bool mIsInitializing = false;
bool mIsAutoLocating = false;
bool mIsFirstInTransferPorgress = false;
bool mIsAutoDrainage = false;
QString mCurrentScanMeasurementID = "";
QString mCurrentEmptyMeasurementID = "";