Client2FormLYFZ.cpp 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738
  1. // Client2FormLYFZ.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "ylgl.h"
  5. #include "Client2FormLYFZ.h"
  6. #include "MyMdi.H"
  7. #include "ModifyDinDan.h"
  8. #include "InputPsw.h"
  9. #include "TakeMoney2.h"
  10. #include "NeroDlg.h"
  11. #include "ClientRequirement.h"
  12. #include "ChoosePhotoSkin2.h"
  13. #include "./helper/ffsco.h"
  14. #include "AddClientLYFZ.h"
  15. #include "SendMsgDlg.h"
  16. #include "SearchFilter5.h"
  17. #ifdef _DEBUG
  18. #define new DEBUG_NEW
  19. #undef THIS_FILE
  20. static char THIS_FILE[] = __FILE__;
  21. #endif
  22. #pragma comment(lib, "Shlwapi.lib")
  23. /////////////////////////////////////////////////////////////////////////////
  24. // Client2FormLYFZ
  25. IMPLEMENT_DYNCREATE(Client2FormLYFZ, MyFormView)
  26. Client2FormLYFZ::Client2FormLYFZ()
  27. : MyFormView(Client2FormLYFZ::IDD)
  28. {
  29. //{{AFX_DATA_INIT(Client2FormLYFZ)
  30. m_filter = _T("");
  31. //}}AFX_DATA_INIT
  32. }
  33. Client2FormLYFZ::~Client2FormLYFZ()
  34. {
  35. }
  36. void Client2FormLYFZ::DoDataExchange(CDataExchange* pDX)
  37. {
  38. MyFormView::DoDataExchange(pDX);
  39. //{{AFX_DATA_MAP(Client2FormLYFZ)
  40. DDX_Control(pDX, IDC_COMBO1, m_combo1);
  41. DDX_Control(pDX, IDC_LIST2, m_List1);
  42. DDX_Control(pDX, IDC_STATIC1, m_static1);
  43. DDX_CBString(pDX, IDC_COMBO1, m_filter);
  44. //}}AFX_DATA_MAP
  45. }
  46. BEGIN_MESSAGE_MAP(Client2FormLYFZ, MyFormView)
  47. //{{AFX_MSG_MAP(Client2FormLYFZ)
  48. ON_BN_CLICKED(IDC_BUTclose, OnBUTclose)
  49. ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
  50. ON_CBN_SELCHANGE(IDC_COMBO1, OnSelchangeCombo1)
  51. ON_WM_TIMER()
  52. ON_BN_CLICKED(IDC_BUTshowphoto, OnBUTshowphoto)
  53. ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
  54. ON_NOTIFY(LVN_ITEMCHANGED, IDC_LIST2, OnItemchangedList2)
  55. ON_BN_CLICKED(IDC_BUTburncd, OnBUTClient2FormLYFZ)
  56. ON_NOTIFY(NM_DBLCLK, IDC_LIST2, OnDblclkList2)
  57. ON_BN_CLICKED(IDC_BUTburncd2, OnBUTburncd2)
  58. ON_BN_CLICKED(IDC_BUTburncd3, OnBUTburncd3)
  59. ON_BN_CLICKED(IDC_BUTsendmsg, OnBUTsendmsg)
  60. ON_BN_CLICKED(IDC_BUTprint3, OnBUTprint3)
  61. //}}AFX_MSG_MAP
  62. END_MESSAGE_MAP()
  63. /////////////////////////////////////////////////////////////////////////////
  64. // Client2FormLYFZ diagnostics
  65. #ifdef _DEBUG
  66. void Client2FormLYFZ::AssertValid() const
  67. {
  68. MyFormView::AssertValid();
  69. }
  70. void Client2FormLYFZ::Dump(CDumpContext& dc) const
  71. {
  72. MyFormView::Dump(dc);
  73. }
  74. #endif //_DEBUG
  75. /////////////////////////////////////////////////////////////////////////////
  76. // Client2FormLYFZ message handlers
  77. void Client2FormLYFZ::OnInitialUpdate()
  78. {
  79. MyFormView::OnInitialUpdate();
  80. GetDlgItem(IDC_BUTburncd3)->EnableWindow(IsHasRights2new(49));
  81. GetDlgItem(IDC_BUTprint3)->EnableWindow(IsHasRights2new(49));
  82. // TODO: Add your specialized code here and/or call the base class
  83. CMyMdi Mdi;
  84. Mdi.SetSubView((CWnd*)GetParent(), (CWnd*)this);
  85. // Here we create the outbar control using the splitter as its parent
  86. // and setting its id to the first pane.
  87. CRect rc2;
  88. GetWindowRect(rc2);
  89. ::MoveWindow(m_hWnd, g_rc.left, g_rc.top, g_rc.Width(), g_rc.Height(), TRUE);
  90. EnumChildWindows(m_hWnd, (WNDENUMPROC)EnumChildProc, 0);
  91. int idarray[] = { IDC_BUTburncd, IDC_BUTburncd2, IDC_BUTburncd3, IDC_BUTsendmsg, IDC_BUTprint3, IDC_BUTclose };
  92. int idcount = 6;
  93. int btnwid;
  94. CRect prerc;
  95. for (int a = idcount - 2; a >= 0; a--)
  96. {
  97. GetDlgItem(idarray[a + 1])->GetWindowRect(prerc);
  98. ScreenToClient(prerc);
  99. GetDlgItem(idarray[a])->GetWindowRect(rc2);
  100. ScreenToClient(rc2);
  101. btnwid = rc2.Width();
  102. rc2.right = prerc.left;
  103. rc2.left = rc2.right - btnwid;
  104. GetDlgItem(idarray[a])->MoveWindow(rc2);
  105. }
  106. m_static1.SetFont(&g_titlefont);
  107. m_List1.SetHeadings("id,0;地区,100;老总姓名,100;影楼名称,100;业务员,100;电话,100;QQ,100;地址,100;来源,100;状态,100;备注,100;日期,100");
  108. m_List1.LoadColumnInfo(144);
  109. GetData();
  110. m_combo1.GetWindowRect(rc2);
  111. ScreenToClient(rc2);
  112. rc2.bottom += 200;
  113. m_combo1.MoveWindow(rc2);
  114. GetDlgItem(IDC_BUTclose)->GetWindowRect(rc2);
  115. SetComboHei(&m_combo1, rc2.Height());
  116. }
  117. void Client2FormLYFZ::FillGrid(BOOL bStatus)
  118. {
  119. if (g_bSearchFilter)
  120. {
  121. m_List1.DeleteAllItems2();
  122. int ii = 0;
  123. m_List1.m_arLabels.SetSize(m_List1array.GetSize(), 1);
  124. int count = 0;
  125. {
  126. for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++)
  127. {
  128. if (g_filterdate1 != "")
  129. {
  130. if (m_List1array.ElementAt(ii).ElementAt(11) < g_filterdate1 || m_List1array.ElementAt(ii).ElementAt(11) > g_filterdate2)
  131. continue;
  132. }
  133. if (g_waiter1 != "")
  134. {
  135. if (m_List1array.ElementAt(ii).ElementAt(4) != g_waiter1)
  136. continue;
  137. }
  138. if (g_waiter2 != "")
  139. {
  140. if (m_List1array.ElementAt(ii).ElementAt(1) != g_waiter2)
  141. continue;
  142. }
  143. if (g_waiter3 != "")
  144. {
  145. if (m_List1array.ElementAt(ii).ElementAt(8) != g_waiter3)
  146. continue;
  147. }
  148. if (g_waiter4 != "")
  149. {
  150. if (m_List1array.ElementAt(ii).ElementAt(9) != g_waiter4)
  151. continue;
  152. }
  153. if (1)
  154. {
  155. m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
  156. }
  157. }
  158. }
  159. m_List1.m_arLabels.SetSize(count, 1);
  160. ii = count;
  161. m_List1.m_LabelCount = ii;
  162. m_List1.SetItemCountEx(ii);
  163. CString str;
  164. str.Format("单数:%d", ii);
  165. SetDlgItemText(IDC_STATIC2, str);
  166. }
  167. else
  168. {
  169. m_List1.DeleteAllItems2();
  170. int ii = 0;
  171. m_List1.m_arLabels.SetSize(m_List1array.GetSize(), 1);
  172. int count = 0;
  173. if (m_filter.IsEmpty())
  174. {
  175. for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++)
  176. {
  177. m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
  178. }
  179. }
  180. else
  181. {
  182. int type = GetType(m_filter);
  183. if (type == 1)//电话
  184. {
  185. for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++)
  186. {
  187. if (m_List1array.ElementAt(ii).ElementAt(5).Find(m_filter) != -1)
  188. {
  189. m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
  190. }
  191. }
  192. }
  193. else if (type == 2)//拼音
  194. {
  195. m_filter.MakeUpper();
  196. for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++)
  197. {
  198. if (m_List1array.ElementAt(ii).ElementAt(12).Find(m_filter) != -1 || m_List1array.ElementAt(ii).ElementAt(13).Find(m_filter) != -1)
  199. {
  200. m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
  201. }
  202. }
  203. }
  204. else
  205. {
  206. for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++)
  207. {
  208. if (m_List1array.ElementAt(ii).ElementAt(0).Find(m_filter) != -1 || \
  209. m_List1array.ElementAt(ii).ElementAt(1).Find(m_filter) != -1 || \
  210. m_List1array.ElementAt(ii).ElementAt(2).Find(m_filter) != -1 || \
  211. m_List1array.ElementAt(ii).ElementAt(3).Find(m_filter) != -1 || \
  212. m_List1array.ElementAt(ii).ElementAt(4).Find(m_filter) != -1 || \
  213. m_List1array.ElementAt(ii).ElementAt(5).Find(m_filter) != -1 || \
  214. m_List1array.ElementAt(ii).ElementAt(6).Find(m_filter) != -1 || \
  215. m_List1array.ElementAt(ii).ElementAt(7).Find(m_filter) != -1 || \
  216. m_List1array.ElementAt(ii).ElementAt(9).Find(m_filter) != -1 || \
  217. m_List1array.ElementAt(ii).ElementAt(8).Find(m_filter) != -1)
  218. {
  219. m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
  220. }
  221. }
  222. }
  223. }
  224. m_List1.m_arLabels.SetSize(count, 1);
  225. ii = count;
  226. m_List1.m_LabelCount = ii;
  227. m_List1.SetItemCountEx(ii);
  228. CString str;
  229. str.Format("客人:%d", ii);
  230. SetDlgItemText(IDC_STATIC2, str);
  231. }
  232. }
  233. void Client2FormLYFZ::OnBUTclose()
  234. {
  235. // TODO: Add your control notification handler code here
  236. GetParent()->SendMessage(WM_CLOSE);
  237. }
  238. void Client2FormLYFZ::OnSelchangeCombo1()
  239. {
  240. // TODO: Add your control notification handler code here
  241. SetTimer(1, 100, NULL);
  242. }
  243. void Client2FormLYFZ::OnTimer(UINT nIDEvent)
  244. {
  245. // TODO: Add your message handler code here and/or call default
  246. KillTimer(nIDEvent);
  247. OnButton1();
  248. }
  249. BOOL Client2FormLYFZ::PreTranslateMessage(MSG* pMsg)
  250. {
  251. // TODO: Add your specialized code here and/or call the base class
  252. try
  253. {
  254. if (pMsg->message == WM_KEYDOWN)
  255. {
  256. switch (pMsg->wParam)
  257. {
  258. case VK_RETURN:
  259. OnButton1();
  260. return 1;
  261. case 0x43: // copy
  262. if ((GetKeyState(VK_CONTROL) & 0x80))
  263. {
  264. GetFocus()->SendMessage(WM_COPY);
  265. return TRUE;
  266. }
  267. break;
  268. case 0x56: //Ctrl + V:
  269. if ((GetKeyState(VK_CONTROL) & 0x80))
  270. {
  271. GetFocus()->SendMessage(WM_PASTE);
  272. return TRUE;
  273. }
  274. break;
  275. case 0x58: // cut
  276. if ((GetKeyState(VK_CONTROL) & 0x80))
  277. {
  278. GetFocus()->SendMessage(WM_CUT);
  279. return TRUE;
  280. }
  281. break;
  282. case 0x5A: //undo
  283. case 0x59: //redo
  284. if ((GetKeyState(VK_CONTROL) & 0x80))
  285. {
  286. GetFocus()->SendMessage(WM_UNDO);
  287. return TRUE;
  288. }
  289. break;
  290. }
  291. }
  292. return MyFormView::PreTranslateMessage(pMsg);
  293. }
  294. catch (...)
  295. {
  296. }
  297. }
  298. extern int CALLBACK BrowseProc(HWND hwnd, UINT msg, LPARAM lParam, LPARAM lpData);
  299. /*{
  300. switch(msg)
  301. {
  302. case BFFM_INITIALIZED:
  303. SendMessage(hwnd, BFFM_SETSELECTION, TRUE, NULL);
  304. break;
  305. case BFFM_SELCHANGED:
  306. {
  307. char szFileName[MAX_PATH];
  308. LPITEMIDLIST pidlCurrent = (LPITEMIDLIST)lParam;
  309. SHGetPathFromIDList(pidlCurrent, szFileName);
  310. SendMessage(hwnd, BFFM_SETSTATUSTEXT, 0, (LPARAM)szFileName);
  311. }
  312. break;
  313. }
  314. return 0;
  315. }*/
  316. void Client2FormLYFZ::GetSavePath(CString &path)
  317. {
  318. char lpszDisplayName[MAX_PATH], szFileName[MAX_PATH];
  319. LPITEMIDLIST pidlDesktop, pidlCurrent;
  320. if (SHGetSpecialFolderLocation(NULL, CSIDL_DESKTOP, &pidlDesktop)
  321. == NOERROR)
  322. {
  323. BROWSEINFO bi;
  324. bi.hwndOwner = this->m_hWnd;
  325. bi.pidlRoot = pidlDesktop;
  326. bi.pszDisplayName = lpszDisplayName;
  327. bi.lpszTitle = "\n文档保存的目录:";
  328. bi.ulFlags = BIF_STATUSTEXT&BIF_RETURNONLYFSDIRS;
  329. bi.lpfn = BrowseProc;
  330. bi.lParam = 0;
  331. bi.iImage = 0;
  332. pidlCurrent = SHBrowseForFolder(&bi);
  333. SHGetPathFromIDList(pidlCurrent, szFileName);
  334. path = szFileName;
  335. }
  336. }
  337. int Client2FormLYFZ::FindArray(CStringArray *pArray, CString Str)
  338. {
  339. for (int i = 0; i < pArray->GetSize(); i++)
  340. {
  341. if (pArray->ElementAt(i) == Str)
  342. return i;
  343. }
  344. return -1;
  345. }
  346. //-----------------------------------------------------------------
  347. // remark by Jeff 2014-12-12
  348. // 函数:GetNo
  349. // 描述:从str中解析出每个相片名,然后存入空的CStringArray中;
  350. // 参数:
  351. // str:选好的相片名串,如:"001,002,003" 后分隔符改为"|",结果应是"001|002|003"
  352. // array:空的数组,用来存放解析后的相片名;
  353. // 返回:
  354. // 注意:更换分隔符造成的问题,在该函数已解决;
  355. //-----------------------------------------------------------------
  356. void Client2FormLYFZ::GetNo(CString str, CStringArray &array)
  357. {
  358. if (!str.IsEmpty())
  359. {
  360. int pos = str.Find(",");
  361. while (pos != -1)
  362. {
  363. if (FindArray(&array, str.Left(pos)) == -1)
  364. array.Add(str.Left(pos));
  365. str = str.Right(str.GetLength() - pos - 1);
  366. pos = str.Find(",");
  367. }
  368. if (FindArray(&array, str) == -1)
  369. array.Add(str);
  370. }
  371. }
  372. //-----------------------------------------------------------------
  373. // remark by Jeff 2014-12-12
  374. // 函数:GetSelName
  375. // 描述:
  376. // 参数:
  377. // name:由GetNo解析出来后的单个相片名,如:"001"
  378. // spnamearray:订单下的商品数组,case 50所得;
  379. // 返回:
  380. // 注意:更换分隔符造成的问题,在该函数已解决;
  381. //-----------------------------------------------------------------
  382. CString Client2FormLYFZ::GetSelName(CString name, CArray<CStringArray, CStringArray>&spnamearray)
  383. {
  384. CString ret;
  385. name = "," + name + ",";
  386. CString str;
  387. for (int i = 0; i < spnamearray.GetSize(); i++)
  388. {
  389. str = "," + spnamearray.ElementAt(i).ElementAt(6) + ",";
  390. if (str.Find(name) != -1)
  391. {
  392. ret += spnamearray.ElementAt(i).ElementAt(5);
  393. ret += ";";
  394. }
  395. }
  396. ret.TrimRight(";");
  397. ret.Replace("*", "x");
  398. return ret;
  399. }
  400. void Client2FormLYFZ::OnBUTshowphoto()
  401. {
  402. // TODO: Add your control notification handler code here
  403. POSITION pos;
  404. pos = m_List1.GetFirstSelectedItemPosition();
  405. if (pos == NULL)
  406. {
  407. AfxMessageBox("请先选中您要查看的定单!", MB_ICONINFORMATION);
  408. return;
  409. }
  410. int iItem = m_List1.GetNextSelectedItem(pos);
  411. CString status = m_List1.GetItemText(iItem, 4);
  412. CString id = m_List1.GetItemText(iItem, 0);
  413. if (status == "未设计")
  414. {
  415. AfxMessageBox("此单未导片!", MB_ICONINFORMATION);
  416. return;
  417. }
  418. /* ShowPic dlg;
  419. dlg.m_path=g_path3+"\\";
  420. dlg.m_path+=id;
  421. dlg.m_path +="\\";
  422. dlg.DoModal ();*/
  423. ChoosePhotoSkin2 dlg;
  424. dlg.m_Runingmode = 1;
  425. dlg.SetLiaPath("3.lia");
  426. dlg.m_strOrderNumber = id;
  427. dlg.m_path = g_path3 + "\\";
  428. dlg.m_path += id;
  429. dlg.m_path += "\\";
  430. dlg.DoModal();
  431. for (int i = 0; i < m_List1array.GetSize(); i++)
  432. {
  433. if (id == m_List1array.ElementAt(i).ElementAt(0))
  434. {
  435. m_List1array.ElementAt(i).SetAt(7, dlg.m_bz2);
  436. // FillGrid();
  437. break;
  438. }
  439. }
  440. }
  441. void Client2FormLYFZ::OnButton1()
  442. {
  443. // TODO: Add your control notification handler code here
  444. UpdateData();
  445. m_filter.TrimLeft();
  446. m_filter.TrimRight();
  447. FillGrid();
  448. }
  449. void Client2FormLYFZ::OnButton2()
  450. {
  451. // TODO: Add your control notification handler code here
  452. SearchFilter5 dlg;
  453. CStringArray Array2;
  454. CStringArray Array3;
  455. CStringArray Array4;
  456. for (int i = 0; i < m_List1array.GetSize(); i++)
  457. {
  458. if (-1 == ::FindArray(&Array2, m_List1array.ElementAt(i).ElementAt(1)))
  459. Array2.Add(m_List1array.ElementAt(i).ElementAt(1));
  460. if (-1 == ::FindArray(&Array3, m_List1array.ElementAt(i).ElementAt(8)))
  461. Array3.Add(m_List1array.ElementAt(i).ElementAt(8));
  462. if (-1 == ::FindArray(&Array4, m_List1array.ElementAt(i).ElementAt(9)))
  463. Array4.Add(m_List1array.ElementAt(i).ElementAt(9));
  464. }
  465. dlg.m_pArray2 = &Array2;
  466. dlg.m_pArray3 = &Array3;
  467. dlg.m_pArray4 = &Array4;
  468. if (dlg.DoModal() == IDOK)FillGrid();
  469. g_bSearchFilter = 0;
  470. }
  471. void Client2FormLYFZ::OnItemchangedList2(NMHDR* pNMHDR, LRESULT* pResult)
  472. {
  473. NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
  474. // TODO: Add your control notification handler code here
  475. *pResult = 0;
  476. }
  477. void Client2FormLYFZ::OnBUTClient2FormLYFZ()
  478. {
  479. // TODO: Add your control notification handler code here
  480. AddClientLYFZ dlg;
  481. dlg.m_pList2array = &m_List2array;
  482. if (dlg.DoModal() == IDOK)
  483. {
  484. GetData();
  485. }
  486. }
  487. void Client2FormLYFZ::OnDblclkList2(NMHDR* pNMHDR, LRESULT* pResult)
  488. {
  489. // TODO: Add your control notification handler code here
  490. POSITION pos;
  491. pos = m_List1.GetFirstSelectedItemPosition();
  492. if (pos == NULL)return;
  493. OnBUTburncd2();
  494. *pResult = 0;
  495. }
  496. void Client2FormLYFZ::OnBUTburncd2()
  497. {
  498. // TODO: Add your control notification handler code here
  499. POSITION pos;
  500. pos = m_List1.GetFirstSelectedItemPosition();
  501. if (pos == NULL)
  502. {
  503. AfxMessageBox("请先选中您要修改的客户!", MB_ICONINFORMATION);
  504. return;
  505. }
  506. int iItem = m_List1.GetNextSelectedItem(pos);
  507. AddClientLYFZ dlg;
  508. dlg.m_pList2array = &m_List2array;
  509. dlg.m_bAdd = 0;
  510. dlg.id = m_List1.GetItemText(iItem, 0);
  511. dlg.m_area = m_List1.GetItemText(iItem, 1);
  512. dlg.m_name1 = m_List1.GetItemText(iItem, 2);
  513. dlg.m_name2 = m_List1.GetItemText(iItem, 3);
  514. dlg.m_clerk = m_List1.GetItemText(iItem, 4);
  515. if (IsHasRights2new(49) == 0 && dlg.m_clerk != g_user.name && dlg.m_clerk != "")
  516. {
  517. AfxMessageBox("只能修改自己的客户!", MB_ICONINFORMATION);
  518. return;
  519. }
  520. dlg.m_phone1 = m_List1.GetItemText(iItem, 5);
  521. dlg.m_qq1 = m_List1.GetItemText(iItem, 6);
  522. dlg.m_addr1 = m_List1.GetItemText(iItem, 7);
  523. dlg.m_from = m_List1.GetItemText(iItem, 8);
  524. dlg.m_status = m_List1.GetItemText(iItem, 9);
  525. CString id = m_List1.GetItemText(iItem, 0);
  526. for (int ii = 0; ii < m_List1array.GetSize(); ii++)
  527. {
  528. if (m_List1array.ElementAt(ii).ElementAt(0) == id)
  529. {
  530. dlg.m_bz = m_List1.m_arLabels.ElementAt(ii).ElementAt(10);
  531. break;
  532. }
  533. }
  534. if (dlg.DoModal() == IDOK)
  535. {
  536. GetData();
  537. }
  538. }
  539. void Client2FormLYFZ::OnBUTburncd3()
  540. {
  541. // TODO: Add your control notification handler code here
  542. POSITION pos;
  543. pos = m_List1.GetFirstSelectedItemPosition();
  544. if (pos == NULL)
  545. {
  546. AfxMessageBox("请先选中您要删除的客户!", MB_ICONINFORMATION);
  547. return;
  548. }
  549. int iItem = m_List1.GetNextSelectedItem(pos);
  550. CString id = m_List1.GetItemText(iItem, 0);
  551. if (AfxMessageBox("确认删除吗?", MB_YESNO | MB_ICONINFORMATION) != IDYES)return;
  552. CString sql;
  553. sql.Format("delete from client2 where id=%d ", atoi(id));
  554. g_sendhead.bsql = 1;
  555. g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
  556. GetData();
  557. }
  558. void Client2FormLYFZ::OnBUTsendmsg()
  559. {
  560. // TODO: Add your control notification handler code here
  561. POSITION pos;
  562. pos = m_List1.GetFirstSelectedItemPosition();
  563. if (pos == NULL)
  564. {
  565. AfxMessageBox("请先选中您要发送短信的客人!", MB_ICONINFORMATION);
  566. return;
  567. }
  568. int iItem;
  569. CStringArray array;
  570. while (pos)
  571. {
  572. iItem = m_List1.GetNextSelectedItem(pos);
  573. if (!m_List1.GetItemText(iItem, 5).IsEmpty())
  574. array.Add(m_List1.GetItemText(iItem, 5));
  575. }
  576. SendMsgDlg dlg;
  577. dlg.m_mode = 2;
  578. dlg.m_pArray = &array;
  579. dlg.DoModal();
  580. }
  581. void Client2FormLYFZ::OnBUTprint3()
  582. {
  583. CStdioFile fp;
  584. /* if(::PathFileExists ("c:\\clientphone.txt"))
  585. {
  586. fp.Open ("c:\\clientphone.txt", CFile::modeWrite);
  587. fp.SeekToEnd ();
  588. }
  589. else*/
  590. fp.Open("c:\\clientphone.txt", CFile::modeCreate | CFile::modeWrite);
  591. CString str;
  592. CString str1, str2, str3, str4, str5, str6, str7;
  593. CString phone;
  594. CString txname, txprice, mensi;
  595. int leng1 = 30;
  596. int leng2 = 30;
  597. int leng3 = 15;
  598. int leng4 = 18;
  599. int leng5 = 15;
  600. int leng6 = 10;
  601. int leng7 = 10;
  602. str1 = "老总姓名";
  603. str2 = "影楼名称";
  604. str3 = "业务员";
  605. str4 = "电话";
  606. str5 = "QQ";
  607. str6 = "来源";
  608. str7 = "状态";
  609. FillLength(str1, leng1);
  610. FillLength(str2, leng2);
  611. FillLength(str3, leng3);
  612. FillLength(str4, leng4);
  613. FillLength(str5, leng5);
  614. FillLength(str6, leng6);
  615. FillLength(str7, leng7);
  616. str = str1 + str2 + str3 + str4 + str5 + str6 + str7 + "\n";
  617. fp.WriteString(str);
  618. for (int i = 0; i < m_List1.GetItemCount(); i++)
  619. {
  620. str1 = str2 = str3 = str4 = str5 = str6 = str7 = "";
  621. str1 = m_List1.GetItemText(i, 2);
  622. str2 = m_List1.GetItemText(i, 3);
  623. str3 = m_List1.GetItemText(i, 4);
  624. str4 = m_List1.GetItemText(i, 5);
  625. str5 = m_List1.GetItemText(i, 6);
  626. str6 = m_List1.GetItemText(i, 8);
  627. str7 = m_List1.GetItemText(i, 9);
  628. FillLength(str1, leng1);
  629. FillLength(str2, leng2);
  630. FillLength(str3, leng3);
  631. FillLength(str4, leng4);
  632. FillLength(str5, leng5);
  633. FillLength(str6, leng6);
  634. FillLength(str7, leng7);
  635. str = str1 + str2 + str3 + str4 + str5 + str6 + str7 + "\n";
  636. fp.WriteString(str);
  637. }
  638. fp.Close();
  639. MessageBox("电话已保存到c:\\clientphone.txt");
  640. ShellExecute(NULL, _T("open"), _T("c:\\clientphone.txt"), NULL, NULL, SW_SHOWMAXIMIZED);
  641. }
  642. void Client2FormLYFZ::GetData()
  643. {
  644. g_sendhead.bsql = 0;
  645. g_sendhead.code[0] = 90;
  646. g_sendhead.tabcount = 1;
  647. g_pMainWnd->ProcessChatMessageRequest2(1); if (g_bSendOK == 0)return;
  648. DataToArray(&m_List2array);
  649. int size = 0;
  650. for (int i = 0; i < m_List2array.GetSize(); i++)
  651. {
  652. if (m_List2array.ElementAt(i).ElementAt(4) != g_user.name && m_List2array.ElementAt(i).ElementAt(4) != "" && IsHasRights2new(49) == 0)continue;
  653. m_List1array.SetSize(size + 1, 1);
  654. m_List1array.ElementAt(size).Copy(m_List2array.ElementAt(i));
  655. size++;
  656. }
  657. m_List1arrayBak.SetSize(m_List1array.GetSize());
  658. for (i = 0; i < m_List1array.GetSize(); i++)
  659. {
  660. m_List1arrayBak.ElementAt(i).Copy(m_List1array.ElementAt(i));
  661. if (m_List1array.ElementAt(i).ElementAt(10).GetLength()>256)
  662. m_List1array.ElementAt(i).SetAt(10, m_List1array.ElementAt(i).ElementAt(10).Left(256) + "..");
  663. }
  664. FillGrid();
  665. }