// PhoneRecord.cpp : implementation file
//
#include "stdafx.h"
#include "ylgl.h"
#include "PhoneRecord.h"
#include "MyMdi.H"
#include "AVIPlayerDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// PhoneRecord
IMPLEMENT_DYNCREATE(PhoneRecord, MyFormView)
PhoneRecord::PhoneRecord()
: MyFormView(PhoneRecord::IDD)
{
	//{{AFX_DATA_INIT(PhoneRecord)
	m_filter = _T("");
	//}}AFX_DATA_INIT
	bLoad1 = bLoad2 = bLoad3 = bLoad4 = bLoad5 = 0;
}

PhoneRecord::~PhoneRecord()
{
}

void PhoneRecord::DoDataExchange(CDataExchange* pDX)
{
	MyFormView::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(PhoneRecord)
	DDX_Control(pDX, IDC_LIST8, m_List5);
	DDX_Control(pDX, IDC_LIST7, m_List4);
	DDX_Control(pDX, IDC_LIST6, m_List3);
	DDX_Control(pDX, IDC_LIST4, m_List2);
	DDX_Control(pDX, IDC_COMBO1, m_combo1);
	DDX_Control(pDX, IDC_LIST2, m_List1);
	DDX_Control(pDX, IDC_STATIC1, m_static1);
	DDX_CBString(pDX, IDC_COMBO1, m_filter);
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(PhoneRecord, MyFormView)
	//{{AFX_MSG_MAP(PhoneRecord)
	ON_BN_CLICKED(IDC_BUTclose, OnBUTclose)
	ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
	ON_CBN_SELCHANGE(IDC_COMBO1, OnSelchangeCombo1)
	ON_WM_TIMER()
	ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
	ON_BN_CLICKED(IDC_BUTTON3, OnButton3)
	ON_BN_CLICKED(IDC_BUTTON4, OnButton4)
	ON_BN_CLICKED(IDC_BUTTON10, OnButton10)
	ON_BN_CLICKED(IDC_BUTdel2, OnBUTdel2)
	ON_BN_CLICKED(IDC_BUTTON6, OnButton6)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// PhoneRecord diagnostics

#ifdef _DEBUG
void PhoneRecord::AssertValid() const
{
	MyFormView::AssertValid();
}

void PhoneRecord::Dump(CDumpContext& dc) const
{
	MyFormView::Dump(dc);
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// PhoneRecord message handlers

void PhoneRecord::OnInitialUpdate()
{
	MyFormView::OnInitialUpdate();
	// TODO: Add your specialized code here and/or call the base class
	GetDlgItem(IDC_BUTTON4)->EnableWindow(IsHasRights2new(49));

	CMyMdi Mdi;
	Mdi.SetSubView((CWnd*)GetParent(), (CWnd*)this);

	// Here we create the outbar control using the splitter as its parent
	// and setting its id to the first pane.
	CRect rc2;
	GetWindowRect(rc2);
	::MoveWindow(m_hWnd, g_rc.left, g_rc.top, g_rc.Width(), g_rc.Height(), TRUE);

	EnumChildWindows(m_hWnd, (WNDENUMPROC)EnumChildProc, 0);

	int idarray[] = { IDC_BUTdel2, IDC_BUTTON4, IDC_BUTclose };
	int idcount = 3;
	int btnwid;
	CRect prerc;
	for (int a = idcount - 2; a >= 0; a--)
	{
		GetDlgItem(idarray[a + 1])->GetWindowRect(prerc);
		ScreenToClient(prerc);
		GetDlgItem(idarray[a])->GetWindowRect(rc2);
		ScreenToClient(rc2);
		btnwid = rc2.Width();
		rc2.right = prerc.left;
		rc2.left = rc2.right - btnwid;
		GetDlgItem(idarray[a])->MoveWindow(rc2);
	}

	{
		int idarray[] = { IDC_BUTTON1, IDC_BUTTON6, IDC_BUTTON2, IDC_BUTTON3, IDC_BUTTON10 };
		int idcount = 5;
		int btnwid;
		CRect prerc;
		for (int a = 1; a < idcount; a++)
		{
			GetDlgItem(idarray[a - 1])->GetWindowRect(prerc);
			ScreenToClient(prerc);
			GetDlgItem(idarray[a])->GetWindowRect(rc2);
			ScreenToClient(rc2);
			btnwid = rc2.Width();
			rc2.left = prerc.right;
			rc2.right = rc2.left + btnwid;
			GetDlgItem(idarray[a])->MoveWindow(rc2);
		}
	}


	m_static1.SetFont(&g_titlefont);

#ifdef CHILD_VERSION
	m_List1.SetHeadings("������,100;�ҳ�����,100;��������,100;�ֻ�,100;�̶��绰,100;�������,100;����ʱ��,150");
#else
	m_List1.SetHeadings("������,100;�б�����,100;Ů������,100;�б��绰,100;Ů���绰,100;�������,100;����ʱ��,150" );
#endif
	m_List1.LoadColumnInfo(151);
	m_List2.SetHeadings("��������,150;�Ա�,100;�绰,150;����ʱ��,200");
	m_List2.LoadColumnInfo(152);
	m_List3.SetHeadings("Ա������,150;�绰,100;����ʱ��,200");
	m_List3.LoadColumnInfo(153);
	m_List4.SetHeadings("�绰,200;����ʱ��,200");
	m_List4.LoadColumnInfo(154);

	m_List5.SetHeadings("��������,150;�绰,100;����ʱ��,200");
	m_List5.LoadColumnInfo(153);

	m_combo1.GetWindowRect(rc2);
	ScreenToClient(rc2);
	rc2.bottom += 200;
	m_combo1.MoveWindow(rc2);
	GetDlgItem(IDC_BUTclose)->GetWindowRect(rc2);
	SetComboHei(&m_combo1, rc2.Height());

	OnButton1();
}

void PhoneRecord::OnBUTclose()//�رհ�ť;
{
	// TODO: Add your control notification handler code here
	GetParent()->SendMessage(WM_CLOSE);
}

void PhoneRecord::OnSelchangeCombo1()
{
	// TODO: Add your control notification handler code here

	SetTimer(1, 100, NULL);
}

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

BOOL PhoneRecord::PreTranslateMessage(MSG* pMsg)
{
	// TODO: Add your specialized code here and/or call the base class
	try
	{
		if (pMsg->message == WM_KEYDOWN)
		{
			switch (pMsg->wParam)
			{
			case VK_RETURN:
				OnButton1();
				return 1;
			case 0x43: // copy
				if ((GetKeyState(VK_CONTROL) & 0x80))
				{
					GetFocus()->SendMessage(WM_COPY);
					return TRUE;
				}
				break;
			case 0x56: //Ctrl + V:
				if ((GetKeyState(VK_CONTROL) & 0x80))
				{
					GetFocus()->SendMessage(WM_PASTE);
					return TRUE;
				}
				break;
			case 0x58: // cut
				if ((GetKeyState(VK_CONTROL) & 0x80))
				{
					GetFocus()->SendMessage(WM_CUT);
					return TRUE;
				}
				break;
			case 0x5A: //undo
			case 0x59: //redo
				if ((GetKeyState(VK_CONTROL) & 0x80))
				{
					GetFocus()->SendMessage(WM_UNDO);
					return TRUE;
				}
				break;
			}
		}
		return MyFormView::PreTranslateMessage(pMsg);
	}
	catch (...)
	{
	}

	return TRUE;
}

void PhoneRecord::OnButton1()//�ͻ����簴ť;
{
	// TODO: Add your control notification handler code here
	UpdateData();
	m_filter.TrimLeft();
	m_filter.TrimRight();
	if (!bLoad1)
	{
		bLoad1 = 1;
		g_sendhead.bsql = 0;
		g_sendhead.code[0] = 109;
		g_sendhead.tabcount = 1;
		g_pMainWnd->ProcessChatMessageRequest2(15); if (g_bSendOK == 0)return;
		DataToArray(&m_List1array);
	}
	FillGrid();
}

void PhoneRecord::OnButton2()//����ͻ����簴ť;
{
	// TODO: Add your control notification handler code here
	UpdateData();
	m_filter.TrimLeft();
	m_filter.TrimRight();
	if (!bLoad2)
	{
		bLoad2 = 1;
		g_sendhead.bsql = 0;
		g_sendhead.code[0] = 110;
		g_sendhead.tabcount = 1;
		g_pMainWnd->ProcessChatMessageRequest2(15); if (g_bSendOK == 0)return;
		DataToArray(&m_List2array);
	}
	FillGrid2();
}

void PhoneRecord::OnButton3()//Ա���绰��ť;
{
	// TODO: Add your control notification handler code here
	UpdateData();
	m_filter.TrimLeft();
	m_filter.TrimRight();
	if (!bLoad3)
	{
		bLoad3 = 1;
		g_sendhead.bsql = 0;
		g_sendhead.code[0] = 111;
		g_sendhead.tabcount = 1;
		g_pMainWnd->ProcessChatMessageRequest2(15); if (g_bSendOK == 0)return;
		DataToArray(&m_List3array);
	}
	FillGrid3();
}

void PhoneRecord::OnButton10()//�����绰��ť;
{
	// TODO: Add your control notification handler code here
	UpdateData();
	if (!bLoad4)
	{
		bLoad4 = 1;

		g_sendhead.bsql = 0;
		g_sendhead.code[0] = 112;
		g_sendhead.tabcount = 1;
		g_pMainWnd->ProcessChatMessageRequest2(15); if (g_bSendOK == 0)return;
		DataToArray(&m_List4array);
	}
	FillGrid4();
}

void PhoneRecord::FillGrid(int mode)
{
	m_List1.ShowWindow(SW_SHOW);
	m_List2.ShowWindow(SW_HIDE);
	m_List3.ShowWindow(SW_HIDE);
	m_List4.ShowWindow(SW_HIDE);
	m_List5.ShowWindow(SW_HIDE);
	m_List1.DeleteAllItems2();
	int ii = 0;
	m_List1.m_arLabels.SetSize(m_List1array.GetSize(), 1);
	int count = 0;
	if (m_filter.IsEmpty())
	{
		for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++)
		{
			m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
		}
	}
	else
	{
		int type = GetType(m_filter);
		if (type == 1)//�绰
		{
			BOOL bFinded = 0;
			for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++)
			{
				if (bFinded && m_List1array.ElementAt(ii).ElementAt(0).IsEmpty())
				{
					m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
					continue;
				}
				if (m_List1array.ElementAt(ii).ElementAt(3).Find(m_filter) != -1\
					|| m_List1array.ElementAt(ii).ElementAt(4).Find(m_filter) != -1)
				{
					bFinded = 1;
					m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
				}
				else
				{
					bFinded = 0;
				}
			}
		}
		else if (type == 2)//ƴ��
		{
			BOOL bFinded = 0;
			m_filter.MakeUpper();
			for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++)
			{
				if (bFinded && m_List1array.ElementAt(ii).ElementAt(0).IsEmpty())
				{
					m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
					continue;
				}
				if (m_List1array.ElementAt(ii).ElementAt(7).Find(m_filter) != -1\
					|| m_List1array.ElementAt(ii).ElementAt(8).Find(m_filter) != -1)
				{
					bFinded = 1;
					m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
				}
				else
				{
					bFinded = 0;
				}
			}
		}
		else
		{
			BOOL bFinded = 0;
			for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++)
			{
				if (bFinded && m_List1array.ElementAt(ii).ElementAt(0).IsEmpty())
				{
					m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
					continue;
				}
				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)
				{
					bFinded = 1;
					m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
				}
				else
				{
					bFinded = 0;
				}
			}
		}
	}
	m_List1.m_arLabels.SetSize(count, 1);
	ii = count;
	m_List1.m_LabelCount = ii;
	m_List1.SetItemCountEx(ii);
}

