#include "core.h" #include "smartlightshm.h" Core::Core(QObject *parent) : QObject(parent) { logThread = new LogThread(this); logThread->start(); dbThread = new DatabaseThread(this); connect(dbThread,&DatabaseThread::sql_log,this,&Core::sql_log); server = new SmartLightServer(this); connect(server,&SmartLightServer::CommData,this,&Core::CommData); connect(server,&SmartLightServer::getEAlarm,this,&Core::getEAlarm); intServer = new InterfaceServer(this); connect(intServer,&InterfaceServer::SetResetRequest,this,&Core::resetRequest); connect(intServer,&InterfaceServer::SetRequestRealTimeData,this,&Core::requestRealTimeData); connect(intServer,&InterfaceServer::SetRequestSetParameters,this,&Core::requestSetParameters); connect(intServer,&InterfaceServer::SetCommData,this,&Core::CommData); //平台接口数据信号 wssServer = new WssServer(this); connect(wssServer,&WssServer::resetRequest,this,&Core::resetRequest); connect(wssServer,&WssServer::requestRealTimeData,this,&Core::requestRealTimeData); connect(wssServer,&WssServer::requestSetParameters,this,&Core::requestSetParameters); connect(wssServer,&WssServer::CommData,this,&Core::CommData); wssServer->start(); dbThread->start(); } void Core::start() { server->start(); intServer->start(); } void Core::CommData(QString deviceID, int dir, QString data) { logThread->appendData(data); wssServer->subReport(deviceID,dir,false,false,data); if(dir==11){ sql_log("++++++setEchoString++++++"); intServer->setEchoString(deviceID,data); } } void Core::resetRequest(QString deviceID, int commandType, int parameterType, int pseq) { CommData(deviceID, 2, "======================tcp===================="); server->mk_ResetList_qry(deviceID,commandType,parameterType,pseq); } void Core::requestRealTimeData(QString deviceID, int commandType, int parameterType, int pn, int queryNumber, int startPoint) { server->mk_realtime_qry(deviceID,commandType,parameterType,pn,queryNumber,startPoint); } void Core::requestSetParameters(QString deviceID, int commandType, int parameterType, QString tmp) { CommData(deviceID, 2, "======================ceshi===================="); server->mk_set_parameters_qry(deviceID,commandType,parameterType,tmp); } void Core::getEAlarm(QString DeviceCode, int erc, int sta, int arg1, int arg2, int arg3, float value, float v2, QString others, QDateTime t) { dbThread->appendSql(DatabaseThread::RecSql,QString("insert into err_rec (id , device_id, erc, sta, arg1, arg2, arg3, value, value2, others, time1, time2) values (NULL, '%1', %2, %3, %4, %5, %6, %7, %8, '%9', %10, '%11')") .arg(DeviceCode).arg(erc).arg(sta).arg(arg1).arg(arg2).arg(arg3).arg(QString::number(value,'g',3)).arg(QString::number(v2,'g',3)).arg(others).arg(t.toTime_t()).arg(t.toString("yyyy-MM-dd HH:mm:ss"))); } void Core::sql_log(QString log) { logThread->appendData(log); }