1373 lines
38 KiB
C++
1373 lines
38 KiB
C++
// K_Agent.cpp : implementation file
|
||
//
|
||
|
||
#include "stdafx.h"
|
||
#include "smsmanager.h"
|
||
#include "K_Agent.h"
|
||
|
||
#ifdef _DEBUG
|
||
#define new DEBUG_NEW
|
||
#undef THIS_FILE
|
||
static char THIS_FILE[] = __FILE__;
|
||
#endif
|
||
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
// CK_Agent dialog
|
||
#include "MainFrm.h"
|
||
#include "ProcessSocket.h"
|
||
#include "DLG_Agent_Modify.h"
|
||
#include "DLG_Agent_Pay.h"
|
||
#include "DLG_Agent_MmsPay.h"
|
||
#include "DLG_Corp_BZ.h"
|
||
#include "DLG_Corp_LXR.h"
|
||
#include "DLG_Corp_FP.h"
|
||
#include "DLG_Corp_Oper.h"
|
||
#include "DLG_Corp_SF.h"
|
||
|
||
|
||
CK_Agent::CK_Agent(CWnd* pParent /*=NULL*/)
|
||
: CDialog(CK_Agent::IDD, pParent)
|
||
{
|
||
//{{AFX_DATA_INIT(CK_Agent)
|
||
// NOTE: the ClassWizard will add member initialization here
|
||
//}}AFX_DATA_INIT
|
||
m_bInit = false;
|
||
m_bRefresh = false;
|
||
|
||
m_bModify = false;
|
||
|
||
m_pFPDlg = NULL;
|
||
m_pSFDlg = NULL;
|
||
m_pAnalyseDlg = NULL;
|
||
}
|
||
|
||
|
||
void CK_Agent::DoDataExchange(CDataExchange* pDX)
|
||
{
|
||
CDialog::DoDataExchange(pDX);
|
||
//{{AFX_DATA_MAP(CK_Agent)
|
||
DDX_Control(pDX, IDC_AGENT_LIST, m_wndList);
|
||
//}}AFX_DATA_MAP
|
||
}
|
||
|
||
|
||
BEGIN_MESSAGE_MAP(CK_Agent, CDialog)
|
||
//{{AFX_MSG_MAP(CK_Agent)
|
||
ON_WM_SIZE()
|
||
ON_NOTIFY(NM_DBLCLK, IDC_AGENT_LIST, OnDblclkAgentList)
|
||
ON_NOTIFY(NM_RCLICK, IDC_AGENT_LIST, OnRclickAgentList)
|
||
ON_NOTIFY(LVN_KEYDOWN, IDC_AGENT_LIST, OnKeydownAgentList)
|
||
//}}AFX_MSG_MAP
|
||
ON_COMMAND( MENU_AGENT_ADD , On_Agent_Add )
|
||
ON_COMMAND( MENU_AGENT_MODIFY , On_Agent_Modify )
|
||
ON_COMMAND( MENU_AGENT_DEL , On_Agent_Del )
|
||
ON_COMMAND( MENU_AGENT_JF , On_Agent_Pay )
|
||
ON_COMMAND( MENU_AGENT_MMSJF , On_Agent_MmsPay )
|
||
ON_COMMAND( MENU_AGENT_REFRESH, On_Agent_Refresh )
|
||
ON_COMMAND( MENU_AGENT_BZ , On_Agent_BZ )
|
||
ON_COMMAND(MENU_AGENT_LXR, On_Agent_LXR)
|
||
ON_COMMAND(MENU_AGENT_FP, On_Agent_FP)
|
||
ON_COMMAND(MENU_AGENT_SF, On_Agent_SF)
|
||
ON_COMMAND(MENU_AGENT_OPER, On_Agent_OPER)
|
||
ON_COMMAND(MENU_AGENT_ANALYSE, On_Agent_Analyse)
|
||
|
||
|
||
|
||
|
||
END_MESSAGE_MAP()
|
||
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
// CK_Agent message handlers
|
||
|
||
BOOL CK_Agent::RefreshInfo()
|
||
{
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_FILT) )
|
||
{
|
||
return false;
|
||
}
|
||
//m_pMainFrame->SendFrame(SMSFUNC_AGENT_SEE,NULL,0);
|
||
|
||
REQ_Agent_See3 * pSee = new REQ_Agent_See3;
|
||
memset( pSee , 0 , sizeof(REQ_Agent_See3));
|
||
//_tcscpy( pSee->szQuery , strFind );
|
||
GetLocalTime(&pSee->tNow); //ȡ<><C8A1>ǰʱ<C7B0>䣬<EFBFBD><E4A3AC>ֹʱ<D6B9><CAB1><EFBFBD><EFBFBD><EFBFBD>ع<EFBFBD><D8B9><EFBFBD><EFBFBD>IJ<EFBFBD>ѯ
|
||
|
||
m_pMainFrame->SendFrame(SMSFUNC_AGENT_SEE3,(BYTE*)pSee,sizeof(REQ_Agent_See3)); //ȡ<><C8A1>ҵ<EFBFBD><D2B5>Ϣ
|
||
|
||
return true;
|
||
}
|
||
|
||
void CK_Agent::Close()
|
||
{
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
|
||
while (!m_Agent.IsEmpty())
|
||
{
|
||
ANS_Agent_SeeData * pData = m_Agent.GetHead();
|
||
m_Agent.RemoveHead();
|
||
delete pData;
|
||
}
|
||
}
|
||
|
||
BOOL CK_Agent::ReHide()
|
||
{
|
||
ShowWindow( SW_HIDE );
|
||
return true;
|
||
}
|
||
|
||
BOOL CK_Agent::ReShow(BOOL bRefresh)
|
||
{
|
||
ShowWindow( SW_SHOW );
|
||
if ( bRefresh || !m_bRefresh )
|
||
{
|
||
RefreshInfo();
|
||
}
|
||
return true;
|
||
}
|
||
|
||
BOOL CK_Agent::OnInitDialog()
|
||
{
|
||
CDialog::OnInitDialog();
|
||
|
||
//ȡ<>ù<EFBFBD><C3B9>ò<EFBFBD><C3B2><EFBFBD>
|
||
//CMainFrame * pFrame = static_cast <CMainFrame *>((CMainFrame *)AfxGetMainWnd());
|
||
this->GetParent()->GetParentFrame();
|
||
m_pMainFrame = (CMainFrame *)this->GetParent()->GetParentFrame();
|
||
m_pSocket = &m_pMainFrame->m_Socket;
|
||
|
||
//<2F><>ʼ<EFBFBD><CABC>List
|
||
m_Image.Create(16,16,ILC_COLOR16|ILC_MASK,5,5);
|
||
m_Image.Add(AfxGetApp()->LoadIcon(IDI_L_AGENT) );
|
||
m_Image.Add(AfxGetApp()->LoadIcon(IDI_L_AGENT_DISABLE) );
|
||
m_Image.Add(AfxGetApp()->LoadIcon(IDI_L_LOCK) );
|
||
m_Image.Add(AfxGetApp()->LoadIcon(IDI_L_CORP2));
|
||
m_Image.Add(AfxGetApp()->LoadIcon(IDI_L_CORP3));
|
||
|
||
m_wndList.SubClassWindow2();
|
||
m_wndList.SetHeadings(_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,50; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,180; <20><>¼<EFBFBD><C2BC>,100; ID,60;<3B><><EFBFBD>ſ<EFBFBD><C5BF><EFBFBD>,90;<3B><><EFBFBD>ſ<EFBFBD><C5BF><EFBFBD>,90;<3B>ʺ<EFBFBD><CABA><EFBFBD><EFBFBD><EFBFBD>,90;<3B><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>,100;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼,100;<3B><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>,100; <20><>ʾ,150;"));
|
||
m_wndList.SetGridLines(true);
|
||
m_wndList.SetImageList(&m_Image,LVSIL_SMALL);
|
||
|
||
m_bInit = true;
|
||
|
||
return TRUE; // return TRUE unless you set the focus to a control
|
||
// EXCEPTION: OCX Property Pages should return FALSE
|
||
}
|
||
|
||
void CK_Agent::OnSize(UINT nType, int cx, int cy)
|
||
{
|
||
CDialog::OnSize(nType, cx, cy);
|
||
|
||
if ( m_bInit )
|
||
{
|
||
m_wndList.MoveWindow( 0 , 0 , cx,cy);
|
||
}
|
||
}
|
||
|
||
BOOL CK_Agent::ProcessSocket(Socket_Head *pHead)
|
||
{
|
||
CString strTemp;
|
||
//ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||
if (pHead->lFuncType == SMSFUNC_AGENT_SEE ||
|
||
pHead->lFuncType == SMSFUNC_AGENT_SEE3)
|
||
{
|
||
m_bRefresh = true; //<2F>Ѿ<EFBFBD>ˢ<EFBFBD>¹<EFBFBD>
|
||
ANS_Agent_See * pSee = (ANS_Agent_See *)pHead->pFrame;
|
||
ANS_Agent_SeeData * pData = (ANS_Agent_SeeData *)(pHead->pFrame+sizeof(ANS_Agent_See));
|
||
m_wndList.ShowWindow(SW_HIDE); //<2F>ӿ<EFBFBD><D3BF><EFBFBD>ʾ<EFBFBD>ٶ<EFBFBD>
|
||
m_wndList.DeleteAllItems(); //ɾ<><C9BE>ԭ<EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
|
||
this->Close(); //<2F>ر<EFBFBD>ԭ<EFBFBD><D4AD><EFBFBD><EFBFBD>
|
||
if (pSee->lCount == -2)
|
||
{
|
||
MessageBox(_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), MB_ICONWARNING);
|
||
m_wndList.ShowWindow(SW_SHOW);
|
||
return true;
|
||
}
|
||
TCHAR Buf[32];
|
||
for ( int i=0;i<pSee->lCount;i++ )
|
||
{
|
||
ANS_Agent_SeeData * pNewData = new ANS_Agent_SeeData;
|
||
*pNewData = *pData;
|
||
POSITION pos = m_Agent.AddTail(pNewData);
|
||
//m_wndList.SetHeadings(_T("<22><><EFBFBD><EFBFBD>,50; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,180; <20><>¼<EFBFBD><C2BC>,100; ID,60;<3B><><EFBFBD>ſ<EFBFBD><C5BF><EFBFBD>,90;<3B><><EFBFBD>ſ<EFBFBD><C5BF><EFBFBD>,90;<3B>ʺ<EFBFBD><CABA><EFBFBD><EFBFBD><EFBFBD>,90;<3B><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>,100;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼,100;<3B><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>,100;"));
|
||
_stprintf(Buf , _T("%d") , i+1 );
|
||
m_wndList.InsertItem( i , Buf , pData->lStatus );
|
||
m_wndList.SetItemData( i , (DWORD)pos ); //<2F><>Pos
|
||
long lTemp=1;
|
||
m_wndList.SetItemText(i,lTemp++,pData->szName);
|
||
m_wndList.SetItemText(i,lTemp++,pData->szLoginName);
|
||
|
||
strTemp.Format( _T("%d") , pData->lAgentID );
|
||
m_wndList.SetItemText(i,lTemp++,strTemp);
|
||
|
||
strTemp.Format( _T("%10d"),long(pData->fUsed*10.0f) );
|
||
m_wndList.SetItemText(i,lTemp++,strTemp);
|
||
|
||
//strTemp.Format( _T("%10d"),long(pData->fTotal*10.0f) );
|
||
//m_wndList.SetItemText(i,lTemp++,strTemp);
|
||
|
||
strTemp.Format( _T("%10d"),pData->lMmsUsed );
|
||
m_wndList.SetItemText(i,lTemp++,strTemp);
|
||
//strTemp.Format( _T("%10d"),pData->lMmsTotal );
|
||
//m_wndList.SetItemText(i,lTemp++,strTemp);
|
||
|
||
strTemp.Format( _T(" %d/%d"),pData->lAddedCorp,pData->lAddCorpCount );
|
||
m_wndList.SetItemText(i,lTemp++,strTemp);
|
||
strTemp.Format(_T("%04d.%02d.%02d"), pData->tOvrTime.wYear, pData->tOvrTime.wMonth, pData->tOvrTime.wDay);
|
||
m_wndList.SetItemText(i, lTemp++, strTemp);
|
||
strTemp.Format( _T("%04d.%02d.%02d") , pData->tLoginTime.wYear,pData->tLoginTime.wMonth,pData->tLoginTime.wDay);
|
||
m_wndList.SetItemText(i,lTemp++,strTemp);
|
||
strTemp.Format( _T("%04d.%02d.%02d") , pData->tCreateTime.wYear,pData->tCreateTime.wMonth,pData->tCreateTime.wDay);
|
||
m_wndList.SetItemText(i,lTemp++,strTemp);
|
||
|
||
//<2F>ж϶<D0B6><CFB6><EFBFBD><EFBFBD><EFBFBD>
|
||
long lSmsFZ = pData->lSmUsed;
|
||
if (lSmsFZ <= 0) lSmsFZ = 2000;
|
||
long lIconIndex = 0;
|
||
CString strNotify;
|
||
if (long(pData->fUsed*10.0f) <= lSmsFZ)
|
||
{
|
||
lIconIndex = 3;
|
||
strNotify = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||
}
|
||
if (long(pData->fUsed*10.0f) <= lSmsFZ / 2) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD>
|
||
{
|
||
lIconIndex = 4;
|
||
strNotify = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||
}
|
||
//<2F>жϹ<D0B6><CFB9><EFBFBD>
|
||
CString strNotify2;
|
||
long lIconIndex2=0;
|
||
COleDateTime tOvr(pData->tOvrTime);
|
||
if (tOvr.GetStatus() == COleDateTime::valid)
|
||
{
|
||
if (tOvr - COleDateTime::GetCurrentTime() < COleDateTimeSpan(30 * 3, 0, 0, 0)) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
{
|
||
lIconIndex2 = 3;
|
||
strNotify2 = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||
}
|
||
if (tOvr <= COleDateTime::GetCurrentTime() ) //<2F>ѹ<EFBFBD><D1B9><EFBFBD>
|
||
{
|
||
lIconIndex2 = 4;
|
||
strNotify2 = _T("<EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD>");
|
||
}
|
||
|
||
if (lIconIndex2 > lIconIndex) lIconIndex = lIconIndex2;
|
||
if (strNotify2.GetLength() > 0)
|
||
{
|
||
if (strNotify.GetLength() > 0)
|
||
strNotify = strNotify + CString(_T("<EFBFBD><EFBFBD>")) + strNotify2;
|
||
else
|
||
strNotify = strNotify2;
|
||
}
|
||
}
|
||
|
||
strNotify2 = CString(_T(""));
|
||
lIconIndex2 = 0;
|
||
|
||
COleDateTime tUser(pData->tLoginTime);
|
||
if (tUser.GetStatus() != COleDateTime::valid)
|
||
tUser = COleDateTime(pData->tCreateTime);
|
||
if (tUser.GetStatus() == COleDateTime::valid)
|
||
{
|
||
COleDateTimeSpan tTemp = COleDateTime::GetCurrentTime() - tUser;
|
||
long lMon = tTemp.GetTotalDays() / 30;
|
||
if (lMon >= 3)
|
||
{
|
||
lIconIndex2 = 4;
|
||
strNotify2.Format(_T("<EFBFBD><EFBFBD>%d<><64>û<EFBFBD><C3BB>¼"), lMon);
|
||
}
|
||
else
|
||
if (lMon >= 1)
|
||
{
|
||
lIconIndex2 = 3;
|
||
strNotify2.Format(_T("<EFBFBD><EFBFBD>%d<><64>û<EFBFBD><C3BB>¼"), lMon);
|
||
}
|
||
|
||
if (lIconIndex2 > lIconIndex) lIconIndex = lIconIndex2;
|
||
if (strNotify2.GetLength() > 0)
|
||
{
|
||
if (strNotify.GetLength() > 0)
|
||
strNotify = strNotify + CString(_T("<EFBFBD><EFBFBD>")) + strNotify2;
|
||
else
|
||
strNotify = strNotify2;
|
||
}
|
||
|
||
}
|
||
|
||
//<2F><><EFBFBD>þ<EFBFBD><C3BE><EFBFBD>ͼ<EFBFBD><CDBC>
|
||
if ( pData->lStatus != 1 && lIconIndex>0 )
|
||
m_wndList.SetIconIndex(i, lIconIndex);
|
||
//<2F><>ʾ<EFBFBD><CABE>ʾ<EFBFBD><CABE>Ϣ
|
||
m_wndList.SetItemText(i, lTemp++, strNotify);
|
||
|
||
pData ++;
|
||
}
|
||
m_wndList.ShowWindow(SW_SHOW); //<2F>ӿ<EFBFBD><D3BF><EFBFBD>ʾ<EFBFBD>ٶ<EFBFBD>
|
||
return true;
|
||
}
|
||
|
||
//<2F><><EFBFBD>ӹ<EFBFBD><D3B9>˴<EFBFBD><CBB4><EFBFBD>
|
||
if (pHead->lFuncType == SMSFUNC_AGENT_ADD)
|
||
{
|
||
ANS_Agent_Add * pAdd = (ANS_Agent_Add *)pHead->pFrame;
|
||
ANS_Agent_SeeData * pData = (ANS_Agent_SeeData *)(pHead->pFrame+sizeof(ANS_Agent_Add));
|
||
|
||
if (pAdd->lCount == -14)
|
||
{
|
||
MessageBox(_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>´<EFBFBD><EFBFBD><EFBFBD><EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD><EFBFBD>ڣ<EFBFBD>"), _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), MB_ICONWARNING);
|
||
}
|
||
if (pAdd->lCount == -15)
|
||
{
|
||
MessageBox(_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>´<EFBFBD><EFBFBD><EFBFBD><EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ô<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶβ<EFBFBD><EFBFBD>淶<EFBFBD><EFBFBD>"), _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), MB_ICONWARNING);
|
||
}
|
||
|
||
if ( pAdd->lCount == 1 ) //<2F><><EFBFBD><EFBFBD>1ʱ<31><CAB1>ʾ<EFBFBD>ijɹ<C4B3>
|
||
{
|
||
long lCount = m_wndList.GetItemCount();
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><C2B5><EFBFBD><EFBFBD><EFBFBD>
|
||
TCHAR Buf[32];
|
||
_stprintf( Buf, _T("%d") , lCount +1 );
|
||
m_wndList.InsertItem( lCount , Buf , pData->lStatus );
|
||
m_wndList.SetItemText(lCount,1,pData->szName);
|
||
strTemp.Format( _T("%d") , pData->lAgentID );
|
||
m_wndList.SetItemText(lCount,2,strTemp);
|
||
|
||
|
||
strTemp.Format( _T("%10.2f"),pData->fUsed );
|
||
m_wndList.SetItemText(lCount,3,strTemp);
|
||
strTemp.Format( _T("%10.2f"),pData->fCredit );
|
||
m_wndList.SetItemText(lCount,4,strTemp);
|
||
strTemp.Format( _T("%10.2f"),pData->fTotal );
|
||
m_wndList.SetItemText(lCount,5,strTemp);
|
||
strTemp.Format( _T("%04d.%02d.%02d") , pData->tCreateTime.wYear,pData->tCreateTime.wMonth,pData->tCreateTime.wDay);
|
||
m_wndList.SetItemText(lCount,6,strTemp);
|
||
|
||
|
||
ANS_Agent_SeeData * pData2 = new ANS_Agent_SeeData;
|
||
*pData2 = *pData;
|
||
POSITION pos = m_Agent.AddTail( pData2 );
|
||
m_wndList.SetItemData( lCount, (DWORD)pos );
|
||
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><D8B5>û<EFBFBD>ID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˢ<EFBFBD><CBA2>
|
||
if ( pData->lAgentID <= 0 )
|
||
{
|
||
RefreshInfo();
|
||
}
|
||
}
|
||
return true;
|
||
}
|
||
|
||
//<2F>Ĺ<DEB8><C4B9><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||
if (pHead->lFuncType == SMSFUNC_AGENT_MODIFY)
|
||
{
|
||
ANS_Agent_Modify * pModify = (ANS_Agent_Modify *)pHead->pFrame;
|
||
ANS_Agent_SeeData * pData = (ANS_Agent_SeeData *)(pHead->pFrame+sizeof(ANS_Agent_Modify));
|
||
SetLockItem( pModify->lItem , false ); //<2F><><EFBFBD><EFBFBD>
|
||
|
||
if (pModify->lCount == -14)
|
||
{
|
||
MessageBox(_T("<EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD><EFBFBD>ڣ<EFBFBD>"), _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), MB_ICONWARNING);
|
||
}
|
||
if (pModify->lCount == -15)
|
||
{
|
||
MessageBox(_T("<EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ô<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶβ<EFBFBD><EFBFBD>淶<EFBFBD><EFBFBD>"), _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), MB_ICONWARNING);
|
||
}
|
||
if ( pModify->lCount == 1 ) //<2F><><EFBFBD><EFBFBD>1ʱ<31><CAB1>ʾ<EFBFBD>ijɹ<C4B3>
|
||
{
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(pModify->lItem);
|
||
ANS_Agent_SeeData * pData2 = m_Agent.GetNext( pos );
|
||
if ( pData2 )
|
||
{
|
||
*pData2 = *pData; //ȡ<><C8A1><EFBFBD>µ<EFBFBD><C2B5><EFBFBD><EFBFBD><EFBFBD>
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><C2B5><EFBFBD><EFBFBD><EFBFBD>
|
||
TCHAR Buf[32]={0};
|
||
int i = pModify->lItem;
|
||
m_wndList.SetItemText(i,1,pData->szName);
|
||
m_wndList.SetIconIndex(i,pData->lStatus );
|
||
|
||
strTemp.Format( _T("%10.2f"),pData->fUsed );
|
||
m_wndList.SetItemText(i,3,strTemp);
|
||
strTemp.Format( _T("%10.2f"),pData->fCredit );
|
||
m_wndList.SetItemText(i,4,strTemp);
|
||
//strTemp.Format( _T("%10.2f"),pData->fTotal );
|
||
//m_wndList.SetItemText(i,5,strTemp);
|
||
}
|
||
}
|
||
return true;
|
||
}
|
||
/*
|
||
//ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD>˴<EFBFBD><CBB4><EFBFBD>
|
||
if (pHead->lFuncType == SMSFUNC_AGENT_DEL)
|
||
{
|
||
ANS_Agent_Del * pDel = (ANS_Agent_Del *)pHead->pFrame;
|
||
ANS_Agent_DelData * pDelData = (ANS_Agent_DelData *)(pHead->pFrame+sizeof(ANS_Agent_Del));
|
||
POSITION pos,pos2;
|
||
ANS_Agent_SeeData * pSPData;
|
||
for ( int i = pDel->lCount-1 ; i>=0 ; i-- )
|
||
{
|
||
if ( pDelData[i].lAgentID ) //ɾ<><C9BE><EFBFBD>ɹ<EFBFBD>
|
||
{
|
||
pos = (POSITION)m_wndList.GetItemData( pDelData[i].lItem );
|
||
pos2 = pos;
|
||
pSPData = m_Agent.GetNext( pos );
|
||
if ( pSPData->lAgentID == pDelData[i].lAgentID ) //ID<49><44>ͬ<EFBFBD>IJſ<C4B2>ɾ<EFBFBD><C9BE>
|
||
{
|
||
delete pSPData; //<2F><>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
m_Agent.RemoveAt(pos2); //<2F><><EFBFBD>б<EFBFBD><D0B1><EFBFBD>ɾ<EFBFBD><C9BE>
|
||
m_wndList.DeleteItem(pDelData[i].lItem); //<2F><>ListCtrl<72><6C>ɾ<EFBFBD><C9BE>
|
||
}
|
||
}
|
||
}
|
||
return true;
|
||
}
|
||
*/
|
||
//<2F>鿴֧<E9BFB4><D6A7><EFBFBD><EFBFBD>¼
|
||
if (pHead->lFuncType == SMSFUNC_AGENT_PAY)
|
||
{
|
||
ANS_Agent_Pay * pPay = (ANS_Agent_Pay *)pHead->pFrame;
|
||
ANS_Agent_PayData * pData= (ANS_Agent_PayData *)(pHead->pFrame+sizeof(ANS_Agent_Pay));
|
||
if ( pPay->lCount < 0 ) //Ȩ<><EFBFBD><DEB2>㣬<EFBFBD><E3A3AC><EFBFBD>ش<EFBFBD><D8B4><EFBFBD>
|
||
return true;
|
||
DLG_Agent_Pay dlg(this);
|
||
dlg.SetParam( *pPay , pData );
|
||
if ( dlg.DoModal() == IDOK && dlg.m_lModifyCount>0 )
|
||
{
|
||
/*
|
||
long lSize = sizeof(REQ_Agent_PayModify) + sizeof(ANS_Agent_PayData)*dlg.m_lModifyCount;
|
||
BYTE * pDataSend = new BYTE[lSize];memset( pDataSend , 0 , lSize );
|
||
REQ_Agent_PayModify * pModifySend = (REQ_Agent_PayModify*)pDataSend;
|
||
ANS_Agent_PayData * pPaySend = (ANS_Agent_PayData *)(pDataSend+sizeof(REQ_Agent_PayModify));
|
||
pModifySend->lAgentID = pPay->lAgentID;
|
||
pModifySend->lItem = pPay->lItem;
|
||
pModifySend->fTotal = dlg.m_PayReq.fTotal; //ȡ<><C8A1><EFBFBD>ĺ<DEB8><C4BA><EFBFBD><EFBFBD>ܶ<EFBFBD>
|
||
pModifySend->fUsed= dlg.m_PayReq.fUsed;
|
||
pModifySend->lCount = dlg.m_lModifyCount;
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
|
||
ANS_Agent_PayData * pPayTemp;
|
||
while (!dlg.m_Pay.IsEmpty())
|
||
{
|
||
pPayTemp = dlg.m_Pay.GetHead();
|
||
dlg.m_Pay.RemoveHead();
|
||
if (pPayTemp->ucStatus != 0 ) //<2F><>Ϊ0,<2C><>Ҫ<EFBFBD><EFBFBD>
|
||
{
|
||
*pPaySend = *pPayTemp;
|
||
pPaySend ++;
|
||
}
|
||
delete pPayTemp;
|
||
}
|
||
m_pMainFrame->SendFrame( SMSFUNC_AGENT_PAYMODIFY , pDataSend , lSize );
|
||
*/
|
||
}
|
||
else
|
||
{
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
|
||
ANS_Agent_PayData * pPayTemp;
|
||
while (!dlg.m_Pay.IsEmpty())
|
||
{
|
||
pPayTemp = dlg.m_Pay.GetHead();
|
||
dlg.m_Pay.RemoveHead();
|
||
delete pPayTemp;
|
||
}
|
||
}
|
||
|
||
return true;
|
||
}
|
||
//<2F>ɷѼ<C9B7>¼<EFBFBD><EFBFBD>
|
||
if (pHead->lFuncType == SMSFUNC_AGENT_PAYMODIFY)
|
||
{
|
||
ANS_Agent_PayModify* pModify = (ANS_Agent_PayModify*)pHead->pFrame;
|
||
ANS_Agent_PayData * pData = (ANS_Agent_PayData *)(pHead->pFrame+sizeof(ANS_Agent_PayModify));
|
||
if ( pModify->lItem >= 0 )
|
||
{
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(pModify->lItem);
|
||
ANS_Agent_SeeData * pData2 = m_Agent.GetNext( pos );
|
||
if ( pData2 )
|
||
{
|
||
pData2->fTotal = pModify->fTotal;
|
||
pData2->fUsed = pModify->fUsed;
|
||
|
||
strTemp.Format( _T("%10.2f"),pData2->fUsed );
|
||
m_wndList.SetItemText(pModify->lItem,3,strTemp);
|
||
|
||
strTemp.Format( _T("%10.2f"),pData2->fTotal );
|
||
m_wndList.SetItemText(pModify->lItem,5,strTemp);
|
||
}
|
||
}
|
||
return true;
|
||
}
|
||
//<2F>鿴<EFBFBD><E9BFB4>ע
|
||
if (pHead->lFuncType == SMSFUNC_CORP_BZ_SEE)
|
||
{
|
||
ANS_Corp_BZ_See * pSee = (ANS_Corp_BZ_See *)pHead->pFrame;
|
||
ANS_Corp_BZ_Data * pSeeData = (ANS_Corp_BZ_Data *)(pHead->pFrame+sizeof(ANS_Corp_BZ_See));
|
||
ANS_Corp_MemberData * pMemberDataRet = (ANS_Corp_MemberData *)(pHead->pFrame+sizeof(ANS_Corp_BZ_See)+sizeof(ANS_Corp_BZ_Data)*pSee->lCount);
|
||
|
||
DLG_Corp_BZ dlg(this);
|
||
dlg.SetParam(pSee , pSeeData ,0 ,pMemberDataRet,_T(""));
|
||
if ( dlg.DoModal() == IDOK )
|
||
{
|
||
REQ_Corp_BZ_Add * pBZ = new REQ_Corp_BZ_Add;
|
||
memset( pBZ , 0 , sizeof(REQ_Corp_BZ_Add));
|
||
pBZ->lCorpID = pSee->lCorpID;
|
||
pBZ->lUserType = 1; //<2F><><EFBFBD><EFBFBD><EFBFBD>̱<EFBFBD>ע
|
||
pBZ->lBZType = 1; //ҵ<><D2B5>Ա<EFBFBD><D4B1>ע
|
||
_tcscpy( pBZ->szBZ , dlg.m_strBZ );
|
||
m_pMainFrame->SendFrame( SMSFUNC_CORP_BZ_ADD , (BYTE*)pBZ , sizeof(REQ_Corp_BZ_Add) ); //ȡ<><C8A1>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>Ϣ
|
||
|
||
}
|
||
|
||
return true;
|
||
}
|
||
|
||
//<2F>鿴<EFBFBD><E9BFB4>ϵ<EFBFBD><CFB5>
|
||
if (pHead->lFuncType == SMSFUNC_CORP_LXR)
|
||
{
|
||
ANS_Corp_LXR * pLXR = (ANS_Corp_LXR *)pHead->pFrame;
|
||
ANS_Corp_LXRData * pData = (ANS_Corp_LXRData *)(pHead->pFrame + sizeof(ANS_Corp_LXR));
|
||
if (pLXR->lCount < 0) //Ȩ<><EFBFBD><DEB2><EFBFBD>
|
||
return true;
|
||
DLG_Corp_LXR dlg(this);
|
||
dlg.SetParam(*pLXR, pData, m_bModify,1);
|
||
if (dlg.DoModal() == IDOK && dlg.m_lModifyCount>0 && m_bModify)
|
||
{
|
||
long lSize = sizeof(REQ_Corp_LXRModify) + sizeof(ANS_Corp_LXRData)*dlg.m_lModifyCount;
|
||
BYTE * pDataSend = new BYTE[lSize]; memset(pDataSend, 0, lSize);
|
||
REQ_Corp_LXRModify * pModifySend = (REQ_Corp_LXRModify*)pDataSend;
|
||
ANS_Corp_LXRData * pLXRSend = (ANS_Corp_LXRData *)(pDataSend + sizeof(REQ_Corp_LXRModify));
|
||
pModifySend->lCorpID = pLXR->lCorpID;
|
||
pModifySend->lCount = dlg.m_lModifyCount;
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
|
||
ANS_Corp_LXRData * pLXRTemp;
|
||
while (!dlg.m_LXR.IsEmpty())
|
||
{
|
||
pLXRTemp = dlg.m_LXR.GetHead();
|
||
dlg.m_LXR.RemoveHead();
|
||
if (pLXRTemp->ucStatus != 0) //<2F><>Ϊ0,<2C><>Ҫ<EFBFBD><EFBFBD>
|
||
{
|
||
*pLXRSend = *pLXRTemp;
|
||
pLXRSend++;
|
||
}
|
||
delete pLXRTemp;
|
||
}
|
||
m_pMainFrame->SendFrame(SMSFUNC_CORP_LXRMODIFY, pDataSend, lSize);
|
||
}
|
||
else
|
||
{
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
|
||
ANS_Corp_LXRData * pLXRTemp;
|
||
while (!dlg.m_LXR.IsEmpty())
|
||
{
|
||
pLXRTemp = dlg.m_LXR.GetHead();
|
||
dlg.m_LXR.RemoveHead();
|
||
delete pLXRTemp;
|
||
}
|
||
}
|
||
|
||
return true;
|
||
}
|
||
//<2F><>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>
|
||
if (pHead->lFuncType == SMSFUNC_CORP_LXRMODIFY)
|
||
{
|
||
return true;
|
||
}
|
||
|
||
//<2F>鿴<EFBFBD><E9BFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼
|
||
if (pHead->lFuncType == SMSFUNC_CORP_OPER_SEE)
|
||
{
|
||
ANS_Corp_Oper_See * pSee = (ANS_Corp_Oper_See *)pHead->pFrame;
|
||
ANS_Corp_Oper_Data * pSeeData = (ANS_Corp_Oper_Data *)(pHead->pFrame + sizeof(ANS_Corp_Oper_See));
|
||
|
||
DLG_Corp_Oper dlg(this);
|
||
dlg.SetParam(pSee, pSeeData);
|
||
dlg.DoModal();
|
||
return true;
|
||
}
|
||
if (pHead->lFuncType == SMSFUNC_CORP_OPER_ADD)
|
||
{
|
||
ANS_Corp_Oper_See * pSee = (ANS_Corp_Oper_See *)pHead->pFrame;
|
||
ANS_Corp_Oper_Data * pSeeData = (ANS_Corp_Oper_Data *)(pHead->pFrame + sizeof(ANS_Corp_Oper_See));
|
||
|
||
DLG_Corp_Oper dlg(this);
|
||
dlg.SetParam(pSee, pSeeData);
|
||
dlg.DoModal();
|
||
return true;
|
||
}
|
||
|
||
return false;
|
||
}
|
||
|
||
BOOL CK_Agent::isLockItem(long lItem, BOOL bShowWarning)
|
||
{
|
||
BOOL b = (m_wndList.GetIconIndex(lItem) == 2);
|
||
if ( b && bShowWarning )
|
||
{
|
||
MessageBox( _T("<EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD><EFBFBD>ٲ<EFBFBD><EFBFBD><EFBFBD>!") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_ICONINFORMATION );
|
||
}
|
||
return b;
|
||
}
|
||
|
||
void CK_Agent::SetLockItem(long lItem, BOOL bLock)
|
||
{
|
||
if ( bLock )
|
||
m_wndList.SetIconIndex( lItem , 2 );
|
||
else
|
||
m_wndList.SetIconIndex( lItem , 0 );
|
||
}
|
||
|
||
BOOL CK_Agent::FindAgentame(const TCHAR *pAgentName, POSITION exPos)
|
||
{
|
||
POSITION pos = m_Agent.GetHeadPosition();
|
||
POSITION pos2;
|
||
while (pos)
|
||
{
|
||
pos2 = pos;
|
||
ANS_Agent_SeeData * pData = m_Agent.GetNext( pos );
|
||
if ( pos2 != exPos )
|
||
{
|
||
if ( !_tcscmp( pData->szName , pAgentName ) )
|
||
return true;
|
||
}
|
||
}
|
||
return false;
|
||
}
|
||
|
||
void CK_Agent::OnDblclkAgentList(NMHDR* pNMHDR, LRESULT* pResult)
|
||
{
|
||
*pResult = 0;
|
||
|
||
On_Agent_Modify();
|
||
}
|
||
|
||
void CK_Agent::OnRclickAgentList(NMHDR* pNMHDR, LRESULT* pResult)
|
||
{
|
||
*pResult = 0;
|
||
|
||
ShowRMenu();
|
||
}
|
||
|
||
void CK_Agent::OnKeydownAgentList(NMHDR* pNMHDR, LRESULT* pResult)
|
||
{
|
||
LV_KEYDOWN* pLVKeyDow = (LV_KEYDOWN*)pNMHDR;
|
||
// TODO: Add your control notification handler code here
|
||
|
||
*pResult = 0;
|
||
}
|
||
|
||
void CK_Agent::ShowRMenu()
|
||
{
|
||
if (!m_pMainFrame->GetUserPurview(PURVIEW_FILT,false)) //û<>в鿴Ȩ<E9BFB4><C8A8>
|
||
return ;
|
||
|
||
CMenu menu;
|
||
menu.CreatePopupMenu();
|
||
BOOL bLock = false;
|
||
long lItem = this->GetCurrentSelected();
|
||
if ( lItem >= 0 )
|
||
bLock = isLockItem( lItem , false ); //ȡ<><C8A1><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
|
||
menu.AppendMenu(MF_STRING, MENU_AGENT_ADD, _T(" <20><><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD>"));
|
||
//<2F>ɷ<EFBFBD>
|
||
if ( lItem >=0 && !bLock )
|
||
{
|
||
menu.AppendMenu(MF_STRING, MENU_AGENT_MODIFY, _T(" <20>Ĵ<DEB8><C4B4><EFBFBD><EFBFBD><EFBFBD> "));
|
||
menu.AppendMenu(MF_SEPARATOR);
|
||
menu.AppendMenu(MF_STRING , MENU_AGENT_JF, _T(" <20><><EFBFBD>ŽɷѼ<C9B7>¼... ") );
|
||
menu.AppendMenu(MF_STRING, MENU_AGENT_MMSJF, _T(" <20><><EFBFBD>ŽɷѼ<C9B7>¼... "));
|
||
menu.AppendMenu(MF_STRING, MENU_AGENT_ANALYSE, _T(" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݷ<EFBFBD><DDB7><EFBFBD>... "));
|
||
|
||
menu.AppendMenu(MF_SEPARATOR);
|
||
menu.AppendMenu(MF_STRING, MENU_AGENT_LXR, _T(" <20><>ϵ<EFBFBD><CFB5>... "));
|
||
menu.AppendMenu(MF_STRING, MENU_AGENT_FP, _T(" <20><>Ʊ̧ͷ<CCA7><CDB7><EFBFBD><EFBFBD>... "));
|
||
menu.AppendMenu(MF_STRING, MENU_AGENT_SF, _T(" <20><><EFBFBD>ݼ<EFBFBD><DDBC>Ͳ<EFBFBD>ѯ... "));
|
||
menu.AppendMenu(MF_SEPARATOR);
|
||
menu.AppendMenu(MF_STRING, MENU_AGENT_OPER, _T(" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼ "));
|
||
menu.AppendMenu(MF_STRING, MENU_AGENT_BZ, _T(" <20><> ע... "));
|
||
|
||
}
|
||
else
|
||
{
|
||
menu.AppendMenu(MF_STRING | MF_DISABLED | MF_GRAYED, MENU_AGENT_MODIFY, _T(" <20>Ĵ<DEB8><C4B4><EFBFBD><EFBFBD><EFBFBD> "));
|
||
menu.AppendMenu(MF_SEPARATOR);
|
||
|
||
menu.AppendMenu(MF_STRING|MF_DISABLED|MF_GRAYED , MENU_AGENT_JF , _T(" <20><><EFBFBD>ŽɷѼ<C9B7>¼... ") );
|
||
menu.AppendMenu(MF_STRING | MF_DISABLED | MF_GRAYED, MENU_AGENT_MMSJF, _T(" <20><><EFBFBD>ŽɷѼ<C9B7>¼... "));
|
||
menu.AppendMenu(MF_SEPARATOR);
|
||
menu.AppendMenu(MF_STRING | MF_DISABLED | MF_GRAYED, MENU_AGENT_LXR, _T(" <20><>ϵ<EFBFBD><CFB5>... "));
|
||
menu.AppendMenu(MF_STRING | MF_DISABLED | MF_GRAYED, MENU_AGENT_FP, _T(" <20><>Ʊ̧ͷ<CCA7><CDB7><EFBFBD><EFBFBD>... "));
|
||
menu.AppendMenu(MF_SEPARATOR);
|
||
menu.AppendMenu(MF_STRING | MF_DISABLED | MF_GRAYED, MENU_AGENT_OPER, _T(" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼ "));
|
||
menu.AppendMenu(MF_STRING | MF_DISABLED | MF_GRAYED, MENU_AGENT_BZ, _T(" <20><> ע... "));
|
||
}
|
||
|
||
menu.AppendMenu(MF_SEPARATOR );
|
||
|
||
//ˢ<><CBA2>
|
||
menu.AppendMenu(MF_STRING , MENU_AGENT_REFRESH, _T(" ˢ <20><> ") );
|
||
|
||
//<2F><>ʾ<EFBFBD>˵<EFBFBD>
|
||
POINT pt ;
|
||
::GetCursorPos( &pt );
|
||
//this->ClientToScreen( &pt);
|
||
menu.TrackPopupMenu(TPM_LEFTBUTTON | TPM_RIGHTBUTTON,pt.x,pt.y, this, NULL);
|
||
menu.DestroyMenu();
|
||
}
|
||
|
||
long CK_Agent::GetCurrentSelected()
|
||
{
|
||
POSITION pos = m_wndList.GetFirstSelectedItemPosition();
|
||
if ( pos )
|
||
{
|
||
return m_wndList.GetNextSelectedItem(pos);
|
||
}
|
||
return -1;
|
||
}
|
||
|
||
void CK_Agent::On_Agent_Add()
|
||
{
|
||
#ifndef MANAGER_VER_YWY
|
||
return;
|
||
#endif
|
||
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_FILT) )
|
||
{
|
||
return ;
|
||
}
|
||
|
||
ANS_Agent_SeeData SPData={0};
|
||
::GetLocalTime(&SPData.tCreateTime);
|
||
SPData.lStatus = 1; //<2F>¿<EFBFBD>״̬<D7B4>ǹرյ<D8B1>
|
||
SPData.lType = 1; //Ĭ<><C4AC><EFBFBD><EFBFBD>Ӧ<EFBFBD>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD>
|
||
SPData.lReportPer = 75; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5>״̬<D7B4><CCAC><EFBFBD>淴<EFBFBD><E6B7B4><EFBFBD><EFBFBD>
|
||
SPData.fMmsPriceOne = 0.30; //Ĭ<>Ϸ<EFBFBD><CFB7><EFBFBD>
|
||
SPData.fPriceOne = 0.10;//Ĭ<>Ϸ<EFBFBD><CFB7><EFBFBD>
|
||
#ifdef MANAGER_VER_YWY
|
||
SPData.lYWYID =m_pMainFrame->m_lUserID; //ҵ<><D2B5>ԱID
|
||
_tcscpy(SPData.szCreateUser, m_pMainFrame->m_Setup.szUser); //ҵ<><D2B5>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD>
|
||
#endif
|
||
|
||
|
||
DLG_Agent_Modify dlg(this);
|
||
|
||
dlg.SetParam( SPData,0,true,true );
|
||
if ( dlg.DoModal() == IDOK )
|
||
{
|
||
long lSize = sizeof(REQ_Agent_Add)+sizeof(ANS_Agent_SeeData);
|
||
BYTE * pAddData = new BYTE[lSize];memset(pAddData,0,lSize);
|
||
REQ_Agent_Add * pAdd = (REQ_Agent_Add *)pAddData; //ͷ
|
||
ANS_Agent_SeeData * pSPData = (ANS_Agent_SeeData *)(pAddData+sizeof(REQ_Agent_Add));
|
||
*pSPData = dlg.GetParam();
|
||
|
||
pSPData->lStatus = 1; //<2F>¿<EFBFBD>״̬<D7B4>ǹرյ<D8B1>
|
||
//pSPData->lType = 1; //Ĭ<><C4AC><EFBFBD><EFBFBD>Ӧ<EFBFBD>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD>
|
||
pSPData->lReportPer = 75; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5>״̬<D7B4><CCAC><EFBFBD>淴<EFBFBD><E6B7B4><EFBFBD><EFBFBD>
|
||
pSPData->fMmsPriceOne = 0.30; //Ĭ<>Ϸ<EFBFBD><CFB7><EFBFBD>
|
||
pSPData->fPriceOne = 0.10;//Ĭ<>Ϸ<EFBFBD><CFB7><EFBFBD>
|
||
#ifdef MANAGER_VER_YWY
|
||
pSPData->lYWYID = m_pMainFrame->m_lUserID; //ҵ<><D2B5>ԱID
|
||
_tcscpy(pSPData->szCreateUser,m_pMainFrame->m_Setup.szUser); //ҵ<><D2B5>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD>
|
||
#endif
|
||
|
||
pAdd->lCount = 1;
|
||
m_pMainFrame->SendFrame( SMSFUNC_AGENT_ADD , pAddData , lSize );
|
||
}
|
||
|
||
}
|
||
void CK_Agent::On_Agent_Modify()
|
||
{
|
||
#ifndef MANAGER_VER_YWY
|
||
return;
|
||
#endif
|
||
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_FILT) )
|
||
{
|
||
return ;
|
||
}
|
||
long lItem = GetCurrentSelected();
|
||
if ( lItem < 0 )
|
||
return ;
|
||
|
||
if (isLockItem(lItem))
|
||
{
|
||
return ;
|
||
}
|
||
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
POSITION pos2 = pos;
|
||
ANS_Agent_SeeData * pData = m_Agent.GetNext( pos );
|
||
if (!pData)
|
||
return;
|
||
|
||
m_bModify = false;
|
||
|
||
#ifdef SMSCENTER_ADC
|
||
if (COleDateTime(pData->tCreateTime).GetStatus() != COleDateTime::valid) //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD>
|
||
::GetLocalTime(&pData->tCreateTime);
|
||
//if ( pData->szStatus[0] == '1' && //״̬Ϊδ<CEAA><CEB4><EFBFBD><EFBFBD>
|
||
// (COleDateTime::GetCurrentTime()-COleDateTime(pData->tReg)) < COleDateTimeSpan(2,0,0,0) ) //<2F><>ͨʱ<CDA8><CAB1>С<EFBFBD><D0A1>7<EFBFBD>ղ<EFBFBD><D5B2>ܸ<EFBFBD><DCB8><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>
|
||
if (pData->lHT_Recv.lYear <= 0 && pData->lHT_Send.lYear <= 0 && //<2F><>ͬδ<CDAC>ij<EFBFBD><C4B3><EFBFBD>δ<EFBFBD><CEB4><EFBFBD>ն<EFBFBD><D5B6>ɸ<EFBFBD><C9B8><EFBFBD>
|
||
((COleDateTime::GetCurrentTime() - COleDateTime(pData->tCreateTime)) < COleDateTimeSpan(180, 0, 0, 0)))
|
||
{
|
||
m_bModify = true; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
}
|
||
#else
|
||
#ifdef MANAGER_VER_YWY
|
||
|
||
m_bModify = true;
|
||
/*
|
||
if (pData->lStatus == 1 && //״̬Ϊδ<CEAA><CEB4><EFBFBD><EFBFBD>
|
||
((COleDateTime::GetCurrentTime() - COleDateTime(pData->tCreateTime)) < COleDateTimeSpan(10, 0, 0, 0))) //<2F><>ͨʱ<CDA8><CAB1>С<EFBFBD><D0A1>7<EFBFBD>ղ<EFBFBD><D5B2>ܸ<EFBFBD><DCB8><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>
|
||
{
|
||
m_bModify = true;
|
||
}
|
||
else
|
||
{
|
||
m_bModify = false;
|
||
}
|
||
*/
|
||
#else
|
||
m_bModify = false;
|
||
#endif
|
||
#endif
|
||
|
||
DLG_Agent_Modify dlg(this);
|
||
dlg.SetParam( *pData,pos2,false, m_bModify);
|
||
if ( dlg.DoModal() == IDOK && m_bModify)
|
||
{
|
||
SetLockItem( lItem ,true);
|
||
long lSize = sizeof(REQ_Agent_Modify)+sizeof(ANS_Agent_SeeData);
|
||
BYTE * pModifyData = new BYTE[lSize];memset(pModifyData,0,lSize);
|
||
REQ_Agent_Modify * pModify = (REQ_Agent_Modify *)pModifyData; //ͷ
|
||
ANS_Agent_SeeData * pSPData = (ANS_Agent_SeeData *)(pModifyData+sizeof(REQ_Agent_Modify));
|
||
*pSPData = dlg.GetParam();
|
||
pModify->lItem = lItem;
|
||
pModify->lCount = 1;
|
||
m_pMainFrame->SendFrame( SMSFUNC_AGENT_MODIFY , pModifyData , lSize );
|
||
}
|
||
|
||
}
|
||
void CK_Agent::On_Agent_Del()
|
||
{
|
||
return ;
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_FILT) )
|
||
{
|
||
return ;
|
||
}
|
||
long lRet = MessageBox( _T("<EFBFBD>˲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><EFBFBD><EFBFBD>˴<EFBFBD><EFBFBD><EFBFBD><EFBFBD>̣<EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_ICONQUESTION|MB_YESNOCANCEL|MB_DEFBUTTON2);
|
||
if ( lRet != IDYES )
|
||
return;
|
||
long lCount = m_wndList.GetSelectedCount();
|
||
long lSize = sizeof(REQ_Agent_Del)+sizeof(ANS_Agent_DelData)*lCount;
|
||
BYTE * pDelSend = new BYTE[lSize];memset(pDelSend,0,lSize);
|
||
REQ_Agent_Del * pDel = (REQ_Agent_Del *)pDelSend; //ͷ
|
||
ANS_Agent_DelData * pDelData = (ANS_Agent_DelData *)(pDelSend+sizeof(REQ_Agent_Del));
|
||
pDel->lCount = lCount;
|
||
POSITION pos = m_wndList.GetFirstSelectedItemPosition();
|
||
ANS_Agent_SeeData * pSPData;
|
||
POSITION pos2;
|
||
while(pos)
|
||
{
|
||
pDelData->lItem = m_wndList.GetNextSelectedItem(pos);
|
||
pos2 = (POSITION)m_wndList.GetItemData(pDelData->lItem);
|
||
pSPData = m_Agent.GetNext(pos2); //ȡ<><C8A1><EFBFBD>б<EFBFBD><D0B1>е<EFBFBD>pos
|
||
pDelData->lAgentID = pSPData->lAgentID;
|
||
pDelData ++;
|
||
}
|
||
m_pMainFrame->SendFrame( SMSFUNC_AGENT_DEL , pDelSend , lSize );
|
||
}
|
||
void CK_Agent::On_Agent_Pay()
|
||
{
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_FILT) )
|
||
{
|
||
return ;
|
||
}
|
||
long lItem = GetCurrentSelected();
|
||
if ( lItem < 0 )
|
||
return ;
|
||
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
ANS_Agent_SeeData * pData = m_Agent.GetNext( pos );
|
||
if ( !pData )
|
||
return ;
|
||
|
||
REQ_Agent_Pay * pPay = new REQ_Agent_Pay;
|
||
memset( pPay , 0 , sizeof(REQ_Agent_Pay));
|
||
_tcscpy( pPay->szAgentName , pData->szName );
|
||
pPay->fUsed = pData->fUsed;
|
||
pPay->fTotal = pData->fTotal;
|
||
pPay->lAgentID = pData->lAgentID;
|
||
pPay->lItem = lItem;
|
||
|
||
m_pMainFrame->SendFrame( SMSFUNC_AGENT_PAY , (BYTE*)pPay , sizeof(REQ_Agent_Pay) ); //ȡ<><C8A1>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>Ϣ
|
||
}
|
||
|
||
void CK_Agent::On_Agent_MmsPay()
|
||
{
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_FILT) )
|
||
{
|
||
return ;
|
||
}
|
||
long lItem = GetCurrentSelected();
|
||
if ( lItem < 0 )
|
||
return ;
|
||
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
ANS_Agent_SeeData * pData = m_Agent.GetNext( pos );
|
||
if ( !pData )
|
||
return ;
|
||
|
||
REQ_Agent_MmsPay * pPay = new REQ_Agent_MmsPay;
|
||
memset( pPay , 0 , sizeof(REQ_Agent_MmsPay));
|
||
_tcscpy( pPay->szAgentName , pData->szName );
|
||
pPay->lUsed = pData->lMmsUsed;
|
||
pPay->lTotal = pData->lMmsTotal;
|
||
pPay->fJFTotal = pData->fMmsJFTotal;
|
||
pPay->lAgentID = pData->lAgentID;
|
||
pPay->bTest = pData->bTest;
|
||
pPay->fPriceOne= pData->fMmsPriceOne;
|
||
pPay->lItem = lItem;
|
||
|
||
m_pMainFrame->SendFrame( SMSFUNC_AGENT_MMSPAY , (BYTE*)pPay , sizeof(REQ_Agent_Pay) ); //ȡ<><C8A1>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>Ϣ
|
||
}
|
||
|
||
void CK_Agent::On_Agent_Refresh()
|
||
{
|
||
RefreshInfo();
|
||
}
|
||
void CK_Agent::On_Agent_BZ()
|
||
{
|
||
long lItem = GetCurrentSelected();
|
||
if ( lItem < 0 )
|
||
return ;
|
||
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
ANS_Agent_SeeData * pData = m_Agent.GetNext( pos );
|
||
|
||
REQ_Corp_BZ_See * pBZ = new REQ_Corp_BZ_See;
|
||
memset( pBZ , 0 , sizeof(REQ_Corp_BZ_See));
|
||
pBZ->lCorpID = pData->lAgentID;
|
||
pBZ->lUserType = 1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע
|
||
pBZ->lBZType = 1; //<2F><>ҵ<EFBFBD><D2B5>Ա<EFBFBD><D4B1>ע
|
||
_tcscpy( pBZ->szName , pData->szName );
|
||
m_pMainFrame->SendFrame( SMSFUNC_CORP_BZ_SEE , (BYTE*)pBZ , sizeof(REQ_Corp_BZ_See) ); //ȡ<><C8A1>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>Ϣ
|
||
|
||
}
|
||
BOOL CK_Agent::FindLoginName(const TCHAR * pLoginName, POSITION exPos)
|
||
{
|
||
POSITION pos = m_Agent.GetHeadPosition();
|
||
POSITION pos2;
|
||
while (pos)
|
||
{
|
||
pos2 = pos;
|
||
ANS_Agent_SeeData * pData = m_Agent.GetNext( pos );
|
||
if ( pos2 != exPos )
|
||
{
|
||
if ( !_tcscmp( pData->szLoginName , pLoginName ) )
|
||
return true;
|
||
}
|
||
}
|
||
return false;
|
||
}
|
||
|
||
|
||
|
||
BOOL CK_Agent::ProcessSocket(Socket_Head_Add *pHead,BYTE* pFrame)
|
||
{
|
||
CString strTemp;
|
||
CString str;
|
||
//<2F>鿴֧<E9BFB4><D6A7><EFBFBD><EFBFBD>¼
|
||
if (pHead->lFuncType == SMSFUNC_AGENT_MMSPAY)
|
||
{
|
||
ANS_Agent_MmsPay * pPay = (ANS_Agent_MmsPay *)pFrame;
|
||
ANS_Agent_MmsPayData * pData= (ANS_Agent_MmsPayData *)(pFrame+sizeof(ANS_Agent_MmsPay));
|
||
ANS_Corp_MemberData * pMemberData= (ANS_Corp_MemberData *)(pFrame+sizeof(ANS_Agent_MmsPay)+sizeof(ANS_Agent_MmsPayData)*pPay->lCount);
|
||
if ( pPay->lCount < 0 ) //Ȩ<><EFBFBD><DEB2>㣬<EFBFBD><E3A3AC><EFBFBD>ش<EFBFBD><D8B4><EFBFBD>
|
||
return true;
|
||
/*
|
||
if ( pHead->lFrameLen == sizeof(ANS_Agent_MmsPay)+sizeof(ANS_Agent_MmsPayData)*pPay->lCount+sizeof(ANS_Corp_MemberData)*pPay->lMemberCount+sizeof(ANS_Agent_Exp) ) //<2F><><EFBFBD><EFBFBD>չͷ<D5B9><CDB7>
|
||
{
|
||
ANS_Agent_Exp * pExp = (ANS_Agent_Exp *)(pFrame+sizeof(ANS_Agent_MmsPay)+sizeof(ANS_Agent_MmsPayData)*pPay->lCount+sizeof(ANS_Corp_MemberData)*pPay->lMemberCount);
|
||
if ( pExp->lExpID == CORP_AGENT_EXP_ID&& !pExp->bOK)
|
||
{
|
||
str.Format(_T("%sȱ<73><C8B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD><EFBFBD>鲹ȫ<E9B2B9><C8AB><EFBFBD>ٳ<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n%s") , pPay->szAgentName,pExp->szNoData);
|
||
int iRet=MessageBox(str,_T("<22><>ʾ") , MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2);
|
||
if ( iRet != IDYES )
|
||
{
|
||
return true;
|
||
}
|
||
}
|
||
}
|
||
*/
|
||
|
||
DLG_Agent_MmsPay dlg(this);
|
||
//dlg.SetParam( *pPay , pData , pMemberData );
|
||
dlg.SetParam( *pPay , pData );
|
||
if ( dlg.DoModal() == IDOK && dlg.m_lModifyCount>0 )
|
||
{
|
||
/*
|
||
long lSize = sizeof(REQ_Agent_MmsPayModify) + sizeof(ANS_Agent_MmsPayData)*dlg.m_lModifyCount;
|
||
BYTE * pDataSend = new BYTE[lSize];memset( pDataSend , 0 , lSize );
|
||
REQ_Agent_MmsPayModify * pModifySend = (REQ_Agent_MmsPayModify*)pDataSend;
|
||
ANS_Agent_MmsPayData * pPaySend = (ANS_Agent_MmsPayData *)(pDataSend+sizeof(REQ_Agent_MmsPayModify));
|
||
pModifySend->lAgentID = pPay->lAgentID;
|
||
pModifySend->lItem = pPay->lItem;
|
||
pModifySend->lTotal = dlg.m_PayReq.lTotal; //ȡ<><C8A1><EFBFBD>ĺ<DEB8><C4BA><EFBFBD><EFBFBD>ܶ<EFBFBD>
|
||
pModifySend->lUsed= dlg.m_PayReq.lUsed;
|
||
pModifySend->fJFTotal= dlg.m_PayReq.fJFTotal;
|
||
pModifySend->lCount = dlg.m_lModifyCount;
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
|
||
ANS_Agent_MmsPayData * pPayTemp;
|
||
while (!dlg.m_Pay.IsEmpty())
|
||
{
|
||
pPayTemp = dlg.m_Pay.GetHead();
|
||
dlg.m_Pay.RemoveHead();
|
||
if (pPayTemp->ucStatus != 0 ) //<2F><>Ϊ0,<2C><>Ҫ<EFBFBD><EFBFBD>
|
||
{
|
||
*pPaySend = *pPayTemp;
|
||
pPaySend ++;
|
||
}
|
||
delete pPayTemp;
|
||
}
|
||
m_pMainFrame->SendFrame( SMSFUNC_AGENT_MMSPAYMODIFY , pDataSend , lSize );
|
||
*/
|
||
}
|
||
else
|
||
{
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
|
||
ANS_Agent_MmsPayData * pPayTemp;
|
||
while (!dlg.m_Pay.IsEmpty())
|
||
{
|
||
pPayTemp = dlg.m_Pay.GetHead();
|
||
dlg.m_Pay.RemoveHead();
|
||
delete pPayTemp;
|
||
}
|
||
}
|
||
|
||
return true;
|
||
}
|
||
/*
|
||
//<2F>ɷѼ<C9B7>¼<EFBFBD><EFBFBD>
|
||
if (pHead->lFuncType == SMSFUNC_AGENT_MMSPAYMODIFY)
|
||
{
|
||
ANS_Agent_MmsPayModify* pModify = (ANS_Agent_MmsPayModify*)pFrame;
|
||
ANS_Agent_MmsPayData * pData = (ANS_Agent_MmsPayData *)(pFrame+sizeof(ANS_Agent_MmsPayModify));
|
||
|
||
if ( pModify->lCount == -12 )
|
||
{
|
||
MessageBox( _T("<22><><EFBFBD>Ӷ<EFBFBD><D3B6><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㣡") , _T("<22><><EFBFBD><EFBFBD>") , MB_ICONWARNING );
|
||
return true;
|
||
}
|
||
if ( pModify->lCount<0 )
|
||
{
|
||
MessageBox( _T("<22><><EFBFBD>Ӷ<EFBFBD><D3B6><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>δ֪ԭ<D6AA><D4AD><EFBFBD><EFBFBD>") , _T("<22><><EFBFBD><EFBFBD>") , MB_ICONWARNING );
|
||
return true;
|
||
}
|
||
|
||
if ( pModify->lItem >= 0 )
|
||
{
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(pModify->lItem);
|
||
ANS_Agent_SeeData * pData2 = m_Agent.GetNext( pos );
|
||
if ( pData2 )
|
||
{
|
||
pData2->lMmsTotal = pModify->lTotal;
|
||
pData2->lMmsUsed = pModify->lUsed;
|
||
pData2->fMmsJFTotal = pModify->fJFTotal;
|
||
|
||
strTemp.Format( _T("%10d"),pData2->lMmsUsed );
|
||
m_wndList.SetItemText(pModify->lItem,9,strTemp);
|
||
|
||
strTemp.Format( _T("%10d"),pData2->lMmsTotal );
|
||
m_wndList.SetItemText(pModify->lItem,10,strTemp);
|
||
|
||
strTemp.Format( _T("%.2f"),pData2->fMmsJFTotal );
|
||
m_wndList.SetItemText(pModify->lItem,11,strTemp);
|
||
}
|
||
}
|
||
return true;
|
||
}
|
||
*/
|
||
|
||
//<2F>鿴<EFBFBD><E9BFB4>ϵ<EFBFBD><CFB5>
|
||
if (pHead->lFuncType == SMSFUNC_CORP_FP)
|
||
{
|
||
ANS_Corp_FP * pFP = (ANS_Corp_FP *)pFrame;
|
||
ANS_Corp_FPData * pData = (ANS_Corp_FPData *)(pFrame + sizeof(ANS_Corp_FP));
|
||
if (pFP->lCount < 0) //Ȩ<><EFBFBD><DEB2><EFBFBD>
|
||
return true;
|
||
DLG_Corp_FP dlg(this);
|
||
dlg.SetParam(*pFP, pData, 1, m_bModify); //<2F><>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>Ϊ:1(<28><><EFBFBD><EFBFBD>)
|
||
if (dlg.DoModal() == IDOK && dlg.m_lModifyCount>0 && m_bModify)
|
||
{
|
||
long lSize = sizeof(REQ_Corp_FPModify) + sizeof(ANS_Corp_FPData)*dlg.m_lModifyCount;
|
||
BYTE * pDataSend = new BYTE[lSize]; memset(pDataSend, 0, lSize);
|
||
REQ_Corp_FPModify * pModifySend = (REQ_Corp_FPModify*)pDataSend;
|
||
ANS_Corp_FPData * pFPSend = (ANS_Corp_FPData *)(pDataSend + sizeof(REQ_Corp_FPModify));
|
||
pModifySend->lCorpID = pFP->lCorpID;
|
||
pModifySend->lCount = dlg.m_lModifyCount;
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
|
||
ANS_Corp_FPData * pFPTemp;
|
||
while (!dlg.m_FP.IsEmpty())
|
||
{
|
||
pFPTemp = dlg.m_FP.GetHead();
|
||
//pFPTemp->lCorpType = 0; //ǿ<><C7BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>Ϊ:0(<28><>ҵ)
|
||
dlg.m_FP.RemoveHead();
|
||
if (pFPTemp->ucStatus != 0) //<2F><>Ϊ0,<2C><>Ҫ<EFBFBD><EFBFBD>
|
||
{
|
||
*pFPSend = *pFPTemp;
|
||
pFPSend++;
|
||
}
|
||
delete pFPTemp;
|
||
}
|
||
m_pMainFrame->SendFrame(SMSFUNC_CORP_FPMODIFY, pDataSend, lSize);
|
||
}
|
||
else
|
||
{
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
|
||
ANS_Corp_FPData * pFPTemp;
|
||
while (!dlg.m_FP.IsEmpty())
|
||
{
|
||
pFPTemp = dlg.m_FP.GetHead();
|
||
dlg.m_FP.RemoveHead();
|
||
delete pFPTemp;
|
||
}
|
||
}
|
||
|
||
return true;
|
||
}
|
||
//<2F><>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>
|
||
if (pHead->lFuncType == SMSFUNC_CORP_FPMODIFY)
|
||
{
|
||
return true;
|
||
}
|
||
|
||
if (pHead->lFuncType == SMSFUNC_CORP_SF_SEE)
|
||
{
|
||
ANS_Corp_SF_See * pSFSee = (ANS_Corp_SF_See *)pFrame;
|
||
if (pSFSee->lCount < 0) //Ȩ<><EFBFBD><DEB2><EFBFBD>
|
||
return true;
|
||
ANS_Corp_SFData * pData = (ANS_Corp_SFData *)(pFrame + sizeof(ANS_Corp_SF_See));
|
||
ANS_Corp_LXR_YWYData * pYWYData = (ANS_Corp_LXR_YWYData *)(pFrame + sizeof(ANS_Corp_LXR) + sizeof(ANS_Corp_LXRData)*pSFSee->lCount);
|
||
DLG_Corp_SF dlg(this);
|
||
dlg.SetParam(pSFSee, pData, pYWYData); //<2F><>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>Ϊ:0(<28><>ҵ)
|
||
m_pSFDlg = &dlg;
|
||
dlg.DoModal();
|
||
m_pSFDlg = NULL;
|
||
return true;
|
||
}
|
||
|
||
if (pHead->lFuncType == SMSFUNC_CORP_SF_ADD ||
|
||
pHead->lFuncType == SMSFUNC_CORP_SF_CANCEL ||
|
||
pHead->lFuncType == SMSFUNC_CORP_SF_ROUTE)
|
||
{
|
||
if (m_pSFDlg)
|
||
{
|
||
m_pSFDlg->ProcessSocket(pHead, pFrame);
|
||
}
|
||
return true;
|
||
}
|
||
|
||
if (pHead->lFuncType == SMSFUNC_CORP_ANALYSE )
|
||
{
|
||
if (m_pAnalyseDlg)
|
||
{
|
||
m_pAnalyseDlg->ProcessSocket(pHead, pFrame);
|
||
}
|
||
return true;
|
||
}
|
||
|
||
return false;
|
||
}
|
||
|
||
void CK_Agent::On_Agent_LXR()
|
||
{
|
||
if (!m_pMainFrame->GetUserPurview(PURVIEW_FILT))
|
||
{
|
||
return;
|
||
}
|
||
long lItem = GetCurrentSelected();
|
||
if (lItem < 0)
|
||
return;
|
||
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
ANS_Agent_SeeData * pData = m_Agent.GetNext(pos);
|
||
if (!pData)
|
||
return;
|
||
|
||
m_bModify = false;
|
||
|
||
#ifdef SMSCENTER_ADC
|
||
if (COleDateTime(pData->tCreateTime).GetStatus() != COleDateTime::valid) //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD>
|
||
::GetLocalTime(&pData->tCreateTime);
|
||
//if ( pData->szStatus[0] == '1' && //״̬Ϊδ<CEAA><CEB4><EFBFBD><EFBFBD>
|
||
// (COleDateTime::GetCurrentTime()-COleDateTime(pData->tReg)) < COleDateTimeSpan(2,0,0,0) ) //<2F><>ͨʱ<CDA8><CAB1>С<EFBFBD><D0A1>7<EFBFBD>ղ<EFBFBD><D5B2>ܸ<EFBFBD><DCB8><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>
|
||
if (pData->lHT_Recv.lYear <= 0 && pData->lHT_Send.lYear <= 0 && //<2F><>ͬδ<CDAC>ij<EFBFBD><C4B3><EFBFBD>δ<EFBFBD><CEB4><EFBFBD>ն<EFBFBD><D5B6>ɸ<EFBFBD><C9B8><EFBFBD>
|
||
((COleDateTime::GetCurrentTime() - COleDateTime(pData->tCreateTime)) < COleDateTimeSpan(180, 0, 0, 0)))
|
||
{
|
||
m_bModify = true; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
}
|
||
#else
|
||
#ifdef MANAGER_VER_YWY
|
||
m_bModify = true;
|
||
/*
|
||
if (pData->lStatus == 1 && //״̬Ϊδ<CEAA><CEB4><EFBFBD><EFBFBD>
|
||
((COleDateTime::GetCurrentTime() - COleDateTime(pData->tCreateTime)) < COleDateTimeSpan(10, 0, 0, 0))) //<2F><>ͨʱ<CDA8><CAB1>С<EFBFBD><D0A1>7<EFBFBD>ղ<EFBFBD><D5B2>ܸ<EFBFBD><DCB8><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>
|
||
{
|
||
m_bModify = true;
|
||
}
|
||
else
|
||
{
|
||
m_bModify = false;
|
||
}
|
||
*/
|
||
#else
|
||
m_bModify = false;
|
||
#endif
|
||
#endif
|
||
|
||
|
||
REQ_Corp_LXR * pLXR = new REQ_Corp_LXR;
|
||
memset(pLXR, 0, sizeof(REQ_Corp_LXR));
|
||
_tcscpy(pLXR->szCorpName, pData->szName);
|
||
_stprintf(pLXR->szSMSNum, _T("%d"), pData->lAgentID);
|
||
_tcscpy(pLXR->szAddress, pData->szAddress);
|
||
//_tcscpy( pLXR->szPostCode , pData->sz );
|
||
|
||
pLXR->lCorpID = pData->lAgentID;
|
||
pLXR->lCorpType = 1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ
|
||
m_pMainFrame->SendFrame(SMSFUNC_CORP_LXR, (BYTE*)pLXR, sizeof(REQ_Corp_LXR)); //ȡ<><C8A1>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>Ϣ
|
||
|
||
}
|
||
|
||
void CK_Agent::On_Agent_FP()
|
||
{
|
||
if (!m_pMainFrame->GetUserPurview(PURVIEW_FILT))
|
||
{
|
||
return;
|
||
}
|
||
long lItem = GetCurrentSelected();
|
||
if (lItem < 0)
|
||
return;
|
||
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
ANS_Agent_SeeData * pData = m_Agent.GetNext(pos);
|
||
if (!pData)
|
||
return;
|
||
|
||
m_bModify = false;
|
||
|
||
#ifdef SMSCENTER_ADC
|
||
if (COleDateTime(pData->tCreateTime).GetStatus() != COleDateTime::valid) //<2F><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD>
|
||
::GetLocalTime(&pData->tCreateTime);
|
||
//if ( pData->szStatus[0] == '1' && //״̬Ϊδ<CEAA><CEB4><EFBFBD><EFBFBD>
|
||
// (COleDateTime::GetCurrentTime()-COleDateTime(pData->tReg)) < COleDateTimeSpan(2,0,0,0) ) //<2F><>ͨʱ<CDA8><CAB1>С<EFBFBD><D0A1>7<EFBFBD>ղ<EFBFBD><D5B2>ܸ<EFBFBD><DCB8><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>
|
||
if (pData->lHT_Recv.lYear <= 0 && pData->lHT_Send.lYear <= 0 && //<2F><>ͬδ<CDAC>ij<EFBFBD><C4B3><EFBFBD>δ<EFBFBD><CEB4><EFBFBD>ն<EFBFBD><D5B6>ɸ<EFBFBD><C9B8><EFBFBD>
|
||
((COleDateTime::GetCurrentTime() - COleDateTime(pData->tCreateTime)) < COleDateTimeSpan(180, 0, 0, 0)))
|
||
{
|
||
m_bModify = true; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
}
|
||
#else
|
||
#ifdef MANAGER_VER_YWY
|
||
m_bModify = true;
|
||
/*
|
||
if (pData->lStatus == 1 && //״̬Ϊδ<CEAA><CEB4><EFBFBD><EFBFBD>
|
||
((COleDateTime::GetCurrentTime() - COleDateTime(pData->tCreateTime)) < COleDateTimeSpan(10, 0, 0, 0))) //<2F><>ͨʱ<CDA8><CAB1>С<EFBFBD><D0A1>7<EFBFBD>ղ<EFBFBD><D5B2>ܸ<EFBFBD><DCB8><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>
|
||
{
|
||
m_bModify = true;
|
||
}
|
||
else
|
||
{
|
||
m_bModify = false;
|
||
}
|
||
*/
|
||
#else
|
||
m_bModify = false;
|
||
#endif
|
||
#endif
|
||
|
||
REQ_Corp_FP * pFP = new REQ_Corp_FP;
|
||
memset(pFP, 0, sizeof(REQ_Corp_FP));
|
||
_tcscpy(pFP->szCorpName, pData->szName);
|
||
_tcscpy(pFP->szAddress, pData->szAddress);
|
||
pFP->lCorpID = pData->lAgentID;
|
||
pFP->lCorpType = 1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ
|
||
m_pMainFrame->SendFrame(SMSFUNC_CORP_FP, (BYTE*)pFP, sizeof(REQ_Corp_FP)); //ȡ<><C8A1>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>Ϣ
|
||
|
||
}
|
||
|
||
|
||
void CK_Agent::On_Agent_SF()
|
||
{
|
||
if (!m_pMainFrame->GetUserPurview(PURVIEW_CORP_MODIFY))
|
||
{
|
||
return;
|
||
}
|
||
long lItem = GetCurrentSelected();
|
||
if (lItem < 0)
|
||
return;
|
||
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
ANS_Agent_SeeData * pData = m_Agent.GetNext(pos);
|
||
REQ_Corp_SF_See * pSF = new REQ_Corp_SF_See;
|
||
memset(pSF, 0, sizeof(REQ_Corp_SF_See));
|
||
_tcscpy(pSF->szCorpName, pData->szName);
|
||
_tcscpy(pSF->szAddress, pData->szAddress);
|
||
_tcscpy(pSF->szPostCode, pData->szPostcode);
|
||
pSF->lCorpID = pData->lAgentID;
|
||
pSF->lCorpType = 1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
pSF->lPayType = 0;//<2F>dz<EFBFBD>ֵ
|
||
pSF->lPayID = 0; //<2F><>ֵID
|
||
pSF->fPrice = 0.0f; //<2F><>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
|
||
|
||
m_pMainFrame->SendFrame(SMSFUNC_CORP_SF_SEE, (BYTE*)pSF, sizeof(REQ_Corp_SF_See)); //ȡ<><C8A1>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>Ϣ
|
||
}
|
||
|
||
void CK_Agent::On_Agent_Analyse()
|
||
{
|
||
if (!m_pMainFrame->GetUserPurview(PURVIEW_FILT))
|
||
{
|
||
return;
|
||
}
|
||
long lItem = GetCurrentSelected();
|
||
if (lItem < 0)
|
||
return;
|
||
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
ANS_Agent_SeeData * pData = m_Agent.GetNext(pos);
|
||
if (!pData)
|
||
return;
|
||
|
||
m_bModify = false;
|
||
|
||
|
||
DLG_Corp_Analyse dlg(this);
|
||
dlg.SetParam(this->m_pMainFrame, pData->lAgentID, 1, lItem, pData->szName);
|
||
this->m_pAnalyseDlg = &dlg;
|
||
dlg.DoModal();
|
||
m_pAnalyseDlg = NULL;
|
||
|
||
}
|
||
|
||
void CK_Agent::On_Agent_OPER()
|
||
{
|
||
if (!m_pMainFrame->GetUserPurview(PURVIEW_FILT))
|
||
{
|
||
return;
|
||
}
|
||
long lItem = GetCurrentSelected();
|
||
if (lItem < 0)
|
||
return;
|
||
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
ANS_Agent_SeeData * pData = m_Agent.GetNext(pos);
|
||
if (!pData)
|
||
return;
|
||
|
||
m_bModify = false;
|
||
|
||
REQ_Corp_Oper_See * pBZ = new REQ_Corp_Oper_See;
|
||
memset(pBZ, 0, sizeof(REQ_Corp_Oper_See));
|
||
pBZ->lCorpID = pData->lAgentID;
|
||
pBZ->lUserType = 1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
_tcscpy(pBZ->szName, pData->szName);
|
||
m_pMainFrame->SendFrame(SMSFUNC_CORP_OPER_SEE, (BYTE*)pBZ, sizeof(REQ_Corp_Oper_See)); //ȡ<><C8A1>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>Ϣ
|
||
|
||
} |