// MemberCardFunc2.cpp : implementation file
//

#include "stdafx.h"
#include "ylgl.h"
#include "MemberCardFunc2.h"
#include "AddMember.h"
#include "ShowMemberReg.h"
#include "InputCard2Dlg.h"
#include "ShowCard2Reg.h"
#include "InputCard2Point.h"
#include "UsePoint.h"
#include "InputCard3Dlg.h"
#include "ReCharge.h"
#include "ReChargeReg.h"
#include "InputPsw2.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// MemberCardFunc2 dialog IDC_EDIT4


MemberCardFunc2::MemberCardFunc2(CWnd* pParent /*=NULL*/)
: CDialog(MemberCardFunc2::IDD, pParent)
{
	m_memberno = _T("");
	m_point = _T("");
	m_balance = _T("");
	m_name = _T("");
	m_phone = _T("");
	//}}AFX_DATA_INIT
}


void MemberCardFunc2::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	DDX_Text(pDX, IDC_EDIT1, m_memberno);
	DDX_Text(pDX, IDC_EDIT2, m_point);
	DDX_Text(pDX, IDC_EDIT3, m_balance);
	DDX_Text(pDX, IDC_EDIT4, m_name);
	DDX_Text(pDX, IDC_EDIT5, m_phone);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(MemberCardFunc2, CDialog)
	ON_BN_CLICKED(IDC_BUTTON15, OnButton15)
	ON_BN_CLICKED(IDC_BUTTON16, OnButton16)
	ON_BN_CLICKED(IDC_BUTTON22, OnButton22)
	ON_BN_CLICKED(IDC_BUTTON17, OnButton17)
	ON_BN_CLICKED(IDC_BUTTON23, OnButton23)
	ON_BN_CLICKED(IDC_BUTTON3, OnButton3)
	ON_BN_CLICKED(IDC_BUTTON10, OnButton10)
	ON_BN_CLICKED(IDC_BUTTON7, OnButton7)
	ON_BN_CLICKED(IDC_BUTTON19, OnButton19)
	ON_BN_CLICKED(IDC_BUTTON18, OnButton18)
	ON_BN_CLICKED(IDC_BUTTON20, OnButton20)
	ON_BN_CLICKED(IDC_BUTTON21, OnButton21)
	ON_BN_CLICKED(IDC_BUTTON24, OnButton24)
	ON_BN_CLICKED(IDC_BUTTON25, OnButton25)
	ON_BN_CLICKED(IDC_BUTTON27, OnButton27)
	ON_BN_CLICKED(IDC_BUTTON28, OnButton28)
	ON_BN_CLICKED(IDC_BUTTON26, OnButton26)
	ON_BN_CLICKED(IDC_BUTTON29, OnButton29)
	ON_BN_CLICKED(IDC_BUTTON30, OnButton30)
	ON_BN_CLICKED(IDC_BUTTON31, OnButton31)
	ON_BN_CLICKED(IDC_BUTTON33, OnButton33)
	ON_WM_DESTROY()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()


