SmsManager/DLG_Corp_SF.cpp

172 lines
4.2 KiB
C++
Raw Normal View History

2025-01-14 10:46:18 +08:00
// 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;
}