void PhoneRecord::FillGrid2()
{
	m_List2.ShowWindow(SW_SHOW);
	m_List1.ShowWindow(SW_HIDE);
	m_List3.ShowWindow(SW_HIDE);
	m_List4.ShowWindow(SW_HIDE);
	m_List5.ShowWindow(SW_HIDE);
	m_List2.DeleteAllItems2();
	int ii = 0;
	m_List2.m_arLabels.SetSize(m_List2array.GetSize(), 1);
	int count = 0;
	if (m_filter.IsEmpty())
	{
		for (ii = 0; ii < m_List2.m_arLabels.GetSize(); ii++)
		{
			m_List2.m_arLabels.ElementAt(count++).Copy(m_List2array.ElementAt(ii));
		}
	}
	else
	{
		int type = GetType(m_filter);
		if (type == 1)//�绰
		{
			BOOL bFinded = 0;
			for (ii = 0; ii < m_List2.m_arLabels.GetSize(); ii++)
			{
				if (bFinded && m_List2array.ElementAt(ii).ElementAt(0).IsEmpty())
				{
					m_List2.m_arLabels.ElementAt(count++).Copy(m_List2array.ElementAt(ii));
					continue;
				}
				if (m_List2array.ElementAt(ii).ElementAt(2).Find(m_filter) != -1)
				{
					bFinded = 1;
					m_List2.m_arLabels.ElementAt(count++).Copy(m_List2array.ElementAt(ii));
				}
				else
				{
					bFinded = 0;
				}
			}
		}
		else if (type == 2)//ƴ��
		{
			BOOL bFinded = 0;
			m_filter.MakeUpper();
			for (ii = 0; ii < m_List2.m_arLabels.GetSize(); ii++)
			{
				if (bFinded && m_List2array.ElementAt(ii).ElementAt(0).IsEmpty())
				{
					m_List2.m_arLabels.ElementAt(count++).Copy(m_List2array.ElementAt(ii));
					continue;
				}
				if (m_List2array.ElementAt(ii).ElementAt(4).Find(m_filter) != -1)
				{
					bFinded = 1;
					m_List2.m_arLabels.ElementAt(count++).Copy(m_List2array.ElementAt(ii));
				}
				else
				{
					bFinded = 0;
				}
			}
		}
		else
		{
			BOOL bFinded = 0;
			for (ii = 0; ii < m_List2.m_arLabels.GetSize(); ii++)
			{
				if (bFinded && m_List2array.ElementAt(ii).ElementAt(0).IsEmpty())
				{
					m_List2.m_arLabels.ElementAt(count++).Copy(m_List2array.ElementAt(ii));
					continue;
				}
				if (m_List2array.ElementAt(ii).ElementAt(0).Find(m_filter) != -1 || m_List2array.ElementAt(ii).ElementAt(1).Find(m_filter) != -1 || m_List2array.ElementAt(ii).ElementAt(2).Find(m_filter) != -1 || m_List2array.ElementAt(ii).ElementAt(3).Find(m_filter) != -1)
				{
					bFinded = 1;
					m_List2.m_arLabels.ElementAt(count++).Copy(m_List2array.ElementAt(ii));
				}
				else
				{
					bFinded = 0;
				}
			}
		}
	}
	m_List2.m_arLabels.SetSize(count, 1);
	ii = count;
	m_List2.m_LabelCount = ii;
	m_List2.SetItemCountEx(ii);
}

