172 lines
4.2 KiB
C++
172 lines
4.2 KiB
C++
|
// DLG_Corp_SF.cpp : ʵ<><CAB5><EFBFBD>ļ<EFBFBD>
|
|||
|
//
|
|||
|
|
|||
|
#include "stdafx.h"
|
|||
|
#include "SmsManager.h"
|
|||
|
#include "DLG_Corp_SF.h"
|
|||
|
#include "afxdialogex.h"
|
|||
|
#include "DLG_Corp_LXR_SF.h"
|
|||
|
|
|||
|
// DLG_Corp_SF <20>Ի<EFBFBD><D4BB><EFBFBD>
|
|||
|
|
|||
|
IMPLEMENT_DYNAMIC(DLG_Corp_SF, CDialogEx)
|
|||
|
|
|||
|
DLG_Corp_SF::DLG_Corp_SF(CWnd* pParent /*=NULL*/)
|
|||
|
: CDialogEx(IDD_CORP_SF, pParent)
|
|||
|
, m_strCorpName(_T(""))
|
|||
|
, m_strSmsNum(_T(""))
|
|||
|
{
|
|||
|
memset(&m_See, 0, sizeof(m_See));
|
|||
|
m_pSFData = NULL;
|
|||
|
m_pYWYData = NULL;
|
|||
|
m_pSFDlg = NULL;
|
|||
|
}
|
|||
|
|
|||
|
DLG_Corp_SF::~DLG_Corp_SF()
|
|||
|
{
|
|||
|
}
|
|||
|
|
|||
|
void DLG_Corp_SF::DoDataExchange(CDataExchange* pDX)
|
|||
|
{
|
|||
|
CDialogEx::DoDataExchange(pDX);
|
|||
|
DDX_Text(pDX, IDC_CORP_SF_CORPNME, m_strCorpName);
|
|||
|
DDX_Text(pDX, IDC_CORP_SF_SMSNUM, m_strSmsNum);
|
|||
|
DDX_Control(pDX, IDC_CORP_SF_LIST, m_wndList);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
BEGIN_MESSAGE_MAP(DLG_Corp_SF, CDialogEx)
|
|||
|
ON_NOTIFY(NM_DBLCLK, IDC_CORP_SF_LIST, &DLG_Corp_SF::OnNMDblclkCorpSfList)
|
|||
|
ON_NOTIFY(LVN_ITEMCHANGED, IDC_CORP_SF_LIST, &DLG_Corp_SF::OnLvnItemchangedCorpSfList)
|
|||
|
END_MESSAGE_MAP()
|
|||
|
|
|||
|
|
|||
|
// DLG_Corp_SF <20><>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|||
|
|
|||
|
BOOL DLG_Corp_SF::OnInitDialog()
|
|||
|
{
|
|||
|
CDialogEx::OnInitDialog();
|
|||
|
|
|||
|
m_strCorpName = m_See.szCorpName;
|
|||
|
m_strSmsNum = m_See.szSMSNum;
|
|||
|
|
|||
|
this->UpdateData(false);
|
|||
|
|
|||
|
//<2F><>ʼ<EFBFBD><CABC>List
|
|||
|
m_Image.Create(16, 16, ILC_COLOR16 | ILC_MASK, 5, 5);
|
|||
|
//m_Image.Add(AfxGetApp()->LoadIcon(IDI_L_CORP));
|
|||
|
m_Image.Add(AfxGetApp()->LoadIcon(IDI_L_SWTSQ));
|
|||
|
|
|||
|
m_wndList.SubClassWindow2();
|
|||
|
m_wndList.SetHeadings(_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,50; ״̬,60; <20>µ<EFBFBD>ʱ<EFBFBD><CAB1>,130;<3B>˵<EFBFBD><CBB5><EFBFBD>,120; <20>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>,120; <20>ռ<EFBFBD><D5BC><EFBFBD>,100; <20><>ַ,250;"));
|
|||
|
m_wndList.SetGridLines(true);
|
|||
|
m_wndList.SetImageList(&m_Image, LVSIL_SMALL);
|
|||
|
|
|||
|
POSITION pos;
|
|||
|
TCHAR Buf[32];
|
|||
|
CString str;
|
|||
|
for (int i = 0; i< m_See.lCount; i++)
|
|||
|
{
|
|||
|
ANS_Corp_SFData * pData = new ANS_Corp_SFData;
|
|||
|
*pData = m_pSFData[i];
|
|||
|
pos = m_SF.AddTail(pData);
|
|||
|
_stprintf(Buf, _T("%d"), i + 1);
|
|||
|
m_wndList.InsertItem(i, Buf, 0);
|
|||
|
m_wndList.SetItemData(i, (DWORD)pos);
|
|||
|
int iTemp = 1;
|
|||
|
switch (pData->lStatus)
|
|||
|
{
|
|||
|
case 1:
|
|||
|
m_wndList.SetItemText(i, iTemp++, _T("<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>"));
|
|||
|
break;
|
|||
|
case 2:
|
|||
|
m_wndList.SetItemText(i, iTemp++, _T("<EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD>"));
|
|||
|
break;
|
|||
|
case 3:
|
|||
|
m_wndList.SetItemText(i, iTemp++, _T("<EFBFBD><EFBFBD>ǩ<EFBFBD><EFBFBD>"));
|
|||
|
break;
|
|||
|
case 0:
|
|||
|
default:
|
|||
|
m_wndList.SetItemText(i, iTemp++, _T("<EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD>"));
|
|||
|
break;
|
|||
|
}
|
|||
|
str.Format(_T("%04d.%02d.%02d %02d:%02d"), pData->tCreate.wYear, pData->tCreate.wMonth, pData->tCreate.wDay, pData->tCreate.wHour,pData->tCreate.wMinute);
|
|||
|
m_wndList.SetItemText(i, iTemp++, str);
|
|||
|
|
|||
|
m_wndList.SetItemText(i, iTemp++, pData->Res_mailno);
|
|||
|
m_wndList.SetItemText(i, iTemp++, pData->Cargo_name);
|
|||
|
m_wndList.SetItemText(i, iTemp++, pData->d_contact);
|
|||
|
m_wndList.SetItemText(i, iTemp++, pData->d_address);
|
|||
|
}
|
|||
|
|
|||
|
return TRUE; // return TRUE unless you set the focus to a control
|
|||
|
// <20>쳣: OCX <20><><EFBFBD><EFBFBD>ҳӦ<D2B3><D3A6><EFBFBD><EFBFBD> FALSE
|
|||
|
}
|
|||
|
|
|||
|
long DLG_Corp_SF::GetCurrentSelected()
|
|||
|
{
|
|||
|
POSITION pos = m_wndList.GetFirstSelectedItemPosition();
|
|||
|
if (pos)
|
|||
|
{
|
|||
|
return m_wndList.GetNextSelectedItem(pos);
|
|||
|
}
|
|||
|
return -1;
|
|||
|
}
|
|||
|
|
|||
|
void DLG_Corp_SF::OnNMDblclkCorpSfList(NMHDR *pNMHDR, LRESULT *pResult)
|
|||
|
{
|
|||
|
LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);
|
|||
|
|
|||
|
|
|||
|
long lItem = GetCurrentSelected();
|
|||
|
if (lItem < 0)
|
|||
|
return;
|
|||
|
|
|||
|
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
|||
|
POSITION pos2 = pos;
|
|||
|
ANS_Corp_SFData * pData = m_SF.GetNext(pos);
|
|||
|
if (pData)
|
|||
|
{
|
|||
|
DLG_Corp_LXR_SF dlg(this);
|
|||
|
m_pSFDlg = &dlg;
|
|||
|
//dlg.SetParam(m_See.lYWYCount,m_See.lDefaultYWYID,m_pYWYData,*pData,false);
|
|||
|
dlg.SetParam(0,0,NULL, *pData, false);
|
|||
|
dlg.DoModal();
|
|||
|
m_pSFDlg = NULL;
|
|||
|
}
|
|||
|
|
|||
|
*pResult = 0;
|
|||
|
}
|
|||
|
|
|||
|
BOOL DLG_Corp_SF::ProcessSocket(Socket_Head_Add *pHead, BYTE *pFrame)
|
|||
|
{
|
|||
|
if (pHead->lFuncType == SMSFUNC_CORP_SF_ADD ||
|
|||
|
pHead->lFuncType == SMSFUNC_CORP_SF_CANCEL ||
|
|||
|
pHead->lFuncType == SMSFUNC_CORP_SF_ROUTE)
|
|||
|
{
|
|||
|
//ANS_Corp_SF_Add * pAdd = (ANS_Corp_SF_Add *)pFrame;
|
|||
|
//ANS_Corp_SFData * pData = (ANS_Corp_SFData *)(pFrame + sizeof(ANS_Corp_SF_Add));
|
|||
|
if (this->m_pSFDlg)
|
|||
|
{
|
|||
|
m_pSFDlg->ProcessSocket(pHead, pFrame);
|
|||
|
}
|
|||
|
return true;
|
|||
|
}
|
|||
|
return false;
|
|||
|
}
|
|||
|
void DLG_Corp_SF::SetParam(ANS_Corp_SF_See * pSee, ANS_Corp_SFData * pSFData, ANS_Corp_LXR_YWYData * pYWYData)
|
|||
|
{
|
|||
|
m_See = *pSee;
|
|||
|
m_pSFData = pSFData;
|
|||
|
m_pYWYData = pYWYData;
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
void DLG_Corp_SF::OnLvnItemchangedCorpSfList(NMHDR *pNMHDR, LRESULT *pResult)
|
|||
|
{
|
|||
|
LPNMLISTVIEW pNMLV = reinterpret_cast<LPNMLISTVIEW>(pNMHDR);
|
|||
|
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
*pResult = 0;
|
|||
|
}
|