TakeControlDlg2.cpp 12 KB

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