void PhoneRecord::FillGrid3()
{
	m_List3.ShowWindow(SW_SHOW);
	m_List1.ShowWindow(SW_HIDE);
	m_List2.ShowWindow(SW_HIDE);
	m_List4.ShowWindow(SW_HIDE);
	m_List5.ShowWindow(SW_HIDE);

	m_List3.DeleteAllItems2();
	int ii = 0;
	m_List3.m_arLabels.SetSize(m_List3array.GetSize(), 1);
	int count = 0;
	if (m_filter.IsEmpty())
	{
		for (ii = 0; ii < m_List3.m_arLabels.GetSize(); ii++)
		{
			m_List3.m_arLabels.ElementAt(count++).Copy(m_List3array.ElementAt(ii));
		}
	}
	else
	{
		int type = GetType(m_filter);
		if (type == 1)//�绰
		{
			BOOL bFinded = 0;
			for (ii = 0; ii < m_List3.m_arLabels.GetSize(); ii++)
			{
				if (bFinded && m_List3array.ElementAt(ii).ElementAt(0).IsEmpty())
				{
					m_List3.m_arLabels.ElementAt(count++).Copy(m_List3array.ElementAt(ii));
					continue;
				}
				if (m_List3array.ElementAt(ii).ElementAt(1).Find(m_filter) != -1)
				{
					bFinded = 1;
					m_List3.m_arLabels.ElementAt(count++).Copy(m_List3array.ElementAt(ii));
				}
				else
				{
					bFinded = 0;
				}
			}
		}
		else
		{
			BOOL bFinded = 0;
			for (ii = 0; ii < m_List3.m_arLabels.GetSize(); ii++)
			{
				if (bFinded && m_List3array.ElementAt(ii).ElementAt(0).IsEmpty())
				{
					m_List3.m_arLabels.ElementAt(count++).Copy(m_List3array.ElementAt(ii));
					continue;
				}
				if (m_List3array.ElementAt(ii).ElementAt(0).Find(m_filter) != -1 || m_List3array.ElementAt(ii).ElementAt(1).Find(m_filter) != -1 || m_List3array.ElementAt(ii).ElementAt(2).Find(m_filter) != -1)
				{
					bFinded = 1;
					m_List3.m_arLabels.ElementAt(count++).Copy(m_List3array.ElementAt(ii));
				}
				else
				{
					bFinded = 0;
				}
			}
		}
	}
	m_List3.m_arLabels.SetSize(count, 1);
	ii = count;
	m_List3.m_LabelCount = ii;
	m_List3.SetItemCountEx(ii);
}

