Update GUI and Recon connection.
This commit is contained in:
@@ -132,7 +132,7 @@ void DeviceManager::initDevice()
|
||||
mStopScanAction = new DmsSyncAction(USRV_SCAN, ACT_SCAN_STOP, this, "responseStopScan(const QString&)", this);
|
||||
mPreviewScanAction = new DmsSyncAction(USRV_SCAN, ACT_SCAN_PREVIEW, this, "responsePreviewScan(const QString&)", this);
|
||||
mTransferAction = new DmsSyncAction(USRV_XFR, ACT_XFR_START, this, "responseTransfer(const QString&)", this);
|
||||
|
||||
mGetTransferProgressAction = new DmsSyncAction(USRV_XFR, ACT_XFR_PROGRESS_PASSIVE, this, "responseGetTransferProgress(const QString&)", this);
|
||||
|
||||
//Async action
|
||||
mGetScanProgressAction = new DmsAsyncAction(USRV_SCAN, ACT_SCAN_PROGRESS_PASSIVE, this,"responseGetScanProgress(const QString&)", this);
|
||||
@@ -479,7 +479,7 @@ void DeviceManager::processReceiveDMSInfoResult(int aServerID, int aActionID, co
|
||||
emit responseTransfer(aContents);
|
||||
break;
|
||||
case ACT_XFR_PROGRESS_PASSIVE :
|
||||
processTransferProgress(aContents);
|
||||
emit responseGetTransferProgress(aContents);
|
||||
break;
|
||||
case ACT_XFR_PROGRESS_ACTIVE :
|
||||
processTransferProgress(aContents);
|
||||
@@ -654,7 +654,7 @@ void DeviceManager::startTransfer()
|
||||
return;
|
||||
}
|
||||
|
||||
QString sql = "SELECT ScanID FROM %1 WHERE State=0 ORDER BY ScanDateTime ASC LIMIT 1";
|
||||
QString sql = "SELECT ScanID FROM %1 WHERE State<200 ORDER BY ScanDateTime ASC LIMIT 1";
|
||||
QString table = "EScan";
|
||||
QVariant sqlResult = SQLHelper::queryValue(sql.arg(table));
|
||||
mIsTransferEmptyScan = true;
|
||||
@@ -668,7 +668,6 @@ void DeviceManager::startTransfer()
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
QString scanID = sqlResult.toString();
|
||||
auto host = JsonObject::Instance()->getServer(JsonObject::RECON);
|
||||
mTransferAction->setSendData("{\"MD5\":1, \"dst\":\"" + host.ae + "@" + host.ip +":" + RECON_TRANSFER_PATH + "\", \"src\":\"" + scanID + "\",\"delete\":1,\"active report\":0}");
|
||||
@@ -812,6 +811,7 @@ void DeviceManager::processReconQueryScanState(const QMap<QString, int> aResult)
|
||||
emitInfoCallback(msg, MessageLevel::Error);
|
||||
}
|
||||
}
|
||||
emit updateReconStateFinished();
|
||||
}
|
||||
|
||||
void DeviceManager::createScanReconRecord(const QString& aScanID, const QString& aPatientID, const QString& aReferenceID)
|
||||
@@ -834,6 +834,7 @@ void DeviceManager::initEmptyScanMeasurementID()
|
||||
|
||||
void DeviceManager::updateReconState()
|
||||
{
|
||||
updateTransferProgress();
|
||||
QString sql = "SELECT ScanID FROM Scan WHERE State != 999";
|
||||
auto result = SQLHelper::queryValues(sql);
|
||||
QStringList scanIDs;
|
||||
@@ -842,9 +843,31 @@ void DeviceManager::updateReconState()
|
||||
scanIDs << variant.toString();
|
||||
}
|
||||
|
||||
if(!scanIDs.isEmpty())
|
||||
if(scanIDs.isEmpty())
|
||||
{
|
||||
emit queryScanStatusToRecon(scanIDs);
|
||||
emit updateReconStateFinished();
|
||||
return;
|
||||
}
|
||||
emit queryScanStatusToRecon(scanIDs);
|
||||
}
|
||||
|
||||
void DeviceManager::updateTransferProgress()
|
||||
{
|
||||
if(!mIsTransfering)
|
||||
{
|
||||
return;
|
||||
}
|
||||
mTransferProgress = 0;
|
||||
auto result = mGetTransferProgressAction->execute();
|
||||
QJsonObject jsonObj = toJsonObject(result.mData);
|
||||
if(jsonObj["code"].toInt() == 0 )
|
||||
{
|
||||
mTransferProgress = jsonObj["info"].toInt();
|
||||
}
|
||||
}
|
||||
|
||||
int DeviceManager::getTransferProgress()
|
||||
{
|
||||
return mTransferProgress;
|
||||
}
|
||||
|
||||
|
||||
@@ -69,6 +69,11 @@ public:
|
||||
void emitErrorCallback(const char *msg);
|
||||
void emitInfoCallback(const QString& aMessage,const unsigned int aInfoType);
|
||||
bool hasValidEmptyScan();
|
||||
void updateTransferProgress();
|
||||
int getTransferProgress();
|
||||
|
||||
public slots:
|
||||
void updateReconState();
|
||||
|
||||
signals:
|
||||
|
||||
@@ -98,7 +103,6 @@ private:
|
||||
void getScanProcess();
|
||||
void startTransfer();
|
||||
void initEmptyScanMeasurementID();
|
||||
void updateReconState();
|
||||
|
||||
void processScanProcess(const QString& aProgress);
|
||||
void prepareFinishScan(bool isNormalFinish, const QString& aReason = "");
|
||||
@@ -132,15 +136,18 @@ signals:
|
||||
void responsePreviewScan(const QString& aResponse);
|
||||
void responseGetSoftwareVersion(const QString& aSoftwareVersion);
|
||||
void responseTransfer(const QString& aResponse);
|
||||
void responseGetTransferProgress(const QString& aProgress);
|
||||
//Recon
|
||||
void createEmptyScanToRecon(const QString& aScanID, const QString& aPath);
|
||||
void createScanToRecon(const QString& aScanID, const QString& aPatientID, const QString& aReferenceID, const QString& aPath);
|
||||
void queryScanStatusToRecon(const QStringList& aScanIDs);
|
||||
void updateReconStateFinished();
|
||||
|
||||
|
||||
private:
|
||||
int mTemperatureTimer = -1;
|
||||
int mScanProgressTimer = -1;
|
||||
int mTransferProgress = 0;
|
||||
bool mIsEmptyScan = false;
|
||||
bool mIsTransferEmptyScan = false;
|
||||
bool mIsScanning = false;
|
||||
@@ -164,6 +171,7 @@ private:
|
||||
DmsSyncAction* mCEScanAction = nullptr;
|
||||
DmsSyncAction* mStopScanAction = nullptr;
|
||||
DmsSyncAction* mTransferAction = nullptr;
|
||||
DmsSyncAction* mGetTransferProgressAction = nullptr;
|
||||
|
||||
DmsAsyncAction* mGetDeviceTemperatureAction = nullptr;
|
||||
DmsAsyncAction* mGetScanProgressAction = nullptr;
|
||||
|
||||
Reference in New Issue
Block a user