// DLG_Agent_Pay_Modify.cpp : implementation file
//

#include "stdafx.h"
#include "smsmanager.h"
#include "DLG_Agent_Pay_Modify.h"

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

/////////////////////////////////////////////////////////////////////////////
// DLG_Agent_Pay_Modify dialog


DLG_Agent_Pay_Modify::DLG_Agent_Pay_Modify(CWnd* pParent /*=NULL*/)
	: CDialog(DLG_Agent_Pay_Modify::IDD, pParent)
	, m_tYSTime(COleDateTime::GetCurrentTime())
{
	//{{AFX_DATA_INIT(DLG_Agent_Pay_Modify)
	m_strCreateUser = _T("");
	m_strPayMode = _T("");
	m_strPayName = _T("");
	m_strPayTime = _T("");
	m_strBZ = _T("");
	m_strPresent = _T("");
	m_strPrice = _T("");
	m_strPriceOne = _T("");
	m_bTest = FALSE;
	m_bYS = FALSE;
	m_strSmsCount = _T("");
	m_bFP = FALSE;
	m_tOvrTime = COleDateTime::GetCurrentTime();
	m_lLPType = -1;
	m_strLPPrice = _T("");
	m_lYSType = -1;
	//}}AFX_DATA_INIT
	memset( &m_Pay , 0 , sizeof(m_Pay) );
	m_bAdd = true;
	m_bTest2= false;

	m_fPriceOne=0.10f;
	memset(&m_PayReq , 0 , sizeof(m_PayReq));
	m_pMemberData=NULL;

	memset(&m_agent,0,sizeof(m_agent));
}


void DLG_Agent_Pay_Modify::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(DLG_Agent_Pay_Modify)
	DDX_Control(pDX, IDC_AGENT_PAYMODIFY_PAYMODE, m_L_PayMode);
	DDX_Control(pDX, IDC_AGENT_PAYMODIFY_LXRID, m_L_LXRID);
	DDX_Text(pDX, IDC_AGENT_PAYMODIFY_CREATEUSER, m_strCreateUser);
	DDX_CBString(pDX, IDC_AGENT_PAYMODIFY_PAYMODE, m_strPayMode);
	DDV_MaxChars(pDX, m_strPayMode, 16);
	DDX_Text(pDX, IDC_AGENT_PAYMODIFY_PAYNAME, m_strPayName);
	DDV_MaxChars(pDX, m_strPayName, 16);
	DDX_Text(pDX, IDC_AGENT_PAYMODIFY_PAYTIME, m_strPayTime);
	DDX_Text(pDX, IDC_AGENT_PAYMODIFY_BZ, m_strBZ);
	DDV_MaxChars(pDX, m_strBZ, 220);
	DDX_Text(pDX, IDC_AGENT_PAYMODIFY_PRESEND, m_strPresent);
	DDV_MaxChars(pDX, m_strPresent, 16);
	DDX_Text(pDX, IDC_AGENT_PAYMODIFY_JFPRICE, m_strPrice);
	DDV_MaxChars(pDX, m_strPrice, 16);
	DDX_Text(pDX, IDC_AGENT_PAYMODIFY_PRICEONE, m_strPriceOne);
	DDV_MaxChars(pDX, m_strPriceOne, 16);
	DDX_Check(pDX, IDC_AGENT_PAYMODIFY_TEST, m_bTest);
	DDX_Check(pDX, IDC_AGENT_PAYMODIFY_YS, m_bYS);
	DDX_Text(pDX, IDC_AGENT_PAYMODIFY_SMSCOUNT, m_strSmsCount);
	DDV_MaxChars(pDX, m_strSmsCount, 16);
	DDX_Check(pDX, IDC_AGENT_PAYMODIFY_FP, m_bFP);
	DDX_DateTimeCtrl(pDX, IDC_AGENT_PAYMODIFY_OVRTIME, m_tOvrTime);
	DDX_CBIndex(pDX, IDC_AGENT_PAYMODIFY_LPTYPE, m_lLPType);
	DDX_CBString(pDX, IDC_AGENT_PAYMODIFY_LPPRICE, m_strLPPrice);
	DDV_MaxChars(pDX, m_strLPPrice, 8);
	DDX_CBIndex(pDX, IDC_AGENT_PAYMODIFY_YSTYPE, m_lYSType);
	//}}AFX_DATA_MAP
	DDX_DateTimeCtrl(pDX, IDC_AGENT_PAYMODIFY_YSTIME, m_tYSTime);
}


