TakeControlDlg9.cpp 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601
  1. // TakeControlDlg9.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "ylgl.h"
  5. #include "TakeControlDlg9.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. /////////////////////////////////////////////////////////////////////////////
  12. // TakeControlDlg9 dialog IDC_EDITtime2
  13. TakeControlDlg9::TakeControlDlg9(CWnd* pParent /*=NULL*/)
  14. : CDialog(TakeControlDlg9::IDD, pParent)
  15. {
  16. //{{AFX_DATA_INIT(TakeControlDlg9)
  17. m_name1 = _T("");
  18. m_name2 = _T("");
  19. m_time2 = _T("");
  20. m_id = _T("");
  21. m_bz2 = _T("");
  22. m_clothescount = _T("");
  23. m_outside = _T("");
  24. m_ren = _T("");
  25. m_taoxiname = _T("");
  26. m_time4 = _T("");
  27. m_time5 = _T("");
  28. m_time6 = _T("");
  29. m_taketime = _T("");
  30. m_check3 = FALSE;
  31. m_bModify = 0;
  32. m_pIdArray = NULL;
  33. m_pBranchArray = NULL;
  34. //}}AFX_DATA_INIT
  35. }
  36. void TakeControlDlg9::DoDataExchange(CDataExchange* pDX)
  37. {
  38. CDialog::DoDataExchange(pDX);
  39. //{{AFX_DATA_MAP(TakeControlDlg9)
  40. DDX_Control(pDX, IDC_COMBO10, m_combo10);
  41. DDX_Control(pDX, IDC_LIST1, m_List1);
  42. DDX_Control(pDX, IDC_COMBOdatetime, m_combodatetime);
  43. DDX_Control(pDX, IDC_COMBO5, m_combobox);
  44. DDX_Control(pDX, IDC_COMBO11, m_combobox2);
  45. DDX_Control(pDX, IDC_COMBO4, m_combo4);
  46. DDX_Control(pDX, IDC_COMBO3, m_combo3);
  47. DDX_Control(pDX, IDC_EDITtime5, m_editdate3);
  48. DDX_Control(pDX, IDC_EDITtime2, m_editdate);
  49. DDX_Control(pDX, IDC_COMBO2, m_combo2);
  50. DDX_Control(pDX, IDC_COMBO1, m_combo1);
  51. DDX_Text(pDX, IDC_EDITname, m_name1);
  52. DDX_Text(pDX, IDC_EDITname2, m_name2);
  53. DDX_Text(pDX, IDC_EDITtime2, m_time2);
  54. DDX_Text(pDX, IDC_EDITid, m_id);
  55. DDX_Text(pDX, IDC_EDITObz2, m_bz2);
  56. DDX_Text(pDX, IDC_EDITOclothescount, m_clothescount);
  57. DDX_Text(pDX, IDC_EDITOoutside, m_outside);
  58. DDX_Text(pDX, IDC_EDITOren, m_ren);
  59. DDX_Text(pDX, IDC_EDITtaoxiname, m_taoxiname);
  60. DDX_Text(pDX, IDC_EDITtime5, m_time5);
  61. DDX_CBString(pDX, IDC_COMBOdatetime, m_taketime);
  62. DDX_Check(pDX, IDC_CHECK1, m_check3);
  63. //}}AFX_DATA_MAP
  64. }// DDX_Text(pDX, IDC_EDITtime4, m_time4);
  65. BEGIN_MESSAGE_MAP(TakeControlDlg9, CDialog)
  66. //{{AFX_MSG_MAP(TakeControlDlg9)
  67. ON_CBN_SELCHANGE(IDC_COMBO5, OnSelchangeCombo5)
  68. ON_CBN_SELCHANGE(IDC_COMBO1, OnSelchangeCombo1)
  69. ON_CBN_SELCHANGE(IDC_COMBO11, OnSelchangeCombo11)
  70. ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
  71. //}}AFX_MSG_MAP
  72. END_MESSAGE_MAP()
  73. /////////////////////////////////////////////////////////////////////////////
  74. // TakeControlDlg9 message handlers
  75. BOOL TakeControlDlg9::OnInitDialog()
  76. {
  77. CDialog::OnInitDialog();
  78. // TODO: Add extra initialization here
  79. CRect rc, rc2;
  80. m_List1.GetWindowRect(rc);
  81. ScreenToClient(rc);
  82. GetWindowRect(rc2);
  83. rc2.right = rc2.left + rc.right + 40;
  84. MoveWindow(rc2);
  85. #ifdef CHILD_VERSION
  86. GetDlgItem(IDC_STATIC1)->SetWindowText("家长姓名:");
  87. GetDlgItem(IDC_STATIC2)->SetWindowText("宝宝姓名:");
  88. GetDlgItem(IDC_STATIC10)->SetWindowText("引导师:");
  89. #endif
  90. if (g_bAllBranch == 0)
  91. {
  92. GetDlgItem(IDC_STATIC7)->ShowWindow(0);
  93. GetDlgItem(IDC_EDITtime6)->ShowWindow(0);
  94. }
  95. m_combodatetime.AddString("09:00");
  96. m_combodatetime.AddString("10:00");
  97. m_combodatetime.AddString("11:00");
  98. m_combodatetime.AddString("12:00");
  99. m_combodatetime.AddString("13:00");
  100. m_combodatetime.AddString("14:00");
  101. m_combodatetime.AddString("15:00");
  102. m_combodatetime.AddString("16:00");
  103. m_combodatetime.AddString("17:00");
  104. m_combodatetime.AddString("18:00");
  105. m_combodatetime.AddString("19:00");
  106. m_combodatetime.AddString("20:00");
  107. m_combodatetime.AddString("21:00");
  108. m_combodatetime.AddString("22:00");
  109. if (m_pIdArray == NULL)
  110. {
  111. m_acCombo.Init(&m_combobox);
  112. if (g_bAllBranch == 0)
  113. {
  114. g_sendhead.bsql = 0;
  115. g_sendhead.code[0] = 30;
  116. g_sendhead.tabcount = 1;
  117. //g_pMainWnd->ProcessChatMessageRequest2(21);
  118. g_pMainWnd->ProcessChatMessageRequest2(_T("status3 <> 'OK'"));
  119. if (g_bSendOK == 0)return 0;
  120. DataToArray(&m_List1array);
  121. }
  122. else
  123. {
  124. if (m_bModify == 0)
  125. {
  126. m_List1array.RemoveAll();
  127. CStringArray failbrancharray;
  128. CString branch;
  129. int i = 0;
  130. for ( i = -1; i < g_brancharray.GetSize() - 1; i++)
  131. {
  132. if (i != -1)
  133. {
  134. branch = g_brancharray.ElementAt(i).ElementAt(0);
  135. g_branchip = g_brancharray.ElementAt(i).ElementAt(1);
  136. g_pMainWnd->OnDisconnect();
  137. g_branchname = branch;
  138. g_bBranchModify = 1;
  139. }
  140. else
  141. branch = g_brancharray.ElementAt(g_brancharray.GetSize() - 1).ElementAt(0);
  142. g_sendhead.bsql = 0;
  143. g_sendhead.code[0] = 30;
  144. g_sendhead.tabcount = 1;
  145. //g_pMainWnd->ProcessChatMessageRequest2(1);
  146. g_pMainWnd->ProcessChatMessageRequest2(_T("status3 <> 'OK'"));
  147. if (g_bSendOK == 0)
  148. {
  149. failbrancharray.Add(branch);
  150. continue;
  151. }
  152. CArray<CStringArray, CStringArray>List1array;
  153. DataToArray(&List1array);
  154. int size = m_List1array.GetSize();
  155. for (int j = 0; j < List1array.GetSize(); j++)
  156. {
  157. size++;
  158. m_List1array.SetSize(size, 1);
  159. size--;
  160. m_List1array.ElementAt(size).Copy(List1array.ElementAt(j));
  161. m_List1array.ElementAt(size).Add(branch);
  162. size++;
  163. }
  164. }
  165. for (i = 0; i < failbrancharray.GetSize(); i++)
  166. {
  167. //AfxMessageBox("连接"+failbrancharray.ElementAt(i)+"服务器失败!", MB_ICONINFORMATION);
  168. }
  169. g_pMainWnd->OnDisconnect();
  170. g_bBranchModify = 0; g_branchip = g_branchname = "";
  171. }
  172. else
  173. {
  174. GetDlgItem(IDC_STATIC5)->SetWindowText("");
  175. GetDlgItem(IDC_STATIC6)->SetWindowText("");
  176. m_combobox.ShowWindow(0);
  177. }
  178. }
  179. m_acCombo.m_pArray = &m_List1array;
  180. if (m_bModify == 0)m_combobox.SetFocus();
  181. m_combobox2.ShowWindow(0);
  182. }
  183. else
  184. {
  185. for (int i = 0; i < m_pIdArray->GetSize(); i++)
  186. {
  187. m_combobox2.AddString(m_pIdArray->ElementAt(i));
  188. }
  189. m_combobox2.SetCurSel(0);
  190. id = m_pIdArray->ElementAt(0);
  191. GetDlgItem(IDC_STATIC5)->SetWindowText("选择客人:");
  192. GetDlgItem(IDC_STATIC6)->SetWindowText("");
  193. m_combobox.ShowWindow(0);
  194. }
  195. this->CenterWindow(g_pMainWnd);
  196. if (g_bAllBranch)
  197. GetDlgItem(IDC_EDITtime6)->SetWindowText(m_branch);
  198. m_combo10.m_pMsgParent = &m_List1;
  199. m_List1.m_pComboBox = &m_combo10;
  200. m_List1.InitStyle();
  201. m_List1.InsertColumn(0, _T("id"), LVCFMT_LEFT, 0);
  202. m_List1.InsertColumn(1, _T("婚庆内容"), LVCFMT_LEFT, 100);
  203. m_List1.InsertColumn(2, _T("农历"), LVCFMT_LEFT, 50);
  204. m_List1.InsertColumn(3, _T("日期"), LVCFMT_LEFT, 90);
  205. m_List1.InsertColumn(4, _T("时间"), LVCFMT_LEFT, 70);
  206. m_List1.InsertColumn(5, _T("服务人员1"), LVCFMT_LEFT, 100);
  207. m_List1.InsertColumn(6, _T("服务人员2"), LVCFMT_LEFT, 100);
  208. m_List1.InsertColumn(7, _T("状态"), LVCFMT_LEFT, 60);
  209. m_List1.InsertColumn(8, _T("备注"), LVCFMT_LEFT, 100);
  210. if (m_bModify)ClientChange();
  211. return false; // return TRUE unless you set the focus to a control
  212. // EXCEPTION: OCX Property Pages should return FALSE
  213. }
  214. void TakeControlDlg9::ClientChange()
  215. {
  216. if (g_bAllBranch == 0)
  217. {
  218. CString filter = "id='" + id + "';id='" + id + "' and kind='2'";
  219. g_sendhead.code[0] = 53;
  220. g_sendhead.code[1] = 140;
  221. g_sendhead.tabcount = 2;
  222. g_sendhead.bsql = 0;
  223. g_pMainWnd->ProcessChatMessageRequest2(filter); if (g_bSendOK == 0)return;
  224. DataToArray(&g_List1array, &m_List2array);
  225. }
  226. else
  227. {
  228. CString filter = "id='" + id + "';id='" + id + "' and kind='2'";
  229. g_sendhead.code[0] = 53;
  230. g_sendhead.code[1] = 140;
  231. g_sendhead.tabcount = 2;
  232. g_sendhead.bsql = 0;
  233. g_branchip = GetIP(m_branch);
  234. g_pMainWnd->OnDisconnect();
  235. g_branchname = m_branch;
  236. g_bBranchModify = 1;
  237. g_pMainWnd->ProcessChatMessageRequest2(filter);
  238. g_pMainWnd->OnDisconnect(); g_bBranchModify = 0; g_branchip = g_branchname = "";
  239. if (g_bSendOK == 0)return;
  240. DataToArray(&g_List1array, &m_List2array);
  241. }
  242. /* m_combo1.ResetContent ();
  243. if(m_List2array.GetSize ())
  244. {
  245. for(int i=0; i<m_List2array.GetSize (); i++)
  246. {
  247. m_combo1.AddString (m_List2array.ElementAt (i).ElementAt (0));
  248. m_checkarray.Add (0);
  249. }
  250. m_combo1.SetCurSel (0);
  251. m_time2=m_List2array.ElementAt (0).ElementAt (1);
  252. m_taketime=m_List2array.ElementAt (0).ElementAt (2);
  253. m_waiter1=m_List2array.ElementAt (0).ElementAt (3);
  254. m_waiter2=m_List2array.ElementAt (0).ElementAt (4);
  255. if(m_waiter1.IsEmpty ())
  256. m_combo2.SetCurSel (-1);
  257. else
  258. {
  259. if(m_combo2.FindString (0, m_waiter1)==-1)
  260. {
  261. m_combo2.InsertString (0, m_waiter1);
  262. m_combo2.SetCurSel (0);
  263. }
  264. else
  265. {
  266. m_combo2.SetCurSel (m_combo2.FindString (0, m_waiter1));
  267. }
  268. }
  269. if(m_waiter2.IsEmpty ())
  270. m_combo3.SetCurSel (-1);
  271. else
  272. {
  273. if(m_combo3.FindString (0, m_waiter2)==-1)
  274. {
  275. m_combo3.InsertString (0, m_waiter2);
  276. m_combo3.SetCurSel (0);
  277. }
  278. else
  279. {
  280. m_combo3.SetCurSel (m_combo3.FindString (0, m_waiter2));
  281. }
  282. }
  283. }*/
  284. m_List1.DeleteAllItems();
  285. for (int i = 0; i < m_List2array.GetSize(); i++)
  286. {
  287. m_List1.InsertItem(i, m_List2array.ElementAt(i).ElementAt(0));
  288. m_List1.SetItemText(i, 1, m_List2array.ElementAt(i).ElementAt(1));
  289. m_List1.SetItemText(i, 2, m_List2array.ElementAt(i).ElementAt(2));
  290. m_List1.SetItemText(i, 3, m_List2array.ElementAt(i).ElementAt(3));
  291. m_List1.SetItemText(i, 4, m_List2array.ElementAt(i).ElementAt(4));
  292. m_List1.SetItemText(i, 5, m_List2array.ElementAt(i).ElementAt(5));
  293. m_List1.SetItemText(i, 6, m_List2array.ElementAt(i).ElementAt(6));
  294. m_List1.SetItemText(i, 7, m_List2array.ElementAt(i).ElementAt(7));
  295. m_List1.SetItemText(i, 8, m_List2array.ElementAt(i).ElementAt(8));
  296. }
  297. if (g_List1array.GetSize())
  298. {
  299. m_id = g_List1array.ElementAt(0).ElementAt(2);
  300. m_name1 = g_List1array.ElementAt(0).ElementAt(3);
  301. m_name2 = g_List1array.ElementAt(0).ElementAt(4);
  302. m_taoxiname = g_List1array.ElementAt(0).ElementAt(7);
  303. m_ren = g_List1array.ElementAt(0).ElementAt(10);
  304. m_time4 = g_List1array.ElementAt(0).ElementAt(13);
  305. m_time5 = g_List1array.ElementAt(0).ElementAt(14);
  306. m_time6 = g_List1array.ElementAt(0).ElementAt(15);
  307. m_waiter3 = g_List1array.ElementAt(0).ElementAt(16);
  308. m_waiter8 = g_List1array.ElementAt(0).ElementAt(17);
  309. UpdateData(false);
  310. }
  311. }
  312. void TakeControlDlg9::OnSelchangeCombo5()
  313. {
  314. // TODO: Add your control notification handler code here
  315. int pos = m_combobox.GetCurSel();
  316. if (pos == -1)return;
  317. if (m_acCombo.m_posarray.GetSize() <= pos)return;
  318. int pos2 = m_acCombo.m_posarray.ElementAt(pos);
  319. id = m_List1array.ElementAt(pos2).ElementAt(0);
  320. int size = m_List1array.ElementAt(pos2).GetSize();
  321. if (g_bAllBranch)
  322. {
  323. m_branch = m_List1array.ElementAt(pos2).ElementAt(size - 1);
  324. GetDlgItem(IDC_EDITtime6)->SetWindowText(m_branch);
  325. }
  326. ClientChange();
  327. }
  328. void TakeControlDlg9::OnSelchangeCombo1()
  329. {
  330. // TODO: Add your control notification handler code here
  331. /* int pos=m_combo1.GetCurSel ();
  332. if(pos==-1)return;
  333. m_time2=m_List2array.ElementAt (pos).ElementAt (1);
  334. m_taketime=m_List2array.ElementAt (pos).ElementAt (2);
  335. m_waiter1=m_List2array.ElementAt (pos).ElementAt (3);
  336. m_waiter2=m_List2array.ElementAt (pos).ElementAt (4);
  337. if(m_waiter1.IsEmpty ())
  338. m_combo2.SetCurSel (-1);
  339. else
  340. {
  341. if(m_combo2.FindString (0, m_waiter1)==-1)
  342. {
  343. m_combo2.InsertString (0, m_waiter1);
  344. m_combo2.SetCurSel (0);
  345. }
  346. else
  347. {
  348. m_combo2.SetCurSel (m_combo2.FindString (0, m_waiter1));
  349. }
  350. }
  351. if(m_waiter2.IsEmpty ())
  352. m_combo3.SetCurSel (-1);
  353. else
  354. {
  355. if(m_combo3.FindString (0, m_waiter2)==-1)
  356. {
  357. m_combo3.InsertString (0, m_waiter2);
  358. m_combo3.SetCurSel (0);
  359. }
  360. else
  361. {
  362. m_combo3.SetCurSel (m_combo3.FindString (0, m_waiter2));
  363. }
  364. }
  365. m_check3=m_checkarray.ElementAt (pos);
  366. UpdateData(false);*/
  367. }
  368. void TakeControlDlg9::OnSelchangeCombo11()
  369. {
  370. // TODO: Add your control notification handler code here
  371. int pos = m_combobox2.GetCurSel();
  372. if (pos == -1)return;
  373. m_combobox2.GetLBText(pos, id);
  374. if (g_bAllBranch)
  375. {
  376. m_branch = m_pBranchArray->ElementAt(pos);
  377. GetDlgItem(IDC_EDITtime5)->SetWindowText(m_branch);
  378. }
  379. ClientChange();
  380. }
  381. /*
  382. extern BOOL CovertDate(CString &date, CString &date2);
  383. void TakeControlDlg9::OnOK()
  384. {
  385. // TODO: Add extra validation here
  386. UpdateData();
  387. if(!CheckDateOK(m_time2))return;
  388. int pos=m_combo1.GetCurSel ();
  389. if(pos==-1)return;
  390. CString name=m_List2array.ElementAt (pos).ElementAt (0);
  391. m_List2array.ElementAt (pos).SetAt(1, m_time2);
  392. m_List2array.ElementAt (pos).SetAt(2, m_taketime);
  393. m_waiter1=m_waiter2="";
  394. int pos2=m_combo2.GetCurSel ();
  395. if(pos2!=-1)
  396. m_combo2.GetLBText (pos2, m_waiter1);
  397. pos2=m_combo3.GetCurSel ();
  398. if(pos2!=-1)
  399. m_combo3.GetLBText (pos2, m_waiter2);
  400. m_List2array.ElementAt (pos).SetAt(3, m_waiter1);
  401. m_List2array.ElementAt (pos).SetAt(4, m_waiter2);
  402. m_checkarray.SetAt (pos, m_check3);
  403. CString date=m_time2;
  404. CString date2;
  405. if(m_check3)
  406. CovertDate(date, date2);
  407. CString sql;
  408. sql.Format ("update dindansp set hqdate='%s',hqtime='%s',ren1='%s',ren2='%s' where id='%s' and name='%s'", \
  409. date,m_taketime,m_waiter1,m_waiter2,id,name);
  410. g_sendhead.bsql=1;
  411. if(g_bAllBranch==0)
  412. {
  413. g_pMainWnd->ProcessChatMessageRequest2(sql);
  414. }
  415. else
  416. {
  417. g_branchip=GetIP(m_branch);
  418. g_pMainWnd->OnDisconnect();
  419. g_branchname=m_branch;
  420. g_bBranchModify=1;
  421. g_pMainWnd->ProcessChatMessageRequest2(sql);
  422. g_pMainWnd->OnDisconnect();g_bBranchModify=0;g_branchip=g_branchname="";
  423. }
  424. if(g_bSendOK==0)return;
  425. AfxMessageBox("保存成功!", MB_ICONINFORMATION);
  426. if(m_bModify && m_pIdArray==NULL) CDialog::OnOK();
  427. }
  428. */
  429. extern BOOL CovertDate(CString &date, CString &date2);
  430. void TakeControlDlg9::OnOK()
  431. {
  432. // TODO: Add extra validation here
  433. UpdateData();
  434. if (m_id == "")return;
  435. CString date = m_time2;
  436. CString date2;
  437. if (m_check3)
  438. CovertDate(date, date2);
  439. CArray<CStringArray, CStringArray>sparray;
  440. sparray.SetSize(m_List1.GetItemCount());
  441. for (int i = 0; i < m_List1.GetItemCount(); i++)
  442. {
  443. sparray.ElementAt(i).Add(m_id);
  444. sparray.ElementAt(i).Add(m_List1.GetItemText(i, 1));
  445. date = m_List1.GetItemText(i, 3);
  446. if (m_List1.GetItemText(i, 2) == "农历" && date != "")
  447. CovertDate(date, date2);
  448. sparray.ElementAt(i).Add("公历");
  449. sparray.ElementAt(i).Add(date);
  450. sparray.ElementAt(i).Add(m_List1.GetItemText(i, 4));
  451. sparray.ElementAt(i).Add(m_List1.GetItemText(i, 5));
  452. sparray.ElementAt(i).Add(m_List1.GetItemText(i, 6));
  453. sparray.ElementAt(i).Add(m_List1.GetItemText(i, 7));
  454. sparray.ElementAt(i).Add(m_List1.GetItemText(i, 8));
  455. sparray.ElementAt(i).Add(m_List1.GetItemText(i, 0));
  456. }
  457. /* if(sparray.GetSize ()==0)
  458. {
  459. sparray.SetSize(1);
  460. sparray.ElementAt (0).Add (m_id);
  461. }
  462. m_waiter1=m_waiter2="";
  463. int pos2=m_combo2.GetCurSel ();
  464. if(pos2!=-1)
  465. m_combo2.GetLBText (pos2, m_waiter1);
  466. pos2=m_combo3.GetCurSel ();
  467. if(pos2!=-1)
  468. m_combo3.GetLBText (pos2, m_waiter2);
  469. m_List2array.ElementAt (pos).SetAt(3, m_waiter1);
  470. m_List2array.ElementAt (pos).SetAt(4, m_waiter2);
  471. m_checkarray.SetAt (pos, m_check3);
  472. CString date=m_time2;
  473. CString date2;
  474. if(m_check3)
  475. CovertDate(date, date2);
  476. CString sql;
  477. sql.Format ("update dindansp set hqdate='%s',hqtime='%s',ren1='%s',ren2='%s' where id='%s' and name='%s'", \
  478. date,m_taketime,m_waiter1,m_waiter2,id,name);*/
  479. CMemFile memfile;
  480. CArchive ar(&memfile, CArchive::store);
  481. for (int ii = 0; ii < sparray.GetSize(); ii++)
  482. {
  483. sparray.ElementAt(ii).Serialize(ar);
  484. }
  485. ar.Close();
  486. int length = memfile.GetLength();
  487. BYTE *pData = memfile.Detach();
  488. int size = sparray.GetSize();
  489. BYTE *pData2 = new BYTE[length + sizeof(int)];
  490. memcpy(pData2, pData, length);
  491. memcpy(pData2 + length, &size, sizeof(int));
  492. delete[]pData;
  493. length += sizeof(int);
  494. g_sendhead.bsql = 1;
  495. if (g_bAllBranch == 0)
  496. {
  497. // g_pMainWnd->ProcessChatMessageRequest2(sql);
  498. g_nSendCode = 32;
  499. g_pMainWnd->ProcessChatMessageRequest2(pData2, length);
  500. g_nSendCode = 0;
  501. }
  502. else
  503. {
  504. g_branchip = GetIP(m_branch);
  505. g_pMainWnd->OnDisconnect();
  506. g_branchname = m_branch;
  507. g_bBranchModify = 1;
  508. g_nSendCode = 32;
  509. g_pMainWnd->ProcessChatMessageRequest2(pData2, length);
  510. g_nSendCode = 0;
  511. g_pMainWnd->OnDisconnect(); g_bBranchModify = 0; g_branchip = g_branchname = "";
  512. }
  513. delete[]pData2;
  514. if (g_bSendOK == 0)return;
  515. dataUpdateCentrer.UpdateTodayBarMsg();
  516. AfxMessageBox("保存成功!", MB_ICONINFORMATION);
  517. CDialog::OnOK();
  518. }
  519. void TakeControlDlg9::OnButton1()
  520. {
  521. // TODO: Add your control notification handler code here
  522. SPBox dlg;
  523. dlg.m_mode = 1;
  524. if (dlg.DoModal() != IDOK)return;
  525. int pos = m_List1.GetItemCount();
  526. CString str;
  527. for (int a = 0; a < dlg.m_spidarray.GetSize(); a++)
  528. {
  529. dlg.m_spid = dlg.m_spidarray.ElementAt(a);
  530. dlg.m_spname = dlg.m_spnamearray.ElementAt(a);
  531. m_List1.InsertItem(pos, "");
  532. m_List1.SetItemText(pos, 1, dlg.m_spname);
  533. str = "添加婚庆:";
  534. str += dlg.m_spname;
  535. WriteLog(_T("添加婚庆"), str);
  536. }
  537. }