// SearchTake.cpp : implementation file
//

#include "stdafx.h"
#include "ylgl.h"
#include "SearchTake.h"
#include "TakeControlDlg1.h"
#include "SearchFilter2.h"
#include "InputDate.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// SearchTake dialog
SearchTake::SearchTake(CWnd* pParent /*=NULL*/)
: CDialog(SearchTake::IDD, pParent)
{
	//{{AFX_DATA_INIT(SearchTake)
	m_filter = _T("");
	m_radio1 = 1;
	//}}AFX_DATA_INIT
}


void SearchTake::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(SearchTake)
	DDX_Control(pDX, IDC_COMBO1, m_combo1);
	DDX_Control(pDX, IDC_LIST2, m_List1);
	DDX_CBString(pDX, IDC_COMBO1, m_filter);
	DDX_Radio(pDX, IDC_RADIO1, m_radio1);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(SearchTake, CDialog)
	//{{AFX_MSG_MAP(SearchTake)
	ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
	ON_BN_CLICKED(IDC_RADIO1, OnRadio1)
	ON_BN_CLICKED(IDC_RADIO2, OnRadio2)
	ON_BN_CLICKED(IDC_RADIO9, OnRadio9)
	ON_CBN_CLOSEUP(IDC_COMBO1, OnCloseupCombo1)
	ON_CBN_SELCHANGE(IDC_COMBO1, OnSelchangeCombo1)
	ON_WM_TIMER()
	ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
	ON_BN_CLICKED(IDC_BTNSEARCHFILTER, OnBtnsearchfilter)
	ON_BN_CLICKED(IDC_BUTTON3, OnButton3)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// SearchTake message handlers
extern BOOL CALLBACK EnumChildProc2(HWND hwnd,LPARAM lParam);

BOOL SearchTake::OnInitDialog() 
{
	CDialog::OnInitDialog();

	// TODO: Add extra initialization here
	CRect rc2;
	GetWindowRect(rc2);
	::MoveWindow(m_hWnd,g_rc.left,g_rc.top,g_rc.Width(),g_rc.Height(),TRUE);
	g_WidthScale2 = (float)g_rc.Width()/(float)rc2.Width(); // new/Old
	g_HeightScale2 = (float)g_rc.Height()/(float)rc2.Height();
	EnumChildWindows(m_hWnd,(WNDENUMPROC)EnumChildProc2,0);
	m_combo1.GetWindowRect (rc2);
	ScreenToClient(rc2);
	rc2.bottom +=200;
	m_combo1.MoveWindow (rc2);

	if(g_bAllBranch==0)
	{
		m_nAdd=0;
#ifdef CHILD_VERSION
		m_List1.SetHeadings("������,100;�ҳ�����,100;��������,100;�ֻ�,100;�̶��绰,100;��������,100;ȡ������,100;����,100;����,100;��������,100;ʱ��,100;��Ӱʦ,100;��ױʦ,100;�ӵ���,100;��ϵ����,100;��ϵ�۸�,100" );
#else
		m_List1.SetHeadings("������,100;�б�����,100;Ů������,100;�б��绰,100;Ů���绰,100;��������,100;ȡ������,100;����,100;����,100;����,100;��������,100;ʱ��,100;��Ӱʦ,100;��ױʦ,100;�ӵ���,100;��ϵ����,100;��ϵ�۸�,100" );
#endif
		m_List1.LoadColumnInfo (110);
	}
	else
	{
		m_nAdd=1;
#ifdef CHILD_VERSION
		m_List1.SetHeadings("����,100;������,100;�ҳ�����,100;��������,100;�ֻ�,100;�̶��绰,100;��������,100;ȡ������,100;����,100;����,100;��������,100;ʱ��,100;��Ӱʦ,100;��ױʦ,100;�ӵ���,100;��ϵ����,100;��ϵ�۸�,100" );
#else
		m_List1.SetHeadings("����,100;������,100;�б�����,100;Ů������,100;�б��绰,100;Ů���绰,100;��������,100;ȡ������,100;����,100;����,100;����,100;��������,100;ʱ��,100;��Ӱʦ,100;��ױʦ,100;�ӵ���,100;��ϵ����,100;��ϵ�۸�,100" );
#endif
		m_List1.LoadColumnInfo (194);
	}

	GetData();

	int i = 0;
	for( i=0; i<m_List1array.GetSize (); i++)
	{
#ifdef CHILD_VERSION
		if(::FindArray (&jdarray, m_List1array.ElementAt (i).ElementAt (7+m_nAdd))==-1)
			jdarray.Add (m_List1array.ElementAt (i).ElementAt (7+m_nAdd));
#else
		if(::FindArray (&jdarray, m_List1array.ElementAt (i).ElementAt (8+m_nAdd))==-1)
			jdarray.Add (m_List1array.ElementAt (i).ElementAt (8+m_nAdd));
#endif
	}

	m_combo1.AddString ("");
	for( i=0; i<jdarray.GetSize (); i++)
	{
		m_combo1.AddString (jdarray.ElementAt (i));
	}

	return TRUE;  // return TRUE unless you set the focus to a control
	// EXCEPTION: OCX Property Pages should return FALSE
}