BEGIN_MESSAGE_MAP(DLG_Agent_Pay_Modify, CDialog)
	//{{AFX_MSG_MAP(DLG_Agent_Pay_Modify)
	ON_EN_CHANGE(IDC_AGENT_PAYMODIFY_JFPRICE, OnChangeAgentPaymodifyJfprice)
	ON_EN_CHANGE(IDC_AGENT_PAYMODIFY_PRICEONE, OnChangeAgentPaymodifyPriceone)
	ON_EN_CHANGE(IDC_AGENT_PAYMODIFY_PRESEND, OnChangeAgentPaymodifyPresend)
	ON_CBN_SELCHANGE(IDC_AGENT_PAYMODIFY_PAYMODE, OnSelchangeAgentPaymodifyPaymode)
	ON_WM_TIMER()
	//}}AFX_MSG_MAP
	ON_BN_CLICKED(IDOK, &DLG_Agent_Pay_Modify::OnBnClickedOk)
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// DLG_Agent_Pay_Modify message handlers

ANS_Agent_PayData DLG_Agent_Pay_Modify::GetParam()
{
	return m_Pay;
}

void DLG_Agent_Pay_Modify::SetParam(ANS_Agent_Pay payReq , ANS_Agent_PayData pay, ANS_Corp_MemberData * pMemberData, BOOL bAdd,ANS_Agent_SeeData agent)
{
	m_PayReq = payReq;
	m_Pay = pay;
	m_pMemberData = pMemberData;
	m_bAdd = bAdd;
	m_agent = agent;

}

BOOL DLG_Agent_Pay_Modify::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
#ifdef SMSCENTER_NX	
	m_L_PayMode.ResetContent();
	m_L_PayMode.AddString(_T("�ֽ�"));
	m_L_PayMode.AddString(_T("����1"));
	m_L_PayMode.AddString(_T("����2"));
	m_L_PayMode.AddString(_T("����3"));
	m_L_PayMode.AddString(_T("����4"));
	m_L_PayMode.AddString(_T("����5"));
	m_L_PayMode.AddString(_T("����6"));
	m_L_PayMode.AddString(_T("����7"));
	m_L_PayMode.AddString(_T("����8"));
	m_L_PayMode.AddString(_T("����9"));
	m_L_PayMode.SetCurSel(0);

	//GetDlgItem(IDC_AGENT_PAYMODIFY_PAYMODE)->ShowWindow(SW_HIDE);
	//GetDlgItem(IDC_AGENT_PAYMODIFY_PAYMODE_S)->ShowWindow(SW_HIDE);
	GetDlgItem(IDC_AGENT_PAYMODIFY_YS)->ShowWindow(SW_HIDE);
	GetDlgItem(IDC_AGENT_PAYMODIFY_TEST)->ShowWindow(SW_HIDE);
	//GetDlgItem(IDC_AGENT_PAYMODIFY_FP)->ShowWindow(SW_HIDE);
	
	GetDlgItem(IDC_AGENT_PAYMODIFY_YSTYPE_S)->ShowWindow(SW_HIDE);
	GetDlgItem(IDC_AGENT_PAYMODIFY_YSTYPE)->ShowWindow(SW_HIDE);
	GetDlgItem(IDC_AGENT_PAYMODIFY_LP_S)->ShowWindow(SW_HIDE);
	GetDlgItem(IDC_AGENT_PAYMODIFY_LPTYPE)->ShowWindow(SW_HIDE);
	GetDlgItem(IDC_AGENT_PAYMODIFY_LPTYPE_S)->ShowWindow(SW_HIDE);
	GetDlgItem(IDC_AGENT_PAYMODIFY_LXRID)->ShowWindow(SW_HIDE);
	GetDlgItem(IDC_AGENT_PAYMODIFY_LXRID_S)->ShowWindow(SW_HIDE);
	GetDlgItem(IDC_AGENT_PAYMODIFY_LPPRICE)->ShowWindow(SW_HIDE);
	GetDlgItem(IDC_AGENT_PAYMODIFY_LPPRICE_S)->ShowWindow(SW_HIDE);