BOOL MemberCardFunc2::OnInitDialog()
{
	CDialog::OnInitDialog();
	if (g_bAllBranch)
	{
		g_pMainWnd->OnDisconnect();
		g_branchip = GetIP(m_branch);
		g_pMainWnd->OnDisconnect();
		g_branchname = m_branch;
		g_bBranchModify = 1;
	}

	CArray<CStringArray, CStringArray>m_List1array;
	CArray<CStringArray, CStringArray>m_List2array;
	if (!m_card2no.IsEmpty())
	{
		GetDlgItem(IDC_BUTTON20)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON30)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON21)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON24)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON25)->EnableWindow(0);

		SetWindowText("�ӿ�����-��ǰ�ӿ�:" + m_card2no);

		CString filter = "[memberno]='" + m_memberno + "';[memberno]='" + m_memberno + "' and [card2no]='" + m_card2no + "'";
		g_sendhead.bsql = 0;
		g_sendhead.code[0] = 68;
		g_sendhead.code[1] = 164;
		g_sendhead.tabcount = 2;
		g_pMainWnd->ProcessChatMessageRequest2(filter);
		if (g_bSendOK == 0)
		{
			CDialog::OnCancel();
			return 0;
		}
		DataToArray(&m_List1array, &m_List2array);
		m_psw = m_List2array.ElementAt(0).ElementAt(4);
	}
	else
	{
		GetDlgItem(IDC_BUTTON26)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON29)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON27)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON31)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON28)->EnableWindow(0);

		CString filter = "[memberno]='" + m_memberno + "'";
		g_sendhead.bsql = 0;
		g_sendhead.code[0] = 68;
		g_sendhead.tabcount = 1;
		g_pMainWnd->ProcessChatMessageRequest2(filter);
		if (g_bSendOK == 0)
		{
			CDialog::OnCancel();
			return 0;
		}
		DataToArray(&m_List1array);
		m_psw = m_List1array.ElementAt(0).ElementAt(15);
	}

	CenterWindow();
	if (m_List1array.GetSize() == 0)
	{
		AfxMessageBox("û���ҵ��˿� " + m_memberno + " �ļ�¼");
		GetDlgItem(IDC_BUTTON20)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON30)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON21)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON24)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON25)->EnableWindow(0);

		GetDlgItem(IDC_BUTTON29)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON26)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON27)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON31)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON28)->EnableWindow(0);

		return 0;
	}
	m_memberno = m_List1array.ElementAt(0).ElementAt(1);
	m_point = m_List1array.ElementAt(0).ElementAt(9);
	m_balance = m_List1array.ElementAt(0).ElementAt(12);
	m_name = m_List1array.ElementAt(0).ElementAt(2);
	m_phone = m_List1array.ElementAt(0).ElementAt(4);

	UpdateData(0);

	return TRUE;
}

void MemberCardFunc2::OnButton15()
{
	if (IsHasRights2new(18) == 0)return;
	InputCard2Dlg dlg;
	dlg.m_name = m_name;
	dlg.m_no = m_memberno;
	dlg.DoModal();
}

void MemberCardFunc2::OnButton16()
{
	if (IsHasRights2new(18) == 0)return;

	CString filter = "[memberno]='" + m_memberno + "'";
	g_sendhead.bsql = 0;
	g_sendhead.code[0] = 127;
	g_sendhead.tabcount = 1;
	g_pMainWnd->ProcessChatMessageRequest2(filter); if (g_bSendOK == 0)return;
	DataToArray(&g_List1array);
	if (g_List1array.GetSize() == 0)
	{
		AfxMessageBox("������δ���Ÿ���!");
	}
	else
	{
		ShowCard2Reg dlg;
		dlg.DoModal();
	}
}

void MemberCardFunc2::OnButton22()
{
	if (IsHasRights2new(18) == 0)return;

	InputCard2Point dlg;
	dlg.m_memberno = m_memberno;
	dlg.m_name = m_name;

	dlg.m_phone = m_phone;
	if (dlg.DoModal() != IDOK)return;
}

void MemberCardFunc2::OnButton17()
{
	UsePoint dlg;
	dlg.m_mode = 1;
	dlg.m_memberno = m_memberno;
	dlg.m_name = m_name;

	dlg.m_phone = m_phone;
	dlg.m_point = m_point;
	if (dlg.DoModal() != IDOK)return;
}

void MemberCardFunc2::OnButton23()
{
	UsePoint dlg;
	dlg.m_memberno = m_memberno;
	dlg.m_name = m_name;

	dlg.m_phone = m_phone;
	dlg.m_point = m_point;
	if (dlg.DoModal() != IDOK)return;

}

void MemberCardFunc2::OnButton3()
{
	ShowMemberReg dlg;
	dlg.m_memberno = m_memberno;
	dlg.DoModal();
}

void MemberCardFunc2::OnButton10()
{
	ShowMemberReg dlg;
	dlg.m_mode = 1;
	dlg.m_memberno = m_memberno;
	dlg.DoModal();
}

void MemberCardFunc2::OnButton7()
{
	if (IsHasRights2new(49) == 0)return;

	if (AfxMessageBox("ɾ���󽫲��ɻָ�, ȷ����?", MB_YESNO | MB_ICONINFORMATION) != IDYES)return;
	CString sql;
	sql = "delete from membermanage where [memberno]='" + m_memberno + "'";
	sql += "***delete from memberreg where [memberno]='" + m_memberno + "'";
	sql += "***delete from memberreg2 where [memberno]='" + m_memberno + "'";
	sql += "***delete from memberreg3 where [memberno]='" + m_memberno + "'";
	sql += "***delete from memberreg4 where [memberno]='" + m_memberno + "'";
	sql += "***delete from membercard3usereg where [memberno]='" + m_memberno + "'";
	sql += "***delete from membercard2 where [memberno]='" + m_memberno + "'";
	sql += "***delete from membercard3 where [memberno]='" + m_memberno + "'";
	g_sendhead.bsql = 1;
	g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
	AfxMessageBox("ɾ���ɹ�!");	CDialog::OnCancel();
}

