#include "pch.h" #include "ElectricEqpmt_Line_TouchNet.h" void CElectricEqpmt_Line_TouchNet::CalculateValue(double inputv,double inputI,ELEEQPMTMAP* PEqpmtMap) { } bool CElectricEqpmt_Line_TouchNet::PowerLost(ELEEQPMTMAP& eqpmtmap,string sourceid,int offcase) { SetPower(false); UpdateEqpmtStatus(eqpmtmap,Electric_Eqpmt_Status_OFF);//更新sourceid设备的显示状态 if (p_SendList!=nullptr) { ELCACCIDENT aci; string strID=GetEqpmentID(); strncpy(aci.EqpmtStrID, strID.c_str(), sizeof(aci.EqpmtStrID)); aci.EventType=Power_TouchNet_Power_Lost; aci.parm = offcase; OCCCOMMAND NetOrder; NetOrder.DesSysType = OCC_SYS_DD_SVR; NetOrder.ScrSysType = OCC_SYS_DD_SVR; NetOrder.TrainningID = m_Trianid; NetOrder.setPacketValue(&aci,OCCCOMMAND::eUpdateAccident); p_SendList->push(NetOrder); } std::map::iterator iter = OutputEqpmtIDMap.begin(); for (;iter!=OutputEqpmtIDMap.end();iter++) { ELEEQPMTMAP::iterator iter1 = eqpmtmap.find(iter->first); if (iter1==eqpmtmap.end()) continue; iter1->second->PowerCut(eqpmtmap,GetEqpmentID(),offcase); } return true; } bool CElectricEqpmt_Line_TouchNet::PowerIn(ELEEQPMTMAP& eqpmtmap,string sourceid) { SetPower(true); std::map::iterator iter = InputEqpmtIDMap.begin(); for (;iter!=InputEqpmtIDMap.end();iter++) { if (sourceid==iter->first) { if (iter->second.InputPower) { return false; } iter->second.InputPower = true; UpdateEqpmtStatus(eqpmtmap,Electric_Eqpmt_Status_ON); if (p_SendList!=NULL) { ELCACCIDENT aci; //aci.Eqpmtid = m_strid; string strID=GetEqpmentID(); strncpy(aci.EqpmtStrID,strID.c_str(), sizeof(aci.EqpmtStrID)); aci.EventType=Power_TouchNet_Power_Come; OCCCOMMAND NetOrder; NetOrder.DesSysType = OCC_SYS_DD_SVR; NetOrder.ScrSysType = OCC_SYS_DD_SVR; NetOrder.TrainningID = m_Trianid; NetOrder.setPacketValue(&aci,OCCCOMMAND::eUpdateAccident); p_SendList->push(NetOrder); } } } std::map::iterator iter2 = OutputEqpmtIDMap.begin(); for (;iter2!=OutputEqpmtIDMap.end();iter2++) { if (iter2->first!=sourceid) { ELEEQPMTMAP::iterator iter3 = eqpmtmap.find(iter2->first); if (iter3!=eqpmtmap.end()) { iter3->second->PowerIn(eqpmtmap,GetEqpmentID()); } } } return true; }