feat: Change ReconClient to fit new version Restful interface

This commit is contained in:
chenhuijun
2024-05-27 09:27:21 +08:00
parent f2562f5b40
commit 8bba77cd86
7 changed files with 22 additions and 66 deletions

View File

@@ -7,7 +7,7 @@
namespace
{
const char *CREATE_URL = "/Scan/Create/";
const char *CHECK_URL = "/v/";
const char *STATE_URL = "/State/";
const char *QUERY_SCAN_URL = "/Scan/Query/";
const char *QUERY_VERSION_URL = "/Version/";
const char *QUERY_RECON_URL = "/Task/Query/";
@@ -36,7 +36,7 @@ RequestResult ReconClient::CheckActive()
{
std::string content;
content.append("1");
auto resp = mRequest.post(mHost + CHECK_URL, content, mHeaders);
auto resp = mRequest.post(mHost + STATE_URL, content, mHeaders);
if (resp.httpCode() == 200)
{
return RequestResult::Success();
@@ -52,7 +52,14 @@ RequestResult ReconClient::Create(const Scan &aScan)
{
cJSON *obj = cJSON_CreateObject();
cJSON_AddStringToObject(obj, "ScanID", aScan.ScanID.c_str());
cJSON_AddStringToObject(obj, "PatientID", aScan.PatientID.c_str());
if (aScan.StudyUID.length()>0)
{
cJSON_AddStringToObject(obj, "StudyUID", aScan.StudyUID.c_str());
}
if (aScan.MPPSUID.length()>0)
{
cJSON_AddStringToObject(obj, "MPPSUID", aScan.MPPSUID.c_str());
}
cJSON_AddStringToObject(obj, "ReferencePath", aScan.ReferencePath.c_str());
if (!aScan.ReferencePath.empty())
{
@@ -111,59 +118,6 @@ RequestResult ReconClient::QueryScan(const std::string &aScanID, int &state)
}
}
RequestResult ReconClient::QueryReconID(const std::string &aScanID, std::string &aReconID)
{
cJSON *obj = cJSON_CreateObject();
cJSON_AddStringToObject(obj, "ScanID", aScanID.data());
char *str = cJSON_Print(obj);
cJSON_Delete(obj);
std::string content;
content.append(str);
free(str);
auto resp = mRequest.post(mHost + QUERY_RECON_URL, content, mHeaders);
if (resp.httpCode() == 204)
{
return RequestResult::Success();
}
else if (resp.httpCode() == 200)
{
aReconID = resp.getContent();
return RequestResult::Success(aReconID);
}
else
{
mErrorMessage = resp.getContent();
return RequestResult::Fail(mErrorMessage);
}
}
RequestResult ReconClient::QueryReconTask(const std::string &aReconID, TaskQueryResult &aTask)
{
cJSON *obj = cJSON_CreateObject();
cJSON_AddStringToObject(obj, "ReconID", aReconID.data());
char *str = cJSON_Print(obj);
cJSON_Delete(obj);
std::string content;
content.append(str);
free(str);
auto resp = mRequest.post(mHost + QUERY_RECON_URL, content, mHeaders);
if (resp.httpCode() == 200)
{
cJSON *task = cJSON_Parse(resp.getContent().data());
aTask.ReconID = cJSON_GetObjectItem(task, "ReconID")->valuestring;
aTask.ScanID = cJSON_GetObjectItem(task, "ScanID")->valuestring;
aTask.Start = cJSON_GetObjectItem(task, "Start")->valueint != 0;
aTask.SeqID = cJSON_GetObjectItem(task, "SeqID")->valueint;
cJSON_Delete(task);
return RequestResult::Success();
}
else
{
mErrorMessage = resp.getContent();
return RequestResult::Fail(mErrorMessage);
}
}
RequestResult ReconClient::QueryVersion()
{
std::string content;