void MemberCardFunc2::OnButton19()
{
	UsePoint dlg;
	dlg.m_mode = 2;
	dlg.m_memberno = m_memberno;
	dlg.m_name = m_name;
	dlg.m_phone = m_phone;
	dlg.m_point = m_point;
	if (dlg.DoModal() != IDOK)return;
	AfxMessageBox("���¿��ųɹ�!");
	CDialog::OnCancel();
}

void MemberCardFunc2::OnButton18()
{
	AddMember dlg;
	dlg.m_memberno = m_memberno;
	dlg.m_bAdd = 0;
	dlg.DoModal();	CDialog::OnCancel();
}

//****************************************************************//
// ���ְ�ť - ����ʵ��,�����ֵ���֧����һ��,Ҫ��¼�����񱨱���;
// case 13
//****************************************************************//
void MemberCardFunc2::OnButton30() // ���ְ�ť;
{
	if (m_psw != "")
	{
		AfxMessageBox("�˿����������룬����������?", MB_ICONINFORMATION);
		InputPsw2 dlg;
		if (dlg.DoModal() != IDOK)return;
		if (m_psw != dlg.m_psw)
		{
			AfxMessageBox("�������! ", MB_ICONINFORMATION);
			return;
		}
	}

	UpdateData();
	ReCharge dlg;
	dlg.m_name = m_name;			// *�û���;
	dlg.m_no = m_memberno;		// ����;
	dlg.m_balance = m_balance;	// ���;
	dlg.m_bout = 1;				// ����;

	if (dlg.DoModal() != IDOK)
		return;

	CString sql;
	sql = "insert into [memberreg3]([memberno],[money],[date],[clerk])values('" + m_memberno + "','-" + dlg.m_money + "','" + g_date + "','" + g_user.name + "')";
	// sql���û��ִ��,ֱ�ӱ������membercard3usereg����;
	// AfxMessageBox(sql);//Jeff Box;

#if 1
	CString strDescription = "����(" + g_user.name + ")";

	sql = "insert into [membercard3usereg]([memberno],[dindanid],[money],[date])values('" + m_memberno + "','" + strDescription + "','" + dlg.m_money + "','" + g_date + "')";
	sql += "***refresh balance memberreg3" + m_memberno;
#else // Jeff.�������ֶ�;
	CString strDescription = "����(" + g_user.name+ ")" ;

	sql="insert into [membercard3usereg]([memberno],[dindanid],[money],[date],[ModeOfPayment],[Cashier])values('"+m_memberno+"','"+strDescription+"','"+dlg.m_money+"','"+g_date+ "','"+ "�ֽ�" + "','" + g_user.name + "')";
	sql+="***refresh balance memberreg3"+m_memberno;
#endif
	//printf("Jeff:sql=%s\n\n",sql);//JeffDebug

	g_sendhead.bsql = 1;
	g_pMainWnd->ProcessChatMessageRequest2(sql);
	if (g_bSendOK == 0)
		return;
	AfxMessageBox("���ֳɹ�!");

	CString filter = "[memberno]='" + m_memberno + "'";
	g_sendhead.bsql = 0;
	g_sendhead.code[0] = 68;
	g_sendhead.tabcount = 1;
	g_pMainWnd->ProcessChatMessageRequest2(filter);
	if (g_bSendOK == 0)
	{
		CDialog::OnCancel();
		return;
	}
	CArray<CStringArray, CStringArray>m_List1array;
	DataToArray(&m_List1array);
	CenterWindow();
	if (m_List1array.GetSize() == 0)
	{
		AfxMessageBox("û���ҵ��˿� " + m_memberno + " �ļ�¼");
		GetDlgItem(IDC_BUTTON20)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON30)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON21)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON24)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON25)->EnableWindow(0);

		GetDlgItem(IDC_BUTTON26)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON29)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON27)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON31)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON28)->EnableWindow(0);
		return;
	}
	m_memberno = m_List1array.ElementAt(0).ElementAt(1);
	m_point = m_List1array.ElementAt(0).ElementAt(9);
	m_balance = m_List1array.ElementAt(0).ElementAt(12);
	m_name = m_List1array.ElementAt(0).ElementAt(2);
	m_phone = m_List1array.ElementAt(0).ElementAt(4);
	UpdateData(0);
	if (atoi(g_cominfoarray.ElementAt(0).ElementAt(122)))	// msgcheck16
	{
		CString sql, str, timestamp;
		timestamp = "msgtimestamp";
		{
			if (m_name.IsEmpty() == 0 && CheckPhoneType(m_phone) != -1)
			{
				str.Format("%s���ã�����������%dԪ�������:%dԪ����л����֧��!", m_name, atoi(dlg.m_money), atoi(m_balance));
				int count = GetLengthEx(str) / MSG_LENGTH;
				if (GetLengthEx(str) % MSG_LENGTH)
					count++;
				CString scount;
				scount.Format("%d", count);
#if JEFF_TEST_ON
				sql.Format(INSERT_SENDREG, _T("16"), m_phone, str, timestamp, scount, _T("0"), _T("0"), _T("0"), _T("ϵͳ�Զ�����"));
#else
				sql = "insert into sendreg([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('" + m_phone + "','" + str + "','" + timestamp + "','" + scount + "','0','0','0','ϵͳ�Զ�����')";
#endif
			}
		}
		g_sendhead.bsql = 1;
		g_pMainWnd->ProcessChatMessageRequest2(sql);
	}
}

