TakeControlDlg2.cpp 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445
  1. // TakeControlDlg2.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "ylgl.h"
  5. #include "TakeControlDlg2.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. /////////////////////////////////////////////////////////////////////////////
  12. // TakeControlDlg2 dialog IDC_EDITtime4
  13. TakeControlDlg2::TakeControlDlg2(CWnd* pParent /*=NULL*/)
  14. : CDialog(TakeControlDlg2::IDD, pParent)
  15. {
  16. //{{AFX_DATA_INIT(TakeControlDlg2)
  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_datetime4 = _T("");
  30. m_limitcount = atoi(g_cominfoarray.ElementAt(0).ElementAt(83)); if (m_limitcount == 0)m_limitcount = 10;
  31. m_bModify = 0;
  32. m_pIdArray = NULL;
  33. m_pBranchArray = NULL;
  34. //}}AFX_DATA_INIT
  35. }
  36. void TakeControlDlg2::DoDataExchange(CDataExchange* pDX)
  37. {
  38. CDialog::DoDataExchange(pDX);
  39. //{{AFX_DATA_MAP(TakeControlDlg2)
  40. DDX_Control(pDX, IDC_SPIN1, m_spin1);
  41. DDX_Control(pDX, IDC_LIST2, 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_EDITtime6, m_editdate4);
  48. DDX_Control(pDX, IDC_EDITtime4, m_editdate2);
  49. DDX_Control(pDX, IDC_EDITtime2, m_editdate);
  50. DDX_Control(pDX, IDC_COMBO2, m_combo2);
  51. DDX_Control(pDX, IDC_COMBO1, m_combo1);
  52. DDX_Text(pDX, IDC_EDITname, m_name1);
  53. DDX_Text(pDX, IDC_EDITname2, m_name2);
  54. DDX_Text(pDX, IDC_EDITtime2, m_time2);
  55. DDX_Text(pDX, IDC_EDITid, m_id);
  56. DDX_Text(pDX, IDC_EDITObz2, m_bz2);
  57. DDX_Text(pDX, IDC_EDITOclothescount, m_clothescount);
  58. DDX_Text(pDX, IDC_EDITOoutside, m_outside);
  59. DDX_Text(pDX, IDC_EDITOren, m_ren);
  60. DDX_Text(pDX, IDC_EDITtaoxiname, m_taoxiname);
  61. DDX_Text(pDX, IDC_EDITtime4, m_time4);
  62. DDX_Text(pDX, IDC_EDITtime6, m_time6);
  63. DDX_CBString(pDX, IDC_COMBOdatetime, m_datetime4);
  64. DDX_Text(pDX, IDC_EDIT1, m_limitcount);
  65. //}}AFX_DATA_MAP
  66. }
  67. BEGIN_MESSAGE_MAP(TakeControlDlg2, CDialog)
  68. //{{AFX_MSG_MAP(TakeControlDlg2)
  69. ON_CBN_SELCHANGE(IDC_COMBO5, OnSelchangeCombo5)
  70. ON_EN_CHANGE(IDC_EDITtime4, OnChangeEDITtime4)
  71. ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
  72. ON_CBN_SELCHANGE(IDC_COMBO11, OnSelchangeCombo11)
  73. //}}AFX_MSG_MAP
  74. END_MESSAGE_MAP()
  75. /////////////////////////////////////////////////////////////////////////////
  76. // TakeControlDlg2 message handlers
  77. BOOL TakeControlDlg2::OnInitDialog()
  78. {
  79. CDialog::OnInitDialog();
  80. // TODO: Add extra initialization here
  81. #ifdef CHILD_VERSION
  82. GetDlgItem(IDC_STATIC1)->SetWindowText("家长姓名:");
  83. GetDlgItem(IDC_STATIC2)->SetWindowText("宝宝姓名:");
  84. #endif
  85. if (IsHasRights2new(49) == 0)
  86. {
  87. GetDlgItem(IDC_BUTTON1)->EnableWindow(0);
  88. }
  89. #ifdef CHILD_VERSION
  90. m_List1.SetHeadings("订单号,100;家长姓名,100;宝宝姓名,100;手机,100;固定电话,100;选片日期,100;时间,100;状态,100");
  91. #else
  92. m_List1.SetHeadings("订单号,100;男宾姓名,100;女宾姓名,100;男宾电话,100;女宾电话,100;选片日期,100;时间,100;婚期,100;状态,100" );
  93. #endif
  94. m_spin1.SetRange(1, 500);
  95. if (g_bAllBranch == 0)
  96. {
  97. GetDlgItem(IDC_STATIC7)->ShowWindow(0);
  98. GetDlgItem(IDC_EDITtime5)->ShowWindow(0);
  99. }
  100. else
  101. {
  102. CRect rc, rc2;
  103. GetDlgItem(IDC_STATIC20)->ShowWindow(0);
  104. GetWindowRect(rc);
  105. m_List1.GetWindowRect(rc2);
  106. rc.right = rc2.left;
  107. MoveWindow(rc);
  108. }
  109. m_combodatetime.AddString("09:00");
  110. m_combodatetime.AddString("10:00");
  111. m_combodatetime.AddString("11:00");
  112. m_combodatetime.AddString("12:00");
  113. m_combodatetime.AddString("13:00");
  114. m_combodatetime.AddString("14:00");
  115. m_combodatetime.AddString("15:00");
  116. m_combodatetime.AddString("16:00");
  117. m_combodatetime.AddString("17:00");
  118. m_combodatetime.AddString("18:00");
  119. m_combodatetime.AddString("19:00");
  120. m_combodatetime.AddString("20:00");
  121. m_combodatetime.AddString("21:00");
  122. m_combodatetime.AddString("22:00");
  123. if (m_pIdArray == NULL)
  124. {
  125. m_acCombo.Init(&m_combobox);
  126. if (g_bAllBranch == 0)
  127. {
  128. g_sendhead.bsql = 0;
  129. g_sendhead.code[0] = 30;
  130. g_sendhead.tabcount = 1;
  131. g_pMainWnd->ProcessChatMessageRequest2(21); if (g_bSendOK == 0)return 0;
  132. DataToArray(&m_List1array);
  133. }
  134. else
  135. {
  136. if (m_bModify == 0)
  137. {
  138. m_List1array.RemoveAll();
  139. CStringArray failbrancharray;
  140. CString branch;
  141. for (int i = -1; i < g_brancharray.GetSize() - 1; i++)
  142. {
  143. if (i != -1)
  144. {
  145. branch = g_brancharray.ElementAt(i).ElementAt(0);
  146. g_branchip = g_brancharray.ElementAt(i).ElementAt(1);
  147. g_pMainWnd->OnDisconnect();
  148. g_branchname = branch;
  149. g_bBranchModify = 1;
  150. }
  151. else
  152. branch = g_brancharray.ElementAt(g_brancharray.GetSize() - 1).ElementAt(0);
  153. g_sendhead.bsql = 0;
  154. g_sendhead.code[0] = 30;
  155. g_sendhead.tabcount = 1;
  156. g_pMainWnd->ProcessChatMessageRequest2(1);
  157. if (g_bSendOK == 0)
  158. {
  159. failbrancharray.Add(branch);
  160. continue;
  161. }
  162. CArray<CStringArray, CStringArray>List1array;
  163. DataToArray(&List1array);
  164. int size = m_List1array.GetSize();
  165. for (int j = 0; j < List1array.GetSize(); j++)
  166. {
  167. size++;
  168. m_List1array.SetSize(size, 1);
  169. size--;
  170. m_List1array.ElementAt(size).Copy(List1array.ElementAt(j));
  171. m_List1array.ElementAt(size).Add(branch);
  172. size++;
  173. }
  174. }
  175. for (i = 0; i < failbrancharray.GetSize(); i++)
  176. {
  177. //AfxMessageBox("连接"+failbrancharray.ElementAt(i)+"服务器失败!", MB_ICONINFORMATION);
  178. }
  179. g_pMainWnd->OnDisconnect();
  180. g_bBranchModify = 0; g_branchip = g_branchname = "";
  181. }
  182. else
  183. {
  184. GetDlgItem(IDC_STATIC5)->SetWindowText("");
  185. GetDlgItem(IDC_STATIC6)->SetWindowText("");
  186. m_combobox.ShowWindow(0);
  187. }
  188. }
  189. m_acCombo.m_pArray = &m_List1array;
  190. if (m_bModify == 0)m_combobox.SetFocus();
  191. m_combobox2.ShowWindow(0);
  192. }
  193. else
  194. {
  195. for (int i = 0; i < m_pIdArray->GetSize(); i++)
  196. {
  197. m_combobox2.AddString(m_pIdArray->ElementAt(i));
  198. }
  199. m_combobox2.SetCurSel(0);
  200. id = m_pIdArray->ElementAt(0);
  201. GetDlgItem(IDC_STATIC5)->SetWindowText("选择客人:");
  202. GetDlgItem(IDC_STATIC6)->SetWindowText("");
  203. m_combobox.ShowWindow(0);
  204. }
  205. this->CenterWindow(g_pMainWnd);
  206. if (g_bAllBranch)
  207. GetDlgItem(IDC_EDITtime5)->SetWindowText(m_branch);
  208. if (m_bModify)ClientChange();
  209. return false; // return TRUE unless you set the focus to a control
  210. // EXCEPTION: OCX Property Pages should return FALSE
  211. }
  212. void TakeControlDlg2::OnOK() // 保存按钮;
  213. {
  214. // TODO: Add extra validation here
  215. UpdateData();
  216. if (!CheckDateOK(m_time4))return;
  217. int pos;
  218. pos = m_combo3.GetCurSel();
  219. if (pos != -1)
  220. m_combo3.GetLBText(pos, m_waiter3);
  221. #if 0 // Jeff delete,this's the old edition;
  222. CString sql;
  223. sql.Format ("update dindan set datetime4='%s',time4='%s',waiter3='%s' where id='%s' ", m_datetime4,m_time4,m_waiter3,id);
  224. #else //Jeff add:用于预约时重新更新选片预约内容;
  225. CString sql;
  226. sql.Format("update dindan set datetime4='%s',time4='%s',waiter3='%s',xplrr='%s',xplrtime='msgtimestamp2' where id='%s' ",
  227. m_datetime4, m_time4, m_waiter3, g_user.name, id);
  228. #endif
  229. g_sendhead.bsql = 1;
  230. if (g_bAllBranch == 0)
  231. {
  232. g_pMainWnd->ProcessChatMessageRequest2(sql);
  233. }
  234. else
  235. {
  236. g_branchip = GetIP(m_branch);
  237. g_pMainWnd->OnDisconnect();
  238. g_branchname = m_branch;
  239. g_bBranchModify = 1;
  240. g_pMainWnd->ProcessChatMessageRequest2(sql);
  241. g_pMainWnd->OnDisconnect(); g_bBranchModify = 0; g_branchip = g_branchname = "";
  242. }
  243. if (g_bSendOK == 0)return;
  244. dataUpdateCentrer.UpdateTodayBarMsg();
  245. AfxMessageBox("保存成功!", MB_ICONINFORMATION);
  246. DataChange();
  247. if (m_bModify && m_pIdArray == NULL) CDialog::OnOK();
  248. }
  249. void TakeControlDlg2::ClientChange()
  250. {
  251. if (g_bAllBranch == 0)
  252. {
  253. CString filter = "id='" + id + "'";
  254. g_sendhead.code[0] = 53;
  255. g_sendhead.tabcount = 1;
  256. g_sendhead.bsql = 0;
  257. g_pMainWnd->ProcessChatMessageRequest2(filter); if (g_bSendOK == 0)return;
  258. DataToArray(&g_List1array);
  259. }
  260. else
  261. {
  262. CString filter = "id='" + id + "'";
  263. g_sendhead.code[0] = 53;
  264. g_sendhead.tabcount = 1;
  265. g_sendhead.bsql = 0;
  266. g_branchip = GetIP(m_branch);
  267. g_pMainWnd->OnDisconnect();
  268. g_branchname = m_branch;
  269. g_bBranchModify = 1;
  270. g_pMainWnd->ProcessChatMessageRequest2(filter);
  271. g_pMainWnd->OnDisconnect(); g_bBranchModify = 0; g_branchip = g_branchname = "";
  272. if (g_bSendOK == 0)return;
  273. DataToArray(&g_List1array);
  274. }
  275. if (g_List1array.GetSize())
  276. {
  277. m_time2 = g_List1array.ElementAt(0).ElementAt(0);
  278. m_datetime4 = g_List1array.ElementAt(0).ElementAt(18);
  279. m_id = g_List1array.ElementAt(0).ElementAt(2);
  280. m_name1 = g_List1array.ElementAt(0).ElementAt(3);
  281. m_name2 = g_List1array.ElementAt(0).ElementAt(4);
  282. m_taoxiname = g_List1array.ElementAt(0).ElementAt(7);
  283. m_waiter1 = g_List1array.ElementAt(0).ElementAt(8);
  284. m_waiter2 = g_List1array.ElementAt(0).ElementAt(9);
  285. m_ren = g_List1array.ElementAt(0).ElementAt(10);
  286. m_time4 = g_List1array.ElementAt(0).ElementAt(13);
  287. m_time5 = g_List1array.ElementAt(0).ElementAt(14);
  288. m_time6 = g_List1array.ElementAt(0).ElementAt(15);
  289. m_waiter3 = g_List1array.ElementAt(0).ElementAt(16);
  290. m_waiter8 = g_List1array.ElementAt(0).ElementAt(17);
  291. UpdateData(false);
  292. if (m_combo1.FindString(0, m_waiter1) == -1)
  293. {
  294. m_combo1.InsertString(0, m_waiter1);
  295. m_combo1.SetCurSel(0);
  296. }
  297. else
  298. {
  299. m_combo1.SetCurSel(m_combo1.FindString(0, m_waiter1));
  300. }
  301. if (m_combo2.FindString(0, m_waiter2) == -1)
  302. {
  303. m_combo2.InsertString(0, m_waiter2);
  304. m_combo2.SetCurSel(0);
  305. }
  306. else
  307. {
  308. m_combo2.SetCurSel(m_combo2.FindString(0, m_waiter2));
  309. }
  310. if (m_combo3.FindString(0, m_waiter3) == -1)
  311. {
  312. m_combo3.InsertString(0, m_waiter3);
  313. m_combo3.SetCurSel(0);
  314. }
  315. else
  316. {
  317. m_combo3.SetCurSel(m_combo3.FindString(0, m_waiter3));
  318. }
  319. if (m_combo4.FindString(0, m_waiter8) == -1)
  320. {
  321. m_combo4.InsertString(0, m_waiter8);
  322. m_combo4.SetCurSel(0);
  323. }
  324. else
  325. {
  326. m_combo4.SetCurSel(m_combo4.FindString(0, m_waiter8));
  327. }
  328. }
  329. }
  330. void TakeControlDlg2::OnSelchangeCombo5()
  331. {
  332. // TODO: Add your control notification handler code here
  333. int pos = m_combobox.GetCurSel();
  334. if (pos == -1)return;
  335. if (m_acCombo.m_posarray.GetSize() <= pos)return;
  336. int pos2 = m_acCombo.m_posarray.ElementAt(pos);
  337. id = m_List1array.ElementAt(pos2).ElementAt(0);
  338. int size = m_List1array.ElementAt(pos2).GetSize();
  339. if (g_bAllBranch)
  340. {
  341. m_branch = m_List1array.ElementAt(pos2).ElementAt(size - 1);
  342. GetDlgItem(IDC_EDITtime5)->SetWindowText(m_branch);
  343. }
  344. ClientChange();
  345. }
  346. void TakeControlDlg2::DataChange()
  347. {
  348. if (g_bAllBranch)return;
  349. UpdateData();
  350. if (!CheckDateOK2(m_time4))return;
  351. g_sendhead.code[0] = 121;
  352. g_sendhead.tabcount = 1;
  353. g_sendhead.bsql = 0;
  354. CString sql;
  355. sql.Format("time4>='" + m_time4 + "' and time4<='" + m_time4 + "'");
  356. g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
  357. DataToArray(&g_List1array);
  358. int ii = 0;
  359. m_List1.DeleteAllItems2();
  360. m_List1.m_arLabels.SetSize(g_List1array.GetSize(), 1);
  361. int count = 0;
  362. for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++)
  363. {
  364. m_List1.m_arLabels.ElementAt(count++).Copy(g_List1array.ElementAt(ii));
  365. }
  366. m_List1.m_arLabels.SetSize(count, 1);
  367. ii = count;
  368. m_List1.m_LabelCount = ii;
  369. m_List1.SetItemCountEx(ii);
  370. CString str;
  371. str.Format("客人:%d", ii);
  372. SetDlgItemText(IDC_STATIC4, str);
  373. if (m_limitcount <= ii)
  374. AfxMessageBox("友情提醒:\r\n当日预约客人过多,请合理安排客人。");
  375. }
  376. void TakeControlDlg2::OnChangeEDITtime4()
  377. {
  378. // TODO: If this is a RICHEDIT control, the control will not
  379. // send this notification unless you override the CDialog::OnInitDialog()
  380. // function and call CRichEditCtrl().SetEventMask()
  381. // with the ENM_CHANGE flag ORed into the mask.
  382. DataChange();
  383. // TODO: Add your control notification handler code here
  384. }
  385. void TakeControlDlg2::OnButton1()
  386. {
  387. // TODO: Add your control notification handler code here
  388. UpdateData();
  389. CString sql;
  390. sql.Format("update version set [limitcount2]='%d'", m_limitcount);
  391. g_sendhead.bsql = 1;
  392. g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
  393. AfxMessageBox("保存成功!", MB_ICONINFORMATION);
  394. CString str;
  395. str.Format("%d", m_limitcount);
  396. g_cominfoarray.ElementAt(0).SetAt(83, str);
  397. }
  398. void TakeControlDlg2::OnSelchangeCombo11()
  399. {
  400. // TODO: Add your control notification handler code here
  401. int pos = m_combobox2.GetCurSel();
  402. if (pos == -1)return;
  403. m_combobox2.GetLBText(pos, id);
  404. if (g_bAllBranch)
  405. {
  406. m_branch = m_pBranchArray->ElementAt(pos);
  407. GetDlgItem(IDC_EDITtime5)->SetWindowText(m_branch);
  408. }
  409. ClientChange();
  410. }