#endif
	if ( m_bAdd==1 )  //���������
	{
		m_tYSTime.SetStatus(COleDateTime::null);
//		COleDateTime ot = COleDateTime::GetCurrentTime();  //ȡ�õ���ʱ��
		SYSTEMTIME t;
		GetLocalTime(&t);
		COleDateTime ot(t);  //ȡ�õ���ʱ��
		t.wYear+=1; //�����������1��
		m_tOvrTime.SetDateTime(t.wYear,t.wMonth,t.wDay,t.wHour,t.wMinute,t.wSecond);
		UpdateData(false);
//
		m_bYS = true;   //�������г�ֵ������Ӧ��
		m_lYSType = 0;  //Ԥ������
		m_strPayMode = _T("Ӧ��");
		m_strPriceOne.Format( _T("%.4f"),m_fPriceOne);  //Ĭ�Ϸ���Ϊ0.10
		m_strPayTime.Format( _T("%04d.%02d.%02d %02d:%02d") , ot.GetYear(),ot.GetMonth(),ot.GetDay(),ot.GetHour(),ot.GetMinute() );
#ifdef SMSMANAGER_KF
		m_bYS = true;
		GetDlgItem(IDC_AGENT_PAYMODIFY_YS)->EnableWindow(false);
		GetDlgItem(IDC_AGENT_PAYMODIFY_PRESEND)->EnableWindow(false);
		GetDlgItem(IDC_AGENT_PAYMODIFY_YSTIME)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_AGENT_PAYMODIFY_YSTIME_S)->ShowWindow(SW_HIDE);
