Booking2.cpp 81 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161
  1. // Booking2.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "ylgl.h"
  5. #include "Booking2.h"
  6. //#include "InputMemberno.h"
  7. #include "SelMemberType.h"
  8. #include "AddMember.h"
  9. #include "InputCard2Dlg.h"
  10. #include "Login2.h"
  11. #ifdef _DEBUG
  12. #define new DEBUG_NEW
  13. #undef THIS_FILE
  14. static char THIS_FILE[] = __FILE__;
  15. #endif
  16. /////////////////////////////////////////////////////////////////////////////
  17. // Booking2 dialog time1
  18. Booking2::Booking2(CWnd* pParent /*=NULL*/)
  19. : CDialog(Booking2::IDD, pParent)
  20. {
  21. m_bModify = 0;
  22. m_bSave = 0;
  23. //}}AFX_DATA_INIT
  24. }
  25. void Booking2::DoDataExchange(CDataExchange* pDX)
  26. {
  27. CDialog::DoDataExchange(pDX);
  28. //{{AFX_DATA_MAP(Booking2)
  29. // NOTE: the ClassWizard will add DDX and DDV calls here
  30. //}}AFX_DATA_MAP
  31. }
  32. BEGIN_MESSAGE_MAP(Booking2, CDialog)
  33. ON_BN_CLICKED(IDC_BUTinfo1, OnBUTinfo1)
  34. ON_BN_CLICKED(IDC_BUTinfo2, OnBUTinfo2)
  35. ON_BN_CLICKED(IDC_BUTinfo3, OnBUTinfo3)
  36. ON_BN_CLICKED(IDC_BUTclose, OnBUTclose)
  37. ON_WM_CTLCOLOR()
  38. ON_BN_CLICKED(IDC_BUTinfo4, OnBUTinfo4)
  39. ON_BN_CLICKED(IDC_BUTsave, OnBUTsave)
  40. ON_BN_CLICKED(IDC_BUTnew, OnBUTnew)
  41. ON_BN_CLICKED(IDC_BUTprint, OnBUTprint)
  42. ON_BN_CLICKED(IDC_BUTimport, OnBUTimport)
  43. //}}AFX_MSG_MAP
  44. END_MESSAGE_MAP()
  45. /////////////////////////////////////////////////////////////////////////////
  46. // Booking2 message handlers
  47. void Booking2::OnBUTclose()
  48. {
  49. // TODO: Add your control notification handler code here
  50. if (m_bSave)
  51. CDialog::OnOK();
  52. else
  53. CDialog::OnCancel();
  54. }
  55. void Booking2::OnOK()
  56. {
  57. }
  58. void Booking2::OnCancel()
  59. {
  60. CDialog::OnCancel();
  61. }
  62. HBRUSH Booking2::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
  63. {
  64. HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
  65. // TODO: Change any attributes of the DC here
  66. if (nCtlColor == CTLCOLOR_STATIC && pWnd->GetDlgCtrlID() == IDC_STATIC2)
  67. {
  68. pDC->SetBkMode(TRANSPARENT); //设置字体背景为透明
  69. return (HBRUSH)::GetStockObject(WHITE_BRUSH); // 设置背景色
  70. }
  71. // TODO: Return a different brush if the default is not desired
  72. return hbr;
  73. }
  74. extern BOOL CALLBACK EnumChildProc2(HWND hwnd, LPARAM lParam);
  75. BOOL Booking2::OnInitDialog()
  76. {
  77. CDialog::OnInitDialog();
  78. // TODO: Add extra initialization here
  79. if ( m_bModify == 0 )
  80. {
  81. // Jeff 2015-05-19 开单时隐藏按钮;
  82. GetDlgItem(IDC_BUTinfo4)->ShowWindow(SW_HIDE);
  83. }
  84. if (m_bModify == 1)
  85. {
  86. SetWindowText("预约单-修改");
  87. GetDlgItem(IDC_BUTnew)->ShowWindow(0);
  88. GetDlgItem(IDC_BUTimport)->ShowWindow(0);
  89. GetDlgItem(IDC_BUTprint)->EnableWindow(1);
  90. #if JEFF_DELETE_ON // 2015.03.24 使用店长密码,不需要这块禁用按钮;
  91. GetDlgItem(IDC_BUTsave)->EnableWindow(IsHasRights2new(1));
  92. #endif
  93. // 如果拍照状态OK,禁用拍照时间edit和拍照状态commbox.
  94. }
  95. else if (m_bModify == 2)
  96. {
  97. SetWindowText("历史预约单");
  98. GetDlgItem(IDC_BUTnew)->ShowWindow(0);
  99. GetDlgItem(IDC_BUTimport)->ShowWindow(0);
  100. GetDlgItem(IDC_BUTprint)->EnableWindow(1);
  101. GetDlgItem(IDC_BUTsave)->EnableWindow(0);
  102. }
  103. CRect rc2;
  104. GetWindowRect(rc2);
  105. int dty = g_screenhei - 768;
  106. if (0)//dty>0)
  107. {
  108. g_rc.bottom -= dty;
  109. MoveWindow(g_rc);
  110. g_WidthScale2 = (float)g_rc.Width() / (float)rc2.Width(); // new/Old
  111. g_HeightScale2 = (float)g_rc.Height() / (float)rc2.Height();
  112. EnumChildWindows(m_hWnd, (WNDENUMPROC)EnumChildProc2, 0);
  113. g_rc.bottom += dty;
  114. MoveWindow(g_rc);
  115. }
  116. else
  117. {
  118. MoveWindow(g_rc);
  119. g_WidthScale2 = (float)g_rc.Width() / (float)rc2.Width(); // new/Old
  120. g_HeightScale2 = (float)g_rc.Height() / (float)rc2.Height();
  121. EnumChildWindows(m_hWnd, (WNDENUMPROC)EnumChildProc2, 0);
  122. }
  123. CRect rc;
  124. GetDlgItem(IDC_STATIC1)->GetWindowRect(rc);
  125. ScreenToClient(rc);
  126. GetDlgItem(IDC_STATIC2)->GetWindowRect(rc2);
  127. ScreenToClient(rc2);
  128. rc2.left = 0;
  129. rc2.top = 0;
  130. rc2.bottom = rc.top - 2;
  131. GetDlgItem(IDC_STATIC2)->MoveWindow(rc2);
  132. GetDlgItem(IDC_STATIC3)->MoveWindow(rc2);
  133. rc = rc2;
  134. rc.top = rc.bottom;
  135. rc.bottom += 1;
  136. GetDlgItem(IDC_STATIC4)->MoveWindow(rc);
  137. GetDlgItem(IDC_STATIC1)->GetWindowRect(rc2);
  138. ScreenToClient(rc2);
  139. rc.top = rc2.bottom;
  140. rc.bottom = rc.top + 1;
  141. GetDlgItem(IDC_STATIC5)->MoveWindow(rc);
  142. OnBUTinfo1();
  143. return TRUE; // return TRUE unless you set the focus to a control
  144. // EXCEPTION: OCX Property Pages should return FALSE
  145. }
  146. // Jeff 按钮:订单资料(第一个选项页,读取所有数据)
  147. void Booking2::OnBUTinfo1()//订单资料按钮;
  148. {
  149. // TODO: Add your control notification handler code here
  150. if (m_page1.GetSafeHwnd())m_page1.ShowWindow(SW_HIDE);
  151. if (m_page2.GetSafeHwnd())m_page2.ShowWindow(SW_HIDE);
  152. if (m_page3.GetSafeHwnd())m_page3.ShowWindow(SW_HIDE);
  153. if (m_page4.GetSafeHwnd())m_page4.ShowWindow(SW_HIDE);
  154. if (m_page1.GetSafeHwnd() == NULL)
  155. {
  156. CRect rc;
  157. GetDlgItem(IDC_STATIC1)->GetWindowRect(rc);
  158. ScreenToClient(rc);
  159. m_page1.m_rc = m_page2.m_rc = m_page3.m_rc = m_page4.m_rc = rc;
  160. g_sendhead.bsql = 0;
  161. g_sendhead.code[0] = 6; // 套系表taoxi;
  162. g_sendhead.code[1] = 7; // 套系商品1taoxishangpin1;
  163. g_sendhead.code[2] = 10; // 套系商品2taoxishangpin2;
  164. g_sendhead.code[3] = 4; // 商品shangpin;
  165. g_sendhead.code[4] = 82; // 冲印面积area;
  166. g_sendhead.code[5] = 68; // 人员管理membermanage;
  167. g_sendhead.code[6] = 127; // membercard2;
  168. g_sendhead.code[7] = 130; // membermanageblue;
  169. g_sendhead.code[8] = 131; // membercard2blue;
  170. g_sendhead.code[9] = 77; // taoxifg;
  171. g_sendhead.tabcount = 10; // 总共10个表;
  172. g_pMainWnd->ProcessChatMessageRequest2("show<>'隐藏'");
  173. DataToArray(
  174. &m_page1.m_List1array, \
  175. &m_page1.m_List2array, \
  176. &m_page1.m_List3array, \
  177. &m_page1.m_sparray, \
  178. &m_page2.m_areaarray, \
  179. &m_page3.m_List1array, \
  180. &m_page3.m_List2array, \
  181. &m_page3.m_List3array, \
  182. &m_page3.m_List4array, \
  183. &m_page3.m_List5array);
  184. if (m_bModify) // 预约单 - 修改;
  185. {
  186. CString id = m_id;
  187. g_sendhead.bsql = 0;
  188. CString filter = "id='" + id + "';id='" + id + "' and kind<>'5';id='" + id + "';id='" + id + "'";
  189. g_sendhead.code[0] = 11; // dindan;
  190. g_sendhead.code[1] = 56; // dindansp;
  191. g_sendhead.code[2] = 150; // dindanjd;
  192. #ifdef CHILD_VERSION
  193. g_sendhead.code[3] = 94; // client;
  194. #else
  195. g_sendhead.code[3]=52; // client;
  196. #endif
  197. g_sendhead.tabcount = 4; // 共4张表;
  198. g_bNoConnDlg = 1; // 设置连接服务器状态为:需要
  199. g_pMainWnd->ProcessChatMessageRequest2(filter);
  200. g_bNoConnDlg = 0;
  201. if (g_bSendOK == 0)
  202. {
  203. CDialog::OnCancel();
  204. return;
  205. }
  206. CArray<CStringArray, CStringArray>ClientArray;
  207. DataToArray(&g_List1array, &m_page1.m_Bakarray, &m_page1.m_List1arrayM, &ClientArray);
  208. m_page2.m_name1 = g_List1array.ElementAt(0).ElementAt(4);
  209. m_page2.m_name2 = g_List1array.ElementAt(0).ElementAt(5);
  210. m_page1.m_id = m_id;
  211. m_page1.m_taoxiid = g_List1array.ElementAt(0).ElementAt(6);
  212. m_page1.m_taoxiname = g_List1array.ElementAt(0).ElementAt(7);
  213. m_page1.m_taoxijiage = g_List1array.ElementAt(0).ElementAt(8);
  214. // m_page1.m_zs = g_List1array.ElementAt (0).ElementAt (9);
  215. CString zs = g_List1array.ElementAt(0).ElementAt(9);
  216. int pos = zs.Find("\\");
  217. if (pos != -1)
  218. {
  219. m_page1.m_zs = zs.Left(pos);
  220. m_page1.m_zs2 = zs.Right(zs.GetLength() - pos - 1);
  221. }
  222. else
  223. {
  224. m_page1.m_zs = zs;
  225. m_page1.m_zs2 = "";
  226. }
  227. m_page1.m_growthtxselname = g_List1array.ElementAt(0).ElementAt(54);
  228. m_page4.m_time1 = g_List1array.ElementAt(0).ElementAt(10);
  229. m_page4.m_time2 = g_List1array.ElementAt(0).ElementAt(11);
  230. #if JEFF_TEST_ON // 将结婚日期换到m_page2中显示;
  231. #ifndef CHILD_VERSION
  232. m_page2.m_time3 = g_List1array.ElementAt(0).ElementAt(12);
  233. #endif
  234. #else
  235. m_page4.m_time3 = g_List1array.ElementAt(0).ElementAt(12);
  236. #endif
  237. m_page4.m_time4 = g_List1array.ElementAt(0).ElementAt(21);
  238. m_page4.m_time5 = g_List1array.ElementAt(0).ElementAt(22);
  239. m_page4.m_time6 = g_List1array.ElementAt(0).ElementAt(48);
  240. m_page4.m_time8 = g_List1array.ElementAt(0).ElementAt(72);
  241. m_page4.m_time9 = g_List1array.ElementAt(0).ElementAt(73);
  242. m_page4.m_time10 = g_List1array.ElementAt(0).ElementAt(74);
  243. m_page3.m_bm = g_List1array.ElementAt(0).ElementAt(13);
  244. m_page3.m_ren = g_List1array.ElementAt(0).ElementAt(14);
  245. m_page1.m_payed1 = g_List1array.ElementAt(0).ElementAt(16);
  246. m_page4.m_status1 = g_List1array.ElementAt(0).ElementAt(25);
  247. m_page3.m_clothescount = g_List1array.ElementAt(0).ElementAt(26);
  248. m_page3.m_clothescount2 = g_List1array.ElementAt(0).ElementAt(27);
  249. m_page3.m_outside = g_List1array.ElementAt(0).ElementAt(28);
  250. m_page3.m_outside2 = g_List1array.ElementAt(0).ElementAt(29);
  251. m_page3.m_style = g_List1array.ElementAt(0).ElementAt(30);
  252. m_page3.m_memberno = g_List1array.ElementAt(0).ElementAt(47);
  253. m_page4.m_status2 = g_List1array.ElementAt(0).ElementAt(32);
  254. m_page4.m_status3 = g_List1array.ElementAt(0).ElementAt(33);
  255. m_page4.m_waiter1 = g_List1array.ElementAt(0).ElementAt(34);
  256. m_page4.m_waiter2 = g_List1array.ElementAt(0).ElementAt(35);
  257. m_page4.m_waiter3 = g_List1array.ElementAt(0).ElementAt(36);
  258. m_page4.m_waiter4 = g_List1array.ElementAt(0).ElementAt(37);
  259. m_page1.m_bz = g_List1array.ElementAt(0).ElementAt(38);
  260. m_page4.m_waiter5 = g_List1array.ElementAt(0).ElementAt(42);
  261. m_page4.m_waiter7 = g_List1array.ElementAt(0).ElementAt(43);
  262. m_page4.m_waiter8 = g_List1array.ElementAt(0).ElementAt(76); // Jeff 看版人
  263. m_page4.m_status4 = g_List1array.ElementAt(0).ElementAt(44);
  264. m_page4.m_status5 = g_List1array.ElementAt(0).ElementAt(45);
  265. m_page4.m_status6 = g_List1array.ElementAt(0).ElementAt(46);
  266. m_page4.m_status8 = g_List1array.ElementAt(0).ElementAt(55); // Jeff 看版状态
  267. m_page1.m_txtype = g_List1array.ElementAt(0).ElementAt(52);
  268. #ifdef LKAY_VERSION
  269. m_page1.m_dindantype = g_List1array.ElementAt (0).ElementAt (63);
  270. m_page1.m_contractno = g_List1array.ElementAt (0).ElementAt (64);
  271. m_page1.m_contractno2 = g_List1array.ElementAt (0).ElementAt (65);
  272. m_page3.m_cfno = g_List1array.ElementAt (0).ElementAt (66);
  273. m_page3.m_from = g_List1array.ElementAt (0).ElementAt (67);
  274. m_page3.m_reason = g_List1array.ElementAt (0).ElementAt (68);
  275. m_page4.m_time7 = g_List1array.ElementAt (0).ElementAt (69);
  276. m_page4.m_waiter12 = g_List1array.ElementAt (0).ElementAt (50);
  277. m_page4.m_waiter13 = g_List1array.ElementAt (0).ElementAt (70);
  278. m_page4.m_waiter14 = g_List1array.ElementAt (0).ElementAt (71);
  279. #else
  280. m_page1.m_from = g_List1array.ElementAt(0).ElementAt(67);
  281. #endif
  282. /////////////////////////////////
  283. #ifdef CHILD_VERSION
  284. m_page2.m_name1 = ClientArray.ElementAt(0).ElementAt(1);
  285. m_page2.m_name2 = ClientArray.ElementAt(0).ElementAt(2);
  286. m_page2.m_phone1 = ClientArray.ElementAt(0).ElementAt(3);
  287. m_page2.m_phone2 = ClientArray.ElementAt(0).ElementAt(4);
  288. m_page2.m_qq1 = ClientArray.ElementAt(0).ElementAt(5);
  289. m_page2.m_addr1 = ClientArray.ElementAt(0).ElementAt(6);
  290. m_page2.m_birthday1 = ClientArray.ElementAt(0).ElementAt(7);
  291. m_page2.m_area = ClientArray.ElementAt(0).ElementAt(8);
  292. m_page2.m_sex = ClientArray.ElementAt(0).ElementAt(9);
  293. m_page2.m_zodiac = ClientArray.ElementAt(0).ElementAt(10);
  294. m_page2.m_check1 = atoi(ClientArray.ElementAt(0).ElementAt(11));
  295. #ifdef LKAY_VERSION
  296. if(IsHasRights2new(1)==0)
  297. {
  298. m_page2.m_addr1="***";
  299. m_page2.m_phone1="***";
  300. m_page2.m_phone2="***";
  301. m_page2.m_qq1="***";
  302. }
  303. #else
  304. #if JEFF_TEST_OFF // 当修改预约单时,没有权限的用户登陆会显示成*号;
  305. if(IsHasRights2new(1)==0 && IsHasRights2new(31)==0)
  306. {
  307. m_page2.m_addr1="***";
  308. m_page2.m_phone1="***";
  309. m_page2.m_phone2="***";
  310. m_page2.m_qq1="***";
  311. }
  312. #endif
  313. #endif
  314. ///////////////////////////////////
  315. #else
  316. m_page2.m_name1=ClientArray.ElementAt (0).ElementAt (1);
  317. m_page2.m_name2=ClientArray.ElementAt (0).ElementAt (2);
  318. m_page2.m_phone1=ClientArray.ElementAt (0).ElementAt (3);
  319. m_page2.m_phone2=ClientArray.ElementAt (0).ElementAt (4);
  320. m_page2.m_qq1=ClientArray.ElementAt (0).ElementAt (5);
  321. m_page2.m_qq2=ClientArray.ElementAt (0).ElementAt (6);
  322. m_page2.m_addr1=ClientArray.ElementAt (0).ElementAt (7);
  323. m_page2.m_addr2=ClientArray.ElementAt (0).ElementAt (8);
  324. m_page2.m_occupation1=ClientArray.ElementAt (0).ElementAt (9);
  325. m_page2.m_occupation2=ClientArray.ElementAt (0).ElementAt (10);
  326. m_page2.m_birthday1=ClientArray.ElementAt (0).ElementAt (11);
  327. m_page2.m_birthday2=ClientArray.ElementAt (0).ElementAt (12);
  328. m_page2.m_area=ClientArray.ElementAt (0).ElementAt (13);
  329. m_page2.m_area2=ClientArray.ElementAt (0).ElementAt (14);
  330. m_page2.m_check1=atoi(ClientArray.ElementAt (0).ElementAt (15));
  331. m_page2.m_check2=atoi(ClientArray.ElementAt (0).ElementAt (16));
  332. #if JEFF_TEST_ON // 将m_page4的结婚日期复选框改由m_page2显示;
  333. m_page2.m_check3=atoi(ClientArray.ElementAt (0).ElementAt (17));
  334. #else
  335. m_page4.m_check3=atoi(ClientArray.ElementAt (0).ElementAt (17));
  336. #endif
  337. #if JEFF_TEST_OFF // 当修改预约单时,没有权限的用户登陆会显示成*号;
  338. if(IsHasRights2new(1)==0 && IsHasRights2new(31)==0)
  339. {
  340. m_page2.m_addr1="***";
  341. m_page2.m_phone1="***";
  342. m_page2.m_phone2="***";
  343. m_page2.m_qq1="***";
  344. }
  345. #endif
  346. #endif
  347. }
  348. m_page1.Create(BookingPage1::IDD, this);
  349. #ifdef CHILD_VERSION
  350. m_page2.Create(IDD_DLGBookingPage22, this);
  351. #else
  352. m_page2.Create (IDD_DLGBookingPage2, this);
  353. #endif
  354. m_page3.Create(IDD_DLGBookingPage3, this);
  355. m_page4.Create(IDD_DLGBookingPage4, this);
  356. }
  357. #if JEFF_TEST_ON // 当修改预约单时,没有权限的用户登陆会显示成*号;
  358. if (m_bModify) // 预约单 - 修改;
  359. {
  360. if (IsHasRights2new(1) == 0 && IsHasRights2new(31) == 0)
  361. m_page2.SetPasswordChar();
  362. }
  363. #endif
  364. m_page1.ShowWindow(SW_SHOW);
  365. CString str;
  366. #ifdef CHILD_VERSION
  367. str = "\r\n\r\n 1. 预约单录入-订单资料\r\n 2. 请在下方录入订单资料后点客人资料进一步录入,打*号的内容是必填项目\r\n 3. 宝宝成长套系录入:可在套系类别中添加一个'成长套系', 然后选择套系类别为成长套系";
  368. #else
  369. str="\r\n\r\n 1. 预约单录入-订单资料\r\n 2. 请在下方录入订单资料后点客人资料进一步录入,打*号的内容是必填项目\r\n ";
  370. #endif
  371. GetDlgItem(IDC_STATIC2)->SetWindowText(str);
  372. }
  373. // Jeff 按钮:客人资料
  374. void Booking2::OnBUTinfo2() //客人资料按钮;
  375. {
  376. // TODO: Add your control notification handler code here
  377. if (m_page1.GetSafeHwnd())m_page1.ShowWindow(SW_HIDE);
  378. if (m_page2.GetSafeHwnd())m_page2.ShowWindow(SW_HIDE);
  379. if (m_page3.GetSafeHwnd())m_page3.ShowWindow(SW_HIDE);
  380. if (m_page4.GetSafeHwnd())m_page4.ShowWindow(SW_HIDE);
  381. m_page2.ShowWindow(SW_SHOW);
  382. CString str;
  383. str = "\r\n\r\n 1. 预约单录入-客人资料\r\n 2. 请在下方录入客人资料后点其它资料进一步录入,打*号的内容是必填项目";
  384. GetDlgItem(IDC_STATIC2)->SetWindowText(str);
  385. }
  386. // Jeff 按钮:其它资料;
  387. void Booking2::OnBUTinfo3() //其他资料按钮;
  388. {
  389. // TODO: Add your control notification handler code here
  390. if (m_page1.GetSafeHwnd())m_page1.ShowWindow(SW_HIDE);
  391. if (m_page2.GetSafeHwnd())m_page2.ShowWindow(SW_HIDE);
  392. if (m_page3.GetSafeHwnd())m_page3.ShowWindow(SW_HIDE);
  393. if (m_page4.GetSafeHwnd())m_page4.ShowWindow(SW_HIDE);
  394. #if JEFF_TEST_ON
  395. // 传参:顾客姓名,顾客手机号,顾客订单号,顾客订单套系价格;
  396. // 不区分儿童和婚纱版本,统一使用顾客1的姓名和手机号;
  397. m_page3.m_strCustomer = m_page2.m_name1;
  398. m_page3.m_strPhone = m_page2.m_phone1;
  399. m_page3.m_strOrderNum = m_page1.m_id;
  400. m_page3.m_strTaoxiJiaoge = m_page1.m_taoxijiage;
  401. #endif
  402. m_page3.ShowWindow(SW_SHOW);
  403. CString str;
  404. str = "\r\n\r\n 1. 预约单录入-其它资料\r\n 2. 请在下方录入其它资料后点日期安排进一步录入,打*号的内容是必填项目";
  405. GetDlgItem(IDC_STATIC2)->SetWindowText(str);
  406. if (m_bModify == 0) m_page3.ShowMemberDlg();
  407. }
  408. // Jeff 按钮:时间安排;
  409. void Booking2::OnBUTinfo4() //时间安排按钮;
  410. {
  411. // Jeff.add;
  412. if (m_bModify == 1)
  413. {
  414. SetDlgItemText(IDC_BUTinfo4, "流程查看");
  415. }
  416. // TODO: Add your control notification handler code here
  417. if (m_page1.GetSafeHwnd())m_page1.ShowWindow(SW_HIDE);
  418. if (m_page2.GetSafeHwnd())m_page2.ShowWindow(SW_HIDE);
  419. if (m_page3.GetSafeHwnd())m_page3.ShowWindow(SW_HIDE);
  420. if (m_page4.GetSafeHwnd())m_page4.ShowWindow(SW_HIDE);
  421. m_page4.ShowWindow(SW_SHOW);
  422. CString str;
  423. str = "\r\n\r\n 1. 预约单录入-日期安排\r\n 2. 请在下方录入客人拍照日期,选片日期,选片人等信息后点保存订单";
  424. GetDlgItem(IDC_STATIC2)->SetWindowText(str);
  425. }
  426. extern BOOL CovertDate(CString &date, CString &date2);
  427. // Jeff 按钮:保存订单;
  428. void Booking2::OnBUTsave() //保存订单
  429. {
  430. m_bSave = 1;
  431. if (this->m_bModify)
  432. {
  433. OnBUTsave2();
  434. return;
  435. }
  436. // TODO: Add your control notification handler code here
  437. if (!m_page1.CheckOK())
  438. {
  439. AfxMessageBox("资料不全,打*号的项目必须填写!", MB_ICONINFORMATION);
  440. OnBUTinfo1(); return;
  441. }
  442. if (!m_page2.CheckOK())
  443. {
  444. AfxMessageBox("资料不全,打*号的项目必须填写!", MB_ICONINFORMATION);
  445. OnBUTinfo2(); return;
  446. }
  447. if (!m_page3.CheckOK())
  448. {
  449. AfxMessageBox("资料不全,打*号的项目必须填写!", MB_ICONINFORMATION);
  450. OnBUTinfo3(); return;
  451. }
  452. if (!m_page4.CheckOK())
  453. {
  454. AfxMessageBox("资料不全,打*号的项目必须填写!", MB_ICONINFORMATION);
  455. OnBUTinfo4(); return;
  456. }
  457. CString id = m_page1.m_id;
  458. CString sql;
  459. if (atoi(g_cominfoarray.ElementAt(0).ElementAt(121)))
  460. {
  461. g_bNoConnDlg = 1;
  462. CString date = g_date;
  463. sql = "select count(*) as cot from dindan where id='" + id + "' ";
  464. g_sendhead.bsql = 1;
  465. g_pMainWnd->ProcessChatMessageRequest2(sql);
  466. g_bNoConnDlg = 0;
  467. if (g_bSendOK == 0)return;
  468. if (g_ncount)
  469. {
  470. AfxMessageBox("已有此单号的订单,请重新编写单号!", MB_ICONINFORMATION);
  471. OnBUTinfo1();
  472. return;
  473. }
  474. }
  475. else
  476. {
  477. g_bNoConnDlg = 1;
  478. CString date = g_date;
  479. sql = "select count(*) as cot from dindan where id='" + id + "' ";
  480. g_sendhead.bsql = 1;
  481. g_pMainWnd->ProcessChatMessageRequest2(sql);
  482. g_bNoConnDlg = 0;
  483. if (g_bSendOK == 0)return;
  484. if (g_ncount) // Jeff 查询dindan表时返回的记录数:g_ncount;
  485. {
  486. g_bNoConnDlg = 1;
  487. CString date = g_date; date.Replace("-", "");
  488. sql = "select max(id) as cot from dindan where id like '" + date + "%' ";
  489. g_sendhead.bsql = 1;
  490. g_pMainWnd->ProcessChatMessageRequest2(sql);
  491. g_bNoConnDlg = 0;
  492. if (g_bSendOK == 0)return;
  493. date.Replace("-", "");
  494. id.Format("%s-%03d", date, g_ncount + 1);
  495. }
  496. }
  497. if (IsHasRights2(0) == 0)
  498. return;
  499. // TODO: Add your control notification handler code here
  500. CString m_taoxiid = m_page1.m_taoxiid;
  501. CString taoxiname = m_page1.m_taoxiname;
  502. CString m_growthtxselname = m_page1.m_growthtxselname;
  503. CString m_taoxijiage = m_page1.m_taoxijiage;
  504. CString m_payed1 = m_page1.m_payed1;
  505. // CString m_zs=m_page1.m_zs;
  506. CString m_zs = m_page1.m_zs + "\\" + m_page1.m_zs2;
  507. CString txtype = m_page1.m_txtype;
  508. CString m_bz = m_page1.m_bz;
  509. CString m_authorize = m_page1.m_authorize;
  510. BOOL m_bGrowthTX = m_page1.m_bGrowthTX;
  511. #ifdef LKAY_VERSION
  512. CString m_dindantype=m_page1.m_dindantype;
  513. CString m_contractno=m_page1.m_contractno;
  514. CString m_contractno2=m_page1.m_contractno2;
  515. CString m_cfno=m_page3.m_cfno;
  516. CString m_from=m_page3.m_from;
  517. CString m_reason=m_page3.m_reason;
  518. CString m_time7=m_page4.m_time7;
  519. CString m_waiter12=m_page4.m_waiter12;
  520. CString m_waiter13=m_page4.m_waiter13;
  521. CString m_waiter14=m_page4.m_waiter14;
  522. #else
  523. CString m_from = m_page1.m_from;
  524. #endif
  525. CString bm = m_page3.m_bm;
  526. CString ren = m_page3.m_ren;
  527. CString m_clothescount = m_page3.m_clothescount;
  528. CString m_clothescount2 = m_page3.m_clothescount2;
  529. CString m_outside = m_page3.m_outside;
  530. CString m_outside2 = m_page3.m_outside2;
  531. CString m_style = m_page3.m_style;
  532. CString strmoney = "0";
  533. CString m_discount;
  534. if (atof(m_taoxijiage) > 0 && (m_page1.m_saleprice1 + m_page1.m_saleprice2) > 0)
  535. m_discount.Format("%0.2f", min(10.0, (atof(m_taoxijiage) * 10) / (m_page1.m_saleprice1 + m_page1.m_saleprice2)));
  536. else
  537. m_discount = "0";
  538. #ifdef CHILD_VERSION
  539. CString m_name1 = m_page2.m_name1;
  540. CString m_name2 = m_page2.m_name2;
  541. CString m_phone1 = m_page2.m_phone1;
  542. CString m_phone2 = m_page2.m_phone2;
  543. CString m_qq1 = m_page2.m_qq1;
  544. CString m_addr1 = m_page2.m_addr1;
  545. CString m_birthday1 = m_page2.m_birthday1;
  546. CString m_area = m_page2.m_area;
  547. BOOL m_check1 = m_page2.m_check1;
  548. CString m_zodiac = m_page2.m_zodiac;
  549. CString m_sex = m_page2.m_sex;
  550. CString m_birthday2, m_qq2, m_addr2;
  551. #else
  552. CString m_name1=m_page2.m_name1;
  553. CString m_name2=m_page2.m_name2;
  554. CString m_phone1=m_page2.m_phone1;
  555. CString m_phone2=m_page2.m_phone2;
  556. CString m_qq1=m_page2.m_qq1;
  557. CString m_qq2=m_page2.m_qq2;
  558. CString m_addr1=m_page2.m_addr1;
  559. CString m_addr2=m_page2.m_addr2;
  560. CString m_occupation1=m_page2.m_occupation1;
  561. CString m_occupation2=m_page2.m_occupation2;
  562. CString m_birthday1=m_page2.m_birthday1;
  563. CString m_birthday2=m_page2.m_birthday2;
  564. CString m_area=m_page2.m_area;
  565. CString m_area2=m_page2.m_area2;
  566. BOOL m_check1=m_page2.m_check1;
  567. BOOL m_check2=m_page2.m_check2;
  568. #endif
  569. CString m_time1 = m_page4.m_time1;
  570. CString m_time2 = m_page4.m_time2;
  571. #if JEFF_TEST_ON // 结婚日期;
  572. #ifndef CHILD_VERSION
  573. CString m_time3 = m_page2.m_time3;
  574. #else
  575. CString m_time3 = _T("");
  576. #endif
  577. #else
  578. CString m_time3 = m_page4.m_time3;
  579. #endif
  580. CString m_time4 = m_page4.m_time4;
  581. CString m_time5 = m_page4.m_time5;
  582. CString m_time6 = m_page4.m_time6;
  583. CString m_time8 = m_page4.m_time8;
  584. CString m_time9 = m_page4.m_time9;
  585. CString m_time10 = m_page4.m_time10;
  586. CString m_waiter1 = m_page4.m_waiter1;
  587. CString m_waiter2 = m_page4.m_waiter2;
  588. CString m_waiter3 = m_page4.m_waiter3;
  589. CString m_waiter4 = m_page4.m_waiter4;
  590. CString m_waiter5 = m_page4.m_waiter5;
  591. CString m_waiter7 = m_page4.m_waiter7;
  592. CString m_waiter8 = m_page4.m_waiter8; // Jeff 看版人waiter8
  593. CString m_status1 = m_page4.m_status1;
  594. CString m_status2 = m_page4.m_status2;
  595. CString m_status3 = m_page4.m_status3;
  596. CString m_status4 = m_page4.m_status4;
  597. CString m_status5 = m_page4.m_status5;
  598. CString m_status6 = m_page4.m_status6;
  599. //CString m_status8=m_page4.m_status8; // Jeff 看版状态status8
  600. #if JEFF_TEST_ON
  601. #ifndef CHILD_VERSION
  602. BOOL m_check3 = m_page2.m_check3;
  603. #else
  604. BOOL m_check3 = FALSE;
  605. #endif
  606. #else
  607. BOOL m_check3 = m_page4.m_check3;
  608. #endif
  609. CString str, str2;
  610. CString strRes1, strRes2;
  611. ChinesePinYin::GetFirstLetter(m_name1, strRes1);
  612. ChinesePinYin::GetFirstLetter(m_name2, strRes2);
  613. CString m_memberno = m_page3.m_memberno;
  614. CString m_membernotemp = m_memberno;
  615. if (m_page3.m_type)m_memberno.Empty();
  616. if (txtype == "成长套系" && m_growthtxselname.IsEmpty() == 0)
  617. {
  618. taoxiname += "cztx";
  619. }
  620. // Jeff add;
  621. CString strInputTime;
  622. strInputTime = CTime::GetCurrentTime().Format("%Y-%m-%d %H:%M:%S");
  623. // end;
  624. #if 0 // Jeff 原版
  625. sql.Format("insert into [dindan]([id],[growthtxselname],[money1],[name1],[name2],[taoxiid],[taoxiname],[taoxijiage],[taoxizs],[time1],[time2],[time3],[time4],[time5],[time6],[time8],[time9],[time10],[bm],[ren],[discount],[payed1],[status],[status2],[status3],[status4],[status5],[status6],[status7],[status8],[urgent],[bz],[pinyin1],[pinyin2],[clothescount],[clothescount2],[outside],[outside2],[style],[waiter1],[waiter2],[waiter3],[waiter4],[waiter5],[waiter6],[waiter7],[memberno],[txtype],[tichenren1],[tichenren2],[tichenren3],[tichenren4],[tichenren5],[phone1],[phone2],[authorize],[from]) values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','未刻','未看','否','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','','','','','','%s','%s','%s','%s')",
  626. id,m_growthtxselname,strmoney,m_name1,m_name2,m_taoxiid,taoxiname,m_taoxijiage,m_zs,m_time1,m_time2,m_time3,m_time4,m_time5,m_time6,m_time8,m_time9,m_time10,bm,ren,m_discount,m_payed1,m_status1,m_status2,m_status3,m_status4,m_status5,m_status6,FilterBZ(m_bz),strRes1,strRes2,
  627. m_clothescount,m_clothescount2,m_outside,m_outside2,m_style,m_waiter1,m_waiter2,m_waiter3,m_waiter4,m_waiter5,g_user.name,m_waiter7,m_memberno,txtype,m_phone1,m_phone2,m_authorize,m_from
  628. );
  629. #else// Jeff添加看设计人和看设计状态;
  630. #if 0// Jeff:原没有选片录入和录入时间;
  631. sql.Format("insert into [dindan]([id],[growthtxselname],[money1],[name1],[name2],[taoxiid],[taoxiname],[taoxijiage],[taoxizs],[time1],[time2],[time3],[time4],[time5],[time6],[time8],[time9],[time10],[bm],[ren],[discount],[payed1],[status],[status2],[status3],[status4],[status5],[status6],[status7],[status8],[urgent],[bz],[pinyin1],[pinyin2],[clothescount],[clothescount2],[outside],[outside2],[style],[waiter1],[waiter2],[waiter3],[waiter4],[waiter5],[waiter6],[waiter7],[waiter8],[memberno],[txtype],[tichenren1],[tichenren2],[tichenren3],[tichenren4],[tichenren5],[phone1],[phone2],[authorize],[from])values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','未刻','未看','否','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','','','','','','%s','%s','%s','%s')",
  632. id,m_growthtxselname,strmoney,m_name1,m_name2,m_taoxiid,taoxiname, m_taoxijiage,m_zs,m_time1,m_time2,m_time3,m_time4,m_time5,m_time6,m_time8,m_time9,m_time10,bm,ren,m_discount,m_payed1,m_status1,m_status2,m_status3,m_status4,m_status5,m_status6,FilterBZ(m_bz),strRes1,strRes2,
  633. m_clothescount,m_clothescount2,m_outside,m_outside2,m_style,m_waiter1,m_waiter2,m_waiter3,m_waiter4,m_waiter5,g_user.name,m_waiter7,m_waiter8,
  634. m_memberno,txtype,m_phone1,m_phone2,m_authorize,m_from);
  635. #else
  636. sql.Format("insert into [dindan]([id],[growthtxselname],[money1],[name1],[name2],[taoxiid],[taoxiname],[taoxijiage],[taoxizs],[time1],[time2],[time3],[time4],[time5],[time6],[time8],[time9],[time10],[bm],[ren],[discount],[payed1],[status],[status2],[status3],[status4],[status5],[status6],[status7],[status8],[urgent],[bz],[pinyin1],[pinyin2],[clothescount],[clothescount2],[outside],[outside2],[style],[waiter1],[waiter2],[waiter3],[waiter4],[waiter5],[waiter6],[waiter7],[waiter8],[memberno],[txtype],[tichenren1],[tichenren2],[tichenren3],[tichenren4],[tichenren5],[phone1],[phone2],[authorize],[from],[xplrr],[xplrtime])values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','未刻','未看','否','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','','','','','','%s','%s','%s','%s','%s','%s')",
  637. id, m_growthtxselname, strmoney, m_name1, m_name2, m_taoxiid, taoxiname, m_taoxijiage, m_zs,
  638. m_time1, m_time2, m_time3, m_time4, m_time5, m_time6, m_time8, m_time9, m_time10, bm, ren, m_discount, m_payed1,
  639. m_status1, m_status2, m_status3, m_status4, m_status5, m_status6, FilterBZ(m_bz), strRes1, strRes2,
  640. m_clothescount, m_clothescount2, m_outside, m_outside2, m_style, m_waiter1, m_waiter2, m_waiter3, m_waiter4, m_waiter5, g_user.name, m_waiter7, m_waiter8,
  641. m_memberno, txtype, m_phone1, m_phone2, m_authorize, m_from, g_user.name, CTime::GetCurrentTime().Format("%Y-%m-%d %H:%M:%S"));
  642. #endif
  643. #endif
  644. #ifdef LKAY_VERSION
  645. #if 0 // Jeff 原版
  646. sql.Format ("insert into [dindan]([id],[growthtxselname],[money1],[name1],[name2],[taoxiid],[taoxiname],[taoxijiage],[taoxizs],[time1],[time2],[time3],[time4],[time5],[time6],[time8],[time9],[time10],[bm],[ren],[discount],[payed1],[status],[status2],[status3],[status4],[status5],[status6],[status7],[status8],[urgent],[bz],[pinyin1],[pinyin2],[clothescount],[clothescount2],[outside],[outside2],[style],[waiter1],[waiter2],[waiter3],[waiter4],[waiter5],[waiter6],[waiter7],[memberno],[txtype],[tichenren1],[tichenren2],[tichenren3],[tichenren4],[tichenren5],[phone1],[phone2],[dindantype],[contractno1],[contractno2],[cfno],[from],[reason],[time7],[waiter12],[waiter13],[waiter14],[authorize])values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','未刻','未看','否','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','','','','','','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')",
  647. id,m_growthtxselname,strmoney,m_name1,m_name2,m_taoxiid,taoxiname,m_taoxijiage,m_zs,m_time1,
  648. m_time2,m_time3,m_time4,m_time5,m_time6,m_time8,m_time9,m_time10,bm,ren,m_discount,m_payed1,
  649. m_status1,m_status2,m_status3,m_status4,m_status5,m_status6,FilterBZ(m_bz),strRes1,strRes2,
  650. m_clothescount,m_clothescount2,m_outside,m_outside2,m_style,m_waiter1,m_waiter2,m_waiter3,m_waiter4,m_waiter5,
  651. g_user.name,m_waiter7,m_memberno,txtype,m_phone1,m_phone2,m_dindantype,m_contractno,m_contractno2,m_cfno,m_from,m_reason,m_time7,m_waiter12,m_waiter13,m_waiter14,m_authorize);
  652. #else // Jeff添加看设计人和看设计状态;
  653. sql.Format ("insert into [dindan]([id],[growthtxselname],[money1],[name1],[name2],[taoxiid],[taoxiname],[taoxijiage],[taoxizs],[time1],[time2],[time3],[time4],[time5],[time6],[time8],[time9],[time10],[bm],[ren],[discount],[payed1],[status],[status2],[status3],[status4],[status5],[status6],[status7],[status8],[urgent],[bz],[pinyin1],[pinyin2],[clothescount],[clothescount2],[outside],[outside2],[style],[waiter1],[waiter2],[waiter3],[waiter4],[waiter5],[waiter6],[waiter7],[waiter8],[memberno],[txtype],[tichenren1],[tichenren2],[tichenren3],[tichenren4],[tichenren5],[phone1],[phone2],[dindantype],[contractno1],[contractno2],[cfno],[from],[reason],[time7],[waiter12],[waiter13],[waiter14],[authorize],[xplrr],[xplrtime]) values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','未刻','未看','否','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','','','','','','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')",
  654. id,m_growthtxselname,strmoney,m_name1,m_name2,m_taoxiid,taoxiname,m_taoxijiage,m_zs,m_time1,m_time2,m_time3,m_time4,m_time5,m_time6,m_time8,m_time9,m_time10,bm,ren,m_discount,m_payed1,
  655. m_status1,m_status2,m_status3,m_status4,m_status5,m_status6,FilterBZ(m_bz),strRes1,strRes2,m_clothescount,m_clothescount2,m_outside,m_outside2,m_style,m_waiter1,m_waiter2,m_waiter3,m_waiter4,m_waiter5,g_user.name,m_waiter7,m_waiter8,
  656. m_memberno,txtype,m_phone1,m_phone2,m_dindantype,m_contractno,m_contractno2,m_cfno,m_from,m_reason,m_time7,m_waiter12,m_waiter13,m_waiter14,m_authorize,g_user.name,CTime::GetCurrentTime().Format("%Y-%m-%d %H:%M:%S"));
  657. #endif
  658. #endif
  659. CString sql2;
  660. CStringArray idarray;
  661. idarray.Add(id);
  662. #ifdef CHILD_VERSION
  663. sql2.Format("###insert into [client]([name1],[name2],[phone1],[phone2],[qq1],[addr1],[birthday1],[id],[area],[sex],[zodiac],[check1])values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%d')", m_name1, m_name2, m_phone1, m_phone2, m_qq1, m_addr1, m_birthday1, id, m_area, m_sex, m_zodiac, m_check1);
  664. sql += sql2;
  665. if (txtype == "成长套系" && m_growthtxselname.IsEmpty() == 0)
  666. {
  667. CString sqltemp = sql;
  668. CString taoxinametemp = taoxiname.Left(taoxiname.GetLength() - 4);
  669. CString m_selname = m_growthtxselname;
  670. int pos = m_selname.Find(",");
  671. CStringArray selnamearray;
  672. while (pos != -1)
  673. {
  674. selnamearray.Add(m_selname.Left(pos));
  675. m_selname = m_selname.Right(m_selname.GetLength() - pos - 1);
  676. pos = m_selname.Find(",");
  677. }
  678. selnamearray.Add(m_selname);
  679. int idpos = atoi(id.Right(3));
  680. CString newid, temp;
  681. for (int ii = 0; ii < selnamearray.GetSize(); ii++)
  682. {
  683. taoxinametemp = taoxiname; taoxinametemp += selnamearray.ElementAt(ii);
  684. if (ii == 0)
  685. {
  686. sql.Replace(taoxiname, taoxinametemp);
  687. continue;
  688. }
  689. newid.Format("%s%03d", id.Left(id.GetLength() - 3), ++idpos); idarray.Add(newid);
  690. temp = sqltemp;
  691. temp.Replace(id, newid);
  692. temp.Replace(taoxiname, taoxinametemp);
  693. sql += "###" + temp;
  694. }
  695. }
  696. if (atoi(g_cominfoarray.ElementAt(0).ElementAt(39)))
  697. {
  698. CString m_content3 = g_cominfoarray.ElementAt(0).ElementAt(40);
  699. CString str, timestamp;
  700. timestamp = "msgtimestamp";
  701. {
  702. CString name;
  703. if (!m_name1.IsEmpty())
  704. name = m_name1 + ",";
  705. name += m_name2;
  706. name.TrimRight(",");
  707. if (name.IsEmpty() == 0 && CheckPhoneType(m_phone1) != -1 && CheckBadWords(name, 0))
  708. {
  709. str = name + m_content3;
  710. str.Replace("xxx小朋友", "");
  711. int count = GetLengthEx(str) / MSG_LENGTH;
  712. if (GetLengthEx(str) % MSG_LENGTH)
  713. count++;
  714. CString scount;
  715. scount.Format("%d", count);
  716. #if JEFF_TEST_ON
  717. sql2.Format(INSERT_SENDREG, _T("3"), m_phone1, str, timestamp, scount, _T("0"), _T("0"), _T("0"), _T("系统自动发送"));
  718. sql += _T("###") + sql2;
  719. #else
  720. sql2="###insert into [sendreg]([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('"+m_phone1+"','"+str+"','"+timestamp+"','"+scount+"','0','0','0','系统自动发送')";
  721. sql+=sql2;
  722. #endif
  723. }
  724. }
  725. }
  726. #else
  727. sql2.Format ("###insert into [client]([name1],[name2],[phone1],[phone2],[qq1],[qq2],[addr1],[addr2],[occupation1],[occupation2],[birthday1],[birthday2],[id],[area],[area2],[check1],[check2],[check3])values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%d','%d','%d')",m_name1,m_name2,m_phone1,m_phone2,m_qq1,m_qq2,m_addr1,m_addr2,m_occupation1,m_occupation2,m_birthday1,m_birthday2,id,m_area,m_area2,m_check1,m_check2,m_check3);
  728. sql+=sql2;
  729. if(txtype=="成长套系" && m_growthtxselname.IsEmpty ()==0)
  730. {
  731. CString sqltemp=sql;
  732. CString taoxinametemp=taoxiname.Left(taoxiname.GetLength()-4);
  733. CString m_selname=m_growthtxselname;
  734. int pos=m_selname.Find (",");
  735. CStringArray selnamearray;
  736. while(pos!=-1)
  737. {
  738. selnamearray.Add (m_selname.Left (pos));
  739. m_selname=m_selname.Right (m_selname.GetLength ()-pos-1);
  740. pos=m_selname.Find (",");
  741. }
  742. selnamearray.Add (m_selname);
  743. int idpos=atoi(id.Right (3));
  744. CString newid,temp;
  745. for(int ii=0; ii<selnamearray.GetSize (); ii++)
  746. {
  747. taoxinametemp=taoxiname;taoxinametemp+=selnamearray.ElementAt (ii);
  748. if(ii==0)
  749. {
  750. sql.Replace (taoxiname, taoxinametemp);
  751. continue;
  752. }
  753. newid.Format ("%s%03d", id.Left (id.GetLength ()-3), ++idpos);idarray.Add(newid);
  754. temp=sqltemp;
  755. temp.Replace (id, newid);
  756. temp.Replace (taoxiname, taoxinametemp);
  757. sql+="###"+temp;
  758. }
  759. }
  760. if(atoi(g_cominfoarray.ElementAt(0).ElementAt(39)))
  761. {
  762. CString m_content3 = g_cominfoarray.ElementAt(0).ElementAt(40);
  763. CString str,timestamp;
  764. timestamp="msgtimestamp";
  765. int pos=m_content3.Find("xxx先生/女士");
  766. if(pos!=-1)
  767. {
  768. if(m_name1.IsEmpty ()==0 && CheckPhoneType(m_phone1)!=-1 && CheckBadWords(m_name1,0))
  769. {
  770. str=m_content3;
  771. str.Replace ("xxx先生/女士", m_name1+"先生");
  772. int count=GetLengthEx(str)/MSG_LENGTH;
  773. if(GetLengthEx(str)%MSG_LENGTH)
  774. count++;
  775. CString scount;
  776. scount.Format ("%d", count);
  777. #if JEFF_TEST_ON
  778. sql2.Format(INSERT_SENDREG, _T("3"), m_phone1, str, timestamp, scount, _T("0"), _T("0"), _T("0"), _T("系统自动发送"));
  779. sql += _T("###") + sql2;
  780. #else
  781. sql2="###insert into [sendreg]([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('"+m_phone1+"','"+str+"','"+timestamp+"','"+scount+"','0','0','0','系统自动发送')";
  782. sql+=sql2;
  783. #endif
  784. }
  785. if(m_name2.IsEmpty ()==0 && CheckPhoneType(m_phone2)!=-1 && CheckBadWords(m_name2,0) )
  786. {
  787. str=m_content3;
  788. str.Replace ("xxx先生/女士", m_name2+"女士");
  789. int count=GetLengthEx(str)/MSG_LENGTH;
  790. if(GetLengthEx(str)%MSG_LENGTH)
  791. count++;
  792. CString scount;
  793. scount.Format ("%d", count);
  794. CTime tm=CTime::GetCurrentTime ();
  795. tm+=CTimeSpan(0,0,0,3);
  796. timestamp=tm.Format ("%Y%m%d%H%M%S");
  797. timestamp="msgtimexxstamp";
  798. sql2.Format(INSERT_SENDREG, _T("3"), m_phone2, str, timestamp, scount, _T("0"), _T("0"), _T("0"), _T("系统自动发送"));
  799. sql += _T("###") + sql2;
  800. }
  801. }
  802. }
  803. #endif
  804. ////////////////////////
  805. if (atoi(g_cominfoarray.ElementAt(0).ElementAt(117)))//新摄控本
  806. {
  807. CString timestamp;
  808. CTime tm = CTime::GetCurrentTime();
  809. CTimeSpan dt(0, 0, 0, 1);
  810. timestamp = tm.Format("%Y%m%d%H%M%S");
  811. CString phone, clothescount;
  812. if (m_time2 != "")
  813. {
  814. phone = m_phone1 + " " + m_phone2;
  815. phone.TrimLeft();
  816. if (m_clothescount != "")
  817. clothescount = "服装:" + m_clothescount;
  818. sql2.Format("###insert into [todaytake]([name],[phone],[time],[type],[price],[waiter1],[waiter2],[receptionist],[arrearage],[remark],[clerk],[timestamp],[date],[mode],[arrive],[id])values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%d','%s','%s')",
  819. m_name1 + m_name2, phone, "", taoxiname, m_taoxijiage, m_waiter1, m_waiter2, ren, m_taoxijiage, clothescount, g_user.name, timestamp, m_time2, 0, "未到", id);
  820. sql += sql2;
  821. }
  822. if (m_time4 != "")
  823. {
  824. tm += dt;
  825. timestamp = tm.Format("%Y%m%d%H%M%S");
  826. phone = m_phone1 + " " + m_phone2;
  827. phone.TrimLeft();
  828. if (m_clothescount != "")
  829. clothescount = "服装:" + m_clothescount;
  830. sql2.Format("###insert into [todaytake]([name],[phone],[time],[type],[price],[waiter1],[waiter2],[receptionist],[arrearage],[remark],[clerk],[timestamp],[date],[mode],[arrive],[id])values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%d','%s','%s')",
  831. m_name1 + m_name2, phone, "", taoxiname, m_taoxijiage, m_waiter1, m_waiter2, ren, m_taoxijiage, clothescount, g_user.name, timestamp, m_time4, 1, "未到", id);
  832. sql += sql2;
  833. }
  834. if (m_time6 != "")
  835. {
  836. tm += dt;
  837. timestamp = tm.Format("%Y%m%d%H%M%S");
  838. phone = m_phone1 + " " + m_phone2;
  839. phone.TrimLeft();
  840. if (m_clothescount != "")
  841. clothescount = "服装:" + m_clothescount;
  842. sql2.Format("###insert into [todaytake]([name],[phone],[time],[type],[price],[waiter1],[waiter2],[receptionist],[arrearage],[remark],[clerk],[timestamp],[date],[mode],[arrive],[id])values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%d','%s','%s')",
  843. m_name1 + m_name2, phone, "", taoxiname, m_taoxijiage, m_waiter1, m_waiter2, ren, m_taoxijiage, clothescount, g_user.name, timestamp, m_time6, 2, "未到", id);
  844. sql += sql2;
  845. }
  846. if (m_time5 != "")
  847. {
  848. tm += dt;
  849. timestamp = tm.Format("%Y%m%d%H%M%S");
  850. phone = m_phone1 + " " + m_phone2;
  851. phone.TrimLeft();
  852. if (m_clothescount != "")
  853. clothescount = "服装:" + m_clothescount;
  854. sql2.Format("###insert into [todaytake]([name],[phone],[time],[type],[price],[waiter1],[waiter2],[receptionist],[arrearage],[remark],[clerk],[timestamp],[date],[mode],[arrive],[id])values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%d','%s','%s')",
  855. m_name1 + m_name2, phone, "", taoxiname, m_taoxijiage, m_waiter1, m_waiter2, ren, m_taoxijiage, clothescount, g_user.name, timestamp, m_time5, 3, "未到", id);
  856. sql += sql2;
  857. }
  858. }
  859. ////////////////////////////
  860. sql2 = "###" + id + "$$$" + m_memberno;
  861. sql += sql2;
  862. //AfxMessageBox(sql); //Jeff输出SQL语句
  863. // LOG4C((LOG_NOTICE,"sql=%s",sql.GetBuffer(0)));sql.ReleaseBuffer();
  864. // printf("Jeff:%s\n\n", sql.GetBuffer(0));sql.ReleaseBuffer(); //控制台输出;
  865. // printf("Jeff:sql语句长度=%d\n\n",strlen(sql.GetBuffer(0))+1 );sql.ReleaseBuffer();
  866. //Sleep(2000);system("cls");
  867. m_memberno = m_membernotemp;
  868. g_sendhead.bsql = 1;
  869. g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
  870. // printf("Jeff:Booking2发送订单SQL成功,等待接收....\n\n");
  871. CArray<CStringArray, CStringArray>sparray;
  872. if (m_bGrowthTX)
  873. sparray.SetSize(m_page1.m_List1arraygrowthbak.GetSize() + m_page1.m_List3.GetItemCount() + m_page1.m_listbox1.GetCount(), 1);
  874. else
  875. sparray.SetSize(m_page1.m_List1.GetItemCount() + m_page1.m_List3.GetItemCount() + m_page1.m_listbox1.GetCount(), 1);
  876. int realcount = 0;
  877. int i;
  878. if (m_bGrowthTX)
  879. {
  880. for (i = 0; i < m_page1.m_List1arraygrowthbak.GetSize(); i++)
  881. {
  882. int arraygrowthbaksize = m_page1.m_List1arraygrowthbak.ElementAt(i).GetSize();
  883. str = m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(1);
  884. str.TrimLeft();
  885. str.TrimRight();
  886. if (str.IsEmpty())
  887. continue;
  888. sparray.ElementAt(realcount).Add(id);
  889. sparray.ElementAt(realcount).Add(m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(0));
  890. sparray.ElementAt(realcount).Add(m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(2));
  891. sparray.ElementAt(realcount).Add(m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(3));
  892. sparray.ElementAt(realcount).Add("1");
  893. sparray.ElementAt(realcount).Add(m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(1));
  894. sparray.ElementAt(realcount).Add(m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(4));
  895. sparray.ElementAt(realcount).Add(m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(5));
  896. sparray.ElementAt(realcount).Add(m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(arraygrowthbaksize - 1));
  897. realcount++;
  898. }
  899. }
  900. else
  901. {
  902. for (i = 0; i < m_page1.m_List1.GetItemCount(); i++)
  903. {
  904. str = m_page1.m_List1.GetItemText(i, 1);
  905. str.TrimLeft(); str.TrimRight();
  906. if (str.IsEmpty())
  907. continue;
  908. sparray.ElementAt(realcount).Add(id);
  909. sparray.ElementAt(realcount).Add(m_page1.m_List1.GetItemText(i, 0));
  910. sparray.ElementAt(realcount).Add(m_page1.m_List1.GetItemText(i, 2));
  911. sparray.ElementAt(realcount).Add(m_page1.m_List1.GetItemText(i, 3));
  912. sparray.ElementAt(realcount).Add("1");
  913. sparray.ElementAt(realcount).Add(m_page1.m_List1.GetItemText(i, 1));
  914. sparray.ElementAt(realcount).Add(m_page1.m_List1.GetItemText(i, 4));
  915. sparray.ElementAt(realcount).Add(m_page1.m_List1.GetItemText(i, 5));
  916. realcount++;
  917. }
  918. }
  919. for (i = 0; i < m_page1.m_List3.GetItemCount(); i++)
  920. {
  921. str = m_page1.m_List3.GetItemText(i, 1);
  922. str.TrimLeft(); str.TrimRight();
  923. if (str.IsEmpty())continue;
  924. sparray.ElementAt(realcount).Add(id);
  925. sparray.ElementAt(realcount).Add(m_page1.m_List3.GetItemText(i, 0));
  926. sparray.ElementAt(realcount).Add(m_page1.m_List3.GetItemText(i, 2));
  927. sparray.ElementAt(realcount).Add(m_page1.m_List3.GetItemText(i, 3));
  928. sparray.ElementAt(realcount).Add("2");
  929. sparray.ElementAt(realcount).Add(m_page1.m_List3.GetItemText(i, 1));
  930. sparray.ElementAt(realcount).Add("");
  931. sparray.ElementAt(realcount).Add("");
  932. realcount++;
  933. }
  934. for (i = 0; i < m_page1.m_listbox1.GetCount(); i++)
  935. {
  936. m_page1.m_listbox1.GetText(i, str);
  937. sparray.ElementAt(realcount).Add(id);
  938. sparray.ElementAt(realcount).Add(str);
  939. realcount++;
  940. }
  941. if (realcount == 0)
  942. {
  943. sparray.SetSize(1, 1);
  944. sparray.ElementAt(0).Add(id);
  945. }
  946. else if (idarray.GetSize() > 1)
  947. {
  948. sparray.SetSize(realcount + 1, 1);
  949. sparray.ElementAt(realcount).Add("成长套系");
  950. for (int a = 0; a < idarray.GetSize(); a++)
  951. {
  952. sparray.ElementAt(realcount).Add(idarray.ElementAt(a));
  953. }
  954. }
  955. else
  956. sparray.SetSize(realcount, 1);
  957. realcount = sparray.GetSize();
  958. sparray.SetSize(realcount + 1, 1);
  959. sparray.ElementAt(realcount).Add(g_user.name);
  960. CMemFile memfile;
  961. CArchive ar(&memfile, CArchive::store);
  962. for (int ii = 0; ii < sparray.GetSize(); ii++)
  963. {
  964. sparray.ElementAt(ii).Serialize(ar);
  965. }
  966. ar.Close();
  967. int length = memfile.GetLength();
  968. BYTE *pData = memfile.Detach();
  969. int size = sparray.GetSize();
  970. BYTE *pData2 = new BYTE[length + sizeof(int)];
  971. memcpy(pData2, pData, length);
  972. memcpy(pData2 + length, &size, sizeof(int));
  973. delete[]pData;
  974. length += sizeof(int);
  975. g_nSendCode = 3;
  976. g_pMainWnd->ProcessChatMessageRequest2(pData2, length);
  977. g_nSendCode = 0;
  978. delete[]pData2;
  979. if (g_bSendOK == 0)
  980. return;
  981. #ifndef CHILD_VERSION
  982. if(m_time3.IsEmpty ()==0)
  983. {
  984. CString date=m_time3;
  985. CString date2;
  986. if(m_check3)
  987. CovertDate(date, date2);
  988. sql.Format ("update dindansp set hqdate='%s' where id='%s'", date, id);
  989. if(atoi(g_cominfoarray.ElementAt(0).ElementAt(117)))//新摄控本
  990. {
  991. CString timestamp;
  992. CTime tm=CTime::GetCurrentTime ();
  993. CTimeSpan dt(0,0,0,10);
  994. tm+=dt;
  995. timestamp=tm.Format ("%Y%m%d%H%M%S");
  996. CString phone,clothescount,content;
  997. for( i=0; i<m_page1.m_List3.GetItemCount (); i++)
  998. {
  999. str=m_page1.m_List3.GetItemText (i, 1);
  1000. str.TrimLeft (); str.TrimRight ();
  1001. if(str.IsEmpty ())continue;
  1002. content+=str;
  1003. content+=",";
  1004. }
  1005. content.TrimRight (",");
  1006. if(content!="")
  1007. {
  1008. phone=m_phone1+" "+m_phone2;
  1009. phone.TrimLeft ();
  1010. if(m_clothescount!="")
  1011. clothescount="服装:"+m_clothescount;
  1012. sql2.Format ("***insert into [todaytake]([name],[phone],[time],[type],[price],[waiter1],[waiter2],[receptionist],[arrearage],[remark],[clerk],[timestamp],[date],[mode],[arrive],[content],[id])values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%d','%s','%s','%s')",
  1013. m_name1+m_name2,phone,"",taoxiname,m_taoxijiage,m_waiter1,m_waiter2,ren,m_taoxijiage,clothescount,g_user.name,timestamp,date,4,"未到",content,id);
  1014. sql+=sql2;
  1015. }
  1016. }
  1017. ////////////////////////////
  1018. g_sendhead.bsql=1;
  1019. g_pMainWnd->ProcessChatMessageRequest2(sql);if(g_bSendOK==0)return;
  1020. }
  1021. #endif
  1022. AfxMessageBox("保存成功!", MB_ICONINFORMATION);
  1023. CString m_type = _T("");
  1024. m_type.Format(_T("%d"),m_page3.m_type);
  1025. if (m_type == _T("1") || m_type == _T("3"))
  1026. {
  1027. if (m_type == _T("1"))
  1028. {
  1029. CString m_point;
  1030. m_point.Format("%d", atol(m_taoxijiage));
  1031. CString m_card2no = m_page3.m_memberno2;
  1032. CString date2 = m_page3.m_memberno2date;
  1033. CString m_name = m_page3.m_membernoname;
  1034. CString m_sex = m_page3.m_membernosex;
  1035. CString m_phone = m_page3.m_membernophone;
  1036. CString sql;
  1037. sql = "delete from membercard2 where [card2no]='" + m_card2no + "'";
  1038. sql += "@@@insert into memberreg([memberno],[dindanid],[money],[date],[card2no],[type],[taoxi],[date2])values('" + m_memberno + "','" + id + "','" + m_point + "','" + g_date + "','" + m_card2no + "','转介绍','" + taoxiname + "','" + date2 + "')";
  1039. sql += "@@@";
  1040. m_point.Format("%d", (int)(atof(m_taoxijiage)*GetPointScale()));
  1041. if (atoi(g_cominfoarray.ElementAt(0).ElementAt(51)))
  1042. {
  1043. CString m_content5 = g_cominfoarray.ElementAt(0).ElementAt(52);
  1044. CString content, timestamp;
  1045. CString name;
  1046. if (!m_name1.IsEmpty())
  1047. name = m_name1 + ",";
  1048. name += m_name2;
  1049. name.TrimRight(",");
  1050. CString name2 = m_name;
  1051. #ifndef CHILD_VERSION
  1052. if(m_sex=="男")
  1053. name2+="先生";
  1054. else if(m_sex=="女")
  1055. name2+="女士";
  1056. #endif
  1057. content.Format("%s您好,您的朋友%s为您积分%s分.", name2, name, m_point);
  1058. content += m_content5;
  1059. timestamp = "msgtimestamp";
  1060. if (CheckPhoneType(m_phone) != -1 && CheckBadWords(content, 0))
  1061. {
  1062. int count = GetLengthEx(content) / MSG_LENGTH;
  1063. if (GetLengthEx(content) % MSG_LENGTH)
  1064. count++;
  1065. CString scount;
  1066. scount.Format("%d", count);
  1067. #if JEFF_TEST_ON
  1068. CString sql2 = _T("");
  1069. sql2.Format(INSERT_SENDREG, _T("5"), m_phone, content, timestamp, scount, _T("0"), _T("0"), _T("0"), _T("系统自动发送"));
  1070. sql += sql2;
  1071. #else
  1072. CString sql2="insert into sendreg([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('"+m_phone+"','"+content+"','"+timestamp+"','"+scount+"','0','0','0','系统自动发送')";
  1073. sql+=sql2;
  1074. #endif
  1075. sql += "@@@";
  1076. }
  1077. }
  1078. sql += m_memberno;
  1079. g_sendhead.bsql = 1;
  1080. g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
  1081. }
  1082. else if (m_type == _T("3"))
  1083. {
  1084. CString m_rate;
  1085. CString filter = "[memberno]='" + m_memberno + "'";
  1086. g_sendhead.bsql = 0;
  1087. g_sendhead.code[0] = 132;
  1088. g_sendhead.tabcount = 1;
  1089. g_pMainWnd->ProcessChatMessageRequest2(filter); if (g_bSendOK == 0)return;
  1090. DataToArray(&g_List1array);
  1091. CString m_bluescale1;
  1092. CString m_bluescale2;
  1093. CString m_bluescale3;
  1094. CString m_bluescale4;
  1095. CString m_bluescale5;
  1096. CString m_bluescale6;
  1097. CString m_bluescale7;
  1098. CString m_bluescale8;
  1099. CString m_bluescale9;
  1100. CString m_bluescale10;
  1101. CString str = (g_cominfoarray.ElementAt(0).ElementAt(119));
  1102. if (str == "")
  1103. str = "5,10,15,20,50,0,0,0,0,0";
  1104. int pos = str.Find(",");
  1105. m_bluescale1 = str.Left(pos);
  1106. str = str.Right(str.GetLength() - pos - 1);
  1107. pos = str.Find(",");
  1108. m_bluescale2 = str.Left(pos);
  1109. str = str.Right(str.GetLength() - pos - 1);
  1110. pos = str.Find(",");
  1111. m_bluescale3 = str.Left(pos);
  1112. str = str.Right(str.GetLength() - pos - 1);
  1113. pos = str.Find(",");
  1114. m_bluescale4 = str.Left(pos);
  1115. str = str.Right(str.GetLength() - pos - 1);
  1116. pos = str.Find(",");
  1117. m_bluescale5 = str.Left(pos);
  1118. str = str.Right(str.GetLength() - pos - 1);
  1119. pos = str.Find(",");
  1120. m_bluescale6 = str.Left(pos);
  1121. str = str.Right(str.GetLength() - pos - 1);
  1122. pos = str.Find(",");
  1123. m_bluescale7 = str.Left(pos);
  1124. str = str.Right(str.GetLength() - pos - 1);
  1125. pos = str.Find(",");
  1126. m_bluescale8 = str.Left(pos);
  1127. str = str.Right(str.GetLength() - pos - 1);
  1128. pos = str.Find(",");
  1129. m_bluescale9 = str.Left(pos);
  1130. str = str.Right(str.GetLength() - pos - 1);
  1131. m_bluescale10 = str.Left(pos);
  1132. if (g_List1array.GetSize() % 10 == 0)
  1133. m_rate = m_bluescale1 + "%";
  1134. else if (g_List1array.GetSize() % 10 == 1)
  1135. m_rate = m_bluescale2 + "%";
  1136. else if (g_List1array.GetSize() % 10 == 2)
  1137. m_rate = m_bluescale3 + "%";
  1138. else if (g_List1array.GetSize() % 10 == 3)
  1139. m_rate = m_bluescale4 + "%";
  1140. else if (g_List1array.GetSize() % 10 == 4)
  1141. m_rate = m_bluescale5 + "%";
  1142. else if (g_List1array.GetSize() % 10 == 5)
  1143. m_rate = m_bluescale6 + "%";
  1144. else if (g_List1array.GetSize() % 10 == 6)
  1145. m_rate = m_bluescale7 + "%";
  1146. else if (g_List1array.GetSize() % 10 == 7)
  1147. m_rate = m_bluescale8 + "%";
  1148. else if (g_List1array.GetSize() % 10 == 8)
  1149. m_rate = m_bluescale9 + "%";
  1150. else if (g_List1array.GetSize() % 10 == 9)
  1151. m_rate = m_bluescale10 + "%";
  1152. else
  1153. m_rate = "0%";
  1154. float frate = atof(m_rate) / 100.0;
  1155. CString m_point;
  1156. m_point.Format("%d", (int)(min(atof(m_taoxijiage), atof(m_page3.m_membernojiage))*frate));
  1157. BOOL bCheck = 1;
  1158. if (atof(m_taoxijiage) < atof(m_page3.m_membernojiage))
  1159. {
  1160. AfxMessageBox("此套系金额小于主套系,无法返现!");
  1161. bCheck = 0;
  1162. }
  1163. if (bCheck)
  1164. {
  1165. CString m_card2no = m_page3.m_memberno2;
  1166. CString date2 = m_page3.m_memberno2date;
  1167. CString m_name = m_page3.m_membernoname;
  1168. CString m_sex = m_page3.m_membernosex;
  1169. CString m_phone = m_page3.m_membernophone;
  1170. CString sql;
  1171. sql = "delete from membercard2blue where [card2no]='" + m_card2no + "'";
  1172. sql += "~~~insert into memberregblue([memberno],[dindanid],[money],[date],[card2no],[type],[taoxi],[date2])values('" + m_memberno + "','" + id + "','" + m_point + "','" + g_date + "','" + m_card2no + "','转介绍','" + taoxiname + "','" + date2 + "')";
  1173. sql += "~~~";
  1174. if (atoi(g_cominfoarray.ElementAt(0).ElementAt(51)))
  1175. {
  1176. CString m_content5 = g_cominfoarray.ElementAt(0).ElementAt(52);
  1177. CString content, timestamp;
  1178. CString name;
  1179. if (!m_name1.IsEmpty())
  1180. name = m_name1 + ",";
  1181. name += m_name2;
  1182. name.TrimRight(",");
  1183. CString name2 = m_name;
  1184. #ifndef CHILD_VERSION
  1185. if(m_sex=="男")
  1186. name2+="先生";
  1187. else if(m_sex=="女")
  1188. name2+="女士";
  1189. #endif
  1190. content.Format("%s您好,您的朋友%s为您返现金%s元.", name2, name, m_point);
  1191. content += m_content5;
  1192. timestamp = "msgtimestamp";
  1193. if (CheckPhoneType(m_phone) != -1 && CheckBadWords(content, 0))
  1194. {
  1195. int count = GetLengthEx(content) / MSG_LENGTH;
  1196. if (GetLengthEx(content) % MSG_LENGTH)
  1197. count++;
  1198. CString scount;
  1199. scount.Format("%d", count);
  1200. #if JEFF_TEST_ON
  1201. CString sql2 = _T("");
  1202. sql2.Format(INSERT_SENDREG, _T("5"), m_phone, content, timestamp, scount, _T("0"), _T("0"), _T("0"), _T("系统自动发送"));
  1203. sql += sql2;
  1204. #else
  1205. CString sql2="insert into sendreg([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('"+m_phone+"','"+content+"','"+timestamp+"','"+scount+"','0','0','0','系统自动发送')";
  1206. sql+=sql2;
  1207. #endif
  1208. sql += "~~~";
  1209. }
  1210. }
  1211. sql += m_memberno;
  1212. g_sendhead.bsql = 1;
  1213. g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
  1214. }
  1215. }
  1216. }
  1217. CString phone;
  1218. BOOL bNeedCard = 0;
  1219. if (m_type == _T("1") || m_type == _T("2") || m_type == _T("3"))
  1220. bNeedCard = 1;
  1221. if (m_memberno.IsEmpty())
  1222. bNeedCard = 1;
  1223. if (bNeedCard)
  1224. {
  1225. SelMemberType dlg;
  1226. if (dlg.DoModal() == IDOK)
  1227. {
  1228. if (dlg.m_type == 0)
  1229. {
  1230. AddMember dlg;
  1231. if (m_name2 != "")
  1232. dlg.m_name = m_name2;
  1233. else
  1234. dlg.m_name = m_name1;
  1235. if (m_phone2 != "")
  1236. dlg.m_phone = m_phone2;
  1237. else
  1238. dlg.m_phone = m_phone1;
  1239. if (m_birthday2 != "")
  1240. dlg.m_birthday = m_birthday2;
  1241. else
  1242. dlg.m_birthday = m_birthday1;
  1243. if (m_qq2 != "")
  1244. dlg.m_qq = m_qq2;
  1245. else
  1246. dlg.m_qq = m_qq1;
  1247. if (m_addr2 != "")
  1248. dlg.m_addr = m_addr2;
  1249. else
  1250. dlg.m_addr = m_addr1;
  1251. if (dlg.DoModal() == IDOK)
  1252. {
  1253. if (AfxMessageBox("会员添加成功,是否发放副卡?", MB_YESNO | MB_ICONINFORMATION) == IDYES)
  1254. {
  1255. InputCard2Dlg dlg2;
  1256. dlg2.m_name = dlg.m_name;
  1257. dlg2.m_no = dlg.m_memberno;
  1258. dlg2.DoModal();
  1259. }
  1260. sql = "update dindan set [memberno]='" + dlg.m_memberno + "' where [id]='" + id + "'";
  1261. g_sendhead.bsql = 1;
  1262. g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
  1263. }
  1264. }
  1265. else
  1266. {
  1267. AddMember dlg;
  1268. dlg.m_mode = 1;
  1269. if (m_name2 != "")
  1270. dlg.m_name = m_name2;
  1271. else
  1272. dlg.m_name = m_name1;
  1273. if (m_phone2 != "")
  1274. dlg.m_phone = m_phone2;
  1275. else
  1276. dlg.m_phone = m_phone1;
  1277. if (m_birthday2 != "")
  1278. dlg.m_birthday = m_birthday2;
  1279. else
  1280. dlg.m_birthday = m_birthday1;
  1281. if (m_qq2 != "")
  1282. dlg.m_qq = m_qq2;
  1283. else
  1284. dlg.m_qq = m_qq1;
  1285. if (m_addr2 != "")
  1286. dlg.m_addr = m_addr2;
  1287. else
  1288. dlg.m_addr = m_addr1;
  1289. dlg.m_jiage = m_taoxijiage;
  1290. if (dlg.DoModal() == IDOK)
  1291. {
  1292. if (AfxMessageBox("会员添加成功,是否发放副卡?", MB_YESNO | MB_ICONINFORMATION) == IDYES)
  1293. {
  1294. InputCard2Dlg dlg2;
  1295. dlg2.m_mode = 1;
  1296. dlg2.m_name = dlg.m_name;
  1297. dlg2.m_no = dlg.m_memberno;
  1298. dlg2.DoModal();
  1299. }
  1300. sql = "update dindan set [memberno]='" + dlg.m_memberno + "' where [id]='" + id + "'";
  1301. g_sendhead.bsql = 1;
  1302. g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
  1303. }
  1304. }
  1305. }
  1306. }
  1307. GetDlgItem(IDC_BUTprint)->EnableWindow(1);
  1308. if (!m_bModify)
  1309. GetDlgItem(IDC_BUTsave)->EnableWindow(0);
  1310. }
  1311. // Jeff 保存"预约单-修改"的数据;
  1312. void Booking2::OnBUTsave2()//保存修改;
  1313. {
  1314. // TODO: Add your control notification handler code here
  1315. if (!m_page1.CheckOK())
  1316. {
  1317. AfxMessageBox("资料不全,打*号的项目必须填写!", MB_ICONINFORMATION);
  1318. OnBUTinfo1(); return;
  1319. }
  1320. if (!m_page2.CheckOK())
  1321. {
  1322. AfxMessageBox("资料不全,打*号的项目必须填写!", MB_ICONINFORMATION);
  1323. OnBUTinfo2(); return;
  1324. }
  1325. if (!m_page3.CheckOK())
  1326. {
  1327. AfxMessageBox("资料不全,打*号的项目必须填写!", MB_ICONINFORMATION);
  1328. OnBUTinfo3(); return;
  1329. }
  1330. if (!m_page4.CheckOK())
  1331. {
  1332. AfxMessageBox("资料不全,打*号的项目必须填写!", MB_ICONINFORMATION);
  1333. OnBUTinfo4(); return;
  1334. }
  1335. // 修改预约单的权限索引 == 1 ?
  1336. #if JEFF_TEST_ON // [3/24/2015 Jeff]
  1337. if ( m_page4.m_bModify )
  1338. {
  1339. Login2 dlg;
  1340. dlg.m_mode = 4;
  1341. if (dlg.DoModal() != IDOK)return;
  1342. if (IsHasRightsnew2(1, dlg.m_rights) == 0)return;
  1343. }
  1344. else
  1345. {
  1346. if(IsHasRightsnew(1)==0)
  1347. return;
  1348. }
  1349. #else // 不使用权限,使用实时密码;
  1350. if(IsHasRights2(1)==0)
  1351. return;
  1352. #endif
  1353. // TODO: Add your control notification handler code here
  1354. CString id = m_id;
  1355. CString m_taoxiid = m_page1.m_taoxiid;
  1356. CString taoxiname = m_page1.m_taoxiname;
  1357. CString m_growthtxselname = m_page1.m_growthtxselname;
  1358. CString m_taoxijiage = m_page1.m_taoxijiage;
  1359. CString m_payed1 = m_page1.m_payed1;
  1360. // CString m_zs=m_page1.m_zs;
  1361. CString m_zs = m_page1.m_zs + "\\" + m_page1.m_zs2;
  1362. CString txtype = m_page1.m_txtype;
  1363. CString m_bz = m_page1.m_bz;
  1364. CString bm = m_page3.m_bm;
  1365. CString ren = m_page3.m_ren;
  1366. CString m_clothescount = m_page3.m_clothescount;
  1367. CString m_clothescount2 = m_page3.m_clothescount2;
  1368. CString m_outside = m_page3.m_outside;
  1369. CString m_outside2 = m_page3.m_outside2;
  1370. CString m_style = m_page3.m_style;
  1371. CString strmoney = "0";
  1372. BOOL m_bGrowthTX = m_page1.m_bGrowthTX;
  1373. #ifdef LKAY_VERSION
  1374. CString m_dindantype=m_page1.m_dindantype;
  1375. CString m_contractno=m_page1.m_contractno;
  1376. CString m_contractno2=m_page1.m_contractno2;
  1377. CString m_cfno=m_page3.m_cfno;
  1378. CString m_from=m_page3.m_from;
  1379. CString m_reason=m_page3.m_reason;
  1380. CString m_time7=m_page4.m_time7;
  1381. CString m_waiter12=m_page4.m_waiter12;
  1382. CString m_waiter13=m_page4.m_waiter13;
  1383. CString m_waiter14=m_page4.m_waiter14;
  1384. #else
  1385. CString m_from = m_page1.m_from;
  1386. #endif
  1387. #ifdef CHILD_VERSION
  1388. CString m_name1 = m_page2.m_name1;
  1389. CString m_name2 = m_page2.m_name2;
  1390. CString m_phone1 = m_page2.m_phone1;
  1391. CString m_phone2 = m_page2.m_phone2;
  1392. CString m_qq1 = m_page2.m_qq1;
  1393. CString m_addr1 = m_page2.m_addr1;
  1394. CString m_birthday1 = m_page2.m_birthday1;
  1395. CString m_area = m_page2.m_area;
  1396. BOOL m_check1 = m_page2.m_check1;
  1397. CString m_zodiac = m_page2.m_zodiac;
  1398. CString m_sex = m_page2.m_sex;
  1399. CString m_time3 = m_page4.m_time3;
  1400. #else
  1401. CString m_name1=m_page2.m_name1;
  1402. CString m_name2=m_page2.m_name2;
  1403. CString m_phone1=m_page2.m_phone1;
  1404. CString m_phone2=m_page2.m_phone2;
  1405. CString m_qq1=m_page2.m_qq1;
  1406. CString m_qq2=m_page2.m_qq2;
  1407. CString m_addr1=m_page2.m_addr1;
  1408. CString m_addr2=m_page2.m_addr2;
  1409. CString m_occupation1=m_page2.m_occupation1;
  1410. CString m_occupation2=m_page2.m_occupation2;
  1411. CString m_birthday1=m_page2.m_birthday1;
  1412. CString m_birthday2=m_page2.m_birthday2;
  1413. CString m_area=m_page2.m_area;
  1414. CString m_area2=m_page2.m_area2;
  1415. BOOL m_check1=m_page2.m_check1;
  1416. BOOL m_check2=m_page2.m_check2;
  1417. CString m_time3 = m_page2.m_time3;
  1418. #endif
  1419. CString m_time1 = m_page4.m_time1;
  1420. CString m_time2 = m_page4.m_time2;
  1421. CString m_time4 = m_page4.m_time4;
  1422. CString m_time5 = m_page4.m_time5;
  1423. CString m_time6 = m_page4.m_time6;
  1424. CString m_time8 = m_page4.m_time8;
  1425. CString m_time9 = m_page4.m_time9;
  1426. CString m_time10 = m_page4.m_time10;
  1427. CString m_time2old = m_page4.m_time2old;
  1428. CString m_time4old = m_page4.m_time4old;
  1429. CString m_time5old = m_page4.m_time5old;
  1430. CString m_time6old = m_page4.m_time6old;
  1431. CString m_waiter1 = m_page4.m_waiter1;
  1432. CString m_waiter2 = m_page4.m_waiter2;
  1433. CString m_waiter3 = m_page4.m_waiter3;
  1434. CString m_waiter4 = m_page4.m_waiter4;
  1435. CString m_waiter5 = m_page4.m_waiter5;
  1436. CString m_waiter7 = m_page4.m_waiter7;
  1437. CString m_waiter8 = m_page4.m_waiter8; //Jeff 看版人 waiter8
  1438. CString m_status1 = m_page4.m_status1;
  1439. CString m_status2 = m_page4.m_status2;
  1440. CString m_status3 = m_page4.m_status3;
  1441. CString m_status4 = m_page4.m_status4;
  1442. CString m_status5 = m_page4.m_status5;
  1443. CString m_status6 = m_page4.m_status6;
  1444. CString m_status8 = m_page4.m_status8; // Jeff 看版状态 status8
  1445. BOOL m_check3 = m_page4.m_check3;
  1446. CString waiter3_old = m_page4.m_waiter3_old;// Jeff add;
  1447. CString sql, str, str2;
  1448. CString strRes1, strRes2;
  1449. ChinesePinYin::GetFirstLetter(m_name1, strRes1);
  1450. ChinesePinYin::GetFirstLetter(m_name2, strRes2);
  1451. CString m_memberno = m_page3.m_memberno;
  1452. if (m_page3.m_type == 1 || m_page3.m_type == 3)//副卡
  1453. m_memberno = m_page3.m_memberno2;
  1454. CString m_membernotemp = m_memberno;
  1455. if (m_page3.m_type)m_memberno.Empty();
  1456. #if 0 // Jeff Old Edition
  1457. sql.Format ("update dindan set name1='%s',name2='%s',taoxiid='%s',taoxiname='%s',taoxizs='%s',time2='%s',time3='%s',time4='%s',time5='%s',time6='%s',time8='%s',time9='%s',time10='%s',waiter1='%s',waiter2='%s',waiter3='%s',waiter4='%s',waiter5='%s',waiter6='%s',waiter7='%s',status='%s',status2='%s',status3='%s',status4='%s',status5='%s',status6='%s',bm='%s',ren='%s',bz='%s',pinyin1='%s',pinyin2='%s',clothescount='%s',clothescount2='%s',outside='%s',outside2='%s',style='%s',taoxijiage='%s',txtype='%s',growthtxselname='%s',[phone1]='%s',[phone2]='%s',[memberno]='%s',[from]='%s' where id='%s' ",
  1458. m_name1,m_name2,m_taoxiid,taoxiname,m_zs,m_time2,m_time3,m_time4,m_time5,m_time6,m_time8,m_time9,m_time10,
  1459. m_waiter1,m_waiter2,m_waiter3,m_waiter4,m_waiter5,g_user.name,m_waiter7,m_status1,m_status2,m_status3,m_status4,m_status5,m_status6,
  1460. bm,ren,FilterBZ(m_bz),strRes1,strRes2,m_clothescount,m_clothescount2,m_outside,m_outside2,m_style,m_taoxijiage,txtype,m_growthtxselname,m_phone1,m_phone2,m_memberno,m_from,id);
  1461. #else // Jeff update;
  1462. if (waiter3_old == m_waiter3)// 选片人未更改;
  1463. {
  1464. sql.Format("update dindan set name1='%s',name2='%s',taoxiid='%s',taoxiname='%s', taoxizs='%s',time2='%s',time3='%s',time4='%s',time5='%s',time6='%s',time8='%s',time9='%s',time10='%s',waiter1='%s',waiter2='%s',waiter3='%s',waiter4='%s',waiter5='%s',waiter6='%s',waiter7='%s',waiter8='%s',status='%s',status2='%s',status3='%s',status4='%s',status5='%s',status6='%s',status8='%s',bm='%s',ren='%s',bz='%s',pinyin1='%s',pinyin2='%s',clothescount='%s',clothescount2='%s',outside='%s',outside2='%s',style='%s',taoxijiage='%s',txtype='%s',growthtxselname='%s',[phone1]='%s',[phone2]='%s',[memberno]='%s',[from]='%s' where id='%s' ",
  1465. m_name1, m_name2, m_taoxiid, taoxiname, m_zs, m_time2, m_time3, m_time4, m_time5, m_time6, m_time8, m_time9, m_time10,
  1466. m_waiter1, m_waiter2, m_waiter3, m_waiter4, m_waiter5, g_user.name, m_waiter7, m_waiter8, m_status1, m_status2, m_status3, m_status4, m_status5, m_status6, m_status8,
  1467. bm, ren, FilterBZ(m_bz), strRes1, strRes2, m_clothescount, m_clothescount2, m_outside, m_outside2, m_style, m_taoxijiage, txtype, m_growthtxselname, m_phone1, m_phone2, m_memberno, m_from, id);
  1468. }
  1469. else
  1470. {
  1471. sql.Format("update dindan set name1='%s',name2='%s',taoxiid='%s',taoxiname='%s', taoxizs='%s',time2='%s',time3='%s',time4='%s',time5='%s',time6='%s',time8='%s',time9='%s',time10='%s',waiter1='%s',waiter2='%s',waiter3='%s',waiter4='%s',waiter5='%s',waiter6='%s',waiter7='%s',waiter8='%s',status='%s',status2='%s',status3='%s',status4='%s',status5='%s',status6='%s',status8='%s',bm='%s',ren='%s',bz='%s',pinyin1='%s',pinyin2='%s',clothescount='%s',clothescount2='%s',outside='%s',outside2='%s',style='%s',taoxijiage='%s',txtype='%s',growthtxselname='%s',[phone1]='%s',[phone2]='%s',[memberno]='%s',[from]='%s',[xplrr]='%s',[xplrtime]='msgtimestamp2' where id='%s' ",
  1472. m_name1, m_name2, m_taoxiid, taoxiname, m_zs, m_time2, m_time3, m_time4, m_time5, m_time6, m_time8, m_time9, m_time10, m_waiter1, m_waiter2, m_waiter3, m_waiter4, m_waiter5, g_user.name, m_waiter7, m_waiter8,
  1473. m_status1, m_status2, m_status3, m_status4, m_status5, m_status6, m_status8, bm, ren, FilterBZ(m_bz), strRes1, strRes2, m_clothescount, m_clothescount2, m_outside, m_outside2, m_style, m_taoxijiage, txtype, m_growthtxselname, m_phone1, m_phone2, m_memberno, m_from, g_user.name, id
  1474. );
  1475. }
  1476. // Jeff.add 2014.08.30;
  1477. CString strSQL;
  1478. if (m_status1 == "OK") // 若整体的订单拍照状态为OK,则设置订单下所有景点的拍照状态都为OK;
  1479. {
  1480. strSQL.Format("***update dindanjd set status='OK' where id='%s'", id);
  1481. sql += strSQL;
  1482. }
  1483. #endif
  1484. #ifdef LKAY_VERSION
  1485. #if 0// Jeff Old Edition
  1486. sql.Format ("update dindan set name1='%s',name2='%s',taoxiid='%s',taoxiname='%s',taoxizs='%s',time2='%s',time3='%s',time4='%s',time5='%s',time6='%s',time8='%s',time9='%s',time10='%s',waiter1='%s',waiter2='%s',waiter3='%s',waiter4='%s',waiter5='%s',waiter6='%s',waiter7='%s',status='%s',status2='%s',status3='%s',status4='%s',status5='%s',status6='%s',bm='%s',ren='%s',bz='%s',pinyin1='%s',pinyin2='%s',clothescount='%s',clothescount2='%s',outside='%s',outside2='%s',style='%s',taoxijiage='%s',txtype='%s',growthtxselname='%s',[phone1]='%s',[phone2]='%s',[memberno]='%s',[dindantype]='%s',[contractno1]='%s',[contractno2]='%s',[cfno]='%s',[from]='%s',[reason]='%s',[time7]='%s',[waiter12]='%s',[waiter13]='%s',[waiter14]='%s' where id='%s' ",
  1487. m_name1,m_name2,m_taoxiid,taoxiname,m_zs,m_time2,m_time3,m_time4,m_time5,m_time6,m_time8,m_time9,m_time10,
  1488. m_waiter1,m_waiter2,m_waiter3,m_waiter4,m_waiter5,g_user.name,m_waiter7,m_status1,m_status2,m_status3,m_status4,m_status5,m_status6,
  1489. bm,ren,FilterBZ(m_bz),strRes1,strRes2,m_clothescount,m_clothescount2,m_outside,m_outside2,m_style,m_taoxijiage,txtype,m_growthtxselname,m_phone1,m_phone2,m_memberno,
  1490. m_dindantype,m_contractno,m_contractno2,m_cfno,m_from,m_reason,m_time7,m_waiter12,m_waiter13,m_waiter14,id);
  1491. #else // Jeff update
  1492. if(waiter3_old == m_waiter3)
  1493. {
  1494. sql.Format ("update dindan set name1='%s',name2='%s',taoxiid='%s',taoxiname='%s',taoxizs='%s',time2='%s',time3='%s',time4='%s',time5='%s',time6='%s',time8='%s',time9='%s',time10='%s',waiter1='%s',waiter2='%s',waiter3='%s',waiter4='%s',waiter5='%s',waiter6='%s',waiter7='%s',waiter8='%s',status='%s',status2='%s',status3='%s',status4='%s',status5='%s',status6='%s',status8='%s',bm='%s',ren='%s',bz='%s',pinyin1='%s',pinyin2='%s',clothescount='%s',clothescount2='%s',outside='%s',outside2='%s',style='%s',taoxijiage='%s',txtype='%s',growthtxselname='%s',[phone1]='%s',[phone2]='%s',[memberno]='%s',[dindantype]='%s',[contractno1]='%s',[contractno2]='%s',[cfno]='%s',[from]='%s',[reason]='%s',[time7]='%s',[waiter12]='%s',[waiter13]='%s',[waiter14]='%s' where id='%s' ",
  1495. m_name1,m_name2,m_taoxiid,taoxiname,m_zs,m_time2,m_time3,m_time4,m_time5,m_time6,m_time8,m_time9,m_time10,
  1496. m_waiter1,m_waiter2,m_waiter3,m_waiter4,m_waiter5,g_user.name,m_waiter7,m_waiter8,m_status1,m_status2,m_status3,m_status4,m_status5,m_status6,m_status8,
  1497. bm,ren,FilterBZ(m_bz),strRes1,strRes2,m_clothescount,m_clothescount2,m_outside,m_outside2,m_style,m_taoxijiage,txtype,m_growthtxselname,
  1498. m_phone1,m_phone2,m_memberno,m_dindantype,m_contractno,m_contractno2,m_cfno,m_from,m_reason,m_time7,m_waiter12,m_waiter13,m_waiter14,id);
  1499. }
  1500. else
  1501. {
  1502. sql.Format ("update dindan set name1='%s',name2='%s',taoxiid='%s',taoxiname='%s',taoxizs='%s',time2='%s',time3='%s',time4='%s',time5='%s',time6='%s',time8='%s',time9='%s',time10='%s',waiter1='%s',waiter2='%s',waiter3='%s',waiter4='%s',waiter5='%s',waiter6='%s',waiter7='%s',waiter8='%s',status='%s',status2='%s',status3='%s',status4='%s',status5='%s',status6='%s',status8='%s',bm='%s',ren='%s',bz='%s',pinyin1='%s',pinyin2='%s',clothescount='%s',clothescount2='%s',outside='%s',outside2='%s',style='%s',taoxijiage='%s',txtype='%s',growthtxselname='%s',[phone1]='%s',[phone2]='%s',[memberno]='%s',[dindantype]='%s',[contractno1]='%s',[contractno2]='%s',[cfno]='%s',[from]='%s',[reason]='%s',[time7]='%s',[waiter12]='%s',[waiter13]='%s',[waiter14]='%s',[xplrr]='%s',[xplrtime]='msgtimestamp2' where id='%s' ",
  1503. m_name1,m_name2,m_taoxiid,taoxiname,m_zs,m_time2,m_time3,m_time4,m_time5,m_time6,m_time8,m_time9,m_time10,
  1504. m_waiter1,m_waiter2,m_waiter3,m_waiter4,m_waiter5,g_user.name,m_waiter7,m_waiter8,
  1505. m_status1,m_status2,m_status3,m_status4,m_status5,m_status6,m_status8,
  1506. bm,ren,FilterBZ(m_bz),strRes1,strRes2,m_clothescount,m_clothescount2,
  1507. m_outside,m_outside2,m_style,m_taoxijiage,txtype,m_growthtxselname,m_phone1,m_phone2,m_memberno,
  1508. m_dindantype,m_contractno,m_contractno2,m_cfno,m_from,m_reason,m_time7,m_waiter12,m_waiter13,m_waiter14,g_user.name,id);
  1509. }
  1510. #endif
  1511. #endif
  1512. #if JEFF_TEST_ON
  1513. // 2015-05-30 若取件状态OK,写日志;
  1514. if ( m_status3 == _T("OK") )
  1515. {
  1516. CString strLog;
  1517. strLog.Format(_T(" 订单:%s 在预约修改中被设置为取件OK"),id);
  1518. WriteLog(_T("取件"), strLog);
  1519. }
  1520. #endif
  1521. CString sql2;
  1522. #ifdef CHILD_VERSION
  1523. sql2.Format("***update [client] set [name1]='%s',[name2]='%s',[phone1]='%s',[phone2]='%s',[qq1]='%s',[addr1]='%s',[birthday1]='%s',[area]='%s',[sex]='%s',[zodiac]='%s',[check1]='%d' where [id]='%s' ",
  1524. m_name1, m_name2, m_phone1, m_phone2, m_qq1, m_addr1, m_birthday1, m_area, m_sex, m_zodiac, m_check1, id);
  1525. #else
  1526. sql2.Format ("***update [client] set [name1]='%s',[name2]='%s',[phone1]='%s',[phone2]='%s',[qq1]='%s',[qq2]='%s',[addr1]='%s',[addr2]='%s',[occupation1]='%s',[occupation2]='%s',[birthday1]='%s',[birthday2]='%s',[area]='%s',[area2]='%s',[check1]='%d',[check2]='%d',[check3]='%d' where [id]='%s' ",
  1527. m_name1,m_name2,m_phone1,m_phone2,m_qq1,m_qq2,m_addr1,m_addr2,m_occupation1,m_occupation2,m_birthday1,m_birthday2,m_area,m_area2,m_check1,m_check2,m_check3,id);
  1528. #endif
  1529. sql += sql2;
  1530. ////////////////////////
  1531. if (atoi(g_cominfoarray.ElementAt(0).ElementAt(117)))//新摄控本
  1532. {
  1533. CString timestamp;
  1534. CTime tm = CTime::GetCurrentTime();
  1535. CTimeSpan dt(0, 0, 0, 1);
  1536. timestamp = tm.Format("%Y%m%d%H%M%S");
  1537. CString phone, clothescount;
  1538. if (m_time2 != "" && m_time2old != m_time2)
  1539. {
  1540. phone = m_phone1 + " " + m_phone2;
  1541. phone.TrimLeft();
  1542. if (m_clothescount != "")
  1543. clothescount = "服装:" + m_clothescount;
  1544. if (m_time2old == "")
  1545. sql2.Format("***insert into [todaytake]([name],[phone],[time],[type],[price],[waiter1],[waiter2],[receptionist],[arrearage],[remark],[clerk],[timestamp],[date],[mode],[arrive],[id])values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%d','%s','%s')",
  1546. m_name1 + m_name2, phone, "", taoxiname, m_taoxijiage, m_waiter1, m_waiter2, ren, m_taoxijiage, clothescount, g_user.name, timestamp, m_time2, 0, "未到", id);
  1547. else
  1548. sql2.Format("***update [todaytake] set [date]='%s' where [id]='%s' and [mode]='%d'", m_time2, id, 0);
  1549. sql += sql2;
  1550. // AfxMessageBox(sql2);
  1551. }
  1552. if (m_time4 != "" && m_time4old != m_time4)
  1553. {
  1554. tm += dt;
  1555. timestamp = tm.Format("%Y%m%d%H%M%S");
  1556. phone = m_phone1 + " " + m_phone2;
  1557. phone.TrimLeft();
  1558. if (m_clothescount != "")
  1559. clothescount = "服装:" + m_clothescount;
  1560. if (m_time4old == "")
  1561. sql2.Format("***insert into [todaytake]([name],[phone],[time],[type],[price],[waiter1],[waiter2],[receptionist],[arrearage],[remark],[clerk],[timestamp],[date],[mode],[arrive],[id])values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%d','%s','%s')",
  1562. m_name1 + m_name2, phone, "", taoxiname, m_taoxijiage, m_waiter1, m_waiter2, ren, m_taoxijiage, clothescount, g_user.name, timestamp, m_time4, 1, "未到", id);
  1563. else
  1564. sql2.Format("***update [todaytake] set [date]='%s' where [id]='%s' and [mode]='%d'", m_time4, id, 1);
  1565. sql += sql2;
  1566. }
  1567. if (m_time6 != "" && m_time6old != m_time6)
  1568. {
  1569. tm += dt;
  1570. timestamp = tm.Format("%Y%m%d%H%M%S");
  1571. phone = m_phone1 + " " + m_phone2;
  1572. phone.TrimLeft();
  1573. if (m_clothescount != "")
  1574. clothescount = "服装:" + m_clothescount;
  1575. if (m_time6old == "")
  1576. sql2.Format("***insert into [todaytake]([name],[phone],[time],[type],[price],[waiter1],[waiter2],[receptionist],[arrearage],[remark],[clerk],[timestamp],[date],[mode],[arrive],[id])values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%d','%s','%s')",
  1577. m_name1 + m_name2, phone, "", taoxiname, m_taoxijiage, m_waiter1, m_waiter2, ren, m_taoxijiage, clothescount, g_user.name, timestamp, m_time6, 2, "未到", id);
  1578. else
  1579. sql2.Format("***update [todaytake] set [date]='%s' where [id]='%s' and [mode]='%d'", m_time6, id, 2);
  1580. sql += sql2;
  1581. }
  1582. if (m_time5 != "" && m_time5old != m_time5)
  1583. {
  1584. tm += dt;
  1585. timestamp = tm.Format("%Y%m%d%H%M%S");
  1586. phone = m_phone1 + " " + m_phone2;
  1587. phone.TrimLeft();
  1588. if (m_clothescount != "")
  1589. clothescount = "服装:" + m_clothescount;
  1590. if (m_time5old == "")
  1591. sql2.Format("***insert into [todaytake]([name],[phone],[time],[type],[price],[waiter1],[waiter2],[receptionist],[arrearage],[remark],[clerk],[timestamp],[date],[mode],[arrive],[id])values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%d','%s','%s')",
  1592. m_name1 + m_name2, phone, "", taoxiname, m_taoxijiage, m_waiter1, m_waiter2, ren, m_taoxijiage, clothescount, g_user.name, timestamp, m_time5, 3, "未到", id);
  1593. else
  1594. sql2.Format("***update [todaytake] set [date]='%s' where [id]='%s' and [mode]='%d'", m_time5, id, 3);
  1595. sql += sql2;
  1596. }
  1597. }
  1598. ////////////////////////////
  1599. #ifndef CHILD_VERSION
  1600. if(m_time3.IsEmpty ()==0)
  1601. {
  1602. CString date=m_time3;
  1603. CString date2;
  1604. if(m_check3)
  1605. CovertDate(date, date2);
  1606. sql2.Format ("***update dindansp set hqdate='%s' where id='%s' and hqdate is null", date, id);
  1607. sql+=sql2;
  1608. if(0)//atoi(g_cominfoarray.ElementAt(0).ElementAt(117)))//新摄控本
  1609. {
  1610. CString timestamp;
  1611. CTime tm=CTime::GetCurrentTime ();
  1612. CTimeSpan dt(0,0,0,10);
  1613. tm+=dt;
  1614. timestamp=tm.Format ("%Y%m%d%H%M%S");
  1615. CString phone,clothescount,content;
  1616. for(int i=0; i<m_page1.m_List3.GetItemCount (); i++)
  1617. {
  1618. str=m_page1.m_List3.GetItemText (i, 2);
  1619. str.TrimLeft (); str.TrimRight ();
  1620. if(str.IsEmpty ())continue;
  1621. content+=str;
  1622. content+=",";
  1623. }
  1624. content.TrimRight (",");
  1625. if(content!="")
  1626. {
  1627. phone=m_phone1+" "+m_phone2;
  1628. phone.TrimLeft ();
  1629. if(m_clothescount!="")
  1630. clothescount="服装:"+m_clothescount;
  1631. sql2.Format ("***insert into [todaytake]([name],[phone],[time],[type],[price],[waiter1],[waiter2],[receptionist],[arrearage],[remark],[clerk],[timestamp],[date],[mode],[arrive],[content])values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%d','%s','%s')",
  1632. m_name1+m_name2,phone,"",taoxiname,m_taoxijiage,m_waiter1,m_waiter2,ren,m_taoxijiage,clothescount,g_user.name,timestamp,date,4,"未到",content);
  1633. sql+=sql2;
  1634. }
  1635. }
  1636. ////////////////////////////
  1637. }
  1638. #endif
  1639. g_sendhead.bsql = 1;
  1640. g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
  1641. CArray<CStringArray, CStringArray>sparray;
  1642. if (m_bGrowthTX)
  1643. sparray.SetSize(m_page1.m_List1arraygrowthbak.GetSize() + m_page1.m_List3.GetItemCount() + m_page1.m_listbox1.GetCount(), 1);
  1644. else
  1645. sparray.SetSize(m_page1.m_List1.GetItemCount() + m_page1.m_List3.GetItemCount() + m_page1.m_listbox1.GetCount(), 1);
  1646. int realcount = 0;
  1647. int i;
  1648. if (m_bGrowthTX)
  1649. {
  1650. for (i = 0; i < m_page1.m_List1arraygrowthbak.GetSize(); i++)
  1651. {
  1652. int arraygrowthbaksize = m_page1.m_List1arraygrowthbak.ElementAt(i).GetSize();
  1653. str = m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(2);
  1654. str.TrimLeft();
  1655. str.TrimRight();
  1656. if (str.IsEmpty())
  1657. continue;
  1658. sparray.ElementAt(realcount).Add(id);
  1659. sparray.ElementAt(realcount).Add(m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(0));
  1660. sparray.ElementAt(realcount).Add(m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(1));
  1661. sparray.ElementAt(realcount).Add(m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(2));
  1662. sparray.ElementAt(realcount).Add(m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(3));
  1663. sparray.ElementAt(realcount).Add(m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(4));
  1664. sparray.ElementAt(realcount).Add("1");
  1665. sparray.ElementAt(realcount).Add(m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(5));
  1666. sparray.ElementAt(realcount).Add(m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(6));
  1667. sparray.ElementAt(realcount).Add(m_page1.m_List1arraygrowthbak.ElementAt(i).ElementAt(arraygrowthbaksize - 1));
  1668. realcount++;
  1669. }
  1670. }
  1671. else
  1672. {
  1673. for (i = 0; i < m_page1.m_List1.GetItemCount(); i++)
  1674. {
  1675. str = m_page1.m_List1.GetItemText(i, 2);
  1676. str.TrimLeft(); str.TrimRight();
  1677. if (str.IsEmpty())
  1678. continue;
  1679. sparray.ElementAt(realcount).Add(id);
  1680. sparray.ElementAt(realcount).Add(m_page1.m_List1.GetItemText(i, 0));
  1681. sparray.ElementAt(realcount).Add(m_page1.m_List1.GetItemText(i, 1));
  1682. sparray.ElementAt(realcount).Add(m_page1.m_List1.GetItemText(i, 2));
  1683. sparray.ElementAt(realcount).Add(m_page1.m_List1.GetItemText(i, 3));
  1684. sparray.ElementAt(realcount).Add(m_page1.m_List1.GetItemText(i, 4));
  1685. sparray.ElementAt(realcount).Add("1");
  1686. sparray.ElementAt(realcount).Add(m_page1.m_List1.GetItemText(i, 5));
  1687. sparray.ElementAt(realcount).Add(m_page1.m_List1.GetItemText(i, 6));
  1688. realcount++;
  1689. }
  1690. }
  1691. for (i = 0; i < m_page1.m_List3.GetItemCount(); i++)
  1692. {
  1693. str = m_page1.m_List3.GetItemText(i, 2);
  1694. str.TrimLeft(); str.TrimRight();
  1695. if (str.IsEmpty())continue;
  1696. sparray.ElementAt(realcount).Add(id);
  1697. sparray.ElementAt(realcount).Add(m_page1.m_List3.GetItemText(i, 0));
  1698. sparray.ElementAt(realcount).Add(m_page1.m_List3.GetItemText(i, 1));
  1699. sparray.ElementAt(realcount).Add(m_page1.m_List3.GetItemText(i, 2));
  1700. sparray.ElementAt(realcount).Add(m_page1.m_List3.GetItemText(i, 3));
  1701. sparray.ElementAt(realcount).Add(m_page1.m_List3.GetItemText(i, 4));
  1702. sparray.ElementAt(realcount).Add("2");
  1703. sparray.ElementAt(realcount).Add("");
  1704. sparray.ElementAt(realcount).Add("");
  1705. realcount++;
  1706. }
  1707. for (i = 0; i < m_page1.m_listbox1.GetCount(); i++)
  1708. {
  1709. m_page1.m_listbox1.GetText(i, str);
  1710. sparray.ElementAt(realcount).Add(id);
  1711. sparray.ElementAt(realcount).Add(str);
  1712. realcount++;
  1713. }
  1714. sparray.SetSize(realcount, 1);
  1715. if (realcount == 0)
  1716. {
  1717. sparray.SetSize(1, 1);
  1718. sparray.ElementAt(0).Add(id);
  1719. realcount++;
  1720. }
  1721. sparray.SetSize(realcount + 1, 1);
  1722. sparray.ElementAt(realcount).Add(g_user.name);
  1723. CMemFile memfile;
  1724. CArchive ar(&memfile, CArchive::store);
  1725. for (int ii = 0; ii < sparray.GetSize(); ii++)
  1726. {
  1727. sparray.ElementAt(ii).Serialize(ar);
  1728. }
  1729. ar.Close();
  1730. int length = memfile.GetLength();
  1731. BYTE *pData = memfile.Detach();
  1732. int size = sparray.GetSize();
  1733. BYTE *pData2 = new BYTE[length + sizeof(int)];
  1734. memcpy(pData2, pData, length);
  1735. memcpy(pData2 + length, &size, sizeof(int));
  1736. delete[]pData;
  1737. length += sizeof(int);
  1738. g_nSendCode = 8;
  1739. g_pMainWnd->ProcessChatMessageRequest2(pData2, length);
  1740. g_nSendCode = 0;
  1741. delete[]pData2;
  1742. if (g_bSendOK == 0)return;
  1743. #ifdef CHILD_VERSION
  1744. if (m_time3.IsEmpty() == 0)
  1745. {
  1746. sql.Format("update dindansp set hqdate='%s' where id='%s'", m_time3, id);
  1747. g_sendhead.bsql = 1;
  1748. g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return;
  1749. }
  1750. #endif
  1751. AfxMessageBox("保存成功!", MB_ICONINFORMATION);
  1752. }
  1753. void Booking2::OnBUTnew()
  1754. {
  1755. // TODO: Add your control notification handler code here
  1756. m_page1.NewDan();
  1757. m_page2.NewDan();
  1758. m_page3.NewDan();
  1759. m_page4.NewDan();
  1760. OnBUTinfo1();
  1761. GetDlgItem(IDC_BUTprint)->EnableWindow(0); GetDlgItem(IDC_BUTsave)->EnableWindow(1);
  1762. }
  1763. void Booking2::OnBUTprint()
  1764. {
  1765. // TODO: Add your control notification handler code here
  1766. g_pMainWnd->PrintDinDan(m_page1.m_id);
  1767. }
  1768. void Booking2::OnBUTimport()
  1769. {
  1770. if (AfxMessageBox("是否导入订单?", MB_YESNO | MB_ICONINFORMATION) != IDYES)
  1771. return;
  1772. CFileDialog fdlg(true, NULL, "", OFN_HIDEREADONLY, "影楼订单文件(*.*)|*.dan||");
  1773. if (fdlg.DoModal() != IDOK)
  1774. return;
  1775. CString path = fdlg.GetFileName();
  1776. CArray<CStringArray, CStringArray>g_Sel1array[20];//精英团队
  1777. CArray<CStringArray, CStringArray>g_Sel2array[20];//景点介绍
  1778. CArray<CStringArray, CStringArray>g_Sel3array[20];//套系内容
  1779. CArray<CStringArray, CStringArray>g_Sel4array[20];//产品展示
  1780. CArray<CStringArray, CStringArray>g_Sel5array[20];//礼服介绍
  1781. CString g_name1;
  1782. CString g_name2;
  1783. CString g_phone1;
  1784. CString g_phone2;
  1785. CString g_price1;
  1786. CString g_price2;
  1787. CString m_taoxiname;
  1788. {
  1789. CString str = path;
  1790. int pos = str.Find(".");
  1791. if (pos == -1)return;
  1792. str = str.Left(pos);
  1793. pos = str.Find(" ");
  1794. if (pos == -1)return;
  1795. g_name1 = str.Left(pos); str = str.Right(str.GetLength() - pos - 1);
  1796. pos = str.Find(" ");
  1797. if (pos == -1)return;
  1798. g_name2 = str.Left(pos); str = str.Right(str.GetLength() - pos - 1);
  1799. pos = str.Find(" ");
  1800. if (pos == -1)return;
  1801. g_phone1 = str.Left(pos); str = str.Right(str.GetLength() - pos - 1);
  1802. pos = str.Find(" ");
  1803. if (pos == -1)return;
  1804. g_phone2 = str.Left(pos); str = str.Right(str.GetLength() - pos - 1);
  1805. }
  1806. int length[100];
  1807. CFile fp;
  1808. fp.Open(path, CFile::modeRead);
  1809. int fileleng = fp.GetLength();
  1810. int memlength = fileleng - sizeof(int) * 100;
  1811. int i = 0;
  1812. for ( i = 0; i < 100; i++)
  1813. fp.Read(length + i, sizeof(int));
  1814. for (i = 0; i < 20; i++)
  1815. g_Sel1array[i].SetSize(length[i]);
  1816. for (i = 0; i < 20; i++)
  1817. g_Sel2array[i].SetSize(length[20 + i]);
  1818. for (i = 0; i < 20; i++)
  1819. g_Sel3array[i].SetSize(length[40 + i]);
  1820. for (i = 0; i < 20; i++)
  1821. g_Sel4array[i].SetSize(length[60 + i]);
  1822. for (i = 0; i < 20; i++)
  1823. g_Sel5array[i].SetSize(length[80 + i]);
  1824. BYTE *pData = new BYTE[memlength];
  1825. fp.Read(pData, memlength);
  1826. fp.Close();
  1827. CMemFile memfile;
  1828. memfile.Attach(pData, memlength);
  1829. CArchive ar(&memfile, CArchive::load);
  1830. for (i = 0; i < 20; i++)
  1831. {
  1832. for (int j = 0; j < length[i]; j++)
  1833. g_Sel1array[i].ElementAt(j).Serialize(ar);
  1834. }
  1835. for (i = 0; i < 20; i++)
  1836. {
  1837. for (int j = 0; j < g_Sel2array[i].GetSize(); j++)
  1838. g_Sel2array[i].ElementAt(j).Serialize(ar);
  1839. }
  1840. for (i = 0; i < 20; i++)
  1841. {
  1842. for (int j = 0; j < g_Sel3array[i].GetSize(); j++)
  1843. g_Sel3array[i].ElementAt(j).Serialize(ar);
  1844. }
  1845. for (i = 0; i < 20; i++)
  1846. {
  1847. for (int j = 0; j < g_Sel4array[i].GetSize(); j++)
  1848. g_Sel4array[i].ElementAt(j).Serialize(ar);
  1849. }
  1850. for (i = 0; i < 20; i++)
  1851. {
  1852. for (int j = 0; j < g_Sel5array[i].GetSize(); j++)
  1853. g_Sel5array[i].ElementAt(j).Serialize(ar);
  1854. }
  1855. ar.Close();
  1856. memfile.Detach();
  1857. delete[]pData;
  1858. if (g_Sel5array[19].GetSize())
  1859. {
  1860. g_price1 = g_Sel5array[19].ElementAt(0).ElementAt(0);
  1861. g_price2 = g_Sel5array[19].ElementAt(0).ElementAt(1);
  1862. }
  1863. else
  1864. {
  1865. g_price1 = g_price2 = "";
  1866. }
  1867. CStringArray array;
  1868. for (i = 0; i < 19; i++)
  1869. {
  1870. for (int j = 0; j < g_Sel3array[i].GetSize(); j++)
  1871. {
  1872. if (g_Sel3array[i].ElementAt(j).GetSize() < 2)continue;
  1873. int count = g_Sel3array[i].ElementAt(j).GetSize();
  1874. for (int a = 1; a < count; a++)
  1875. {
  1876. if (a == 1)
  1877. {
  1878. m_taoxiname = g_Sel3array[i].ElementAt(j).ElementAt(a);
  1879. // m_combotaoxiname.InsertString (0, taoxiname);
  1880. // m_combotaoxiname.SetCurSel (0);
  1881. }
  1882. else
  1883. {
  1884. CString str = g_Sel3array[i].ElementAt(j).ElementAt(a);
  1885. CString dir, name;
  1886. int pos = str.ReverseFind('\\');
  1887. dir = str.Left(pos);
  1888. name = str.Right(str.GetLength() - pos - 1);
  1889. array.Add(name);
  1890. }
  1891. }
  1892. }
  1893. }
  1894. for (i = 0; i < 19; i++)
  1895. {
  1896. for (int j = 0; j < g_Sel4array[i].GetSize(); j++)
  1897. {
  1898. int count = g_Sel4array[i].ElementAt(j).GetSize();
  1899. for (int a = 1; a < count; a++)
  1900. {
  1901. array.Add(g_Sel4array[i].ElementAt(j).ElementAt(a));
  1902. }
  1903. }
  1904. }
  1905. for (i = 0; i < array.GetSize(); i++)
  1906. {
  1907. int pos = m_page1.m_List1.GetItemCount();
  1908. CString str;
  1909. if (pos)
  1910. {
  1911. if (m_page1.m_List1.GetItemText(pos - 1, 0).IsEmpty() && m_page1.m_List1.GetItemText(pos - 1, 1).IsEmpty())
  1912. {
  1913. pos--;
  1914. m_page1.m_List1.SetItemText(pos, 0, "");
  1915. m_page1.m_List1.SetItemText(pos, 1, array.ElementAt(i));
  1916. m_page1.m_List1.SetItemText(pos, 2, "");
  1917. m_page1.m_List1.SetItemText(pos, 3, "1");
  1918. }
  1919. else
  1920. {
  1921. m_page1.m_List1.InsertItem(pos, "");
  1922. m_page1.m_List1.SetItemText(pos, 1, array.ElementAt(i));
  1923. m_page1.m_List1.SetItemText(pos, 2, "");
  1924. m_page1.m_List1.SetItemText(pos, 3, "1");
  1925. }
  1926. }
  1927. else
  1928. {
  1929. m_page1.m_List1.InsertItem(pos, "");
  1930. m_page1.m_List1.SetItemText(pos, 1, array.ElementAt(i));
  1931. m_page1.m_List1.SetItemText(pos, 2, "");
  1932. m_page1.m_List1.SetItemText(pos, 3, "1");
  1933. }
  1934. }
  1935. if (g_Sel5array[19].GetSize())
  1936. {
  1937. g_price1 = g_Sel5array[19].ElementAt(0).ElementAt(0);
  1938. g_price2 = g_Sel5array[19].ElementAt(0).ElementAt(1);
  1939. }
  1940. else
  1941. {
  1942. g_price1 = g_price2 = "";
  1943. }
  1944. OnBUTnew();
  1945. m_page1.m_taoxiname = m_taoxiname;
  1946. m_page1.m_taoxijiage = g_price1;
  1947. m_page1.m_payed1 = g_price2;
  1948. m_page1.UpdateData(0);
  1949. m_page2.m_name1 = g_name1;
  1950. m_page2.m_name2 = g_name2;
  1951. m_page2.m_phone1 = g_phone1;
  1952. m_page2.m_phone2 = g_phone2;
  1953. m_page2.UpdateData(0);
  1954. }
  1955. BOOL Booking2::PreTranslateMessage(MSG* pMsg)
  1956. {
  1957. // TODO: Add your specialized code here and/or call the base class
  1958. try
  1959. {
  1960. if (pMsg->message == WM_KEYDOWN)
  1961. {
  1962. switch (pMsg->wParam)
  1963. {
  1964. case VK_ESCAPE:
  1965. if (m_bModify)CDialog::OnCancel();
  1966. return 1;
  1967. }
  1968. }
  1969. return CDialog::PreTranslateMessage(pMsg);
  1970. }
  1971. catch (...)
  1972. {
  1973. }
  1974. return true;
  1975. }