// SetTimeDlg.cpp : implementation file // #include "stdafx.h" #include "vcdemo.h" #include "SetTimeDlg.h" #include "VcDemoDlg.h" #include "ManageTimeDlg.h" #include "RemarkDlg.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CSetTimeDlg dialog CSetTimeDlg::CSetTimeDlg(CWnd* pParent /*=NULL*/) : CDialog(CSetTimeDlg::IDD, pParent) { //{{AFX_DATA_INIT(CSetTimeDlg) m_sNumber = _T(""); m_sTels = _T(""); m_sNTel = _T(""); m_sMessage = _T(""); m_MsgType = _T(""); //}}AFX_DATA_INIT } void CSetTimeDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CSetTimeDlg) DDX_Control(pDX, IDC_LIST_RecordList, m_RecordList); DDX_Text(pDX, IDC_EDIT_Number, m_sNumber); DDX_Text(pDX, IDC_EDIT_Tels, m_sTels); DDX_Text(pDX, IDC_EDIT_NTel, m_sNTel); DDX_Text(pDX, IDC_EDIT_Message, m_sMessage); DDX_Text(pDX, IDC_EDIT_MsgType, m_MsgType); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CSetTimeDlg, CDialog) //{{AFX_MSG_MAP(CSetTimeDlg) ON_BN_CLICKED(IDC_BUTTON_Resh, OnBUTTONResh) ON_NOTIFY(NM_CLICK, IDC_LIST_RecordList, OnClickLISTRecordList) ON_BN_CLICKED(IDC_BUTTON_Update, OnBUTTONUpdate) ON_BN_CLICKED(IDC_BUTTON_ReadSetTime, OnBUTTONReadSetTime) ON_BN_CLICKED(IDC_BUTTON_ReadTels, OnBUTTONReadTels) ON_BN_CLICKED(IDC_BUTTON_DelOne, OnBUTTONDelOne) ON_BN_CLICKED(IDC_BUTTON_DelAll, OnBUTTONDelAll) ON_BN_CLICKED(IDC_BUTTON_Clear, OnBUTTONClear) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CSetTimeDlg message handlers CVcDemoDlg *pDlg; BOOL CSetTimeDlg::OnInitDialog() { CDialog::OnInitDialog(); pDlg=(CVcDemoDlg *)GetParent(); InitCtrList(); // TODO: Add extra initialization here return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CSetTimeDlg::InitCtrList() { char *name[]={"编号","定时时间","开始日期","结束日期"}; short size[]={40,60,80,80}; DWORD dwStyle=LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT|LVS_EX_ONECLICKACTIVATE|LVS_EX_FLATSB; m_RecordList.SetExtendedStyle(dwStyle); LV_COLUMN item; item.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM; item.iSubItem = 1; item.fmt = LVCFMT_LEFT; for(int i = 0; i < sizeof(name) / sizeof(char *); i++) { item.cx =size[i]; item.pszText = name[i]; m_RecordList.InsertColumn(i,name[i],LVCFMT_LEFT,size[i]); } /* m_RecordList.DeleteAllItems(); char Tempbuf[10][255]; CString sTemp,sNumber,sTempBeginDate,sTempEndDate,sTempTime; int iTemp=0,iRet=0,iPos,nItem=0,icount; memset(Tempbuf, 0, sizeof(Tempbuf)); do{ iRet=pDlg->ManageReadSetTime(iTemp,2,Tempbuf); icount=0; if (iRet==1) { do { sTemp=Tempbuf[icount]; if(sTemp==""||icount>=10||sTemp==" ") { iTemp=atoi(sNumber); break; } sTemp.TrimLeft(); sTemp.TrimRight(); iPos=sTemp.Find(","); sNumber=sTemp.Mid(0,iPos); LV_ITEM m_ListItem; m_ListItem.mask=LVIF_TEXT; m_ListItem.iItem=nItem; m_ListItem.iSubItem=0; m_ListItem.pszText=(LPTSTR)(LPCTSTR)sNumber; m_RecordList.InsertItem(&m_ListItem); m_RecordList.SetItemText(nItem,0,sNumber); sTemp.Delete(0,2); iPos=sTemp.Find(","); sTempBeginDate=sTemp.Mid(0,iPos); m_RecordList.SetItemText(nItem,2,sTempBeginDate); sTemp.Delete(0,iPos+1); iPos=sTemp.Find(","); sTempEndDate=sTemp.Mid(0,iPos); m_RecordList.SetItemText(nItem,3,sTempEndDate); sTemp.Delete(0,iPos+1); iPos=sTemp.Find(","); sTempTime=sTemp.Mid(0,iPos); m_RecordList.SetItemText(nItem,1,sTempTime); memset(Tempbuf, 0, 250); ++nItem; icount++; } while(TRUE); } else { break; } memset(Tempbuf, 0, sizeof(Tempbuf)); }while (TRUE) ;*/ ListCtrResh(); UpdateData(FALSE); return; } void CSetTimeDlg::OnBUTTONResh() { ListCtrResh(); ClearControl(); } void CSetTimeDlg::OnOK() { UpdateData(TRUE); int iNumber,iNTel,iRet; iNumber=atoi(m_sNumber); iNTel=atoi(m_sNTel); CManageTimeDlg dlg; if(dlg.DoModal()==IDOK) { iRet=pDlg->ManageSendTimeMessage(dlg.m_iType,dlg.sBeginDate,dlg.sEndDate,dlg.iFlag,dlg.sTime,iNTel,m_sMessage,m_sTels); if (iRet<=0) { AfxMessageBox("发送定时信息失败!!"); } else{ AfxMessageBox("发送定时信息成功!!"); ListCtrResh(); } } else{ AfxMessageBox("定时没有设置!!"); } ClearControl(); UpdateData(FALSE); return; } void CSetTimeDlg::OnClickLISTRecordList(NMHDR* pNMHDR, LRESULT* pResult) { CString sNumber; char Tempbuf[10][1024]; char TempTels[20000]={0}; if(m_RecordList.GetSelectedCount()==0) { return; } int j=m_RecordList.GetItemCount(); for(int k=0;kManageReadSetTime(iNumber,1,Tempbuf); if (iRet!=1) { AfxMessageBox("读取定时信息失败!!"); return; } sTemp=Tempbuf[0]; sTemp.TrimLeft(); sTemp.TrimRight(); iPos=sTemp.Find(","); m_sNumber=sTemp.Mid(0,iPos); sTemp.Delete(0,2); iPos=sTemp.Find(","); sTemp.Delete(0,iPos+1); iPos=sTemp.Find(","); sTemp.Delete(0,iPos+1); iPos=sTemp.Find(","); sTemp.Delete(0,iPos+1); m_sMessage=sTemp; iPos=atoi(m_sNumber); iRet=pDlg->ManageReadNTels(iNumber,TempTels); if (iRet!=1) { AfxMessageBox("读取定时号码失败!!"); } sTemp=TempTels; sTemp.TrimLeft(); sTemp.TrimRight(); iPos=sTemp.Find(","); m_sNTel=sTemp.Mid(0,iPos); sTemp.Delete(0,iPos+1); iPos=sTemp.Find(","); m_sTels=sTemp; UpdateData(FALSE); *pResult = 0; return; } void CSetTimeDlg::OnBUTTONUpdate() { UpdateData(TRUE); int iNumber,iNTel,iRet; iNumber=atoi(m_sNumber); iNTel=atoi(m_sNTel); CManageTimeDlg dlg; if(dlg.DoModal()==IDOK) { iRet=pDlg->ManageUpdateSetTime(iNumber,dlg.m_iType,dlg.sBeginDate,dlg.sEndDate,dlg.iFlag,dlg.sTime,iNTel,m_sMessage,m_sTels); if (iRet!=1) { AfxMessageBox("更新定时信息失败!!"); } else{ AfxMessageBox("更新定时信息成功!!"); } } else{ AfxMessageBox("定时没有设置!!"); } ClearControl(); UpdateData(FALSE); } void CSetTimeDlg::OnBUTTONReadSetTime() { UpdateData(TRUE); int iNumber,iRet,iPos; char Tempbuf[10][1024]; char TempTels[20000]={0}; iNumber=atoi(m_sNumber); CString sTemp; iRet=pDlg->ManageReadSetTime(iNumber,1,Tempbuf); if (iRet!=1) { AfxMessageBox("读取定时信息失败!!"); return; } sTemp=Tempbuf[0]; sTemp.TrimLeft(); sTemp.TrimRight(); iPos=sTemp.Find(","); m_sNumber=sTemp.Mid(0,iPos); sTemp.Delete(0,2); iPos=sTemp.Find(","); sTemp.Delete(0,iPos+1); iPos=sTemp.Find(","); sTemp.Delete(0,iPos+1); iPos=sTemp.Find(","); sTemp.Delete(0,iPos+1); m_sMessage=sTemp; iPos=atoi(m_sNumber); iRet=pDlg->ManageReadNTels(iNumber,TempTels); if (iRet!=1) { AfxMessageBox("发送定时信息失败!!"); return; } sTemp=TempTels; sTemp.TrimLeft(); sTemp.TrimRight(); iPos=sTemp.Find(","); m_sNTel=sTemp.Mid(0,iPos); sTemp.Delete(0,iPos+1); iPos=sTemp.Find(","); m_sTels=sTemp; UpdateData(FALSE); } void CSetTimeDlg::OnBUTTONReadTels() { UpdateData(TRUE); int iNumber,iRet,iPos; char Tempbuf[20000]={0}; CString sTemp; iNumber=atoi(m_sNumber); iRet=pDlg->ManageReadNTels(iNumber,Tempbuf); if (iRet!=1) { AfxMessageBox("读取电话号码信息失败!!"); } else{ AfxMessageBox("读取电话号码信息成功!!"); sTemp=Tempbuf; sTemp.TrimLeft(); sTemp.TrimRight(); iPos=sTemp.Find(","); m_sNTel=sTemp.Mid(0,iPos); sTemp.Delete(0,iPos+1); iPos=sTemp.Find(","); m_sTels=sTemp; } UpdateData(FALSE); } void CSetTimeDlg::OnBUTTONDelOne() { UpdateData(TRUE); int iNumber,iRet; iNumber=atoi(m_sNumber); iRet=pDlg->ManageDelOneTime(iNumber); if (iRet!=1) { AfxMessageBox("删除定时信息失败!!"); } else{ AfxMessageBox("删除定时信息成功!!"); ListCtrResh(); } ClearControl(); UpdateData(FALSE); } void CSetTimeDlg::OnBUTTONDelAll() { UpdateData(TRUE); int iRet; iRet=pDlg->ManageDelAllTime(); if (iRet!=1) { AfxMessageBox("删除所有定时信息失败!!"); } else{ AfxMessageBox("删除所有定时信息成功!!"); ListCtrResh(); } ClearControl(); UpdateData(FALSE); } void CSetTimeDlg::ClearControl() { UpdateData(TRUE); m_sNumber.Empty(); m_sNTel.Empty(); m_sTels.Empty(); m_sMessage.Empty(); UpdateData(FALSE); } void CSetTimeDlg::OnBUTTONClear() { CRemarkDlg dlg; if(dlg.DoModal()==IDOK) { ClearControl(); } else { } } void CSetTimeDlg::ListCtrResh() { UpdateData(TRUE); m_RecordList.DeleteAllItems(); char Tempbuf[10][1024]; CString sTemp,sNumber,sTempBeginDate,sTempEndDate,sTempTime; int iTemp=0,iRet=0,iPos,nItem=0,icount; memset(Tempbuf, 0, sizeof(Tempbuf)); do{ iRet=pDlg->ManageReadSetTime(iTemp,2,Tempbuf); icount=0; if (iRet==1) { do { sTemp=Tempbuf[icount]; if(sTemp==""||icount>=10||sTemp==" ") { iTemp=atoi(sNumber); break; } sTemp.TrimLeft(); sTemp.TrimRight(); iPos=sTemp.Find(","); sNumber=sTemp.Mid(0,iPos); LV_ITEM m_ListItem; m_ListItem.mask=LVIF_TEXT; m_ListItem.iItem=nItem; m_ListItem.iSubItem=0; m_ListItem.pszText=(LPTSTR)(LPCTSTR)sNumber; m_RecordList.InsertItem(&m_ListItem); m_RecordList.SetItemText(nItem,0,sNumber); sTemp.Delete(0,2); iPos=sTemp.Find(","); sTempBeginDate=sTemp.Mid(0,iPos); m_RecordList.SetItemText(nItem,2,sTempBeginDate); sTemp.Delete(0,iPos+1); iPos=sTemp.Find(","); sTempEndDate=sTemp.Mid(0,iPos); m_RecordList.SetItemText(nItem,3,sTempEndDate); sTemp.Delete(0,iPos+1); iPos=sTemp.Find(","); sTempTime=sTemp.Mid(0,iPos); m_RecordList.SetItemText(nItem,1,sTempTime); memset(Tempbuf, 0, 250); ++nItem; icount++; } while(TRUE); } else { break; } memset(Tempbuf, 0, sizeof(Tempbuf)); }while (TRUE) ; UpdateData(FALSE); }