void CDiagramListDlg::RunFunction3_3_13(DWORD dwID)
{
CSoapThread *pThread = (CSoapThread*)AfxBeginThread(RUNTIME_CLASS(CSoapThread), THREAD_PRIORITY_NORMAL, 0, CREATE_SUSPENDED);
pThread->functionType = FUN3_3_13;
lrb_modify
CString strID = _T("");
m_arGraphList.Lookup(dwID,strID);
pThread->GrahpID = strID;
//
pThread->m_dwSvgId = dwID;
pThread->m_pDiagramDlg = this;
pThread->ResumeThread();
}
void CDiagramListDlg::RunFunction3_3_1(CString csName)
{
CString csRight = csName;
int pos = 0;
std::vector<CString> vecCimName;
while (true)
{
pos = csRight.Find("_",0);
if (pos != -1)
{
CString csCimName = csRight.Left(pos);
vecCimName.push_back(csCimName);
csRight = csRight.Right(csRight.GetLength()-pos-1);
}
else
{
vecCimName.push_back(csRight);
break;
}
}
m_iCount = vecCimName.size();
for (int i=0;i<vecCimName.size();i++)
{
CSoapThread *pThread = (CSoapThread*)AfxBeginThread(RUNTIME_CLASS(CSoapThread), THREAD_PRIORITY_NORMAL, 0, CREATE_SUSPENDED);
pThread->m_csCimName = vecCimName[i];
pThread->functionType = FUN3_3_1;
pThread->m_pDiagramDlg = this;
pThread->ResumeThread();
}
}
/
//
//这个线程类中定义了4个函数,用来发送4种类型的消息
//
#if !defined(AFX_SOAPTHREAD_H__FC271F7C_21CF_4E27_8849_157128DC365A__INCLUDED_)
#define AFX_SOAPTHREAD_H__FC271F7C_21CF_4E27_8849_157128DC365A__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// SoapTHread.h : header file
//
#include "DiagramListDlg.h"
#include "..\Includes\SoapInterface.h"
/
// CSoapThread thread
class CSoapThread : public CWinThread
{
DECLARE_DYNCREATE(CSoapThread)
protected:
CSoapThread(); // protected constructor used by dynamic creation
// Attributes
public:
void Fun3_3_13(); //获得SVG图形数据
void Fun3_3_1();
void Fun3_3_2(); //根据馈线ID获取CIM模型
void Fun3_3_4(); //获得专题图列表
void Fun3_3_14(); //获取系统图关联的馈线
CString GrahpID;
// Operations
public:
//线程功能
EmFuctionType functionType;
//用来接收消息的窗口,同时让本线程能操作其界面
CDiagramListDlg* m_pDiagramDlg;
//3.3.13所需的ID
DWORD m_dwSvgId;
//用来保存3.3.1所需的线路名
CString m_csCimName;
//用来保存3.3.2所需的线路ID
CString m_csCimID;
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CSoapThread)
public:
virtual BOOL InitInstance();
virtual int ExitInstance();
//}}AFX_VIRTUAL
// Implementation
protected:
virtual ~CSoapThread();
public:
long nSize;
TI_GraphArray GraphArray;
// Generated message map functions
//{{AFX_MSG(CSoapThread)
// NOTE - the ClassWizard will add and remove member functions here.
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
/
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_SOAPTHREAD_H__FC271F7C_21CF_4E27_8849_157128DC365A__INCLUDED_)
///
vector < int > m_vecFeederID;
vector < CManagerInfo > m_vecTreeInfo;
vector < CManagerInfo > m_vecListDNAS;
vector < CCompany > m_vecListKKX;
vector < CStringArray * > m_vecKKXUser;
CMessageInfoDlg m_MegDlg;
//
///lrb_增加数据库提交信息//
vector < CManagerInfo > m_vecListDNASFlag;
vector < CManagerInfo > m_vecListDNASToTreeFlag;
vector < CCompany > m_vecListKKXYHFlag;
vector < CManagerInfo > m_vecListDNASXDFlag;
vector < CManagerInfo > m_vecListDNASXDToTreeFlag;
vector < CCompany > m_vecListKKXXDFlag;
vector < CManagerInfo > m_vecDistinctInfo;数据库提交标识,记录不同的信息
vector < CManagerInfo > m_vecListKKXBM;
vector < CManagerInfo > m_vecListKKXYHBM;
vector < CManagerInfo > m_vecBGFeeder;
vector < CManagerInfo > m_vecFeederVersion;
vector < CManagerInfo > m_vecListFeeder;
vector < CZYYHSJ > m_vecListZYYH;
int m_Flag;//数据库提交标识
int m_ZcrqFlag;//数据库提交标识
CManagerInfo tempManager;
m_vecListDNASFlag.push_back(tempManager);
vector < CManagerInfo > ::iterator itrDNA = m_vecListDNASFlag.begin();
for(; itrDNA != m_vecListDNASFlag.end(); itrDNA ++)
{
}
int ncount = m_vecListDNASFlag.size();
vector < CManagerInfo > ::iterator itrDNAS = m_vecListDNASFlag.begin();
for(; itrDNAS != m_vecListDNASFlag.end(); itrDNAS++)