From c0a3294a90d8c4bfe160dedf53bfd463ca50b3ca Mon Sep 17 00:00:00 2001 From: zhangsheng Date: Mon, 24 Mar 2025 17:13:44 +0800 Subject: [PATCH] fix web dispaly bugs --- common/parameter_defination.hpp | 3 ++- jsonparse/web_cmd_parse3.cpp | 14 +++++++++++--- localserver/web_cmd.cpp | 1 + 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/common/parameter_defination.hpp b/common/parameter_defination.hpp index 7ab4960..19b28d1 100644 --- a/common/parameter_defination.hpp +++ b/common/parameter_defination.hpp @@ -339,10 +339,11 @@ struct Param_61 { }; struct Param_62 { std::string MeasurementID; + std::string straxis; std::string timeStart; std::string timeEnd; int mPackageFlag; - Param_62() : MeasurementID(""),timeStart(""),timeEnd(""),mPackageFlag(0){}; + Param_62() : MeasurementID(""),straxis(""),timeStart(""),timeEnd(""),mPackageFlag(0){}; }; struct Param_63 { diff --git a/jsonparse/web_cmd_parse3.cpp b/jsonparse/web_cmd_parse3.cpp index 78d9b46..e2359d8 100644 --- a/jsonparse/web_cmd_parse3.cpp +++ b/jsonparse/web_cmd_parse3.cpp @@ -900,7 +900,10 @@ std::string JsonData::JsonCmd_Cgi_62(Param_62 ¶m){ char szTableName[100] = {0x00}, whereCon[256] = {0x00}; sprintf(szTableName, " receive_wave_status "); - sprintf(whereCon, " data_nodeno = '%s' and timeStamp < '%s' and timeStamp > '%s' ", param.MeasurementID.c_str(), param.timeEnd.c_str(), param.timeStart.c_str()); + if(param.straxis == "") + sprintf(whereCon, " data_nodeno like '%%%s%%' and timeStamp < '%s' and timeStamp > '%s' ", param.MeasurementID.c_str(), param.timeEnd.c_str(), param.timeStart.c_str()); + else + sprintf(whereCon, " data_nodeno = '%s-%s' and timeStamp < '%s' and timeStamp > '%s' ", param.MeasurementID.c_str(),param.straxis.c_str(), param.timeEnd.c_str(), param.timeStart.c_str()); int rows = sqlite_db_ctrl::instance().GetTableRows(szTableName, whereCon); @@ -930,7 +933,12 @@ std::string JsonData::JsonCmd_Cgi_62(Param_62 ¶m){ } memset(whereCon, 0x00, sizeof(whereCon)); - sprintf(whereCon, "data_nodeno = '%s' and timeStamp < '%s' and timeStamp > '%s' order by timeStamp asc LIMIT %d OFFSET %d", param.MeasurementID.c_str(), param.timeEnd.c_str(), param.timeStart.c_str(), 550, packgeNum); + if(param.straxis == "") + { + sprintf(whereCon, "data_nodeno like '%%%s%%' and timeStamp < '%s' and timeStamp > '%s' order by timeStamp asc LIMIT %d OFFSET %d", param.MeasurementID.c_str(), param.timeEnd.c_str(), param.timeStart.c_str(), 550, packgeNum); + }else{ + sprintf(whereCon, "data_nodeno = %s-%s' and timeStamp < '%s' and timeStamp > '%s' order by timeStamp asc LIMIT %d OFFSET %d", param.MeasurementID.c_str(),param.straxis.c_str(), param.timeEnd.c_str(), param.timeStart.c_str(), 550, packgeNum); + } array_t vecRes; vecRes = sqlite_db_ctrl::instance().GetDataMultiLine(szTableName, "*", whereCon); @@ -1055,4 +1063,4 @@ std::string JsonData::JsonCmd_Cgi_64(Param_64 ¶m) } jsonVal["cmdBody"] = jsBody; return show_value_.write(jsonVal); -} \ No newline at end of file +} diff --git a/localserver/web_cmd.cpp b/localserver/web_cmd.cpp index 0d0377a..94b6867 100644 --- a/localserver/web_cmd.cpp +++ b/localserver/web_cmd.cpp @@ -434,6 +434,7 @@ std::string LocalServer::HandleCgi_cmd(std::string &pData) { param.mPackageFlag = recvBody["package"].asInt(); param.timeStart = recvBody["timeStart"].asString(); param.timeEnd = recvBody["timeEnd"].asString(); + param.straxis = recvBody["Raxis"].asString(); param.MeasurementID = recvBody["MeasurementID"].asString(); std::string data = jd.JsonCmd_Cgi_62(param); return data;