#include "CommunicationCfg.h" CommunicationCfg::CommunicationCfg() { m_MachineId = 0; m_ClientCode = ""; m_Name = ""; m_Type = COM; m_IP = "0.0.0.0"; m_Port = 10000; m_Addr = 1; m_COM = "COM1"; m_BaudRate = 9600; m_Parity = 0; m_DataBits = 8; m_StopBits = 1; m_Interval = 1000; m_AlarmTimeoutTimes = 3; m_Enable = false; memset(m_szIp, '\0', sizeof(m_szIp)); memset(m_szCom, '\0', sizeof(m_szCom)); } CommunicationCfg::CommunicationCfg(int mid, string cc, string name, int type) :m_MachineId(mid) , m_ClientCode(cc) , m_Name(name) , m_Type(type) { m_IP = "0.0.0.0"; m_Port = 10000; m_Addr = 1; m_COM = "COM1"; m_BaudRate = 9600; m_Parity = 0; m_DataBits = 8; m_StopBits = 1; m_Interval = 1000; m_AlarmTimeoutTimes = 3; m_Enable = true; memset(m_szIp, '\0', sizeof(m_szIp)); memset(m_szCom, '\0', sizeof(m_szCom)); } void CommunicationCfg::GetUpdateSql(vector& ups) { char buffer[512]; string sql = "UPDATE " + TABLE_NAME + " SET " + FIELD_PARAM_VALUE + "='%s' WHERE " + FIELD_MACHINE_ID + "=%d AND " + FIELD_PARAM_CODE + "='%s' AND " + FIELD_CLIENT_CODE + "='" + m_ClientCode + "'"; sprintf_s(buffer, sizeof(buffer), sql.c_str(), m_Name.c_str(), m_MachineId, PARAM_NAME.c_str()); ups.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), to_string(m_Type).c_str(), m_MachineId, PARAM_TYPE.c_str()); ups.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), m_IP.c_str(), m_MachineId, PARAM_IP.c_str()); ups.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), to_string(m_Port).c_str(), m_MachineId, PARAM_PORT.c_str()); ups.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), to_string(m_Addr).c_str(), m_MachineId, PARAM_ADDR.c_str()); ups.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), m_COM.c_str(), m_MachineId, PARAM_COM.c_str()); ups.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), to_string(m_BaudRate).c_str(), m_MachineId, PARAM_BAUD_RATE.c_str()); ups.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), to_string(m_DataBits).c_str(), m_MachineId, PARAM_DATABITS.c_str()); ups.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), to_string(m_StopBits).c_str(), m_MachineId, PARAM_STOPBITS.c_str()); ups.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), to_string(m_Interval).c_str(), m_MachineId, PARAM_INTERVAL.c_str()); ups.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), to_string(m_AlarmTimeoutTimes).c_str(), m_MachineId, PARAM_ALARM_TIMEOUT_TIMES.c_str()); ups.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), m_Enable ? "1" : "0", m_MachineId, PARAM_ENABLE.c_str()); ups.push_back(buffer); } void CommunicationCfg::GetInitInsertSql(vector& ins) { char buffer[512]; string sql = "INSERT INTO " + TABLE_NAME + "(" + FIELD_MACHINE_ID + "," + FIELD_CLIENT_CODE + "," + FIELD_PARAM_CODE + "," + FIELD_PARAM_VALUE + ") VALUES(" + to_string(m_MachineId) + "," + m_ClientCode + ",'%s','%s'"; sprintf_s(buffer, sizeof(buffer), sql.c_str(), PARAM_NAME.c_str(), m_Name.c_str()); ins.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), PARAM_TYPE.c_str(), to_string(m_Type).c_str()); ins.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), PARAM_IP.c_str(), m_IP.c_str()); ins.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), PARAM_PORT.c_str(), to_string(m_Port).c_str()); ins.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), PARAM_ADDR.c_str(), to_string(m_Addr).c_str()); ins.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), PARAM_COM.c_str(), m_COM.c_str()); ins.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), PARAM_BAUD_RATE.c_str(), to_string(m_BaudRate).c_str()); ins.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), PARAM_PARITY.c_str(), to_string(m_Parity).c_str()); ins.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), PARAM_DATABITS.c_str(), to_string(m_DataBits).c_str()); ins.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), PARAM_STOPBITS.c_str(), to_string(m_StopBits).c_str()); ins.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), PARAM_INTERVAL.c_str(), to_string(m_Interval).c_str()); ins.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), PARAM_ALARM_TIMEOUT_TIMES.c_str(), to_string(m_AlarmTimeoutTimes).c_str()); ins.push_back(buffer); sprintf_s(buffer, sizeof(buffer), sql.c_str(), PARAM_ENABLE.c_str(), m_Enable ? "1" : "0"); ins.push_back(buffer); } const string CommunicationCfg::TABLE_NAME = "CommunicationCfg"; const string CommunicationCfg::FIELD_MACHINE_ID = "MachineId"; const string CommunicationCfg::FIELD_CLIENT_CODE = "ClientCode"; const string CommunicationCfg::FIELD_PARAM_CODE = "ParamCode"; const string CommunicationCfg::FIELD_PARAM_VALUE = "ParamValue"; const string CommunicationCfg::PARAM_NAME = "Name"; const string CommunicationCfg::PARAM_TYPE = "Type"; const string CommunicationCfg::PARAM_IP = "IP"; const string CommunicationCfg::PARAM_PORT = "Port"; const string CommunicationCfg::PARAM_ADDR = "Addr"; const string CommunicationCfg::PARAM_COM = "Com"; const string CommunicationCfg::PARAM_BAUD_RATE = "BaudRate"; const string CommunicationCfg::PARAM_PARITY = "Parity"; const string CommunicationCfg::PARAM_DATABITS = "Databits"; const string CommunicationCfg::PARAM_STOPBITS = "Stopbits"; const string CommunicationCfg::PARAM_INTERVAL = "Interval"; const string CommunicationCfg::PARAM_ALARM_TIMEOUT_TIMES = "AlarmTimeoutTimes"; const string CommunicationCfg::PARAM_ENABLE = "enable";