void SearchTake::OnButton1() 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	m_filter.TrimLeft ();
	m_filter.TrimRight ();
	FillGrid();		
}

void SearchTake::FillGrid()
{
	UpdateData();
	if(g_bSearchFilter)
	{
#ifdef CHILD_VERSION
		int aa=m_nAdd;
		int m_nAdd=aa-1;
#endif
		m_List1.DeleteAllItems2 ();
		int ii=0;
		m_List1.m_arLabels.SetSize( m_List1array.GetSize (), 1 );
		int count=0;
		{
			for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
			{
				if(g_filterdate1!="")
				{
					if(m_List1array.ElementAt (ii).ElementAt (5+m_nAdd)<g_filterdate1 || m_List1array.ElementAt (ii).ElementAt (5+m_nAdd)>g_filterdate2)
						continue;
				}
				if(g_filterdate3!="")
				{
					if(m_List1array.ElementAt (ii).ElementAt (6+m_nAdd)<g_filterdate3 || m_List1array.ElementAt (ii).ElementAt (6+m_nAdd)>g_filterdate4)
						continue;
				}
				if(g_filterdate5!="")
				{
					if(m_List1array.ElementAt (ii).ElementAt (7+m_nAdd)<g_filterdate5 || m_List1array.ElementAt (ii).ElementAt (7+m_nAdd)>g_filterdate6)
						continue;
				}
				if(g_waiter1!="")
				{
					if(m_List1array.ElementAt (ii).ElementAt (8+m_nAdd)!=g_waiter1)
						continue;
				}

				if(g_bAllBranch && g_filterbranch!="")
				{
					if(m_List1array.ElementAt (ii).ElementAt (0)!=g_filterbranch)
						continue;
				}


				if(m_radio1==1)
				{
					if( !(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd)!="OK"&&m_List1array.ElementAt (ii).ElementAt (9+m_nAdd)!="������") )
						continue;  
				}
				else if(m_radio1==2)
				{
					if( !(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd)=="OK"||m_List1array.ElementAt (ii).ElementAt (9+m_nAdd)=="������") )
						continue;  
				}


				if(1)
				{
					m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
				}
			}
		}
		m_List1.m_arLabels.SetSize(count, 1);
		ii=count;
		m_List1.m_LabelCount=ii;
		m_List1.SetItemCountEx (ii);
		CString str;
		str.Format ("����:%d", ii);
		SetDlgItemText(IDC_STATIC2, str);
	}
	else
	{
		int m_nAdd2=0;
#ifdef CHILD_VERSION
		m_nAdd2=-1;
#endif
		m_List1.DeleteAllItems2 ();
		int ii=0;
		m_List1.m_arLabels.SetSize( m_List1array.GetSize (), 1 );
		int count=0;
		if(m_filter.IsEmpty ())
		{
			if(m_radio1==1)
			{
				for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
				{
					if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="OK"&&m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="������")
						m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
				}
			}
			else if(m_radio1==2)
			{
				for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
				{
					if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="OK"||m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="������")
						m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
				}
			}
			else
			{
				for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
				{
					m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
				}
			}
		}
		else
		{
			if(m_radio1==1)
			{
				int type=GetType(m_filter);
				if(type==1)//�绰
				{
					for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
					{
						if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="OK"&&m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="������" && (m_List1array.ElementAt (ii).ElementAt (3+m_nAdd).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (4+m_nAdd).Find (m_filter)!=-1) )
						{
							m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
						}
					}
				}
				else if(type==2)//ƴ��
				{
					m_filter.MakeUpper ();
					for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
					{
						if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="OK"&&m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="������" && (m_List1array.ElementAt (ii).ElementAt (18+m_nAdd+m_nAdd2).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (17+m_nAdd+m_nAdd2).Find (m_filter)!=-1) )
						{
							m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
						}
					}
				}
				else
				{
					for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
					{
						if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="OK"&&m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="������" &&(m_List1array.ElementAt (ii).ElementAt (0).Find (m_filter)!=-1 ||\
							m_List1array.ElementAt (ii).ElementAt (1).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (2).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (3).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (4).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (5).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (6).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (7).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (8).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (9).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (10).Find (m_filter)!=-1|| \
							m_List1array.ElementAt (ii).ElementAt (11).Find (m_filter)!=-1|| \
							m_List1array.ElementAt (ii).ElementAt (12).Find (m_filter)!=-1|| \
							m_List1array.ElementAt (ii).ElementAt (13).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (15).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (16).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (14).Find (m_filter)!=-1)  )
						{
							m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
						}
					}
				}
			}
			else if(m_radio1==2)
			{
				int type=GetType(m_filter);
				if(type==1)//�绰
				{
					for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
					{
						if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="OK"||m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="������" && (m_List1array.ElementAt (ii).ElementAt (3+m_nAdd).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (4+m_nAdd).Find (m_filter)!=-1) )
						{
							m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
						}
					}
				}
				else if(type==2)//ƴ��
				{
					m_filter.MakeUpper ();
					for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
					{
						if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="OK"||m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="������" && (m_List1array.ElementAt (ii).ElementAt (18+m_nAdd+m_nAdd2).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (17+m_nAdd+m_nAdd2).Find (m_filter)!=-1) )
						{
							m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
						}
					}
				}
				else
				{
					for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
					{
						if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="OK"||m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="������" &&(m_List1array.ElementAt (ii).ElementAt (0).Find (m_filter)!=-1 ||\
							m_List1array.ElementAt (ii).ElementAt (1).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (2).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (3).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (4).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (5).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (6).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (7).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (8).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (9).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (10).Find (m_filter)!=-1|| \
							m_List1array.ElementAt (ii).ElementAt (11).Find (m_filter)!=-1|| \
							m_List1array.ElementAt (ii).ElementAt (12).Find (m_filter)!=-1|| \
							m_List1array.ElementAt (ii).ElementAt (13).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (15).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (16).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (14).Find (m_filter)!=-1)  )
						{
							m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
						}
					}
				}
			}
			else
			{
				int type=GetType(m_filter);
				if(type==1)//�绰
				{
					for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
					{
						if( (m_List1array.ElementAt (ii).ElementAt (3+m_nAdd).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (4+m_nAdd).Find (m_filter)!=-1) )
						{
							m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
						}
					}
				}
				else if(type==2)//ƴ��
				{
					m_filter.MakeUpper ();
					for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
					{
						if( (m_List1array.ElementAt (ii).ElementAt (18+m_nAdd+m_nAdd2).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (17+m_nAdd+m_nAdd2).Find (m_filter)!=-1) )
						{
							m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
						}
					}
				}
				else
				{
					for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
					{
						if((m_List1array.ElementAt (ii).ElementAt (0).Find (m_filter)!=-1 ||\
							m_List1array.ElementAt (ii).ElementAt (1).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (2).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (3).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (4).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (5).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (6).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (7).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (8).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (9).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (10).Find (m_filter)!=-1|| \
							m_List1array.ElementAt (ii).ElementAt (11).Find (m_filter)!=-1|| \
							m_List1array.ElementAt (ii).ElementAt (12).Find (m_filter)!=-1|| \
							m_List1array.ElementAt (ii).ElementAt (13).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (15).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (16).Find (m_filter)!=-1 || \
							m_List1array.ElementAt (ii).ElementAt (14).Find (m_filter)!=-1)  )
						{
							m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
						}
					}
				}
			}
		}
		m_List1.m_arLabels.SetSize(count, 1);
		ii=count;
		m_List1.m_LabelCount=ii;
		m_List1.SetItemCountEx (ii);
		CString str;
		str.Format ("����:%d", ii);
		SetDlgItemText(IDC_STATIC2, str);
	}
}

