123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641 |
- // Dlg_ControllerProperty.cpp : 实现文件
- //
- #include "stdafx.h"
- #include "StoneU_Door.h"
- #include "Dlg_ControllerProperty.h"
- #include ".\dlg_controllerproperty.h"
- #include "Global.h"
- #include "DBConnection.h"
- // CDlg_ControllerProperty 对话框
- IMPLEMENT_DYNAMIC(CDlg_ControllerProperty, CDialog)
- CDlg_ControllerProperty::CDlg_ControllerProperty(CWnd* pParent /*=NULL*/)
- : CDialog(CDlg_ControllerProperty::IDD, pParent)
- , m_sEdit_ControlName(_T(""))
- , m_sEdit_ControlSN(_T(""))
- , m_nComb_ComPort(0)
- , m_sEdit_IP(_T(""))
- , m_nComb_WordMode(0)
- , m_nComb_DoorNumber(0)
- , m_nComb_BrandType(0)
- , m_bCheck_Isuse(FALSE)
- , m_sEdit_Port(_T(""))
- {
- m_nDoorCount=1;
- m_nOperate = ADD;
- }
- CDlg_ControllerProperty::~CDlg_ControllerProperty()
- {
- }
- void CDlg_ControllerProperty::DoDataExchange(CDataExchange* pDX)
- {
- CDialog::DoDataExchange(pDX);
- DDX_Text(pDX, IDC_EDIT_NAME, m_sEdit_ControlName);
- DDX_Text(pDX, IDC_EDIT_SN, m_sEdit_ControlSN);
- DDX_CBIndex(pDX, IDC_COMBO_COM, m_nComb_ComPort);
- DDX_Control(pDX, IDC_COMBO_COM, m_Comb_Port);
- DDX_Text(pDX, IDC_EDIT_IP, m_sEdit_IP);
- DDX_Control(pDX, IDC_COMBO_WORDMDOE, m_Comb_WordMode);
- DDX_CBIndex(pDX, IDC_COMBO_WORDMDOE, m_nComb_WordMode);
- DDX_Control(pDX, IDC_COMBO_DOORNUMBER, m_Comb_DoorNumber);
- DDX_CBIndex(pDX, IDC_COMBO_DOORNUMBER, m_nComb_DoorNumber);
- DDX_CBIndex(pDX, IDC_COMBO_BRANDTYPE, m_nComb_BrandType);
- DDX_Control(pDX, IDC_LIST_DOOR, m_List_DoorInfo);
- DDX_Check(pDX, IDC_CHECK1, m_bCheck_Isuse);
- DDX_Text(pDX, IDC_EDIT_PORT, m_sEdit_Port);
- }
- BEGIN_MESSAGE_MAP(CDlg_ControllerProperty, CDialog)
- ON_WM_CTLCOLOR()
- ON_WM_ERASEBKGND()
- ON_CBN_SELCHANGE(IDC_COMBO_WORDMDOE, OnCbnSelchangeComboWordmdoe)
- ON_CBN_SELCHANGE(IDC_COMBO_DOORNUMBER, OnCbnSelchangeComboDoornumber)
- ON_BN_CLICKED(IDOK, OnBnClickedOk)
- END_MESSAGE_MAP()
- // CDlg_ControllerProperty 消息处理程序
- BOOL CDlg_ControllerProperty::OnInitDialog()
- {
- CDialog::OnInitDialog();
- // TODO: 在此添加额外的初始化
- InitList();
- CString str;
- for( int i=1;i<10;i++ )
- {
- str.Format( "COM%d",i );
- m_Comb_Port.InsertString( i-1,str );
- }
- switch( m_nOperate )
- {
- case ADD:
- {
- m_List_DoorInfo.InsertItem( 0,"门1" );
- m_List_DoorInfo.SetItemText( 0,1,"门1" );
- m_List_DoorInfo.SetItemText( 0,2,"3" );
- m_List_DoorInfo.SetItemText( 0,3,"启用" );
- }
- break;
- case EDIT:
- {
- if( ReadController( m_Controller.nID ) )
- {
- m_sEdit_ControlName = g_ControllerTemp.sName;
- m_sEdit_ControlSN = g_ControllerTemp.sSN;
- m_nComb_ComPort = g_ControllerTemp.nComPort-1;
- m_sEdit_IP = g_ControllerTemp.sIP;
- m_nComb_WordMode = g_ControllerTemp.nWordMode;
- m_nComb_DoorNumber = g_ControllerTemp.nDoorCount;
- m_nComb_BrandType = g_ControllerTemp.nBrandType;
- m_bCheck_Isuse = g_ControllerTemp.bForbid;
- m_sEdit_Port = g_ControllerTemp.sPort;
- m_nDoorCount = g_ControllerTemp.nDoorCount;
- CString s;
- s.Format( "g_ControllerTemp.bForbid = %d",g_ControllerTemp.bForbid );
- WriteLog( s );
- if( m_nComb_WordMode==1 )
- {
- GetDlgItem(IDC_COMBO_COM)->EnableWindow( false );
- GetDlgItem(IDC_EDIT_IP)->EnableWindow( true );
- GetDlgItem(IDC_EDIT_PORT)->EnableWindow( true );
- }
- else
- {
- GetDlgItem(IDC_COMBO_COM)->EnableWindow( true );
- GetDlgItem(IDC_EDIT_IP)->EnableWindow( false );
- GetDlgItem(IDC_EDIT_PORT)->EnableWindow( false );
- }
- switch( m_nDoorCount )
- {
- case 1: m_nComb_DoorNumber = 0; break;
- case 2: m_nComb_DoorNumber = 1; break;
- case 4: m_nComb_DoorNumber = 2; break;
- case 8: m_nComb_DoorNumber = 3; break;
- }
- for( int i=0;i<m_nDoorCount;i++ )
- {
- CString s1,s2,s3,s4,s5;
- s1.Format( "门%d",i+1 );
- GetContentFromDoorInfo( g_ControllerTemp.sDoorAll[i+1],s2,s3,s4,s5 );
- m_List_DoorInfo.InsertItem( i,s1 );
- m_List_DoorInfo.SetItemText( i,1,s2 );
- m_List_DoorInfo.SetItemText( i,2,s3 );
- m_List_DoorInfo.SetItemText( i,3,s5 );
- }
- UpdateData( false );
- }
- }
- break;
- }
- return TRUE; // return TRUE unless you set the focus to a control
- // 异常: OCX 属性页应返回 FALSE
- }
- void CDlg_ControllerProperty::GetContentFromDoorInfo( CString sDoorInfo,CString &sName,CString &sDelay,CString &sStatus,CString &sIsuse )
- {
- int nPos1=0,nPos2=0;
- nPos2 = sDoorInfo.Find( "*",nPos1 );
- sName = sDoorInfo.Mid( nPos1,nPos2-nPos1);
- nPos1 = nPos2+1;
- nPos2 = sDoorInfo.Find( "*",nPos1 );
- sDelay = sDoorInfo.Mid( nPos1,nPos2-nPos1);
- nPos1 = nPos2+1;
- nPos2 = sDoorInfo.Find( "*",nPos1 );
- sStatus = sDoorInfo.Mid( nPos1,nPos2-nPos1);
- nPos1 = nPos2+1;
- sIsuse = sDoorInfo.Mid( nPos1,sDoorInfo.GetLength()-nPos1);
- if( sIsuse=="0" )
- sIsuse = "启用";
- else if( sIsuse=="1" )
- sIsuse = "禁用";
- }
- HBRUSH CDlg_ControllerProperty::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
- {
- HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
- // TODO: 在此更改 DC 的任何属性
- // TODO: 如果默认的不是所需画笔,则返回另一个画笔
- return hbr;
- }
- BOOL CDlg_ControllerProperty::OnEraseBkgnd(CDC* pDC)
- {
- // TODO: 在此添加消息处理程序代码和/或调用默认值
- return CDialog::OnEraseBkgnd(pDC);
- }
- void CDlg_ControllerProperty::OnCbnSelchangeComboWordmdoe()
- {
- UpdateData();
- if( m_nComb_WordMode==1 )
- {
- GetDlgItem(IDC_COMBO_COM)->EnableWindow( false );
- GetDlgItem(IDC_EDIT_IP)->EnableWindow( true );
- GetDlgItem(IDC_EDIT_PORT)->EnableWindow( true );
- }
- else
- {
- GetDlgItem(IDC_COMBO_COM)->EnableWindow( true );
- GetDlgItem(IDC_EDIT_IP)->EnableWindow( false );
- GetDlgItem(IDC_EDIT_PORT)->EnableWindow( false );
- }
- }
- int CDlg_ControllerProperty::InitList(void)
- {
- //m_List_Info.InsertColumn( 0, "执行时刻" );
- //m_List_Info.InsertColumn( 1, "人员信息" );
- //m_List_Info.InsertColumn( 2, "描述" );
- //m_List_Info.InsertColumn( 3, "信息" );
- //m_List_Info.SetColumnWidth( 0, 120 );
- //m_List_Info.SetColumnWidth( 1, 200);
- //m_List_Info.SetColumnWidth( 2, 200);
- //m_List_Info.SetColumnWidth( 3, 650);
- //m_List_Info.SetExtendedStyle(m_List_Info.GetExtendedStyle() | LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT);
- //m_List_Rule.SetColColor(0,RGB(10,150,20)); //设置列背景色
- //m_List_Rule.SetColColor(2,RGB(30,100,90)); //设置列背景色
- //m_List_Rule.SetBkColor(RGB(50,10,10)); //设置背景色
- //m_List_Rule.SetItemColor(1,1,RGB(100,100,10)); //设置指定单元背景色
- //m_List_Rule.SetRowHeigt(25); //设置行高度
- //m_List_Rule.SetHeaderHeight(1.5); //设置头部高度
- //m_List_Rule.SetHeaderFontHW(16,0); //设置头部字体高度,和宽度,0表示缺省,自适应
- //m_List_Record.SetHeaderTextColor(RGB(0,0,0)); //设置头部字体颜色
- //m_List_Rule.SetTextColor(RGB(0,255,255)); //设置文本颜色
- m_List_DoorInfo.SetHeaderBKColor(213,222,242,8); //设置头部背景色
- ////m_List_Rule.SetFontHW(15,0); //设置字体高度,和宽度,0表示缺省宽度
- //m_List_Rule.SetColTextColor(2,RGB(255,255,100)); //设置列文本颜色
- //m_List_Rule.SetItemTextColor(3,1,RGB(255,0,0)); //设置单元格字体颜色
- m_List_DoorInfo.InsertColumn(0,"门序号",LVCFMT_CENTER,110);
- m_List_DoorInfo.InsertColumn(1,g_strDoorName,LVCFMT_CENTER,110);
- m_List_DoorInfo.InsertColumn(2,"开门延时",LVCFMT_CENTER,110);
- m_List_DoorInfo.InsertColumn(3,"监控开关",LVCFMT_CENTER,110);
- SetWindowLong(m_List_DoorInfo.m_hWnd ,GWL_EXSTYLE,WS_EX_CLIENTEDGE);
- m_List_DoorInfo.SetExtendedStyle(LVS_EX_GRIDLINES); //设置扩展风格为网格
- ::SendMessage(m_List_DoorInfo.m_hWnd, LVM_SETEXTENDEDLISTVIEWSTYLE,LVS_EX_FULLROWSELECT, LVS_EX_FULLROWSELECT);
- m_List_DoorInfo.SetRowHeigt( 20 );
- m_List_DoorInfo.SetItemType( 1,TYPE_EDIT );
- //m_List_DoorInfo.SetItemType( 2,TYPE_EDIT );
- //m_List_DoorInfo.SetItemType( 3,TYPE_COMB );
- //m_List_DoorInfo.m_saCombData[3].Add( "启用" );
- //m_List_DoorInfo.m_saCombData[3].Add( "禁用" );
- return 0;
- }
- void CDlg_ControllerProperty::SetDoorToList( int iDoorCount )
- {
- CString str;
- int nListCount = m_List_DoorInfo.GetItemCount();
-
- if( nListCount>iDoorCount )
- {
- for( int i=nListCount-1;i>=iDoorCount;i-- )
- m_List_DoorInfo.DeleteItem( i );
- }
- else if( nListCount<iDoorCount )
- {
- for( int i=nListCount;i<iDoorCount;i++ )
- {
- str.Format("门%d",i+1 );
- m_List_DoorInfo.InsertItem( i,str );
- m_List_DoorInfo.SetItemText( i,1,str );
- m_List_DoorInfo.SetItemText( i,2,"3" );
- m_List_DoorInfo.SetItemText( i,3,"启用" );
- }
- }
- }
- void CDlg_ControllerProperty::OnCbnSelchangeComboDoornumber()
- {
- UpdateData();
- int nDoorCount=0;
- switch( m_nComb_DoorNumber )
- {
- case 0: nDoorCount = 1; break;
- case 1: nDoorCount = 2; break;
- case 2: nDoorCount = 4; break;
- case 3: nDoorCount = 8; break;
- }
- m_nDoorCount = nDoorCount;
- SetDoorToList( nDoorCount );
- }
- void CDlg_ControllerProperty::OnBnClickedOk()
- {
- // TODO: 在此添加控件通知处理程序代码
- UpdateData();
-
- CString sShow;
- CString s1,s2,s3,s4;
- CString sDoorName[10],sDoorAll[10];
- for( int i=0;i<m_List_DoorInfo.GetItemCount();i++ )
- {
- s1 = m_List_DoorInfo.GetItemText( i,1 );
- s2 = m_List_DoorInfo.GetItemText( i,2 );
- s3 = m_List_DoorInfo.GetItemText( i,3 );
- sDoorName[i+1].Format( "%s",s1 );
- sDoorAll[i+1].Format( "%s*%s*在线*%d",s1,s2,s3=="启用"?0:1 );
- }
- int nDoorCur = m_Comb_DoorNumber.GetCurSel();
- switch( nDoorCur )
- {
- case 0:
- {
- if( sDoorName[1]=="" )
- {
- sShow.Format("%s%s",g_strDoorName1,g_strNotNull );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return;
- }
- }break;
- case 1:
- {
- if( sDoorName[1]=="" )
- {
- sShow.Format("%s%s",g_strDoorName1,g_strNotNull );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return;
- }
- if( sDoorName[2]=="" )
- {
- sShow.Format("%s%s",g_strDoorName2,g_strNotNull );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return;
- }
- }break;
- case 2:
- {
- if( sDoorName[1]=="" )
- {
- sShow.Format("%s%s",g_strDoorName1,g_strNotNull );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return;
- }
- if( sDoorName[2]=="" )
- {
- sShow.Format("%s%s",g_strDoorName2,g_strNotNull );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return;
- }
- if( sDoorName[3]=="" )
- {
- sShow.Format("%s%s",g_strDoorName3,g_strNotNull );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return;
- }
- if( sDoorName[4]=="" )
- {
- sShow.Format("%s%s",g_strDoorName4,g_strNotNull );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return;
- }
- }break;
- case 3:
- {
- if( sDoorName[1]=="" )
- {
- sShow.Format("%s%s",g_strDoorName1,g_strNotNull );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return;
- }
- if( sDoorName[2]=="" )
- {
- sShow.Format("%s%s",g_strDoorName2,g_strNotNull );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return;
- }
- if( sDoorName[3]=="" )
- {
- sShow.Format("%s%s",g_strDoorName3,g_strNotNull );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return;
- }
- if( sDoorName[4]=="" )
- {
- sShow.Format("%s%s",g_strDoorName4,g_strNotNull );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return;
- }
- if( sDoorName[5]=="" )
- {
- sShow.Format("%s%s",g_strDoorName5,g_strNotNull );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return;
- }
- if( sDoorName[6]=="" )
- {
- sShow.Format("%s%s",g_strDoorName6,g_strNotNull );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return;
- }
- if( sDoorName[7]=="" )
- {
- sShow.Format("%s%s",g_strDoorName7,g_strNotNull );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return;
- }
- if( sDoorName[8]=="" )
- {
- sShow.Format("%s%s",g_strDoorName8,g_strNotNull );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return;
- }
- }
- break;
- }
- for( int i=0;i<m_List_DoorInfo.GetItemCount();i++ )
- {
- s1 = m_List_DoorInfo.GetItemText( i,1 );
- for( int j=i+1;j<m_List_DoorInfo.GetItemCount();j++ )
- {
- s2 = m_List_DoorInfo.GetItemText( j,1 );
- if( s1==s2 )
- {
- sShow.Format("%s%s",g_strDoorName,g_strExist );
- MessageBox( sShow, g_strTip, MB_ICONINFORMATION);
- return ;
- }
- }
- }
- int nID = -1;
- switch( m_nOperate )
- {
- case ADD:
- {
- nID = InsertControlInfo( m_nComb_BrandType,(char *)(LPCTSTR)m_sEdit_ControlName,(char *)(LPCTSTR)m_sEdit_ControlSN,
- m_nComb_WordMode,m_nComb_ComPort+1,(char *)(LPCTSTR)m_sEdit_IP,(char *)(LPCTSTR)m_sEdit_Port,m_bCheck_Isuse,m_nDoorCount,
- (char *)(LPCTSTR)sDoorAll[1],(char *)(LPCTSTR)sDoorAll[2],(char *)(LPCTSTR)sDoorAll[3],(char *)(LPCTSTR)sDoorAll[4],
- (char *)(LPCTSTR)sDoorAll[5],(char *)(LPCTSTR)sDoorAll[6],(char *)(LPCTSTR)sDoorAll[7],(char *)(LPCTSTR)sDoorAll[8] );
- }
- break;
- case EDIT:
- {
- UpdateControlInfo( m_Controller.nID,m_nComb_BrandType,(char *)(LPCTSTR)m_sEdit_ControlName,(char *)(LPCTSTR)m_sEdit_ControlSN,
- m_nComb_WordMode,m_nComb_ComPort+1,(char *)(LPCTSTR)m_sEdit_IP,(char *)(LPCTSTR)m_sEdit_Port,m_bCheck_Isuse,m_nDoorCount,
- (char *)(LPCTSTR)sDoorAll[1],(char *)(LPCTSTR)sDoorAll[2],(char *)(LPCTSTR)sDoorAll[3],(char *)(LPCTSTR)sDoorAll[4],
- (char *)(LPCTSTR)sDoorAll[5],(char *)(LPCTSTR)sDoorAll[6],(char *)(LPCTSTR)sDoorAll[7],(char *)(LPCTSTR)sDoorAll[8] );
- nID = m_Controller.nID;
- }
- break;
- }
- if( nID>0 )
- {
- m_Controller.nID = nID;
- m_Controller.sName = m_sEdit_ControlName;
- m_Controller.nBrandType = m_nComb_BrandType;
- m_Controller.sSN = m_sEdit_ControlSN;
- m_Controller.nWordMode = m_nComb_WordMode;
- m_Controller.nComPort = m_nComb_ComPort+1;
- m_Controller.sIP = m_sEdit_IP;
- m_Controller.sPort = m_sEdit_Port;
- m_Controller.bForbid = m_bCheck_Isuse;
- m_Controller.nDoorCount = m_nDoorCount;
-
- for( int i=0;i<10;i++ )
- m_Controller.sDoorName[i] = sDoorName[i];
-
- OnOK();
- }
- else
- {
- }
- }
- CString CDlg_ControllerProperty::GetDoorNameFromDoorInfo( CString sDoorInfo )
- {
- CString sRet;
- int nPos1=0,nPos2=0;
- nPos2 = sDoorInfo.Find( "*",nPos1 );
- sRet = sDoorInfo.Mid( nPos1,nPos2-nPos1);
- return sRet;
- }
- bool CDlg_ControllerProperty::ReadController( int nID )
- {
- bool bRet = false;
- CHAR strSQLText[MAX_SQL_LENGTH + 1] = "";
- list<string> list1,list2,list3,list4,list5,list6,list7,list8,list9,list10;
- list<string> list11,list12,list13,list14,list15,list16,list17,list18,list19,list20;
- list<string> list21,list22,list23,list24,list25,list26,list27,list28,list29,list30;
- list<string>::iterator it_list1,it_list2,it_list3,it_list4,it_list5,it_list6,it_list7,it_list8,it_list9,it_list10;
- list<string>::iterator it_list11,it_list12,it_list13,it_list14,it_list15,it_list16,it_list17,it_list18,it_list19,it_list20;
- list<string>::iterator it_list21,it_list22,it_list23,it_list24,it_list25,it_list26,it_list27,it_list28,it_list29,it_list30;
- if(!_stricmp(g_strDBType, "PGSQL"))
- {
- sprintf(strSQLText, "select id, nbrandtype, scontrolname,ssn,nwordmode,ncomport,sip,sport,nforbid,ndoorconut,sdoor1,sdoor2,sdoor3,sdoor4,sdoor5,sdoor6,sdoor7,sdoor8, "\
- "intreserved1,intreserved2,intreserved3,intreserved4,intreserved5,intreserved6,strreserved1,strreserved2,strreserved3,strreserved4,strreserved5,strreserved6 "\
- "from t_door_control where id=%d",nID);
- }
- else
- {
- sprintf(strSQLText, "select id, nbrandtype, scontrolname,ssn,nwordmode,ncomport,sip,sport,nforbid,ndoorconut,sdoor1,sdoor2,sdoor3,sdoor4,sdoor5,sdoor6,sdoor7,sdoor8, "\
- "intreserved1,intreserved2,intreserved3,intreserved4,intreserved5,intreserved6,strreserved1,strreserved2,strreserved3,strreserved4,strreserved5,strreserved6 "\
- "from t_door_control where id=%d",nID);
- }
- int nRet = GetFieldValueList30( strSQLText,list1,list2,list3,list4,list5,list6,list7,list8,list9,list10
- ,list11,list12,list13,list14,list15,list16,list17,list18,list19,list20
- ,list21,list22,list23,list24,list25,list26,list27,list28,list29,list30);
- if( 0 == list1.size() || 0 == list2.size() )
- {
- return bRet;
- }
- if( nRet != -1 )
- {
- bRet = true;
- CString sID,sBrandType,sControlName,sSn,sWordMode,sComPort,sIP,sPort,sForbid,sDoorCount;
- CString sDoor1,sDoor2,sDoor3,sDoor4,sDoor5,sDoor6,sDoor7,sDoor8;
- CString sTemp;
- for( it_list1=list1.begin(),it_list2=list2.begin(),it_list3=list3.begin(),
- it_list4=list4.begin(),it_list5=list5.begin(),it_list6=list6.begin(),
- it_list7=list7.begin(),it_list8=list8.begin(),it_list9=list9.begin(),
- it_list10=list10.begin(),it_list11=list11.begin(),it_list12=list12.begin(),
- it_list13=list13.begin(),it_list14=list14.begin(),it_list15=list15.begin(),
- it_list16=list16.begin(),it_list17=list17.begin(),it_list18=list18.begin();
- it_list1!=list1.end() && it_list2!=list2.end() && it_list3!=list3.end() &&
- it_list4!=list4.end() && it_list5!=list5.end() && it_list6!=list6.end() &&
- it_list7!=list7.end() && it_list8!=list8.end() && it_list9!=list9.end() &&
- it_list10!=list10.end() && it_list11!=list11.end() && it_list12!=list12.end() &&
- it_list13!=list13.end() && it_list14!=list14.end() && it_list15!=list15.end() &&
- it_list16!=list16.end() && it_list17!=list17.end() && it_list18!=list18.end();
- it_list1++,it_list2++,it_list3++,
- it_list4++,it_list5++,it_list6++,
- it_list7++,it_list8++,it_list9++,
- it_list10++,it_list11++,it_list12++,
- it_list13++,it_list14++,it_list15++,
- it_list16++,it_list17++,it_list18++ )
- {
- sID = (*it_list1).c_str();
- sBrandType = (*it_list2).c_str();
- sControlName = (*it_list3).c_str();
- sSn = (*it_list4).c_str();
- sWordMode = (*it_list5).c_str();
- sComPort = (*it_list6).c_str();
- sIP = (*it_list7).c_str();
- sPort = (*it_list8).c_str();
- sForbid = (*it_list9).c_str();
- sDoorCount = (*it_list10).c_str();
- sDoor1 = (*it_list11).c_str();
- sDoor2 = (*it_list12).c_str();
- sDoor3 = (*it_list13).c_str();
- sDoor4 = (*it_list14).c_str();
- sDoor5 = (*it_list15).c_str();
- sDoor6 = (*it_list16).c_str();
- sDoor7 = (*it_list17).c_str();
- sDoor8 = (*it_list18).c_str();
- g_ControllerTemp.nID = atoi( sID );
- g_ControllerTemp.nBrandType = atoi( sBrandType );
- g_ControllerTemp.sName = sControlName;
- g_ControllerTemp.sSN = sSn;
- g_ControllerTemp.nWordMode = atoi( sWordMode );
- g_ControllerTemp.nComPort = atoi( sComPort );
- g_ControllerTemp.sIP = sIP;
- g_ControllerTemp.sPort = sPort;
- g_ControllerTemp.bForbid = atoi( sForbid );
- g_ControllerTemp.nDoorCount = atoi( sDoorCount );
- g_ControllerTemp.sDoorName[1] = GetDoorNameFromDoorInfo( sDoor1 );
- g_ControllerTemp.sDoorName[2] = GetDoorNameFromDoorInfo( sDoor2 );
- g_ControllerTemp.sDoorName[3] = GetDoorNameFromDoorInfo( sDoor3 );
- g_ControllerTemp.sDoorName[4] = GetDoorNameFromDoorInfo( sDoor4 );
- g_ControllerTemp.sDoorName[5] = GetDoorNameFromDoorInfo( sDoor5 );
- g_ControllerTemp.sDoorName[6] = GetDoorNameFromDoorInfo( sDoor6 );
- g_ControllerTemp.sDoorName[7] = GetDoorNameFromDoorInfo( sDoor7 );
- g_ControllerTemp.sDoorName[8] = GetDoorNameFromDoorInfo( sDoor8 );
- g_ControllerTemp.sDoorAll[1] = sDoor1;
- g_ControllerTemp.sDoorAll[2] = sDoor2;
- g_ControllerTemp.sDoorAll[3] = sDoor3;
- g_ControllerTemp.sDoorAll[4] = sDoor4;
- g_ControllerTemp.sDoorAll[5] = sDoor5;
- g_ControllerTemp.sDoorAll[6] = sDoor6;
- g_ControllerTemp.sDoorAll[7] = sDoor7;
- g_ControllerTemp.sDoorAll[8] = sDoor8;
- }
- }
- for( it_list1=list1.begin(),it_list2=list2.begin(),it_list3=list3.begin(),it_list4=list4.begin(),it_list5=list5.begin(),it_list6=list6.begin(),
- it_list7=list7.begin(),it_list8=list8.begin(),it_list9=list9.begin(),it_list10=list10.begin(),it_list11=list11.begin(),it_list12=list12.begin(),
- it_list13=list13.begin(),it_list14=list14.begin(),it_list15=list15.begin(),it_list16=list16.begin(),it_list17=list17.begin(),it_list18=list18.begin(),
- it_list19=list19.begin(),it_list20=list20.begin(),it_list21=list21.begin(),it_list22=list22.begin(),it_list23=list23.begin(),it_list24=list24.begin(),
- it_list25=list25.begin(),it_list26=list26.begin(),it_list27=list27.begin(),it_list28=list28.begin(),it_list29=list29.begin(),it_list30=list30.begin();
- it_list1!=list1.end(),it_list2!=list2.end(),it_list3!=list3.end(),it_list4!=list4.end(),it_list5!=list5.end(),it_list6!=list6.end(),
- it_list7!=list7.end(),it_list8!=list8.end(),it_list9!=list9.end(),it_list10!=list10.end(),it_list11!=list11.end(),it_list12!=list12.end(),
- it_list13!=list13.end(),it_list14!=list14.end(),it_list15!=list15.end(),it_list16!=list16.end(),it_list17!=list17.end(),it_list18!=list18.end(),
- it_list19!=list19.end(),it_list20!=list20.end(),it_list21!=list21.end(),it_list22!=list22.end(),it_list23!=list23.end(),it_list24!=list24.end(),
- it_list25!=list25.end(),it_list26!=list26.end(),it_list27!=list27.end(),it_list28!=list28.end(),it_list29!=list29.end(),it_list30!=list30.end();)
- {
- list1.erase(it_list1++);
- list2.erase(it_list2++);
- list3.erase(it_list3++);
- list4.erase(it_list4++);
- list5.erase(it_list5++);
- list6.erase(it_list6++);
- list7.erase(it_list7++);
- list8.erase(it_list8++);
- list9.erase(it_list9++);
- list10.erase(it_list10++);
- list11.erase(it_list11++);
- list12.erase(it_list12++);
- list13.erase(it_list13++);
- list14.erase(it_list14++);
- list15.erase(it_list15++);
- list16.erase(it_list16++);
- list17.erase(it_list17++);
- list18.erase(it_list18++);
- list19.erase(it_list19++);
- list20.erase(it_list20++);
- list21.erase(it_list21++);
- list22.erase(it_list22++);
- list23.erase(it_list23++);
- list24.erase(it_list24++);
- list25.erase(it_list25++);
- list26.erase(it_list26++);
- list27.erase(it_list27++);
- list28.erase(it_list28++);
- list29.erase(it_list29++);
- list30.erase(it_list30++);
- }
- return bRet;
- }
|