// K_SignName.cpp : implementation file // #include "stdafx.h" #include "smsmanager.h" #include "K_SignName.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CK_SignName dialog #include "MainFrm.h" #include "ProcessSocket.h" #include "DLG_SmsLogSee.h" #include "DLG_HZB_Export.h" #include "DLG_Corp_Oper_Open.h" #include "DLG_BBS_Send.h" #include "SmsManagerDoc.h" #include "UserView.h" #include "DLG_SignNameSee.h" #include "DLG_SmsTask_Modify.h" CK_SignName::CK_SignName(CWnd* pParent /*=NULL*/) : CDialog(CK_SignName::IDD, pParent) { //{{AFX_DATA_INIT(CK_SignName) m_lCorp = -1; m_tBegin = COleDateTime::GetCurrentTime(); m_tEnd = COleDateTime::GetCurrentTime(); m_lTop = -1; m_lStatus = -1; //}}AFX_DATA_INIT m_bInit = false; m_bRefresh = false; // m_bProcess = false; m_lQueryCorpID = 0; m_lCheckCount = 0; m_pDlgFile = NULL; } void CK_SignName::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CK_SignName) DDX_Control(pDX, IDC_LIST_CORPID, m_E_CorpID); DDX_Control(pDX, IDC_LIST_S1, m_S_S1); DDX_Control(pDX, IDC_LIST_CORP, m_L_Corp); DDX_Control(pDX, IDC_LIST_LIST, m_wndList); DDX_CBIndex(pDX, IDC_LIST_CORP, m_lCorp); DDX_DateTimeCtrl(pDX, IDC_LIST_TBEGIN, m_tBegin); DDX_DateTimeCtrl(pDX, IDC_LIST_TEND, m_tEnd); DDX_CBIndex(pDX, IDC_LIST_TOP, m_lTop); DDX_CBIndex(pDX, IDC_LIST_STATUS, m_lStatus); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CK_SignName, CDialog) //{{AFX_MSG_MAP(CK_SignName) ON_WM_SIZE() ON_BN_CLICKED(IDC_LIST_QUERY, OnListQuery) ON_NOTIFY(NM_DBLCLK, IDC_LIST_LIST, OnDblclkListList) ON_BN_CLICKED(IDC_LIST_QUERY2, OnListQuery2) ON_NOTIFY(NM_RCLICK, IDC_LIST_LIST, OnRclickListList) //}}AFX_MSG_MAP ON_COMMAND(MENU_LIST_SEE , On_User_See ) ON_COMMAND(MENU_LIST_CORPLIST , On_User_CorpList ) ON_COMMAND(MENU_LIST_SMSLIST , On_User_SmsList) ON_COMMAND(MENU_LIST_CORPOFF , On_User_CorpOFF ) ON_COMMAND(MENU_LIST_EXPORT , On_User_Export ) ON_COMMAND(MENU_LIST_COPY , On_User_Copy ) ON_COMMAND( MENU_SIGNNAME_PASS , On_Task_Pass ) ON_COMMAND( MENU_SIGNNAME_NOPASS , On_Task_NoPass ) ON_WM_TIMER() END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CK_SignName message handlers BOOL CK_SignName::ReShow(BOOL bRefresh) { ShowWindow( SW_SHOW ); if ( bRefresh || !m_bRefresh ) { RefreshInfo(); } return true; } BOOL CK_SignName::ReHide() { ShowWindow( SW_HIDE ); return true; } BOOL CK_SignName::RefreshInfo() { if ( !m_pMainFrame->GetUserPurview(PURVIEW_FILT) ) { return false; } if ( !m_pMainFrame->GetUserPurview(PURVIEW_LIST,false) ) { GetDlgItem(IDC_LIST_TBEGIN)->EnableWindow(false); } m_pMainFrame->SendFrame(SMSFUNC_CORP_NAME,NULL,0); OnListQuery(); //��ѯ����е����� return true; } BOOL CK_SignName::ProcessSocket(Socket_Head_Add *pHead,BYTE* pFrame) { CString str; //ȡ�嵥 if (pHead->lFuncType == SMSFUNC_SIGNNAME_SEE) { ANS_SignName_See * pList = (ANS_SignName_See *)pFrame; ANS_SignName_SeeData * pData = (ANS_SignName_SeeData *)(pFrame+sizeof(ANS_SignName_See)); //CString strTemp; //strTemp.Format( _T("��ѯ��ҵ (%d/%d)") , pList->lPageCount,pList->lPageAll ); //m_S_S1.SetWindowText( strTemp ); //���ӵ�List long lCount = m_wndList.GetItemCount(); TCHAR szBuf[512]={0}; CString str; CString strTemp; m_lCheckCount = 0; for ( int i = 0 ; i< pList->lCount;i++) { ANS_SignName_SeeData * pNewData = new ANS_SignName_SeeData; *pNewData = *pData; POSITION pos = m_ListData.AddTail(pNewData); // m_wndList.SetHeadings(_T("���,50;״̬,100;�ύ�û�,350;ǩ������,150;ǩ������,150;���뱸ע,150;����ʱ��,180;�������,250;�����,150;�������,120;")); m_wndList.InsertItem( lCount+i,_itot(lCount+i+1,szBuf,10),0); long lIcon; switch(pNewData->lStatus) { case 0: lIcon = 0; m_lCheckCount++; break; case 1: lIcon = 1; break; case 2: lIcon = 2; break; default: lIcon = 3; break; } long lTemp=1; strTemp = DLG_SignNameSee::GetSignNameStatus(pNewData->lStatus); m_wndList.SetItemText(lCount+i,lTemp++,strTemp); str.Format( _T("%d-%s[%s]") , pNewData->lCorpID,pNewData->szCorpName,pNewData->szCreateUser); m_wndList.SetItemText(lCount+i,lTemp++,str); strTemp = DLG_SignNameSee::GetSignNameType(pNewData->lSignNameType); m_wndList.SetItemText(lCount + i, lTemp++, strTemp); m_wndList.SetItemText(lCount + i, lTemp++, pNewData->szSignName); m_wndList.SetItemText(lCount + i, lTemp++, pNewData->szRemark); COleDateTime t(pNewData->tCreateTime); if (t.GetStatus() == COleDateTime::valid) { strTemp.Format(_T("%04d.%02d.%02d %02d:%02d"), pNewData->tCreateTime.wYear, pNewData->tCreateTime.wMonth, pNewData->tCreateTime.wDay, pNewData->tCreateTime.wHour, pNewData->tCreateTime.wMinute); } else { strTemp = _T(" "); } m_wndList.SetItemText(lCount + i, lTemp++, strTemp); m_wndList.SetItemText(lCount + i, lTemp++, pNewData->szAuditOpinion); m_wndList.SetItemText(lCount + i, lTemp++, pNewData->szAuditKF); //������� strTemp.Format(_T("%d"), pNewData->lReqCount); m_wndList.SetItemText(lCount + i, lTemp++, strTemp); m_wndList.SetItemData(lCount+i,(DWORD_PTR)(pos) ); pData++; } //��Ҫ���� if (this->m_pMainFrame->m_Setup.Warning_Enable && m_pMainFrame->m_Setup.Warning_Timer > 0) { if (!m_pMainFrame->m_Setup.Warning_OnlyContent) { /* KillTimer(1); m_pMainFrame->m_pUserView->m_dlgCheckup.Warning_Close(); //ˢ���ˣ�ֹͣ���� #ifdef _DEBUG SetTimer(1, 8 * 1000, NULL); #else SetTimer(1, m_pMainFrame->m_Setup.Warning_Timer * 60 * 1000, NULL); #endif */ } else { KillTimer(11); //ˢ���ˣ����ó�ʱ��� if (m_lCheckCount > 0) //�����ݣ���Ҫ���� { m_pMainFrame->m_pUserView->m_dlgCheckup.Warning_Checkup(_T("��ǩ�������")); } else { //���������ݣ�ͬʱ���ж���������Ƿ������ݣ�����������Ҳû���ݣ��Ͳ����������� if (m_pMainFrame->m_pUserView->m_dlgCheckup.m_wndList.GetItemCount() <= 0 && m_pMainFrame->m_pUserView->m_dlgSmsTask.m_wndList.GetItemCount() <= 0 && m_pMainFrame->m_pUserView->m_dlgTemplate.m_lCheckCount <= 0) { KillTimer(2); //�ص�ͼ������ m_pMainFrame->m_pUserView->m_dlgCheckup.Warning_Close(); //�������ˣ�ֹͣ���� } #ifdef _DEBUG SetTimer(10, 8 * 1000, NULL); #else SetTimer(10, m_pMainFrame->m_Setup.Warning_Timer * 60 * 1000, NULL); //�´��Զ�ˢ��ʱ�� #endif } } } return true; } if ( pHead->lFuncType == SMSFUNC_SIGNNAME_MODIFY) //���û� { ANS_SignName_Modify * pSee = (ANS_SignName_Modify *)pFrame; if ( pSee->bOK ) { ANS_SignName_SeeData * pSeeData = NULL; if ( m_wndList.GetItemData(pSee->lItem) >0 ) { pSeeData = m_ListData.GetAt((POSITION)m_wndList.GetItemData(pSee->lItem)); } if ( pSeeData && pSeeData->lSignNameID == pSee->lSignNameID ) { pSeeData->lStatus = pSee->lStatus; _tcscpy(pSeeData->szAuditKF, pSee->szAuditKF); _tcscpy(pSeeData->szAuditOpinion, pSee->szAuditOpinion); pSeeData->tAuditTime = pSee->tAuditTime; CString strTemp; long lIcon; switch (pSee->lStatus) { case 0: lIcon = 0; break; case 1: lIcon = 1; break; case 2: lIcon = 2; break; default: lIcon = 3; break; } strTemp = DLG_SignNameSee::GetSignNameStatus(pSee->lStatus); m_wndList.SetItemText(pSee->lItem , 1 , strTemp ); m_wndList.SetItemText(pSee->lItem, 7, pSee->szAuditOpinion); m_wndList.SetItemText(pSee->lItem, 8, pSee->szAuditKF); //m_wndList.SetHeadings(_T("���,50;״̬,80;�ύ�û�,300;ģ������,80;ģ������,150;ģ������,250;ģ�屸ע,150;����ʱ��,130;�������,200;�����,150;")); } } else { str.Format( _T("�Ķ���ǩ��״̬ʧ�ܣ�%s") , pSee->szErrMsg ); MessageBox(str , _T("����") , MB_ICONWARNING ); } return true; } return false; } BOOL CK_SignName::ProcessSocket(Socket_Head *pHead) { CString strTemp; //ȡ������Ϣ if (pHead->lFuncType == SMSFUNC_CORP_NAME) { m_bRefresh = true; //�Ѿ�ˢ�¹� ANS_Corp_Name * pCorp = (ANS_Corp_Name *)pHead->pFrame; ANS_Corp_NameData * pData = (ANS_Corp_NameData *)(pHead->pFrame+sizeof(ANS_Corp_Name)); m_L_Corp.ResetContent(); //ɾ��ԭ���е���ҵ m_L_Corp.AddString( _T("������ҵ") ); this->Close_Corp(); //�ر�ԭ���� for ( int i=0;i<pCorp->lCount;i++ ) { ANS_Corp_NameData * pNewData = new ANS_Corp_NameData; *pNewData = *pData; POSITION pos = m_Corp.AddTail(pNewData); strTemp.Format( _T("%d-%s"),pData->lCorpID,pData->szCorpName); long lItem = m_L_Corp.AddString( strTemp ); m_L_Corp.SetItemData( lItem , (DWORD_PTR)pos); pData ++; } m_L_Corp.SetCurSel(0); return true; } //�鿴�û���¼ if (pHead->lFuncType == SMSFUNC_CORP_FILE) { ANS_Corp_File * pFile = (ANS_Corp_File *)pHead->pFrame; if (m_pDlgFile) m_pDlgFile->ProcessSocket(pHead); return true; } return false; } BOOL CK_SignName::OnInitDialog() { CDialog::OnInitDialog(); //ȡ�ù��ò��� //CMainFrame * pFrame = static_cast <CMainFrame *>((CMainFrame *)AfxGetMainWnd()); this->GetParent()->GetParentFrame(); m_pMainFrame = (CMainFrame *)this->GetParent()->GetParentFrame(); m_pSocket = &m_pMainFrame->m_Socket; //��ʼ��List m_Image.Create(16,16,ILC_COLOR16|ILC_MASK,5,5); m_Image.Add(AfxGetApp()->LoadIcon(IDI_L_LIST) ); m_wndList.SubClassWindow2(); m_wndList.SetHeadings(_T("���,50;״̬,100;�ύ�û�,350;ǩ������,150;ǩ������,150;���뱸ע,150;����ʱ��,180;�������,250;�����,150;�������,120;")); m_wndList.SetGridLines(true); // m_wndList.SetImageList(&m_Image,LVSIL_SMALL); m_bInit = true; /* //Ĭ��ȡ���µ����� SYSTEMTIME t; ::GetLocalTime(&t); t.wDay = 1;//��1���� t.wMonth = t.wMonth-1; if ( t.wMonth <=0 ) { t.wMonth = 12; t.wYear = t.wYear-1; } m_tBegin.SetDate( t.wYear,t.wMonth,t.wDay ); //��ʼ if ( t.wMonth == 1 || t.wMonth == 3 || t.wMonth == 5 || t.wMonth == 7 || t.wMonth == 8 || t.wMonth == 10 || t.wMonth == 12 ) { t.wDay = 31; } else if (t.wMonth == 2 ) t.wDay = 28; else t.wDay = 30; m_tEnd.SetDate( t.wYear,t.wMonth,t.wDay );//���� */ COleDateTime t=COleDateTime::GetCurrentTime(); COleDateTime t2=t-COleDateTimeSpan(3,0,0,0); //Ĭ�ϲ�3�������� m_tBegin = t2; //��ʼ m_tEnd = t; //���� m_lStatus=1; //����� m_lTop = 1; //Ĭ����ʾǰ200������ UpdateData(false); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CK_SignName::OnSize(UINT nType, int cx, int cy) { CDialog::OnSize(nType, cx, cy); if ( m_bInit ) { CRect rect; m_S_S1.GetWindowRect(&rect); m_wndList.MoveWindow( 0 , 0+rect.Height()+5 , cx,cy-rect.Height()-5); } } void CK_SignName::Close() { Close_Corp(); Close_ListData(); } void CK_SignName::OnListQuery() { if ( !m_pMainFrame->GetUserPurview(PURVIEW_FILT) ) { return ; } UpdateData(true); if ( m_tEnd < m_tBegin ) { MessageBox( _T("��ѯ�������ڲ���С����ʼ���ڣ������!") , _T("����") , MB_ICONWARNING ); return ; } REQ_SignName_See * pSee = new REQ_SignName_See; memset(pSee , 0 , sizeof(REQ_SignName_See)); if ( m_lQueryCorpID ) { pSee->lCorpID = m_lQueryCorpID; pSee->lStatus = -1; //��ѯ���еļ�¼ m_lQueryCorpID = 0; } else { if ( m_lCorp <= 0 ) //ѡ��������ҵ { pSee->lCorpID = -1; } else { POSITION pos = (POSITION)m_L_Corp.GetItemData(m_lCorp); POSITION pos2 = pos; ANS_Corp_NameData * pData = m_Corp.GetNext( pos ); if (pData) { pSee->lCorpID = pData->lCorpID; } else { return; } } } m_tBegin.GetAsSystemTime( pSee->tBegin ); m_tEnd.GetAsSystemTime( pSee->tEnd ); switch ( m_lTop ) { case 1: pSee->lTop = 200; break; case 2: pSee->lTop = 500; break; case 3: pSee->lTop = 1000; break; case 4: pSee->lTop = 2000; break; case 5: pSee->lTop = 5000; break; case 0: default: pSee->lTop = -1; break; } pSee->lStatus = m_lStatus-1; //��ѯ״̬�� this->Close_ListData(); //�ر�ԭ���� m_wndList.ShowWindow( SW_HIDE ); //Ϊ�˼ӿ���ʾ�ٶ� m_wndList.DeleteAllItems(); //��ɾ�����м�¼ m_pMainFrame->SendFrame(SMSFUNC_SIGNNAME_SEE,(BYTE*)pSee,sizeof(REQ_SignName_See)); m_wndList.ShowWindow( SW_SHOW ); //Ϊ�˼ӿ���ʾ�ٶ� return ; } void CK_SignName::OnDblclkListList(NMHDR* pNMHDR, LRESULT* pResult) { *pResult = 0; On_User_See(); } void CK_SignName::OnListQuery2() { CString strTemp; CString strFind; m_E_CorpID.GetWindowText(strFind); if ( strFind.GetLength()<=0 ) return ; long lSel = m_L_Corp.GetCurSel(); long lCount = m_L_Corp.GetCount(); for ( int i=lSel+1 ; i<lCount ; i++ ) { m_L_Corp.GetLBText(i,strTemp); if ( strTemp.Find(strFind)>=0 ) { m_L_Corp.SetCurSel(i); return ; } } for ( i=0 ; i<lSel ; i++ ) { m_L_Corp.GetLBText(i,strTemp); if ( strTemp.Find(strFind)>=0 ) { m_L_Corp.SetCurSel(i); return ; } } } void CK_SignName::OnRclickListList(NMHDR* pNMHDR, LRESULT* pResult) { *pResult = 0; ShowRMenu(); } void CK_SignName::ShowRMenu() { if ( !m_pMainFrame->GetUserPurview(PURVIEW_FILT) ) { return ; } if (m_lQueryCorpID == -100) return; CMenu menu; menu.CreatePopupMenu(); BOOL bLock = false; long lItem = this->GetCurrentSelected(); //���� if ( lItem>=0 ) { menu.AppendMenu(MF_STRING , MENU_LIST_SEE , _T(" �� �� ") ); //menu.AppendMenu(MF_STRING , MENU_LIST_CORPLIST, _T(" ��ѯ����ҵ�嵥 ") ); //menu.AppendMenu(MF_SEPARATOR ); menu.AppendMenu(MF_STRING , MENU_LIST_CORPOFF , _T(" ���ô���ҵ ") ); menu.AppendMenu(MF_SEPARATOR ); ANS_SignName_SeeData * pSeeData = NULL; if ( m_wndList.GetItemData(lItem) >0 ) { pSeeData = m_ListData.GetAt((POSITION)m_wndList.GetItemData(lItem)); } if ( pSeeData && pSeeData->lStatus==0 ) { //0-����ˣ�1-���ͨ����3-���ʧ�� menu.AppendMenu(MF_STRING , MENU_SIGNNAME_PASS , _T(" ���ͨ�� ") ); menu.AppendMenu(MF_STRING , MENU_SIGNNAME_NOPASS , _T(" ���ʧ�� ") ); menu.AppendMenu(MF_SEPARATOR ); } if (pSeeData && pSeeData->lStatus != 0) { //0-����ˣ�1-���ͨ����3-���ʧ�� menu.AppendMenu(MF_STRING, MENU_SIGNNAME_PASS, _T(" �������ͨ�� ")); menu.AppendMenu(MF_STRING, MENU_SIGNNAME_NOPASS, _T(" �������ʧ�� ")); menu.AppendMenu(MF_SEPARATOR); } } else { //menu.AppendMenu(MF_STRING|MF_DISABLED|MF_GRAYED , MENU_LIST_CORPLIST, _T(" ��ѯ����ҵ�嵥 ") ); //menu.AppendMenu(MF_SEPARATOR ); menu.AppendMenu(MF_STRING|MF_DISABLED|MF_GRAYED , MENU_LIST_CORPOFF , _T(" ���ô���ҵ ") ); menu.AppendMenu(MF_SEPARATOR ); } menu.AppendMenu(MF_SEPARATOR ); menu.AppendMenu(MF_STRING , MENU_LIST_COPY , _T(" �� �� ") ); //��ʾ�˵� POINT pt ; ::GetCursorPos( &pt ); //this->ClientToScreen( &pt); menu.TrackPopupMenu(TPM_LEFTBUTTON | TPM_RIGHTBUTTON,pt.x,pt.y, this, NULL); menu.DestroyMenu(); } long CK_SignName::GetCurrentSelected() { POSITION pos = m_wndList.GetFirstSelectedItemPosition(); if ( pos ) { return m_wndList.GetNextSelectedItem(pos); } return -1; } void CK_SignName::Audit(ANS_SignName_SeeData * pSeeData, long lItem,long lAuditStatus) { if (!pSeeData) return; long lOpenCorp = 0; CString strAuditOpinion; if (pSeeData->lStatus == 0 && lAuditStatus == 1) //δ��˵�ģ�����ͨ��ʱ���Բ�¼�������� { } else { DLG_SignNameSee dlg(this); m_pDlgFile = &dlg; if (lAuditStatus == 0) //û����ƻ����״̬��Ϊֱ��˫���鿴 { if (pSeeData->lStatus == 0) //�����ǰ״̬Ϊδ��ˣ�˫��ʱ������ˡ� { dlg.SetParam(*pSeeData, 1, 0); } else { dlg.SetParam(*pSeeData, 0, 0); //�����ǰ״̬Ϊ����ˣ�˫��ʱ���鿴�� } } else { //�˵���ѡ�������ͨ����ʧ�ܣ�����ԭ����״̬��ת��Ϊ�����״̬ dlg.SetParam(*pSeeData, 1, lAuditStatus); } if (dlg.DoModal() == IDOK) { m_pDlgFile = NULL; lAuditStatus = dlg.m_SeeData.lStatus; if (lAuditStatus==1) //���ͨ�� lOpenCorp = dlg.m_bOpenCorp; strAuditOpinion = dlg.m_SeeData.szAuditOpinion; } else { m_pDlgFile = NULL; return; } } REQ_SignName_Modify * pModify = new REQ_SignName_Modify; memset(pModify, 0, sizeof(REQ_SignName_Modify)); pModify->lCorpID = pSeeData->lCorpID; pModify->lUserID = pSeeData->lUserID; pModify->lAgentID = pSeeData->lAgentID; pModify->lSignNameID = pSeeData->lSignNameID; pModify->lItem = lItem; pModify->lOldStatus = pSeeData->lStatus; pModify->lStatus = lAuditStatus; //���״̬ pModify->lOpenCorp = lOpenCorp; pModify->lDefaultSignName = pSeeData->lDefaultSignName; pModify->lUserSignName = pSeeData->lUserSignName; _tcscpy(pModify->szAuditOpinion, strAuditOpinion); //������ pModify->tMaxDelayTime = pSeeData->tCreateTime; //����ʱ�� pModify->lSignNameType = pSeeData->lSignNameType; _tcscpy(pModify->szSignName, pSeeData->szSignName); _tcscpy(pModify->szRemark, pSeeData->szRemark); m_pMainFrame->SendFrame(SMSFUNC_SIGNNAME_MODIFY, (BYTE*)pModify, sizeof(REQ_SignName_Modify)); } void CK_SignName::On_Task_Pass() { long lRet = MessageBox( _T("ȷʵҪ���˶���ǩ�����ͨ����"),_T("����"),MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2); if ( lRet != IDYES ) return ; long lItem = this->GetCurrentSelected(); if ( lItem<0 ) return ; ANS_SignName_SeeData * pSeeData = NULL; if ( m_wndList.GetItemData(lItem) >0 ) { pSeeData = m_ListData.GetAt((POSITION)m_wndList.GetItemData(lItem)); } if ( !pSeeData ) return ; Audit(pSeeData, lItem, 1); //���ͨ�� } void CK_SignName::On_Task_NoPass() { long lRet = MessageBox(_T("ȷʵҪ���˶���ǩ�����ʧ�ܣ�"), _T("����"), MB_ICONQUESTION | MB_YESNO | MB_DEFBUTTON2); if (lRet != IDYES) return; long lItem = this->GetCurrentSelected(); if (lItem < 0) return; ANS_SignName_SeeData * pSeeData = NULL; if (m_wndList.GetItemData(lItem) > 0) { pSeeData = m_ListData.GetAt((POSITION)m_wndList.GetItemData(lItem)); } if (!pSeeData) return; Audit(pSeeData, lItem, 2); //���ʧ�� } void CK_SignName::On_User_See() { if (!m_pMainFrame->GetUserPurview(PURVIEW_FILT)) { return; } ANS_SignName_SeeData * pSeeData = NULL; long lItem = GetCurrentSelected(); if (lItem < 0) return; if (m_wndList.GetItemData(lItem) > 0) { pSeeData = m_ListData.GetAt((POSITION)m_wndList.GetItemData(lItem)); } if (!pSeeData) return; Audit(pSeeData,lItem, 0); } void CK_SignName::On_User_Export() { m_wndList.CopyToClipboard(); /* //m_wndList.SetHeadings(_T("���,40; �� ��,80;״̬,50;��ҵID,60;������,70; ���ͺ���,120; ������,70; ���պ���,120; �ύʱ��,150; ����ʱ��,150; ����ʱ��,150; ��ʱʱ��,150; ��������,1000; ��ϢID,150;")); SortItem item[32]={0}; _tcscpy(item[0].szItem,_T("�� ��")); _tcscpy(item[1].szItem,_T("״̬")); _tcscpy(item[2].szItem,_T("��ҵID")); _tcscpy(item[3].szItem,_T("������")); _tcscpy(item[4].szItem,_T("���ͺ���")); _tcscpy(item[5].szItem,_T("������")); _tcscpy(item[6].szItem,_T("���պ���")); _tcscpy(item[7].szItem,_T("�ύʱ��")); _tcscpy(item[8].szItem,_T("����ʱ��")); _tcscpy(item[9].szItem,_T("����ʱ��")); _tcscpy(item[10].szItem,_T("��ʱʱ��")); _tcscpy(item[11].szItem,_T("��������")); _tcscpy(item[12].szItem,_T("״̬����")); DLG_HZB_Export dlg(this); dlg.SetParam( &m_wndList ); dlg.SetListItem(item,13,-2); dlg.DoModal(); */ } void CK_SignName::On_User_Copy() { long lItem = m_wndList.GetFirstSelectedItem(); if ( lItem < 0 ) return ; HGLOBAL hglbCopy; LPTSTR lptstrCopy; if (!OpenClipboard()) return ; EmptyClipboard(); CString str,strTemp; long lCol = m_wndList.GetColumnCount(); long lCount = m_wndList.GetSelectedItemCount(); for ( int i=0 ; i<lCol ; i++ ) { LVCOLUMN lmn={0}; TCHAR szBuf[256]={0}; lmn.mask = LVCF_TEXT; lmn.pszText = szBuf; lmn.cchTextMax = sizeof(szBuf); m_wndList.GetColumn(i , &lmn); str += CString(lmn.pszText ); str += CString(_T("\t")); } str += _T("\r\n"); lItem = -1; for ( i=0 ; i<lCount ; i++ ) { lItem = m_wndList.GetFirstSelectedItem(lItem); if ( lItem >=0 ) { CString str1; for ( int j=0 ; j<lCol; j++ ) { str1=m_wndList.GetItemText(lItem,j); #ifdef SMSMANAGER_KF if ( j == 12 ) str1 = _T(""); #endif str1.TrimLeft();str1.TrimRight();str1.Replace( _T("\t") , _T("") );str1.Replace( _T("\r") , _T("") );str1.Replace( _T("\n") , _T("") ); strTemp.Format(_T("%s\t"),str1); str += strTemp; } str += _T("\r\n"); } } hglbCopy = GlobalAlloc(GMEM_MOVEABLE, (str.GetLength()+1)*sizeof(TCHAR)); if (hglbCopy == NULL) { CloseClipboard(); return ; } lptstrCopy = (LPTSTR)GlobalLock(hglbCopy); _tcscpy(lptstrCopy,str); GlobalUnlock(hglbCopy); #ifdef _UNICODE ::SetClipboardData(CF_UNICODETEXT, hglbCopy); #else ::SetClipboardData(CF_TEXT, hglbCopy); #endif CloseClipboard(); return ; } void CK_SignName::Close_Corp() { //��������е����� while (!m_Corp.IsEmpty()) { ANS_Corp_NameData * pData = m_Corp.GetHead(); m_Corp.RemoveHead(); delete pData; } } void CK_SignName::Close_ListData() { //��������е����� while (!m_ListData.IsEmpty()) { ANS_SignName_SeeData * pData = m_ListData.GetHead(); m_ListData.RemoveHead(); delete pData; } } void CK_SignName::On_User_SmsList() { /* if (!m_pMainFrame->GetUserPurview(PURVIEW_FILT)) { return; } */ long lItem = m_wndList.GetFirstSelectedItem(); if (lItem < 0) return; POSITION pos = (POSITION)m_wndList.GetItemData(lItem); POSITION pos2 = pos; ANS_SignName_SeeData * pData = m_ListData.GetNext(pos); if (!pData) return; REQ_SignName_See * pSee = new REQ_SignName_See; memset(pSee, 0, sizeof(REQ_SignName_See)); pSee->lCorpID = pData->lSignNameID; pSee->lStatus = -100; //��ѯ���еļ�¼ m_lQueryCorpID = -100; switch (m_lTop) { case 1: pSee->lTop = 200; break; case 2: pSee->lTop = 500; break; case 3: pSee->lTop = 1000; break; case 4: pSee->lTop = 2000; break; case 5: pSee->lTop = 5000; break; case 0: default: pSee->lTop = -1; break; } this->Close_ListData(); //�ر�ԭ���� m_wndList.ShowWindow(SW_HIDE); //Ϊ�˼ӿ���ʾ�ٶ� m_wndList.DeleteAllItems(); //��ɾ�����м�¼ m_pMainFrame->SendFrame(SMSFUNC_SIGNNAME_SEE, (BYTE*)pSee, sizeof(REQ_SignName_See)); m_wndList.ShowWindow(SW_SHOW); //Ϊ�˼ӿ���ʾ�ٶ� } void CK_SignName::On_User_CorpList() { if ( !m_pMainFrame->GetUserPurview(PURVIEW_FILT) ) { return ; } long lItem = m_wndList.GetFirstSelectedItem(); if ( lItem < 0 ) return ; POSITION pos = (POSITION)m_wndList.GetItemData(lItem); POSITION pos2 = pos; ANS_SignName_SeeData * pData = m_ListData.GetNext( pos ); if (!pData) return ; this->m_pMainFrame->ShowFuncDlg(FUNC_LIST); this->m_pMainFrame->m_pUserView->m_dlgList.m_lQueryCorpID = pData->lCorpID; this->m_pMainFrame->m_pUserView->m_dlgList.OnListQuery(); /* m_lQueryCorpID = pData->lCorpID; OnListQuery(); */ } void CK_SignName::On_User_CorpOFF() { if ( !m_pMainFrame->GetUserPurview(PURVIEW_FILT) ) { return ; } long lItem = m_wndList.GetFirstSelectedItem(); if ( lItem < 0 ) return ; POSITION pos = (POSITION)m_wndList.GetItemData(lItem); POSITION pos2 = pos; ANS_SignName_SeeData * pData = m_ListData.GetNext( pos ); if (!pData) return ; // CString str; // str.Format( _T("�Ƿ�Ҫ���ô���ҵID:%d��\r\n���ú����ҵ�����ܵ�¼!"),pData->lCorpID ); // if ( MessageBox(str , _T("����") , MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2) != IDYES ) // return ; ANS_Corp_SeeData data={0}; data.lCorpID = pData->lCorpID; DLG_Corp_Oper_Open dlg(this); dlg.SetParam(&data,false,this->m_pMainFrame->m_Setup.szUser); if ( dlg.DoModal() == IDOK ) { REQ_CorpOFF * pCorp = new REQ_CorpOFF;memset(pCorp,0,sizeof(REQ_CorpOFF)); pCorp->lCorpID = pData->lCorpID; pCorp->lStatus = 0; //0Ϊ���ã�1Ϊ���� _tcscpy(pCorp->szBZ , dlg.m_strBZ ); _tcscpy(pCorp->szOper , dlg.m_strOperName ); m_pMainFrame->SendFrame(SMSFUNC_CORPOFF,(BYTE*)pCorp,sizeof(REQ_CorpOFF)); } } void CK_SignName::OnTimer(UINT_PTR nIDEvent) { CDialog::OnTimer(nIDEvent); if (nIDEvent == 10) //ˢ������ { KillTimer(10); #ifdef _DEBUG SetTimer(11, 5000, NULL); //40��ˢ�³�ʱ #else SetTimer(11, 40000, NULL); //40��ˢ�³�ʱ #endif OnListQuery(); } if (nIDEvent == 11) //ˢ�³�ʱ { KillTimer(nIDEvent); m_pMainFrame->m_pUserView->m_dlgCheckup.Warning_Checkup(_T("����ģ��ˢ�³�ʱ")); #ifdef _DEBUG SetTimer(10, 8 * 1000, NULL); #else SetTimer(10, m_pMainFrame->m_Setup.Warning_Timer * 60 * 1000 /2, NULL); //��ʱ���ٴ�ˢ�� #endif } }