123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148 |
- // DlgAnnex.cpp : 实现文件
- //
- #include "stdafx.h"
- #include "YLGL.h"
- #include "DlgAnnex.h"
- #include "ShowPhoto.h"
- // CDlgAnnex 对话框
- IMPLEMENT_DYNAMIC(CDlgAnnex, CDialog)
- CDlgAnnex::CDlgAnnex(CWnd* pParent /*=NULL*/)
- : CDialog(CDlgAnnex::IDD, pParent),m_pvtAnnex(NULL)
- {
- }
- CDlgAnnex::~CDlgAnnex()
- {
- }
- void CDlgAnnex::DoDataExchange(CDataExchange* pDX)
- {
- CDialog::DoDataExchange(pDX);
- DDX_Control(pDX, IDC_LIST1, m_list_box);
- }
- BEGIN_MESSAGE_MAP(CDlgAnnex, CDialog)
- ON_LBN_DBLCLK(IDC_LIST1, &CDlgAnnex::OnLbnDblclkList1)
- ON_BN_CLICKED(BTN_LOOK, &CDlgAnnex::OnBnClickedLook)
- ON_BN_CLICKED(BTN_DELETE, &CDlgAnnex::OnBnClickedDelete)
- END_MESSAGE_MAP()
- // CDlgAnnex 消息处理程序
- BOOL CDlgAnnex::OnInitDialog()
- {
- CDialog::OnInitDialog();
- // TODO: 在此添加额外的初始化
- if ( m_pvtAnnex != NULL )
- {
- for ( vector<Annex>::iterator it = m_pvtAnnex->begin(); it != m_pvtAnnex->end(); it++ )
- {
- m_list_box.AddString(it->strMD5);
- }
- }
- return TRUE; // return TRUE unless you set the focus to a control
- // 异常: OCX 属性页应返回 FALSE
- }
- void CDlgAnnex::OnOK()
- {
- // TODO: 在此添加专用代码和/或调用基类
- CDialog::OnOK();
- }
- void CDlgAnnex::OnCancel()
- {
- // TODO: 在此添加专用代码和/或调用基类
- CDialog::OnCancel();
- }
- void CDlgAnnex::OnLbnDblclkList1()
- {
- // TODO: 在此添加控件通知处理程序代码
- OnBnClickedLook();
- }
- void CDlgAnnex::OnBnClickedLook()
- {
- // TODO: 在此添加控件通知处理程序代码
- int nSel = m_list_box.GetCurSel();
- if ( nSel != LB_ERR )
- {
- CString strMd5;
- m_list_box.GetText(nSel,strMd5);
- vector<Annex>::iterator it = m_pvtAnnex->begin();
- for ( ;it != m_pvtAnnex->end(); it++ )
- {
- if ( it->strMD5 == strMd5 )
- {
- ShowPhoto dlg;
- dlg.m_pImg = it->pImage;
- dlg.DoModal();
- break;
- }
- }
- }
- }
- void CDlgAnnex::OnBnClickedDelete()
- {
- int nSel = m_list_box.GetCurSel();
- if ( nSel != LB_ERR )
- {
- CString strMd5;
- m_list_box.GetText(nSel,strMd5);
- DWORD dwSendLen = strMd5.GetLength() + m_staff_id.GetLength() + m_staff_citizen_id_number.GetLength() + m_strImageType.GetLength() + 4*sizeof(DWORD);
- BYTE *pSendData = new BYTE[dwSendLen];
- DWORD dwLen0 = strMd5.GetLength();
- // 相片名称;
- memcpy(pSendData, &dwLen0, sizeof(DWORD));
- memcpy(pSendData + sizeof(DWORD), strMd5.GetString(), dwLen0);
- // 员工编号;
- DWORD dwLen = m_staff_id.GetLength();
- memcpy(pSendData + dwLen0 + sizeof(DWORD), &dwLen, sizeof(DWORD));
- memcpy(pSendData + dwLen0 + 2*sizeof(DWORD), m_staff_id.GetString(), dwLen);
- // 员工身份证号;
- DWORD dwLen1 = m_staff_citizen_id_number.GetLength();
- memcpy(pSendData + dwLen0 + 2*sizeof(DWORD) + dwLen, &dwLen1, sizeof(DWORD));
- memcpy(pSendData + dwLen0 + 3*sizeof(DWORD) + dwLen, m_staff_citizen_id_number.GetString(), dwLen1);
- // 相片类型;
- DWORD dwLen2 = m_strImageType.GetLength();
- memcpy(pSendData + dwLen0 + 3*sizeof(DWORD) + dwLen + dwLen1, &dwLen2, sizeof(DWORD));
- memcpy(pSendData + dwLen0 + 4*sizeof(DWORD) + dwLen + dwLen1, m_strImageType.GetString(), dwLen2);
- g_nSendCode = 42;
- g_pMainWnd->ProcessChatMessageRequest2(pSendData, dwSendLen);
- g_nSendCode = 0;
- delete[]pSendData;
- if (g_bSendOK == 0)
- {
- return;
- }
- m_list_box.DeleteString(nSel);
- for (vector<Annex>::iterator it = m_pvtAnnex->begin(); it != m_pvtAnnex->end(); it++ )
- {
- if ( it->strMD5 == strMd5 )
- {
- m_pvtAnnex->erase(it);
- break;
- }
- }
- AfxMessageBox(_T("删除文件成功"));
- }
- }
|