void MemberCardFunc2::OnButton20() // ��ֵ��ť;
{
	UpdateData();
	ReCharge dlg;
	dlg.m_name = m_name;			// ��Ա;
	dlg.m_no = m_memberno;			// ����;
	dlg.m_balance = m_balance;		// ��ֵ���;

	if (dlg.DoModal() != IDOK)return;
	CString sql;
#if JEFF_TEST_ON
	CSQLStatementImpl::GetInstancePtr()->ReSetKind(_T("[memberreg3]"), NULL, KIND_INSERT, 10);
	CSQLStatementImpl::GetInstancePtr()->AddElement(_T("[memberno]"), m_memberno);
	CSQLStatementImpl::GetInstancePtr()->AddElement(_T("[money]"), dlg.m_money);
	CSQLStatementImpl::GetInstancePtr()->AddElement(_T("[money2]"), dlg.m_money2);
	CSQLStatementImpl::GetInstancePtr()->AddElement(_T("[date]"), g_date);
	CSQLStatementImpl::GetInstancePtr()->AddElement(_T("[time]"), _T("curtimereplace"));
	CSQLStatementImpl::GetInstancePtr()->AddElement(_T("[clerk]"), g_user.name);
	CSQLStatementImpl::GetInstancePtr()->AddElement(_T("[moneytype]"), dlg.paytype);
	CSQLStatementImpl::GetInstancePtr()->AddElement(_T("[bz]"), dlg.m_strRechargeRemark);	// ��ֵ��ע;
	CSQLStatementImpl::GetInstancePtr()->ReturnSQL(sql);
#else
	sql = "insert into [memberreg3]([memberno],[money],[money2],[date],[time],[clerk],[moneytype])values('" + m_memberno + "','" + dlg.m_money + "','" + dlg.m_money2 + "','" + g_date + "','curtimereplace','" + g_user.name + "','" + dlg.paytype + "')";
#endif
	sql += _T("***refresh balance memberreg3") + m_memberno;

	g_sendhead.bsql = 1;
	g_pMainWnd->ProcessChatMessageRequest2(sql);
	if (g_bSendOK == 0)
		return;

	AfxMessageBox(_T("��ֵ�ɹ�!"));

	CString filter = _T("[memberno]='") + m_memberno + _T("'");
	g_sendhead.bsql = 0;
	g_sendhead.code[0] = 68;
	g_sendhead.tabcount = 1;
	g_pMainWnd->ProcessChatMessageRequest2(filter);
	if (g_bSendOK == 0)
	{
		CDialog::OnCancel();
		return;
	}
	CArray<CStringArray, CStringArray>m_List1array;
	DataToArray(&m_List1array);
	CenterWindow();
	if (m_List1array.GetSize() == 0)
	{
		AfxMessageBox(_T("û���ҵ��˿� ") + m_memberno + _T(" �ļ�¼"));
		GetDlgItem(IDC_BUTTON20)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON30)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON21)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON24)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON25)->EnableWindow(0);

		GetDlgItem(IDC_BUTTON26)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON29)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON27)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON31)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON28)->EnableWindow(0);
		return;
	}
	m_memberno = m_List1array.ElementAt(0).ElementAt(1);
	m_point = m_List1array.ElementAt(0).ElementAt(9);
	m_balance = m_List1array.ElementAt(0).ElementAt(12);
	m_name = m_List1array.ElementAt(0).ElementAt(2);
	m_phone = m_List1array.ElementAt(0).ElementAt(4);
	UpdateData(0);

	if (atoi(g_cominfoarray.ElementAt(0).ElementAt(122)))
	{
		CString sql, str, timestamp;
		timestamp = _T("msgtimestamp");
		{
			if (m_name.IsEmpty() == 0 && CheckPhoneType(m_phone) != -1)
			{
				str.Format(_T("%s���ã����ɹ���ֵ%dԪ�������:%dԪ����л����֧��!"), m_name, atoi(dlg.m_money) + atoi(dlg.m_money2), atoi(m_balance));
				int count = GetLengthEx(str) / MSG_LENGTH;
				if (GetLengthEx(str) % MSG_LENGTH)
					count++;
				CString scount;
				scount.Format(_T("%d"), count);
#if JEFF_TEST_ON
				sql.Format(INSERT_SENDREG, _T("16"), m_phone, str, timestamp, scount, _T("0"), _T("0"), _T("0"), _T("ϵͳ�Զ�����"));
#else
				sql = "insert into sendreg([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('" + m_phone + "','" + str + "','" + timestamp + "','" + scount + "','0','0','0','ϵͳ�Զ�����')";
#endif
			}
		}
		g_sendhead.bsql = 1;
		g_pMainWnd->ProcessChatMessageRequest2(sql);
	}
}

