SearchTake.cpp 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742
  1. // SearchTake.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "ylgl.h"
  5. #include "SearchTake.h"
  6. #include "TakeControlDlg1.h"
  7. #include "SearchFilter2.h"
  8. #include "InputDate.h"
  9. #ifdef _DEBUG
  10. #define new DEBUG_NEW
  11. #undef THIS_FILE
  12. static char THIS_FILE[] = __FILE__;
  13. #endif
  14. /////////////////////////////////////////////////////////////////////////////
  15. // SearchTake dialog
  16. SearchTake::SearchTake(CWnd* pParent /*=NULL*/)
  17. : CDialog(SearchTake::IDD, pParent)
  18. {
  19. //{{AFX_DATA_INIT(SearchTake)
  20. m_filter = _T("");
  21. m_radio1 = 1;
  22. //}}AFX_DATA_INIT
  23. }
  24. void SearchTake::DoDataExchange(CDataExchange* pDX)
  25. {
  26. CDialog::DoDataExchange(pDX);
  27. //{{AFX_DATA_MAP(SearchTake)
  28. DDX_Control(pDX, IDC_COMBO1, m_combo1);
  29. DDX_Control(pDX, IDC_LIST2, m_List1);
  30. DDX_CBString(pDX, IDC_COMBO1, m_filter);
  31. DDX_Radio(pDX, IDC_RADIO1, m_radio1);
  32. //}}AFX_DATA_MAP
  33. }
  34. BEGIN_MESSAGE_MAP(SearchTake, CDialog)
  35. //{{AFX_MSG_MAP(SearchTake)
  36. ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
  37. ON_BN_CLICKED(IDC_RADIO1, OnRadio1)
  38. ON_BN_CLICKED(IDC_RADIO2, OnRadio2)
  39. ON_BN_CLICKED(IDC_RADIO9, OnRadio9)
  40. ON_CBN_CLOSEUP(IDC_COMBO1, OnCloseupCombo1)
  41. ON_CBN_SELCHANGE(IDC_COMBO1, OnSelchangeCombo1)
  42. ON_WM_TIMER()
  43. ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
  44. ON_BN_CLICKED(IDC_BTNSEARCHFILTER, OnBtnsearchfilter)
  45. ON_BN_CLICKED(IDC_BUTTON3, OnButton3)
  46. //}}AFX_MSG_MAP
  47. END_MESSAGE_MAP()
  48. /////////////////////////////////////////////////////////////////////////////
  49. // SearchTake message handlers
  50. extern BOOL CALLBACK EnumChildProc2(HWND hwnd,LPARAM lParam);
  51. BOOL SearchTake::OnInitDialog()
  52. {
  53. CDialog::OnInitDialog();
  54. // TODO: Add extra initialization here
  55. CRect rc2;
  56. GetWindowRect(rc2);
  57. ::MoveWindow(m_hWnd,g_rc.left,g_rc.top,g_rc.Width(),g_rc.Height(),TRUE);
  58. g_WidthScale2 = (float)g_rc.Width()/(float)rc2.Width(); // new/Old
  59. g_HeightScale2 = (float)g_rc.Height()/(float)rc2.Height();
  60. EnumChildWindows(m_hWnd,(WNDENUMPROC)EnumChildProc2,0);
  61. m_combo1.GetWindowRect (rc2);
  62. ScreenToClient(rc2);
  63. rc2.bottom +=200;
  64. m_combo1.MoveWindow (rc2);
  65. if(g_bAllBranch==0)
  66. {
  67. m_nAdd=0;
  68. #ifdef CHILD_VERSION
  69. m_List1.SetHeadings("订单号,100;家长姓名,100;宝宝姓名,100;手机,100;固定电话,100;订单日期,100;取件日期,100;景点,100;拍照,100;拍照日期,100;时间,100;摄影师,100;化妆师,100;接单人,100;套系名称,100;套系价格,100" );
  70. #else
  71. m_List1.SetHeadings("订单号,100;男宾姓名,100;女宾姓名,100;男宾电话,100;女宾电话,100;订单日期,100;取件日期,100;婚期,100;景点,100;拍照,100;拍照日期,100;时间,100;摄影师,100;化妆师,100;接单人,100;套系名称,100;套系价格,100" );
  72. #endif
  73. m_List1.LoadColumnInfo (110);
  74. }
  75. else
  76. {
  77. m_nAdd=1;
  78. #ifdef CHILD_VERSION
  79. m_List1.SetHeadings("店名,100;订单号,100;家长姓名,100;宝宝姓名,100;手机,100;固定电话,100;订单日期,100;取件日期,100;景点,100;拍照,100;拍照日期,100;时间,100;摄影师,100;化妆师,100;接单人,100;套系名称,100;套系价格,100" );
  80. #else
  81. m_List1.SetHeadings("店名,100;订单号,100;男宾姓名,100;女宾姓名,100;男宾电话,100;女宾电话,100;订单日期,100;取件日期,100;婚期,100;景点,100;拍照,100;拍照日期,100;时间,100;摄影师,100;化妆师,100;接单人,100;套系名称,100;套系价格,100" );
  82. #endif
  83. m_List1.LoadColumnInfo (194);
  84. }
  85. GetData();
  86. for(int i=0; i<m_List1array.GetSize (); i++)
  87. {
  88. #ifdef CHILD_VERSION
  89. if(::FindArray (&jdarray, m_List1array.ElementAt (i).ElementAt (7+m_nAdd))==-1)
  90. jdarray.Add (m_List1array.ElementAt (i).ElementAt (7+m_nAdd));
  91. #else
  92. if(::FindArray (&jdarray, m_List1array.ElementAt (i).ElementAt (8+m_nAdd))==-1)
  93. jdarray.Add (m_List1array.ElementAt (i).ElementAt (8+m_nAdd));
  94. #endif
  95. }
  96. m_combo1.AddString ("");
  97. for( i=0; i<jdarray.GetSize (); i++)
  98. {
  99. m_combo1.AddString (jdarray.ElementAt (i));
  100. }
  101. return TRUE; // return TRUE unless you set the focus to a control
  102. // EXCEPTION: OCX Property Pages should return FALSE
  103. }
  104. void SearchTake::OnButton1()
  105. {
  106. // TODO: Add your control notification handler code here
  107. UpdateData();
  108. m_filter.TrimLeft ();
  109. m_filter.TrimRight ();
  110. FillGrid();
  111. }
  112. void SearchTake::FillGrid()
  113. {
  114. UpdateData();
  115. if(g_bSearchFilter)
  116. {
  117. #ifdef CHILD_VERSION
  118. int aa=m_nAdd;
  119. int m_nAdd=aa-1;
  120. #endif
  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 (5+m_nAdd)<g_filterdate1 || m_List1array.ElementAt (ii).ElementAt (5+m_nAdd)>g_filterdate2)
  131. continue;
  132. }
  133. if(g_filterdate3!="")
  134. {
  135. if(m_List1array.ElementAt (ii).ElementAt (6+m_nAdd)<g_filterdate3 || m_List1array.ElementAt (ii).ElementAt (6+m_nAdd)>g_filterdate4)
  136. continue;
  137. }
  138. if(g_filterdate5!="")
  139. {
  140. if(m_List1array.ElementAt (ii).ElementAt (7+m_nAdd)<g_filterdate5 || m_List1array.ElementAt (ii).ElementAt (7+m_nAdd)>g_filterdate6)
  141. continue;
  142. }
  143. if(g_waiter1!="")
  144. {
  145. if(m_List1array.ElementAt (ii).ElementAt (8+m_nAdd)!=g_waiter1)
  146. continue;
  147. }
  148. if(g_bAllBranch && g_filterbranch!="")
  149. {
  150. if(m_List1array.ElementAt (ii).ElementAt (0)!=g_filterbranch)
  151. continue;
  152. }
  153. if(m_radio1==1)
  154. {
  155. if( !(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd)!="OK"&&m_List1array.ElementAt (ii).ElementAt (9+m_nAdd)!="拍摄中") )
  156. continue;
  157. }
  158. else if(m_radio1==2)
  159. {
  160. if( !(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd)=="OK"||m_List1array.ElementAt (ii).ElementAt (9+m_nAdd)=="拍摄中") )
  161. continue;
  162. }
  163. if(1)
  164. {
  165. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  166. }
  167. }
  168. }
  169. m_List1.m_arLabels.SetSize(count, 1);
  170. ii=count;
  171. m_List1.m_LabelCount=ii;
  172. m_List1.SetItemCountEx (ii);
  173. CString str;
  174. str.Format ("单数:%d", ii);
  175. SetDlgItemText(IDC_STATIC2, str);
  176. }
  177. else
  178. {
  179. int m_nAdd2=0;
  180. #ifdef CHILD_VERSION
  181. m_nAdd2=-1;
  182. #endif
  183. m_List1.DeleteAllItems2 ();
  184. int ii=0;
  185. m_List1.m_arLabels.SetSize( m_List1array.GetSize (), 1 );
  186. int count=0;
  187. if(m_filter.IsEmpty ())
  188. {
  189. if(m_radio1==1)
  190. {
  191. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  192. {
  193. if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="OK"&&m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="拍摄中")
  194. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  195. }
  196. }
  197. else if(m_radio1==2)
  198. {
  199. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  200. {
  201. if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="OK"||m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="拍摄中")
  202. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  203. }
  204. }
  205. else
  206. {
  207. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  208. {
  209. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  210. }
  211. }
  212. }
  213. else
  214. {
  215. if(m_radio1==1)
  216. {
  217. int type=GetType(m_filter);
  218. if(type==1)//电话
  219. {
  220. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  221. {
  222. if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="OK"&&m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="拍摄中" && (m_List1array.ElementAt (ii).ElementAt (3+m_nAdd).Find (m_filter)!=-1 || \
  223. m_List1array.ElementAt (ii).ElementAt (4+m_nAdd).Find (m_filter)!=-1) )
  224. {
  225. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  226. }
  227. }
  228. }
  229. else if(type==2)//拼音
  230. {
  231. m_filter.MakeUpper ();
  232. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  233. {
  234. if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="OK"&&m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="拍摄中" && (m_List1array.ElementAt (ii).ElementAt (18+m_nAdd+m_nAdd2).Find (m_filter)!=-1 || \
  235. m_List1array.ElementAt (ii).ElementAt (17+m_nAdd+m_nAdd2).Find (m_filter)!=-1) )
  236. {
  237. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  238. }
  239. }
  240. }
  241. else
  242. {
  243. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  244. {
  245. if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="OK"&&m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)!="拍摄中" &&(m_List1array.ElementAt (ii).ElementAt (0).Find (m_filter)!=-1 ||\
  246. m_List1array.ElementAt (ii).ElementAt (1).Find (m_filter)!=-1 || \
  247. m_List1array.ElementAt (ii).ElementAt (2).Find (m_filter)!=-1 || \
  248. m_List1array.ElementAt (ii).ElementAt (3).Find (m_filter)!=-1 || \
  249. m_List1array.ElementAt (ii).ElementAt (4).Find (m_filter)!=-1 || \
  250. m_List1array.ElementAt (ii).ElementAt (5).Find (m_filter)!=-1 || \
  251. m_List1array.ElementAt (ii).ElementAt (6).Find (m_filter)!=-1 || \
  252. m_List1array.ElementAt (ii).ElementAt (7).Find (m_filter)!=-1 || \
  253. m_List1array.ElementAt (ii).ElementAt (8).Find (m_filter)!=-1 || \
  254. m_List1array.ElementAt (ii).ElementAt (9).Find (m_filter)!=-1 || \
  255. m_List1array.ElementAt (ii).ElementAt (10).Find (m_filter)!=-1|| \
  256. m_List1array.ElementAt (ii).ElementAt (11).Find (m_filter)!=-1|| \
  257. m_List1array.ElementAt (ii).ElementAt (12).Find (m_filter)!=-1|| \
  258. m_List1array.ElementAt (ii).ElementAt (13).Find (m_filter)!=-1 || \
  259. m_List1array.ElementAt (ii).ElementAt (15).Find (m_filter)!=-1 || \
  260. m_List1array.ElementAt (ii).ElementAt (16).Find (m_filter)!=-1 || \
  261. m_List1array.ElementAt (ii).ElementAt (14).Find (m_filter)!=-1) )
  262. {
  263. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  264. }
  265. }
  266. }
  267. }
  268. else if(m_radio1==2)
  269. {
  270. int type=GetType(m_filter);
  271. if(type==1)//电话
  272. {
  273. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  274. {
  275. if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="OK"||m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="拍摄中" && (m_List1array.ElementAt (ii).ElementAt (3+m_nAdd).Find (m_filter)!=-1 || \
  276. m_List1array.ElementAt (ii).ElementAt (4+m_nAdd).Find (m_filter)!=-1) )
  277. {
  278. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  279. }
  280. }
  281. }
  282. else if(type==2)//拼音
  283. {
  284. m_filter.MakeUpper ();
  285. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  286. {
  287. if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="OK"||m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="拍摄中" && (m_List1array.ElementAt (ii).ElementAt (18+m_nAdd+m_nAdd2).Find (m_filter)!=-1 || \
  288. m_List1array.ElementAt (ii).ElementAt (17+m_nAdd+m_nAdd2).Find (m_filter)!=-1) )
  289. {
  290. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  291. }
  292. }
  293. }
  294. else
  295. {
  296. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  297. {
  298. if(m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="OK"||m_List1array.ElementAt (ii).ElementAt (9+m_nAdd+m_nAdd2)=="拍摄中" &&(m_List1array.ElementAt (ii).ElementAt (0).Find (m_filter)!=-1 ||\
  299. m_List1array.ElementAt (ii).ElementAt (1).Find (m_filter)!=-1 || \
  300. m_List1array.ElementAt (ii).ElementAt (2).Find (m_filter)!=-1 || \
  301. m_List1array.ElementAt (ii).ElementAt (3).Find (m_filter)!=-1 || \
  302. m_List1array.ElementAt (ii).ElementAt (4).Find (m_filter)!=-1 || \
  303. m_List1array.ElementAt (ii).ElementAt (5).Find (m_filter)!=-1 || \
  304. m_List1array.ElementAt (ii).ElementAt (6).Find (m_filter)!=-1 || \
  305. m_List1array.ElementAt (ii).ElementAt (7).Find (m_filter)!=-1 || \
  306. m_List1array.ElementAt (ii).ElementAt (8).Find (m_filter)!=-1 || \
  307. m_List1array.ElementAt (ii).ElementAt (9).Find (m_filter)!=-1 || \
  308. m_List1array.ElementAt (ii).ElementAt (10).Find (m_filter)!=-1|| \
  309. m_List1array.ElementAt (ii).ElementAt (11).Find (m_filter)!=-1|| \
  310. m_List1array.ElementAt (ii).ElementAt (12).Find (m_filter)!=-1|| \
  311. m_List1array.ElementAt (ii).ElementAt (13).Find (m_filter)!=-1 || \
  312. m_List1array.ElementAt (ii).ElementAt (15).Find (m_filter)!=-1 || \
  313. m_List1array.ElementAt (ii).ElementAt (16).Find (m_filter)!=-1 || \
  314. m_List1array.ElementAt (ii).ElementAt (14).Find (m_filter)!=-1) )
  315. {
  316. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  317. }
  318. }
  319. }
  320. }
  321. else
  322. {
  323. int type=GetType(m_filter);
  324. if(type==1)//电话
  325. {
  326. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  327. {
  328. if( (m_List1array.ElementAt (ii).ElementAt (3+m_nAdd).Find (m_filter)!=-1 || \
  329. m_List1array.ElementAt (ii).ElementAt (4+m_nAdd).Find (m_filter)!=-1) )
  330. {
  331. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  332. }
  333. }
  334. }
  335. else if(type==2)//拼音
  336. {
  337. m_filter.MakeUpper ();
  338. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  339. {
  340. if( (m_List1array.ElementAt (ii).ElementAt (18+m_nAdd+m_nAdd2).Find (m_filter)!=-1 || \
  341. m_List1array.ElementAt (ii).ElementAt (17+m_nAdd+m_nAdd2).Find (m_filter)!=-1) )
  342. {
  343. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  344. }
  345. }
  346. }
  347. else
  348. {
  349. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  350. {
  351. if((m_List1array.ElementAt (ii).ElementAt (0).Find (m_filter)!=-1 ||\
  352. m_List1array.ElementAt (ii).ElementAt (1).Find (m_filter)!=-1 || \
  353. m_List1array.ElementAt (ii).ElementAt (2).Find (m_filter)!=-1 || \
  354. m_List1array.ElementAt (ii).ElementAt (3).Find (m_filter)!=-1 || \
  355. m_List1array.ElementAt (ii).ElementAt (4).Find (m_filter)!=-1 || \
  356. m_List1array.ElementAt (ii).ElementAt (5).Find (m_filter)!=-1 || \
  357. m_List1array.ElementAt (ii).ElementAt (6).Find (m_filter)!=-1 || \
  358. m_List1array.ElementAt (ii).ElementAt (7).Find (m_filter)!=-1 || \
  359. m_List1array.ElementAt (ii).ElementAt (8).Find (m_filter)!=-1 || \
  360. m_List1array.ElementAt (ii).ElementAt (9).Find (m_filter)!=-1 || \
  361. m_List1array.ElementAt (ii).ElementAt (10).Find (m_filter)!=-1|| \
  362. m_List1array.ElementAt (ii).ElementAt (11).Find (m_filter)!=-1|| \
  363. m_List1array.ElementAt (ii).ElementAt (12).Find (m_filter)!=-1|| \
  364. m_List1array.ElementAt (ii).ElementAt (13).Find (m_filter)!=-1 || \
  365. m_List1array.ElementAt (ii).ElementAt (15).Find (m_filter)!=-1 || \
  366. m_List1array.ElementAt (ii).ElementAt (16).Find (m_filter)!=-1 || \
  367. m_List1array.ElementAt (ii).ElementAt (14).Find (m_filter)!=-1) )
  368. {
  369. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  370. }
  371. }
  372. }
  373. }
  374. }
  375. m_List1.m_arLabels.SetSize(count, 1);
  376. ii=count;
  377. m_List1.m_LabelCount=ii;
  378. m_List1.SetItemCountEx (ii);
  379. CString str;
  380. str.Format ("单数:%d", ii);
  381. SetDlgItemText(IDC_STATIC2, str);
  382. }
  383. }
  384. void SearchTake::OnRadio1()
  385. {
  386. // TODO: Add your control notification handler code here
  387. FillGrid();
  388. }
  389. void SearchTake::OnRadio2()
  390. {
  391. // TODO: Add your control notification handler code here
  392. FillGrid();
  393. }
  394. void SearchTake::OnRadio9()
  395. {
  396. // TODO: Add your control notification handler code here
  397. FillGrid();
  398. }
  399. void SearchTake::OnCloseupCombo1()
  400. {
  401. // TODO: Add your control notification handler code here
  402. SetTimer(1, 100, NULL);
  403. }
  404. void SearchTake::OnSelchangeCombo1()
  405. {
  406. // TODO: Add your control notification handler code here
  407. SetTimer(1, 100, NULL);
  408. }
  409. void SearchTake::OnTimer(UINT nIDEvent)
  410. {
  411. // TODO: Add your message handler code here and/or call default
  412. KillTimer(nIDEvent);
  413. OnButton1();
  414. }
  415. void SearchTake::OnButton2()
  416. {
  417. // TODO: Add your control notification handler code here
  418. POSITION pos;
  419. pos=m_List1.GetFirstSelectedItemPosition();
  420. if(pos==NULL)
  421. {
  422. AfxMessageBox("请先选中您要安排的客人!", MB_ICONINFORMATION);
  423. return;
  424. }
  425. int iItem;
  426. CStringArray idarray;
  427. CStringArray brancharray;
  428. while (pos)
  429. {
  430. iItem = m_List1.GetNextSelectedItem(pos);
  431. idarray.Add (m_List1.GetItemText (iItem, 0+m_nAdd));
  432. if(g_bAllBranch)
  433. brancharray.Add (m_List1.GetItemText (iItem, 0));
  434. }
  435. if(idarray.GetSize ()==1)
  436. {
  437. CString id=idarray.ElementAt (0);
  438. TakeControlDlg1 dlg;
  439. if(g_bAllBranch)
  440. dlg.m_branch=brancharray.ElementAt (0);
  441. dlg.id=id;
  442. dlg.m_bModify=1;
  443. dlg.DoModal ();
  444. }
  445. else
  446. {
  447. TakeControlDlg1 dlg;
  448. dlg.m_pIdArray=&idarray;
  449. dlg.m_pBranchArray=&brancharray;
  450. dlg.m_bModify=1;
  451. dlg.DoModal ();
  452. }
  453. if(g_bAllBranch)
  454. {
  455. if(AfxMessageBox("是否实时更新数据?", MB_YESNO|MB_ICONINFORMATION)!=IDYES)return;
  456. }
  457. GetData();
  458. }
  459. void SearchTake::OnOK()
  460. {
  461. // TODO: Add extra validation here
  462. }
  463. BOOL SearchTake::PreTranslateMessage(MSG* pMsg)
  464. {
  465. // TODO: Add your specialized code here and/or call the base class
  466. if(pMsg->message==WM_KEYDOWN)
  467. {
  468. switch (pMsg->wParam)
  469. {
  470. case VK_RETURN:
  471. OnButton1();
  472. return 1;
  473. break;
  474. }
  475. }
  476. return CDialog::PreTranslateMessage(pMsg);
  477. }
  478. void SearchTake::HidePrice()
  479. {
  480. #ifdef LKAY_VERSION
  481. if(IsHasRights2new(31))return;
  482. for(int i=0; i< m_List1array.GetSize (); i++)
  483. {
  484. m_List1array.ElementAt (i).SetAt (3+m_nAdd, "***");
  485. m_List1array.ElementAt (i).SetAt (4+m_nAdd, "***");
  486. m_List1array.ElementAt (i).SetAt (13+m_nAdd, "***");
  487. m_List1array.ElementAt (i).SetAt (14+m_nAdd, "***");
  488. }
  489. #else
  490. if(IsHasRights2new(31))return;
  491. for(int i=0; i< m_List1array.GetSize (); i++)
  492. {
  493. m_List1array.ElementAt (i).SetAt (3+m_nAdd, "***");
  494. m_List1array.ElementAt (i).SetAt (4+m_nAdd, "***");
  495. }
  496. #endif
  497. }
  498. void SearchTake::OnBtnsearchfilter()
  499. {
  500. // TODO: Add your control notification handler code here
  501. SearchFilter2 dlg;
  502. dlg.m_pArray=&jdarray;
  503. if(dlg.DoModal ()==IDOK)
  504. {
  505. FillGrid();
  506. }
  507. g_bSearchFilter=0;
  508. }
  509. void SearchTake::OnButton3()
  510. {
  511. // TODO: Add your control notification handler code here
  512. POSITION pos;
  513. pos=m_List1.GetFirstSelectedItemPosition();
  514. if(pos==NULL)
  515. {
  516. AfxMessageBox("请选中多对客人!", MB_ICONINFORMATION);
  517. return;
  518. }
  519. int iItem;
  520. if(g_bAllBranch)
  521. {
  522. CStringArray idarray[100];
  523. CStringArray jdarray[100];
  524. CStringArray brancharray;
  525. int idcount=0;
  526. int branchpos;
  527. CString branch;
  528. while (pos)
  529. {
  530. iItem = m_List1.GetNextSelectedItem(pos);
  531. branchpos=::FindArray(&brancharray, m_List1.GetItemText (iItem, 0) );if(branchpos>=100)continue;
  532. if(branchpos==-1)
  533. {
  534. branchpos=brancharray.GetSize();
  535. brancharray.Add(m_List1.GetItemText (iItem, 0));
  536. }
  537. idarray[branchpos].Add (m_List1.GetItemText (iItem, 0+m_nAdd));
  538. #ifdef CHILD_VERSION
  539. jdarray[branchpos].Add (m_List1.GetItemText (iItem, 7+m_nAdd));
  540. #else
  541. jdarray[branchpos].Add (m_List1.GetItemText (iItem, 8+m_nAdd));
  542. #endif
  543. idcount++;
  544. }
  545. if(idcount==1)
  546. {
  547. AfxMessageBox("请选中多对客人,或者按预约按钮!", MB_ICONINFORMATION);
  548. return;
  549. }
  550. else
  551. {
  552. InputDate dlg;
  553. dlg.m_mode=1;
  554. if(dlg.DoModal ()!=IDOK)return;
  555. for(int aa=0; aa<brancharray.GetSize(); aa++)
  556. {
  557. branch=brancharray.ElementAt(aa);
  558. CString sql;
  559. sql.Format ("update dindanjd set [bookingdate]='%s',[clerk]='%s',[inputtime]='msgtimestamp2' where ", dlg.m_date, g_user.name);
  560. CString filter,temp;
  561. for(int i=0; i<idarray[aa].GetSize (); i++)
  562. {
  563. if(i==0)
  564. temp="[id]='"+idarray[aa].ElementAt (i)+"' and [name]='"+jdarray[aa].ElementAt (i)+"'";
  565. else
  566. temp=" or [id]='"+idarray[aa].ElementAt (i)+"' and [name]='"+jdarray[aa].ElementAt (i)+"'";
  567. filter+=temp;
  568. }
  569. sql+=filter;
  570. g_sendhead.bsql=1;
  571. g_branchip=GetIP(branch);
  572. g_pMainWnd->OnDisconnect();
  573. g_branchname=branch;
  574. g_bBranchModify=1;
  575. g_pMainWnd->ProcessChatMessageRequest2(sql);
  576. g_pMainWnd->OnDisconnect();g_bBranchModify=0;g_branchip=g_branchname="";
  577. if(g_bSendOK==0)
  578. {
  579. sql.Format("保存分店: %s 失败!", branch);
  580. AfxMessageBox(sql, MB_ICONINFORMATION);
  581. continue;
  582. }
  583. }
  584. }
  585. if(AfxMessageBox("是否实时更新数据?", MB_YESNO|MB_ICONINFORMATION)==IDYES)GetData();
  586. }
  587. else
  588. {
  589. CStringArray idarray;
  590. CStringArray jdarray;
  591. while (pos)
  592. {
  593. iItem = m_List1.GetNextSelectedItem(pos);
  594. idarray.Add (m_List1.GetItemText (iItem, 0+m_nAdd));
  595. #ifdef CHILD_VERSION
  596. jdarray.Add (m_List1.GetItemText (iItem, 7+m_nAdd));
  597. #else
  598. jdarray.Add (m_List1.GetItemText (iItem, 8+m_nAdd));
  599. #endif
  600. }
  601. if(idarray.GetSize ()==1)
  602. {
  603. AfxMessageBox("请选中多对客人,或者按预约按钮!", MB_ICONINFORMATION);
  604. return;
  605. }
  606. else
  607. {
  608. InputDate dlg;
  609. dlg.m_mode=1;
  610. if(dlg.DoModal ()!=IDOK)return;
  611. CString sql;
  612. sql.Format ("update dindanjd set [bookingdate]='%s',[clerk]='%s',[inputtime]='msgtimestamp2' where ", dlg.m_date, g_user.name);
  613. CString filter,temp;
  614. for(int i=0; i<idarray.GetSize (); i++)
  615. {
  616. if(i==0)
  617. temp="[id]='"+idarray.ElementAt (i)+"' and [name]='"+jdarray.ElementAt (i)+"'";
  618. else
  619. temp=" or [id]='"+idarray.ElementAt (i)+"' and [name]='"+jdarray.ElementAt (i)+"'";
  620. filter+=temp;
  621. }
  622. sql+=filter;
  623. g_sendhead.bsql=1;
  624. g_pMainWnd->ProcessChatMessageRequest2(sql);if(g_bSendOK==0)return;
  625. AfxMessageBox("保存成功!", MB_ICONINFORMATION);
  626. }
  627. GetData();
  628. }
  629. }
  630. void SearchTake::GetData()
  631. {
  632. if(g_bAllBranch==0)
  633. {
  634. g_sendhead.code[0]=189;
  635. g_sendhead.tabcount=1;
  636. g_sendhead.bsql=0;
  637. g_pMainWnd->ProcessChatMessageRequest2(1);if(g_bSendOK==0)return;
  638. DataToArray(&m_List1array);
  639. HidePrice();
  640. FillGrid();
  641. return;
  642. }
  643. //////////////数据汇总
  644. m_List1array.RemoveAll ();
  645. CStringArray failbrancharray;
  646. CString branch;
  647. for(int i=-1; i<g_brancharray.GetSize ()-1; i++)
  648. {
  649. if(i!=-1)
  650. {
  651. branch=g_brancharray.ElementAt (i).ElementAt (0);
  652. g_branchip=g_brancharray.ElementAt (i).ElementAt (1);
  653. g_pMainWnd->OnDisconnect();
  654. g_branchname=branch;
  655. g_bBranchModify=1;
  656. }
  657. else
  658. branch=g_brancharray.ElementAt (g_brancharray.GetSize ()-1).ElementAt (0);
  659. g_sendhead.bsql=0;
  660. g_sendhead.code[0]=189;
  661. g_sendhead.tabcount=1;
  662. g_pMainWnd->ProcessChatMessageRequest2(1);
  663. if(g_bSendOK==0)
  664. {
  665. failbrancharray.Add (branch);
  666. continue;
  667. }
  668. CArray<CStringArray, CStringArray>List1array;
  669. DataToArray(&List1array);
  670. int size=m_List1array.GetSize ();
  671. for(int j=0; j<List1array.GetSize (); j++)
  672. {
  673. size++;
  674. m_List1array.SetSize(size , 1 );
  675. size--;
  676. m_List1array.ElementAt (size).Copy (List1array.ElementAt (j));
  677. m_List1array.ElementAt (size).InsertAt (0, branch);
  678. size++;
  679. }
  680. }
  681. for(i=0; i<failbrancharray.GetSize (); i++)
  682. {
  683. // AfxMessageBox("连接"+failbrancharray.ElementAt(i)+"服务器失败!", MB_ICONINFORMATION);
  684. }
  685. g_pMainWnd->OnDisconnect();
  686. g_bBranchModify=0;g_branchip=g_branchname="";
  687. HidePrice();
  688. FillGrid();
  689. }