// CClientForm.cpp : implementation file // #include "stdafx.h" #include "ylgl.h" #include "ClientForm.h" #include "MyMdi.H" #include "SendMsgDlg.h" #include "SelBrunDevice.h" #include "SelExportType.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CClientForm IMPLEMENT_DYNCREATE(CClientForm, MyFormView) CClientForm::CClientForm() : MyFormView(CClientForm::IDD) { //{{AFX_DATA_INIT(CClientForm) m_filter = _T(""); //}}AFX_DATA_INIT } CClientForm::~CClientForm() { } void CClientForm::DoDataExchange(CDataExchange* pDX) { MyFormView::DoDataExchange(pDX); //{{AFX_DATA_MAP(CClientForm) DDX_Control(pDX, IDC_COMBO1, m_combo1); DDX_Control(pDX, IDC_LIST2, m_List1); DDX_Control(pDX, IDC_STATIC1, m_static1); DDX_CBString(pDX, IDC_COMBO1, m_filter); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CClientForm, MyFormView) //{{AFX_MSG_MAP(CClientForm) ON_BN_CLICKED(IDC_BUTclose, OnBUTclose) ON_BN_CLICKED(IDC_BUTTON1, OnButton1) ON_CBN_SELCHANGE(IDC_COMBO1, OnSelchangeCombo1) ON_WM_TIMER() ON_BN_CLICKED(IDC_BUTTON2, OnButton2) ON_BN_CLICKED(IDC_BUTTON3, OnButton3) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CClientForm diagnostics #ifdef _DEBUG void CClientForm::AssertValid() const { MyFormView::AssertValid(); } void CClientForm::Dump(CDumpContext& dc) const { MyFormView::Dump(dc); } #endif //_DEBUG ///////////////////////////////////////////////////////////////////////////// // CClientForm message handlers void CClientForm::OnInitialUpdate() { MyFormView::OnInitialUpdate(); // TODO: Add your specialized code here and/or call the base class CMyMdi Mdi; Mdi.SetSubView((CWnd*)GetParent(), (CWnd*)this); m_bHideBtn = 0; if (g_dx >= 10000) { m_bHideBtn = 1; g_dx -= 10000; } // Here we create the outbar control using the splitter as its parent // and setting its id to the first pane. CRect rc2; GetWindowRect(rc2); ::MoveWindow(m_hWnd, g_rc.left, g_rc.top, g_rc.Width(), g_rc.Height(), TRUE); EnumChildWindows(m_hWnd, (WNDENUMPROC)EnumChildProc, 0); if (m_bHideBtn) { CRect rc, rc2; // GetDlgItem(IDC_BUTTON2)->ShowWindow(SW_HIDE); GetDlgItem(IDC_BUTTON2)->SetWindowText("导出"); GetDlgItem(IDC_BUTTON2)->EnableWindow(IsHasRights2new(49)); GetDlgItem(IDC_BUTTON3)->ShowWindow(SW_HIDE); GetDlgItem(IDC_BUTTON3)->GetWindowRect(rc); ScreenToClient(rc); GetDlgItem(IDC_BUTTON1)->GetWindowRect(rc2); ScreenToClient(rc2); rc2.right -= rc2.right - rc.right; rc2.left = rc.left; GetDlgItem(IDC_BUTTON1)->MoveWindow(rc2); m_static1.SetWindowText("订单客户"); } m_static1.SetFont(&g_titlefont); #ifdef CHILD_VERSION //m_List1.SetHeadings("订单号,100;家长姓名,100;宝宝姓名,100;手机,100;固定电话,100;地址,100;地区,100;宝宝生日,100;QQ,100;套系名称,100;套系价格,100"); m_List1.SetHeadings("订单号,100;家长姓名,100;宝宝姓名,100;手机,100;固定电话,100;地址,100;地区,100;宝宝生日,100;QQ,100;套系名称,100;套系价格,100;拍照状态,100;选片状态,100;取件状态,100;初修状态,100;设计状态,100;看设计状态,100"); #else // 添加一婚期; //m_List1.SetHeadings("订单号,100;男宾姓名,100;女宾姓名,100;男宾电话,100;女宾电话,100;男宾地址,100;女宾地址,100;男宾地区,100;女宾地区,100;男宾生日,100;女宾生日,100;男宾QQ,100;女宾QQ,100;婚期,100;套系名称,100;套系价格,100" ); m_List1.SetHeadings("订单号,100;男宾姓名,100;女宾姓名,100;男宾电话,100;女宾电话,100;男宾地址,100;女宾地址,100;男宾地区,100;女宾地区,100;男宾生日,100;女宾生日,100;男宾QQ,100;女宾QQ,100;婚期,100;套系名称,100;套系价格,100;拍照状态,100;选片状态,100;取件状态,100;初修状态,100;设计状态,100;看设计状态,100" ); #endif m_List1.LoadColumnInfo(108); g_sendhead.bsql = 0; g_sendhead.code[0] = 15; g_sendhead.code[1] = 6; g_sendhead.tabcount = 2; g_pMainWnd->ProcessChatMessageRequest2(15); if (g_bSendOK == 0)return; DataToArray(&m_List1array, &g_List1array); HidePrice(); for (int i = 0; i < g_List1array.GetSize(); i++) { if (m_combo1.FindString(0, g_List1array.ElementAt(i).ElementAt(1)) == -1) m_combo1.AddString(g_List1array.ElementAt(i).ElementAt(1)); } FillGrid(); m_combo1.GetWindowRect(rc2); ScreenToClient(rc2); rc2.bottom += 200; m_combo1.MoveWindow(rc2); GetDlgItem(IDC_BUTclose)->GetWindowRect(rc2); SetComboHei(&m_combo1, rc2.Height()); } void CClientForm::FillGrid(int mode) { UpdateData(); m_List1.DeleteAllItems2(); int ii = 0; m_List1.m_arLabels.SetSize(m_List1array.GetSize(), 1); int count = 0; #ifdef CHILD_VERSION if (!m_area.IsEmpty()) { for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++) { if (m_List1array.ElementAt(ii).ElementAt(6) == m_area) { m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii)); } } } else { if (m_filter.IsEmpty()) { for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++) { m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii)); } } else { int type = GetType(m_filter); if (type == 1)//电话 { for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++) { if (m_List1array.ElementAt(ii).ElementAt(3).Find(m_filter) != -1 || \ m_List1array.ElementAt(ii).ElementAt(4).Find(m_filter) != -1) { m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii)); } } } else if (type == 2)//拼音 { m_filter.MakeUpper(); for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++) { if (m_List1array.ElementAt(ii).ElementAt(11).Find(m_filter) != -1 || \ m_List1array.ElementAt(ii).ElementAt(12).Find(m_filter) != -1) { m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii)); } } } else { for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++) { if (m_List1array.ElementAt(ii).ElementAt(0).Find(m_filter) != -1 || \ m_List1array.ElementAt(ii).ElementAt(1).Find(m_filter) != -1 || \ m_List1array.ElementAt(ii).ElementAt(2).Find(m_filter) != -1 || \ m_List1array.ElementAt(ii).ElementAt(3).Find(m_filter) != -1 || \ m_List1array.ElementAt(ii).ElementAt(4).Find(m_filter) != -1 || \ m_List1array.ElementAt(ii).ElementAt(9).Find(m_filter) != -1) { m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii)); } } } } } #else if(!m_area.IsEmpty ()) { for(ii=0; iiSendMessage(WM_CLOSE); } void CClientForm::OnSelchangeCombo1() { // TODO: Add your control notification handler code here SetTimer(1, 100, NULL); } void CClientForm::OnTimer(UINT nIDEvent) { // TODO: Add your message handler code here and/or call default KillTimer(nIDEvent); OnButton1(); } BOOL CClientForm::PreTranslateMessage(MSG* pMsg) { // TODO: Add your specialized code here and/or call the base class try { if (pMsg->message == WM_KEYDOWN) { switch (pMsg->wParam) { case VK_RETURN: OnButton1(); return 1; case 0x43: // copy if ((GetKeyState(VK_CONTROL) & 0x80)) { GetFocus()->SendMessage(WM_COPY); return TRUE; } break; case 0x56: //Ctrl + V: if ((GetKeyState(VK_CONTROL) & 0x80)) { GetFocus()->SendMessage(WM_PASTE); return TRUE; } break; case 0x58: // cut if ((GetKeyState(VK_CONTROL) & 0x80)) { GetFocus()->SendMessage(WM_CUT); return TRUE; } break; case 0x5A: //undo case 0x59: //redo if ((GetKeyState(VK_CONTROL) & 0x80)) { GetFocus()->SendMessage(WM_UNDO); return TRUE; } break; } } return MyFormView::PreTranslateMessage(pMsg); } catch (...) { } return TRUE; } void CClientForm::OnButton1() { // TODO: Add your control notification handler code here UpdateData(); m_filter.TrimLeft(); m_filter.TrimRight(); m_area.Empty(); FillGrid(); } void CClientForm::OnButton2() { // TODO: Add your control notification handler code here if (m_bHideBtn) { GetClientPhone(); return; } POSITION pos; pos = m_List1.GetFirstSelectedItemPosition(); if (pos == NULL) { AfxMessageBox("请先选中您要发送短信的客人!", MB_ICONINFORMATION); return; } int iItem; CStringArray array; while (pos) { iItem = m_List1.GetNextSelectedItem(pos); array.Add(m_List1.GetItemText(iItem, 3)); array.Add(m_List1.GetItemText(iItem, 4)); } SendMsgDlg dlg; dlg.m_pArray = &array; dlg.DoModal(); } void CClientForm::OnButton3() { // TODO: Add your control notification handler code here g_sendhead.bsql = 0; g_sendhead.code[0] = 82; g_sendhead.tabcount = 1; g_pMainWnd->ProcessChatMessageRequest2(1); if (g_bSendOK == 0) { return; } CArraym_List1array; DataToArray(&m_List1array); HidePrice(); if (m_List1array.GetSize() == 0)return; CStringArray array; for (int i = 0; i < m_List1array.GetSize(); i++) { array.Add(m_List1array.ElementAt(i).ElementAt(0)); } SelBrunDevice dlg; dlg.pArray = &array; if (dlg.DoModal() == IDOK) { m_area = array.ElementAt(dlg.m_sel); FillGrid(); } } void CClientForm::GetClientPhone() { SelExportType dlg; if (dlg.DoModal() != IDOK)return; if (dlg.m_type == 1) { ListToXLS(&m_List1, "c:\\客户资料.xls", 0); return; } #ifdef CHILD_VERSION CStdioFile fp; if ( fp.Open("c:\\clientphone.txt", CFile::modeCreate | CFile::modeWrite) ) { AfxMessageBox(_T("创建文件失败,请在管理员权限下运行!")); return; } CString str; CString str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, str11, str12, str13, str14; CString phone; CString txname, txprice, mensi; int leng1 = 20; int leng2 = 20; int leng3 = 20; int leng4 = 20; int leng5 = 15; int leng6 = 15; int leng7 = 15; int leng8 = 15; int leng9 = 15; int leng10 = 15; int leng11 = 15; int leng12 = 15; int leng13 = 15; int leng14 = 15; int leng15 = 15; int leng16 = 15; int leng17 = 15; str1 = "家长姓名"; str2 = "宝宝姓名"; str3 = "手机"; str4 = "电话"; str5 = "QQ"; str6 = "宝宝生日"; str7 = "套系"; str8 = "金额"; str9 = _T("拍照状态"); str10 = _T("选片状态"); str11 = _T("取件状态"); str12 = _T("初修状态"); str13 = _T("设计状态"); str14 = _T("看设计状态"); FillLength(str1, leng1); FillLength(str2, leng2); FillLength(str3, leng3); FillLength(str4, leng4); FillLength(str5, leng5); FillLength(str6, leng6); FillLength(str7, leng7); FillLength(str8, leng8); FillLength(str9 , leng9 ); FillLength(str10, leng10); FillLength(str11, leng11); FillLength(str12, leng12); FillLength(str13, leng13); FillLength(str14, leng14); //订单号,100;家长姓名,100;宝宝姓名,100;手机,100;固定电话,100;地址,100;地区,100;宝宝生日,100;QQ,100;套系名称,100;套系价格,100;拍照状态,100;选片状态,100;取件状态,100;初修状态,100;设计状态,100;看设计状态,100 str = str1 + str2 + str3 + str4 + str5 + str6 + str7 + str8 + str9 + str10 + str11 + str12 + str13 + str14 + "\n"; fp.WriteString(str); for (int i = 0; i < m_List1.GetItemCount(); i++) { str1 = m_List1.GetItemText(i, 1); str2 = m_List1.GetItemText(i, 2); str3 = m_List1.GetItemText(i, 3); str4 = m_List1.GetItemText(i, 4); str5 = m_List1.GetItemText(i, 8); str6 = m_List1.GetItemText(i, 7); str7 = m_List1.GetItemText(i, 9); str8 = m_List1.GetItemText(i, 10); str9 = m_List1.GetItemText(i, 11); str10= m_List1.GetItemText(i, 12); str11= m_List1.GetItemText(i, 13); str12= m_List1.GetItemText(i, 14); str13= m_List1.GetItemText(i, 15); str14= m_List1.GetItemText(i, 16); FillLength(str1, leng1); FillLength(str2, leng2); FillLength(str3, leng3); FillLength(str4, leng4); FillLength(str5, leng5); FillLength(str6, leng6); FillLength(str7, leng7); FillLength(str8, leng8); FillLength(str9 , leng9 ); FillLength(str10, leng10); FillLength(str11, leng11); FillLength(str12, leng12); FillLength(str13, leng13); FillLength(str14, leng14); str = str1 + str2 + str3 + str4 + str5 + str6 + str7 + str8 + str9 + str10 + str11 + str12 + str13 + str14 + "\n"; fp.WriteString(str); } fp.Close(); MessageBox("电话已保存到c:\\clientphone.txt"); ShellExecute(NULL, _T("open"), _T("c:\\clientphone.txt"), NULL, NULL, SW_SHOWMAXIMIZED); #else CStdioFile fp; if ( !fp.Open("c:\\clientphone.txt", CFile::modeCreate|CFile::modeWrite) ) { AfxMessageBox(_T("创建文件失败,请在管理员权限下运行!")); return; } CString str; CString str1,str2,str3,str4,str5,str6,str7,str8,str9,str10,str11; CString phone; CString txname,txprice,mensi; int leng1=15; int leng2=15; int leng3=18; int leng4=18; int leng5=15; int leng6=15; int leng7=15; int leng8=15; int leng9=20; int leng10=15; //100;拍照状态,100;选片状态,100;取件状态,100;初修状态,100;设计状态,100;看设计状态,100 str1="男宾"; str2="女宾"; str3="男宾电话"; str4="女宾电话"; str5="男宾QQ"; str6="女宾QQ"; str7="男宾生日"; str8="女宾生日"; str9="套系"; str10="金额"; FillLength(str1, leng1); FillLength(str2, leng2); FillLength(str3, leng3); FillLength(str4, leng4); FillLength(str5, leng5); FillLength(str6, leng6); FillLength(str7, leng7); FillLength(str8, leng8); FillLength(str9, leng9); FillLength(str10,leng10); str= str1 + str2 + str3 + str4 + str5 + str6 + str7 + str8 + str9 + str10 + "\n"; fp.WriteString (str); //"订单号,100;男宾姓名,100;女宾姓名,100;男宾电话,100;女宾电话,100;男宾地址,100;女宾地址,100;男宾地区,100;女宾地区,100;男宾生日,100;女宾生日,100; // 男宾QQ,100;女宾QQ,100;婚期,100; 套系名称,100;套系价格,100;拍照状态,100;选片状态,100;取件状态,100;初修状态,100;设计状态,100;看设计状态,100" for(int i=0; i