From 92117de97e9f5be5c2d5734afafbe5823d26f0f0 Mon Sep 17 00:00:00 2001 From: lnk Date: Wed, 30 Apr 2025 10:22:57 +0800 Subject: [PATCH] delete useless funtion --- cfg_parse/cfg_parser.cpp | 928 +----------------------------- include/rocketmq/SimpleProducer.h | 2 - json/create_json.cpp | 9 +- json/save2json.cpp | 26 +- mms/db_interface.h | 54 +- mms/mms_process.c | 5 - mms/mmscli_rpt.c | 2 - mms/parse_xml.c | 52 +- mms/rdb_client.c | 1 - mms/rdb_client.h | 3 - 10 files changed, 26 insertions(+), 1056 deletions(-) diff --git a/cfg_parse/cfg_parser.cpp b/cfg_parse/cfg_parser.cpp index 72e45d6..b2838b5 100644 --- a/cfg_parse/cfg_parser.cpp +++ b/cfg_parse/cfg_parser.cpp @@ -41,18 +41,18 @@ using namespace std; extern "C" { #endif /* __cplusplus */ - extern pt61850app_t* g_pt61850app; - extern node_t* g_node; - extern apr_pool_t* g_cfg_pool; - extern apr_pool_t* g_init_pool; - extern apr_pool_t* g_temp_dev_pool; - extern char subdir[128]; - extern int g_front_seg_index; + extern pt61850app_t* g_pt61850app; + extern node_t* g_node; + extern apr_pool_t* g_cfg_pool; + extern apr_pool_t* g_init_pool; + extern apr_pool_t* g_temp_dev_pool; + extern char subdir[128]; + extern int g_front_seg_index; - extern unsigned int g_no_auth; + extern unsigned int g_no_auth; extern char g_onlyIP[255]; //Ö±Á¬Ä³¸öIP£¬½ö½öΪ·½±ã²âÊÔ - int g_DevFlag = 0; + int g_DevFlag = 0; #ifdef __cplusplus } @@ -71,16 +71,15 @@ public: }; //CZY 2023-09-17 ¿ØÖÆÃüÁî½âÎö -class ProgramParam // +class ProgramParam { public: QList terminal_list;//ÖÕ¶ËidÁбí QString file_name;//³ÌÐòÏÂ×°¿ÉÓã¬ÏÂ×°³ÌÐòÔÚossÖеÄλÖà - }; //CZY 2023-09-17 ¿ØÖÆÃüÁî½âÎö -class RecallParam // +class RecallParam { public: QString mp_id;//¼à²âµãid @@ -160,28 +159,6 @@ public: char timestamp[64]; }; -class front_list//ǰÖñí -{ -public: - char front_ip[64]; - char front_port[64]; - char front_inst[64]; - char front_type[64]; - char front_status[64]; - char front_version[64]; - char mp_num[64]; -}; - -class intact_list//ǰÖñí -{ -public: - char monitor_id[64]; - char statistical_date[64]; - char exp_num[64]; - char act_num[64]; - std::vector value_time; //ʱ¼ä¼¯ºÏ - char last_value_time[64]; -}; /*lnk 2024-10-15 */ list g_StatisticLackList; //ÈÕÖ¾²¹ÕнṹÀàÁ´±í @@ -204,15 +181,6 @@ int IED_COUNT = 300; //Ĭ extern int INITFLAG; -//WW 2-23-08-20 add start -otl_connect db; //OTLÊý¾Ý¿âÁ¬½Ó¶ÔÏó WW 2023-08-20 -int g_iOTLFlag = 0; //SqlÊÇ·ñÖ´ÐбêÖ¾(0-²»Ö´ÐУ»1-Ö´ÐÐ) //lnk202410-22Ìæ»»web½Ó¿Úºó¹Ø±Õ -std::string g_strOTLType = "PostgreSQL"; //OTLÁ¬½ÓÊý¾Ý¿âÀàÐÍ -//std::string g_strOTLConnect = "pqsadmin/dnzladmin_001@pgsql"; //OTLÊý¾Ý¿âÁ¬½Ó²ÎÊý -//std::string g_strOTLConnect = "postgres/postgres@pgsql"; //OTLÊý¾Ý¿âÁ¬½Ó²ÎÊý -std::string g_strOTLConnect = "postgres/bmdev@123@pgsql"; //OTLÊý¾Ý¿âÁ¬½Ó²ÎÊý - - //lnk2024-8-14Ìí¼Ó½ÇÐͽÓÏß±êÖ¾,0²»´æÔÚ½ÇÐνÓÏߣ¬1´æÔÚ½ÇÐνÓÏß int isdelta_flag = 0; @@ -353,11 +321,6 @@ extern pthread_mutex_t mtx; std::string intToString(int number); ////////////////////////////////////////////////////////////////////////// -std::string g_strUID = ""; //OTLÊý¾Ý¿âÁ¬½ÓÓû§Ãû -int g_iOTLConnectLimit = 3; //OTLÊý¾Ý¿â³¬Ê±Á¬½Ó´ÎÊýÏÞÖÆ ×¢£ºÊý¾Ý¿âÔÊÐí×î´óÁ¬½Ó´ÎÊý£¬µ¥´ÎÊý¾Ý¿âÁ¬½Ó¼ÆÊý³¬¹ý3´Î£¬ÖØÐÂÖ´ÐÐÊý¾Ý¿âỊ̈߳¡ -//Êý¾Ý¿âSqlÁ´±í--------------------------------------- -extern QList Sql_data_list; //SqlÖ´ÐÐÓï¾äÁ´±í -extern QMutex Sql_data_list_mutex; //SqlÖ´ÐÐÓï¾äËø extern int server_socket; //Web Socket·þÎñ¶ËʵÀý extern unsigned int g_node_id; //ǰÖóÌÐòÀàÐÍ(100-500) //WW 2023-08-20 end @@ -380,49 +343,6 @@ void parse_log_switch_ini(unsigned int* error, unsigned int* warn, unsigned int* settings.endGroup(); } -void update_odbc(char* newServicename, char* newPort) { - const char* filename = "/etc/odbc.ini"; - const char* searchip = "Servername="; // Òª²éÕÒµÄÐеĿªÍ· - const char* searchport = "Port="; // Òª²éÕÒµÄÐеĿªÍ· - const char* tempFilename = "/tmp/odbc.ini.XXXXXX"; // ÁÙʱÎļþÃû - - FILE* file = fopen(filename, "r"); - if (file == NULL) { - printf("Error opening file\n"); - return; - } - - // ´´½¨ÁÙʱÎļþ - char tempFilenameBuffer[256]; - strcpy(tempFilenameBuffer, tempFilename); - int tempfd = mkstemp(tempFilenameBuffer); - FILE* tempfile = fdopen(tempfd, "w"); - - // ÖðÐжÁÈ¡Îļþ - char line[256]; - while (fgets(line, sizeof(line), file)) { - if (strncmp(line, searchip, strlen(searchip)) == 0) { - // Èç¹ûÕÒµ½ÒªÐ޸ĵÄÐУ¬ÔòдÈëеÄÖµ - fprintf(tempfile, "Servername=%s\n", newServicename); - } - else if (strncmp(line, searchport, strlen(searchport)) == 0) { - // Èç¹ûÕÒµ½ÒªÐ޸ĵÄÐУ¬ÔòдÈëеÄÖµ - fprintf(tempfile, "Port=%s\n", newPort); - } - else { - // ·ñÔò½«Ô­Ê¼ÐÐдÈëÁÙʱÎļþ - fputs(line, tempfile); - } - } - - // ¹Ø±ÕÎļþ - fclose(file); - fclose(tempfile); - - // Ìæ»»Ô­Ê¼Îļþ - remove(filename); - rename(tempFilenameBuffer, filename); -} //lnk20250328Ìí¼Ó²âÊÔÁбíÓõĺ¯Êý void parseTestList(const std::string& input) { @@ -971,16 +891,6 @@ int Worker::init_ping_telnet(QTcpSocket* clientSocket, int& ip_count, int& telne return 1; } -//CZY 2023-08-30 read device account from web api -long long charToLongLong(const char* time_str) { - string str_time = "2022-01-01 10:00:00"; - struct tm tm_time = {}; - strptime(str_time.c_str(), "%Y-%m-%d %H:%M:%S", &tm_time); - time_t time_stamp = mktime(&tm_time); - //cout << "ʱ¼ä´ÁΪ£º" << time_stamp << endl; - return time_stamp; -} - //CZY 2023-08-30 chat* null or emptry bool isCharPtrEmpty(const char* str) { return str == nullptr || str[0] == '\0' || str == ""; @@ -1521,104 +1431,6 @@ int parse_rpt_log_ini() return APR_SUCCESS; } -int parse_json_cfg() -{ - QString cfg_dir = QString("../") + QString("etc/"); - QDomDocument doc; //н¨QDomDocumentÀà¶ÔÏó£¬Ëü´ú±íÒ»¸öXMLÎĵµ - QFile file(cfg_dir + JSON_CONFIG_FN_old); - if (!file.open(QIODevice::ReadOnly)) - return APR_EBADPATH; //ÒÔÖ»¶Á·½Ê½´ò¿ª - if (!doc.setContent(&file)) { - file.close(); - return APR_EBADF; - } - //½«ÎļþÄÚÈݶÁµ½docÖÐ - QDomElement docElem = doc.documentElement(); //·µ»Ø¸ùÔªËØ - QDomNode n = docElem.firstChild(); //·µ»Ø¸ù½ÚµãµÄµÚÒ»¸ö×Ó½Úµã - while (!n.isNull()) { //Èç¹û½Úµã²»Îª¿Õ - if (n.isElement()) { //Èç¹û½ÚµãÊÇÔªËØ - QDomElement e = n.toElement(); //½«Æäת»»ÎªÔªËØ - QString strTag = e.tagName(); - QString topic = e.attribute("name"); - if (strTag == "Topic" && (topic == "HISDATA" || topic == "RTDATA")) { - QDomNodeList list = e.childNodes(); //»ñµÃÔªËØeµÄËùÓÐ×Ó½ÚµãµÄÁбí e - for (int i = 0; i < list.count(); i++) { //±éÀú¸ÃÁбí - QDomNode node = list.at(i); - if (node.isElement()) { - QString strTag2 = node.toElement().tagName(); - QString data_type = node.toElement().attribute("value"); - if (strTag2 == "DataType") { //node - QDomNodeList list2 = node.childNodes(); //»ñµÃÔªËØnodeµÄËùÓÐ×Ó½ÚµãµÄÁбí - for (int i2 = 0; i2 < list2.count(); i2++) { //±éÀú¸ÃÁбí - QDomNode node2 = list2.at(i2); ////node2 - if (node2.isElement()) { - QString strTag3 = node2.toElement().tagName(); - /////////////////////////// - if (strTag3 == "Monitor") { - QDomNodeList list3 = node2.childNodes(); //»ñµÃÔªËØnodeµÄËùÓÐ×Ó½ÚµãµÄÁбí - for (int i3 = 0; i3 < list3.count(); i3++) { //±éÀú¸ÃÁбí - QDomNode node3 = list3.at(i3); //node3 - if (node3.isElement()) { - QString strTag4 = node3.toElement().tagName(); - //**////**////**////**////**////**////**////**////**////**////**// - if (strTag4 == "Item") { - QString item = node3.toElement().attribute("name"); - QDomNodeList list4 = node3.childNodes(); //»ñµÃÔªËØnodeµÄËùÓÐ×Ó½ÚµãµÄÁбí - for (int i4 = 0; i4 < list4.count(); i4++) { //±éÀú¸ÃÁбí - QDomNode node4 = list4.at(i4); //node4 - if (node4.isElement()) { - QString strTag5 = node4.toElement().tagName(); - //////////*********************//////////////////// - if (strTag5 == "Sequence") { - uint sequence = node4.toElement().attribute("value").toUInt(); - QDomNodeList list5 = node4.childNodes(); //»ñµÃÔªËØnodeµÄËùÓÐ×Ó½ÚµãµÄÁбí - for (int i5 = 0; i5 < list5.count(); i5++) { //±éÀú¸ÃÁбí - QDomNode node5 = list5.at(i5); //node5 - if (node5.isElement()) { - QDomElement e_Value = node5.toElement(); //½«Æäת»»ÎªÔªËØ - QString strTag6 = e_Value.tagName(); - // - if (strTag6 == "Value") { - QString name_str = e_Value.attribute("name"); - QString DO_str = e_Value.attribute("DO"); - QString DA_str = e_Value.attribute("DA"); - uint mask = 1; - for (int j = 0; j <= 3; j++) { - if (mask & sequence) - qDebug() << topic << " " << data_type << " " << item << " Phs=" << j << " " << name_str << " " << DO_str << DA_str; - mask *= 2; - } - //todo ,to read the attribute of Value - } - } - } - } - //////////*********************//////////////////// - } - } - } - //**////**////**////**////**////**////**////**////**////**////**// - } - } - } - //////////////////////////////// - } - }// for(int i2=0; i2= 0 && (*dat_idx) >= 0) - return APR_SUCCESS; - else - return APR_EBADF; -} //²¹Õв¿·Ö//////////////////////////////////////////////////////////////////////////////// - void parse_recall(recall_xml_t* recall_xml, QString parentTag, QDomElement& recall_e, char* id) { recall_t recall; - /*QString ied; - ied.append(recall_e.attribute("MonitorID")); - QByteArray byteArray = ied.toLocal8Bit(); - char* charArray = new char[byteArray.size()]; - memcpy(charArray, byteArray.data(), byteArray.size()); - charArray[byteArray.size()] = '\0';*/ - recall.line_id = id; QDateTime start_dt = QDateTime::fromString(recall_e.attribute("StartTime"), "yyyy-MM-dd hh:mm:ss"); @@ -2329,10 +2102,6 @@ void parse_recall(recall_xml_t* recall_xml, QString parentTag, QDomElement& reca int delete_recall_xml(char* id) { - // ied_t *ied; - // ied_usr_t *ied_usr; - // LD_info_t line_info; - // int dev_idx_in_line = 0; QString cfg_dir = QString("../")/*+QString::fromAscii(subdir)*/ + QString("etc/recall"); QString file_name = QString(subdir) + QString("_") + QString(QString::number(g_front_seg_index, 10)) + QString("_") + QString(id) + QString("_") + QString("*") + QString("_Recall.xml"); @@ -2343,7 +2112,6 @@ int delete_recall_xml(char* id) return false; } //Ö¸¶¨Îļþºó׺Ãû£¬¿ÉÖ¸¶¨¶àÖÖÀàÐÍ - //qDebug() << qstrRecallPath; QStringList filter(file_name); //Ö¸¶¨²éÕÒÀàÐͺÍÅÅÐò£¬°´×îеÄÐÞ¸Äʱ¼ä»ñÈ¡ QStringList files = dir.entryList(filter, QDir::Files | QDir::Readable | QDir::NoDotAndDotDot, QDir::Name | QDir::Time); @@ -2356,10 +2124,7 @@ int delete_recall_xml(char* id) int parse_recall_xml(recall_xml_t* recall_xml, char* id) { - // ied_t *ied; - // ied_usr_t *ied_usr; - // LD_info_t line_info; - // int dev_idx_in_line = 0; + QString cfg_dir = QString("../")/*+QString::fromAscii(subdir)*/ + QString("etc/recall"); QString file_name = QString(subdir) + QString("_") + QString(QString::number(g_front_seg_index, 10)) + QString("_") + QString(id) + QString("_") + QString("*") + QString("_Recall.xml"); //lnk20241225ÕâÀïÎļþÃû @@ -2370,7 +2135,6 @@ int parse_recall_xml(recall_xml_t* recall_xml, char* id) return false; } //Ö¸¶¨Îļþºó׺Ãû£¬¿ÉÖ¸¶¨¶àÖÖÀàÐÍ - //qDebug() << qstrRecallPath; QStringList filter(file_name); //Ö¸¶¨²éÕÒÀàÐͺÍÅÅÐò£¬°´×îеÄÐÞ¸Äʱ¼ä»ñÈ¡ QStringList files = dir.entryList(filter, QDir::Files | QDir::Readable | QDir::NoDotAndDotDot, QDir::Name | QDir::Time); @@ -2417,10 +2181,6 @@ int parse_recall_xml(recall_xml_t* recall_xml, char* id) } } - //for (int i = 0; i < files.size(); i++) {//Çå¿Õ¶ÁÈ¡Îļþ - // QString qstrRecallPath = cfg_dir + QString("/") + files[i]; - // QFile::remove(qstrRecallPath); - //} return APR_SUCCESS; } @@ -2485,145 +2245,8 @@ void process_recall_config(recall_xml_t* recall_xml) } -int remove_recall_xml() -{ - QString cfg_dir = QString("../")/*+QString::fromAscii(subdir)*/ + QString("etc/"); - QString filename(cfg_dir + RECALL_CONFIG_FN); - - return QFile::remove(filename); -} ////////////////////////////////////////////////////////////////////////////////// -//////////////////////////////////////////////////////////////////////////////////WW 20230819 Ôö¼ÓÊý¾Ý¿âÁ¬½Óº¯Êý -int OTLConnect() //OTLÁ¬½ÓOracleÊý¾Ý¿â -{ - try { - otl_connect::otl_initialize(); //³õʼ»¯OTLÁ¬½Ó¿âµÄ»·¾³µÄ¾²Ì¬º¯Êý - //db.rlogon(g_strOTLConnect.c_str()); //Á¬½ÓÊý¾Ý¿âOracle(Óû§Ãû/ÃÜÂë) - //db.rlogon("postgres", "dnzl@#001", "pgsql", 0); - //db.rlogon("postgres", "1234567", "pgsql", 0); - //db.rlogon("postgres", "bmdev@123", "pgsql", 0); - db.rlogon(POSTGRES_USERNAME, POSTGRES_PASSWORD, POSTGRES_DNSNAME, 0); - printf("\nPostgreSL\"%s\"connect succ\n", g_strOTLConnect.c_str()); - } - catch (otl_exception& e) - { - //printf("\nPostgreSL\"%s\"failed,ERROR code= %d, msg= %s \n", g_strOTLConnect.c_str(), e.code, e.msg); - if (e.code != 32031) - printf("\nPostgreSL\"%s\"failed,ERROR code= %d, msg= %s \n", g_strOTLConnect.c_str(), e.code, e.msg); - return e.code; - } - return 0; -} -int OTLDisconnect() //OTL¶Ï¿ªOracleÊý¾Ý¿â -{ - try { - db.logoff(); - printf("\nPostgreSL\"%s\"disconnect\n\n", g_strOTLConnect.c_str()); - } - catch (otl_exception& e) - { - printf("\nPostgreSL\"%s\"disconnect failed,ERROR code= %d,msg= %s \n", g_strOTLConnect.c_str(), e.code, e.msg); - return e.code; - } - return 0; -} -int OTLTestSelect() //OTLÁ¬½ÓOracleÊý¾Ý¿â -{ - try { - OTLConnect(); - //int rtState = OTLState(); - otl_stream i(1, // buffer size - "select \"MODEL_ID\" from \"gaussdb\".\"MEAS_PQ_ICD_MODEL_TR\"", - //SELECT statement - db //connect object - ); - //create select stream - - char f2[64]; - while (!i.eof()) { //while not end-of-data - i >> f2; - qDebug() << " MODEL_ID =" << f2 << endl; - } - OTLDisconnect(); - } - catch (otl_exception& e) - { - printf("\nPostgreSL\"%s\"select error,ERROR code= %d,msg= %s \n", g_strOTLConnect.c_str(), e.code, e.msg); - return e.code; - } - return 0; - -} - -int OTLState() //OTLÁ¬½ÓOracleÊý¾Ý¿â״̬ -{ - try { - otl_datetime tm; - std::string strSql = "select sysdate from dual"; - //std::string strSql = "select * from pgsql_test_gy"; - - otl_stream i(1, strSql.c_str(), db); - if (!i.eof()) { - i >> tm; - QString qstrYear = QString("%1").arg(tm.year, 4, 10, QLatin1Char('0')); - QString qstrMonth = QString("%1").arg(tm.month, 2, 10, QLatin1Char('0')); - int iYear = qstrYear.toInt(); - int iMonth = qstrMonth.toInt(); - QString qCurrentYear = QDateTime::currentDateTime().toString("yyyy"); - QString qCurrentMonth = QDateTime::currentDateTime().toString("MM"); - if (!qstrYear.isEmpty() && !qstrMonth.isEmpty()) { - if ((iYear >= 1970) || (iMonth >= 1)) - return 0; - else { - printf("qstrYear= %s£¬iYear= %d£¬qCurrentYear= %sÇÒqstrMonth= %s£¬iMonth= %d£¬qCurrentMonth= %s²»µÈ£¬Ðè¼ì²éÊý¾Ý¿âOTLÁ¬½Ó£¡\n", qstrYear.toAscii().data(), iYear, qCurrentYear.toAscii().data(), qstrMonth.toAscii().data(), iMonth, qCurrentMonth.toAscii().data()); - return -1; - } - } - else { - printf("Sql²éѯϵͳÈÕÆÚqstrYear= %s»òqstrMonth= %sΪ¿Õ£¬Ðè¼ì²éÊý¾Ý¿âOTLÁ¬½Ó£¡\n", qstrYear.toAscii().data(), qstrMonth.toAscii().data()); - return -1; - } - - printf(">>>Sql²éѯϵͳÈÕÆÚqstrYear= %s£¬qCurrentYear= %s£¬qstrMonth= %s£¬qCurrentMonth= %s \n", qstrYear.toAscii().data(), qCurrentYear.toAscii().data(), qstrMonth.toAscii().data(), qCurrentMonth.toAscii().data()); - } - } - catch (otl_exception& e) - { - printf("Sql²éѯϵͳÈÕÆÚʱ¼äʧ°Ü£¬ERROR code= %d, msg= %s \n", g_strOTLConnect.c_str(), e.code, e.msg); - return e.code; - } - return 0; -} - -int OTLDbconnected() { - cout << "db.connect is :" << db.connected << endl; - return db.connected; -} -////////////////////////////////////////////////////////////////////////////////Êý¾Ý¿â²¿·Ö -int write_to_db(const char* sqlstm) //дÊý¾Ý¿â -{ - try { - apr_sleep(apr_time_from_sec(1) / 1000); - otl_stream i(1, sqlstm, db); - i.flush(); - i.close(); - db.commit(); - - printf(">>>µ±Ç°Ð´Êý¾Ý¿âSql= %s\n", sqlstm); - } - catch (otl_exception& e) - { - if (e.code != 1) - { - printf("дÊý¾Ý¿âʧ°Ü£¬code= %d£¬msg= %s£¬Sql= %s\n", e.code, e.msg, sqlstm); - OTLConnect(); - } - return e.code; - } - return 0; -} - void WebSocketThread::run() { //if (g_node_id != THREE_SECS_DATA_BASE_NODE_ID) @@ -2805,8 +2428,6 @@ void Get_Recall_Time_Char(char* start_time, char* end_time, QList& r long long endtime = end_dt.toMSecsSinceEpoch() / 1000; //²¹ÕнáÊøÊ±¼ä QList timestamp_list; //Êý¾Ý¿âÍêÕûÐԼǼʱ¼äµã QList recallinfo_list; //´ý²¹ÕжÓÁÐ - //QList recallinfo_list_hour; //´ý²¹ÕжÓÁÐ-ÒÔСʱΪ×î´ó¼ä¸ô - RecallInfo info; info.starttime = starttime; @@ -2974,19 +2595,8 @@ int HandleReceiveMessage(int socketClient, char buffer[256]) // } return 000000; } -//// ÅжÏʱ¼ä²îÊÇ·ñ³¬¹ýÊ®·ÖÖÓ -//bool IsTimeDifferenceGreaterThanTenMinutes(apr_time_t time1, apr_time_t time2) { -// // ¼ÆËãʱ¼ä²î -// apr_int64_t timeDiff = apr_time_diff(time1, time2); -// -// // ת»»Îª·ÖÖÓ -// apr_int64_t minutes = apr_time_sec(timeDiff) / 60; -// -// // ÅжÏʱ¼ä²îÊÇ·ñ´óÓÚÊ®·ÖÖÓ -// return (minutes > 10); -//} -void Get_Recall_Time(char* time, QList& recallinfo_list_hour); +/////////////////////////////////////////////////////////////////////////////////////// void Cout_account_information() { ied_t* ied = NULL; int iedno; @@ -3011,511 +2621,6 @@ void Cout_account_information() { } } -//½«Ê±¼ä´Áתqstring -QString timestampToYYYYMMDD(long long timestamp) { - // ½«long longʱ¼ä´Áת»»ÎªQDateTime - QDateTime dateTime = QDateTime::fromMSecsSinceEpoch(timestamp * 1000); - - // ÌáÈ¡ÈÕÆÚ²¿·Ö£¬²¢¸ñʽ»¯ÎªYYYYMMDD - // ¸ñʽ»¯QDateTime¶ÔÏóΪQString£¬¾«È·µ½Ð¡Ê± - QString formattedDateTime = dateTime.toString("yyyyMMddHH"); - - return formattedDateTime; -} - -bool containsDash(const char* str, size_t len) { - for (size_t i = 0; i < len; ++i) { - if (str[i] == '-') { - return true; // ÕÒµ½'-'×Ö·û£¬·µ»Øtrue - } - } - return false; // ûÓÐÕÒµ½'-'×Ö·û£¬·µ»Øfalse -} - -bool CheckPG_To_Recall(long long start, long long end, char* Monitorid) -{ - QDateTime deltime_Qtime = QDateTime::fromTime_t(start); - QDateTime deltime_Qtime_end = QDateTime::fromTime_t(end); - QString tmp_chr1 = deltime_Qtime.toString("yyyy-MM-dd"); //µ±Ç°Ìì - QString start_chr1 = deltime_Qtime.toString("yyyy-MM-dd hh:mm:ss"); //µ±Ç°Ìì - QString end_chr1 = deltime_Qtime_end.toString("yyyy-MM-dd hh:mm:ss"); //µ±Ç°Ìì - - int timespan = 3;//ĬÈÏʱ¼ä¼ä¸ô - - try { - int rtState = OTLDbconnected(); - //int rtState = db.connected; - if (rtState == 0) { - int ret = OTLConnect(); - } - //printf("\nPostgreSL 1 %s \n", POSTGRES_SCHEMA); - std::string str2 = POSTGRES_SCHEMA;//schame analy - std::string str3 = POSTGRES_TABLEPREFIX;//schame analy - std::string str1 = "select \"exp_num\",\"act_num\" from \""; - str1.append(str2); - str1.append("\".\""); - str1.append(str3); - str1.append("meas_pq_measpoint_intact_tr\" "); - str1.append("WHERE \"statistical_date\" = '"); - str1.append(tmp_chr1.toAscii().data()); - str1.append("' AND \"monitor_id\" = '"); - str1.append(Monitorid); - str1.append("'"); - otl_stream i(1, // buffer size - str1.c_str(), - //SELECT statement - db //connect object - ); - double exp_num; - double act_num; - while (!i.eof()) { //while not end-of-data - i >> exp_num >> act_num; - timespan = 1440 / exp_num; - printf("\n %f %f %d \n", exp_num, act_num, timespan); - } - //OTLDisconnect(); - } - catch (otl_exception& e) - { - printf("\nPostgreSL\"%s\"select error,ERROR code= %d,msg= %s \n", g_strOTLConnect.c_str(), e.code, e.msg); - return false; - } - - try { - long long starttime = start; //²¹ÕÐÆðʼʱ¼ä - long long endtime = starttime + 3599; //²¹ÕнáÊøÊ±¼ä - QList timestamp_list; //Êý¾Ý¿âÍêÕûÐԼǼʱ¼äµã - QList recallinfo_list; //´ý²¹ÕжÓÁÐ - QList recallinfo_list_hour; //´ý²¹ÕжÓÁÐ-ÒÔСʱΪ×î´ó¼ä¸ô - - int rtState = OTLDbconnected(); - //int rtState = db.connected; - if (rtState == 0) { - int ret = OTLConnect(); - } - /*OTLConnect();*/ - std::string str2 = POSTGRES_SCHEMA;//schame analy - std::string str3 = POSTGRES_TABLEPREFIX;//schame analy - std::string str1 = "SELECT unnest(value_time) AS timestamp_value FROM \""; - str1.append(str2); - str1.append("\".\""); - str1.append(str3); - str1.append("meas_pq_measpoint_intact_tr\" "); - str1.append("WHERE \"statistical_date\" = '"); - str1.append(tmp_chr1.toAscii().data()); - str1.append("' AND \"monitor_id\" = '"); - str1.append(Monitorid); - str1.append("' ORDER BY timestamp_value"); - - std::string str4 = "select b1.timestamp_value from ("; - str4.append(str1); - str4.append(") b1 where b1.timestamp_value >= '"); - str4.append(start_chr1.toAscii().data()); - str4.append("' and b1.timestamp_value <= '"); - str4.append(end_chr1.toAscii().data()); - str4.append("'"); - otl_stream i(1, // buffer size - str4.c_str(), - //SELECT statement - db //connect object - ); - otl_datetime timestamp; - while (!i.eof()) { //while not end-of-data - i >> timestamp; - - struct tm timeinfo; - timeinfo.tm_year = timestamp.year - 1900; // Äê·ÝÐèÒª¼õÈ¥1900 - timeinfo.tm_mon = timestamp.month - 1; // Ô·ÝÐèÒª¼õÈ¥1 - timeinfo.tm_mday = timestamp.day; - timeinfo.tm_hour = timestamp.hour; - timeinfo.tm_min = timestamp.minute; - timeinfo.tm_sec = timestamp.second; - - time_t timestamp = std::mktime(&timeinfo); - long long stamp = static_cast(timestamp); - timestamp_list.append(stamp); - } - //OTLDisconnect(); - - if (timestamp_list.size() <= (60 / timespan) * 0.97) //ÍêÕûÐÔÊý¾Ý±íÎÞÊý¾Ý - { - printf("\n return ture %d %f\n", timestamp_list.size(), (60 / timespan) * 0.97); - return true; - } - else - { - printf("\n return false %d %f\n", timestamp_list.size(), (60 / timespan) * 0.97); - return false; - } - } - catch (otl_exception& e) - { - printf("\nPostgreSL\"%s\"select error,ERROR code= %d,msg= %s \n", g_strOTLConnect.c_str(), e.code, e.msg); - return false; - } - printf("\n>>>error quit!!\n"); - return true; -} - -//WW 2023-08-26 Ôö¼Ówebapµ÷Óà end -////////////////////////////////////////// -///////zwÐÞ¸Ä 2023-8-30 xmlÄ£ÐÍÊý¾Ý¿â¶ÁÈ¡ -int OTL_Select_xmlModel() //xmlÄ£ÐÍÊý¾Ý¿â¶ÁÈ¡ -{ - try { - OTLConnect(); - //printf("\nPostgreSL 1 %s \n", POSTGRES_SCHEMA); - std::string str2 = POSTGRES_SCHEMA;//schame analy - std::string str3 = POSTGRES_TABLEPREFIX;//schame analy - std::string str1 = "select \"model_id\",\"tmnl_type\",\"tmnl_factory\",\"file_name\",\"update_time\" from \""; - str1.append(str2); - str1.append("\".\""); - str1.append(str3); - str1.append("meas_pq_icd_model_tr\" "); - //int rtState = OTLState(); - otl_stream i(1, // buffer size - str1.c_str(), - //SELECT statement - db //connect object - ); - char MODEL_ID[64]; - char TMNL_TYPE[64]; - char TMNL_FACTORY[64]; - char FILE_NAME[128]; - otl_datetime UPDATE_TIME; - //printf("\nPostgreSL 2\n"); - //create select stream - while (!i.eof()) { //while not end-of-data - //printf("\nPostgreSL 3\n"); - i >> MODEL_ID >> TMNL_TYPE >> TMNL_FACTORY >> FILE_NAME >> UPDATE_TIME; - //QString tempdate = QString("%1-%2-%3 %4:%5:%6").arg(UPDATE_TIME.year, 4, 10, QLatin1Char('0')).arg(UPDATE_TIME.month, 2, 10, QLatin1Char('0')).arg(UPDATE_TIME.day, 2, 10, QLatin1Char('0')).arg(UPDATE_TIME.hour, 2, 10, QLatin1Char('0')).arg(UPDATE_TIME.minute, 2, 10, QLatin1Char('0')).arg(UPDATE_TIME.second, 2, 10, QLatin1Char('0')); - //QDateTime dt = QDateTime::fromString(tempdate, "yyyy-MM-dd hh:mm:ss"); - Set_xml_databaseinfo(MODEL_ID, TMNL_TYPE, TMNL_FACTORY, FILE_NAME, UPDATE_TIME.year, UPDATE_TIME.month, UPDATE_TIME.day, UPDATE_TIME.hour, UPDATE_TIME.minute, UPDATE_TIME.second); - //cout << "FRONT_IP=" << f2 << endl; - } - OTLDisconnect(); - } - catch (otl_exception& e) - { - printf("\nPostgreSL\"%s\"select error,ERROR code= %d,msg= %s \n", g_strOTLConnect.c_str(), e.code, e.msg); - return e.code; - } - return 0; - -} - -int OTL_Select_DecideRecall(char* time, char* id)//ÅжÏÊÇ·ñÐèÒª²¹ÕÐ -{ - int flag = 1; - try { - int rtState = OTLDbconnected(); - //int rtState = db.connected; - if (rtState == 0) { - int ret = OTLConnect(); - } - //printf("\nPostgreSL 1 %s \n", POSTGRES_SCHEMA); - std::string str2 = POSTGRES_SCHEMA;//schame analy - std::string str3 = POSTGRES_TABLEPREFIX;//schame analy - std::string str1 = "select \"exp_num\",\"act_num\" from \""; - str1.append(str2); - str1.append("\".\""); - str1.append(str3); - str1.append("meas_pq_measpoint_intact_tr\" "); - str1.append("WHERE \"statistical_date\" = '"); - str1.append(time); - str1.append("' AND \"monitor_id\" = '"); - str1.append(id); - str1.append("'"); - otl_stream i(1, // buffer size - str1.c_str(), - //SELECT statement - db //connect object - ); - double exp_num; - double act_num; - while (!i.eof()) { //while not end-of-data - i >> exp_num >> act_num; - if (exp_num * 0.8 <= act_num) { - flag = 0; - } - //printf("\n %f %f %f \n", exp_num, act_num, exp_num * 0.8); - } - //OTLDisconnect(); - } - catch (otl_exception& e) - { - printf("\nPostgreSL\"%s\"select error,ERROR code= %d,msg= %s \n", g_strOTLConnect.c_str(), e.code, e.msg); - flag = 0; - } - return flag; -} - -void OTL_Select_recall(char* time, char* id) //Êý¾ÝÍêÕûÐÔ²¹ÕÐÅÐ¶Ï -{ - try { - QDateTime dt = QDateTime::fromString(time, "yyyy-MM-dd"); - long long starttime = dt.toMSecsSinceEpoch() / 1000; //²¹ÕÐÆðʼʱ¼ä - long long endtime = starttime + 86399; //²¹ÕнáÊøÊ±¼ä - QList timestamp_list; //Êý¾Ý¿âÍêÕûÐԼǼʱ¼äµã - QList recallinfo_list; //´ý²¹ÕжÓÁÐ - QList recallinfo_list_hour; //´ý²¹ÕжÓÁÐ-ÒÔСʱΪ×î´ó¼ä¸ô - - int rtState = OTLDbconnected(); - //int rtState = db.connected; - if (rtState == 0) { - int ret = OTLConnect(); - } - /*OTLConnect();*/ - std::string str2 = POSTGRES_SCHEMA;//schame analy - std::string str3 = POSTGRES_TABLEPREFIX;//schame analy - std::string str1 = "SELECT unnest(value_time) AS timestamp_value FROM \""; - str1.append(str2); - str1.append("\".\""); - str1.append(str3); - str1.append("meas_pq_measpoint_intact_tr\" "); - str1.append("WHERE \"statistical_date\" = '"); - str1.append(time); - str1.append("' AND \"monitor_id\" = '"); - str1.append(id); - str1.append("' ORDER BY timestamp_value"); - otl_stream i(1, // buffer size - str1.c_str(), - //SELECT statement - db //connect object - ); - otl_datetime timestamp; - while (!i.eof()) { //while not end-of-data - i >> timestamp; - - struct tm timeinfo; - timeinfo.tm_year = timestamp.year - 1900; // Äê·ÝÐèÒª¼õÈ¥1900 - timeinfo.tm_mon = timestamp.month - 1; // Ô·ÝÐèÒª¼õÈ¥1 - timeinfo.tm_mday = timestamp.day; - timeinfo.tm_hour = timestamp.hour; - timeinfo.tm_min = timestamp.minute; - timeinfo.tm_sec = timestamp.second; - - time_t timestamp = std::mktime(&timeinfo); - long long stamp = static_cast(timestamp); - timestamp_list.append(stamp); - - /*QDateTime dt = QDateTime::fromString(time, "yyyy-MM-dd"); - long long timestamp2 = dt.toMSecsSinceEpoch() / 1000; - printf("\n %lld \n", timestamp2);*/ - /*QString tempdate = QString("%1-%2-%3 %4:%5:%6").arg(UPDATE_TIME.year, 4, 10, QLatin1Char('0')).arg(UPDATE_TIME.month, 2, 10, QLatin1Char('0')).arg(UPDATE_TIME.day, 2, 10, QLatin1Char('0')).arg(UPDATE_TIME.hour, 2, 10, QLatin1Char('0')).arg(UPDATE_TIME.minute, 2, 10, QLatin1Char('0')).arg(UPDATE_TIME.second, 2, 10, QLatin1Char('0')); - printf("\n %s \n", tempdate.toAscii().data());*/ - //QDateTime dt = QDateTime::fromString(tempdate, "yyyy-MM-dd hh:mm:ss"); - } - //OTLDisconnect(); - - if (timestamp_list.size() == 0) //ÍêÕûÐÔÊý¾Ý±íÎÞÊý¾Ý - { - RecallInfo info; - info.starttime = starttime; - info.endtime = endtime; - recallinfo_list.append(info); - } - else if (timestamp_list.size() == 1)//´æÔÚ1ÌõÊý¾Ý - { - long long temptime = timestamp_list[0]; - if (temptime != starttime && temptime != endtime) - { - RecallInfo info1; - info1.starttime = starttime; - info1.endtime = temptime - 1; - - RecallInfo info2; - info2.starttime = temptime + 1; - info2.endtime = endtime; - - recallinfo_list.append(info1); - recallinfo_list.append(info2); - } - else - { - RecallInfo info; - info.starttime = starttime + 1; - info.endtime = endtime - 1; - recallinfo_list.append(info); - } - } - else //´æÔÚ¶àÌõÊý¾Ý - { - for (int i = 1; i < timestamp_list.size(); i++) - { - if (i == 1) - { - timestamp_list[0];//Í·Êý¾Ý - timestamp_list[timestamp_list.size() - 1];//βÊý¾Ý - - if (timestamp_list[0] - starttime > 600) - { - RecallInfo info; - info.starttime = starttime + 1; - info.endtime = timestamp_list[0] - 1; - recallinfo_list.append(info); - } - if (endtime - timestamp_list[timestamp_list.size() - 1] > 600) - { - RecallInfo info; - info.starttime = timestamp_list[timestamp_list.size() - 1] + 1; - info.endtime = endtime - 1; - recallinfo_list.append(info); - } - } - - long long temptime1 = timestamp_list[i - 1]; - long long temptime2 = timestamp_list[i]; - if (temptime2 - temptime1 > 600) - { - RecallInfo info; - info.starttime = temptime1 + 1; - info.endtime = temptime2 - 1; - recallinfo_list.append(info); - } - } - } - - for (int i = 0; i < recallinfo_list.size(); i++) - { - //printf("\n %lld ----- %11d\n", recallinfo_list[i].starttime, recallinfo_list[i].endtime); - long long duration = recallinfo_list[i].endtime - recallinfo_list[i].starttime; - long long max_interval = 3600; - for (long long j = 0; j <= duration; j += max_interval) - { - if (j + max_interval > duration) { - long long start = recallinfo_list[i].starttime + j; - long long end = recallinfo_list[i].endtime; - - RecallInfo info; - info.starttime = start - 10; - info.endtime = end - 10; - recallinfo_list_hour.append(info); - } - else { - long long start = recallinfo_list[i].starttime + j; - long long end = recallinfo_list[i].starttime + j + max_interval; - - RecallInfo info; - info.starttime = start - 10; - info.endtime = end - 10; - recallinfo_list_hour.append(info); - } - } - } - - LD_info_t* LD_info = find_LD_info_only_from_mp_id(id); - if (LD_info == NULL || LD_info->read_flag == 0) { - printf("\n Find LD_info == null \n"); - } - else { - for (int j = 0; j < recallinfo_list_hour.size(); j++) { - CJournalRecall jr; - jr.MonitorID = QString(LD_info->mp_id); - jr.StartTime = QDateTime::fromTime_t(recallinfo_list_hour[j].starttime).toString("yyyy-MM-dd hh:mm:ss"); - jr.EndTime = QDateTime::fromTime_t(recallinfo_list_hour[j].endtime).toString("yyyy-MM-dd hh:mm:ss"); - jr.STEADY = QString::number(1, 10); - jr.VOLTAGE = QString::number(1, 10); - g_StatisticLackList_list_mutex.lock(); - g_StatisticLackList.push_back(jr); - g_StatisticLackList_list_mutex.unlock(); - } - //if (recallinfo_list_hour.size() != 0) { - // if (LD_info->autorecallcount != 0) { - // for (int j = 0; j < LD_info->autorecallcount; j++) { - // delete LD_info->autorecall[j]; - // } - // delete LD_info->autorecall; - // LD_info->autorecallcount = 0; - // } - // LD_info->autorecallflag = 0; - // LD_info->autorecallcount = recallinfo_list_hour.size(); - // LD_info->autorecall = new autorecall_t * [recallinfo_list_hour.size()]; - // for (int j = 0; j < recallinfo_list_hour.size(); j++) { - // //printf("\n %lld ===== %11d\n", recallinfo_list_hour[j].starttime, recallinfo_list_hour[j].endtime); - // LD_info->autorecall[j] = new autorecall_t[1]; - // LD_info->autorecall[j]->start = recallinfo_list_hour[j].starttime; - - // LD_info->autorecall[j]->end = recallinfo_list_hour[j].endtime; - // } - //} - } - } - catch (otl_exception& e) - { - printf("\nPostgreSL\"%s\"select error,ERROR code= %d,msg= %s \n", g_strOTLConnect.c_str(), e.code, e.msg); - } -} - -//CZY -void Get_Recall_Time(char* time, QList& recallinfo_list_hour) //Êý¾ÝÍêÕûÐÔ²¹ÕÐÅÐ¶Ï -{ - - QDateTime dt = QDateTime::fromString(time, "yyyy-MM-dd"); - // ½« QDateTime ¶ÔÏóת»»Îª×Ö·û´® - QString dateTimeString = dt.toString("yyyy-MM-dd"); - - printf("\nQDateTime dt is\"%s\" \n", dateTimeString.toStdString().c_str()); - long long starttime = dt.toMSecsSinceEpoch() / 1000; //²¹ÕÐÆðʼʱ¼ä - long long endtime = starttime + 86399; //²¹ÕнáÊøÊ±¼ä - QList timestamp_list; //Êý¾Ý¿âÍêÕûÐԼǼʱ¼äµã - QList recallinfo_list; //´ý²¹ÕжÓÁÐ - //QList recallinfo_list_hour; //´ý²¹ÕжÓÁÐ-ÒÔСʱΪ×î´ó¼ä¸ô - - - RecallInfo info; - info.starttime = starttime; - info.endtime = endtime; - recallinfo_list.append(info); - - for (int i = 0; i < recallinfo_list.size(); i++) - { - //printf("\n %lld ----- %11d\n", recallinfo_list[i].starttime, recallinfo_list[i].endtime); - long long duration = recallinfo_list[i].endtime - recallinfo_list[i].starttime; - long long max_interval = 3600; - for (long long j = 0; j <= duration; j += max_interval) - { - if (j + max_interval > duration) { - long long start = recallinfo_list[i].starttime + j; - long long end = recallinfo_list[i].endtime; - - RecallInfo info; - info.starttime = start; - info.endtime = end; - recallinfo_list_hour.append(info); - } - else { - long long start = recallinfo_list[i].starttime + j; - long long end = recallinfo_list[i].starttime + j + max_interval; - - RecallInfo info; - info.starttime = start; - info.endtime = end; - recallinfo_list_hour.append(info); - } - } - } - -} - -char* getoneday(int num) -{ - apr_time_t previousTime = apr_time_now(); - long long stamp = static_cast(previousTime) / 1000000; - long long deltime = stamp - (60 * 60 * 24 * num);//¼õÈ¥1Ìì - QDateTime deltime_Qtime = QDateTime::fromTime_t(deltime); - QString tmp_chr1 = deltime_Qtime.toString("yyyy-MM-dd"); - QByteArray byteArray = tmp_chr1.toLocal8Bit(); - char* charArray = new char[byteArray.size()]; - memcpy(charArray, byteArray.data(), byteArray.size()); - charArray[byteArray.size()] = '\0'; - return charArray; -} -void deletechar(char* day) -{ - delete[] day; -} - /// /// ɾ³ý¹ýÆÚµÄxml /// @@ -3726,7 +2831,6 @@ void SendWebAPI_web(const string strUrl, const char* code, char** ptr) curl_easy_cleanup(curl); } - /*/////////////////////////////////////////////////////////lnk10-24¸ù¾Ýweb½Ó¿ÚÐÞ¸Ä/////////////////////////////////////////////////////////////*/ //Ìí¼ÓÁËjson×Ö·û´®µÄÈë²Î // »Øµ÷º¯Êý£¬½«Êý¾ÝÖ±½Ó×·¼Óµ½ *ptr ÖÐ @@ -4938,7 +4042,7 @@ int parse_device_cfg_web() } catch (otl_exception& e) { - printf("\ndev tr\"%s\"select error,ERROR code= %d,msg= %s \n", g_strOTLConnect.c_str(), e.code, e.msg); + printf("\n device error,ERROR code= %d,msg= %s \n", e.code, e.msg); return e.code; } } @@ -5126,7 +4230,7 @@ int parse_model_cfg_web() } catch (otl_exception& e) { - printf("\nicd model\"%s\"select error,ERROR code= %d,msg= %s \n", g_strOTLConnect.c_str(), e.code, e.msg); + printf("\n icd model error,ERROR code= %d,msg= %s \n", e.code, e.msg); return e.code; } } @@ -5183,7 +4287,7 @@ char* parse_model_cfg_web_one(ied_t* ied) } catch (otl_exception& e) { - printf("\nicd model\"%s\"select error,ERROR code= %d,msg= %s \n", g_strOTLConnect.c_str(), e.code, e.msg); + printf("\n icd model error,ERROR code= %d,msg= %s \n", e.code, e.msg); return NULL; } } diff --git a/include/rocketmq/SimpleProducer.h b/include/rocketmq/SimpleProducer.h index ff6a7df..d02db6b 100644 --- a/include/rocketmq/SimpleProducer.h +++ b/include/rocketmq/SimpleProducer.h @@ -27,8 +27,6 @@ void rocketmq_test_300(int mpnum,int front_index); } //void rocketmq_test_300(int mpnum,int front_index);//20241202lnk extern void my_rocketmq_send(Ckafka_data_t& data); -extern int parse_device_web_test_ext(); -extern int parse_device_web_test_dev(); ///////////////////////////////////////////////////////生产者 diff --git a/json/create_json.cpp b/json/create_json.cpp index 42dffb3..9254dc5 100644 --- a/json/create_json.cpp +++ b/json/create_json.cpp @@ -199,22 +199,19 @@ QList kafka_data_list; //kafka QMutex oss_data_list_mutex; //oss·¢ËÍÊý¾ÝËø zwÐÂÔö QList oss_data_list; //oss·¢ËÍÊý¾ÝÁ´±í zwÐÂÔö //-------------------------------------------------------------------------------------*/ -//////////////////////////////////////WW 2023-08-22 start -QMutex Sql_data_list_mutex; //SqlÖ´ÐÐÓï¾äËø -QList Sql_data_list; //SqlÖ´ÐÐÓï¾äÁ´±í -//////////////////////////////////////WW 2023-08-22 end - QMap data_timespan_list;//zwÐÞ¸Ä 2023 - 8 - 29 ¼ÆËãʱ¼ä¼ä¸ô -QMap xmlinfo_list;//zwÐÞ¸Ä ±£´æËùÓÐÐͺŶÔÓ¦µÄxmlÊý¾Ý-Êý¾Ý¿âÊý¾Ý ÐÂÔöµÄ½Úµã½âÎöÊý¾Ý kafka·¢ËÍÁ´±í +QMap xmlinfo_list;//zwÐÞ¸Ä ±£´æËùÓÐÐͺŶÔÓ¦µÄxmlÊý¾Ý-Êý¾Ý¿âÊý¾Ý ÐÂÔöµÄ½Úµã½âÎöÊý¾Ý kafka·¢ËÍÁ´±í XmlConfig xmlcfg;//zwÐÞ¸Ä 2023 - 8 - 14 Љˆxml½Úµã½âÎöµÄÊý¾Ý list topicList; //Kafka·¢ËÍÖ÷ÌâÁ´±í + int inited = false; //JiangSu_Config.xmlÊÇ·ñ³õʼ»¯±êʶ XmlConfig xmlcfg2;//lnk2024 - 8 - 13 Љˆ½ÇÐÍxml½Úµã½âÎöµÄÊý¾Ý list topicList2; //lnk2024-8-14½ÇÐÍKafka·¢ËÍÖ÷ÌâÁ´±í QMap xmlinfo_list2;//lnk2024-8-14 ±£´æ½ÇÐÍËùÓÐÐͺŶÔÓ¦µÄxmlÊý¾Ý-Êý¾Ý¿âÊý¾Ý ÐÂÔöµÄ½Úµã½âÎöÊý¾Ý kafka·¢ËÍÁ´±í + extern int isdelta_flag;//lnk2024-8-16 ½ÇÐͽÓÏß±êÖ¾ ///////////////////////////////////////////////lnk20241021Ìæ»»web½Ó¿Ú////////////////////////////////// diff --git a/json/save2json.cpp b/json/save2json.cpp index 92d7d09..befb130 100644 --- a/json/save2json.cpp +++ b/json/save2json.cpp @@ -82,9 +82,7 @@ httpThread httpThrd; //Web http mqconsumerThread mqconsumerThrd;//mqÏû·ÑÕßÏß³Ìlnk20241213 OnTimerThread onTimerThrd;//¶¨Ê±Ïß³Ì -extern QMutex Sql_data_list_mutex; //SqlÖ´ÐÐÓï¾äËø -extern QList Sql_data_list; //SqlÖ´ÐÐÓï¾äÁ´±í -extern int g_iOTLFlag; //SqlÊÇ·ñÖ´ÐбêÖ¾(0-²»Ö´ÐУ»1-Ö´ÐÐ) + extern int g_iSqlListSize; //SqlÖ´ÐÐÓï¾äÁ´±íÔÊÐí×î´óÔªËØ¸öÊý ×¢£ºSqlÁ´±íÖÐÔªËØ³¬¹ý´Ë¸öÊý£¬¶à³öÔªËØÐèÒÆ³ý£¡ extern int FILE_FLAG; extern int SEND_FLAG; @@ -2339,28 +2337,6 @@ int json_block_create_end(char v_wiring_type[], char monid_char[], int flicker_f return ret; } -//#define STATUS_NORMAL 0 /**< Õý³£ */ -//Æ´½ÓKafka Producer·¢ËÍÔÝ̬ʼþÏûÏ¢ Àý£º -//{"DATA_TYPE":"03", "TIME":"1542960911734", "1268918860":["CommResume"]} -void prcess_monitor_comm_2_json(int monitor_id, int status, long long tm) -{ - Ckafka_data_t data; - QString status_str = (status == 0) ? "CommResume" : "CommInterrupt"; - - try_start_kafka_thread(); - - data.monitor_id = monitor_id; - data.strTopic = "RTDATASOE"; - data.strText = QString("{\"DATA_TYPE\":\"03\", \"TIME\":\"%1\", \"%2\":[\"%3\"]}") - .arg(tm).arg(monitor_id).arg(status_str); - //·¢Éúʱ¿Ì£¬ºÁÃë //×°ÖÃÐòºÅ Àý£º1268918860 - QString str = data.strTopic + " " + data.strText; - printf("prcess_monitor_comm_2_json: %s \n", str.toStdString().c_str()); - - kafka_data_list_mutex.lock(); - kafka_data_list.append(data); - kafka_data_list_mutex.unlock(); -} ////////////////////////////////////////////////////////////////////////////// void clear_old_comtrade_files() diff --git a/mms/db_interface.h b/mms/db_interface.h index a384e8b..e7184de 100644 --- a/mms/db_interface.h +++ b/mms/db_interface.h @@ -42,9 +42,6 @@ #define SHOULD_UNREGISTER 2 /////////////////////////////////////////////////////////////////////////////// - - - #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ @@ -80,50 +77,28 @@ void add_mvl_type_ctrl(char doname[], int ctrl); int sel_mvl_type_ctrl_flag(char doname[]); void del_mvl_type_ctrl(); //²¹ÕÐģʽÓÅ»¯ end + #ifndef DB_INTERFACE_H #define DB_INTERFACE_H // ǰÏòÉùÃ÷ LD_info_t typedef struct LD_info_t LD_info_t; int urcbRealDataHasReceived(int dev_index, LD_info_t* LD_info, long long Time); //lnk20241223 #endif - -int is_rpt_Time_exact_hour() ; apr_status_t app_get_private_config(const char *myfilename); void parse_log_switch_ini(unsigned int* error,unsigned int* warn,unsigned int* info); - - -int parse_device_cfg_json_test(); -int parse_line_cfg_pg_test(); - -int parse_device_cfg_json(); -int parse_device_cfg_pg(); -int parse_line_cfg_pg(); void init_config(); int GetServerIndexFromDB(); - int parse_device_cfg(); int parse_line_cfg(); int parse_rpt_log_ini(); -int parse_json_cfg(); - void clear_all_LD_real_soe_report_shoud_register(); - void add_comm_log(char* log_str); -void prcess_monitor_comm_2_json(int monitor_id,int status,long long tm); - void clear_old_comtrade_files(); - int process_login_verify(); //////////////////////////////WW 20230819Ôö¼ÓÊý¾Ý¿â²Ù×÷º¯Êý -int OTLConnect(); //OTLÁ¬½ÓOracleÊý¾Ý¿â -int OTLDisconnect(); //OTL¶Ï¿ªOracleÊý¾Ý¿â -int OTLState(); //OTLÁ¬½ÓOracleÊý¾Ý¿â״̬ -int OTLDbconnected(); -int write_to_db(const char* sqlstm); //Êý¾Ý¿âдÈë -int OTLTestSelect();//²âÊÔÊý¾Ý¿â¶ÁÈ¡ void TestToken(); void TestBodyPost();//WW ²âÊÔqt post void TestSMSPost();//WW ²âÊÔqt post @@ -137,7 +112,6 @@ void coutTest();//CZY 2023-09-11 test void TestOBS();//WW 20230921 ²âÊÔ»ªÎªÔÆ·þÎñÆ÷ void OBSFile(char* localpath, char* cloudpath,const char* code); void OBSFile_del(char* cloudpath, const char* code); - void DataHub_Send_Datahub(char* topic, char* data);//datahubͨѶ void Nacos_GetParam(char* postgres_uid, char* postgres_pwd, char* web_clientid, char* web_clientsecret);//nacos void Nacos_GetParam_Ptr(const char* code, char** ptr); @@ -147,13 +121,12 @@ void Read_Nacos_Param_Web(char** client_id, char** client_secret, char** token_u void Read_Nacos_Param_Flag(int* file_flag, int* send_flag, int* front_inst, char** front_ip); void Read_Nacos_Param_Recall(int* recall_len, int* recall_sta, int* recall_daily); void Read_Nacos_Param_Uds(char** uds_upload_url, char** uds_download_url, char** uds_delete_url);//nacos»ñÈ¡uds²ÎÊý -int WebAPI_Uds_Upload(char* strUrl, char* loacl_path, char* uuid,char* filename); +int WebAPI_Uds_Upload(char* strUrl, char* loacl_path, char* uuid,char* filename); void WebAPI_Uds_Download(char* strUrl, char* uuid, char* local_path,char* filename); -int base64_decode(const char* indata, int inlen, char* outdata, long* outlen); -int testbase64(); +int base64_decode(const char* indata, int inlen, char* outdata, long* outlen); +int testbase64(); /////////////////////////////WW end - //////////////////////////////WW 20230822Ôö¼ÓÊý¾Ý¿âºÍWebSocketÏß³Ì void try_start_socket_thread(); //Æô¶¯Web SocketÏß³Ì void try_start_ontimer_thread();//Æô¶¯¶¨Ê±Ïß³Ìs @@ -162,37 +135,18 @@ void try_start_ontimer_thread();// //lnk20241029Ôö¼ÓhttpÏß³Ì//////////////////////////////////////// void try_start_web_http_thread(); //Æô¶¯WebhttpÏß³Ì void try_start_http_thread(); //Æô¶¯httpÏß³Ì - int try_start_mqtest_thread(int argc, char *argv[]); //20241202 -////////////////////////////////////////////////////////////////////// - -int OTL_Select_xmlModel(); //xmlÄ£ÐÍÊý¾Ý¿â¶ÁÈ¡ -void OTL_Select_recall(char* time, char* id); -int OTL_Select_DecideRecall(char* time, char* id);//ÅжÏÊÇ·ñÐèÒª²¹ÕÐ -char* getoneday(int num); -void deletechar(char* day); void CreateRecallXml(); void DeletcRecallXml(); - /*lnk10-11*//////////////////////////////////////////////////////////////////////// void rocketmq_test(); void rocketmq_test_300(int mpnum,int front_index); void SOEFileWeb_test(); void qvvr_test(); void comflag_test(); - -int parse_device_web_test_ext(); -int parse_device_web_test_dev(); -int parse_line_web_test(); -int parse_model_web_test(); -int parse_intact_web_test_read(); -int parse_device_web_test_front_read(); -int parse_device_web_test_front_write(); - int parse_device_cfg_web(); int parse_model_cfg_web(); - void SOEFileWeb(char* localpath,char* cloudpath,char* wavepath); ////////////////////////////////////////////////////////////////////////////////////// diff --git a/mms/mms_process.c b/mms/mms_process.c index a757836..8b9044d 100644 --- a/mms/mms_process.c +++ b/mms/mms_process.c @@ -10,16 +10,11 @@ * @latest: $Id: mms_process.c,v 1.28 2022/11/28 07:13:13 lizhongming Exp $ */ #include - #include "rdb_client.h" - -//#include "../misc/utf8_to_gb.h" -//#include "../misc/gb_to_utf8.h" #include #include "db_interface.h" #include "node.h" #include "ied.h" - #include "../json/mms_json_inter.h" #include "../cfg_parse/custom_printf.h"//lnk20250225 diff --git a/mms/mmscli_rpt.c b/mms/mmscli_rpt.c index 9319d3d..a1e374c 100644 --- a/mms/mmscli_rpt.c +++ b/mms/mmscli_rpt.c @@ -1098,7 +1098,6 @@ ST_VOID u_iec_rpt_ind_data_by_devtype(MVL_VAR_ASSOC** info_va, else if (mms_dec_data.data_item[ii].type == DATA_STR_TYPE) v = strtol(mms_dec_data.data_item[ii].u.data_str, NULL, 2); - //set_db_value(RPT_IDX,FULL_FCDA_Name,v, is_rpt_Time_exact_hour() ); if (strstr(rcb_info->RptID, "QVVR")) {//CZY 2023-08-17 WW 2022-11-14 ÐÞ¸ÄÅжÏLLN0$BR$brcbQVVR processQVVR_data(LD_info, FULL_FCDA_Name, v); } @@ -1486,7 +1485,6 @@ ST_VOID u_iec_rpt_ind_data(MVL_VAR_ASSOC** info_va, else if (mms_dec_data.data_item[ii].type == DATA_STR_TYPE) v = strtol(mms_dec_data.data_item[ii].u.data_str, NULL, 2); - //set_db_value(RPT_IDX,FULL_FCDA_Name,v, is_rpt_Time_exact_hour() ); if (strstr(rcb_info->RptID, "QVVR")) {//CZY 2023-08-17 WW 2022-11-14 ÐÞ¸ÄÅжÏLLN0$BR$brcbQVVR processQVVR_data(LD_info, FULL_FCDA_Name, v); } diff --git a/mms/parse_xml.c b/mms/parse_xml.c index 5d89f5b..60d9cd6 100644 --- a/mms/parse_xml.c +++ b/mms/parse_xml.c @@ -13,23 +13,18 @@ #include "rdb_client.h" #include "xmltools.h" #include "../cfg_parse/custom_printf.h"//lnk20250225 -//int comtrade_remain_file_num = 2147483647; + int comtrade_remain_file_num = 0; -//extern rdb_t* g_rdb ; extern node_t* g_node ; extern char g_my_conf_fname[256]; extern apr_pool_t* g_init_pool; extern apr_pool_t* g_run_pool; extern pt61850app_t* g_pt61850app; -//extern apr_time_t g_file_valid_time; -//extern byte_t g_file_name_len; -//extern byte_t g_file_time_from; - apr_status_t app_get_private_config(const char *myfilename) { - //apr_status_t rv = APR_SUCCESS; + char *v = NULL; char *str = NULL; @@ -98,28 +93,6 @@ apr_status_t app_get_private_config(const char *myfilename) 104,1,2 */ //lnk20250122start -#if 0 -int init_rptctrl_by_count(LD_info_t* LD_info,int rptcount) -{ - int j,i; - LD_info->rptcount = rptcount; - LD_info->rptinfo = apr_pcalloc( g_init_pool,rptcount*sizeof(rptinfo_t*) ); - for(j=0; jrptinfo[j] = apr_pcalloc( g_init_pool,sizeof(rptinfo_t) ); - LD_info->rptinfo[j]->LD_info = LD_info; - LD_info->rptinfo[j]->m_LastRegisterFailedTime = sGetMsTime() -10*60*1000; - LD_info->rptinfo[j]->m_LastUnRegisterFailedTime = sGetMsTime() -10*60*1000; - LD_info->rptinfo[j]->IntgPd = 60; - LD_info->rptinfo[j]->m_rcb_info = NULL; - LD_info->rptinfo[j]->rpt_registered = FALSE; - LD_info->rptinfo[j]->m_curRptSuffix = -1; - for(i=0; i<8; i++) - LD_info->rptinfo[j]->m_EntryID[i] = 0xff; - } - - return 0; -} -#endif #define MAX_RPT_COUNT 20 @@ -252,24 +225,6 @@ int fill_rptctrl_by_cfg(LD_info_t* LD_info,int rptno,char *buf) 104,1,2 */ -//lnk20250122start -#if 0 -int init_logctrl_by_count(LD_info_t* LD_info,int logcount) -{ - int j; - LD_info->logcount = logcount; - LD_info->loginfo = apr_pcalloc(g_init_pool, logcount * sizeof(loginfo_t*)); //new loginfo_t*[logcount]; - for(j=0; jloginfo[j] = apr_pcalloc(g_init_pool, sizeof(loginfo_t));//new loginfo_t[1]; - LD_info->loginfo[j]->LD_info = LD_info; - - LD_info->loginfo[j]->IntgPd = 600; - //LD_info->loginfo[j]->m_lcb_info = NULL; - } - - return 0; -} -#endif #define MAX_LOG_COUNT 20 @@ -319,7 +274,6 @@ int fill_logctrl_by_cfg(LD_info_t* LD_info,int logno,char *buf,char* devtype) if(!(str = strtok(NULL,","))) return 1; - //tmp_str = apr_pstrdup(g_init_pool,str); apr_snprintf(loginfo->logName,sizeof(loginfo->logName), devtype,LD_info->cpuno);//ÀýÈçPQM1 if((str = strtok(NULL,","))) loginfo->reasonCode = atoi(str); else return 1; @@ -340,11 +294,9 @@ int fill_logctrl_by_cfg(LD_info_t* LD_info,int logno,char *buf,char* devtype) loginfo->start_time = apr_time_now();// - apr_time_from_sec(600);// loginfo->end_time = apr_time_now(); - //loginfo->last_checktime = 0.0f;//-160*1000;//0.0f; loginfo->need_steady = 0; loginfo->need_voltage = 0; - //printf(" loginfo->logName=%s \n", loginfo->logName); return 0; } diff --git a/mms/rdb_client.c b/mms/rdb_client.c index 802765a..638b2f5 100644 --- a/mms/rdb_client.c +++ b/mms/rdb_client.c @@ -63,7 +63,6 @@ extern int three_secs_enabled; //WW 2023-08-22 start int server_socket = -1; -extern int g_iOTLFlag; //WW 2023-08-22 end /////////////////////////////////////////////////////////////////////////////// diff --git a/mms/rdb_client.h b/mms/rdb_client.h index 78cc670..41f0cde 100644 --- a/mms/rdb_client.h +++ b/mms/rdb_client.h @@ -490,7 +490,6 @@ int get_real_report_count(LD_info_t *LD_info); int delete_recall_xml(char* id); int parse_recall_xml(recall_xml_t* recall_xml,char *id); void process_recall_config(recall_xml_t* recall_xml); -int remove_recall_xml(); int init_rptctrl_by_count(LD_info_t* LD_info,int rptcount); int fill_rptctrl_by_cfg(LD_info_t* LD_info,int rptno,char *buf); @@ -509,8 +508,6 @@ void processRDRE_end(LD_info_t* LD_info); int extract_timestamp_from_cfg_file(char *comtrade_fn,long long *start_tm,long long *trig_tm); -int parse_file_names(char *file_match_str,char **filenames,int filenum,int *cfg_idx,int *dat_idx,char *file_base_name,char *file_yyyymm); - int parse_file_names_by_fltnum(int fltnum, char* domname, char** filenames, int filenum, int* cfg_idx, int* dat_idx, char* file_base_name, char* file_yyyymm); QVVR_t* find_qvvr_by_trig_tm(LD_info_t* LD_info,long long trig_tm);