#endif
	}
	else
	{
		m_strPayName = m_Pay.szPayMan;
		m_strPayMode = m_Pay.szPayMode;

		m_strPrice.Format( _T("%.2f"),m_Pay.fPrice );
		m_strPriceOne.Format( _T("%.4f"),m_Pay.fPriceOne );
		m_strPresent.Format( _T("%d") , m_Pay.lPresent );
		m_strSmsCount.Format( _T("%d") , m_Pay.lSMSCount );

		m_strBZ = m_Pay.szBZ;
		m_strCreateUser = m_Pay.szCreateUser;
		m_strPayTime.Format( _T("%04d.%02d.%02d %02d:%02d"),m_Pay.tPayTime.wYear,m_Pay.tPayTime.wMonth,m_Pay.tPayTime.wDay,m_Pay.tPayTime.wHour,m_Pay.tPayTime.wMinute );

		COleDateTime tt(m_Pay.tOvrTime);
		if ( tt.GetStatus() == 0 )
			m_tOvrTime.SetDateTime( m_Pay.tOvrTime.wYear , m_Pay.tOvrTime.wMonth,m_Pay.tOvrTime.wDay,m_Pay.tOvrTime.wHour,m_Pay.tOvrTime.wMinute,m_Pay.tOvrTime.wSecond);
		else
			m_tOvrTime.SetStatus( COleDateTime::null );

		COleDateTime tt2(m_Pay.tYSTime);
		if ( tt2.GetStatus() == 0 )
			m_tYSTime.SetDateTime( m_Pay.tYSTime.wYear , m_Pay.tYSTime.wMonth,m_Pay.tYSTime.wDay,m_Pay.tYSTime.wHour,m_Pay.tYSTime.wMinute,m_Pay.tYSTime.wSecond);
		else
			m_tYSTime.SetStatus( COleDateTime::null );

		m_bYS   = m_Pay.bYS;
		m_bTest = m_Pay.bTest;
		m_bFP   = m_Pay.bFP;
		m_lYSType=m_Pay.lYSType;

		m_lLPType =  m_Pay.lLPType;
		m_strLPPrice.Format ( _T("%.2f") , m_Pay.fLPPrice );


		GetDlgItem(IDC_AGENT_PAYMODIFY_PAYNAME)->EnableWindow( false );
		GetDlgItem(IDC_AGENT_PAYMODIFY_PAYMODE)->EnableWindow( false );
		GetDlgItem(IDC_AGENT_PAYMODIFY_JFPRICE)->EnableWindow( false );
		GetDlgItem(IDC_AGENT_PAYMODIFY_PRICEONE)->EnableWindow( false );
		GetDlgItem(IDC_AGENT_PAYMODIFY_PRESEND)->EnableWindow( false );
		GetDlgItem(IDC_AGENT_PAYMODIFY_SMSCOUNT)->EnableWindow( false );
		GetDlgItem(IDC_AGENT_PAYMODIFY_YS)->EnableWindow( false );
		GetDlgItem(IDC_AGENT_PAYMODIFY_TEST)->EnableWindow( false );
		GetDlgItem(IDC_AGENT_PAYMODIFY_FP)->EnableWindow( false );
		GetDlgItem(IDC_AGENT_PAYMODIFY_OVRTIME)->EnableWindow(false);
		GetDlgItem(IDC_AGENT_PAYMODIFY_YSTYPE)->EnableWindow(false);
		GetDlgItem(IDC_AGENT_PAYMODIFY_YSTIME)->EnableWindow( false );
		GetDlgItem(IDC_AGENT_PAYMODIFY_LPTYPE)->EnableWindow(false);
		GetDlgItem(IDC_AGENT_PAYMODIFY_LXRID)->EnableWindow(false);
		GetDlgItem(IDC_AGENT_PAYMODIFY_LPPRICE)->EnableWindow(false);

		CEdit * pEdit =(CEdit * )GetDlgItem(IDC_AGENT_PAYMODIFY_BZ);
		pEdit->SetReadOnly(true);

#ifndef SMSMANAGER_KF
		if (m_bAdd == 2)
		{
			GetDlgItem(IDC_AGENT_PAYMODIFY_PAYMODE)->EnableWindow(true);
			GetDlgItem(IDC_AGENT_PAYMODIFY_TEST)->EnableWindow(true);
			GetDlgItem(IDC_AGENT_PAYMODIFY_YSTIME)->EnableWindow(true);
			GetDlgItem(IDC_AGENT_PAYMODIFY_LPTYPE)->EnableWindow(true);
			GetDlgItem(IDC_AGENT_PAYMODIFY_LXRID)->EnableWindow(true);
			GetDlgItem(IDC_AGENT_PAYMODIFY_LPPRICE)->EnableWindow(true);
		}
#endif
	}

	if ( m_bTest2 )
	{
		m_bTest = true;
		GetDlgItem(IDC_AGENT_PAYMODIFY_TEST)->EnableWindow( false );
	}

	//���ӻ�Ա
	long lSel = -1;
	for (int i = 0; i < m_PayReq.lMemberCount; i++)
	{
		int iItem = m_L_LXRID.AddString(CString(m_pMemberData[i].szName));
		m_L_LXRID.SetItemData(iItem, m_pMemberData[i].lLXRID);
		if (m_bAdd != 1)
		{
			if (m_pMemberData[i].lLXRID == m_Pay.lLXRID)
				lSel = i;
		}
	}
	if (m_bAdd != 1 && m_PayReq.lMemberCount > 0)
		m_L_LXRID.SetCurSel(lSel);


	this->UpdateData( false );

