#include "StdAfx.h" #include "CellBase.h" #include "CellAUTOCREATE.h" #include "IvrFlow.h" CCellBase::CCellBase(void) { } CCellBase::CCellBase( CCellBase& CellBase ) : m_Pos(CellBase.m_Pos), m_Note(CellBase.m_Note), m_pIvrFlow(CellBase.m_pIvrFlow) { } /***************************************************************** **【函数名称】 createCell **【函数功能】 根据节点名称生成对应节点对象 **【参数】 a_Name: 名称 **【返回值】 节点对象 ****************************************************************/ CCellBase* CCellBase::createCell( const CString& a_Name ) { return CCellAUTOCREATE::createCell(a_Name); } /***************************************************************** **【函数名称】 __getCellInfo **【函数功能】 节点流程执行信息 **【参数】 **【返回值】 节点执行信息 ****************************************************************/ void CCellBase::_getCellInfo( CString& InfoBuffer ) { if (m_pIvrFlow != NULL) { //InfoBuffer.Format(_T("{ FLOW[%d], NODE[%d], NOTE = %s } "), m_pIvrFlow->id(), m_Pos, m_Note); // 2022-05-30 开始节点增加流程详细信息日志 CString strName = name(); if (CELL_NAME_START == strName) { CString strInfo, str; m_pIvrFlow->findVarValue(SYSTEM_VAR_CALLID, str); str.Format("[%s-%s]", SYSTEM_VAR_CALLID, str); strInfo.Format("%s%s", strInfo, str); str = ""; m_pIvrFlow->findVarValue(SYSTEM_VAR_OUTLINEID, str); str.Format("[%s-%s]", SYSTEM_VAR_OUTLINEID, str); strInfo.Format("%s%s", strInfo, str); str = ""; m_pIvrFlow->findVarValue(SYSTEM_VAR_CALLER, str); str.Format("[%s-%s]", SYSTEM_VAR_CALLER, str); strInfo.Format("%s%s", strInfo, str); str = ""; m_pIvrFlow->findVarValue(SYSTEM_VAR_CALLEE, str); str.Format("[%s-%s]", SYSTEM_VAR_CALLEE, str); strInfo.Format("%s%s", strInfo, str); InfoBuffer.Format(_T("{ FLOW[%d], NODE[%d], NOTE = %s[%s] } "), m_pIvrFlow->id(), m_Pos, m_Note, strInfo); } else { InfoBuffer.Format(_T("{ FLOW[%d], NODE[%d], NOTE = %s } "), m_pIvrFlow->id(), m_Pos, m_Note); } } } /***************************************************************** **【函数名称】 assoCallID **【函数功能】 获取关联CallID **【参数】 **【返回值】 ****************************************************************/ ULONG CCellBase::assoCallID( void ) { if(m_pIvrFlow != NULL) return m_pIvrFlow->assoCallId(); else return 0; }