void MemberCardFunc2::OnButton21() // ��ֵ��¼;
{
	ReChargeReg dlg;
	dlg.m_mode = 0;
	dlg.m_name = m_name;
	dlg.m_phone = m_phone;
	dlg.m_no = m_memberno;

	dlg.m_memberno = m_memberno;
	dlg.DoModal();
	CString filter = _T("[memberno]='") + m_memberno + _T("'");
	g_sendhead.bsql = 0;
	g_sendhead.code[0] = 68;
	g_sendhead.tabcount = 1;
	g_pMainWnd->ProcessChatMessageRequest2(filter);
	if (g_bSendOK == 0)
	{
		CDialog::OnCancel();
		return;
	}
	CArray<CStringArray, CStringArray>m_List1array;
	DataToArray(&m_List1array);
	CenterWindow();
	if (m_List1array.GetSize() == 0)
	{
		AfxMessageBox(_T("û���ҵ��˿� ") + m_memberno + _T(" �ļ�¼"));
		GetDlgItem(IDC_BUTTON20)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON30)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON21)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON24)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON25)->EnableWindow(0);

		GetDlgItem(IDC_BUTTON26)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON27)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON31)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON28)->EnableWindow(0);
		return;
	}
	m_memberno = m_List1array.ElementAt(0).ElementAt(1);
	m_point = m_List1array.ElementAt(0).ElementAt(9);
	m_balance = m_List1array.ElementAt(0).ElementAt(12);
	m_name = m_List1array.ElementAt(0).ElementAt(2);
	m_phone = m_List1array.ElementAt(0).ElementAt(4);
	UpdateData(0);
}