#ifdef SMSMANAGER_KF
	GetDlgItem(IDC_AGENT_PAYMODIFY_FP)->ShowWindow(SW_HIDE);
	GetDlgItem(IDC_AGENT_PAYMODIFY_YSTYPE)->ShowWindow(SW_HIDE);
	GetDlgItem(IDC_AGENT_PAYMODIFY_YSTYPE_S)->ShowWindow(SW_HIDE);
#endif
	
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}


void DLG_Agent_Pay_Modify::OnChangeAgentPaymodifyJfprice() 
{
	ResetSMSUsed();
}

void DLG_Agent_Pay_Modify::OnChangeAgentPaymodifyPriceone() 
{
	ResetSMSUsed();
}

void DLG_Agent_Pay_Modify::OnChangeAgentPaymodifyPresend() 
{
	ResetSMSUsed();
}

void DLG_Agent_Pay_Modify::ResetSMSUsed()
{
	this->UpdateData( true );

	m_Pay.fPrice = _tstof( m_strPrice );
	m_Pay.fPriceOne = _tstof( m_strPriceOne );
	if ( m_Pay.fPriceOne <= 0 )
	{
		m_Pay.lSMSCount = 0;
	}
	else
	{
		m_Pay.lPresent = _ttol( m_strPresent );
		double l = m_Pay.fPrice/m_Pay.fPriceOne;
		long a = long(l+0.5f);
		if ( l< 0 )
			a = long(l-0.5f);
		m_Pay.lSMSCount = (long)a + m_Pay.lPresent;
	}

	m_strSmsCount.Format( _T("%d") , m_Pay.lSMSCount );
	this->UpdateData( false );
}

BOOL DLG_Agent_Pay_Modify::SetTest(BOOL bTest, double fPriceOne)
{
	m_bTest2 = bTest;
	m_fPriceOne = fPriceOne;
	return m_bTest2;
}

void DLG_Agent_Pay_Modify::OnSelchangeAgentPaymodifyPaymode() 
{
	if ( !m_bAdd )
		return ;
	SetTimer(2 , 10 , NULL );	
}

void DLG_Agent_Pay_Modify::OnTimer(UINT nIDEvent) 
{

	CDialog::OnTimer(nIDEvent);

	if ( nIDEvent == 2 )
	{
		KillTimer(nIDEvent);
		UpdateData(true);
		
		CEdit * pEdit = (CEdit *)GetDlgItem(IDC_AGENT_PAYMODIFY_PAYMODE);
		CString strPayMode;
		pEdit->GetWindowText(strPayMode);
		
		COleDateTime ot = COleDateTime::GetCurrentTime();  //ȡ�õ���ʱ��
		if ( strPayMode == CString(_T("����")) )
		{
			//�����������1��
			ot += COleDateTimeSpan(7,0,0,0);
			
			
			m_tOvrTime.SetDateTime(ot.GetYear(),ot.GetMonth(),ot.GetDay(),ot.GetHour(),ot.GetHour(),ot.GetSecond());
		}
		else
		{
			//�����������1��
			m_tOvrTime.SetDateTime(ot.GetYear()+1,ot.GetMonth(),ot.GetDay(),ot.GetHour(),ot.GetHour(),ot.GetSecond());
		}
		UpdateData(false);
	}
}


