ShowMember2.cpp 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857
  1. // ShowMember2.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "ylgl.h"
  5. #include "ShowMember2.h"
  6. #include "MyMdi.H"
  7. #include "AddMember.h"
  8. #include "ShowMemberReg.h"
  9. #include "InputCard2Dlg.h"
  10. #include "ShowCard2Reg.h"
  11. #include "InputCard2Point.h"
  12. #include "UsePoint.h"
  13. #include "InputCard3Dlg.h"
  14. #include "ReCharge.h"
  15. #include "ReChargeReg.h"
  16. #include "MemberCardFunc2.h"
  17. #include "SelMemberCardFund.h"
  18. #include "SendMsgDlg.h"
  19. #ifdef _DEBUG
  20. #define new DEBUG_NEW
  21. #undef THIS_FILE
  22. static char THIS_FILE[] = __FILE__;
  23. #endif
  24. #pragma comment(lib, "Shlwapi.lib")
  25. /////////////////////////////////////////////////////////////////////////////
  26. // ShowMember2
  27. IMPLEMENT_DYNCREATE(ShowMember2, MyFormView)
  28. ShowMember2::ShowMember2()
  29. : MyFormView(ShowMember2::IDD)
  30. {
  31. //{{AFX_DATA_INIT(ShowMember2)
  32. m_filter = _T("");
  33. //}}AFX_DATA_INIT
  34. m_nAdd=0;
  35. if(g_bAllBranch)
  36. {
  37. m_nAdd=1;
  38. }
  39. }
  40. ShowMember2::~ShowMember2()
  41. {
  42. }
  43. void ShowMember2::DoDataExchange(CDataExchange* pDX)
  44. {
  45. MyFormView::DoDataExchange(pDX);
  46. //{{AFX_DATA_MAP(ShowMember2)
  47. DDX_Control(pDX, IDC_LIST2, m_List1);
  48. DDX_Control(pDX, IDC_STATIC1, m_static1);
  49. DDX_Text(pDX, IDC_EDIT15, m_filter);
  50. //}}AFX_DATA_MAP
  51. }
  52. BEGIN_MESSAGE_MAP(ShowMember2, MyFormView)
  53. //{{AFX_MSG_MAP(ShowMember2)
  54. ON_BN_CLICKED(IDC_BUTclose, OnBUTclose)
  55. ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
  56. ON_WM_TIMER()
  57. ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
  58. ON_NOTIFY(NM_DBLCLK, IDC_LIST2, OnDblclkList2)
  59. ON_BN_CLICKED(IDC_BUTTON3, OnButton3)
  60. ON_BN_CLICKED(IDC_BUTTON4, OnButton4)
  61. ON_BN_CLICKED(IDC_BUTTON5, OnButton5)
  62. ON_BN_CLICKED(IDC_BUTTON6, OnButton6)
  63. ON_BN_CLICKED(IDC_BUTTON10, OnButton10)
  64. ON_BN_CLICKED(IDC_BUTTON11, OnButton11)
  65. ON_BN_CLICKED(IDC_BUTTON8, OnButton8)
  66. ON_BN_CLICKED(IDC_BUTTON15, OnButton15)
  67. ON_BN_CLICKED(IDC_BUTTON18, OnButton18)
  68. ON_BN_CLICKED(IDC_BUTTON19, OnButton19)
  69. ON_BN_CLICKED(IDC_BUTTON17, OnButton17)
  70. ON_BN_CLICKED(IDC_BUTTON20, OnButton20)
  71. ON_BN_CLICKED(IDC_BUTTON21, OnButton21)
  72. ON_BN_CLICKED(IDC_BUTTON16, OnButton16)
  73. ON_BN_CLICKED(IDC_BUTTON24, OnButton24)
  74. //}}AFX_MSG_MAP
  75. END_MESSAGE_MAP()
  76. /////////////////////////////////////////////////////////////////////////////
  77. // ShowMember2 diagnostics
  78. #ifdef _DEBUG
  79. void ShowMember2::AssertValid() const
  80. {
  81. MyFormView::AssertValid();
  82. }
  83. void ShowMember2::Dump(CDumpContext& dc) const
  84. {
  85. MyFormView::Dump(dc);
  86. }
  87. #endif //_DEBUG
  88. /////////////////////////////////////////////////////////////////////////////
  89. // ShowMember2 message handlers
  90. void ShowMember2::OnInitialUpdate()
  91. {
  92. MyFormView::OnInitialUpdate();
  93. // TODO: Add your specialized code here and/or call the base class
  94. CMyMdi Mdi;
  95. Mdi.SetSubView((CWnd*)GetParent(), (CWnd*)this);
  96. GetDlgItem(IDC_BUTTON5)->EnableWindow(IsHasRights2new(49));
  97. // Here we create the outbar control using the splitter as its parent
  98. // and setting its id to the first pane.
  99. CRect rc2;
  100. GetWindowRect(rc2);
  101. ::MoveWindow(m_hWnd,g_rc.left,g_rc.top,g_rc.Width(),g_rc.Height(),TRUE);
  102. EnumChildWindows(m_hWnd,(WNDENUMPROC)EnumChildProc,0);
  103. m_static1.SetFont (&g_titlefont);
  104. if (g_bAllBranch == 0)
  105. {
  106. m_List1.SetHeadings("卡号,100;姓名,100;性别,100;电话,100;余额,100;卡类别,100;办卡日期,100;子卡号,100;子卡金额,100;开卡日期,100");
  107. m_List1.LoadColumnInfo(231);
  108. }
  109. else
  110. {
  111. m_List1.SetHeadings("店名,100;卡号,100;姓名,100;性别,100;电话,100;余额,100;卡类别,100;办卡日期,100;子卡号,100;子卡金额,100;开卡日期,100");
  112. m_List1.LoadColumnInfo(232);
  113. }
  114. m_List1.m_bSortSupport =0;
  115. GetData();
  116. }
  117. void ShowMember2::FillGrid()
  118. {
  119. m_List1.DeleteAllItems2();
  120. int ii = 0;
  121. m_List1.m_arLabels.SetSize(m_List1array.GetSize(), 1);
  122. int count = 0;
  123. if (m_filter.IsEmpty())
  124. {
  125. for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++)
  126. {
  127. m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
  128. }
  129. }
  130. else
  131. {
  132. int type = GetType(m_filter);
  133. if (type == 2)//拼音
  134. {
  135. m_filter.MakeUpper(); BOOL bFinded = 0;
  136. for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++)
  137. {
  138. if (bFinded && m_List1array.ElementAt(ii).ElementAt(0 + m_nAdd).IsEmpty())
  139. {
  140. m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
  141. continue;
  142. }
  143. if (m_List1array.ElementAt(ii).ElementAt(10 + m_nAdd).Find(m_filter) != -1)
  144. {
  145. bFinded = 1;
  146. m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
  147. }
  148. else
  149. {
  150. bFinded = 0;
  151. }
  152. }
  153. }
  154. else
  155. {
  156. BOOL bFinded = 0;
  157. for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++)
  158. {
  159. if (bFinded && m_List1array.ElementAt(ii).ElementAt(0 + m_nAdd).IsEmpty())
  160. {
  161. m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
  162. continue;
  163. }
  164. if (m_List1array.ElementAt(ii).ElementAt(0).Find(m_filter) != -1 || \
  165. m_List1array.ElementAt(ii).ElementAt(1).Find(m_filter) != -1 || \
  166. m_List1array.ElementAt(ii).ElementAt(2).Find(m_filter) != -1 || \
  167. m_List1array.ElementAt(ii).ElementAt(3).Find(m_filter) != -1 || \
  168. m_List1array.ElementAt(ii).ElementAt(4).Find(m_filter) != -1 || \
  169. m_List1array.ElementAt(ii).ElementAt(5).Find(m_filter) != -1 || \
  170. m_List1array.ElementAt(ii).ElementAt(6).Find(m_filter) != -1 || \
  171. m_List1array.ElementAt(ii).ElementAt(7).Find(m_filter) != -1 || \
  172. m_List1array.ElementAt(ii).ElementAt(8).Find(m_filter) != -1 || \
  173. m_List1array.ElementAt(ii).ElementAt(8 + m_nAdd).Find(m_filter) != -1)
  174. {
  175. bFinded = 1;
  176. m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii));
  177. }
  178. else
  179. {
  180. bFinded = 0;
  181. }
  182. }
  183. }
  184. }
  185. m_List1.m_arLabels.SetSize(count, 1);
  186. ii = count;
  187. m_List1.m_LabelCount = ii;
  188. m_List1.SetItemCountEx(ii);
  189. CString str;
  190. str.Format("项目:%d", ii);
  191. SetDlgItemText(IDC_STATIC2, str);
  192. }
  193. void ShowMember2::OnBUTclose()
  194. {
  195. // TODO: Add your control notification handler code here
  196. GetParent()->SendMessage(WM_CLOSE);
  197. }
  198. void ShowMember2::OnTimer(UINT nIDEvent)
  199. {
  200. // TODO: Add your message handler code here and/or call default
  201. KillTimer(nIDEvent);
  202. OnButton1();
  203. }
  204. BOOL ShowMember2::PreTranslateMessage(MSG* pMsg)
  205. {
  206. // TODO: Add your specialized code here and/or call the base class
  207. try
  208. {
  209. if(pMsg->message==WM_KEYDOWN)
  210. {
  211. switch (pMsg->wParam)
  212. {
  213. case VK_RETURN:
  214. InputOK();
  215. OnButton1();
  216. return 1;
  217. case 0x43: // copy
  218. if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) )
  219. {
  220. GetFocus()->SendMessage(WM_COPY);
  221. return TRUE;
  222. }
  223. break;
  224. case 0x56: //Ctrl + V:
  225. if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) )
  226. {
  227. GetFocus()->SendMessage(WM_PASTE);
  228. return TRUE;
  229. }
  230. break;
  231. case 0x58: // cut
  232. if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) )
  233. {
  234. GetFocus()->SendMessage(WM_CUT);
  235. return TRUE;
  236. }
  237. break;
  238. case 0x5A: //undo
  239. case 0x59: //redo
  240. if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) )
  241. {
  242. GetFocus()->SendMessage(WM_UNDO);
  243. return TRUE;
  244. }
  245. break;
  246. case '0':
  247. case VK_NUMPAD0:
  248. m_no+="0";
  249. break;
  250. case '1':
  251. case VK_NUMPAD1:
  252. m_no+="1";
  253. break;
  254. case '2':
  255. case VK_NUMPAD2:
  256. m_no+="2";
  257. break;
  258. case '3':
  259. case VK_NUMPAD3:
  260. m_no+="3";
  261. break;
  262. case '4':
  263. case VK_NUMPAD4:
  264. m_no+="4";
  265. break;
  266. case '5':
  267. case VK_NUMPAD5:
  268. m_no+="5";
  269. break;
  270. case '6':
  271. case VK_NUMPAD6:
  272. m_no+="6";
  273. break;
  274. case '7':
  275. case VK_NUMPAD7:
  276. m_no+="7";
  277. break;
  278. case '8':
  279. case VK_NUMPAD8:
  280. m_no+="8";
  281. break;
  282. case '9':
  283. case VK_NUMPAD9:
  284. m_no+="9";
  285. break;
  286. case 187:
  287. m_no+="=";
  288. break;
  289. case VK_BACK:
  290. if(m_no.GetLength ())
  291. {
  292. m_no.Delete (m_no.GetLength ()-1);
  293. }
  294. break;
  295. }
  296. }
  297. return MyFormView::PreTranslateMessage(pMsg);
  298. }
  299. catch(...)
  300. {
  301. }
  302. }
  303. void ShowMember2::OnButton1()
  304. {
  305. // TODO: Add your control notification handler code here
  306. UpdateData();
  307. m_filter.TrimLeft ();
  308. m_filter.TrimRight ();
  309. FillGrid();
  310. }
  311. void ShowMember2::OnButton2() //加会员
  312. {
  313. // TODO: Add your control notification handler code here
  314. AddMember dlg;
  315. if(dlg.DoModal ()==IDOK)
  316. {
  317. GetData();
  318. }
  319. }
  320. void ShowMember2::OnButton3()
  321. {
  322. // TODO: Add your control notification handler code here
  323. POSITION pos;
  324. pos=m_List1.GetFirstSelectedItemPosition();
  325. if(pos==NULL)
  326. {
  327. AfxMessageBox("请先选中要查看的会员!");
  328. return;
  329. }
  330. int iItem=m_List1.GetNextSelectedItem(pos);
  331. CString memberno=m_List1.GetItemText (iItem, 1);
  332. ShowMemberReg dlg;
  333. dlg.m_memberno=memberno;
  334. dlg.DoModal ();
  335. }
  336. void ShowMember2::OnButton4()
  337. {
  338. // TODO: Add your control notification handler code here
  339. POSITION pos;
  340. pos=m_List1.GetFirstSelectedItemPosition();
  341. if(pos==NULL)
  342. {
  343. AfxMessageBox("请先选中要查看的会员!");
  344. return;
  345. }
  346. int iItem=m_List1.GetNextSelectedItem(pos);
  347. CString memberno=m_List1.GetItemText (iItem, 1);
  348. ShowMemberReg dlg;
  349. dlg.m_mode=1;
  350. dlg.m_memberno=memberno;
  351. dlg.DoModal ();
  352. if(dlg.m_bNeedRefsh==0)return;
  353. g_sendhead.bsql=0;
  354. g_sendhead.code[0]=68;
  355. g_sendhead.tabcount=1;
  356. g_pMainWnd->ProcessChatMessageRequest2(1);if(g_bSendOK==0)return;
  357. DataToArray(&m_List1array);HidePrice();
  358. FillGrid();
  359. }
  360. void ShowMember2::OnButton5()
  361. {
  362. }
  363. void ShowMember2::OnButton6()
  364. {
  365. // TODO: Add your control notification handler code handler
  366. if(IsHasRights2new(18)==0)return;
  367. // TODO: Add your control notification code
  368. POSITION pos;
  369. pos=m_List1.GetFirstSelectedItemPosition();
  370. if(pos==NULL)
  371. {
  372. AfxMessageBox("请先选中您要积分的会员!");
  373. return;
  374. }
  375. int iItem=m_List1.GetNextSelectedItem(pos);
  376. CString m_memberno=m_List1.GetItemText (iItem, 1);
  377. CString m_name=m_List1.GetItemText (iItem, 2);
  378. CString m_sex=m_List1.GetItemText (iItem, 3);
  379. CString m_phone=m_List1.GetItemText (iItem, 4);
  380. InputCard2Point dlg;
  381. dlg.m_memberno=m_memberno;
  382. dlg.m_name=m_name;
  383. dlg.m_sex=m_sex;
  384. dlg.m_phone=m_phone;
  385. if(dlg.DoModal ()!=IDOK)return;
  386. g_sendhead.bsql=0;
  387. g_sendhead.code[0]=68;
  388. g_sendhead.tabcount=1;
  389. g_pMainWnd->ProcessChatMessageRequest2(1);if(g_bSendOK==0)return;
  390. DataToArray(&m_List1array);HidePrice();
  391. FillGrid();
  392. }
  393. void ShowMember2::OnButton10()
  394. {
  395. // TODO: Add your control notification handler code here
  396. if(IsHasRights2new(18)==0)return;
  397. // TODO: Add your control notification handler code here
  398. POSITION pos;
  399. pos=m_List1.GetFirstSelectedItemPosition();
  400. if(pos==NULL)
  401. {
  402. AfxMessageBox("请先选中主卡!");
  403. return;
  404. }
  405. int iItem=m_List1.GetNextSelectedItem(pos);
  406. CString name=m_List1.GetItemText (iItem, 2);
  407. CString no=m_List1.GetItemText (iItem, 1);
  408. InputCard2Dlg dlg;
  409. dlg.m_name =name;
  410. dlg.m_no =no;
  411. dlg.DoModal ();
  412. }
  413. void ShowMember2::OnButton11()
  414. {
  415. // TODO: Add your control notification handler code here
  416. if(IsHasRights2new(18)==0)return;
  417. // TODO: Add your control notification handler code here
  418. POSITION pos;
  419. pos=m_List1.GetFirstSelectedItemPosition();
  420. if(pos==NULL)
  421. {
  422. AfxMessageBox("请先选中主卡!");
  423. return;
  424. }
  425. int iItem=m_List1.GetNextSelectedItem(pos);
  426. CString no=m_List1.GetItemText (iItem, 1);
  427. CString filter="[memberno]='"+no+"'";
  428. g_sendhead.bsql=0;
  429. g_sendhead.code[0]=127;
  430. g_sendhead.tabcount=1;
  431. g_pMainWnd->ProcessChatMessageRequest2(filter);if(g_bSendOK==0)return;
  432. DataToArray(&g_List1array);
  433. if(g_List1array.GetSize ()==0)
  434. {
  435. AfxMessageBox("此主卡未发放副卡!");
  436. }
  437. else
  438. {
  439. ShowCard2Reg dlg;
  440. dlg.DoModal ();
  441. }
  442. }
  443. void ShowMember2::OnButton8()
  444. {
  445. // TODO: Add your control notification handler code here
  446. POSITION pos;
  447. pos=m_List1.GetFirstSelectedItemPosition();
  448. if(pos==NULL)
  449. {
  450. AfxMessageBox("请先选中您要兑换积分的会员!");
  451. return;
  452. }
  453. int iItem=m_List1.GetNextSelectedItem(pos);
  454. CString m_memberno=m_List1.GetItemText (iItem, 1);
  455. CString m_name=m_List1.GetItemText (iItem, 2);
  456. CString m_sex=m_List1.GetItemText (iItem, 3);
  457. CString m_phone=m_List1.GetItemText (iItem, 4);
  458. UsePoint dlg;
  459. dlg.m_memberno=m_memberno;
  460. dlg.m_name=m_name;
  461. dlg.m_sex=m_sex;
  462. dlg.m_phone=m_phone;
  463. dlg.m_point =m_List1.GetItemText (iItem,10);
  464. if(dlg.DoModal ()!=IDOK)return;
  465. g_sendhead.bsql=0;
  466. g_sendhead.code[0]=68;
  467. g_sendhead.tabcount=1;
  468. g_pMainWnd->ProcessChatMessageRequest2(1);if(g_bSendOK==0)return;
  469. DataToArray(&m_List1array);HidePrice();
  470. FillGrid();
  471. }
  472. void ShowMember2::OnButton15()
  473. {
  474. // TODO: Add your control notification handler code here
  475. if(IsHasRights2new(18)==0)return;
  476. // TODO: Add your control notification handler code here
  477. POSITION pos;
  478. pos=m_List1.GetFirstSelectedItemPosition();
  479. if(pos==NULL)
  480. {
  481. AfxMessageBox("请先选中主卡!");
  482. return;
  483. }
  484. int iItem=m_List1.GetNextSelectedItem(pos);
  485. CString name=m_List1.GetItemText (iItem, 1);
  486. CString no=m_List1.GetItemText (iItem, 0);
  487. InputCard3Dlg dlg;
  488. dlg.m_name =name;
  489. dlg.m_no =no;
  490. dlg.DoModal ();
  491. }
  492. void ShowMember2::OnButton18()
  493. {
  494. // TODO: Add your control notification handler code here
  495. POSITION pos;
  496. pos=m_List1.GetFirstSelectedItemPosition();
  497. if(pos==NULL)
  498. {
  499. AfxMessageBox("请先选中主卡!");
  500. return;
  501. }
  502. int iItem=m_List1.GetNextSelectedItem(pos);
  503. CString no=m_List1.GetItemText (iItem, 0);
  504. while(no=="")
  505. {
  506. iItem--;
  507. no=m_List1.GetItemText (iItem, 0);
  508. }
  509. CString name=m_List1.GetItemText (iItem, 1);
  510. ReCharge dlg;
  511. dlg.m_name =name;
  512. dlg.m_no =no;
  513. if(dlg.DoModal ()!=IDOK)return;
  514. CString sql;
  515. sql="insert into [memberreg3]([memberno],[money],[date],[clerk])values('"+no+"','"+dlg.m_money+"','"+g_date+"','"+g_user.name+"')";
  516. sql+="***refresh balance memberreg3"+no;
  517. g_sendhead.bsql=1;
  518. g_pMainWnd->ProcessChatMessageRequest2(sql);
  519. if(g_bSendOK==0)
  520. return;
  521. GetData();
  522. }
  523. void ShowMember2::GetData()
  524. {
  525. if (g_bAllBranch == 0)
  526. {
  527. g_sendhead.bsql = 0;
  528. g_sendhead.code[0] = 161;
  529. g_sendhead.tabcount = 1;
  530. g_pMainWnd->ProcessChatMessageRequest2(1); if (g_bSendOK == 0)return;
  531. DataToArray(&m_List1array);
  532. }
  533. else
  534. {
  535. //////////////数据汇总
  536. m_List1array.RemoveAll();
  537. CString branch;
  538. for (int i = -1; i < g_brancharray.GetSize() - 1; i++)
  539. {
  540. if (i != -1)
  541. {
  542. branch = g_brancharray.ElementAt(i).ElementAt(0);
  543. g_branchip = g_brancharray.ElementAt(i).ElementAt(1);
  544. g_pMainWnd->OnDisconnect();
  545. g_branchname = branch;
  546. g_bBranchModify = 1;
  547. }
  548. else
  549. branch = g_brancharray.ElementAt(g_brancharray.GetSize() - 1).ElementAt(0);
  550. g_sendhead.bsql = 0;
  551. g_sendhead.code[0] = 161;
  552. g_sendhead.tabcount = 1;
  553. g_pMainWnd->ProcessChatMessageRequest2(1); if (g_bSendOK == 0)continue;
  554. CArray<CStringArray, CStringArray>List1array;
  555. DataToArray(&List1array);
  556. int size = m_List1array.GetSize();
  557. for (int j = 0; j < List1array.GetSize(); j++)
  558. {
  559. size++;
  560. m_List1array.SetSize(size, 1);
  561. size--;
  562. m_List1array.ElementAt(size).Copy(List1array.ElementAt(j));
  563. m_List1array.ElementAt(size).InsertAt(0, branch);
  564. size++;
  565. }
  566. }
  567. g_pMainWnd->OnDisconnect();
  568. g_bBranchModify = 0; g_branchip = g_branchname = "";
  569. }
  570. HidePrice();
  571. FillGrid();
  572. }
  573. void ShowMember2::OnButton19()
  574. {
  575. // TODO: Add your control notification handler code here
  576. POSITION pos;
  577. pos=m_List1.GetFirstSelectedItemPosition();
  578. if(pos==NULL)
  579. {
  580. AfxMessageBox("请先选中要查看的会员!");
  581. return;
  582. }
  583. int iItem=m_List1.GetNextSelectedItem(pos);
  584. CString no=m_List1.GetItemText (iItem, 0);
  585. while(no=="")
  586. {
  587. iItem--;
  588. no=m_List1.GetItemText (iItem, 0);
  589. }
  590. ReChargeReg dlg;
  591. dlg.m_mode=0;
  592. dlg.m_memberno=no;
  593. dlg.DoModal ();
  594. if(dlg.m_bNeedRefsh==0)return;
  595. GetData();
  596. }
  597. void ShowMember2::OnButton17()
  598. {
  599. // TODO: Add your control notification handler code here
  600. POSITION pos;
  601. pos=m_List1.GetFirstSelectedItemPosition();
  602. if(pos==NULL)
  603. {
  604. AfxMessageBox("请先选中您要充值的子卡!");
  605. return;
  606. }
  607. int iItem=m_List1.GetNextSelectedItem(pos);
  608. CString no=m_List1.GetItemText (iItem, 0);
  609. CString card2no=m_List1.GetItemText (iItem, 7);
  610. CString balance=m_List1.GetItemText (iItem, 4);
  611. while(no=="")
  612. {
  613. iItem--;
  614. no=m_List1.GetItemText (iItem, 0);
  615. }
  616. CString name=m_List1.GetItemText (iItem, 1);
  617. ReCharge dlg;
  618. dlg.m_mode=1;
  619. dlg.m_name =name;
  620. dlg.m_balance =balance;
  621. dlg.m_no =no;
  622. dlg.m_card2no =card2no;
  623. if(dlg.DoModal ()!=IDOK)return;
  624. CString sql;
  625. sql="insert into [memberreg4]([memberno],[card2no],[money],[date],[clerk])values('"+no+"','"+card2no+"','"+dlg.m_money+"','"+g_date+"','"+g_user.name+"')";
  626. sql+="***refresh balance memberreg4"+no+";"+card2no;
  627. g_sendhead.bsql=1;
  628. g_pMainWnd->ProcessChatMessageRequest2(sql);if(g_bSendOK==0)return;
  629. GetData();
  630. }
  631. void ShowMember2::OnButton20()
  632. {
  633. // TODO: Add your control notification handler code here
  634. POSITION pos;
  635. pos=m_List1.GetFirstSelectedItemPosition();
  636. if(pos==NULL)
  637. {
  638. AfxMessageBox("请先选中要查看的子卡!");
  639. return;
  640. }
  641. int iItem=m_List1.GetNextSelectedItem(pos);
  642. CString no=m_List1.GetItemText (iItem, 0);
  643. CString card2no=m_List1.GetItemText (iItem, 7);
  644. while(no=="")
  645. {
  646. iItem--;
  647. no=m_List1.GetItemText (iItem, 0);
  648. }
  649. ReChargeReg dlg;
  650. dlg.m_mode=1;
  651. dlg.m_memberno=no;
  652. dlg.m_card2no =card2no;
  653. dlg.DoModal ();
  654. if(dlg.m_bNeedRefsh==0)return;
  655. GetData();
  656. }
  657. void ShowMember2::OnButton21()
  658. {
  659. // TODO: Add your control notification handler code here
  660. POSITION pos;
  661. pos=m_List1.GetFirstSelectedItemPosition();
  662. if(pos==NULL)
  663. {
  664. AfxMessageBox("请先选中要查看的会员!");
  665. return;
  666. }
  667. int iItem=m_List1.GetNextSelectedItem(pos);
  668. CString no=m_List1.GetItemText (iItem, 0);
  669. while(no=="")
  670. {
  671. iItem--;
  672. no=m_List1.GetItemText (iItem, 0);
  673. }
  674. ReChargeReg dlg;
  675. dlg.m_mode=2;
  676. dlg.m_memberno=no;
  677. dlg.DoModal ();
  678. if(dlg.m_bNeedRefsh==0)return;
  679. GetData();
  680. }
  681. void ShowMember2::OnButton16()
  682. {
  683. // TODO: Add your control notification handler code here
  684. POSITION pos;
  685. pos=m_List1.GetFirstSelectedItemPosition();
  686. if(pos==NULL)
  687. {
  688. AfxMessageBox("请先选中要查看的会员!");
  689. return;
  690. }
  691. int iItem=m_List1.GetNextSelectedItem(pos);
  692. CString no=m_List1.GetItemText (iItem, 0);
  693. CString card2no=m_List1.GetItemText (iItem, 7);
  694. while(no=="")
  695. {
  696. iItem--;
  697. no=m_List1.GetItemText (iItem, 0);
  698. }
  699. ReChargeReg dlg;
  700. dlg.m_mode=3;
  701. dlg.m_memberno=no;
  702. dlg.m_card2no =card2no;
  703. dlg.DoModal ();
  704. if(dlg.m_bNeedRefsh==0)return;
  705. GetData();
  706. }
  707. void ShowMember2::InputOK()
  708. {
  709. if(m_no.IsEmpty ())return;
  710. m_filter=m_no;
  711. m_no.Empty ();
  712. UpdateData(0);
  713. MemberCardFunc2 dlg;
  714. dlg.m_memberno=m_filter;
  715. for(int ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  716. {
  717. if(m_List1.m_arLabels.ElementAt (ii).ElementAt (0)==m_filter)
  718. break;
  719. if(m_List1.m_arLabels.ElementAt (ii).ElementAt (6)==m_filter)
  720. {
  721. dlg.m_memberno=m_List1.m_arLabels.ElementAt (ii).ElementAt (0);
  722. dlg.m_card2no=m_filter;
  723. break;
  724. }
  725. }
  726. dlg.DoModal();
  727. GetData();
  728. }
  729. void ShowMember2::OnDblclkList2(NMHDR* pNMHDR, LRESULT* pResult)
  730. {
  731. // TODO: Add your control notification handler code here
  732. POSITION pos;
  733. pos=m_List1.GetFirstSelectedItemPosition();
  734. if(pos==NULL)
  735. {
  736. return;
  737. }
  738. MemberCardFunc2 dlg;
  739. int iItem=m_List1.GetNextSelectedItem(pos);
  740. CString branch;
  741. if(g_bAllBranch)
  742. branch=m_List1.GetItemText (iItem, 0);
  743. CString memberno=m_List1.GetItemText (iItem, 0+m_nAdd);
  744. CString m_card2no=m_List1.GetItemText (iItem, 7+m_nAdd);
  745. while(memberno=="")
  746. {
  747. iItem--;
  748. memberno=m_List1.GetItemText (iItem, 0+m_nAdd);
  749. }
  750. dlg.m_branch=branch;
  751. dlg.m_memberno=memberno;
  752. if(!m_card2no.IsEmpty ())
  753. {
  754. SelMemberCardFund seldlg;
  755. if (seldlg.DoModal() != IDOK)return;
  756. if (seldlg.m_radio1 == 1)
  757. {
  758. dlg.m_card2no = m_card2no;
  759. dlg.m_card2balance = m_List1.GetItemText(iItem, 8 + m_nAdd);
  760. }
  761. }
  762. dlg.DoModal();
  763. GetData();
  764. *pResult = 0;
  765. }
  766. void ShowMember2::OnButton24()
  767. {
  768. // TODO: Add your control notification handler code here
  769. POSITION pos;
  770. pos=m_List1.GetFirstSelectedItemPosition();
  771. if(pos==NULL)
  772. {
  773. AfxMessageBox("请先选中您要发送短信的会员!", MB_ICONINFORMATION);
  774. return;
  775. }
  776. int iItem;
  777. CStringArray array;
  778. while (pos)
  779. {
  780. iItem = m_List1.GetNextSelectedItem(pos);
  781. if(!m_List1.GetItemText (iItem, 3+m_nAdd).IsEmpty ())
  782. array.Add (m_List1.GetItemText (iItem, 3+m_nAdd));
  783. }
  784. SendMsgDlg dlg;
  785. dlg.m_mode=1;
  786. dlg.m_pArray=&array;
  787. dlg.DoModal ();
  788. }
  789. void ShowMember2::HidePrice()
  790. {
  791. #ifdef LKAY_VERSION
  792. if(IsHasRights2new(31))return;
  793. for(int i=0; i< m_List1array.GetSize (); i++)
  794. {
  795. m_List1array.ElementAt (i).SetAt (3, "***");
  796. }
  797. #endif
  798. }