void SearchTake::OnRadio1() 
{
	// TODO: Add your control notification handler code here
	FillGrid();
}

void SearchTake::OnRadio2() 
{
	// TODO: Add your control notification handler code here
	FillGrid();
}

void SearchTake::OnRadio9() 
{
	// TODO: Add your control notification handler code here
	FillGrid();
}

void SearchTake::OnCloseupCombo1() 
{
	// TODO: Add your control notification handler code here
	SetTimer(1, 100, NULL);	
}

void SearchTake::OnSelchangeCombo1() 
{
	// TODO: Add your control notification handler code here
	SetTimer(1, 100, NULL);		
}

void SearchTake::OnTimer(UINT nIDEvent) 
{
	// TODO: Add your message handler code here and/or call default
	KillTimer(nIDEvent);
	OnButton1();
}

void SearchTake::OnButton2() 
{
	// TODO: Add your control notification handler code here
	POSITION pos;
	pos=m_List1.GetFirstSelectedItemPosition();	
	if(pos==NULL)
	{
		AfxMessageBox("����ѡ����Ҫ���ŵĿ���!", MB_ICONINFORMATION);
		return;
	}	
	int iItem;	
	CStringArray idarray;

	CStringArray brancharray;
	while (pos)
	{
		iItem = m_List1.GetNextSelectedItem(pos);
		idarray.Add (m_List1.GetItemText (iItem, 0+m_nAdd));
		if(g_bAllBranch)
			brancharray.Add (m_List1.GetItemText (iItem, 0));
	}

	if(idarray.GetSize ()==1)
	{
		CString id=idarray.ElementAt (0);
		TakeControlDlg1  dlg;
		if(g_bAllBranch)
			dlg.m_branch=brancharray.ElementAt (0);
		dlg.id=id;
		dlg.m_bModify=1;
		dlg.DoModal (); 
	}
	else
	{	
		TakeControlDlg1  dlg;
		dlg.m_pIdArray=&idarray;
		dlg.m_pBranchArray=&brancharray;
		dlg.m_bModify=1;
		dlg.DoModal (); 
	}
	if(g_bAllBranch)
	{
		if(AfxMessageBox("�Ƿ�ʵʱ��������?", MB_YESNO|MB_ICONINFORMATION)!=IDYES)return;
	}
	GetData();

}

