// ClientContract.cpp : implementation file // #include "stdafx.h" #include "ylgl.h" #include "ClientContract.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // ClientContract dialog ClientContract::ClientContract(CWnd* pParent /*=NULL*/) : CDialog(ClientContract::IDD, pParent) { //{{AFX_DATA_INIT(ClientContract) //}}AFX_DATA_INIT } void ClientContract::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(ClientContract) DDX_Control(pDX, IDC_LIST1, m_List1); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(ClientContract, CDialog) //{{AFX_MSG_MAP(ClientContract) ON_BN_CLICKED(IDC_BUTadd, OnBUTadd) ON_BN_CLICKED(IDC_BUTdel, OnBUTdel) ON_BN_CLICKED(IDC_BUTshow, OnBUTshow) ON_NOTIFY(NM_DBLCLK, IDC_LIST1, OnDblclkList1) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // ClientContract message handlers BOOL ClientContract::OnInitDialog() { CDialog::OnInitDialog(); // TODO: Add extra initialization here if(IsHasRights2new(16)==1 || IsHasRights2new(49)==1) { GetDlgItem(IDC_BUTadd)->EnableWindow(1); GetDlgItem(IDC_BUTdel)->EnableWindow(1); } else { GetDlgItem(IDC_BUTadd)->EnableWindow(0); GetDlgItem(IDC_BUTdel)->EnableWindow(0); } m_List1.SetHeadings( "编号,50;上传日期,150" ); m_List1.LoadColumnInfo (304); GetData(); this->CenterWindow (g_pMainWnd); return false; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void ClientContract::OnCancel() { // TODO: Add extra cleanup here CDialog::OnCancel(); } void ClientContract::OnOK() { // TODO: Add extra validation here CDialog::OnOK(); } void ClientContract::FillGrid() { UpdateData(); m_List1.DeleteAllItems2 (); int ii=0; m_List1.m_arLabels.SetSize( m_List1array.GetSize (), 1 ); int count=0; for(ii=0; iiGetWidth(), m_pImg->GetHeight(), rc2); simg2=m_pImg->GetThumbnailImage(rc2.Width (), rc2.Height (), NULL, NULL); Graphics graphic2(simg2);//防止GetThumbnailImage影响质量 graphic2.Clear(Color(255,255,255,255)); graphic2.DrawImage(m_pImg, 0,0,simg2->GetWidth(), simg2->GetHeight() ); if(m_pImg)delete m_pImg;m_pImg=NULL; path=g_mainpath+"\\1.jpg"; ::SaveImageToFile2 (simg2, path, 40); delete simg2; CFile fp; if(!fp.Open(path, CFile::modeRead)) { AfxMessageBox("文件打开失败!"); return; } DWORD length=fp.GetLength(); BYTE *m_pData=new BYTE[length+100]; fp.Read(m_pData, length); fp.Close(); ::DeleteFile(path); char no[100]; memset(no, 0, 100); strcpy(no, m_id+";"); memcpy(m_pData+length, no, 100); g_nSendCode=39; g_pMainWnd->ProcessChatMessageRequest2(m_pData, length+100); g_nSendCode=0; delete []m_pData; if(g_bSendOK==0) { if(m_pImg)delete m_pImg;m_pImg=NULL; return; } AfxMessageBox("上传成功!");GetData(); } void ClientContract::OnBUTdel() { // TODO: Add your control notification handler code here POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos==NULL) { AfxMessageBox("请先选中您要删除的合同"); return; } if(AfxMessageBox("是否删除此合同, 确认吗?", MB_YESNO|MB_ICONINFORMATION)!=IDYES)return; int iItem=m_List1.GetNextSelectedItem(pos); CString date=m_List1.GetItemText (iItem, 1); BYTE *m_pData=new BYTE[100]; char no[100]; memset(no, 0, 100); strcpy(no, m_id+";"+date); memcpy(m_pData, no, 100); g_nSendCode=39; g_pMainWnd->ProcessChatMessageRequest2(m_pData, 100); g_nSendCode=0; delete []m_pData; if(g_bSendOK==0) { return; } AfxMessageBox("删除成功!");GetData(); } void ClientContract::GetData() { CString filter="id='"+m_id+"'"; g_sendhead.bsql=0; g_sendhead.code[0]=230; g_sendhead.tabcount=1; g_pMainWnd->ProcessChatMessageRequest2(filter);if(g_bSendOK==0)return; DataToArray(&m_List1array); FillGrid(); } void ClientContract::OnBUTshow() { // TODO: Add your control notification handler code here POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos==NULL) {AfxMessageBox("请先选中您要查看的合同!"); return; } int iItem=m_List1.GetNextSelectedItem(pos); CString date=m_List1.GetItemText (iItem, 1); char no[100]; memset(no, 0, 100); strcpy(no, m_id+";"+date); g_nSendCode=40; g_pMainWnd->ProcessChatMessageRequest2((BYTE*)no, 100); g_nSendCode=0; if(g_bSendOK==0) { return; } CString path=g_mainpath+"\\1.jpg"; ::DeleteFile(path); CFile fp; fp.Open(path, CFile::modeCreate|CFile::modeWrite); fp.Write(g_pData, g_nLeng); fp.Close(); ShellExecute(NULL, _T("open"), path, NULL, NULL, SW_SHOWMAXIMIZED); } void ClientContract::OnDblclkList1(NMHDR* pNMHDR, LRESULT* pResult) { // TODO: Add your control notification handler code here OnBUTshow(); *pResult = 0; }