void MemberCardFunc2::OnButton24() // ʹ�ü�¼;
{
	// TODO: Add your control notification handler code here
	ReChargeReg dlg;
	dlg.m_mode = 2;
	dlg.m_memberno = m_memberno;
	dlg.DoModal();

	CString filter = "[memberno]='" + m_memberno + "'";
	g_sendhead.bsql = 0;
	g_sendhead.code[0] = 68;
	g_sendhead.tabcount = 1;
	g_pMainWnd->ProcessChatMessageRequest2(filter);
	if (g_bSendOK == 0)
	{
		CDialog::OnCancel();
		return;
	}
	CArray<CStringArray, CStringArray>m_List1array;
	DataToArray(&m_List1array);
	CenterWindow();
	if (m_List1array.GetSize() == 0)
	{
		AfxMessageBox("û���ҵ��˿� " + m_memberno + " �ļ�¼");
		GetDlgItem(IDC_BUTTON20)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON30)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON21)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON24)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON25)->EnableWindow(0);

		GetDlgItem(IDC_BUTTON26)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON27)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON31)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON28)->EnableWindow(0);
		return;
	}
	m_memberno = m_List1array.ElementAt(0).ElementAt(1);
	m_point = m_List1array.ElementAt(0).ElementAt(9);
	m_balance = m_List1array.ElementAt(0).ElementAt(12);
	m_name = m_List1array.ElementAt(0).ElementAt(2);
	m_phone = m_List1array.ElementAt(0).ElementAt(4);
	UpdateData(0);
}

void MemberCardFunc2::OnButton25() // �����ֽ��ӿ�;
{
	// TODO: Add your control notification handler code here
	if (IsHasRights2new(18) == 0)return;
	// TODO: Add your control notification handler code here
	InputCard3Dlg dlg;
	dlg.m_name = m_name;
	dlg.m_no = m_memberno;
	dlg.DoModal();
}

void MemberCardFunc2::OnButton27() // Ϊ�ӿ���ֵ;
{
	ReCharge dlg;
	dlg.m_mode = 1;
	dlg.m_name = m_name;
	dlg.m_balance = m_balance;
	dlg.m_no = m_memberno;
	dlg.m_card2no = m_card2no;
	if (dlg.DoModal() != IDOK)return;
	CString sql;
	sql = "insert into [memberreg4]([memberno],[card2no],[money],[date],[clerk])values('" + m_memberno + "','" + m_card2no + "','" + dlg.m_money + "','" + g_date + "','" + g_user.name + "')";
	sql += "***refresh balance memberreg4" + m_memberno + ";" + m_card2no;
	g_sendhead.bsql = 1;
	g_pMainWnd->ProcessChatMessageRequest2(sql);
	if (g_bSendOK == 0)
		return;

	CString filter = "[memberno]='" + m_memberno + "'";
	g_sendhead.bsql = 0;
	g_sendhead.code[0] = 68;
	g_sendhead.tabcount = 1;
	g_pMainWnd->ProcessChatMessageRequest2(filter);
	if (g_bSendOK == 0)
	{
		CDialog::OnCancel();
		return;
	}
	CArray<CStringArray, CStringArray>m_List1array;
	DataToArray(&m_List1array);
	CenterWindow();
	if (m_List1array.GetSize() == 0)
	{
		AfxMessageBox("û���ҵ��˿� " + m_memberno + " �ļ�¼");
		GetDlgItem(IDC_BUTTON20)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON30)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON21)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON24)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON25)->EnableWindow(0);

		GetDlgItem(IDC_BUTTON26)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON27)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON31)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON28)->EnableWindow(0);
		return;
	}
	m_memberno = m_List1array.ElementAt(0).ElementAt(1);
	m_point = m_List1array.ElementAt(0).ElementAt(9);
	m_balance = m_List1array.ElementAt(0).ElementAt(12);
	m_name = m_List1array.ElementAt(0).ElementAt(2);
	m_phone = m_List1array.ElementAt(0).ElementAt(4);
	UpdateData(0);
	if (atoi(g_cominfoarray.ElementAt(0).ElementAt(122)))
	{
		CString sql, str, timestamp;
		timestamp = "msgtimestamp";
		{
			if (m_name.IsEmpty() == 0 && CheckPhoneType(m_phone) != -1)
			{
				str.Format("%s���ã���Ϊ����Ϊ%s���ӿ���ֵ%dԪ�������:%dԪ����л����֧��!", m_name, m_card2no, atoi(dlg.m_money), atoi(m_balance));
				int count = GetLengthEx(str) / MSG_LENGTH;
				if (GetLengthEx(str) % MSG_LENGTH)
					count++;
				CString scount;
				scount.Format("%d", count);
#if JEFF_TEST_ON
				sql.Format(INSERT_SENDREG, _T("16"), m_phone, str, timestamp, scount, _T("0"), _T("0"), _T("0"), _T("ϵͳ�Զ�����"));
#else
				sql = "insert into sendreg([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('" + m_phone + "','" + str + "','" + timestamp + "','" + scount + "','0','0','0','ϵͳ�Զ�����')";
#endif
			}
		}
		g_sendhead.bsql = 1;
		g_pMainWnd->ProcessChatMessageRequest2(sql);
	}
}