void SearchTake::OnOK() 
{
	// TODO: Add extra validation here
}

BOOL SearchTake::PreTranslateMessage(MSG* pMsg) 
{
	// TODO: Add your specialized code here and/or call the base class
	if(pMsg->message==WM_KEYDOWN)
	{
		switch (pMsg->wParam)
		{
		case VK_RETURN:
			OnButton1();
			return 1;
			break;
		}
	}
	return CDialog::PreTranslateMessage(pMsg);
}

void SearchTake::HidePrice()
{
#ifdef LKAY_VERSION
	if(IsHasRights2new(31))return;
	for(int i=0; i<	m_List1array.GetSize (); i++)
	{	
		m_List1array.ElementAt (i).SetAt (3+m_nAdd, "***");
		m_List1array.ElementAt (i).SetAt (4+m_nAdd, "***");
		m_List1array.ElementAt (i).SetAt (13+m_nAdd, "***");
		m_List1array.ElementAt (i).SetAt (14+m_nAdd, "***");
	}
#else
	if(IsHasRights2new(31))return;
	for(int i=0; i<	m_List1array.GetSize (); i++)
	{
		m_List1array.ElementAt (i).SetAt (3+m_nAdd, "***");
		m_List1array.ElementAt (i).SetAt (4+m_nAdd, "***");
	}
#endif
}
void SearchTake::OnBtnsearchfilter() 
{
	// TODO: Add your control notification handler code here
	SearchFilter2 dlg;
	dlg.m_pArray=&jdarray;
	if(dlg.DoModal ()==IDOK)
	{
		FillGrid();	
	}
	g_bSearchFilter=0;	
}

