SearchTake.cpp 21 KB

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