172 lines
4.2 KiB
C++
172 lines
4.2 KiB
C++
// DLG_Corp_SF.cpp : 实现文件
|
|
//
|
|
|
|
#include "stdafx.h"
|
|
#include "SmsManager.h"
|
|
#include "DLG_Corp_SF.h"
|
|
#include "afxdialogex.h"
|
|
#include "DLG_Corp_LXR_SF.h"
|
|
|
|
// DLG_Corp_SF 对话框
|
|
|
|
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 消息处理程序
|
|
|
|
|
|
BOOL DLG_Corp_SF::OnInitDialog()
|
|
{
|
|
CDialogEx::OnInitDialog();
|
|
|
|
m_strCorpName = m_See.szCorpName;
|
|
m_strSmsNum = m_See.szSMSNum;
|
|
|
|
this->UpdateData(false);
|
|
|
|
//初始化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("序号,50; 状态,60; 下单时间,130;运单号,120; 寄件内容,120; 收件人,100; 地址,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_PTR)pos);
|
|
int iTemp = 1;
|
|
switch (pData->lStatus)
|
|
{
|
|
case 1:
|
|
m_wndList.SetItemText(i, iTemp++, _T("已取消"));
|
|
break;
|
|
case 2:
|
|
m_wndList.SetItemText(i, iTemp++, _T("已收件"));
|
|
break;
|
|
case 3:
|
|
m_wndList.SetItemText(i, iTemp++, _T("已签收"));
|
|
break;
|
|
case 0:
|
|
default:
|
|
m_wndList.SetItemText(i, iTemp++, _T("已下单"));
|
|
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
|
|
// 异常: OCX 属性页应返回 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: 在此添加控件通知处理程序代码
|
|
*pResult = 0;
|
|
}
|