void SearchTake::OnButton3() 
{
	// TODO: Add your control notification handler code here
	POSITION pos;
	pos=m_List1.GetFirstSelectedItemPosition();	
	if(pos==NULL)
	{
		AfxMessageBox("��ѡ�ж�Կ���!", MB_ICONINFORMATION);
		return;
	}	
	int iItem;	


	if(g_bAllBranch)
	{
		CStringArray idarray[100];
		CStringArray jdarray[100];
		CStringArray brancharray;
		int idcount=0;
		int branchpos;
		CString branch;
		while (pos)
		{
			iItem = m_List1.GetNextSelectedItem(pos);
			branchpos=::FindArray(&brancharray, m_List1.GetItemText (iItem, 0) );if(branchpos>=100)continue;
			if(branchpos==-1)
			{
				branchpos=brancharray.GetSize();
				brancharray.Add(m_List1.GetItemText (iItem, 0));
			}
			idarray[branchpos].Add (m_List1.GetItemText (iItem, 0+m_nAdd));

#ifdef CHILD_VERSION
			jdarray[branchpos].Add (m_List1.GetItemText (iItem, 7+m_nAdd));
#else
			jdarray[branchpos].Add (m_List1.GetItemText (iItem, 8+m_nAdd));
#endif

			idcount++;
		}

		if(idcount==1)
		{
			AfxMessageBox("��ѡ�ж�Կ��ˣ����߰�ԤԼ��ť!", MB_ICONINFORMATION);
			return;
		}
		else
		{
			InputDate  dlg;
			dlg.m_mode=1;
			if(dlg.DoModal ()!=IDOK)return;
			for(int aa=0; aa<brancharray.GetSize(); aa++)
			{
				branch=brancharray.ElementAt(aa);

				CString sql;
				sql.Format ("update dindanjd set [bookingdate]='%s',[clerk]='%s',[inputtime]='msgtimestamp2' where ", dlg.m_date, g_user.name);
				CString filter,temp;
				for(int i=0; i<idarray[aa].GetSize (); i++)
				{
					if(i==0)
						temp="[id]='"+idarray[aa].ElementAt (i)+"' and [name]='"+jdarray[aa].ElementAt (i)+"'";
					else
						temp=" or [id]='"+idarray[aa].ElementAt (i)+"' and [name]='"+jdarray[aa].ElementAt (i)+"'";
					filter+=temp;
				}
				sql+=filter;
				g_sendhead.bsql=1;
				g_branchip=GetIP(branch);
				g_pMainWnd->OnDisconnect();
				g_branchname=branch;
				g_bBranchModify=1;
				g_pMainWnd->ProcessChatMessageRequest2(sql);
				g_pMainWnd->OnDisconnect();g_bBranchModify=0;g_branchip=g_branchname="";
				if(g_bSendOK==0)
				{
					sql.Format("����ֵ�: %s ʧ��!", branch);
					AfxMessageBox(sql, MB_ICONINFORMATION);
					continue;
				}

			}
		}
		if(AfxMessageBox("�Ƿ�ʵʱ��������?", MB_YESNO|MB_ICONINFORMATION)==IDYES)GetData();
	}
	else
	{
		CStringArray idarray;
		CStringArray jdarray;
		while (pos)
		{
			iItem = m_List1.GetNextSelectedItem(pos);
			idarray.Add (m_List1.GetItemText (iItem, 0+m_nAdd));
#ifdef CHILD_VERSION
			jdarray.Add (m_List1.GetItemText (iItem, 7+m_nAdd));
#else
			jdarray.Add (m_List1.GetItemText (iItem, 8+m_nAdd));
#endif
		}

		if(idarray.GetSize ()==1)
		{
			AfxMessageBox("��ѡ�ж�Կ��ˣ����߰�ԤԼ��ť!", MB_ICONINFORMATION);
			return;
		}
		else
		{
			InputDate  dlg;
			dlg.m_mode=1;
			if(dlg.DoModal ()!=IDOK)return;
			CString sql;
			sql.Format ("update dindanjd set [bookingdate]='%s',[clerk]='%s',[inputtime]='msgtimestamp2' where ", dlg.m_date, g_user.name);
			CString filter,temp;
			for(int i=0; i<idarray.GetSize (); i++)
			{
				if(i==0)
					temp="[id]='"+idarray.ElementAt (i)+"' and [name]='"+jdarray.ElementAt (i)+"'";
				else
					temp=" or [id]='"+idarray.ElementAt (i)+"' and [name]='"+jdarray.ElementAt (i)+"'";
				filter+=temp;
			}
			sql+=filter;
			g_sendhead.bsql=1;
			g_pMainWnd->ProcessChatMessageRequest2(sql);if(g_bSendOK==0)return;
			AfxMessageBox("����ɹ�!", MB_ICONINFORMATION);
		}
		GetData();
	}
}