void MemberCardFunc2::OnButton28() // �ӿ���ֵ��¼;
{
	ReChargeReg dlg;
	dlg.m_mode = 1;
	dlg.m_memberno = m_memberno;
	dlg.m_card2no = m_card2no;
	dlg.DoModal();
	if (dlg.m_bNeedRefsh == 0)return;
	CString filter = "[memberno]='" + m_memberno + "'";
	g_sendhead.bsql = 0;
	g_sendhead.code[0] = 68;
	g_sendhead.tabcount = 1;
	g_pMainWnd->ProcessChatMessageRequest2(filter);
	if (g_bSendOK == 0)
	{
		CDialog::OnCancel();
		return;
	}
	CArray<CStringArray, CStringArray>m_List1array;
	DataToArray(&m_List1array);
	CenterWindow();
	if (m_List1array.GetSize() == 0)
	{
		AfxMessageBox("û���ҵ��˿� " + m_memberno + " �ļ�¼");
		GetDlgItem(IDC_BUTTON20)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON30)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON21)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON24)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON25)->EnableWindow(0);

		GetDlgItem(IDC_BUTTON26)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON27)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON31)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON28)->EnableWindow(0);
		return;
	}
	m_memberno = m_List1array.ElementAt(0).ElementAt(1);
	m_point = m_List1array.ElementAt(0).ElementAt(9);
	m_balance = m_List1array.ElementAt(0).ElementAt(12);
	m_name = m_List1array.ElementAt(0).ElementAt(2);
	m_phone = m_List1array.ElementAt(0).ElementAt(4);
	UpdateData(0);
}

void MemberCardFunc2::OnButton26()	// �ӿ�ʹ�ü�¼;
{
	ReChargeReg dlg;
	dlg.m_mode = 3;
	dlg.m_memberno = m_memberno;
	dlg.m_card2no = m_card2no;
	dlg.DoModal();
}

void MemberCardFunc2::OnButton29()	// ע���˿�;
{
	if (IsHasRights2new(49) == 0)return;

	if (AfxMessageBox("ע���󽫲��ɻָ�, ȷ����?", MB_YESNO | MB_ICONINFORMATION) != IDYES)return;
	CString filter;
	g_sendhead.bsql = 0;
	filter = "[memberno]='" + m_card2no + "'";
	g_sendhead.code[0] = 166;
	g_sendhead.tabcount = 1;
	g_pMainWnd->ProcessChatMessageRequest2(filter); if (g_bSendOK == 0)return;
	DataToArray(&g_List1array);
	int usedmoney = 0;
	for (int i = 0; i < g_List1array.GetSize(); i++)
	{
		usedmoney += atoi(g_List1array.ElementAt(i).ElementAt(3));
	}
	CString sql;
	sql = "delete from membercard3 where [memberno]='" + m_memberno + "' and [card2no]='" + m_card2no + "'";
	sql += "***delete from memberreg4 where [memberno]='" + m_memberno + "' and [card2no]='" + m_card2no + "'";
	sql += "***delete from membercard3childusereg where [memberno]='" + m_card2no + "'";
	if (usedmoney)
	{
		CString remark, money;
		money.Format("%d", usedmoney);
		remark.Format("ע���ӿ�%s�۷�", m_card2no);
		sql += "***insert into [membercard3usereg]([memberno],[dindanid],[money],[date])values('" + m_memberno + "','" + remark + "','" + money + "','" + g_date + "')";
		sql += "***refresh balance memberreg3"; sql += m_memberno;

	}

	g_sendhead.bsql = 1;
	g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
	AfxMessageBox("ע���ɹ�!");	CDialog::OnCancel();
}