void PhoneRecord::FillGrid4()
{
	m_List4.ShowWindow(SW_SHOW);
	m_List1.ShowWindow(SW_HIDE);
	m_List2.ShowWindow(SW_HIDE);
	m_List3.ShowWindow(SW_HIDE);
	m_List5.ShowWindow(SW_HIDE);

	m_List4.DeleteAllItems2();
	int ii = 0;
	m_List4.m_arLabels.SetSize(m_List4array.GetSize(), 1);
	int count = 0;
	if (m_filter.IsEmpty())
	{
		for (ii = 0; ii < m_List4.m_arLabels.GetSize(); ii++)
		{
			m_List4.m_arLabels.ElementAt(count++).Copy(m_List4array.ElementAt(ii));
		}
	}
	else
	{
		for (ii = 0; ii < m_List4.m_arLabels.GetSize(); ii++)
		{
			if (m_List4array.ElementAt(ii).ElementAt(0).Find(m_filter) != -1 || \
				m_List4array.ElementAt(ii).ElementAt(1).Find(m_filter) != -1)
			{
				m_List4.m_arLabels.ElementAt(count++).Copy(m_List4array.ElementAt(ii));
			}
		}
	}
	m_List4.m_arLabels.SetSize(count, 1);
	ii = count;
	m_List4.m_LabelCount = ii;
	m_List4.SetItemCountEx(ii);
}

