TakeControlDlg2.cpp 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446
  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. int i = 0;
  142. for ( i = -1; i < g_brancharray.GetSize() - 1; i++)
  143. {
  144. if (i != -1)
  145. {
  146. branch = g_brancharray.ElementAt(i).ElementAt(0);
  147. g_branchip = g_brancharray.ElementAt(i).ElementAt(1);
  148. g_pMainWnd->OnDisconnect();
  149. g_branchname = branch;
  150. g_bBranchModify = 1;
  151. }
  152. else
  153. branch = g_brancharray.ElementAt(g_brancharray.GetSize() - 1).ElementAt(0);
  154. g_sendhead.bsql = 0;
  155. g_sendhead.code[0] = 30;
  156. g_sendhead.tabcount = 1;
  157. g_pMainWnd->ProcessChatMessageRequest2(1);
  158. if (g_bSendOK == 0)
  159. {
  160. failbrancharray.Add(branch);
  161. continue;
  162. }
  163. CArray<CStringArray, CStringArray>List1array;
  164. DataToArray(&List1array);
  165. int size = m_List1array.GetSize();
  166. for (int j = 0; j < List1array.GetSize(); j++)
  167. {
  168. size++;
  169. m_List1array.SetSize(size, 1);
  170. size--;
  171. m_List1array.ElementAt(size).Copy(List1array.ElementAt(j));
  172. m_List1array.ElementAt(size).Add(branch);
  173. size++;
  174. }
  175. }
  176. for (i = 0; i < failbrancharray.GetSize(); i++)
  177. {
  178. //AfxMessageBox("连接"+failbrancharray.ElementAt(i)+"服务器失败!", MB_ICONINFORMATION);
  179. }
  180. g_pMainWnd->OnDisconnect();
  181. g_bBranchModify = 0; g_branchip = g_branchname = "";
  182. }
  183. else
  184. {
  185. GetDlgItem(IDC_STATIC5)->SetWindowText("");
  186. GetDlgItem(IDC_STATIC6)->SetWindowText("");
  187. m_combobox.ShowWindow(0);
  188. }
  189. }
  190. m_acCombo.m_pArray = &m_List1array;
  191. if (m_bModify == 0)m_combobox.SetFocus();
  192. m_combobox2.ShowWindow(0);
  193. }
  194. else
  195. {
  196. for (int i = 0; i < m_pIdArray->GetSize(); i++)
  197. {
  198. m_combobox2.AddString(m_pIdArray->ElementAt(i));
  199. }
  200. m_combobox2.SetCurSel(0);
  201. id = m_pIdArray->ElementAt(0);
  202. GetDlgItem(IDC_STATIC5)->SetWindowText("选择客人:");
  203. GetDlgItem(IDC_STATIC6)->SetWindowText("");
  204. m_combobox.ShowWindow(0);
  205. }
  206. this->CenterWindow(g_pMainWnd);
  207. if (g_bAllBranch)
  208. GetDlgItem(IDC_EDITtime5)->SetWindowText(m_branch);
  209. if (m_bModify)ClientChange();
  210. return false; // return TRUE unless you set the focus to a control
  211. // EXCEPTION: OCX Property Pages should return FALSE
  212. }
  213. void TakeControlDlg2::OnOK() // 保存按钮;
  214. {
  215. // TODO: Add extra validation here
  216. UpdateData();
  217. if (!CheckDateOK(m_time4))return;
  218. int pos;
  219. pos = m_combo3.GetCurSel();
  220. if (pos != -1)
  221. m_combo3.GetLBText(pos, m_waiter3);
  222. #if 0 // Jeff delete,this's the old edition;
  223. CString sql;
  224. sql.Format ("update dindan set datetime4='%s',time4='%s',waiter3='%s' where id='%s' ", m_datetime4,m_time4,m_waiter3,id);
  225. #else //Jeff add:用于预约时重新更新选片预约内容;
  226. CString sql;
  227. sql.Format("update dindan set datetime4='%s',time4='%s',waiter3='%s',xplrr='%s',xplrtime='msgtimestamp2' where id='%s' ",
  228. m_datetime4, m_time4, m_waiter3, g_user.name, id);
  229. #endif
  230. g_sendhead.bsql = 1;
  231. if (g_bAllBranch == 0)
  232. {
  233. g_pMainWnd->ProcessChatMessageRequest2(sql);
  234. }
  235. else
  236. {
  237. g_branchip = GetIP(m_branch);
  238. g_pMainWnd->OnDisconnect();
  239. g_branchname = m_branch;
  240. g_bBranchModify = 1;
  241. g_pMainWnd->ProcessChatMessageRequest2(sql);
  242. g_pMainWnd->OnDisconnect(); g_bBranchModify = 0; g_branchip = g_branchname = "";
  243. }
  244. if (g_bSendOK == 0)return;
  245. dataUpdateCentrer.UpdateTodayBarMsg();
  246. AfxMessageBox("保存成功!", MB_ICONINFORMATION);
  247. DataChange();
  248. if (m_bModify && m_pIdArray == NULL) CDialog::OnOK();
  249. }
  250. void TakeControlDlg2::ClientChange()
  251. {
  252. if (g_bAllBranch == 0)
  253. {
  254. CString filter = "id='" + id + "'";
  255. g_sendhead.code[0] = 53;
  256. g_sendhead.tabcount = 1;
  257. g_sendhead.bsql = 0;
  258. g_pMainWnd->ProcessChatMessageRequest2(filter); if (g_bSendOK == 0)return;
  259. DataToArray(&g_List1array);
  260. }
  261. else
  262. {
  263. CString filter = "id='" + id + "'";
  264. g_sendhead.code[0] = 53;
  265. g_sendhead.tabcount = 1;
  266. g_sendhead.bsql = 0;
  267. g_branchip = GetIP(m_branch);
  268. g_pMainWnd->OnDisconnect();
  269. g_branchname = m_branch;
  270. g_bBranchModify = 1;
  271. g_pMainWnd->ProcessChatMessageRequest2(filter);
  272. g_pMainWnd->OnDisconnect(); g_bBranchModify = 0; g_branchip = g_branchname = "";
  273. if (g_bSendOK == 0)return;
  274. DataToArray(&g_List1array);
  275. }
  276. if (g_List1array.GetSize())
  277. {
  278. m_time2 = g_List1array.ElementAt(0).ElementAt(0);
  279. m_datetime4 = g_List1array.ElementAt(0).ElementAt(18);
  280. m_id = g_List1array.ElementAt(0).ElementAt(2);
  281. m_name1 = g_List1array.ElementAt(0).ElementAt(3);
  282. m_name2 = g_List1array.ElementAt(0).ElementAt(4);
  283. m_taoxiname = g_List1array.ElementAt(0).ElementAt(7);
  284. m_waiter1 = g_List1array.ElementAt(0).ElementAt(8);
  285. m_waiter2 = g_List1array.ElementAt(0).ElementAt(9);
  286. m_ren = g_List1array.ElementAt(0).ElementAt(10);
  287. m_time4 = g_List1array.ElementAt(0).ElementAt(13);
  288. m_time5 = g_List1array.ElementAt(0).ElementAt(14);
  289. m_time6 = g_List1array.ElementAt(0).ElementAt(15);
  290. m_waiter3 = g_List1array.ElementAt(0).ElementAt(16);
  291. m_waiter8 = g_List1array.ElementAt(0).ElementAt(17);
  292. UpdateData(false);
  293. if (m_combo1.FindString(0, m_waiter1) == -1)
  294. {
  295. m_combo1.InsertString(0, m_waiter1);
  296. m_combo1.SetCurSel(0);
  297. }
  298. else
  299. {
  300. m_combo1.SetCurSel(m_combo1.FindString(0, m_waiter1));
  301. }
  302. if (m_combo2.FindString(0, m_waiter2) == -1)
  303. {
  304. m_combo2.InsertString(0, m_waiter2);
  305. m_combo2.SetCurSel(0);
  306. }
  307. else
  308. {
  309. m_combo2.SetCurSel(m_combo2.FindString(0, m_waiter2));
  310. }
  311. if (m_combo3.FindString(0, m_waiter3) == -1)
  312. {
  313. m_combo3.InsertString(0, m_waiter3);
  314. m_combo3.SetCurSel(0);
  315. }
  316. else
  317. {
  318. m_combo3.SetCurSel(m_combo3.FindString(0, m_waiter3));
  319. }
  320. if (m_combo4.FindString(0, m_waiter8) == -1)
  321. {
  322. m_combo4.InsertString(0, m_waiter8);
  323. m_combo4.SetCurSel(0);
  324. }
  325. else
  326. {
  327. m_combo4.SetCurSel(m_combo4.FindString(0, m_waiter8));
  328. }
  329. }
  330. }
  331. void TakeControlDlg2::OnSelchangeCombo5()
  332. {
  333. // TODO: Add your control notification handler code here
  334. int pos = m_combobox.GetCurSel();
  335. if (pos == -1)return;
  336. if (m_acCombo.m_posarray.GetSize() <= pos)return;
  337. int pos2 = m_acCombo.m_posarray.ElementAt(pos);
  338. id = m_List1array.ElementAt(pos2).ElementAt(0);
  339. int size = m_List1array.ElementAt(pos2).GetSize();
  340. if (g_bAllBranch)
  341. {
  342. m_branch = m_List1array.ElementAt(pos2).ElementAt(size - 1);
  343. GetDlgItem(IDC_EDITtime5)->SetWindowText(m_branch);
  344. }
  345. ClientChange();
  346. }
  347. void TakeControlDlg2::DataChange()
  348. {
  349. if (g_bAllBranch)return;
  350. UpdateData();
  351. if (!CheckDateOK2(m_time4))return;
  352. g_sendhead.code[0] = 121;
  353. g_sendhead.tabcount = 1;
  354. g_sendhead.bsql = 0;
  355. CString sql;
  356. sql.Format("time4>='" + m_time4 + "' and time4<='" + m_time4 + "'");
  357. g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
  358. DataToArray(&g_List1array);
  359. int ii = 0;
  360. m_List1.DeleteAllItems2();
  361. m_List1.m_arLabels.SetSize(g_List1array.GetSize(), 1);
  362. int count = 0;
  363. for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++)
  364. {
  365. m_List1.m_arLabels.ElementAt(count++).Copy(g_List1array.ElementAt(ii));
  366. }
  367. m_List1.m_arLabels.SetSize(count, 1);
  368. ii = count;
  369. m_List1.m_LabelCount = ii;
  370. m_List1.SetItemCountEx(ii);
  371. CString str;
  372. str.Format("客人:%d", ii);
  373. SetDlgItemText(IDC_STATIC4, str);
  374. if (m_limitcount <= ii)
  375. AfxMessageBox("友情提醒:\r\n当日预约客人过多,请合理安排客人。");
  376. }
  377. void TakeControlDlg2::OnChangeEDITtime4()
  378. {
  379. // TODO: If this is a RICHEDIT control, the control will not
  380. // send this notification unless you override the CDialog::OnInitDialog()
  381. // function and call CRichEditCtrl().SetEventMask()
  382. // with the ENM_CHANGE flag ORed into the mask.
  383. DataChange();
  384. // TODO: Add your control notification handler code here
  385. }
  386. void TakeControlDlg2::OnButton1()
  387. {
  388. // TODO: Add your control notification handler code here
  389. UpdateData();
  390. CString sql;
  391. sql.Format("update version set [limitcount2]='%d'", m_limitcount);
  392. g_sendhead.bsql = 1;
  393. g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
  394. AfxMessageBox("保存成功!", MB_ICONINFORMATION);
  395. CString str;
  396. str.Format("%d", m_limitcount);
  397. g_cominfoarray.ElementAt(0).SetAt(83, str);
  398. }
  399. void TakeControlDlg2::OnSelchangeCombo11()
  400. {
  401. // TODO: Add your control notification handler code here
  402. int pos = m_combobox2.GetCurSel();
  403. if (pos == -1)return;
  404. m_combobox2.GetLBText(pos, id);
  405. if (g_bAllBranch)
  406. {
  407. m_branch = m_pBranchArray->ElementAt(pos);
  408. GetDlgItem(IDC_EDITtime5)->SetWindowText(m_branch);
  409. }
  410. ClientChange();
  411. }