void MemberCardFunc2::OnButton31() // Ϊ�ӿ�����;
{
	if (m_psw != "")
	{
		AfxMessageBox("�˿����������룬����������?", MB_ICONINFORMATION);
		InputPsw2 dlg;
		if (dlg.DoModal() != IDOK)return;
		if (m_psw != dlg.m_psw)
		{
			AfxMessageBox("�������! ", MB_ICONINFORMATION);
			return;
		}
	}

	ReCharge dlg;
	dlg.m_mode = 1;
	dlg.m_bout = 1;
	dlg.m_name = m_name;
	dlg.m_balance = m_card2balance;
	dlg.m_no = m_memberno;
	dlg.m_card2no = m_card2no;
	if (dlg.DoModal() != IDOK)return;
	CString sql;

	CString m_id = "����(" + g_user.name + ")";

	sql = "insert into [membercard3childusereg]([memberno],[dindanid],[money],[date])values('" + m_card2no + "','" + m_id + "','" + dlg.m_money + "','" + g_date + "')";
	sql += "***refresh balance memberreg4" + m_memberno + ";" + m_card2no;

	g_sendhead.bsql = 1;
	g_pMainWnd->ProcessChatMessageRequest2(sql);
	if (g_bSendOK == 0)
		return;

	sql.Format("%d", atoi(m_card2balance) - atoi(dlg.m_money));
	m_card2balance = sql;

	CString filter = "[memberno]='" + m_memberno + "'";
	g_sendhead.bsql = 0;
	g_sendhead.code[0] = 68;
	g_sendhead.tabcount = 1;
	g_pMainWnd->ProcessChatMessageRequest2(filter);
	if (g_bSendOK == 0)
	{
		CDialog::OnCancel();
		return;
	}
	CArray<CStringArray, CStringArray>m_List1array;
	DataToArray(&m_List1array);
	CenterWindow();
	if (m_List1array.GetSize() == 0)
	{
		AfxMessageBox("û���ҵ��˿� " + m_memberno + " �ļ�¼");
		GetDlgItem(IDC_BUTTON20)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON30)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON21)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON24)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON25)->EnableWindow(0);

		GetDlgItem(IDC_BUTTON26)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON27)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON31)->EnableWindow(0);
		GetDlgItem(IDC_BUTTON28)->EnableWindow(0);
		return;
	}
	m_memberno = m_List1array.ElementAt(0).ElementAt(1);
	m_point = m_List1array.ElementAt(0).ElementAt(9);
	m_balance = m_List1array.ElementAt(0).ElementAt(12);
	m_name = m_List1array.ElementAt(0).ElementAt(2);
	m_phone = m_List1array.ElementAt(0).ElementAt(4);
	UpdateData(0);
}

void MemberCardFunc2::OnButton33()	// ��������;
{
	if (m_psw != "")
	{
		if (AfxMessageBox("�˿����������룬�Ƿ��޸�����?", MB_ICONINFORMATION | MB_YESNO) != IDYES)return;
		InputPsw2 dlg;
		dlg.m_mode = 1;
		if (dlg.DoModal() != IDOK)return;
		if (m_psw != dlg.m_psw)
		{
			if (IsHasRights2new(49))
			{
				if (AfxMessageBox("�������! �Ƿ���������?", MB_ICONINFORMATION | MB_YESNO) != IDYES)return;
			}
			else
			{
				AfxMessageBox("�������! �����������֪ͨ����Ա�������롣");
				return;
			}
		}
	}
ll:	InputPsw2 dlg;
	if (dlg.DoModal() != IDOK)return;
	CString psw1 = dlg.m_psw;
	dlg.m_psw = "";
	if (dlg.DoModal() != IDOK)return;
	if (dlg.m_psw != psw1)
	{
		AfxMessageBox("ǰ�����벻һ�£�����������!");
		goto ll;
	}

	CString sql;
	if (!m_card2no.IsEmpty())//�ӿ�
	{
		sql = "update membercard3 set psw='" + psw1 + "' where [memberno]='" + m_memberno + "' and [card2no]='" + m_card2no + "'";
	}
	else
	{
		sql = "update membermanage set psw='" + psw1 + "' where [memberno]='" + m_memberno + "' ";
	}
	g_sendhead.bsql = 1;
	g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
	AfxMessageBox("��������ɹ�!");
	m_psw = psw1;
}

void MemberCardFunc2::OnDestroy()
{
	CDialog::OnDestroy();

	// TODO: Add your message handler code here
	if (g_bAllBranch)
	{
		g_pMainWnd->OnDisconnect(); g_bBranchModify = 0; g_branchip = g_branchname = "";
	}
}