void PhoneRecord::OnButton4()//¼���ص���ť;
{
	// TODO: Add your control notification handler code here
	if (m_List1.IsWindowVisible())
	{
		POSITION pos;
		pos = m_List1.GetFirstSelectedItemPosition();
		if (pos == NULL)
		{
			AfxMessageBox("����ѡ����Ҫ�طŵ�¼��!", MB_ICONINFORMATION);
			return;
		}
		int iItem = m_List1.GetNextSelectedItem(pos);
		CString id = m_List1.GetItemText(iItem, 0);
		CString datetime = m_List1.GetItemText(iItem, 6);
		datetime.Replace(":", "");
		CString path = g_path6 + "\\�ͻ��绰\\" + id + "\\" + datetime + ".mp3";
		if (::PathFileExists(path) == 0)
			path = g_path6 + "\\�ͻ��绰\\" + id + "\\" + datetime + ".wav";

		if (PathFileExists(path))
		{
			CAVIPlayerDlg dlg;
			dlg.m_Path = path;
			dlg.DoModal();
		}
		else
			AfxMessageBox("�ļ�δ�ҵ�!", MB_ICONINFORMATION);
	}
	if (m_List2.IsWindowVisible())
	{
		POSITION pos;
		pos = m_List2.GetFirstSelectedItemPosition();
		if (pos == NULL)
		{
			AfxMessageBox("����ѡ����Ҫ�طŵ�¼��!", MB_ICONINFORMATION);
			return;
		}
		int iItem = m_List2.GetNextSelectedItem(pos);
		CString phone = m_List2.GetItemText(iItem, 2);
		CString datetime = m_List2.GetItemText(iItem, 3);
		datetime.Replace(":", "");
		CString path = g_path6 + "\\����ͻ�\\" + phone + "\\" + datetime + ".mp3";
		if (PathFileExists(path) == 0)
			path = g_path6 + "\\����ͻ�\\" + phone + "\\" + datetime + ".wav";
		if (PathFileExists(path))
		{
			CAVIPlayerDlg dlg;
			dlg.m_Path = path;
			dlg.DoModal();
		}
		else
			AfxMessageBox("�ļ�δ�ҵ�!", MB_ICONINFORMATION);
	}
	if (m_List3.IsWindowVisible())
	{
		POSITION pos;
		pos = m_List3.GetFirstSelectedItemPosition();
		if (pos == NULL)
		{
			AfxMessageBox("����ѡ����Ҫ�طŵ�¼��!", MB_ICONINFORMATION);
			return;
		}
		int iItem = m_List3.GetNextSelectedItem(pos);
		CString name = m_List3.GetItemText(iItem, 0);
		CString datetime = m_List3.GetItemText(iItem, 2);
		datetime.Replace(":", "");
		CString path = g_path6 + "\\Ա���绰\\" + name + "\\" + datetime + ".mp3";
		if (PathFileExists(path) == 0)
			path = g_path6 + "\\Ա���绰\\" + name + "\\" + datetime + ".wav";
		if (PathFileExists(path))
		{
			CAVIPlayerDlg dlg;
			dlg.m_Path = path;
			dlg.DoModal();
		}
		else
			AfxMessageBox("�ļ�δ�ҵ�!", MB_ICONINFORMATION);
	}
	if (m_List4.IsWindowVisible())
	{
		POSITION pos;
		pos = m_List4.GetFirstSelectedItemPosition();
		if (pos == NULL)
		{
			AfxMessageBox("����ѡ����Ҫ�طŵ�¼��!", MB_ICONINFORMATION);
			return;
		}
		int iItem = m_List4.GetNextSelectedItem(pos);
		CString phone = m_List4.GetItemText(iItem, 0);
		CString datetime = m_List4.GetItemText(iItem, 1);
		datetime.Replace(":", "");
		CString path = g_path6 + "\\δ֪�绰\\" + phone + "\\" + datetime + ".mp3";
		if (PathFileExists(path) == 0)
			path = g_path6 + "\\δ֪�绰\\" + phone + "\\" + datetime + ".wav";
		if (PathFileExists(path))
		{
			CAVIPlayerDlg dlg;
			dlg.m_Path = path;
			dlg.DoModal();
		}
		else
			AfxMessageBox("�ļ�δ�ҵ�!", MB_ICONINFORMATION);
	}
	if (m_List5.IsWindowVisible())
	{
		POSITION pos;
		pos = m_List5.GetFirstSelectedItemPosition();
		if (pos == NULL)
		{
			AfxMessageBox("����ѡ����Ҫ�طŵ�¼��!", MB_ICONINFORMATION);
			return;
		}
		int iItem = m_List5.GetNextSelectedItem(pos);
		CString phone = m_List5.GetItemText(iItem, 1);
		CString datetime = m_List5.GetItemText(iItem, 2);
		datetime.Replace(":", "");
		CString path = g_path6 + "\\�Ͽͻ�\\" + phone + "\\" + datetime + ".mp3";
		if (PathFileExists(path) == 0)
			path = g_path6 + "\\�Ͽͻ�\\" + phone + "\\" + datetime + ".wav";
		if (PathFileExists(path))
		{
			CAVIPlayerDlg dlg;
			dlg.m_Path = path;
			dlg.DoModal();
		}
		else
			AfxMessageBox("�ļ�δ�ҵ�!", MB_ICONINFORMATION);
	}
}