void SearchTake::GetData()
{
	if(g_bAllBranch==0)
	{
		g_sendhead.code[0]=189;	
		g_sendhead.tabcount=1;
		g_sendhead.bsql=0;
		g_pMainWnd->ProcessChatMessageRequest2(1);if(g_bSendOK==0)return;
		DataToArray(&m_List1array);
		HidePrice();
		FillGrid();	
		return;
	}
	//////////////���ݻ���
	m_List1array.RemoveAll ();
	CStringArray failbrancharray;
	CString branch;
	int i = 0;
	for( i=-1; i<g_brancharray.GetSize ()-1; i++)
	{
		if(i!=-1)
		{
			branch=g_brancharray.ElementAt (i).ElementAt (0);
			g_branchip=g_brancharray.ElementAt (i).ElementAt (1);
			g_pMainWnd->OnDisconnect();
			g_branchname=branch;
			g_bBranchModify=1;
		}
		else
			branch=g_brancharray.ElementAt (g_brancharray.GetSize ()-1).ElementAt (0);


		g_sendhead.bsql=0;
		g_sendhead.code[0]=189;
		g_sendhead.tabcount=1;
		g_pMainWnd->ProcessChatMessageRequest2(1);
		if(g_bSendOK==0)
		{
			failbrancharray.Add (branch);
			continue;
		}

		CArray<CStringArray, CStringArray>List1array;
		DataToArray(&List1array);   

		int size=m_List1array.GetSize ();
		for(int j=0; j<List1array.GetSize (); j++)
		{
			size++;
			m_List1array.SetSize(size , 1 );
			size--;
			m_List1array.ElementAt (size).Copy (List1array.ElementAt (j));
			m_List1array.ElementAt (size).InsertAt (0, branch);
			size++;
		}
	}

	for(i=0; i<failbrancharray.GetSize (); i++)
	{
		//		AfxMessageBox("����"+failbrancharray.ElementAt(i)+"������ʧ��!", MB_ICONINFORMATION);
	}
	g_pMainWnd->OnDisconnect();
	g_bBranchModify=0;g_branchip=g_branchname="";

	HidePrice();
	FillGrid();	
}