| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539 |
- #include "userinfoprocesscore.h"
- #include <../DataPrecessDog/dataprecess.h>
- #include "userinfo.h"
- //#include <QDebug>
- #define UN_REFERENCED_PARAMETER(x) {(x) = (x);}
- #define WxDbg
- #define ytDb
- #define ListenPort 3344
- #define changningSyncurl "http://www.cnfire119.cn/open/platform/analysis/analysisTest?appKey=4464378a1152474f82d0025e1bc847b3&secret=88fb10459cad484abeec27c576c853d8"
- UserInfoProcessCore::UserInfoProcessCore(QObject *parent) :
- QObject(parent)
- {
- idx1 = 1;
- idx2 = 1;
- idx3 = 1;
- CurrentIdx = 0;
- logthread = new LogThread(this);
- logthread->start();
- dbThread = new DataBaseThread(this);
- connect(dbThread,&DataBaseThread::SqlAction,this,&UserInfoProcessCore::appendLOg);
- connect(dbThread,&DataBaseThread::AlarmReport,this,&UserInfoProcessCore::AlarmReport);
- connect(dbThread,&DataBaseThread::MqttInfo,this,&UserInfoProcessCore::MqttInfo);
- connect(dbThread,&DataBaseThread::MqttInit,this,&UserInfoProcessCore::MqttConnect);
- dbThread->start();
- db = QSqlDatabase::addDatabase("QMYSQL","main_db");
- db.setHostName("47.98.201.187");
- db.setPort(3306);
- db.setUserName("root");
- db.setPassword("Yt2018IoT");
- db.setDatabaseName("jdxf");
- if(db.open()){
- logthread->appendData("main db opened");
- }else{
- logthread->appendData("main db failed");
- }
- timer = new QTimer(this);
- connect(timer,SIGNAL(timeout()),this,SLOT(time_out()));
- for(quint16 i=0;i<16;i++){
- wxThreads[0][i] = new WechartThreads(this,i,"47.98.201.73","/jdxf/wxapp.php/Home/Firewarn/message_sendalarm");
- connect(wxThreads[0][i],SIGNAL(wxchart(quint16,QDateTime,QString,bool)),this,SLOT(wxchart(quint16,QDateTime,QString,bool)));
- wxThreads[1][i] = new WechartThreads(this,i,"47.98.201.73","/jdxf/wxapp2.php/Home/Firewarn/message_sendalarm");
- connect(wxThreads[1][i],SIGNAL(wxchart(quint16,QDateTime,QString,bool)),this,SLOT(wxchart(quint16,QDateTime,QString,bool)));
- voiceThreads[i] = new ttsThreads(this,i,"47.98.201.73","/jdxf/wxapp2.php/Home/XVoiceAlarm/voice",80);
- connect(voiceThreads[i],SIGNAL(ttslog(quint16,QDateTime,QString,bool)),this,SLOT(ttslog(quint16,QDateTime,QString,bool)));
- repThread[i] = new ttsThreads(this,i,"127.0.0.1","/report",55335);
- connect(repThread[i],&ttsThreads::ttslog,this,&UserInfoProcessCore::replog);
- wssThread[i] = new ttsThreads(this,i,"47.98.201.73","/report",55125);
- connect(wssThread[i],&ttsThreads::ttslog,this,&UserInfoProcessCore::wsslog);
- wxThreads[0][i]->start();
- wxThreads[1][i]->start();
- voiceThreads[i]->start();
- repThread[i]->start();
- wssThread[i]->start();
- }
- wxcur = 0;
- ttscur = 0;
- repcur = 0;
- wssServer = new WssServer(this);
- wssServer->start();
- sr = new QTcpServer(this);
- connect(sr,SIGNAL(newConnection()),this,SLOT(new_incomming()));
- }
- void UserInfoProcessCore::start()
- {
- if(sr->listen(QHostAddress::Any,(ListenPort&0xffff))){
- timer->start(1000);
- }else{
- printf("listen failed\n");
- exit(1);
- }
- }
- void UserInfoProcessCore::MqttConnect(QString ip,QString port,QString name,QString passwd)
- {
- printf("mqtt init\n");
- printf("ip = %s, port = %s, name = %s, passwd = %s\n",ip.toUtf8().data(),port.toUtf8().data(),name.toUtf8().data(),passwd.toUtf8().data());
- m_client = new QMQTT::Client(QHostAddress(ip), static_cast<quint16>(port.toInt()), this);
- m_client->setUsername(name);
- m_client->setPassword(passwd.toLatin1());
- connect(m_client,&QMQTT::Client::connected,this,&UserInfoProcessCore::OnConnected);
- m_client->connectToHost();
- }
- void UserInfoProcessCore::OnConnected()
- {
- printf("mqtt connected\n");
- }
- void UserInfoProcessCore::getSyncData(quint64 srcAddr, QByteArray data)
- {
- dbThread->getSyncData(srcAddr,data);
- }
- bool UserInfoProcessCore::check_voicealarm(qulonglong devid)
- {
- bool ret=false;
- for(int i=0;i<10000;i++){
- if(devid==userinfoShm->userInfoParam[i].UserInfoAddr){
- if(userinfoShm->userInfoParam[i].Unused[ParamIdxPushParam2]!=0){
- ret = true;
- }
- break;
- }
- }
- return ret;
- }
- void UserInfoProcessCore::wxchart(quint16 idx, QDateTime t, QString data, bool dirflag)
- {
- UN_REFERENCED_PARAMETER(idx);
- QString Data = QString("[ %1 47.98.201.73 (wx) %2 ] %3")
- .arg(t.toString("yyyy-MM-dd HH:mm:ss.zzz"))
- .arg(dirflag?">>>":"<<<")
- .arg(data.replace('\n',"\\n").replace('\r',"\\r"));
- logthread->appendData(Data);
- // wssServer->subReport(QString("%1").arg(idx),dirflag?1:2,false,false,Data);
- }
- void UserInfoProcessCore::ttslog(quint16 idx, QDateTime t, QString data, bool dirflag)
- {
- UN_REFERENCED_PARAMETER(idx);
- QString Data = QString("[ %1 47.98.201.73 (tts) %2 ] %3")
- .arg(t.toString("yyyy-MM-dd HH:mm:ss.zzz"))
- .arg(dirflag?">>>":"<<<")
- .arg(data.replace('\n',"\\n").replace('\r',"\\r"));
- logthread->appendData(data);
- // wssServer->subReport(QString("%1").arg(idx),dirflag?1:2,false,false,Data);
- }
- void UserInfoProcessCore::replog(quint16 idx, QDateTime t, QString data, bool dirflag)
- {
- UN_REFERENCED_PARAMETER(idx);
- QString Data = QString("[ %1 47.98.201.187 (rep) %2 ] %3")
- .arg(t.toString("yyyy-MM-dd HH:mm:ss.zzz"))
- .arg(dirflag?">>>":"<<<")
- .arg(data.replace('\n',"\\n").replace('\r',"\\r"));
- logthread->appendData(Data);
- // wssServer->subReport(QString("%1").arg(idx),dirflag?1:2,false,false,Data);
- }
- void UserInfoProcessCore::wsslog(quint16 idx, QDateTime t, QString data, bool dirflag)
- {
- // UN_REFERENCED_PARAMETER(idx);
- logthread->appendData(QString("[ %1 47.98.201.73 (wss %2) %3 ] %4")
- .arg(t.toString("yyyy-MM-dd HH:mm:ss.zzz"))
- .arg(idx,2,10,QChar('0'))
- .arg(dirflag?">>>":"<<<")
- .arg(data.replace('\n',"\\n").replace('\r',"\\r")));
- }
- void UserInfoProcessCore::MqttInfo(QString infoStr,QString alarmStr,QString statusStr,QString topic1,QString topic2,QString topic3)
- {
- if((m_client->connectionState()==QMQTT::STATE_DISCONNECTED) || (m_client->connectionState()==QMQTT::STATE_INIT))
- {
- m_client->connectToHost();
- }
- if(m_client->connectionState()==QMQTT::STATE_CONNECTED)
- {
- //2021/11/15 山东党校需求 火灾告警系统,做一下筛选,只有含告警内容的推送,其他信息不要推了
- m_client->publish(QMQTT::Message(idx1++,topic1,infoStr.toUtf8().data()));
- if(idx1>9999)
- idx1 = 1;
- m_client->publish(QMQTT::Message(idx3++,topic3,statusStr.toUtf8().data()));
- if(idx3>9999)
- idx3 = 1;
- m_client->publish(QMQTT::Message(idx2++,topic2,alarmStr.toUtf8().data()));
- if(idx2>9999)
- idx2 = 1;
- }
- }
- void UserInfoProcessCore::AlarmReport(quint64 addr, quint64 insertid, QString type, QString time, QString name,quint64 port, QString address)
- {
- #ifdef ytDb
- // logthread->appendData(QString("(wss) addr:%1 type:%2 time:%3").arg(addr).arg(type).arg(time));
- QString phonelist = "";
- QString companyCode = "";
- for(int i=0;i<102400;i++){
- if(QString(sysConfShm->deviceInfo[i].DeviceId).toULongLong()==addr){
- companyCode = QString(sysConfShm->deviceInfo[i].CompanyCode);
- break;
- }
- }
- // QString rep = QString("{\"SubType\":1,\"DeviceId\":\"%1\",\"InsertId\":%2,\"Confirmed\":false}").arg(addr).arg(insertid);
- QString rep2 = QString("{\"SubType\":1,\"DeviceId\":\"%1\",\"InsertId\":%2,\"Confirmed\":0,\"CompanyCode\":\"%3\",\"evt_name\":\"%4\",\"evt\":\"%5\",\"alarm_time\":\"%6\"}")
- .arg(addr).arg(insertid).arg(companyCode).arg(name).arg(type).arg(time);
- // logthread->appendData(QString("(wss %1) append data \"%2\"").arg(repcur).arg(rep2));
- repThread[repcur]->appendData(rep2);
- wssThread[repcur++]->appendData(rep2);
- repcur &= 0x0f;
- if(companyCode.length()>0){
- for(int i=0;i<102400;i++){
- if(companyCode.compare(QString(sysConfShm->userInfo[i].CompanyCode))==0){
- QString phone = QString(sysConfShm->userInfo[i].CellPhone);
- if(phone.trimmed().length()>0){
- if(phonelist.length()==0)
- phonelist = phone;
- else
- phonelist.append(","+phone);
- }
- }
- }
- if(phonelist.length()>0){
- QString unique_number;
- if(port==0){
- unique_number = QString("%1%2").arg(addr).arg(address);
- }else{
- unique_number = QString("%1%2%3").arg(addr).arg(port).arg(address);
- }
- QString data = QString("id=%1&types=%2&insert_id=%3&phone=%4&unique_number=%5&time=%6").arg(addr).arg(type).arg(insertid).arg(phonelist).arg(unique_number).arg(time);
- wxThreads[0][wxcur&0x0f]->appendData(data);
- wxThreads[1][wxcur&0x0f]->appendData(data);
- wxcur++;
- wxcur &= 0x0f;
- }
- }
- #endif
- }
- QString UserInfoProcessCore::getSysStructType(quint8 stype)
- {
- switch(stype){
- case UserInfoReport::BuildingFireCtrlSysStatusType_Common:
- return QString::fromUtf8("通用系统 ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_FireRepSystem:
- return QString::fromUtf8("火灾报警系统 ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_FireActCtrler:
- return QString::fromUtf8("消防联动控制器 ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_WaterPoint:
- return QString::fromUtf8("消火栓系统 ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_AutoWater:
- return QString::fromUtf8("自动喷水灭火系统 ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_AirFireCtrler:
- return QString::fromUtf8("气体灭火系统 ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_WaterSpray1:
- return QString::fromUtf8("水喷雾灭火系统(泵启动方式) ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_WaterSpray2:
- return QString::fromUtf8("水喷雾灭火系统(压力容器启动方式) ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_Foam:
- return QString::fromUtf8("泡沫灭火系统 ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_DryFlower:
- return QString::fromUtf8("干粉灭火系统 ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_Smoker:
- return QString::fromUtf8("防烟排烟系统 ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_FireDoor:
- return QString::fromUtf8("防火门及卷帘门系统 ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_FireLift:
- return QString::fromUtf8("消防电梯 ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_EmBroad:
- return QString::fromUtf8("消防应急广播 ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_EmLighting:
- return QString::fromUtf8("消防应急照明和疏散指示系统 ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_PowerSupply:
- return QString::fromUtf8("消防电源 ");
- case UserInfoReport::BuildingFireCtrlSysStatusType_Telephone:
- return QString::fromUtf8("消防电话 ");
- }
- return QString("");
- }
- QString UserInfoProcessCore::getUnitType(quint8 utype)
- {
- switch(utype){
- case UserInfoReport::BuildingFireCtrlUnitType_Common:
- return QString::fromUtf8("通用设备 ");
- case UserInfoReport::BuildingFireCtrlUnitType_FireAlarmer:
- return QString::fromUtf8("火灾报警控制器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_GasAlarmer:
- return QString::fromUtf8("可燃气体探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_PointGasAlarmer:
- return QString::fromUtf8("点型可燃气体探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_SingleGasAlarmer:
- return QString::fromUtf8("独立式可燃气体探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_LineGasAlarmer:
- return QString::fromUtf8("线型可燃气体探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_EleAlarmer:
- return QString::fromUtf8("电气火灾监控告警器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_EleCurAlarmer:
- return QString::fromUtf8("剩余电流式电气火灾监控探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_EleTemAlarmer:
- return QString::fromUtf8("测温式电气火灾监控探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_Loop:
- return QString::fromUtf8("探测回路 ");
- case UserInfoReport::BuildingFireCtrlUnitType_Dispanel:
- return QString::fromUtf8("火灾显示盘 ");
- case UserInfoReport::BuildingFireCtrlUnitType_Button:
- return QString::fromUtf8("手动火灾报警按钮 ");
- case UserInfoReport::BuildingFireCtrlUnitType_HydrantBtn:
- return QString::fromUtf8("消火栓按钮 ");
- case UserInfoReport::BuildingFireCtrlUnitType_FireSensor:
- return QString::fromUtf8("火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_TemSensor:
- return QString::fromUtf8("感温火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_PointTemSersor:
- return QString::fromUtf8("点型感温火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_SPointTemSensor:
- return QString::fromUtf8("点型感温火灾探测器(S型) ");
- case UserInfoReport::BuildingFireCtrlUnitType_RPointTemSensor:
- return QString::fromUtf8("点型感温火灾探测器(R型) ");
- case UserInfoReport::BuildingFireCtrlUnitType_LineTemSensor:
- return QString::fromUtf8("线型感温火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_SLineTemSensor:
- return QString::fromUtf8("线型感温火灾探测器(S型) ");
- case UserInfoReport::BuildingFireCtrlUnitType_RLineTemSensor:
- return QString::fromUtf8("线型感温火灾探测器(R型) ");
- case UserInfoReport::BuildingFireCtrlUnitType_FibreTemSensor:
- return QString::fromUtf8("光纤感温火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_SmokeSensor:
- return QString::fromUtf8("感烟火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_IonSmokeSensor:
- return QString::fromUtf8("点型离子感烟火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_PhotoSmokeSensor:
- return QString::fromUtf8("点型光电感烟火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_LightSmokeSensor:
- return QString::fromUtf8("线型光束感烟火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_AirSmokeSensor:
- return QString::fromUtf8("吸气式感烟火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_FixSensor:
- return QString::fromUtf8("复合式火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_FixSmokeTemSensor:
- return QString::fromUtf8("复合式感烟感温探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_FixLightTemSensor:
- return QString::fromUtf8("复合式感光感温火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_FixLightSmokeSensor:
- return QString::fromUtf8("复合式感光感烟火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_UltraSensor:
- return QString::fromUtf8("紫外火焰探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_InfraSensor:
- return QString::fromUtf8("红外火焰探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_PhotoSensor:
- return QString::fromUtf8("感光火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_GasSensor:
- return QString::fromUtf8("气体探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_PicSensor:
- return QString::fromUtf8("图像摄像方式火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_SoundSensor:
- return QString::fromUtf8("感声火灾探测器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_GasFireSupp:
- return QString::fromUtf8("气体灭火控制器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_FireElectricity:
- return QString::fromUtf8("消防电气控制装置 ");
- case UserInfoReport::BuildingFireCtrlUnitType_CtrlDisplay:
- return QString::fromUtf8("消防控制室图形显示装置 ");
- case UserInfoReport::BuildingFireCtrlUnitType_Model:
- return QString::fromUtf8("模块 ");
- case UserInfoReport::BuildingFireCtrlUnitType_Input:
- return QString::fromUtf8("输入模块 ");
- case UserInfoReport::BuildingFireCtrlUnitType_Output:
- return QString::fromUtf8("输出模块 ");
- case UserInfoReport::BuildingFireCtrlUnitType_IO:
- return QString::fromUtf8("输入/输出模块 ");
- case UserInfoReport::BuildingFireCtrlUnitType_Relay:
- return QString::fromUtf8("中继模块 ");
- case UserInfoReport::BuildingFireCtrlUnitType_FirePump:
- return QString::fromUtf8("消防水泵 ");
- case UserInfoReport::BuildingFireCtrlUnitType_FireTank:
- return QString::fromUtf8("消防水箱 ");
- case UserInfoReport::BuildingFireCtrlUnitType_SparyPump:
- return QString::fromUtf8("喷淋泵 ");
- case UserInfoReport::BuildingFireCtrlUnitType_FlowIndicator:
- return QString::fromUtf8("水流指示器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_SignalTap:
- return QString::fromUtf8("信号阀 ");
- case UserInfoReport::BuildingFireCtrlUnitType_AlarmTap:
- return QString::fromUtf8("报警阀 ");
- case UserInfoReport::BuildingFireCtrlUnitType_PressureSwitch:
- return QString::fromUtf8("压力开关 ");
- case UserInfoReport::BuildingFireCtrlUnitType_ValveDrive:
- return QString::fromUtf8("阀驱动装置 ");
- case UserInfoReport::BuildingFireCtrlUnitType_FireDoor:
- return QString::fromUtf8("防火门 ");
- case UserInfoReport::BuildingFireCtrlUnitType_FireTap:
- return QString::fromUtf8("防火阀 ");
- case UserInfoReport::BuildingFireCtrlUnitType_VentilationAC:
- return QString::fromUtf8("通风空调 ");
- case UserInfoReport::BuildingFireCtrlUnitType_FoamPump:
- return QString::fromUtf8("泡沫液泵 ");
- case UserInfoReport::BuildingFireCtrlUnitType_SolenoidValve:
- return QString::fromUtf8("管网电子阀 ");
- case UserInfoReport::BuildingFireCtrlUnitType_SmokeFan:
- return QString::fromUtf8("防烟排烟风机 ");
- case UserInfoReport::BuildingFireCtrlUnitType_SmokeFireValve:
- return QString::fromUtf8("排烟防火阀 ");
- case UserInfoReport::BuildingFireCtrlUnitType_ClosedAirOutlet:
- return QString::fromUtf8("常闭送风口 ");
- case UserInfoReport::BuildingFireCtrlUnitType_SmokeOutlet:
- return QString::fromUtf8("排烟口 ");
- case UserInfoReport::BuildingFireCtrlUnitType_SmokeBarrier:
- return QString::fromUtf8("电控挡烟垂壁 ");
- case UserInfoReport::BuildingFireCtrlUnitType_FireShutter:
- return QString::fromUtf8("防火卷帘控制器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_FireDoorMonitor:
- return QString::fromUtf8("防火门监控器 ");
- case UserInfoReport::BuildingFireCtrlUnitType_Alarmer:
- return QString::fromUtf8("报警装置 ");
- }
- return QString("");
- }
- void UserInfoProcessCore::getOffLine(quint64 srcAddr)
- {
- for(int i=0;i<10000;i++){
- if((userinfoShm->userInfoParam[i].Unused[ParamIdxOnLine]==0x01)
- &&(userinfoShm->userInfoParam[i].UserInfoAddr==srcAddr)){
- userinfoShm->userInfoParam[i].Unused[ParamIdxOnLine]=0x00;
- getOnLine(userinfoShm->userInfoParam[i].UserInfoAddr,false);
- break;
- }
- }
- }
- void UserInfoProcessCore::time_out()
- {
- uint t = QDateTime::currentDateTime().toTime_t();
- dataProcessShm->processStatus[15].upTime[0].Enabled = 0x01;
- dataProcessShm->processStatus[15].upTime[0].t_time = t;
- }
- bool UserInfoProcessCore::chk1byte(quint8 d, quint8 v)
- {
- return ((d&v)==v);
- }
- bool UserInfoProcessCore::chk2byte(quint16 d, quint16 v)
- {
- return ((d&v)==v);
- }
- bool UserInfoProcessCore::chk4byte(quint32 d, quint32 v)
- {
- return ((d&v)==v);
- }
- bool UserInfoProcessCore::check_dev(qulonglong devId)
- {
- for(int i=0;i<10000;i++){
- if(devId==userinfoShm->userInfoParam[i].UserInfoAddr)
- return true;
- }
- return false;
- }
- quint16 UserInfoProcessCore::get_method(qulonglong devId)
- {
- quint16 ret = 0x0000;
- for(int i=0;i<10000;i++){
- if(devId==userinfoShm->userInfoParam[i].UserInfoAddr)
- return userinfoShm->userInfoParam[i].UserInfoType;
- }
- return ret;
- }
- qint16 UserInfoProcessCore::getDeviceIdx(quint64 addr)
- {
- for(qint16 i=0;i<10000;i++){
- if(userinfoShm->userInfoParam[i].UserInfoAddr==addr)
- return i;
- }
- return -1;
- }
- void UserInfoProcessCore::CommData(QString deviceid, int dir, QString data)
- {
- logthread->appendData(data);
- wssServer->subReport(deviceid,dir,false,false,data);
- }
- void UserInfoProcessCore::appendLOg(QString log)
- {
- logthread->appendData(log);
- }
- void UserInfoProcessCore::getWrongData(QString data)
- {
- logthread->appendWrongData(data);
- }
- void UserInfoProcessCore::new_incomming()
- {
- QTcpSocket *so = sr->nextPendingConnection();
- QString ip = so->peerAddress().toString();
- UserinfoCommThread *thread = new UserinfoCommThread(this,so);
- connect(thread,SIGNAL(getCommData(QString)),this,SLOT(appendLOg(QString)));
- connect(thread,SIGNAL(CommData(QString,int,QString)),this,SLOT(CommData(QString,int,QString)));
- connect(thread,SIGNAL(getWrongData(QString)),this,SLOT(getWrongData(QString)));
- connect(thread,SIGNAL(getOnLine(quint64,bool)),this,SLOT(getOnLine(quint64,bool)));
- connect(thread,SIGNAL(getOffLine(quint64)),this,SLOT(getOffLine(quint64)));
- connect(thread,SIGNAL(getBuildingFireCtrlReport(quint8,QString,void*)),this,SLOT(getBuildingFireCtrlReport(quint8,QString,void*)));
- connect(thread,SIGNAL(getHaetBeat(quint64)),this,SLOT(getHaertBeat(quint64)));
- connect(thread,SIGNAL(getSyncData(quint64,QByteArray)),this,SLOT(getSyncData(quint64,QByteArray)));
- thread->start();
- }
- void UserInfoProcessCore::getHaertBeat(quint64 srcAddr)
- {
- #ifdef JdxfDb
- dbThread->appendSql(QString("update sp_devices_status set devicestatus=0, true_status=0, lastcommtime='%1', statustime='%1' where deviceid=%2")
- .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(srcAddr));
- #endif
- }
- QString UserInfoProcessCore::getOwnerAddr(quint64 devid, quint8 sysAddr, quint32 areaid, quint32 point, quint32 hostNum){
- QString Address = "";
- QString sql = "";
- if(!db.isOpen())
- db.open();
- if(db.isOpen()){
- // if((devid==90004)||(devid==90048)||(devid==90051)||(devid==90085)||(devid==90086)||(devid==90142)||(devid==90145)||(devid==90151)||(devid==90152)||(devid==90153)){
- // sql = QString("select `area`, `type`, `info` from `sp_owner_point` where `device_code`=%1 and `Com_idx`=%2 and `loop`=%3 and `pno`=%4 and `host_num`=%5")
- // .arg(devid).arg(sysAddr).arg(areaid).arg(point).arg(hostNum);
- // }else{
- // sql = QString("select `area`, `type`, `info` from `sp_owner_point` where `device_code`=%1 and `Com_idx`=%2 and `loop`=%3 and `pno`=%4")
- // .arg(devid).arg(sysAddr).arg(areaid).arg(point);
- // }
- if(hostNum != 0){
- sql = QString("select `area`, `type`, `info` from `sp_owner_point` where `device_code`=%1 and `Com_idx`=%2 and `loop`=%3 and `pno`=%4 and `host_num`=%5")
- .arg(devid).arg(sysAddr).arg(areaid).arg(point).arg(hostNum);
- }else{
- sql = QString("select `area`, `type`, `info` from `sp_owner_point` where `device_code`=%1 and `Com_idx`=%2 and `loop`=%3 and `pno`=%4")
- .arg(devid).arg(sysAddr).arg(areaid).arg(point);
- }
- this->appendLOg(QString("+++++++++++++ sql +++++ %1").arg(sql));
- QSqlQuery qry = db.exec(sql);
- if(qry.next()){
- QString area = qry.value(0).toString();
- int type = qry.value(1).toInt();
- QString info = qry.value(2).toString();
- QString name="";
- switch (type) {
- case 0:
- name = QString::fromUtf8(",通用设备");
- break;
- case 1:
- name = QString::fromUtf8(",火灾报警控制器");
- break;
- case 10:
- name = QString::fromUtf8(",可燃气体探测器");
- break;
- case 11:
- name = QString::fromUtf8(",点型可燃气体探测器");
- break;
- case 12:
- name = QString::fromUtf8(",独立式可燃气体探测器");
- break;
- case 13:
- name = QString::fromUtf8(",线型可燃气体探测器");
- break;
- case 15:
- name = QString::fromUtf8(",电气火灾监控报警器");
- break;
- case 16:
- name = QString::fromUtf8(",剩余电流式电气火灾监控探测器");
- break;
- case 17:
- name = QString::fromUtf8(",测温式电气火灾监控探测器");
- break;
- case 21:
- name = QString::fromUtf8(",探测回路");
- break;
- case 22:
- name = QString::fromUtf8(",火灾显示盘");
- break;
- case 23:
- name = QString::fromUtf8(",手动火灾报警按钮");
- break;
- case 24:
- name = QString::fromUtf8(",消火栓按钮");
- break;
- case 25:
- name = QString::fromUtf8(",火灾探测器");
- break;
- case 30:
- name = QString::fromUtf8(",感温火灾探测器");
- break;
- case 31:
- name = QString::fromUtf8(",点型感温火灾探测器");
- break;
- case 32:
- name = QString::fromUtf8(",点型感温火灾探测器(s型)");
- break;
- case 33:
- name = QString::fromUtf8(",点型感温火灾探测器(R型)");
- break;
- case 34:
- name = QString::fromUtf8(",线型感温火灾探测器");
- break;
- case 35:
- name = QString::fromUtf8(",线型感温火灾探测器(S型)");
- break;
- case 36:
- name = QString::fromUtf8(",线型感温火灾探测器(R型)");
- break;
- case 37:
- name = QString::fromUtf8(",光纤感温火灾探测器");
- break;
- case 40:
- name = QString::fromUtf8(",感烟火灾探测器");
- break;
- case 41:
- name = QString::fromUtf8(",点型离子感烟火灾探测器");
- break;
- case 42:
- name = QString::fromUtf8(",点型光电感烟火灾探测器");
- break;
- case 43:
- name = QString::fromUtf8(",线型光束感烟火灾探测器");
- break;
- case 44:
- name = QString::fromUtf8(",吸气式感烟火灾探测器");
- break;
- case 50:
- name = QString::fromUtf8(",复合式火灾探测器");
- break;
- case 51:
- name = QString::fromUtf8(",复合式感烟感温火灾探测器");
- break;
- case 52:
- name = QString::fromUtf8(",复合式感光感温火灾探浏器");
- break;
- case 53:
- name = QString::fromUtf8(",复合式感光感烟火灾探测器");
- break;
- case 61:
- name = QString::fromUtf8(",紫外火焰探测器");
- break;
- case 62:
- name = QString::fromUtf8(",红外火焰探测器");
- break;
- case 69:
- name = QString::fromUtf8(",感光火灾探测器");
- break;
- case 74:
- name = QString::fromUtf8(",气体探测器");
- break;
- case 78:
- name = QString::fromUtf8(",图像摄像方式火灾探测器");
- break;
- case 79:
- name = QString::fromUtf8(",感声火灾探测器");
- break;
- case 81:
- name = QString::fromUtf8(",气体灭火控制器");
- break;
- case 82:
- name = QString::fromUtf8(",消防电气控制装置");
- break;
- case 83:
- name = QString::fromUtf8(",消防控制室图形显示装置");
- break;
- case 84:
- name = QString::fromUtf8(",模块");
- break;
- case 85:
- name = QString::fromUtf8(",输入模块");
- break;
- case 86:
- name = QString::fromUtf8(",输出模块");
- break;
- case 87:
- name = QString::fromUtf8(",输入/输出模块");
- break;
- case 88:
- name = QString::fromUtf8(",中继模块");
- break;
- case 91:
- name = QString::fromUtf8(",消防水泵");
- break;
- case 92:
- name = QString::fromUtf8(",消防水箱");
- break;
- case 95:
- name = QString::fromUtf8(",喷淋泵");
- break;
- case 96:
- name = QString::fromUtf8(",水流指示器");
- break;
- case 97:
- name = QString::fromUtf8(",信号阀");
- break;
- case 98:
- name = QString::fromUtf8(",报警阀");
- break;
- case 99:
- name = QString::fromUtf8(",压力开关");
- break;
- case 101:
- name = QString::fromUtf8(",阀驱动装置");
- break;
- case 102:
- name = QString::fromUtf8(",防火门");
- break;
- case 103:
- name = QString::fromUtf8(",防火阀");
- break;
- case 104:
- name = QString::fromUtf8(",通风空调");
- break;
- case 105:
- name = QString::fromUtf8(",泡沫液泵");
- break;
- case 106:
- name = QString::fromUtf8(",管网电磁阀");
- break;
- case 111:
- name = QString::fromUtf8(",防烟排烟风机");
- break;
- case 113:
- name = QString::fromUtf8(",排烟防火阀");
- break;
- case 114:
- name = QString::fromUtf8(",常闭送风口");
- break;
- case 115:
- name = QString::fromUtf8(",排烟口");
- break;
- case 116:
- name = QString::fromUtf8(",电控挡烟垂壁");
- break;
- case 117:
- name = QString::fromUtf8(",防火卷帘控制器");
- break;
- case 118:
- name = QString::fromUtf8(",防火门监控器");
- break;
- case 121:
- name = QString::fromUtf8(",警报装置");
- break;
- case 128:
- name = QString::fromUtf8(",卷帘门");
- break;
- case 129:
- name = QString::fromUtf8(",广播模块");
- break;
- case 130:
- name = QString::fromUtf8(",门禁");
- break;
- case 131:
- name = QString::fromUtf8(",雨淋阀");
- break;
- case 132:
- name = QString::fromUtf8(",声光");
- break;
- case 133:
- name = QString::fromUtf8(",电梯迫降");
- break;
- case 134:
- name = QString::fromUtf8(",强切");
- break;
- case 135:
- name = QString::fromUtf8(",蝶阀");
- break;
- case 136:
- name = QString::fromUtf8(",补风机");
- break;
- case 137:
- name = QString::fromUtf8(",照明切断");
- break;
- case 138:
- name = QString::fromUtf8(",红外光束");
- break;
- case 139:
- name = QString::fromUtf8(",正压风阀");
- break;
- case 140:
- name = QString::fromUtf8(",智能光电");
- break;
- case 141:
- name = QString::fromUtf8(",空调切断");
- break;
- case 142:
- name = QString::fromUtf8(",控制模块");
- break;
- default:break;
- }
- Address = QString("%1%2%3")
- .arg(area.length()>0?QString("防火分区:%1,").arg(area):"")
- .arg(info).arg(name);
- }
- qry.clear();
- }
- return Address;
- }
- QString UserInfoProcessCore::getMAddr(quint64 devid, quint16 method, quint8 sysAddr, quint64 uaddr)
- {
- QString subAddr = "";
- QString Address = "";
- quint16 m=0x0000;
- if(sysAddr==1)
- m = method&0x000f;
- else if(sysAddr==2)
- m = (method>>4)&0x000f;
- else if(sysAddr==3)
- m = (method>>8)&0x000f;
- if(uaddr>0){
- switch(m){
- case 0:
- subAddr = getOwnerAddr(devid,sysAddr,(uaddr>>16)&0xffff,uaddr&0xffff,0);
- Address = QString::fromUtf8(",回路号:%1,设备号:%2").arg((uaddr>>16)&0xffff).arg(uaddr&0xffff);
- if(subAddr.length()>0)
- Address.append(QString(" (%1)").arg(subAddr));
- break;
- case 1:
- subAddr = getOwnerAddr(devid,sysAddr,((uaddr>>16)&0xffff)%1000,uaddr&0xffff,((uaddr>>16)&0xffff)/1000);
- Address = QString::fromUtf8(",主机号:%1,回路号:%2,设备号:%3 ").arg(((uaddr>>16)&0xffff)/1000).arg(((uaddr>>16)&0xffff)%1000).arg(uaddr&0xffff);
- if(subAddr.length()>0)
- Address.append(QString(" (%1)").arg(subAddr));
- break;
- case 2:
- subAddr = getOwnerAddr(devid,sysAddr,((uaddr>>16)&0xffff)%100,uaddr&0xffff,((uaddr>>16)&0xffff)/100);
- Address = QString::fromUtf8(",主机号:%1,回路号:%2,设备号:%3 ").arg(((uaddr>>16)&0xffff)/100).arg(((uaddr>>16)&0xffff)%100).arg(uaddr&0xffff);
- if(subAddr.length()>0)
- Address.append(QString(" (%1)").arg(subAddr));
- break;
- case 3:
- subAddr = getOwnerAddr(devid,sysAddr,(uaddr>>16)&0xffff,uaddr&0xffff,0);
- Address = QString::fromUtf8(",设备号:%1 ").arg(uaddr,8,16,QChar('0'));
- if(subAddr.length()>0)
- Address.append(QString(" (%1)").arg(subAddr));
- break;
- case 4:
- Address = QString::fromUtf8(",栋:%1,区:%2,层:%3,设备号:%4" )
- .arg((uaddr>>24)&0xff).arg((uaddr>>16)&0xff).arg((uaddr>>8)&0xff).arg(uaddr&0xff);
- break;
- case 0x000f:
- Address = QString::fromUtf8(",编号:%1-%2-%3,设备号:%4" )
- .arg((uaddr>>24)&0xff).arg((uaddr>>16)&0xff).arg((uaddr>>8)&0xff).arg(uaddr&0xff);
- break;
- default:
- subAddr = getOwnerAddr(devid,sysAddr,(uaddr>>16)&0xffff,uaddr&0xffff,0);
- Address = QString::fromUtf8(",设备号:%1").arg(uaddr,8,16,QChar('0'));
- if(subAddr.length()>0)
- Address.append(QString(" (%1)").arg(subAddr));
- break;
- }
- }
- else
- Address = "";
- return Address;
- }
- QString UserInfoProcessCore::devNumStr(quint64 addr){
- QString ret = "";
- ret.append(QString("%1").arg(addr&0xff,2,16,QChar('0')));
- ret.append(QString("%1").arg((addr>>8)&0xff,2,16,QChar('0')));
- ret.append(QString("%1").arg((addr>>16)&0xff,2,16,QChar('0')));
- ret.append(QString("%1").arg((addr>>24)&0xff,2,16,QChar('0')));
- ret.append(QString("%1").arg((addr>>32)&0xff,2,16,QChar('0')));
- ret.append(QString("%1").arg((addr>>40)&0xff,2,16,QChar('0')));
- return ret;
- }
- void UserInfoProcessCore::appendReportCount(quint64 srcAddr, quint8 repType)
- {
- if(repType>0x0f)
- return;
- for(int i=0;i<10000;i++){
- if(userinfoShm->userInfoParam[i].UserInfoAddr==srcAddr){
- quint8 idc = 0x20+repType*2;
- quint16 count = static_cast<quint16>((((userinfoShm->userInfoParam[i].Unused[idc+0]&0x00ff)<<8)
- |(userinfoShm->userInfoParam[i].Unused[idc+1]&0x00ff))+1);
- userinfoShm->userInfoParam[i].Unused[idc+0] = ((count>>8)&0xff);
- userinfoShm->userInfoParam[i].Unused[idc+1] = (count&0xff);
- break;
- }
- }
- }
- void UserInfoProcessCore::getBuildingFireCtrlReport(quint8 dataType, QString ip, void *data)
- {
- if(dataType==0x01){
- SysStatusReport *rep = static_cast<SysStatusReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireCtrlSysStatusReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SysType,rep->SysAddr,rep->SysStatus,rep->SendTime,rep->ReportTime);
- #ifdef JdxfDb
- QString sta="";
- QString pos = QString("H%1P").arg(dataType,2,10,QChar('0'));
- QString add = QString::fromUtf8("端口号:%1").arg(rep->SysAddr);
- if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Normal)){
- sta = QString::fromUtf8("测试状态");
- pos.append("0");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_FireSta)){
- sta = QString::fromUtf8("火警");
- pos.append("1");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Trouble)){
- sta = QString::fromUtf8("故障");
- pos.append("2");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Shield)){
- sta = QString::fromUtf8("屏蔽");
- pos.append("3");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Super)){
- sta = QString::fromUtf8("监管");
- pos.append("4");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Open)){
- sta = QString::fromUtf8("启动");
- pos.append("5");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Feedback)){
- sta = QString::fromUtf8("反馈");
- pos.append("6");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Delay)){
- sta = QString::fromUtf8("延时");
- pos.append("7");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_MainPower)){
- sta = QString::fromUtf8("主电故障");
- pos.append("8");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_SubPower)){
- sta = QString::fromUtf8("备电故障");
- pos.append("9");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Bus)){
- sta = QString::fromUtf8("总线故障");
- pos.append("10");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Manual)){
- sta = QString::fromUtf8("手动");
- pos.append("11");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_ParamChanged)){
- sta = QString::fromUtf8("配置改变");
- pos.append("12");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Reset)){
- sta = QString::fromUtf8("复位");
- pos.append("13");
- }
- dbThread->appendSta(UiPoint(rep->SrcAddr,rep->SysAddr,0,rep->SysStatus,rep->ReportTime.toTime_t()));
- QString sql = QString::fromUtf8("insert into `sp_d%1` (`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`,`port`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10',%11)")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->SysStatus,4,16,QChar('0')).arg(sta).arg("").arg(add).arg(pos).arg(rep->SysStatus);
- dbThread->appendSql(sql);
- sql = QString::fromUtf8("insert into `sp_hj2017`(`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`,`port`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10',%11)")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->SysStatus,4,16,QChar('0')).arg(sta).arg("").arg(add).arg(pos).arg(rep->SysStatus);
- dbThread->appendAlarm(AlarmRep(rep->SrcAddr,sql,pos,rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss"),sta+","+add,rep->SysAddr,""));
- if(check_voicealarm(rep->SrcAddr)){
- QString Dat = QString::fromUtf8("IMEI=%1&time=%2&evt_name=%3&dwtype=1").arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(sta);
- voiceThreads[ttscur]->appendData(Dat);
- ttscur = (ttscur+1)&0x0f;
- }
- #endif
- }else if((dataType==0x15)||(dataType==0xcf)){
- UserinfoStatusReport *rep = static_cast<UserinfoStatusReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireUserinfoStaReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->UserinfoStatus,rep->SendTime,rep->ReportTime);
- #ifdef JdxfDb
- QString sta = "";
- QString pos = QString("U%1P").arg(dataType,2,10,QChar('0'));
- if(!chk1byte(rep->UserinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_Normal)){
- sta = QString::fromUtf8("测试状态");
- pos.append("0");
- }else if(chk1byte(rep->UserinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_FireSta)){
- sta = QString::fromUtf8("火警");
- pos.append("1");
- }else if(chk1byte(rep->UserinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_Trouble)){
- sta = QString::fromUtf8("故障");
- pos.append("2");
- }else if(chk1byte(rep->UserinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_MainPower)){
- sta = QString::fromUtf8("主电故障");
- pos.append("3");
- }else if(chk1byte(rep->UserinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_SubPower)){
- sta = QString::fromUtf8("备电故障");
- pos.append("4");
- }else if(chk1byte(rep->UserinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_UpComm)){
- sta = QString::fromUtf8("与监控中心通信故障");
- pos.append("5");
- }else if(chk1byte(rep->UserinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_DnComm)){
- sta = QString::fromUtf8("监测连线故障");
- pos.append("6");
- }
- // dbThread->appendSta(UiPoint(rep->SrcAddr,0,0,rep->UserinfoStatus,rep->ReportTime.toTime_t()));
- QString sql = QString::fromUtf8("insert into `sp_d%1` (`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->UserinfoStatus,2,16,QChar('0')).arg(sta).arg("").arg("").arg(pos);
- dbThread->appendSql(sql);
- sql = QString::fromUtf8("insert into `sp_hj2017`(`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->UserinfoStatus,2,16,QChar('0')).arg(sta).arg("").arg("").arg(pos);
- dbThread->appendAlarm(AlarmRep(rep->SrcAddr,sql,pos,rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss"),sta,0,""));
- if(check_voicealarm(rep->SrcAddr)){
- QString Dat = QString::fromUtf8("IMEI=%1&time=%2&evt_name=%3&dwtype=1").arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(sta);
- voiceThreads[ttscur]->appendData(Dat);
- ttscur = (ttscur+1)&0x0f;
- }
- #endif
- }else if((dataType==0x02)||(dataType==0xce)){
- UnitStatusReport *rep = static_cast<UnitStatusReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- #ifdef JdxfDb
- QString sta = "";
- QString pos = QString("H%1P").arg(dataType,2,10,QChar('0'));
- if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Normal)){
- sta=QString::fromUtf8("测试状态");
- pos.append("0");
- appendReportCount(rep->SrcAddr,0x0a);
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_FireSta)){
- sta = QString::fromUtf8("火警");
- pos.append("1");
- appendReportCount(rep->SrcAddr,0x02);
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Trouble)){
- sta=QString::fromUtf8("故障");
- pos.append("2");
- appendReportCount(rep->SrcAddr,0x01);
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Shield)){
- sta = QString::fromUtf8("屏蔽");
- pos.append("3");
- appendReportCount(rep->SrcAddr,0x07);
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Super)){
- sta = QString::fromUtf8("监管");
- pos.append("4");
- appendReportCount(rep->SrcAddr,0x04);
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Open)){
- sta = QString::fromUtf8("启动");
- pos.append("5");
- appendReportCount(rep->SrcAddr,0x05);
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Feedback)){
- sta = QString::fromUtf8("反馈");
- pos.append("6");
- appendReportCount(rep->SrcAddr,0x03);
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Delay)){
- sta = QString::fromUtf8("延时状态");
- pos.append("7");
- appendReportCount(rep->SrcAddr,0x0a);
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Power)){
- sta = QString::fromUtf8("电源故障");
- pos.append("8");
- appendReportCount(rep->SrcAddr,0x01);
- }
- quint16 method = get_method(rep->SrcAddr);
- QString uAddr = QString::fromUtf8("端口号:%1").arg(rep->SysAddr)+ getMAddr(rep->SrcAddr, method,rep->SysAddr,rep->UnitAddr);
- QString sql = QString::fromUtf8("insert into `sp_d%1` (`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`,`port`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10',%11)")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->UintStatus,2,16,QChar('0')).arg(sta).arg(QString("%1,%2,%3").arg(rep->UnitAddr,8,16,QChar('0')).arg(((rep->UnitAddr)>>16)&0xffff).arg((rep->UnitAddr)&0xffff)).arg(uAddr).arg(pos).arg(rep->UintStatus);
- dbThread->appendSql(sql);
- sql = QString::fromUtf8("insert into `sp_hj2017`(`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`,`port`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10',%11)")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->UintStatus,2,16,QChar('0')).arg(sta).arg(QString("%1,%2,%3").arg(rep->UnitAddr,8,16,QChar('0')).arg(((rep->UnitAddr)>>16)&0xffff).arg((rep->UnitAddr)&0xffff)).arg(uAddr).arg(pos).arg(rep->UintStatus);
- dbThread->appendAlarm(AlarmRep(rep->SrcAddr,sql,pos,rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss"),sta+","+uAddr,rep->SysAddr,QString("%1%2%3").arg(rep->UnitAddr,8,16,QChar('0')).arg(((rep->UnitAddr)>>16)&0xffff).arg((rep->UnitAddr)&0xffff)));
- if(check_voicealarm(rep->SrcAddr)){
- QString Dat = QString::fromUtf8("IMEI=%1&time=%2&evt_name=%3&dwtype=1").arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(sta);
- voiceThreads[ttscur]->appendData(Dat);
- ttscur = (ttscur+1)&0x0f;
- }
- #endif
- }else if(dataType==0x88){
- UserinfoStatusReport *rep = static_cast<UserinfoStatusReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireUserinfoStaRestoreReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->UserinfoStatus,rep->SendTime,rep->ReportTime);
- #ifdef JdxfDb
- QString sta = "";
- QString pos = QString("U%1P").arg(dataType,2,10,QChar('0'));
- if(chk1byte(rep->UserinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_Normal)){
- sta = QString::fromUtf8("恢复正常运行");
- pos.append("0");
- }else if(chk1byte(rep->UserinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_FireSta)){
- sta = QString::fromUtf8("火警撤销");
- pos.append("1");
- }else if(chk1byte(rep->UserinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_Trouble)){
- sta = QString::fromUtf8("故障撤销");
- pos.append("2");
- }else if(chk1byte(rep->UserinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_MainPower)){
- sta = QString::fromUtf8("主电故障撤销");
- pos.append("3");
- }else if(chk1byte(rep->UserinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_SubPower)){
- sta = QString::fromUtf8("备电故障撤销");
- pos.append("4");
- }else if(chk1byte(rep->UserinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_UpComm)){
- sta = QString::fromUtf8("监控中心通信故障撤销");
- pos.append("5");
- }else if(chk1byte(rep->UserinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_DnComm)){
- sta = QString::fromUtf8("监测连线通信故障撤销");
- pos.append("6");
- }
- QString sql = QString::fromUtf8("insert into `sp_d%1` (`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->UserinfoStatus,2,16,QChar('0')).arg(sta).arg("").arg("").arg(pos);
- dbThread->appendSql(sql);
- sql = QString::fromUtf8("insert into `sp_hj2017`(`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`,`clzt`,`clr`,`clsj`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10','1','admin','%11')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->UserinfoStatus,2,16,QChar('0')).arg(sta).arg("").arg("").arg(pos).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss"));
- if(rep->UserinfoStatus&0x79){
- dbThread->appendAlarm(AlarmRep(rep->SrcAddr,sql,pos,rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss"),sta,0,""));
- }else if(rep->UserinfoStatus&0x06){
- dbThread->appendSql(sql);
- }
- #endif
- }else if(dataType==0x87){
- UnitStatusReport *rep = static_cast<UnitStatusReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireCtrlUintStatusRestoreReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SysType,rep->SysAddr,rep->UnitType,rep->UnitAddr,rep->UintStatus,rep->UnitNote,rep->SendTime,rep->ReportTime);
- #ifdef JdxfDb
- QString sta = "";
- QString pos = QString("H%1P").arg(dataType,2,10,QChar('0'));
- quint16 method = get_method(rep->SrcAddr);
- QString uAddr = QString::fromUtf8("端口号:%1").arg(rep->SysAddr)+ getMAddr(rep->SrcAddr, method,rep->SysAddr,rep->UnitAddr);
- if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Normal)){
- sta = QString::fromUtf8("恢复正常运行");
- pos.append("0");
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_FireSta)){
- sta = QString::fromUtf8("火警撤销");
- pos.append("1");
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Trouble)){
- sta = QString::fromUtf8("故障撤销");
- pos.append("2");
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Shield)){
- sta = QString::fromUtf8("屏蔽撤销");
- pos.append("3");
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Super)){
- sta = QString::fromUtf8("监管撤销");
- pos.append("4");
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Open)){
- sta = QString::fromUtf8("停止");
- pos.append("5");
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Feedback)){
- sta = QString::fromUtf8("反馈撤销");
- pos.append("6");
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Delay)){
- sta = QString::fromUtf8("延时恢复");
- pos.append("7");
- }else if(chk2byte(rep->UintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Power)){
- sta = QString::fromUtf8("电源故障撤销");
- pos.append("8");
- }
- QString sql = QString::fromUtf8("insert into `sp_d%1` (`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->UintStatus,2,16,QChar('0')).arg(sta).arg(QString("%1,%2,%3").arg(rep->UnitAddr,8,16,QChar('0')).arg(((rep->UnitAddr)>>16)&0xffff).arg((rep->UnitAddr)&0xffff)).arg(uAddr).arg(pos);
- dbThread->appendSql(sql);
- sql = QString::fromUtf8("insert into `sp_hj2017`(`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`,`clzt`,`clr`,`clsj`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10',1,'admin','%11')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->UintStatus,2,16,QChar('0')).arg(sta).arg(QString("%1,%2,%3").arg(rep->UnitAddr,8,16,QChar('0')).arg(((rep->UnitAddr)>>16)&0xffff).arg((rep->UnitAddr)&0xffff)).arg(uAddr).arg(pos).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss"));
- if(rep->UintStatus&0x0039)
- dbThread->appendAlarm(AlarmRep(rep->SrcAddr,sql,pos,rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss"),sta+","+uAddr,rep->SysAddr,QString("%1%2%3").arg(rep->UnitAddr,8,16,QChar('0')).arg(((rep->UnitAddr)>>16)&0xffff).arg((rep->UnitAddr)&0xffff)));
- else if(rep->UintStatus&0x0006)
- dbThread->appendSql(sql);
- #endif
- }else if(dataType==0x86){
- SysStatusReport *rep = static_cast<SysStatusReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireCtrlSysStatusRestoreReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SysType,rep->SysAddr,rep->SysStatus,rep->SendTime,rep->ReportTime);
- #ifdef JdxfDb
- QString sta = "";
- QString pos = QString("H%1P").arg(dataType,2,10,QChar('0'));
- QString uAddr = QString::fromUtf8("端口号:%1").arg(rep->SysAddr);
- if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Normal)){
- sta = QString::fromUtf8("恢复正常运行");
- pos.append("0");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_FireSta)){
- sta = QString::fromUtf8("火警撤销");
- pos.append("1");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Trouble)){
- sta = QString::fromUtf8("故障撤销");
- pos.append("2");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Shield)){
- sta = QString::fromUtf8("屏蔽撤销");
- pos.append("3");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Super)){
- sta = QString::fromUtf8("监管撤销");
- pos.append("4");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Open)){
- sta = QString::fromUtf8("停止");
- pos.append("5");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Feedback)){
- sta = QString::fromUtf8("反馈撤销");
- pos.append("6");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Delay)){
- sta = QString::fromUtf8("延时撤销");
- pos.append("7");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_MainPower)){
- sta = QString::fromUtf8("主电故障撤销");
- pos.append("8");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_SubPower)){
- sta = QString::fromUtf8("备电故障撤销");
- pos.append("9");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Bus)){
- sta = QString::fromUtf8("总线故障撤销");
- pos.append("10");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Manual)){
- sta = QString::fromUtf8("自动");
- pos.append("11");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_ParamChanged)){
- sta = QString::fromUtf8("配置改变撤销");
- pos.append("12");
- }else if(chk2byte(rep->SysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Reset)){
- sta = QString::fromUtf8("复位撤销");
- pos.append("13");
- }
- QString sql = QString::fromUtf8("insert into `sp_d%1` (`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->SysStatus,2,16,QChar('0')).arg(sta).arg("").arg(uAddr).arg(pos);
- dbThread->appendSql(sql);
- sql = QString::fromUtf8("insert into `sp_hj2017`(`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`,`clzt`,`clr`,`clsj`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10',1,'admin','%11')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->SysStatus,2,16,QChar('0')).arg(sta).arg("").arg(uAddr).arg(pos).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss"));
- if(rep->SysStatus&0x0039)
- dbThread->appendAlarm(AlarmRep(rep->SrcAddr,sql,pos,rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss"),sta+","+uAddr,rep->SysAddr,""));
- else if(rep->SysStatus&0x3fc6)
- dbThread->appendSql(sql);
- #endif
- }else if(dataType==0x89){
- UnitStatusReport2 *rep = static_cast<UnitStatusReport2 *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireCtrlUintStatusReport2(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SysType,rep->SysAddr,rep->UnitType,rep->UnitAddr,rep->UintStatus,rep->UnitNote,rep->SendTime,rep->ReportTime);
- #ifdef JdxfDb
- QString sta = "";
- QString pos = QString("H%1P").arg(dataType,2,10,QChar('0'));
- quint16 method = get_method(rep->SrcAddr);
- QString uAddr = QString::fromUtf8("端口号:%1").arg(rep->SysAddr)+ getMAddr(rep->SrcAddr, method,rep->SysAddr,rep->UnitAddr);
- if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Normal&0x0000ffff))){
- sta = QString::fromUtf8("测试");
- pos.append("0");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_FireSta&0x0000ffff))){
- sta = QString::fromUtf8("火警");
- pos.append("1");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Trouble&0x0000ffff))){
- sta = QString::fromUtf8("故障");
- pos.append("2");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Shield&0x0000ffff))){
- sta = QString::fromUtf8("屏蔽");
- pos.append("3");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Super&0x0000ffff))){
- sta = QString::fromUtf8("监管");
- pos.append("4");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Open&0x0000ffff))){
- sta = QString::fromUtf8("启动");
- pos.append("5");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Feedback&0x0000ffff))){
- sta = QString::fromUtf8("反馈");
- pos.append("6");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Delay&0x0000ffff))){
- sta = QString::fromUtf8("延时");
- pos.append("7");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Power&0x0000ffff))){
- sta = QString::fromUtf8("电源故障");
- pos.append("8");
- }
- QString sql = QString::fromUtf8("insert into `sp_d%1` (`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->UintStatus,2,16,QChar('0')).arg(sta).arg(QString("%1,%2,%3").arg(rep->UnitAddr,8,16,QChar('0')).arg(((rep->UnitAddr)>>16)&0xffff).arg((rep->UnitAddr)&0xffff)).arg(uAddr).arg(pos);
- dbThread->appendSql(sql);
- sql = QString::fromUtf8("insert into `sp_hj2017`(`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->UintStatus,2,16,QChar('0')).arg(sta).arg(QString("%1,%2,%3").arg(rep->UnitAddr,8,16,QChar('0')).arg(((rep->UnitAddr)>>16)&0xffff).arg((rep->UnitAddr)&0xffff)).arg(uAddr).arg(pos);
- dbThread->appendAlarm(AlarmRep(rep->SrcAddr,sql,pos,rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss"),sta+","+uAddr,rep->SysAddr,QString("%1%2%3").arg(rep->UnitAddr,8,16,QChar('0')).arg(((rep->UnitAddr)>>16)&0xffff).arg((rep->UnitAddr)&0xffff)));
- if(check_voicealarm(rep->SrcAddr)){
- QString Dat = QString::fromUtf8("IMEI=%1&time=%2&evt_name=%3&dwtype=1").arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(sta);
- voiceThreads[ttscur]->appendData(Dat);
- ttscur = (ttscur+1)&0x0f;
- }
- #endif
- }else if(dataType==0x8a){
- UnitStatusReport2 *rep = static_cast<UnitStatusReport2 *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireCtrlUintStatusRestoreReport2(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SysType,rep->SysAddr,rep->UnitType,rep->UnitAddr,rep->UintStatus,rep->UnitNote,rep->SendTime,rep->ReportTime);
- #ifdef JdxfDb
- QString sta = "";
- QString pos = QString("H%1P").arg(dataType,2,10,QChar('0'));
- quint16 method = get_method(rep->SrcAddr);
- QString uAddr = QString::fromUtf8("端口号:%1").arg(rep->SysAddr)+ getMAddr(rep->SrcAddr, method,rep->SysAddr,rep->UnitAddr);
- if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Normal&0x0000ffff))){
- sta = QString::fromUtf8("恢复正常运行");
- pos.append("0");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_FireSta&0x0000ffff))){
- sta = QString::fromUtf8("火警撤销");
- pos.append("1");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Trouble&0x0000ffff))){
- sta = QString::fromUtf8("故障撤销");
- pos.append("2");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Shield&0x0000ffff))){
- sta = QString::fromUtf8("屏蔽撤销");
- pos.append("3");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Super&0x0000ffff))){
- sta = QString::fromUtf8("监管撤销");
- pos.append("4");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Open&0x0000ffff))){
- sta = QString::fromUtf8("停止");
- pos.append("5");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Feedback&0x0000ffff))){
- sta = QString::fromUtf8("反馈撤销");
- pos.append("6");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Delay&0x0000ffff))){
- sta = QString::fromUtf8("延时撤销");
- pos.append("7");
- }else if(chk4byte(rep->UintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Power&0x0000ffff))){
- sta = QString::fromUtf8("电源故障撤销");
- pos.append("8");
- }
- QString sql = QString::fromUtf8("insert into `sp_d%1` (`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->UintStatus,2,16,QChar('0')).arg(sta).arg(QString("%1,%2,%3").arg(rep->UnitAddr,8,16,QChar('0')).arg(((rep->UnitAddr)>>16)&0xffff).arg((rep->UnitAddr)&0xffff)).arg(uAddr).arg(pos);
- dbThread->appendSql(sql);
- sql = QString::fromUtf8("insert into `sp_hj2017`(`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`,`clzt`,`clr`,`clsj`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10',1,'admin','%11')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->UintStatus,2,16,QChar('0')).arg(sta).arg(QString("%1,%2,%3").arg(rep->UnitAddr,8,16,QChar('0')).arg(((rep->UnitAddr)>>16)&0xffff).arg((rep->UnitAddr)&0xffff)).arg(uAddr).arg(pos).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss"));
- if(rep->UintStatus&0x00000039)
- dbThread->appendAlarm(AlarmRep(rep->SrcAddr,sql,pos,rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss"),sta,rep->SysAddr,QString("%1%2%3").arg(rep->UnitAddr,8,16,QChar('0')).arg(((rep->UnitAddr)>>16)&0xffff).arg((rep->UnitAddr)&0xffff)));
- else
- dbThread->appendSql(sql);
- #endif
- }else if(dataType==0x03){
- UnitDataReport *rep = static_cast<UnitDataReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireCtrlUintDateReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SysType,rep->SysAddr,rep->UnitType,rep->UnitAddr,rep->UnitDataType,rep->UintData,rep->SendTime,rep->ReportTime);
- }else if(dataType==0x04){
- SysOperationReport *rep = static_cast<SysOperationReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireCtrlOperationReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SysType,rep->SysAddr,rep->OperationType,rep->UserId,rep->SendTime,rep->ReportTime);
- #ifdef JdxfDb
- QString sta = "";
- QString pos = QString("H%1P").arg(dataType,2,10,QChar('0'));
- QString uAddr = QString::fromUtf8("端口号:%1").arg(rep->SysAddr);
- if(chk1byte(rep->OperationType,UserInfoReport::BuildingFireCtrlOperation_Reset)){
- sta = QString::fromUtf8("复位");
- pos.append("0");
- }else if(chk1byte(rep->OperationType,UserInfoReport::BuildingFireCtrlOperation_Silent)){
- sta = QString::fromUtf8("消音");
- pos.append("1");
- }else if(chk1byte(rep->OperationType,UserInfoReport::BuildingFireCtrlOperation_Manual)){
- sta = QString::fromUtf8("手动");
- pos.append("2");
- }else if(chk1byte(rep->OperationType,UserInfoReport::BuildingFireCtrlOperation_Clear)){
- sta = QString::fromUtf8("警情消除");
- pos.append("3");
- }else if(chk1byte(rep->OperationType,UserInfoReport::BuildingFireCtrlOperation_TestSelf)){
- sta = QString::fromUtf8("自检");
- pos.append("4");
- }else if(chk1byte(rep->OperationType,UserInfoReport::BuildingFireCtrlOperation_Confirm)){
- sta = QString::fromUtf8("确认");
- pos.append("5");
- }else if(chk1byte(rep->OperationType,UserInfoReport::BuildingFireCtrlOperation_Test)){
- sta = QString::fromUtf8("测试");
- pos.append("6");
- }
- QString sql = QString::fromUtf8("insert into `sp_d%1` (`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->OperationType,2,16,QChar('0')).arg(sta).arg("").arg(uAddr).arg(pos);
- dbThread->appendSql(sql);
- sql = QString::fromUtf8("insert into `sp_hj2017`(`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->OperationType,2,16,QChar('0')).arg(sta).arg("").arg(uAddr).arg(pos);
- dbThread->appendAlarm(AlarmRep(rep->SrcAddr,sql,pos,rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss"),sta+","+uAddr,rep->SysAddr,""));
- #endif
- }else if(dataType==0x05){
- SysVersionReport *rep = static_cast<SysVersionReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- getBuildingFireCtrlVersionReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SysType,rep->SysAddr,rep->Ver,rep->SendTime);
- }else if(dataType==0x06){
- SysNoteReport *rep = static_cast<SysNoteReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- getBuildingFireCtrlSystemNoteReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SysType,rep->SysAddr,rep->SysNote,rep->SendTime);
- }else if(dataType==0x07){
- UnitNoteReport *rep = static_cast<UnitNoteReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- getBuildingFireCtrlUintNoteReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SysType,rep->SysAddr,rep->UnitType,rep->UnitAddr,rep->UnitNote,rep->SendTime);
- }else if(dataType==0x08){
- SysTimeReport *rep = static_cast<SysTimeReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireCtrlTimeReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SysType,rep->SysAddr,rep->SendTime,rep->ReportTime);
- }else if(dataType==0x18){
- UserinfoOperationReport *rep = static_cast<UserinfoOperationReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- #ifdef JdxfDb
- QString sta = "";
- QString pos = QString("U%1P").arg(dataType,2,10,QChar('0'));
- if(chk1byte(rep->UserinfoOpt,UserInfoReport::BuildinfFireUserinfoOperation_Reset)){
- sta = QString::fromUtf8("复位");
- pos .append("0");
- appendReportCount(rep->SrcAddr,0x08);
- }else if(chk1byte(rep->UserinfoOpt,UserInfoReport::BuildinfFireUserinfoOperation_Silent)){
- sta = QString::fromUtf8("消音");
- pos.append("1");
- appendReportCount(rep->SrcAddr,0x09);
- }else if(chk1byte(rep->UserinfoOpt,UserInfoReport::BuildinfFireUserinfoOperation_Manual)){
- sta = QString::fromUtf8("手报");
- pos.append("2");
- appendReportCount(rep->SrcAddr,0x0a);
- }else if(chk1byte(rep->UserinfoOpt,UserInfoReport::BuildinfFireUserinfoOperation_Clear)){
- sta = QString::fromUtf8("警情消除");
- pos.append("3");
- appendReportCount(rep->SrcAddr,0x0a);
- }else if(chk1byte(rep->UserinfoOpt,UserInfoReport::BuildinfFireUserinfoOperation_TestSelf)){
- sta = QString::fromUtf8("自检");
- pos.append("4");
- appendReportCount(rep->SrcAddr,0x06);
- }else if(chk1byte(rep->UserinfoOpt,UserInfoReport::BuildinfFireUserinfoOperation_PointEcho)){
- sta = QString::fromUtf8("查岗应答");
- pos.append("5");
- appendReportCount(rep->SrcAddr,0x0a);
- }else if(chk1byte(rep->UserinfoOpt,UserInfoReport::BuildinfFireUserinfoOperation_Test)){
- sta = QString::fromUtf8("测试");
- pos.append("6");
- appendReportCount(rep->SrcAddr,0x0a);
- }
- QString sql = QString::fromUtf8("insert into `sp_d%1` (`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->UserinfoOpt,2,16,QChar('0')).arg(sta).arg("").arg("").arg(pos);
- dbThread->appendSql(sql);
- sql = QString::fromUtf8("insert into `sp_hj2017`(`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg(rep->UserinfoOpt,2,16,QChar('0')).arg(sta).arg("").arg("").arg(pos);
- dbThread->appendAlarm(AlarmRep(rep->SrcAddr,sql,pos,rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss"),sta,0,""));
- if(check_voicealarm(rep->SrcAddr)){
- QString Dat = QString::fromUtf8("IMEI=%1&time=%2&evt_name=%3&dwtype=1").arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(sta);
- voiceThreads[ttscur]->appendData(Dat);
- ttscur = (ttscur+1)&0x0f;
- }
- #endif
- }else if(dataType==0x19){
- UserinfoVersionReport *rep = static_cast<UserinfoVersionReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- getBuildingFireUserinfoVersionReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->Ver,rep->SendTime);
- }else if(dataType==0x1a){
- UserinfoParamreport *rep = static_cast<UserinfoParamreport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- getBuildingFireUserinfoParamNoteReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->PNote,rep->SendTime);
- }else if(dataType==0x1c){
- UserinfoTimeReport *rep = static_cast<UserinfoTimeReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->UiTime = QDateTime::currentDateTime();
- getBuildingFireUserinfoTimeReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SendTime,rep->UiTime);
- }else if(dataType==0x80){
- UserinfoTimeReport *rep = static_cast<UserinfoTimeReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->UiTime = QDateTime::currentDateTime();
- getBuildingFireUserinfoManuDateReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SendTime,rep->UiTime);
- }else if((dataType==0x81)||(dataType==0xcb)){
- UserinfoTimeReport *rep = static_cast<UserinfoTimeReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->UiTime = QDateTime::currentDateTime();
- getBuildingFireUserinfoSignupTimeReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SendTime,rep->UiTime);
- }else if(dataType==0x82){
- UserInfoBootReport *rep = static_cast<UserInfoBootReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireUserinfoBootReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->UserId,rep->SendTime,rep->ReportTime);
- }else if(dataType==0x83){
- UserInfoBootReport *rep = static_cast<UserInfoBootReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireUserinfoShutdownReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->UserId,rep->SendTime,rep->ReportTime);
- }else if(dataType==0x84){
- UserInfoSysBootReport *rep = static_cast<UserInfoSysBootReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireCtrlSysBootReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SysType,rep->SysAddr,rep->SendTime,rep->ReportTime);
- QString pos = "U132P1";
- QString uadd = QString::fromUtf8("系统类型:%1 系统地址:%2 端口:%2").arg(rep->SysType).arg(rep->SysAddr);
- QString sql = QString::fromUtf8("insert into `sp_d%1` (`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg("").arg(QString::fromUtf8("火警总告警")).arg(uadd).arg("").arg(pos);
- dbThread->appendSql(sql);
- sql = QString::fromUtf8("insert into `sp_hj2017`(`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg("").arg(QString::fromUtf8("火警总告警")).arg(uadd).arg("").arg(pos);
- dbThread->appendAlarm(AlarmRep(rep->SrcAddr,sql,pos,rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss"),uadd,rep->SysAddr,""));
- }else if(dataType==0x85){
- UserInfoSysBootReport *rep = static_cast<UserInfoSysBootReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireCtrlSysShutdownReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SysType,rep->SysAddr,rep->SendTime,rep->ReportTime);
- QString pos = "U132P1";
- QString uadd = QString::fromUtf8("系统类型:%1 系统地址:%2 端口:%2").arg(rep->SysType).arg(rep->SysAddr);
- QString sql = QString::fromUtf8("insert into `sp_d%1` (`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg("").arg(QString::fromUtf8("火警总告警撤销")).arg(uadd).arg("").arg(pos);
- dbThread->appendSql(sql);
- sql = QString::fromUtf8("insert into `sp_hj2017`(`device_code`, `time`, `status`, `address`, `ncmd`, `data1`, `data2`, `data3`, `data4`, `data5`,`clzt`,`clr`,`clsj`) values ('%1', '%2', '%3', '%4','%5','%6','%7','%8','%9','%10',1,'admin','%2')")
- .arg(rep->SrcAddr).arg(rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss")).arg("02").arg(ip).arg(dataType,2,10,QChar('0')).arg("").arg(QString::fromUtf8("火警总告警撤销")).arg(uadd).arg("").arg(pos);
- dbThread->appendAlarm(AlarmRep(rep->SrcAddr,sql,pos,rep->ReportTime.toString("yyyy-MM-dd HH:mm:ss"),uadd,rep->SysAddr,""));
- }else if(dataType==0xc8){
- UserInfoCommReport *rep = static_cast<UserInfoCommReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireUserinfoCommStaReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->CommSta,rep->SendTime,rep->ReportTime);
- }else if(dataType==0xc9){
- UserInfoCommReport *rep = static_cast<UserInfoCommReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireUserinfoCommStaRestoreReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->CommSta,rep->SendTime,rep->ReportTime);
- }else if(dataType==0xca){
- UserinfoOperationReport *rep = static_cast<UserinfoOperationReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireUserinfoPostsoutReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->UserId,rep->SendTime,rep->ReportTime);
- }else if(dataType==0xcc){
- UserinfoUnitFireTypereport *rep = static_cast<UserinfoUnitFireTypereport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireCtrlUintFireTypeReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SysType,rep->SysAddr,rep->UnitType,rep->UnitAddr,rep->FireType,rep->UnitNote,rep->SendTime,rep->ReportTime);
- }else if(dataType==0xcd){
- UserInfoSysActStatusReport *rep = static_cast<UserInfoSysActStatusReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireCtrlSysActStatusReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->SysType,rep->SysAddr,rep->ActStatus,rep->SendTime,rep->ReportTime);
- }else if(dataType==0xd0){
- UserinfoOperationReport *rep = static_cast<UserinfoOperationReport *>(data);
- rep->SendTime = QDateTime::currentDateTime();
- rep->ReportTime = QDateTime::currentDateTime();
- getBuildingFireUserinfoOptTimeReport(rep->Sn,rep->SrcAddr,rep->DestAddr,dataType,rep->UserId,rep->SendTime,rep->ReportTime);
- }
- }
- void UserInfoProcessCore::getBuildingFireUserinfoVersionReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint16 version, QDateTime sendTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(srcAddr);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sql = QString::fromUtf8("insert into `sp_userinfo_param` (`id`, `device_id`, `param_type`, `param_value`, `report_time`, `store_time`) values (NULL,'%1','1','%2','%3','%4')")
- .arg(srcAddr).arg(QString("%1.%2").arg(version>>8).arg(static_cast<char>(version&0xff),2,QChar('0'))).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireUserinfoManuDateReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, QDateTime sendTime, QDateTime manuTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sql = QString::fromUtf8("insert into `sp_userinfo_param` (`id`, `device_id`, `param_type`, `param_value`, `report_time`, `store_time`) values (NULL,'%1','2','%2','%3','%4')")
- .arg(srcAddr).arg(manuTime.toString("yyyy-MM-dd")).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireUserinfoParamNoteReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, QString pNote, QDateTime sendTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sql = QString::fromUtf8("insert into `sp_userinfo_param` (`id`, `device_id`, `param_type`, `param_value`, `report_time`, `store_time`) values (NULL,'%1','3','%2','%3','%4')")
- .arg(srcAddr).arg(pNote).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireUserinfoTimeReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, QDateTime sendTime, QDateTime uiTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sql = QString::fromUtf8("insert into `sp_userinfo_param` (`id`, `device_id`, `param_type`, `param_value`, `report_time`, `store_time`) values (NULL,'%1','4','%2','%3','%4')")
- .arg(srcAddr).arg(uiTime.toString("yyyy-MM-dd HH:mm:ss")).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireUserinfoSignupTimeReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, QDateTime sendTime, QDateTime signupTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sql = QString::fromUtf8("insert into `sp_userinfo_operation` (`id`,`device_id`, `opt_type`, `opt_code`, `opt_value`, `user_id`, `send_time`, `report_time`, `store_time`) values (NULL,'%1','1',0,'%2',0,'%3','%4','%5')")
- .arg(srcAddr).arg(QString::fromUtf8("报到,")+signupTime.toString("yyyy-MM-dd HH:mm:ss")).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(signupTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireUserinfoBootReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 userId, QDateTime sendTime, QDateTime bootTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- QString devNum = devNumStr(srcAddr);
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)4));
- #endif
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sql = QString::fromUtf8("insert into `sp_userinfo_operation` (`id`,`device_id`, `opt_type`, `opt_code`, `opt_value`, `user_id`, `send_time`, `report_time`, `store_time`) values (NULL,'%1','2',0,'%2',%3,'%4','%5','%6')")
- .arg(srcAddr).arg(bootTime.toString("yyyy-MM-dd HH:mm:dd")).arg(userId).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(bootTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireUserinfoShutdownReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 userId, QDateTime sendTime, QDateTime shutdownTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sql = QString::fromUtf8("insert into `sp_userinfo_operation` (`id`,`device_id`, `opt_type`, `opt_code`, `opt_value`, `user_id`, `send_time`, `report_time`, `store_time`) values (NULL,'%1','3',0,'%2',%3,'%4','%5','%6')")
- .arg(srcAddr).arg(shutdownTime.toString("yyyy-MM-dd HH:mm:dd")).arg(userId).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(shutdownTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireUserinfoOptTimeReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 userId, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sql = QString::fromUtf8("insert into `sp_userinfo_operation` (`id`,`device_id`, `opt_type`, `opt_code`, `opt_value`, `user_id`, `send_time`, `report_time`, `store_time`) values (NULL,'%1','5',0,'%2',%3,'%4','%5','%6')")
- .arg(srcAddr).arg(reportTime.toString("yyyy-MM-dd HH:mm:dd")).arg(userId).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireUserinfoPostsoutReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 userId, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sql = QString::fromUtf8("insert into `sp_userinfo_operation` (`id`,`device_id`, `opt_type`, `opt_code`, `opt_value`, `user_id`, `send_time`, `report_time`, `store_time`) values (NULL,'%1','6',0,'%2',%3,'%4','%5','%6')")
- .arg(srcAddr).arg(reportTime.toString("yyyy-MM-dd HH:mm:dd")).arg(userId).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireUserinfoCommStaReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 commSta, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- QString devNum = devNumStr(srcAddr);
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,0));
- #endif
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sta = "";
- // int pos = -1;
- if(chk1byte(commSta,UserInfoReport::BuildingFireUserinfoUpcommStatus_WlanTrouble)){
- sta.append(QString::fromUtf8("网线故障,"));
- // pos = 0;
- }
- if(chk1byte(commSta,UserInfoReport::BuildingFireUserinfoUpcommStatus_WirlessTrouble)){
- sta.append(QString::fromUtf8("无线故障,"));
- // pos = 1;
- }
- if(chk1byte(commSta,UserInfoReport::BuildingFireUserinfoUpcommStatus_CommTrouble)){
- sta.append(QString::fromUtf8("通信故障,"));
- // pos = 2;
- }
- sta.append(reportTime.toString("yyyy-MM-dd HH:mm:ss"));
- QString sql = QString::fromUtf8("insert into `sp_userinfo_report` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `stat_type`, `stat_code`, `status`, `send_time`, `report_time`, `store_time`) values (NULL, '%1', -1, -1, -1, 0, '0', %2, '%3' ,'%4', '%5', '%6')")
- .arg(srcAddr).arg(commSta).arg(sta).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireUserinfoCommStaRestoreReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 commSta, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sta = "";
- // int pos = -1;
- if(chk1byte(commSta,UserInfoReport::BuildingFireUserinfoUpcommStatus_WlanTrouble)){
- sta.append(QString::fromUtf8("网线故障撤销,"));
- // pos = 0;
- }
- if(chk1byte(commSta,UserInfoReport::BuildingFireUserinfoUpcommStatus_WirlessTrouble)){
- sta.append(QString::fromUtf8("无线故障撤销,"));
- // pos = 1;
- }
- if(chk1byte(commSta,UserInfoReport::BuildingFireUserinfoUpcommStatus_CommTrouble)){
- sta.append(QString::fromUtf8("通信故障撤销,"));
- // pos = 2;
- }
- sta.append(reportTime.toString("yyyy-MM-dd HH:mm:ss"));
- QString sql = QString::fromUtf8("insert into `sp_userinfo_report` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `stat_type`, `stat_code`, `status`, `send_time`, `report_time`, `store_time`) values (NULL, '%1', -1, -1, -1, 0, '0', %2, '%3' ,'%4', '%5', '%6')")
- .arg(srcAddr).arg(commSta).arg(sta).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireUserinfoStaReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 userinfoStatus, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- QString devNum = devNumStr(srcAddr);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sta = "";
- // int pos = -1;
- // quint8 alarmType = 0x03;
- #endif
- if(dataType==0x15){
- if(chk1byte(userinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_Normal)){
- #ifdef ytDb
- sta.append(QString::fromUtf8("测试状态,"));
- // pos = 0;
- #endif
- }
- if(chk1byte(userinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_FireSta)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)1));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("火警,"));
- // pos = 1;
- // alarmType = 0x01;
- #endif
- }
- if(chk1byte(userinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_Trouble)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)0));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("故障,"));
- // pos = 2;
- // alarmType = 0x02;
- #endif
- }
- if(chk1byte(userinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_MainPower)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)0));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("主电故障,"));
- // pos = 3;
- // alarmType = 0x02;
- #endif
- }
- if(chk1byte(userinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_SubPower)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)0));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("备电故障,"));
- // pos = 4;
- // alarmType = 0x02;
- #endif
- }
- if(chk1byte(userinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_UpComm)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)0));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("与监控中心通信故障,"));
- // pos = 5;
- // alarmType = 0x02;
- #endif
- }
- if(chk1byte(userinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_DnComm)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)0));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("监测连线故障,"));
- // pos = 6;
- // alarmType = 0x02;
- #endif
- }
- #ifdef ytDb
- sta.append(reportTime.toString("yyyy-MM-dd HH:mm:ss"));
- QString sql = QString::fromUtf8("insert into`sp_userinfo_report` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `stat_type`, `stat_code`, `status`, `send_time`, `report_time`, `store_time`) values (NULL, '%1', -1, -1, -1, 0, '1', %2, '%3' ,'%4', '%5', '%6')")
- .arg(srcAddr).arg(userinfoStatus).arg(sta).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }else{
- #ifdef ytDb
- if(chk1byte(userinfoStatus,UserInfoReport::BuildingFireUserinfoOtherStatus_TimeErr)){
- sta.append(QString::fromUtf8("时间异常"));
- // pos = 0;
- }
- sta.append(reportTime.toString("yyyy-MM-dd HH:mm:ss"));
- QString sql = QString::fromUtf8("insert into`sp_userinfo_report` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `stat_type`, `stat_code`, `status`, `send_time`, `report_time`, `store_time`) values (NULL, '%1', -1, -1, -1, 0, '2', %2, '%3' ,'%4', '%5', '%6')")
- .arg(srcAddr).arg(userinfoStatus).arg(sta).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- }
- void UserInfoProcessCore::getBuildingFireUserinfoStaRestoreReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 userinfoStatus, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sta = "";
- // int pos = -1;
- if(chk1byte(userinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_Normal)){
- sta.append(QString::fromUtf8("测试状态撤销(正常运行) "));
- // pos = 0;
- }
- else if(chk1byte(userinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_FireSta)){
- sta.append(QString::fromUtf8("火警撤销 "));
- // pos = 1;
- }
- else if(chk1byte(userinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_Trouble)){
- sta.append(QString::fromUtf8("故障撤销 "));
- // pos = 2;
- }
- else if(chk1byte(userinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_MainPower)){
- sta.append(QString::fromUtf8("主电故障撤销 "));
- // pos = 3;
- }
- else if(chk1byte(userinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_SubPower)){
- sta.append(QString::fromUtf8("备电故障撤销 "));
- // pos = 4;
- }
- else if(chk1byte(userinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_UpComm)){
- sta.append(QString::fromUtf8("与监控中心通信故障撤销 "));
- // pos = 5;
- }
- else if(chk1byte(userinfoStatus,UserInfoReport::BuildingFireUserinfoStatus_DnComm)){
- sta.append(QString::fromUtf8("监测连线故障撤销 "));
- // pos = 6;
- }
- sta.append(reportTime.toString("yyyy-MM-dd HH:mm:ss"));
- QString sql = QString::fromUtf8("insert into`sp_userinfo_report` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `stat_type`, `stat_code`, `status`, `send_time`, `report_time`, `store_time`) values (NULL, '%1', -1, -1, -1, 0, '1', %2, '%3' ,'%4', '%5', '%6')")
- .arg(srcAddr).arg(userinfoStatus).arg(sta).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireCtrlSysStatusReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 sysType, quint8 sysAddr, quint16 sysStatus, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- QString devNum = devNumStr(srcAddr);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sta = getSysStructType(sysType);
- // int pos = -1;
- #endif
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Normal)){
- #ifdef ytDb
- sta.append(QString::fromUtf8("测试状态,"));
- // pos = 0;
- #endif
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_FireSta)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)1));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("火警,"));
- // pos = 1;
- #endif
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Trouble)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)0));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("故障,"));
- // pos = 2;
- #endif
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Shield)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)6));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("屏蔽,"));
- // pos = 3;
- #endif
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Super)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)3));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("监管,"));
- // pos = 4;
- #endif
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Open)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)4));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("启动,"));
- // pos = 5;
- #endif
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Feedback)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)2));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("反馈,"));
- // pos = 6;
- #endif
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Delay)){
- #ifdef ytDb
- sta.append(QString::fromUtf8("延时,"));
- // pos = 7;
- #endif
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_MainPower)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)0));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("主电故障,"));
- // pos = 8;
- #endif
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_SubPower)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)0));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("备电故障,"));
- // pos = 9;
- #endif
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Bus)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)0));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("总线故障,"));
- // pos = 10;
- #endif
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Manual)){
- #ifdef ytDb
- sta.append(QString::fromUtf8("手动状态,"));
- // pos = 11;
- #endif
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_ParamChanged)){
- #ifdef ytDb
- sta.append(QString::fromUtf8("配置改变,"));
- // pos = 12;
- #endif
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Reset)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)7));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("复位,"));
- // pos = 13;
- #endif
- }
- #ifdef ytDb
- sta.append(reportTime.toString("yyyy-MM-dd HH:mm:ss"));
- QString sql = QString::fromUtf8("insert into`sp_userinfo_report` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `stat_type`, `stat_code`, `status`, `send_time`, `report_time`, `store_time`) values (NULL, '%1', %2, %3, -1, 0, '2', %4, '%5' ,'%6', '%7', '%8')")
- .arg(srcAddr).arg(sysType).arg(sysAddr).arg(sysStatus).arg(sta).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireCtrlSysStatusRestoreReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 sysType, quint8 sysAddr, quint16 sysStatus, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sta = "";
- // int pos = -1;
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Normal)){
- sta.append(QString::fromUtf8("测试状态撤销,"));
- // pos = 0;
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_FireSta)){
- sta.append(QString::fromUtf8("火警撤销,"));
- // pos = 1;
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Trouble)){
- sta.append(QString::fromUtf8("故障撤销,"));
- // pos = 2;
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Shield)){
- sta.append(QString::fromUtf8("屏蔽撤销,"));
- // pos = 3;
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Super)){
- sta.append(QString::fromUtf8("监管撤销,"));
- // pos = 4;
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Open)){
- sta.append(QString::fromUtf8("启动撤销,"));
- // pos = 5;
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Feedback)){
- sta.append(QString::fromUtf8("反馈撤销,"));
- // pos = 6;
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Delay)){
- sta.append(QString::fromUtf8("延时撤销,"));
- // pos = 7;
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_MainPower)){
- sta.append(QString::fromUtf8("主电故障撤销,"));
- // pos = 8;
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_SubPower)){
- sta.append(QString::fromUtf8("备电故障撤销,"));
- // pos = 9;
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Bus)){
- sta.append(QString::fromUtf8("总线故障撤销,"));
- // pos = 10;
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Manual)){
- sta.append(QString::fromUtf8("手动状态撤销,"));
- // pos = 11;
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_ParamChanged)){
- sta.append(QString::fromUtf8("配置改变撤销,"));
- // pos = 12;
- }
- if(chk2byte(sysStatus,UserInfoReport::BuildingFireCtrlSysStatus_Reset)){
- sta.append(QString::fromUtf8("复位撤销,"));
- // pos = 13;
- }
- sta.append(reportTime.toString("yyyy-MM-dd HH:mm:ss"));
- QString sql = QString::fromUtf8("insert into`sp_userinfo_report` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `stat_type`, `stat_code`, `status`, `send_time`, `report_time`, `store_time`) values (NULL, '%1', %2, %3, -1, 0, '2', %4, '%5' ,'%6', '%7', '%8')")
- .arg(srcAddr).arg(sysType).arg(sysAddr).arg(sysStatus).arg(sta).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireCtrlVersionReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 sysType, quint8 sysAddr, quint16 version, QDateTime sendTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString ver = QString("%1.%2").arg((version>>8)&0xff).arg((version&0xff),2,10,QChar('0'));
- QString sql = QString::fromUtf8("insert into `sp_userinfo_param` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `param_type` ,`param_value`, `report_time`, `store_time`) values (NULL, '%1', %2, %3, -1, 0, '1', '%4', '%5', '%6')")
- .arg(srcAddr).arg(sysType).arg(sysAddr).arg(ver).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireCtrlSystemNoteReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 sysType, quint8 sysAddr, QString sysNote, QDateTime sendTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sql = QString::fromUtf8("insert into `sp_userinfo_param` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `param_type` ,`param_value`, `report_time`, `store_time`) values (NULL, '%1', %2, %3, -1, 0, '1', '%4', '%5', '%6')")
- .arg(srcAddr).arg(sysType).arg(sysAddr).arg(sysNote).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireCtrlSysBootReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 sysType, quint8 sysAddr, QDateTime sendTime, QDateTime bootTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- QString devNum = devNumStr(srcAddr);
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,4));
- #endif
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sql = QString::fromUtf8("insert into `sp_userinfo_operation` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `opt_type`, `opt_code`, `opt_value`, `user_id`, `send_time`, `report_time`, `store_time`) value (NULL, '%1', %2, %3, -1, 0, '1',0, '%4', 0, '%5', '%6', '%7')")
- .arg(srcAddr).arg(sysType).arg(sysAddr).arg(QString::fromUtf8("系统设备开机")+bootTime.toString("yyyy-MM-dd HH:mm:dd")).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(bootTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireCtrlSysShutdownReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 sysType, quint8 sysAddr, QDateTime sendTime, QDateTime shutdownTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sql = QString::fromUtf8("insert into `sp_userinfo_operation` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `opt_type`, `opt_code`, `opt_value`, `user_id`, `send_time`, `report_time`, `store_time`) value (NULL, '%1', %2, %3, -1, 0, '2',0, '%4', 0, '%5', '%6', '%7')")
- .arg(srcAddr).arg(sysType).arg(sysAddr).arg(QString::fromUtf8("系统设备关机")+shutdownTime.toString("yyyy-MM-dd HH:mm:dd")).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(shutdownTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireCtrlSysActStatusReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 sysType, quint8 sysAddr, quint16 actStatus, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sta = getSysStructType(sysType);
- // int pos = -1;
- if(chk2byte(actStatus,UserInfoReport::BuildingFireSysActStatus_AllowManual)){
- sta.append(QString::fromUtf8("允许手动,"));
- // pos = 0;
- }
- if(chk2byte(actStatus,UserInfoReport::BuildingFireSysActStatus_AllowAuto)){
- sta.append(QString::fromUtf8("允许自动,"));
- // pos = 1;
- }
- if(chk2byte(actStatus,UserInfoReport::BuildingFireSysActStatus_AllowSpray)){
- sta.append(QString::fromUtf8("允许喷洒,"));
- // pos = 2;
- }
- if(chk2byte(actStatus,UserInfoReport::BuildingFireSysActStatus_AllowManualOnly)){
- sta.append(QString::fromUtf8("允许手动禁止自动,"));
- // pos = 3;
- }
- if(chk2byte(actStatus,UserInfoReport::BuildingFireSysActStatus_AllowAutoOnly)){
- sta.append(QString::fromUtf8("允许自动禁止手动,"));
- // pos = 4;
- }
- if(chk2byte(actStatus,UserInfoReport::BuildingFireSysActStatus_NoManual)){
- sta.append(QString::fromUtf8("禁止手动,"));
- // pos = 8;
- }
- if(chk2byte(actStatus,UserInfoReport::BuildingFireSysActStatus_NoAuto)){
- sta.append(QString::fromUtf8("禁止自动,"));
- // pos = 9;
- }
- if(chk2byte(actStatus,UserInfoReport::BuildingFireSysActStatus_NoSpray)){
- sta.append(QString::fromUtf8("禁止喷洒,"));
- // pos = 10;
- }
- if(chk2byte(actStatus,UserInfoReport::BuildingFireSysActStatus_NoAutoManual)){
- sta.append(QString::fromUtf8("禁止手自动,"));
- // pos = 11;
- }
- sta.append(reportTime.toString("yyyy-MM-dd HH:mm:ss"));
- QString sql = QString::fromUtf8("insert into `sp_userinfo_operation` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, opt_type`, `opt_code`, `opt_value`, `user_id`, `send_time`, `report_time`, `store_time`) value (NULL, '%1', %2, %3, -1, 0, '7', '%4', 0, '%5', '%6', '%7')")
- .arg(srcAddr).arg(sysType).arg(sysAddr).arg(sta).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireCtrlOperationReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 sysType, quint8 sysAddr, quint8 operationType, quint8 userId, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- QString devNum = devNumStr(srcAddr);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sta = getSysStructType(sysType);
- // int pos = -1;
- #endif
- if(chk1byte(operationType,UserInfoReport::BuildingFireCtrlOperation_Reset)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,7));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("复位,"));
- // pos = 0;
- #endif
- }
- if(chk1byte(operationType,UserInfoReport::BuildingFireCtrlOperation_Silent)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,8));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("消音,"));
- // pos = 1;
- #endif
- }
- if(chk1byte(operationType,UserInfoReport::BuildingFireCtrlOperation_Manual)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,1));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("手报,"));
- // pos = 2;
- #endif
- }
- if(chk1byte(operationType,UserInfoReport::BuildingFireCtrlOperation_Clear)){
- #ifdef ytDb
- sta.append(QString::fromUtf8("消除警报,"));
- // pos = 3;
- #endif
- }
- if(chk1byte(operationType,UserInfoReport::BuildingFireCtrlOperation_TestSelf)){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,5));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("自检,"));
- // pos = 4;
- #endif
- }
- if(chk1byte(operationType,UserInfoReport::BuildingFireCtrlOperation_Confirm)){
- #ifdef ytDb
- sta.append(QString::fromUtf8("确认,"));
- // pos = 5;
- #endif
- }
- if(chk1byte(operationType,UserInfoReport::BuildingFireCtrlOperation_Test)){
- #ifdef ytDb
- sta.append(QString::fromUtf8("测试,"));
- // pos = 6;
- #endif
- }
- #ifdef ytDb
- sta.append(reportTime.toString("yyyy-MM-dd HH:mm:ss"));
- QString sql = QString::fromUtf8("insert into `sp_userinfo_operation` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `opt_type`, `opt_code`, `opt_value`, `user_id`, `send_time`, `report_time`, `store_time`) values (NULL, '%1', %2, %3, -1, 0, '8', %4, '%5', %6, '%7', '%8', '%9')")
- .arg(srcAddr).arg(sysType).arg(sysAddr).arg(operationType).arg(sta).arg(userId).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireCtrlTimeReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 sysType, quint8 sysAddr, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sta = QString::fromUtf8("上报系统时间,");
- sta.append(reportTime.toString("yyyy-MM-dd HH:mm:ss"));
- QString sql = QString::fromUtf8("insert into `sp_userinfo_operation` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `opt_type`, `opt_code`, `opt_value`, `user_id`, `send_time`, `report_time`, `store_time`) values (NULL, '%1', %2, %3, -1, 0, '8', %4, '%5', %6, '%7', '%8', '%9')")
- .arg(srcAddr).arg(sysType).arg(sysAddr).arg(0).arg(sta).arg(0).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireCtrlUintStatusReport2(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 sysType, quint8 sysAddr, quint8 unitType, quint32 unitAddr, quint32 uintStatus, QString unitNote, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- QString devNum = devNumStr(srcAddr);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sta = getSysStructType(sysType)+getUnitType(unitType);
- // int pos = -1;
- #endif
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Normal&0x0000ffff))){
- #ifdef ytDb
- sta.append(QString::fromUtf8("测试状态,"));
- // pos = 0;
- #endif
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_FireSta&0x0000ffff))){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)1));
- #endif
- #ifdef ytDf
- sta.append(QString::fromUtf8("火警,"));
- // pos = 1;
- #endif
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Trouble&0x0000ffff))){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)0));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("故障,"));
- // pos = 2;
- #endif
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Shield&0x0000ffff))){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)6));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("屏蔽,"));
- // pos = 3;
- #endif
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Super&0x0000ffff))){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)3));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("监管,"));
- // pos = 8;
- #endif
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Open&0x0000ffff))){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)4));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("启动,"));
- // pos = 9;
- #endif
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Feedback&0x0000ffff))){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)2));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("反馈,"));
- // pos = 10;
- #endif
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Delay&0x0000ffff))){
- #ifdef ytDb
- sta.append(QString::fromUtf8("延时状态,"));
- // pos = 11;
- #endif
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Power&0x0000ffff))){
- #ifdef SyncIface
- syncThread->appendData(SyncData(devNum,(qint32)0));
- #endif
- #ifdef ytDb
- sta.append(QString::fromUtf8("电源故障,"));
- // pos = 12;
- #endif
- }
- #ifdef ytDb
- sta.append(reportTime.toString("yyyy-MM-dd HH:mm:ss"));
- if(unitNote.trimmed().length()>0)
- sta.append(",").append(unitNote.trimmed());
- QString sql = QString::fromUtf8("insert into `sp_userinfo_report` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `stat_type`, `stat_code`, `status`, `send_time`, `report_time`, `store_time`) values (NULL, '%1', %2, %3, %4, %5, '4', %6, '%7', '%8', '%9', '%10')")
- .arg(srcAddr).arg(sysType).arg(sysAddr).arg(unitType).arg(unitAddr).arg(uintStatus).arg(sta).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireCtrlUintStatusRestoreReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 sysType, quint8 sysAddr, quint8 unitType, quint32 unitAddr, quint16 uintStatus, QString unitNote, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- UN_REFERENCED_PARAMETER(unitNote)
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sta = getSysStructType(sysType)+getUnitType(unitType);
- // int pos = -1;
- if(chk2byte(uintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Normal)){
- sta.append(QString::fromUtf8("测试状态撤销(正常) "));
- // pos = 0;
- }
- else if(chk2byte(uintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_FireSta)){
- sta.append(QString::fromUtf8("火警撤销 "));
- // pos = 1;
- }
- else if(chk2byte(uintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Trouble)){
- sta.append(QString::fromUtf8("故障撤销 "));
- // pos = 2;
- }
- else if(chk2byte(uintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Shield)){
- sta.append(QString::fromUtf8("屏蔽撤销 "));
- // pos = 3;
- }
- else if(chk2byte(uintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Super)){
- sta.append(QString::fromUtf8("监管撤销 "));
- // pos = 8;
- }
- else if(chk2byte(uintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Open)){
- sta.append(QString::fromUtf8("停止 "));
- // pos = 9;
- }
- else if(chk2byte(uintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Feedback)){
- sta.append(QString::fromUtf8("反馈撤销 "));
- // pos = 10;
- }
- else if(chk2byte(uintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Delay)){
- sta.append(QString::fromUtf8("延时状态撤销 "));
- // pos = 11;
- }
- else if(chk2byte(uintStatus,UserInfoReport::BuildingFireCtrlUnitStatus_Power)){
- sta.append(QString::fromUtf8("电源故障撤销 "));
- // pos = 12;
- }
- sta.append(reportTime.toString("yyyy-MM-dd HH:mm:ss"));
- QString sql = QString::fromUtf8("insert into `sp_userinfo_report` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `stat_type`, `stat_code`, `status`, `send_time`, `report_time`, `store_time`) values (NULL, '%1', %2, %3, %4, %5, '4', %6, '%7', '%8', '%9', '%10')")
- .arg(srcAddr).arg(sysType).arg(sysAddr).arg(unitType).arg(unitAddr).arg(uintStatus).arg(sta).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireCtrlUintStatusRestoreReport2(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 sysType, quint8 sysAddr, quint8 unitType, quint32 unitAddr, quint32 uintStatus, QString unitNote, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- UN_REFERENCED_PARAMETER(unitNote)
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sta = getSysStructType(sysType)+getUnitType(unitType);
- // int pos =-1;
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Normal&0x0000ffff))){
- sta.append(QString::fromUtf8("测试状态撤销,"));
- // pos = 0;
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_FireSta&0x0000ffff))){
- sta.append(QString::fromUtf8("火警撤销,"));
- // pos = 1;
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Trouble&0x0000ffff))){
- sta.append(QString::fromUtf8("故障撤销,"));
- // pos = 2;
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Shield&0x0000ffff))){
- sta.append(QString::fromUtf8("屏蔽撤销,"));
- // pos = 3;
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Super&0x0000ffff))){
- sta.append(QString::fromUtf8("监管撤销,"));
- // pos = 8;
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Open&0x0000ffff))){
- sta.append(QString::fromUtf8("停止,"));
- // pos = 9;
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Feedback&0x0000ffff))){
- sta.append(QString::fromUtf8("反馈撤销,"));
- // pos = 10;
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Delay&0x0000ffff))){
- sta.append(QString::fromUtf8("延时状态撤销,"));
- // pos = 11;
- }
- if(chk4byte(uintStatus,static_cast<quint32>(UserInfoReport::BuildingFireCtrlUnitStatus_Power&0x0000ffff))){
- sta.append(QString::fromUtf8("电源故障撤销,"));
- // pos = 12;
- }
- sta.append(reportTime.toString("yyyy-MM-dd HH:mm:ss"));
- QString sql = QString::fromUtf8("insert into `sp_userinfo_report` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `stat_type`, `stat_code`, `status`, `send_time`, `report_time`, `store_time`) values (NULL, '%1', %2, %3, %4, %5, '4', %6, '%7', '%8', '%9', '%10')")
- .arg(srcAddr).arg(sysType).arg(sysAddr).arg(unitType).arg(unitAddr).arg(uintStatus).arg(sta).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireCtrlUintNoteReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 sysType, quint8 sysAddr, quint8 unitType, quint32 unitAddr, QString unitNote, QDateTime sendTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sql = QString::fromUtf8("insert into `sp_userinfo_param` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `param_type`, `param_value`, `report_time`, `store_time`) values (NULL, '%1', %2, %3, %4, %5, '5', '%6', '%7', '%8')")
- .arg(srcAddr).arg(sysType).arg(sysAddr).arg(unitType).arg(unitAddr).arg(unitNote).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireCtrlUintFireTypeReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 sysType, quint8 sysAddr, quint8 unitType, quint32 unitAddr, quint16 fireType, QString unitNote, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sta = getSysStructType(sysType)+getUnitType(unitType);
- // int pos = -1;
- if(chk2byte(fireType,UserInfoReport::BuildingFireUnitFireType_MisInfo)){
- sta.append(QString::fromUtf8("误报,"));
- // pos = 0;
- }
- if(chk2byte(fireType,UserInfoReport::BuildingFireUnitFireType_Confirm)){
- sta.append(QString::fromUtf8("确认火警,"));
- // pos = 1;
- }
- if(chk2byte(fireType,UserInfoReport::BuildingFireUnitFireType_Automatic)){
- sta.append(QString::fromUtf8("自动火警(有人),"));
- // pos = 2;
- }
- if(chk2byte(fireType,UserInfoReport::BuildingFireUnitFireType_Timeout)){
- sta.append(QString::fromUtf8("火警超时(有人),"));
- // pos = 3;
- }
- if(chk2byte(fireType,UserInfoReport::BuildingFireUnitFireType_Warning)){
- sta.append(QString::fromUtf8("预警,"));
- // pos = 4;
- }
- if(!chk2byte(fireType,UserInfoReport::BuildingFireUnitFireType_Keeping)){
- sta.append(QString::fromUtf8("停止,"));
- // pos = 5;
- }
- sta.append(reportTime.toString("yyyy-MM-dd HH:mm:ss"));
- if(unitNote.trimmed().length()>0)
- sta.append(",").append(unitNote.trimmed());
- // dbThread->appendSta(UiPoint(srcAddr,0,unitAddr,fireType,sendTime.toTime_t()));
- QString sql = QString::fromUtf8("insert into `sp_userinfo_report` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `stat_type`, `stat_code`, `status`, `send_time`, `report_time`, `store_time`) values (NULL, '%1', %2, %3, %4, %5, '5', %6, '%7', '%8', '%9', '%10')")
- .arg(srcAddr).arg(sysType).arg(sysAddr).arg(unitType).arg(unitAddr).arg(fireType).arg(sta).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getBuildingFireCtrlUintDateReport(quint16 sn, quint64 srcAddr, quint64 destAddr, quint8 dataType, quint8 sysType, quint8 sysAddr, quint8 unitType, quint32 unitAddr, quint8 unitDataType, qint16 uintData, QDateTime sendTime, QDateTime reportTime)
- {
- UN_REFERENCED_PARAMETER(sn);
- UN_REFERENCED_PARAMETER(destAddr);
- UN_REFERENCED_PARAMETER(dataType);
- #ifdef ytDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString sta = getSysStructType(sysType)+getUnitType(unitType);
- if(chk1byte(unitDataType,UserInfoReport::BuildingFireCtrlUnitDataType_Count))
- sta = QString::fromUtf8("事件计数:%1 件").arg(static_cast<qint16>(uintData));
- else if(chk1byte(unitDataType,UserInfoReport::BuildingFireCtrlUnitDataType_Height))
- sta = QString::fromUtf8("高度:%1 米").arg(static_cast<qint16>(uintData)*0.01);
- else if(chk1byte(unitDataType,UserInfoReport::BuildingFireCtrlUnitDataType_Temp))
- sta = QString::fromUtf8("温度:%1 ℃").arg(static_cast<qint16>(uintData)*0.1);
- else if(chk1byte(unitDataType,UserInfoReport::BuildingFireCtrlUnitDataType_MPa))
- sta = QString::fromUtf8("压力:%1 MPa").arg(static_cast<qint16>(uintData)*0.1);
- else if(chk1byte(unitDataType,UserInfoReport::BuildingFireCtrlUnitDataType_kPa))
- sta = QString::fromUtf8("压力:%1 kPa").arg(static_cast<qint16>(uintData)*0.1);
- else if(chk1byte(unitDataType,UserInfoReport::BuildingFireCtrlUnitDataType_LEL))
- sta = QString::fromUtf8("气体浓度:%1%%LEL").arg(static_cast<qint16>(uintData)*0.1);
- else if(chk1byte(unitDataType,UserInfoReport::BuildingFireCtrlUnitDataType_Sec))
- sta = QString::fromUtf8("时间:%1秒").arg(static_cast<qint16>(uintData));
- else if(chk1byte(unitDataType,UserInfoReport::BuildingFireCtrlUnitDataType_Volt))
- sta = QString::fromUtf8("电压:%1V").arg(static_cast<qint16>(uintData)*0.1);
- else if(chk1byte(unitDataType,UserInfoReport::BuildingFireCtrlUnitDataType_Amp))
- sta = QString::fromUtf8("电流:%1A").arg(static_cast<qint16>(uintData)*0.1);
- else if(chk1byte(unitDataType,UserInfoReport::BuildingFireCtrlUnitDataType_Flow))
- sta = QString::fromUtf8("流量:%1L/s").arg(static_cast<qint16>(uintData)*0.1);
- else if(chk1byte(unitDataType,UserInfoReport::BuildingFireCtrlUnitDataType_Blow))
- sta = QString::fromUtf8("风量:%1m3/min").arg(static_cast<qint16>(uintData)*0.1);
- else if(chk1byte(unitDataType,UserInfoReport::BuildingFireCtrlUnitDataType_Wind))
- sta = QString::fromUtf8("风速:%1m/s").arg(static_cast<qint16>(uintData));
- QString sql = QString::fromUtf8("insert into `sp_userinfo_report` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `stat_type`, `stat_code`, `status`, `send_time`, `report_time`, `store_time`) values (NULL, '%1', %2, %3, %4, %5, '6', %6, '%7', '%8', '%9', '%10')")
- .arg(srcAddr).arg(sysType).arg(sysAddr).arg(unitType).arg(unitAddr).arg(0).arg(sta).arg(sendTime.toString("yyyy-MM-dd HH:mm:ss")).arg(reportTime.toString("yyyy-MM-dd HH:mm:ss")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- #endif
- }
- void UserInfoProcessCore::getOnLine(quint64 srcAddr, bool sta)
- {
- #ifdef JdxfDb
- QDateTime curTime = QDateTime::currentDateTime();
- QString stat = QString::fromUtf8("%1,%2").arg(sta?QString::fromUtf8("连线"):QString::fromUtf8("离线")).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- QString sql = QString::fromUtf8("insert into `sp_userinfo_report` (`id`, `device_id`, `sys_type`, `sys_addr`, `unit_type`, `unit_addr`, `stat_type`, `status`, `send_time`, `report_time`, `store_time`) values (NULL, '%1', -1, -1, -1, 0, '0', '%2', '%3', '%3', '%3')")
- .arg(srcAddr).arg(stat).arg(curTime.toString("yyyy-MM-dd HH:mm:ss"));
- dbThread->appendSql(sql);
- if(sta)
- dbThread->appendSql(QString("update sp_devices_status set devicestatus=0 , true_status=0 , lastcommtime='%1', statustime='%1' where deviceid=%2")
- .arg(curTime.toString("yyyy-MM-dd HH:mm:ss")).arg(srcAddr));
- else
- dbThread->appendSql(QString("update sp_devices_status set devicestatus=75, true_status=75, lastcommtime='%1', statustime='%1' where deviceid=%2")
- .arg(curTime.toString("yyyy-MM-dd HH:mm:ss")).arg(srcAddr));
- #endif
- }
|