void PhoneRecord::OnBUTdel2()//ɾ����ť;
{
	// TODO: Add your control notification handler code here
	if (IsHasRights2new(49) == 0)return;
	// TODO: Add your control notification handler code here
	if (m_List1.IsWindowVisible())
	{
		POSITION pos;
		pos = m_List1.GetFirstSelectedItemPosition();
		if (pos == NULL)
		{
			AfxMessageBox("����ѡ����Ҫɾ���ļ�¼!", MB_ICONINFORMATION);
			return;
		}
		if (AfxMessageBox("ɾ�����޷��ָ����Ƿ����?", MB_YESNO | MB_ICONINFORMATION) != IDYES)return;
		int iItem = m_List1.GetNextSelectedItem(pos);
		CString datetime = m_List1.GetItemText(iItem, 6);
		CString id = m_List1.GetItemText(iItem, 0);
		CString sql;
		sql.Format("delete from phonerecord where datetime='%s' ", datetime);
		g_sendhead.bsql = 1;
		g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
		datetime.Replace(":", "");
		CString path = g_path6 + "\\�ͻ��绰\\" + id + "\\" + datetime + ".mp3";
		::DeleteFile(path);		// ɾ���ͻ��绰Ŀ¼�µ�mp3;
		path = g_path6 + "\\�ͻ��绰\\" + id + "\\" + datetime + ".wav";
		::DeleteFile(path);		// ɾ���ͻ��绰Ŀ¼�µ�.wav;
		bLoad1 = 0;
		OnButton1();
	}
	if (m_List2.IsWindowVisible())
	{
		POSITION pos;
		pos = m_List2.GetFirstSelectedItemPosition();
		if (pos == NULL)
		{
			AfxMessageBox("����ѡ����Ҫɾ���ļ�¼!", MB_ICONINFORMATION);
			return;
		}
		if (AfxMessageBox("ɾ�����޷��ָ����Ƿ����?", MB_YESNO | MB_ICONINFORMATION) != IDYES)return;
		int iItem = m_List2.GetNextSelectedItem(pos);
		CString datetime = m_List2.GetItemText(iItem, 3);
		CString phone = m_List2.GetItemText(iItem, 2);
		CString sql;
		sql.Format("delete from client2phonerecord where datetime='%s' ", datetime);



		g_sendhead.bsql = 1;
		g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
		datetime.Replace(":", "");
		CString path = g_path6 + "\\����ͻ�\\" + phone + "\\" + datetime + ".mp3";
		::DeleteFile(path);		// ɾ���ͻ��绰Ŀ¼�µ�mp3;
		path = g_path6 + "\\����ͻ�\\" + phone + "\\" + datetime + ".wav";
		::DeleteFile(path);		// ɾ���ͻ��绰Ŀ¼�µ�.wav;

		bLoad2 = 0;
		OnButton2();
	}
	if (m_List3.IsWindowVisible())
	{
		POSITION pos;
		pos = m_List3.GetFirstSelectedItemPosition();
		if (pos == NULL)
		{
			AfxMessageBox("����ѡ����Ҫɾ���ļ�¼!", MB_ICONINFORMATION);
			return;
		}
		if (AfxMessageBox("ɾ�����޷��ָ����Ƿ����?", MB_YESNO | MB_ICONINFORMATION) != IDYES)return;
		int iItem = m_List3.GetNextSelectedItem(pos);
		CString datetime = m_List3.GetItemText(iItem, 2);
		CString name = m_List3.GetItemText(iItem, 0);
		CString sql;
		sql.Format("delete from employeephonerecord where datetime='%s' ", datetime);


		g_sendhead.bsql = 1;
		g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
		datetime.Replace(":", "");
		CString path = g_path6 + "\\Ա���绰\\" + name + "\\" + datetime + ".mp3";
		::DeleteFile(path);		// ɾ���ͻ��绰Ŀ¼�µ�mp3;
		path = g_path6 + "\\Ա���绰\\" + name + "\\" + datetime + ".wav";
		::DeleteFile(path);		// ɾ���ͻ��绰Ŀ¼�µ�.wav;

		bLoad3 = 0;
		OnButton3();
	}
	if (m_List4.IsWindowVisible())
	{
		POSITION pos;
		pos = m_List4.GetFirstSelectedItemPosition();
		if (pos == NULL)
		{
			AfxMessageBox("����ѡ����Ҫɾ���ļ�¼!", MB_ICONINFORMATION);
			return;
		}
		if (AfxMessageBox("ɾ�����޷��ָ����Ƿ����?", MB_YESNO | MB_ICONINFORMATION) != IDYES)return;
		int iItem = m_List4.GetNextSelectedItem(pos);
		CString datetime = m_List4.GetItemText(iItem, 1);
		CString phone = m_List4.GetItemText(iItem, 0);
		CString sql;
		sql.Format("delete from unknownphonerecord where datetime='%s' ", datetime);


		g_sendhead.bsql = 1;
		g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
		datetime.Replace(":", "");
		CString path = g_path6 + "\\δ֪�绰\\" + phone + "\\" + datetime + ".mp3";
		::DeleteFile(path);		// ɾ���ͻ��绰Ŀ¼�µ�mp3;
		path = g_path6 + "\\δ֪�绰\\" + phone + "\\" + datetime + ".wav";
		::DeleteFile(path);		// ɾ���ͻ��绰Ŀ¼�µ�.wav;
		bLoad4 = 0;
		OnButton10();
	}
	if (m_List5.IsWindowVisible())
	{
		POSITION pos;
		pos = m_List5.GetFirstSelectedItemPosition();
		if (pos == NULL)
		{
			AfxMessageBox("����ѡ����Ҫɾ���ļ�¼!", MB_ICONINFORMATION);
			return;
		}
		if (AfxMessageBox("ɾ�����޷��ָ����Ƿ����?", MB_YESNO | MB_ICONINFORMATION) != IDYES)return;
		int iItem = m_List5.GetNextSelectedItem(pos);
		CString datetime = m_List5.GetItemText(iItem, 2);
		CString phone = m_List5.GetItemText(iItem, 1);
		CString sql;
		sql.Format("delete from client3phonerecord where datetime='%s' ", datetime);


		g_sendhead.bsql = 1;
		g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
		datetime.Replace(":", "");
		CString path = g_path6 + "\\�Ͽͻ�\\" + phone + "\\" + datetime + ".mp3";
		::DeleteFile(path);		// ɾ���ͻ��绰Ŀ¼�µ�mp3;
		path = g_path6 + "\\�Ͽͻ�\\" + phone + "\\" + datetime + ".wav";
		::DeleteFile(path);		// ɾ���ͻ��绰Ŀ¼�µ�.wav;
		bLoad5 = 0;
		OnButton6();
	}
}

