From 1b1b74168d99e4f31c073b732bd0e057d735a5f1 Mon Sep 17 00:00:00 2001 From: zhangsheng Date: Mon, 24 Mar 2025 17:24:55 +0800 Subject: [PATCH] fix web dispaly bugs --- common/parameter_defination.hpp | 3 ++- jsonparse/web_cmd_parse3.cpp | 15 +++++++++++---- localserver/web_cmd.cpp | 1 + 3 files changed, 14 insertions(+), 5 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..0d4dd92 100644 --- a/jsonparse/web_cmd_parse3.cpp +++ b/jsonparse/web_cmd_parse3.cpp @@ -900,9 +900,11 @@ 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); int packgeNo = param.mPackageFlag; int packgeMax = 0; @@ -930,7 +932,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); 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;