fix phpst and phplt in statistic data
This commit is contained in:
@@ -145,7 +145,8 @@ public:
|
||||
QString WavePhasicA;
|
||||
QString WavePhasicB;
|
||||
QString WavePhasicC;
|
||||
QString UnitOfTimeUnit; //暂态事件持续事件单位:0 - 毫秒 1 - 秒
|
||||
QString TypeOfData; //闪变和统计是否合并 0-分开 1-合并
|
||||
QString UnitOfTimeUnit; //暂态事件持续事件单位:0 - 毫秒 1 - 秒 lnk20260127
|
||||
QString ValueOfTimeUnit; //上送值的时间:UTC-UTC时间 beijing-北京时间
|
||||
QString WaveTimeFlag; //录波文件的时间:UTC-UTC时间 beijing-北京时间
|
||||
QString IEDname; //例:PQMonitor
|
||||
@@ -244,6 +245,8 @@ bool get_xml_config_by_dev_type(const char* dev_type, XmlConfigC* out_cfg) {
|
||||
return false;
|
||||
}
|
||||
|
||||
memset(out_cfg, 0, sizeof(*out_cfg));
|
||||
|
||||
QString dev_type_q = QString::fromUtf8(dev_type);
|
||||
QMap<QString, Xmldata*>::iterator it = xmlinfo_list.find(dev_type_q);
|
||||
if (it == xmlinfo_list.end() || it.value() == nullptr) {
|
||||
@@ -259,6 +262,7 @@ bool get_xml_config_by_dev_type(const char* dev_type, XmlConfigC* out_cfg) {
|
||||
strncpy(out_cfg->WavePhasicB, cfg.WavePhasicB.toUtf8().constData(), sizeof(out_cfg->WavePhasicB) - 1);
|
||||
strncpy(out_cfg->WavePhasicC, cfg.WavePhasicC.toUtf8().constData(), sizeof(out_cfg->WavePhasicC) - 1);
|
||||
strncpy(out_cfg->UnitOfTimeUnit, cfg.UnitOfTimeUnit.toUtf8().constData(), sizeof(out_cfg->UnitOfTimeUnit) - 1);
|
||||
strncpy(out_cfg->TypeOfData, cfg.TypeOfData.toUtf8().constData(), sizeof(out_cfg->TypeOfData) - 1); out_cfg->TypeOfData[sizeof(out_cfg->TypeOfData) - 1] = '\0';//lnk20260127
|
||||
strncpy(out_cfg->ValueOfTimeUnit, cfg.ValueOfTimeUnit.toUtf8().constData(),sizeof(out_cfg->ValueOfTimeUnit) - 1);
|
||||
strncpy(out_cfg->WaveTimeFlag, cfg.WaveTimeFlag.toUtf8().constData(), sizeof(out_cfg->WaveTimeFlag) - 1);
|
||||
strncpy(out_cfg->IEDname, cfg.IEDname.toUtf8().constData(), sizeof(out_cfg->IEDname) - 1);
|
||||
@@ -898,6 +902,11 @@ bool ParseXMLConfig2(int xml_flag, XmlConfig *cfg, list<CTopic*> *ctopiclist,QSt
|
||||
{
|
||||
cfg->UnitOfTimeUnit.append(e.attribute("Unit"));
|
||||
}
|
||||
//lnk 20260127
|
||||
if ("TypeOfData" == strTag)
|
||||
{
|
||||
cfg->TypeOfData.append(e.attribute("Unit"));
|
||||
}
|
||||
if ("ValueOfTime" == strTag)
|
||||
{
|
||||
cfg->ValueOfTimeUnit.append(e.attribute("Unit"));
|
||||
@@ -1063,6 +1072,40 @@ int transfer_json_block_data(char v_wiring_type[], json_block_data *data) //json
|
||||
}
|
||||
}
|
||||
|
||||
//lnk20260127 添加数据类型区分
|
||||
bool typeofdata = false;
|
||||
|
||||
QString devType = data->dev_type;
|
||||
QByteArray devTypeBytes = devType.toUtf8();
|
||||
const char* dev_type_cstr = devTypeBytes.constData();
|
||||
qDebug() << "[DBG] devType (QString) =" << devType;
|
||||
qDebug() << "[DBG] devType length =" << devType.length();
|
||||
qDebug() << "[DBG] devTypeBytes =" << devTypeBytes;
|
||||
qDebug() << "[DBG] devTypeBytes size =" << devTypeBytes.size();
|
||||
|
||||
printf("[DBG] dev_type_cstr = '%s'\n", dev_type_cstr);
|
||||
XmlConfigC cfg1;
|
||||
if (get_xml_config_by_dev_type(dev_type_cstr, &cfg1)) {
|
||||
printf("========== XmlConfigC dump ==========\n");
|
||||
printf("WavePhasicFlag = '%s'\n", cfg1.WavePhasicFlag);
|
||||
printf("WavePhasicA = '%s'\n", cfg1.WavePhasicA);
|
||||
printf("WavePhasicB = '%s'\n", cfg1.WavePhasicB);
|
||||
printf("WavePhasicC = '%s'\n", cfg1.WavePhasicC);
|
||||
printf("UnitOfTimeUnit = '%s'\n", cfg1.UnitOfTimeUnit);
|
||||
printf("TypeOfData = '%s'\n", cfg1.TypeOfData);
|
||||
printf("ValueOfTimeUnit = '%s'\n", cfg1.ValueOfTimeUnit);
|
||||
printf("WaveTimeFlag = '%s'\n", cfg1.WaveTimeFlag);
|
||||
printf("IEDname = '%s'\n", cfg1.IEDname);
|
||||
printf("LDevicePrefix = '%s'\n", cfg1.LDevicePrefix);
|
||||
printf("=====================================\n");
|
||||
// 如果 TypeOfData == "1",则置 true
|
||||
if (strcmp(cfg1.TypeOfData, "1") == 0) {
|
||||
typeofdata = true;
|
||||
}
|
||||
} else {
|
||||
printf("not find this dev_type\n");
|
||||
}
|
||||
|
||||
bool shortjumpflag = false;
|
||||
bool longjumpflag = false;
|
||||
|
||||
@@ -1336,11 +1379,16 @@ int transfer_json_block_data(char v_wiring_type[], json_block_data *data) //json
|
||||
kafka_data_list_mutex.unlock(); //解锁
|
||||
longjumpflag = true;
|
||||
}
|
||||
if (longjumpflag == true || shortjumpflag == true) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
//lnk20260127
|
||||
if (typeofdata == false) {//不合并则处理完闪变就不处理其他数据
|
||||
if (longjumpflag == true || shortjumpflag == true) {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
} //②-②历史闪变数据解析结束!--------------------------------
|
||||
|
||||
//合并则继续处理其他数据
|
||||
if (1 == pDataType->iDataType) //②-①历史稳态数据-----------------------------------------------------------
|
||||
{
|
||||
Ckafka_data_t KafkaData; //kafka发送数据结构类对象
|
||||
|
||||
@@ -160,6 +160,7 @@ typedef struct {
|
||||
char WavePhasicB[64];
|
||||
char WavePhasicC[64];
|
||||
char UnitOfTimeUnit[64];
|
||||
char TypeOfData[64];
|
||||
char ValueOfTimeUnit[64];
|
||||
char WaveTimeFlag[64];
|
||||
char IEDname[64];
|
||||
|
||||
Reference in New Issue
Block a user