void PhoneRecord::OnButton6()//�Ͽͻ����簴ť;
{
	// TODO: Add your control notification handler code here
	UpdateData();
	m_filter.TrimLeft();
	m_filter.TrimRight();
	if (!bLoad5)
	{
		bLoad5 = 1;
		g_sendhead.bsql = 0;
		g_sendhead.code[0] = 175;
		g_sendhead.tabcount = 1;
		g_pMainWnd->ProcessChatMessageRequest2(15); if (g_bSendOK == 0)return;
		DataToArray(&m_List5array);
	}
	FillGrid5();
}

void PhoneRecord::FillGrid5()
{
	m_List5.ShowWindow(SW_SHOW);
	m_List1.ShowWindow(SW_HIDE);
	m_List2.ShowWindow(SW_HIDE);
	m_List4.ShowWindow(SW_HIDE);
	m_List3.ShowWindow(SW_HIDE);

	m_List5.DeleteAllItems2();
	int ii = 0;
	m_List5.m_arLabels.SetSize(m_List5array.GetSize(), 1);
	int count = 0;
	if (m_filter.IsEmpty())
	{
		for (ii = 0; ii < m_List5.m_arLabels.GetSize(); ii++)
		{
			m_List5.m_arLabels.ElementAt(count++).Copy(m_List5array.ElementAt(ii));
		}
	}
	else
	{
		int type = GetType(m_filter);
		if (type == 1)//�绰
		{
			BOOL bFinded = 0;
			for (ii = 0; ii < m_List5.m_arLabels.GetSize(); ii++)
			{
				if (bFinded && m_List5array.ElementAt(ii).ElementAt(0).IsEmpty())
				{
					m_List5.m_arLabels.ElementAt(count++).Copy(m_List5array.ElementAt(ii));
					continue;
				}
				if (m_List5array.ElementAt(ii).ElementAt(1).Find(m_filter) != -1)
				{
					bFinded = 1;
					m_List5.m_arLabels.ElementAt(count++).Copy(m_List5array.ElementAt(ii));
				}
				else
				{
					bFinded = 0;
				}
			}
		}
		else
		{
			BOOL bFinded = 0;
			for (ii = 0; ii < m_List5.m_arLabels.GetSize(); ii++)
			{
				if (bFinded && m_List5array.ElementAt(ii).ElementAt(0).IsEmpty())
				{
					m_List5.m_arLabels.ElementAt(count++).Copy(m_List5array.ElementAt(ii));
					continue;
				}
				if (m_List5array.ElementAt(ii).ElementAt(0).Find(m_filter) != -1 || m_List5array.ElementAt(ii).ElementAt(1).Find(m_filter) != -1 || m_List5array.ElementAt(ii).ElementAt(2).Find(m_filter) != -1)
				{
					bFinded = 1;
					m_List5.m_arLabels.ElementAt(count++).Copy(m_List5array.ElementAt(ii));
				}
				else
				{
					bFinded = 0;
				}
			}
		}
	}
	m_List5.m_arLabels.SetSize(count, 1);
	ii = count;
	m_List5.m_LabelCount = ii;
	m_List5.SetItemCountEx(ii);
}