CorpSms/DLG_Setup_SZGJ_GetMsg.cpp

485 lines
11 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// DLG_Setup_SZGJ_GetMsg.cpp : implementation file
//
#include "stdafx.h"
#include "corpsms.h"
#include "DLG_Setup_SZGJ_GetMsg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
#include "DLG_Send.h"
/////////////////////////////////////////////////////////////////////////////
// DLG_Setup_SZGJ_GetMsg dialog
DLG_Setup_SZGJ_GetMsg::DLG_Setup_SZGJ_GetMsg(CWnd* pParent /*=NULL*/)
: CDialog(DLG_Setup_SZGJ_GetMsg::IDD, pParent)
{
//{{AFX_DATA_INIT(DLG_Setup_SZGJ_GetMsg)
m_D_Date = COleDateTime::GetCurrentTime();
m_strMsg = _T("");
//}}AFX_DATA_INIT
m_bRefresh2 = false;
m_pDlg = (DLG_Send *)pParent;
memset(&m_Setup,0,sizeof(m_Setup));
}
void DLG_Setup_SZGJ_GetMsg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(DLG_Setup_SZGJ_GetMsg)
DDX_Control(pDX, IDC_SETUP_SZGJ_GETMSG_CARNO, m_E_CarNo);
DDX_Control(pDX, IDC_SETUP_SZGJ_GETMSG_MSG, m_E_Msg);
DDX_Control(pDX, IDC_SETUP_SZGJ_GETMSG_CD, m_C_CD);
DDX_DateTimeCtrl(pDX, IDC_SETUP_SZGJ_GETMSG_DATE, m_D_Date);
DDX_Text(pDX, IDC_SETUP_SZGJ_GETMSG_MSG, m_strMsg);
DDV_MaxChars(pDX, m_strMsg, 500);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(DLG_Setup_SZGJ_GetMsg, CDialog)
//{{AFX_MSG_MAP(DLG_Setup_SZGJ_GetMsg)
ON_CBN_SELCHANGE(IDC_SETUP_SZGJ_GETMSG_CD, OnSelchangeSetupSzgjGetmsgCd)
ON_NOTIFY(DTN_DATETIMECHANGE, IDC_SETUP_SZGJ_GETMSG_DATE, OnDatetimechangeSetupSzgjGetmsgDate)
ON_WM_DESTROY()
ON_NOTIFY(DTN_CLOSEUP, IDC_SETUP_SZGJ_GETMSG_DATE, OnCloseupSetupSzgjGetmsgDate)
ON_NOTIFY(NM_KILLFOCUS, IDC_SETUP_SZGJ_GETMSG_DATE, OnKillfocusSetupSzgjGetmsgDate)
ON_BN_CLICKED(IDOK2, OnOk2)
ON_BN_CLICKED(IDC_SETUP_SZGJ_GETMSG_CARNO_GET, OnSetupSzgjGetmsgCarnoGet)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// DLG_Setup_SZGJ_GetMsg message handlers
BOOL DLG_Setup_SZGJ_GetMsg::OnInitDialog()
{
CDialog::OnInitDialog();
/*
//Éú³ÉÊý¾Ý¿âÎļþÃû
m_strNameCD = m_Setup.szSZGJPath;
m_strNameCD = m_strNameCD+"\\";
m_strNameCD = m_strNameCD+MOBSET_SZGJ_CD;
m_strNameLine = m_Setup.szSZGJPath;
m_strNameLine = m_strNameLine+"\\";
m_strNameLine = m_strNameLine+MOBSET_SZGJ_LINE;
m_strNameJE = m_Setup.szSZGJPath;
m_strNameJE = m_strNameJE+"\\";
m_strNameJE = m_strNameJE+MOBSET_SZGJ_JE;
m_strNameJE2 = m_Setup.szSZGJPath;
m_strNameJE2 = m_strNameJE2+"\\";
m_strNameJE2 = m_strNameJE2+MOBSET_SZGJ_JE2;
Dbf dbf;
CString strTemp;
if ( !dbf.Use(m_strNameCD) )
{
strTemp.Format( "´ò¿ªÊý¾Ý¿â:%sʧ°Ü£¬Çë¼ì²é·¾¶ÉèÖã¡" , m_strNameCD );
MessageBox( strTemp , "´íÎó" , MB_ICONWARNING );
return true;
}
m_bRefresh2 = true;
char szTemp[256]={0};
long lItem = 0;
long lRecNum = dbf.RecNum();
for ( int i=0 ; i<lRecNum;i++ )
{
dbf.GoTo(i+1);
if ( !dbf.IsDelete() )
{
dbf.GetRecField( szTemp , "CDNAME" );
long lItem2 = m_C_CD.AddString( szTemp );
m_C_CD.SetItemData( lItem2 , (DWORD_PTR)(i+1) );
lItem++;
}
}
dbf.Close();
m_bRefresh2 = false;
if ( lItem>0 )
{
m_C_CD.SetCurSel(0);
RefreshMsg();
}
m_E_CarNo.LimitText( 10 );
*/
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void DLG_Setup_SZGJ_GetMsg::OnSelchangeSetupSzgjGetmsgCd()
{
RefreshMsg();
}
void DLG_Setup_SZGJ_GetMsg::OnDatetimechangeSetupSzgjGetmsgDate(NMHDR* pNMHDR, LRESULT* pResult)
{
*pResult = 0;
}
void DLG_Setup_SZGJ_GetMsg::RefreshMsg()
{
if ( m_bRefresh2 )
return ;
if ( !UpdateData(true) )
return ;
//Ê×ÏÈÈ¡³µ¶ÓID
long lItem = m_C_CD.GetCurSel();
if ( lItem < 0 )
return ;
CString strTemp = GetCDJEMsg(lItem);
m_E_Msg.SetWindowText( strTemp );
}
void DLG_Setup_SZGJ_GetMsg::OnDestroy()
{
m_bRefresh2 = true;
CDialog::OnDestroy();
}
void DLG_Setup_SZGJ_GetMsg::SetParam(SM_Setup setup)
{
m_Setup = setup;
}
void DLG_Setup_SZGJ_GetMsg::OnOK()
{
if(!UpdateData(true))
return ;
if ( m_strMsg.GetLength()<=0)
{
MessageBox( _T("ûÓÐÐÅÏ¢ÄÚÈÝ£¬ÇëÑ¡Ôñ³µ¶Ó»òÈÕÆÚÉú³ÉÄÚÈÝ£¡"),_T("´íÎó"),MB_ICONWARNING );
return ;
}
CDialog::OnOK();
}
void DLG_Setup_SZGJ_GetMsg::OnCloseupSetupSzgjGetmsgDate(NMHDR* pNMHDR, LRESULT* pResult)
{
*pResult = 0;
RefreshMsg();
}
void DLG_Setup_SZGJ_GetMsg::OnKillfocusSetupSzgjGetmsgDate(NMHDR* pNMHDR, LRESULT* pResult)
{
*pResult = 0;
RefreshMsg();
}
void DLG_Setup_SZGJ_GetMsg::OnOk2()
{
/*
if ( m_bRefresh2 )
return ;
if ( !UpdateData(true) )
return ;
CString strTemp;
char szCDID[32]={0};
char szCDName[256]={0};
char szCDMaster[256]={0};
char szCDMobile[256]={0};
Dbf dbf2;
BOOL b = dbf2.Use( m_strNameCD );
if (!b )
{
strTemp.Format( _T("´ò¿ªÊý¾Ý¿â:%sʧ°Ü£¬Çë¼ì²é·¾¶ÉèÖã¡") , m_strNameCD );
MessageBox( strTemp , _T("´íÎó") , MB_ICONWARNING );
return ;
}
//´ò¿ªÏß·¿â
Dbf dbf;
b = dbf.Use( m_strNameLine );
if (!b )
{
dbf2.Close();
strTemp.Format( "´ò¿ªÊý¾Ý¿â:%sʧ°Ü£¬Çë¼ì²é·¾¶ÉèÖã¡" , m_strNameLine );
MessageBox( strTemp , "´íÎó" , MB_ICONWARNING );
return ;
}
//ȡѡÔñµÄÈÕÆÚ
CString strDate;
strDate.Format( "%04d%02d%02d" , m_D_Date.GetYear(),m_D_Date.GetMonth(),m_D_Date.GetDay());
//´ò¿ª½ð¶î¿â
Dbf dbfje;
b = dbfje.Use( m_strNameJE );
if (!b )
{
dbf2.Close();
dbf.Close();
strTemp.Format( "´ò¿ªÊý¾Ý¿â:%sʧ°Ü£¬Çë¼ì²é·¾¶ÉèÖã¡" , m_strNameJE );
MessageBox( strTemp , "´íÎó" , MB_ICONWARNING );
return ;
}
long lcdcount = dbf2.RecNum();
long ljecount = dbfje.RecNum();
for ( int k=0 ; k<lcdcount; k++ )
{
dbf2.GoTo(k+1);
if ( dbf2.IsDelete() )
continue;
dbf2.GetRecField(szCDID ,"CDID");
dbf2.GetRecField(szCDName ,"CDNAME");
dbf2.GetRecField(szCDMaster ,"CDMASTER");
dbf2.GetRecField(szCDMobile ,"CDMOBILE");
//²éÕҴ˳µ¶Ó¶ÔÓ¦µÄÏß·¼°Æä½ð¶î
CString strMsg;
strMsg.Format( "%s%02dÔÂ%02dÈÕ£¬",szCDName,m_D_Date.GetMonth(),m_D_Date.GetDay());
float fTotal=0.0f;
char szTemp[64]={0};
char szTemp2[64]={0};
char szLineNo[64]={0};
long lCount = dbf.RecNum();
long lItem = 0;
for ( int i=0 ; i<lCount;i++ )
{
dbf.GoTo(i+1);
if ( !dbf.IsDelete() )
{
dbf.GetRecField(szTemp,"CDID");
if ( !_tcscmp(szTemp , szCDID ) )
{
dbf.GetRecField(szLineNo,"LINENO");
float fNoTotal=0.0f;
for ( int j=0 ; j<ljecount;j++ )
{
dbfje.GoTo(j+1);
if ( !dbfje.IsDelete() )
{
dbfje.GetRecField(szTemp,"LINENO");
dbfje.GetRecField(szTemp2,"INDATE");
if ( !_tcscmp(szLineNo,szTemp) &&
!_tcscmp(strDate,szTemp2) )
{
float fNo=0.0f;
dbfje.GetRecField(szTemp,"YRJE");
fNo = atof(szTemp)/100.0f;
fNoTotal += fNo;
}
}
}
strTemp.Format( "%s·%dÔª£¬",szLineNo,(long)(fNoTotal+0.5f) );
strMsg += strTemp;
lItem++;
}
}
}
Send_User user={0};
_tcscpy(user.szName , szCDName);
_tcscpy(user.szNickName,szCDMaster);
_tcscpy(user.szMobile,szCDMobile);
_tcscpy(user.szBZ,strMsg);
m_pDlg->AddUser(user);
}
dbf.Close();
dbfje.Close();
dbf2.Close();
m_strMsg = "\"%Memo%\"";
UpdateData(false);
CDialog::OnOK();
*/
return ;
}
CString DLG_Setup_SZGJ_GetMsg::GetCDJEMsg(long lItem)
{
CString strTemp;
CString strMsg;
/*
char szCDName[256]={0};
//È¡³µ¶ÓIDºÅ
long lRec = m_C_CD.GetItemData(lItem);
char szCDID[64]={0};
Dbf dbf;
BOOL b = dbf.Use( m_strNameCD );
if (!b )
{
strTemp.Format( "´ò¿ªÊý¾Ý¿â:%sʧ°Ü£¬Çë¼ì²é·¾¶ÉèÖã¡" , m_strNameCD );
MessageBox( strTemp , "´íÎó" , MB_ICONWARNING );
return CString("");
}
dbf.GoTo(lRec);
dbf.GetRecField(szCDID,"CDID" );
dbf.GetRecField(szCDName,"CDNAME" );
dbf.Close();
if ( _tcslen(szCDID)<=0 )
return CString("");
//´ò¿ªÏß·¿â
b = dbf.Use( m_strNameLine );
if (!b )
{
strTemp.Format( "´ò¿ªÊý¾Ý¿â:%sʧ°Ü£¬Çë¼ì²é·¾¶ÉèÖã¡" , m_strNameLine );
MessageBox( strTemp , "´íÎó" , MB_ICONWARNING );
return CString("");
}
//ȡѡÔñµÄÈÕÆÚ
CString strDate;
strDate.Format( "%04d%02d%02d" , m_D_Date.GetYear(),m_D_Date.GetMonth(),m_D_Date.GetDay());
//´ò¿ª½ð¶î¿â
Dbf dbfje;
b = dbfje.Use( m_strNameJE );
if (!b )
{
strTemp.Format( "´ò¿ªÊý¾Ý¿â:%sʧ°Ü£¬Çë¼ì²é·¾¶ÉèÖã¡" , m_strNameJE );
MessageBox( strTemp , "´íÎó" , MB_ICONWARNING );
return CString("");
}
long ljecount = dbfje.RecNum();
//²éÕҴ˳µ¶Ó¶ÔÓ¦µÄÏß·¼°Æä½ð¶î
strMsg.Format( "%s%02dÔÂ%02dÈÕ£¬",szCDName,m_D_Date.GetMonth(),m_D_Date.GetDay());
float fTotal=0.0f;
char szTemp[64]={0};
char szTemp2[64]={0};
char szLineNo[64]={0};
long lCount = dbf.RecNum();
lItem = 0;
for ( int i=0 ; i<lCount;i++ )
{
dbf.GoTo(i+1);
if ( !dbf.IsDelete() )
{
dbf.GetRecField(szTemp,"CDID");
if ( !_tcscmp(szTemp , szCDID ) )
{
dbf.GetRecField(szLineNo,"LINENO");
float fNoTotal=0.0f;
for ( int j=0 ; j<ljecount;j++ )
{
dbfje.GoTo(j+1);
if ( !dbfje.IsDelete() )
{
dbfje.GetRecField(szTemp,"LINENO");
dbfje.GetRecField(szTemp2,"INDATE");
if ( !_tcscmp(szLineNo,szTemp) &&
!_tcscmp(strDate,szTemp2) )
{
float fNo=0.0f;
dbfje.GetRecField(szTemp,"YRJE");
fNo = atof(szTemp)/100.0f;
fNoTotal += fNo;
}
}
}
strTemp.Format( "%s·%dÔª£¬",szLineNo,(long)(fNoTotal+0.5f) );
//strTemp.Format( "%s-£¤%.2f£»",szLineNo,fNoTotal );
strMsg += strTemp;
lItem++;
}
}
}
dbf.Close();
*/
return CString(strMsg);
}
void DLG_Setup_SZGJ_GetMsg::OnSetupSzgjGetmsgCarnoGet()
{
/*
char szCarNo[32]={0};
m_E_CarNo.GetWindowText(szCarNo,sizeof(szCarNo));
if ( _tcslen(szCarNo)<=0)
{
MessageBox("²éѯ֮ǰÇëÏÈÊäÈëÒª²éѯµÄ³µÅƺţ¡", "´íÎó",MB_ICONWARNING );
m_E_CarNo.SetFocus();
return;
}
if ( !UpdateData(true) )
return ;
CString strTemp;
//ȡѡÔñµÄÈÕÆÚ
CString strDate;
strDate.Format( "%04d%02d%02d" , m_D_Date.GetYear(),m_D_Date.GetMonth(),m_D_Date.GetDay());
//´ò¿ª½ð¶î¿â2
Dbf dbfje;
BOOL b = dbfje.Use( m_strNameJE2 );
if (!b )
{
strTemp.Format( "´ò¿ªÊý¾Ý¿â:%sʧ°Ü£¬Çë¼ì²é·¾¶ÉèÖã¡" , m_strNameJE2 );
MessageBox( strTemp , "´íÎó" , MB_ICONWARNING );
return ;
}
long ljecount = dbfje.RecNum();
//²éÕҴ˳µ¶Ó¶ÔÓ¦µÄÏß·¼°Æä½ð¶î
CString strMsg;
float fTotal =0.0f;
float fTotal2=0.0f;
float fTotal3=0.0f;
char szTemp[64]={0};
char szTemp2[64]={0};
long lCount = dbfje.RecNum();
for ( int i=0 ; i<lCount;i++ )
{
dbfje.GoTo(i+1);
if ( !dbfje.IsDelete() )
{
dbfje.GetRecField(szTemp,"BUSNO");
dbfje.GetRecField(szTemp2,"INDATE");
if ( !_tcscmp(szCarNo,szTemp) &&
!_tcscmp(strDate,szTemp2) )
{
float fNo=0.0f;
dbfje.GetRecField(szTemp,"CURIN");
fNo = atof(szTemp);
fTotal += fNo;
fNo=0.0f;
dbfje.GetRecField(szTemp,"ICIN");
fNo = atof(szTemp);
fTotal2 += fNo;
fNo=0.0f;
dbfje.GetRecField(szTemp,"ICTRANS");
fNo = atof(szTemp);
fTotal3 += fNo;
}
}
}
dbfje.Close();
strMsg.Format( "³µÅÆ%sÓÚ%02dÔÂ%02dÈÕÊÕÈë:%.2fÔª£»%.2fÔª£»%d¡£",szCarNo,m_D_Date.GetMonth(),m_D_Date.GetDay(),fTotal,fTotal2,(long)fTotal3);
m_E_Msg.SetWindowText( strMsg );
*/
}