void DLG_Agent_Pay_Modify::OnBnClickedOk() 
{
	//����������ӣ�ֱ�ӷ���
	if (m_bAdd <= 0)
	{
		CDialog::OnCancel();
		return;
	}

	this->UpdateData( true );
/*
	if ( m_strPayName.GetLength() <= 0 )
	{
		MessageBox( _T("��ֵ����������Ϊ�գ�������!") , _T("����") , MB_ICONWARNING );
		GetDlgItem(IDC_AGENT_PAYMODIFY_PAYNAME)->SetFocus();
		return ;
	}
*/

	_tcscpy( m_Pay.szPayMan , m_strPayName );
	_tcscpy( m_Pay.szPayMode , m_strPayMode );
	_tcscpy( m_Pay.szBZ  , m_strBZ );
	m_Pay.fPrice = _tstof( m_strPrice );
	m_Pay.fPriceOne = _tstof( m_strPriceOne );

	if ( m_Pay.fPriceOne <= 0 )
	{
		MessageBox( _T("���ŷ��ʲ���С���㣬��������ȷ�ķ���!") , _T("����") , MB_ICONWARNING );
		GetDlgItem(IDC_AGENT_PAYMODIFY_PRICEONE)->SetFocus();
		return ;
	}

	if (m_tYSTime.GetStatus() == COleDateTime::valid)
	{
		if (m_tYSTime > COleDateTime::GetCurrentTime())
		{
			MessageBox(_T("����ʱ�䲻�ܴ��ڵ��죡)"), _T("����"), MB_ICONWARNING);
			GetDlgItem(IDC_AGENT_PAYMODIFY_YSTIME)->SetFocus();
			return;
		}
		if (m_bAdd == 2 && (COleDateTime(m_Pay.tPayTime) > m_tYSTime) && ((COleDateTime(m_Pay.tPayTime) - m_tYSTime) > COleDateTimeSpan(30, 0, 0, 0))) //�������޸��տ�ʱ��ȳ�ֵʱ����ǰ1����
		{
			MessageBox(_T("�տ�ʱ�䲻�����ȳ�ֵʱ����ǰ30�գ�"), _T("����"), MB_ICONWARNING);
			GetDlgItem(IDC_AGENT_PAYMODIFY_YSTIME)->SetFocus();
			return;
		}
		m_tYSTime.GetAsSystemTime(m_Pay.tYSTime);
	}
	else
	{
		memset(&m_Pay.tYSTime, 0, sizeof(m_Pay.tYSTime));
	}

	if ( m_lLPType>0 /* && m_bAdd != 2*/)  //��ѡ����Ʒ����
	{
		m_Pay.lLXRID = 0;
		if (m_L_LXRID.GetCurSel() >= 0)
		{
			m_Pay.lLXRID = m_L_LXRID.GetItemData(m_L_LXRID.GetCurSel());
		}
		if (m_Pay.lLXRID <= 0)
		{
			MessageBox(_T("�˴γ�ֵѡ����������Ʒ��������ҵû�����û�Ա����������ҵ��ϵ�������û�Ա��"), _T("����"), MB_ICONWARNING);
			return;
		}
		m_Pay.fLPPrice = _tstof(m_strLPPrice);
		if (m_Pay.fLPPrice <= 0.0f || m_Pay.fLPPrice > 100000.0f)
		{
			MessageBox(_T("��������ȷ����Ʒ��ֵ�� "), _T("����"), MB_ICONWARNING);
			GetDlgItem(IDC_CORP_PAYMODIFY_LPPRICE)->SetFocus();
			return;
		}

		m_Pay.lLPType = m_lLPType;
	}
	else
	{
		m_Pay.lLPType = 0;
		m_Pay.lLXRID = 0;
		m_Pay.fLPPrice = 0.0f;
	}

	if (m_lYSType == 1 && m_strPayMode != CString(_T("Ԥ��Ʊ")) ||
		m_lYSType == 0 && m_strPayMode == CString(_T("Ԥ��Ʊ")))
	{
		MessageBox(_T("Ԥ��Ʊ�������ֵ��ʽ��ƥ�䣡"), _T("����"), MB_ICONWARNING);
		GetDlgItem(IDC_AGENT_PAYMODIFY_YSTYPE)->SetFocus();
		return;
	}

	if( m_lYSType==2 )
	{
		MessageBox(_T("�³�ֵ��Ԥ��Ʊ���Ͳ���ѡ���ϣ�") , _T("����") , MB_ICONWARNING);
		GetDlgItem(IDC_AGENT_PAYMODIFY_YSTYPE)->SetFocus();
		return ;
	}



	m_Pay.lYSType  = m_lYSType;

	m_Pay.lPresent = _ttol( m_strPresent );
	double l = m_Pay.fPrice/m_Pay.fPriceOne;
	long a = long(l+0.5f);
	if ( a<0 )
		a = long(l-0.5f);
	m_Pay.lSMSCount = (long)a + m_Pay.lPresent;
	m_Pay.bYS = m_bYS;
	m_Pay.bTest=m_bTest;
	m_Pay.bFP  =m_bFP;

	SYSTEMTIME t;GetSystemTime(&t);
	COleDateTime ot(t);
	if ( m_tOvrTime.GetStatus() == COleDateTime::valid && m_tOvrTime < ot )
	{
		MessageBox( _T("�������ڲ���С�ڽ��죬�����!") , _T("����") , MB_ICONWARNING );
		GetDlgItem(IDC_AGENT_PAYMODIFY_OVRTIME)->SetFocus();
		return ;
	}
#ifdef SMSMANAGER_KF
	if ( m_Pay.fPrice==0.0f &&  m_Pay.lPresent==0 && (m_tOvrTime.GetStatus() != COleDateTime::valid || m_tOvrTime-COleDateTime::GetCurrentTime()>COleDateTimeSpan(15,0,0,0)) )  //�ͷ��ģ����û�г�ֵ�����������ڹ���
	{
		MessageBox( _T("�������ڲ��ܹ��������!") , _T("����") , MB_ICONWARNING );
		GetDlgItem(IDC_AGENT_PAYMODIFY_OVRTIME)->SetFocus();
		return ;
	}
#endif
	if ( m_Pay.lPresent!=0 && m_strBZ.GetLength()<=4 )
	{
		MessageBox( _T("�����Ͷ��ţ�����ע��ԭ��!") , _T("����") , MB_ICONWARNING );
		GetDlgItem(IDC_AGENT_PAYMODIFY_BZ)->SetFocus();
		return ;
	}


	::GetLocalTime( &m_Pay.tPayTime );
	if ( m_tOvrTime.GetStatus() == 0 )
		m_tOvrTime.GetAsSystemTime( m_Pay.tOvrTime );
	else
		memset(&m_Pay.tOvrTime,0,sizeof(m_Pay.tOvrTime));
	
	::GetLocalTime( &m_Pay.tPayTime );
	
	if ( m_strPayMode != CString(_T("����")) && (m_Pay.fPrice==0.0f || m_Pay.lSMSCount==0) )  //�����½�Ŀͻ����������ڡ���Ҫ�жϽ���Ƿ�Ϊ0
	{
		int iRet = MessageBox( _T("һ�������ڻ����Ͳ�������ֵ���Ϊ0��\r\n�����ֵΪ���ڣ����ڳ�ֵ��ʽ��ֱ��ѡ��\"����\"��ϵͳ�Զ���������һ���ڡ�\r\n�Ƿ��ֹ�����ֵ��ʽ�޸ij����ڣ��粻�����ڣ��������޸Ķ�����Ч�ڡ�") , _T("����") , MB_ICONQUESTION|MB_YESNO );
		if ( iRet==IDYES )
		{
			GetDlgItem(IDC_AGENT_PAYMODIFY_PAYMODE)->SetFocus();
#ifdef SMSMANAGER_KF
			m_L_PayMode.SelectString(0,_T("����"));
			OnSelchangeAgentPaymodifyPaymode();
#endif
			return; 
		}
		else
		{
			m_Pay.tOvrTime = m_agent.tOvrTime;
		}
	}

	CDialog::OnOK();
}