ChoosePhotoSkin3.cpp 42 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407
  1. // ChoosePhotoSkin3.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "ChoosePhotoSkin3.h"
  5. #include "YLGL.h"
  6. #include "./helper/ffsco.h"
  7. #include ".\MenuBarXP\MenuXP.h"
  8. #include "PrintRX.h"
  9. #include "LoadRect.h"
  10. #include "PrintPreview.h"
  11. #include "InputJT.h"
  12. #include "DesinCheck.h"
  13. #include "Login2.h"
  14. #include "SPLBDlg.h"
  15. #include "InputPrice.h"
  16. #include "ZZB.h"
  17. // Jeff add 2014-12-11 分隔符;
  18. //#define SEPARATOR _T("|")
  19. ChoosePhotoSkin3::ChoosePhotoSkin3(CWnd* pParent /*=NULL*/) : CDialog(ChoosePhotoSkin3::IDD, pParent)
  20. {
  21. m_bz3 = _T("");
  22. m_time5 = _T("");
  23. m_urgent = _T("");
  24. m_time6 = _T("");
  25. m_bz4 = _T("");
  26. m_name1 = _T("");
  27. m_time4 = g_date;
  28. m_waiter3 = _T("");
  29. m_takezs = _T("");
  30. m_taoxizs = _T("");
  31. m_choosezs = _T("");
  32. m_id = _T("");
  33. m_money3 = _T("");
  34. m_bSave = 0;
  35. m_bModify = 0;
  36. m_bPushedSave = 0;
  37. m_strStatusOfChoosePhoto = "未选";
  38. m_bReChoose = FALSE;
  39. //m_delphotosMode = 0; //默认为选片模式;// 已使用GetParent()->m_mode2;
  40. }
  41. void ChoosePhotoSkin3::DoDataExchange(CDataExchange* pDX)
  42. {
  43. CDialog::DoDataExchange(pDX);
  44. DDX_Control(pDX, IDC_EDITtime6, m_datectrl2);
  45. DDX_Control(pDX, IDC_COMBO1, m_combo1);
  46. DDX_Control(pDX, IDC_EDITtime5, m_datenum);
  47. DDX_Control(pDX, IDC_COMBOurgent, m_combourgent);
  48. DDX_Control(pDX, IDC_EDITzs3, m_editnum4);
  49. DDX_Control(pDX, IDC_EDITzs2, m_editnum3);
  50. DDX_Control(pDX, IDC_EDITzs, m_editnum2);
  51. DDX_Control(pDX, IDC_EDITmoney3, m_editnum1);
  52. DDX_Control(pDX, IDC_LIST3, m_List3);
  53. DDX_Control(pDX, IDC_LIST2, m_List2);
  54. DDX_Control(pDX, IDC_LIST1, m_List1);
  55. DDX_Text(pDX, IDC_EDITname1, m_name1);
  56. DDX_Text(pDX, IDC_EDITtime4, m_time4);
  57. DDX_Text(pDX, IDC_EDITwaiter3, m_waiter3);
  58. DDX_Text(pDX, IDC_EDITzs, m_takezs);
  59. DDX_Text(pDX, IDC_EDITzs2, m_taoxizs);
  60. DDX_Text(pDX, IDC_EDITzs3, m_choosezs);
  61. DDX_Text(pDX, IDC_EDITmoney3, m_money3);
  62. DDX_Text(pDX, IDC_EDITbz3, m_bz3);
  63. DDV_MaxChars(pDX, m_bz3, 1000);
  64. DDX_Text(pDX, IDC_EDITtime5, m_time5);
  65. DDX_Text(pDX, IDC_EDITtime6, m_time6);
  66. DDX_Text(pDX, IDC_EDITid, m_id);
  67. DDX_Text(pDX, IDC_EDITbz4, m_bz4);
  68. }
  69. BEGIN_MESSAGE_MAP(ChoosePhotoSkin3, CDialog)
  70. ON_WM_CLOSE()
  71. ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
  72. ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
  73. ON_BN_CLICKED(IDC_BUTTON3, OnButton3)
  74. ON_BN_CLICKED(IDC_BUTTON4, OnButton4)
  75. ON_WM_TIMER()
  76. ON_BN_CLICKED(IDC_BUTTON7, OnSpBox)
  77. ON_BN_CLICKED(IDC_BUTTON8, OnButton8)
  78. ON_BN_CLICKED(IDC_BUTTON5, OnButton5)
  79. ON_BN_CLICKED(IDC_BUTTON6, OnButton6)
  80. ON_BN_CLICKED(IDC_BTNprint, OnBTNprint)
  81. ON_BN_CLICKED(IDC_BUTTON9, OnButton9)
  82. ON_BN_CLICKED(IDC_BTNprint2, OnBTNprint2)
  83. ON_WM_PAINT()
  84. ON_WM_DESTROY()
  85. ON_BN_CLICKED(IDC_BUTTON12, OnButton12)
  86. END_MESSAGE_MAP()
  87. /////////////////////////////////////////////////////////////////////////////
  88. BOOL ChoosePhotoSkin3::OnInitDialog()
  89. {
  90. CDialog::OnInitDialog();
  91. if (m_pParent->m_mode2)
  92. {
  93. GetDlgItem(IDC_STATIC2)->ShowWindow(0);
  94. GetDlgItem(IDC_STATIC4)->ShowWindow(0);
  95. GetDlgItem(IDC_STATIC6)->ShowWindow(0);
  96. GetDlgItem(IDC_EDITzs)->ShowWindow(0);
  97. GetDlgItem(IDC_EDITzs2)->ShowWindow(0);
  98. GetDlgItem(IDC_EDITzs3)->ShowWindow(0);
  99. m_combo1.AddString("OK");
  100. m_combo1.AddString("修改中");
  101. m_combo1.AddString("未看");
  102. CRect rc;
  103. GetDlgItem(IDC_STATIC8)->GetWindowRect(rc);
  104. ScreenToClient(rc);
  105. GetDlgItem(IDC_STATIC5)->MoveWindow(rc);
  106. GetDlgItem(IDC_EDITzs2)->GetWindowRect(rc);
  107. ScreenToClient(rc);
  108. GetDlgItem(IDC_EDITmoney3)->MoveWindow(rc);
  109. GetDlgItem(IDC_STATIC8)->ShowWindow(0);
  110. GetDlgItem(IDC_COMBO1)->ShowWindow(0);
  111. }
  112. else
  113. {
  114. GetDlgItem(IDC_STATIC8)->ShowWindow(0);
  115. GetDlgItem(IDC_COMBO1)->ShowWindow(0);
  116. }
  117. CTime tm(atoi(g_date.Mid(0, 4)), atoi(g_date.Mid(5, 2)), atoi(g_date.Mid(8, 2)), CTime::GetCurrentTime().GetHour(), CTime::GetCurrentTime().GetMinute(), CTime::GetCurrentTime().GetSecond());
  118. #ifdef LKAY_VERSION
  119. CTimeSpan dt(31, 0, 0, 0);
  120. tm+=dt;
  121. m_datenum.SetDefaultValue(tm.Format ("%Y-%m-%d"));
  122. CTimeSpan dt2(4, 0, 0, 0);
  123. tm-=dt2;
  124. m_datectrl2.SetDefaultValue(tm.Format ("%Y-%m-%d"));
  125. #else
  126. CTimeSpan dt(61, 0, 0, 0);
  127. tm += dt;
  128. m_datenum.SetDefaultValue(tm.Format("%Y-%m-%d"));
  129. CTimeSpan dt2(31, 0, 0, 0);
  130. tm -= dt2;
  131. m_datectrl2.SetDefaultValue(tm.Format("%Y-%m-%d"));
  132. #endif
  133. m_bPushedSave = 0;
  134. m_bSaveFail = 0;
  135. m_List2.InitStyle();
  136. m_List2.InsertColumn(0, _T("编号"), LVCFMT_LEFT, 55);
  137. m_List2.InsertColumn(1, _T("商品名称"), LVCFMT_LEFT, 150);
  138. m_List2.InsertColumn(2, _T("数量"), LVCFMT_LEFT, 55);
  139. m_List3.InitStyle();
  140. m_List3.InsertColumn(0, _T("autuid"), LVCFMT_LEFT, 0);
  141. m_List3.InsertColumn(1, _T("编号"), LVCFMT_LEFT, 55);
  142. m_List3.InsertColumn(2, _T("商品名称"), LVCFMT_LEFT, 150);
  143. m_List3.InsertColumn(3, _T("价格"), LVCFMT_LEFT, 55);
  144. m_List3.InsertColumn(4, _T("数量"), LVCFMT_LEFT, 55);
  145. #ifdef LKAY_VERSION
  146. m_List3.InsertColumn(5,_T("P数"),LVCFMT_LEFT,55);
  147. m_List3.InsertColumn(6,_T("张数"),LVCFMT_LEFT,55);
  148. m_List3.InsertColumn(7,_T("照片编号"),LVCFMT_LEFT,355);
  149. #else
  150. m_List3.InsertColumn(5, _T("照片编号"), LVCFMT_LEFT, 355);
  151. #endif
  152. m_combourgent.AddString("是");
  153. m_combourgent.AddString("否");
  154. LoadData(1);
  155. // AnimateWindow(GetSafeHwnd(), 3000, AW_BLEND);
  156. return false;
  157. }
  158. void ChoosePhotoSkin3::OnOK()
  159. {
  160. }
  161. void ChoosePhotoSkin3::OnCancel()
  162. {
  163. m_bExit = 0;
  164. LoadData(0);
  165. CDialog::OnCancel();
  166. }
  167. void ChoosePhotoSkin3::OnClose()
  168. {
  169. m_bExit = 0;
  170. SetSPName3();
  171. SetSPName2();
  172. LoadData(0);
  173. CDialog::OnCancel();
  174. }
  175. BOOL ChoosePhotoSkin3::PreTranslateMessage(MSG* pMsg)
  176. {
  177. if (0)//pMsg->message==WM_LBUTTONDOWN)
  178. {
  179. {//list2
  180. CPoint pt;
  181. CRect rc, rc2;
  182. ::GetCursorPos(&pt);
  183. m_List2.GetWindowRect(rc2);
  184. if (rc2.PtInRect(pt) == 0) goto mm;
  185. SetTimer(2, 300, NULL);
  186. }
  187. mm: {//list3
  188. CPoint pt;
  189. CRect rc, rc2;
  190. ::GetCursorPos(&pt);
  191. m_List3.GetWindowRect(rc2);
  192. if (rc2.PtInRect(pt) == 0) return CDialog::PreTranslateMessage(pMsg);
  193. SetTimer(3, 300, NULL);
  194. }
  195. }
  196. else if (pMsg->message == WM_LBUTTONDBLCLK)
  197. {
  198. {//list2
  199. CPoint pt;
  200. CRect rc, rc2;
  201. ::GetCursorPos(&pt);
  202. m_List2.GetWindowRect(rc2);
  203. if (rc2.PtInRect(pt) == 0) goto ll;
  204. /* pt.x-=rc2.left ;
  205. pt.y-=rc2.top ;
  206. POSITION pos;
  207. pos=m_List2.GetFirstSelectedItemPosition();
  208. if(pos==NULL)return 1;
  209. int iItem=m_List2.GetNextSelectedItem(pos);
  210. m_List2.GetSubItemRect( iItem,4, LVIR_BOUNDS, rc);
  211. if(rc.PtInRect (pt))
  212. return CDialog::PreTranslateMessage(pMsg);
  213. else*/
  214. return 1;
  215. }
  216. ll: {//list3
  217. CPoint pt;
  218. CRect rc, rc2;
  219. ::GetCursorPos(&pt);
  220. m_List3.GetWindowRect(rc2);
  221. if (rc2.PtInRect(pt) == 0) return CDialog::PreTranslateMessage(pMsg);
  222. pt.x -= rc2.left;
  223. pt.y -= rc2.top;
  224. POSITION pos;
  225. pos = m_List3.GetFirstSelectedItemPosition();
  226. if (pos == NULL)return 1;
  227. int iItem = m_List3.GetNextSelectedItem(pos);
  228. m_List3.GetSubItemRect(iItem, 4, LVIR_BOUNDS, rc);
  229. if (1)//rc.PtInRect (pt))
  230. return CDialog::PreTranslateMessage(pMsg);
  231. else
  232. return 1;
  233. }
  234. }
  235. if (pMsg->message == WM_KEYDOWN)
  236. {
  237. switch (pMsg->wParam)
  238. {
  239. case VK_DELETE:
  240. {
  241. if (GetFocus() == GetDlgItem(IDC_EDITbz4))
  242. {
  243. if (AfxMessageBox("删除后将无法恢复, 确认删除备注吗?", MB_YESNO) != IDYES)return 1;
  244. m_bz4 = "";
  245. SetDlgItemText(IDC_EDITbz4, "");
  246. }
  247. }
  248. return 1;
  249. }
  250. }
  251. return CDialog::PreTranslateMessage(pMsg);
  252. }
  253. int ChoosePhotoSkin3::GetZS(CString str)
  254. {
  255. str.TrimLeft(",");
  256. str.TrimRight(",");
  257. if (str.IsEmpty())return 0;
  258. int pos = str.Find(',');
  259. int count = 1;
  260. while (pos != -1)
  261. {
  262. str.Delete(pos);
  263. pos = str.Find(',');
  264. count++;
  265. }
  266. return count;
  267. }
  268. long ChoosePhotoSkin3::UpdateTakeZS(WPARAM inWParam, LPARAM inLParam)
  269. {
  270. return 1;
  271. }
  272. void ChoosePhotoSkin3::OnButton1()
  273. {
  274. }
  275. void ChoosePhotoSkin3::UpdateChooseZS()
  276. {
  277. }
  278. void ChoosePhotoSkin3::OnButton2()
  279. {
  280. POSITION pos;
  281. pos = m_List2.GetFirstSelectedItemPosition();
  282. if (pos == NULL)
  283. {
  284. AfxMessageBox("请先选中您要重选的商品!", MB_ICONINFORMATION);
  285. return;
  286. }
  287. m_bModify = 1;
  288. int iItem = m_List2.GetNextSelectedItem(pos);
  289. m_List2.SetItemText(iItem, 4, "");
  290. m_noarray.SetAt(iItem, "");
  291. UpdateChooseZS();
  292. }
  293. void ChoosePhotoSkin3::OnButton9()
  294. {
  295. POSITION pos;
  296. pos = m_List3.GetFirstSelectedItemPosition();
  297. if (pos == NULL)
  298. {
  299. AfxMessageBox("请先选中您要升级的商品!", MB_ICONINFORMATION);
  300. return;
  301. }
  302. m_bModify = 1;
  303. int iItem = m_List3.GetNextSelectedItem(pos);
  304. SPBox dlg;
  305. if (dlg.DoModal() != IDOK)return;
  306. m_List3.SetItemText(iItem, 1, dlg.m_spid);
  307. m_List3.SetItemText(iItem, 2, GetSPNameFromId(dlg.m_spid));
  308. CString str;
  309. str.Format("%f", GetSPPriceFromId(dlg.m_spid));
  310. ConvertToPrice(str);
  311. m_List3.SetItemText(iItem, 3, str);
  312. }
  313. void ChoosePhotoSkin3::OnButton3()// 刷新按钮;
  314. {
  315. if (m_List2.GetItemCount())return;
  316. CString sql = "gentakecontent:" + m_id;
  317. g_sendhead.bsql = 1;
  318. g_pMainWnd->ProcessChatMessageRequest2(sql);//printf("Jeff:sql=%s\n\n",sql);// Jeff Printf
  319. if (g_bSendOK == 0)
  320. return;
  321. CString filter = "id='" + m_id + "'";
  322. g_sendhead.code[0] = 182;
  323. g_sendhead.tabcount = 1;
  324. g_sendhead.bsql = 0;
  325. g_pMainWnd->ProcessChatMessageRequest2(filter);//printf("Jeff:filter=%s\n\n",filter);// Jeff Printf
  326. if (g_bSendOK == 0)return;
  327. CArray<CStringArray, CStringArray>sparray;
  328. DataToArray(&g_List1array);
  329. m_List2.DeleteAllItems();
  330. for (int i = 0; i < g_List1array.GetSize(); i++)
  331. {
  332. m_List2.InsertItem(i, g_List1array.ElementAt(i).ElementAt(1));
  333. m_List2.SetItemText(i, 1, g_List1array.ElementAt(i).ElementAt(2));
  334. m_List2.SetItemText(i, 2, g_List1array.ElementAt(i).ElementAt(3));
  335. }
  336. /* for(int i=0; i<m_List2.GetItemCount (); i++)
  337. {
  338. m_List2.SetItemText (i, 4, "");
  339. m_noarray.SetAt (i, "");
  340. }
  341. UpdateChooseZS();m_bModify=1;*/
  342. }
  343. CString ChoosePhotoSkin3::GetLB(CString name)
  344. {
  345. for (int i = 0; i < m_pParent->m_List2array.GetSize(); i++)
  346. {
  347. if (name == m_pParent->m_List2array.ElementAt(i).ElementAt(1))
  348. return m_pParent->m_List2array.ElementAt(i).ElementAt(4);
  349. }
  350. return "";
  351. }
  352. void ChoosePhotoSkin3::OnButton4() // 保存按钮;
  353. {
  354. m_bPushedSave = 1;
  355. SetSPName3();
  356. SetSPName2();
  357. UpdateData();
  358. if (!CheckDateOK(m_time5))return;
  359. if (!CheckDateOK(m_time6))return;
  360. OnButton3();
  361. CString m_authorize;
  362. CString m_discount;
  363. if (atoi(g_cominfoarray.ElementAt(0).ElementAt(113)))//计算折扣
  364. {
  365. float m_saleprice1 = GetMoney();
  366. float m_saleprice2 = GetMoney2();
  367. if (m_saleprice1 > m_saleprice2)
  368. m_discount.Format("%0.3f", min(10.0, (atof(m_money3) * 10) / (m_saleprice1 - m_saleprice2)));
  369. else
  370. m_discount = "10.0";
  371. if (IsHasRights2new(26) == 0 && atof(m_money3) > 0.1)//无折扣权限
  372. {
  373. if (m_discount != "10.0")
  374. {
  375. AfxMessageBox("价格太低,需授权!!", MB_ICONINFORMATION);
  376. Login2 dlg;
  377. dlg.m_mode = 2;
  378. if (dlg.DoModal() != IDOK)return;
  379. if (IsHasRightsnew2(26, dlg.m_rights) == 0)return;
  380. m_discount.Format("%0.3f", min(10.0, (atof(m_money3) * 10) / (m_saleprice1 - m_saleprice2)));
  381. if (atof(m_discount) < atof(dlg.m_discount2))
  382. {
  383. CString str;
  384. str.Format("折扣%s太低,需授权!", m_discount);
  385. if (AfxMessageBox(str, MB_ICONINFORMATION))return;
  386. }
  387. m_authorize = dlg.m_name;
  388. }
  389. }
  390. else if (atof(m_discount) < atof(g_user.m_discount2))//&& atof(m_money3)>0.1 )
  391. {
  392. AfxMessageBox("价格太低,需授权!!", MB_ICONINFORMATION);
  393. Login2 dlg;
  394. dlg.m_mode = 2;
  395. if (dlg.DoModal() != IDOK)return;
  396. if (IsHasRightsnew2(26, dlg.m_rights) == 0)return;
  397. m_discount.Format("%0.3f", min(10.0, (atof(m_money3) * 10) / (m_saleprice1 - m_saleprice2)));
  398. if (atof(m_discount) < atof(dlg.m_discount2))
  399. {
  400. CString str;
  401. str.Format("折扣%s太低,需授权!", m_discount);
  402. if (AfxMessageBox(str, MB_ICONINFORMATION))return;
  403. }
  404. m_authorize = dlg.m_name;
  405. }
  406. }
  407. if (m_pParent->m_mode2)
  408. {
  409. DesinCheck dlg;
  410. int pos = m_combo1.GetCurSel();
  411. if (pos != -1)
  412. m_combo1.GetLBText(pos, m_status8);
  413. dlg.m_status8 = m_status8;
  414. dlg.DoModal();
  415. m_status8 = dlg.m_status8;
  416. m_combo1.SetCurSel(m_combo1.FindString(0, m_status8));
  417. }
  418. CString str, sql;
  419. CArray<CStringArray, CStringArray>sparray;
  420. sparray.SetSize(m_no2array.GetSize());
  421. int i = 0;
  422. BOOL bZZB = 0;
  423. for (int j = 0; j < m_no2array.GetSize(); j++)
  424. {
  425. sparray.ElementAt(i).Add(m_id);
  426. sparray.ElementAt(i).Add(m_List3.GetItemText(j, 0));
  427. sparray.ElementAt(i).Add(m_List3.GetItemText(j, 1));
  428. str = m_List3.GetItemText(j, 2); str.TrimRight();
  429. sparray.ElementAt(i).Add(str);
  430. if (str == "掌中宝app")bZZB = 1;
  431. sparray.ElementAt(i).Add(m_List3.GetItemText(j, 3));
  432. sparray.ElementAt(i).Add(m_List3.GetItemText(j, 4)); // m_List3.Item 4 = 选中的相片串;
  433. #ifdef LKAY_VERSION
  434. sparray.ElementAt (i).Add ( m_List3.GetItemText (j, 5) );
  435. sparray.ElementAt (i).Add ( m_List3.GetItemText (j, 6) );
  436. sparray.ElementAt (i).Add (m_List3.GetItemText (j, 7) );//编号
  437. #else
  438. sparray.ElementAt(i).Add(m_List3.GetItemText(j, 5));//编号
  439. #endif
  440. sparray.ElementAt(i).Add("4");
  441. if (m_pParent->m_mode2)
  442. {
  443. sparray.ElementAt(i).Add(m_status8);
  444. sparray.ElementAt(i).Add(GetLB(m_List3.GetItemText(j, 2)));
  445. sparray.ElementAt(i).Add(m_List3.GetItemText(j, 4));
  446. sparray.ElementAt(i).Add(m_pParent->m_seltxname);
  447. }
  448. else
  449. sparray.ElementAt(i).Add(m_pParent->m_seltxname);
  450. i++;
  451. }
  452. if (sparray.GetSize() == 0)
  453. {
  454. sparray.SetSize(1);
  455. sparray.ElementAt(0).Add(m_id);
  456. }
  457. int realcount = sparray.GetSize();
  458. sparray.SetSize(realcount + 1, 1);
  459. sparray.ElementAt(realcount).Add(g_user.name);
  460. CMemFile memfile;
  461. CArchive ar(&memfile, CArchive::store);
  462. for (int ii = 0; ii < sparray.GetSize(); ii++)
  463. {
  464. sparray.ElementAt(ii).Serialize(ar);
  465. }
  466. ar.Close();
  467. int length = memfile.GetLength();
  468. BYTE *pData = memfile.Detach();
  469. int size = sparray.GetSize();
  470. BYTE *pData2 = new BYTE[length + sizeof(int)];
  471. memcpy(pData2, pData, length);
  472. memcpy(pData2 + length, &size, sizeof(int));
  473. delete[]pData;
  474. length += sizeof(int);
  475. CString savepath;
  476. savepath.Format("%s\\%s.dat", g_mainpath, m_id);
  477. if (m_pParent->m_mode2)
  478. savepath.Format("%s\\%s-2.dat", g_mainpath, m_id);
  479. if (0)
  480. {
  481. CFile fp;
  482. fp.Open(savepath, CFile::modeCreate | CFile::modeWrite);
  483. fp.Write(pData2, length);
  484. fp.Close();
  485. }
  486. g_nSendCode = 6;
  487. if (m_pParent->m_mode2)
  488. {
  489. g_nSendCode = 24;
  490. }
  491. g_pMainWnd->ProcessChatMessageRequest2(pData2, length);
  492. g_nSendCode = 0;
  493. if (g_bSendOK == 0)
  494. {
  495. delete[]pData2;
  496. m_bSaveFail = 1;
  497. return;
  498. }
  499. ::DeleteFile(savepath);
  500. delete[]pData2;
  501. m_combourgent.GetLBText(m_combourgent.GetCurSel(), m_urgent);
  502. FilterBZ(m_bz3);
  503. CString delphotos;
  504. for (i = 0; i < m_pParent->m_patharray4.GetSize(); i++)
  505. {
  506. if (delphotos.GetLength() > 4096)break;
  507. CString no = m_pParent->m_patharray4.ElementAt(i);// Jeff.m_patharray4 在选片时被删除的相片名的全路径集合;
  508. no = no.Right(no.GetLength() - no.ReverseFind('\\') - 1);
  509. no = no.Left(no.Find('.'));
  510. delphotos += no;
  511. delphotos += ";";
  512. }
  513. // Jeff:delphotos:为m_patharray4解析为只有相片名,以分号为分隔符的字符串;
  514. if (!delphotos.IsEmpty())
  515. {
  516. delphotos.TrimLeft(";");
  517. delphotos.TrimRight(";");
  518. delphotos = ";" + delphotos;
  519. delphotos += ";";
  520. }
  521. // Jeff,选片状态已经为OK的,拒绝更改选片人和选片状态;2014.08.30
  522. // Jeff,先要获取选片状态。
  523. // GetParent()->m_mode2
  524. #if JEFF_TEST_ON
  525. // 若重选全部,清空一切;
  526. CSQLStatementImpl::GetInstancePtr()->ReSetKind(_T("dindan"), _T("where id='") + m_id + _T("'"), KIND_UPDATE, 15);
  527. if (m_bReChoose == TRUE)
  528. {
  529. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("status2"), _T("未选")); // 选片状态;
  530. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("waiter3"), _T("")); // 选片人;
  531. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("taoxizs"), m_taoxizs);
  532. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("takezs"), _T(""));
  533. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("choosezs"), _T(""));
  534. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time4"), _T("")); // 选片时间 ;
  535. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time5"), _T("")); // 订单的取件时间 ;
  536. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time6"), m_time6); // 看设计时间;
  537. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("urgent"), m_urgent); // 是否加急;
  538. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("money3"), _T("")); // 加挑金额;
  539. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("bz3"), _T(""));
  540. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("bz4"), _T(""));
  541. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("delphotos"), _T("")); // 选片时,被删除的相片;
  542. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("authorize2"), m_authorize);
  543. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("discount2"), m_discount);
  544. CSQLStatementImpl::GetInstancePtr()->ReturnSQL(sql);
  545. //sql = CSQLStatementImpl::GetInstancePtr()->ReturnSQL();
  546. }
  547. else
  548. {
  549. if ( m_strStatusOfChoosePhoto == _T("OK"))
  550. {
  551. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("taoxizs"), m_taoxizs); // 套系张数:入底\入册;
  552. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("takezs"), m_takezs); // 拍摄张数(底片张数);
  553. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("choosezs"), m_choosezs); // 加挑张数;
  554. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time4"), m_time4); // 选片时间 ;
  555. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time5"), m_time5); // 订单的取件时间 ;
  556. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time6"), m_time6); // 看设计时间;
  557. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("urgent"), m_urgent); // 是否加急;
  558. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("money3"), m_money3); // 加挑金额;
  559. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("bz3"), m_bz3);
  560. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("bz4"), m_bz4);
  561. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("delphotos"), delphotos); // 选片时,被删除的相片;
  562. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("authorize2"), m_authorize);
  563. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("discount2"), m_discount);
  564. CSQLStatementImpl::GetInstancePtr()->ReturnSQL(sql);
  565. //sql = CSQLStatementImpl::GetInstancePtr()->ReturnSQL();
  566. }
  567. else
  568. {
  569. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("status2"), _T("OK")); // 选片状态;
  570. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("waiter3"), m_waiter3); // 选片人;
  571. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("taoxizs"), m_taoxizs);
  572. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("takezs"), m_takezs);
  573. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("choosezs"), m_choosezs);
  574. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time4"), m_time4);
  575. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time5"), m_time5);
  576. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time6"), m_time6);
  577. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("urgent"), m_urgent);
  578. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("money3"), m_money3);
  579. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("bz3"), m_bz3);
  580. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("bz4"), m_bz4);
  581. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("delphotos"), delphotos);
  582. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("authorize2"), m_authorize);
  583. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("discount2"), m_discount);
  584. CSQLStatementImpl::GetInstancePtr()->ReturnSQL(sql);
  585. //sql = CSQLStatementImpl::GetInstancePtr()->ReturnSQL();
  586. }
  587. }
  588. //WriteClientLog(sql);
  589. #else
  590. if (m_strStatusOfChoosePhoto == "OK" )
  591. sql = "update dindan set taoxizs='" + m_taoxizs + "',takezs='" + m_takezs + "',choosezs='" + m_choosezs + "',time4='" + m_time4 + "',time5='" + m_time5 + "',time6='" + m_time6 + "',urgent='" + m_urgent + "',money3='" + m_money3 + "',bz3='" + m_bz3 + "',bz4='" + m_bz4 + "',delphotos='" + delphotos + "',authorize2='" + m_authorize + "',discount2='" + m_discount + "' where id='" + m_id + "'";
  592. else
  593. sql = "update dindan set status2='OK',waiter3='" + m_waiter3 + "',taoxizs='" + m_taoxizs + "',takezs='" + m_takezs + "',choosezs='" + m_choosezs + "',time4='" + m_time4 + "',time5='" + m_time5 + "',time6='" + m_time6 + "',urgent='" + m_urgent + "',money3='" + m_money3 + "',bz3='" + m_bz3 + "',bz4='" + m_bz4 + "',delphotos='" + delphotos + "',authorize2='" + m_authorize + "',discount2='" + m_discount + "' where id='" + m_id + "'";
  594. #endif
  595. if (m_pParent->m_mode2) // 看设计;
  596. {
  597. if (m_status8 != "OK")
  598. {
  599. sql = "update dindan set bz2='" + m_bz3 + "',status8='" + m_status8 + "',status5='设计中',time6='" + m_time6 + "',time5='" + m_time5 + "',waiter8='" + g_user.name + "',urgent='" + m_urgent + "',money3='" + m_money3 + "',delphotos2='" + delphotos + "',authorize2='" + m_authorize + "',discount2='" + m_discount + "' where id='" + m_id + "'";
  600. }
  601. else
  602. {
  603. sql = "update dindan set bz2='" + m_bz3 + "',status8='" + m_status8 + "',status5='OK',time6='" + m_time6 + "',time5='" + m_time5 + "',waiter8='" + g_user.name + "',urgent='" + m_urgent + "',money3='" + m_money3 + "',delphotos2='" + delphotos + "',authorize2='" + m_authorize + "',discount2='" + m_discount + "' where id='" + m_id + "'";
  604. }
  605. /////////////////////////
  606. CString m_name1 = m_pParent->m_name1;
  607. CString m_name2 = m_pParent->m_name2;
  608. CString m_phone1 = m_pParent->m_phone1;
  609. CString m_phone2 = m_pParent->m_phone2;
  610. CString oldstatus = m_pParent->m_checkstatus;
  611. CString sql2;
  612. BOOL msgcheck = atoi(g_cominfoarray.ElementAt(0).ElementAt(103)); // [version].[msgcheck13].是否在客人看样OK后发送短信;
  613. CString msgcontent = g_cominfoarray.ElementAt(0).ElementAt(107);
  614. if (oldstatus == "OK")msgcheck = 0;
  615. if (m_status8 != "OK")msgcheck = 0;
  616. #ifdef CHILD_VERSION
  617. if (msgcheck)
  618. {
  619. CString m_content3 = msgcontent;
  620. CString str, timestamp;
  621. timestamp = "777888";
  622. {
  623. CString name;
  624. if (!m_name1.IsEmpty())
  625. name = m_name1 + ",";
  626. name += m_name2;
  627. name.TrimRight(",");
  628. if (name.IsEmpty() == 0 && CheckPhoneType(m_phone1) != -1 && CheckBadWords(name, 0) )
  629. {
  630. str = name + m_content3;
  631. str.Replace("xxx小朋友", "");
  632. int count = GetLengthEx(str) / MSG_LENGTH;
  633. if (GetLengthEx(str) % MSG_LENGTH)
  634. count++;
  635. CString scount;
  636. scount.Format("%d", count);
  637. #if JEFF_TEST_ON
  638. // 插入记录时需要加上短信类型;
  639. sql2.Format(INSERT_SENDREGDELAY, _T("13"), m_phone1, str, timestamp, scount, _T("0"), _T("0"), _T("0"),_T("系统自动发送"));
  640. sql += _T("***") + sql2;
  641. #else
  642. sql2 = "***insert into sendregdelay([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('" + m_phone1 + "','" + str + "','" + timestamp + "','" + scount + "','0','0','0','系统自动发送')";
  643. sql += sql2;
  644. #endif
  645. }
  646. }
  647. }
  648. #else
  649. if(msgcheck)
  650. {
  651. CString m_content3 = msgcontent;
  652. CString str,timestamp;
  653. timestamp="777888";
  654. int pos=m_content3.Find("xxx先生/女士");
  655. if(pos!=-1)
  656. {
  657. if(m_name1.IsEmpty ()==0 && CheckPhoneType(m_phone1)!=-1 && CheckBadWords(m_name1,0) )
  658. {
  659. str=m_content3;
  660. str.Replace ("xxx先生/女士", m_name1+"先生");
  661. int count=GetLengthEx(str)/MSG_LENGTH;
  662. if(GetLengthEx(str)%MSG_LENGTH)
  663. count++;
  664. CString scount;
  665. scount.Format ("%d", count);
  666. #if JEFF_TEST_ON
  667. // 插入记录时需要加上短信类型;
  668. sql2.Format(INSERT_SENDREGDELAY, _T("13"), m_phone1, str, timestamp, scount, _T("0"), _T("0"), _T("0"),_T("系统自动发送"));
  669. sql += _T("***") + sql2;
  670. #else
  671. sql2="***insert into sendregdelay([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('"+m_phone1+"','"+str+"','"+timestamp+"','"+scount+"','0','0','0','系统自动发送')";
  672. sql+=sql2;
  673. #endif
  674. }
  675. if(m_name2.IsEmpty ()==0 && CheckPhoneType(m_phone2)!=-1 && CheckBadWords(m_name2,0) )
  676. {
  677. str=m_content3;
  678. str.Replace ("xxx先生/女士", m_name2+"女士");
  679. int count=GetLengthEx(str)/MSG_LENGTH;
  680. if(GetLengthEx(str)%MSG_LENGTH)
  681. count++;
  682. CString scount;
  683. scount.Format ("%d", count);
  684. CTime tm=CTime::GetCurrentTime ();
  685. tm+=CTimeSpan(0,0,0,3);
  686. timestamp="777888";
  687. #if JEFF_TEST_ON
  688. // 插入记录时需要加上短信类型;
  689. sql2.Format(INSERT_SENDREGDELAY, _T("13"), m_phone2, str, timestamp, scount, _T("0"), _T("0"), _T("0"),_T("系统自动发送"));
  690. sql += _T("***") + sql2;
  691. #else
  692. sql2="***insert into sendregdelay([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('"+m_phone2+"','"+str+"','"+timestamp+"','"+scount+"','0','0','0','系统自动发送')";
  693. sql+=sql2;
  694. #endif
  695. }
  696. }
  697. }
  698. #endif
  699. /////////////////////////
  700. }
  701. else
  702. {
  703. /////////////////////////
  704. CString m_name1 = m_pParent->m_name1;
  705. CString m_name2 = m_pParent->m_name2;
  706. CString m_phone1 = m_pParent->m_phone1;
  707. CString m_phone2 = m_pParent->m_phone2;
  708. CString oldstatus = m_pParent->m_checkstatus;
  709. CString sql2;
  710. BOOL msgcheck = atoi(g_cominfoarray.ElementAt(0).ElementAt(102)); // [version].[msgcheck12].是否在客人选片OK后发送短信;
  711. CString msgcontent = g_cominfoarray.ElementAt(0).ElementAt(106);
  712. if (oldstatus == "OK")msgcheck = 0;
  713. #ifdef CHILD_VERSION
  714. if (msgcheck)
  715. {
  716. CString m_content3 = msgcontent;
  717. CString str, timestamp;
  718. timestamp = "777888";
  719. {
  720. CString name;
  721. if (!m_name1.IsEmpty())
  722. name = m_name1 + ",";
  723. name += m_name2;
  724. name.TrimRight(",");
  725. if (name.IsEmpty() == 0 && CheckPhoneType(m_phone1) != -1 && CheckBadWords(name, 0))
  726. {
  727. str = name + m_content3;
  728. str.Replace("xxx小朋友", "");
  729. int count = GetLengthEx(str) / MSG_LENGTH;
  730. if (GetLengthEx(str) % MSG_LENGTH)
  731. count++;
  732. CString scount;
  733. scount.Format("%d", count);
  734. #if JEFF_TEST_ON
  735. // 插入记录时需要加上短信类型;
  736. sql2.Format(INSERT_SENDREGDELAY, _T("12"), m_phone1, str, timestamp, scount, _T("0"), _T("0"), _T("0"), _T("系统自动发送"));
  737. sql += _T("***") + sql2;
  738. #else
  739. sql2 = "***insert into sendregdelay([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('" + m_phone1 + "','" + str + "','" + timestamp + "','" + scount + "','0','0','0','系统自动发送')";
  740. sql += sql2;
  741. #endif
  742. }
  743. }
  744. }
  745. #else
  746. if(msgcheck)
  747. {
  748. CString m_content3 = msgcontent;
  749. CString str,timestamp;
  750. timestamp="777888";
  751. int pos=m_content3.Find("xxx先生/女士");
  752. if(pos!=-1)
  753. {
  754. if(m_name1.IsEmpty ()==0 && CheckPhoneType(m_phone1)!=-1 && CheckBadWords(m_name1,0) )
  755. {
  756. str=m_content3;
  757. str.Replace ("xxx先生/女士", m_name1+"先生");
  758. int count=GetLengthEx(str)/MSG_LENGTH;
  759. if(GetLengthEx(str)%MSG_LENGTH)
  760. count++;
  761. CString scount;
  762. scount.Format ("%d", count);
  763. #if JEFF_TEST_ON
  764. // 插入记录时需要加上短信类型;
  765. sql2.Format(INSERT_SENDREGDELAY, _T("12"), m_phone1, str, timestamp, scount, _T("0"), _T("0"), _T("0"), _T("系统自动发送"));
  766. sql += _T("***") + sql2;
  767. #else
  768. sql2="***insert into sendregdelay([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('"+m_phone1+"','"+str+"','"+timestamp+"','"+scount+"','0','0','0','系统自动发送')";
  769. sql+=sql2;
  770. #endif
  771. }
  772. if(m_name2.IsEmpty ()==0 && CheckPhoneType(m_phone2)!=-1 && CheckBadWords(m_name2,0) )
  773. {
  774. str=m_content3;
  775. str.Replace ("xxx先生/女士", m_name2+"女士");
  776. int count=GetLengthEx(str)/MSG_LENGTH;
  777. if(GetLengthEx(str)%MSG_LENGTH)
  778. count++;
  779. CString scount;
  780. scount.Format ("%d", count);
  781. CTime tm=CTime::GetCurrentTime ();
  782. tm+=CTimeSpan(0,0,0,3);
  783. timestamp="777888";
  784. #if JEFF_TEST_ON
  785. // 插入记录时需要加上短信类型;
  786. sql2.Format(INSERT_SENDREGDELAY, _T("12"), m_phone2, str, timestamp, scount, _T("0"), _T("0"), _T("0"), _T("系统自动发送"));
  787. sql += _T("***") + sql2;
  788. #else
  789. sql2="***insert into sendregdelay([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('"+m_phone2+"','"+str+"','"+timestamp+"','"+scount+"','0','0','0','系统自动发送')";
  790. sql+=sql2;
  791. #endif
  792. }
  793. }
  794. }
  795. #endif
  796. /////////////////////////
  797. }
  798. if (atoi(g_cominfoarray.ElementAt(0).ElementAt(117)))//新摄控本
  799. {
  800. CString id = m_id;
  801. CString m_time5old = m_pParent->m_time5old;
  802. CString m_time6old = m_pParent->m_time6old;
  803. m_pParent->m_time5old = m_time5;
  804. m_pParent->m_time6old = m_time6;
  805. CString timestamp;
  806. CTime tm = CTime::GetCurrentTime();
  807. CTimeSpan dt(0, 0, 0, 1);
  808. timestamp = tm.Format("%Y%m%d%H%M%S");
  809. CString sql2, phone, clothescount;
  810. CString m_phone1 = m_pParent->m_phone1;
  811. CString m_phone2 = m_pParent->m_phone2;
  812. CString m_name1 = m_pParent->m_name1;
  813. CString m_name2 = m_pParent->m_name2;
  814. CString taoxiname = m_pParent->taoxiname;
  815. CString m_taoxijiage = m_pParent->m_taoxijiage;
  816. CString m_waiter1 = m_pParent->m_waiter1;
  817. CString m_waiter2 = m_pParent->m_waiter2;
  818. CString ren = m_pParent->ren;
  819. CString m_clothescount = m_pParent->m_clothescount;
  820. if (m_time6 != "" && m_time6old != m_time6)
  821. {
  822. tm += dt;
  823. timestamp = tm.Format("%Y%m%d%H%M%S");
  824. phone = m_phone1 + " " + m_phone2;
  825. phone.TrimLeft();
  826. if (m_clothescount != "")
  827. clothescount = "服装:" + m_clothescount;
  828. if (1)//m_time6old=="")
  829. 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')", m_name1 + m_name2, phone, "", taoxiname, m_taoxijiage, m_waiter1, m_waiter2, ren, m_taoxijiage, clothescount, g_user.name, timestamp, m_time6, 2, "未到", id);
  830. else
  831. sql2.Format("***update [todaytake] set [date]='%s' where [id]='%s' and [mode]='%d'", m_time6, id, 2);
  832. sql += sql2;
  833. }
  834. if (m_time5 != "" && m_time5old != m_time5)
  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. if (1)//m_time5old=="")
  843. 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')", m_name1 + m_name2, phone, "", taoxiname, m_taoxijiage, m_waiter1, m_waiter2, ren, m_taoxijiage, clothescount, g_user.name, timestamp, m_time5, 3, "未到", id);
  844. else
  845. sql2.Format("***update [todaytake] set [date]='%s' where [id]='%s' and [mode]='%d'", m_time5, id, 3);
  846. sql += sql2;
  847. }
  848. }
  849. g_sendhead.bsql = 1;
  850. g_pMainWnd->ProcessChatMessageRequest2(sql);
  851. if (g_bSendOK == 0)
  852. {
  853. m_bSaveFail = 1;
  854. return;
  855. }
  856. m_bSave = 1;
  857. if (atof(m_oldmoney3) != atof(m_money3))
  858. {
  859. InputJT dlg;
  860. dlg.m_id = m_id;
  861. dlg.m_money.Format("%0.2f", atof(m_money3) - atof(m_oldmoney3));
  862. dlg.DoModal();
  863. }
  864. m_oldmoney3 = m_money3;
  865. AfxMessageBox("保存成功!", MB_ICONINFORMATION);
  866. m_bExit = 0;
  867. if (m_pParent->ReLoad() == 0)
  868. {
  869. CDialog::OnCancel();
  870. m_bExit = 1;
  871. return;
  872. }
  873. LoadData(1);
  874. if (bZZB == 0 && atoi(g_cominfoarray.ElementAt(0).ElementAt(130)) == 0)
  875. {
  876. ZZB dlg;
  877. dlg.SetLiaPath("6.lia");
  878. if (dlg.DoModal() == IDOK)
  879. {
  880. CString m_spname = "掌中宝app";
  881. CString m_spid;
  882. CString m_lb;
  883. GetSPInfoFromName(m_spname, m_spid, m_lb);
  884. if (m_spid == "")
  885. {
  886. sql = "insert into shangpinlb (name)values('掌中宝app')***insert into shangpin(spid,spname,splb,hide)values('ZZB001','掌中宝app','掌中宝app','上架')";
  887. g_sendhead.bsql = 1;
  888. g_pMainWnd->ProcessChatMessageRequest2(sql);
  889. if (g_bSendOK == 0)
  890. {
  891. m_bSaveFail = 1;
  892. return;
  893. }
  894. g_sendhead.code[0] = 4;
  895. g_sendhead.tabcount = 1;
  896. g_sendhead.bsql = 0;
  897. g_pMainWnd->ProcessChatMessageRequest2(1);
  898. if (g_bSendOK == 0)
  899. {
  900. m_bSaveFail = 1;
  901. return;
  902. }
  903. DataToArray(&(m_pParent->m_sparray));
  904. GetSPInfoFromName(m_spname, m_spid, m_lb);
  905. }
  906. int pos = m_List3.GetItemCount();
  907. CString str;
  908. if (pos)
  909. {
  910. if (m_List3.GetItemText(pos - 1, 1).IsEmpty() && m_List3.GetItemText(pos - 1, 2).IsEmpty())
  911. {
  912. pos--;
  913. m_List3.SetItemText(pos, 1, m_spid);
  914. m_List3.SetItemText(pos, 2, GetSPNameFromId(m_spid));
  915. str.Format("%f", GetSPPriceFromId(m_spid));
  916. ConvertToPrice(str);
  917. m_List3.SetItemText(pos, 3, str);
  918. m_List3.SetItemText(pos, 4, "1");
  919. }
  920. else
  921. {
  922. m_List3.InsertItem(pos, "");
  923. m_List3.SetItemText(pos, 1, m_spid);
  924. m_List3.SetItemText(pos, 2, GetSPNameFromId(m_spid));
  925. str.Format("%f", GetSPPriceFromId(m_spid));
  926. ConvertToPrice(str);
  927. m_List3.SetItemText(pos, 3, str);
  928. m_List3.SetItemText(pos, 4, "1");
  929. }
  930. }
  931. else
  932. {
  933. m_List3.InsertItem(pos, "");
  934. m_List3.SetItemText(pos, 1, m_spid);
  935. m_List3.SetItemText(pos, 2, GetSPNameFromId(m_spid));
  936. str.Format("%f", GetSPPriceFromId(m_spid));
  937. ConvertToPrice(str);
  938. m_List3.SetItemText(pos, 3, str);
  939. m_List3.SetItemText(pos, 4, "1");
  940. }
  941. SetSPName3();
  942. AfxMessageBox("已自动添加产品 '掌中宝app', 请继续挑选制作掌中宝app照片!", MB_ICONINFORMATION);
  943. }
  944. }
  945. }
  946. void ChoosePhotoSkin3::OnTimer(UINT nIDEvent)
  947. {
  948. if (nIDEvent == 3)
  949. {
  950. KillTimer(nIDEvent);
  951. SetSPName3();
  952. }
  953. if (nIDEvent == 2)
  954. {
  955. KillTimer(nIDEvent);
  956. SetSPName2();
  957. }
  958. }
  959. float ChoosePhotoSkin3::GetSPPriceFromId(CString id)
  960. {
  961. for (int i = 0; i < m_pParent->m_sparray.GetSize(); i++)
  962. {
  963. if (id == m_pParent->m_sparray.ElementAt(i).ElementAt(0))
  964. return atof(m_pParent->m_sparray.ElementAt(i).ElementAt(4));
  965. }
  966. return 0;
  967. }
  968. void ChoosePhotoSkin3::GetSPInfoFromName(CString name, CString &id, CString &splb)
  969. {
  970. for (int i = 0; i < m_pParent->m_sparray.GetSize(); i++)
  971. {
  972. if (name == m_pParent->m_sparray.ElementAt(i).ElementAt(1))
  973. {
  974. id = m_pParent->m_sparray.ElementAt(i).ElementAt(0);
  975. break;
  976. }
  977. }
  978. }
  979. CString ChoosePhotoSkin3::GetSPNameFromId(CString id)
  980. {
  981. int i = 0;
  982. for ( i = 0; i < m_pParent->m_sparray.GetSize(); i++)
  983. {
  984. if (id == m_pParent->m_sparray.ElementAt(i).ElementAt(0))
  985. return m_pParent->m_sparray.ElementAt(i).ElementAt(1);
  986. }
  987. id.TrimLeft("0");
  988. for (i = 0; i < m_pParent->m_sparray.GetSize(); i++)
  989. {
  990. if (id == m_pParent->m_sparray.ElementAt(i).ElementAt(0))
  991. return m_pParent->m_sparray.ElementAt(i).ElementAt(1);
  992. }
  993. return "";
  994. }
  995. void ChoosePhotoSkin3::SetSPName2()
  996. {
  997. for (int i = 0; i < m_List2.GetItemCount(); i++)
  998. {
  999. if (GetSPNameFromId(m_List2.GetItemText(i, 1)) != "")
  1000. m_List2.SetItemText(i, 2, GetSPNameFromId(m_List2.GetItemText(i, 1)));
  1001. }
  1002. }
  1003. void ChoosePhotoSkin3::SetSPName3()
  1004. {
  1005. UpdateData();
  1006. m_no2array.RemoveAll();
  1007. CString str;
  1008. for (int i = 0; i < m_List3.GetItemCount(); i++)
  1009. {
  1010. if (GetSPNameFromId(m_List3.GetItemText(i, 1)) != "")
  1011. m_List3.SetItemText(i, 2, GetSPNameFromId(m_List3.GetItemText(i, 1)));
  1012. str.Format("%f", GetSPPriceFromId(m_List3.GetItemText(i, 1)));
  1013. ConvertToPrice(str);
  1014. if (m_List3.GetItemText(i, 1) != "" && (m_List3.GetItemText(i, 3) == "" || m_List3.GetItemText(i, 3) == "0"))
  1015. m_List3.SetItemText(i, 3, str);
  1016. #ifdef LKAY_VERSION
  1017. str=m_List3.GetItemText(i,7);
  1018. #else
  1019. str = m_List3.GetItemText(i, 5);
  1020. #endif
  1021. if (!str.IsEmpty())
  1022. str = "," + str + ",";
  1023. m_no2array.Add(str);
  1024. }
  1025. }
  1026. void ChoosePhotoSkin3::OnSpBox()
  1027. {
  1028. SPBox dlg;
  1029. if (dlg.DoModal() != IDOK)return;
  1030. OnButton3();
  1031. for (int a = 0; a < dlg.m_spidarray.GetSize(); a++)
  1032. {
  1033. dlg.m_spid = dlg.m_spidarray.ElementAt(a);
  1034. dlg.m_spname = dlg.m_spnamearray.ElementAt(a);
  1035. dlg.m_lb = dlg.m_lbarray.ElementAt(a);
  1036. int pos = m_List3.GetItemCount();
  1037. CString str;
  1038. if (pos)
  1039. {
  1040. if (m_List3.GetItemText(pos - 1, 1).IsEmpty() && m_List3.GetItemText(pos - 1, 2).IsEmpty())
  1041. {
  1042. pos--;
  1043. m_List3.SetItemText(pos, 1, dlg.m_spid);
  1044. m_List3.SetItemText(pos, 2, GetSPNameFromId(dlg.m_spid));
  1045. str.Format("%f", GetSPPriceFromId(dlg.m_spid));
  1046. ConvertToPrice(str);
  1047. m_List3.SetItemText(pos, 3, str);
  1048. m_List3.SetItemText(pos, 4, "1");
  1049. }
  1050. else
  1051. {
  1052. m_List3.InsertItem(pos, "");
  1053. m_List3.SetItemText(pos, 1, dlg.m_spid);
  1054. m_List3.SetItemText(pos, 2, GetSPNameFromId(dlg.m_spid));
  1055. str.Format("%f", GetSPPriceFromId(dlg.m_spid));
  1056. ConvertToPrice(str);
  1057. m_List3.SetItemText(pos, 3, str);
  1058. m_List3.SetItemText(pos, 4, "1");
  1059. }
  1060. }
  1061. else
  1062. {
  1063. m_List3.InsertItem(pos, "");
  1064. m_List3.SetItemText(pos, 1, dlg.m_spid);
  1065. m_List3.SetItemText(pos, 2, GetSPNameFromId(dlg.m_spid));
  1066. str.Format("%f", GetSPPriceFromId(dlg.m_spid));
  1067. ConvertToPrice(str);
  1068. m_List3.SetItemText(pos, 3, str);
  1069. m_List3.SetItemText(pos, 4, "1");
  1070. }
  1071. }
  1072. SetSPName3();
  1073. }
  1074. void ChoosePhotoSkin3::OnButton8() // 删除按钮;
  1075. {
  1076. POSITION pos;
  1077. pos = m_List3.GetFirstSelectedItemPosition();
  1078. if (pos == NULL)
  1079. {
  1080. AfxMessageBox("请先选中您要删除的项目!", MB_ICONINFORMATION);
  1081. return;
  1082. }
  1083. if (AfxMessageBox("删除后将无法恢复, 确认删除吗?", MB_YESNO) != IDYES)return;
  1084. OnButton3();
  1085. int iItem = m_List3.GetNextSelectedItem(pos);
  1086. m_List3.DeleteItem(iItem);
  1087. SetSPName3();
  1088. }
  1089. void ChoosePhotoSkin3::OnButton5()
  1090. {
  1091. POSITION pos;
  1092. pos = m_List3.GetFirstSelectedItemPosition();
  1093. if (pos == NULL)
  1094. {
  1095. AfxMessageBox("请先选中您要重选的商品!", MB_ICONINFORMATION);
  1096. return;
  1097. }
  1098. if (AfxMessageBox("确认重选吗?", MB_YESNO) != IDYES)return;
  1099. m_bModify = 1;
  1100. int iItem = m_List3.GetNextSelectedItem(pos);
  1101. #ifdef LKAY_VERSION
  1102. m_List3.SetItemText (iItem, 7, "");
  1103. #else
  1104. m_List3.SetItemText(iItem, 5, "");
  1105. #endif
  1106. if (m_no2array.GetSize() > iItem)
  1107. m_no2array.SetAt(iItem, "");
  1108. UpdateChooseZS();
  1109. }
  1110. void ChoosePhotoSkin3::OnButton6() // 全部重选按钮;
  1111. {
  1112. if (AfxMessageBox("确认重选吗?", MB_YESNO) != IDYES)return;
  1113. for (int i = 0; i<m_List3.GetItemCount(); i++)
  1114. {
  1115. #ifdef LKAY_VERSION
  1116. m_List3.SetItemText (i, 7, "");
  1117. #else
  1118. m_List3.SetItemText(i, 5, "");
  1119. #endif
  1120. if (m_no2array.GetSize()>i)
  1121. m_no2array.SetAt(i, "");
  1122. }
  1123. UpdateChooseZS();
  1124. m_bModify = 1;
  1125. m_bReChoose = TRUE;
  1126. WriteLog(_T("普通日志"), _T("选片重选"), g_user.name, m_id);
  1127. }
  1128. void ChoosePhotoSkin3::LoadData(BOOL bLoad)
  1129. {
  1130. if (bLoad)
  1131. {
  1132. m_name1 = m_pParent->m_name;
  1133. m_time6 = m_pParent->m_time6;
  1134. m_time4 = m_pParent->m_time4;
  1135. m_waiter3 = m_pParent->m_waiter3;
  1136. m_takezs = m_pParent->m_takezs;
  1137. m_taoxizs = m_pParent->m_taoxizs;
  1138. m_choosezs = m_pParent->m_choosezs;
  1139. m_bz3 = m_pParent->m_bz3;
  1140. m_bz4 = m_pParent->m_bz4;
  1141. m_id = m_pParent->m_strOrderNumber;
  1142. m_money3 = m_pParent->m_money3;
  1143. m_oldmoney3 = m_pParent->m_oldmoney3;
  1144. m_time5 = m_pParent->m_time5;
  1145. m_urgent = m_pParent->m_urgent;
  1146. if (m_pParent->m_mode2 && m_time6.IsEmpty())
  1147. m_time6 = g_date;
  1148. if (m_combourgent.FindString(0, m_urgent) == -1)
  1149. m_combourgent.SetCurSel(1);
  1150. else
  1151. m_combourgent.SetCurSel(m_combourgent.FindString(0, m_urgent));
  1152. m_status8 = m_pParent->m_status8;
  1153. if (m_combo1.FindString(0, m_status8) == -1)
  1154. m_combo1.SetCurSel(0);
  1155. else
  1156. m_combo1.SetCurSel(m_combo1.FindString(0, m_status8));
  1157. UpdateData(false);
  1158. m_no2array.Copy(m_pParent->m_no2array);
  1159. m_noarray.Copy(m_pParent->m_noarray);
  1160. m_List2.DeleteAllItems();
  1161. m_List3.DeleteAllItems();
  1162. int i = 0;
  1163. for ( i = 0; i < m_pParent->oldsparray.GetSize(); i++)
  1164. {
  1165. m_List2.InsertItem(i, m_pParent->oldsparray.ElementAt(i).ElementAt(1));
  1166. m_List2.SetItemText(i, 1, m_pParent->oldsparray.ElementAt(i).ElementAt(2));
  1167. m_List2.SetItemText(i, 2, m_pParent->oldsparray.ElementAt(i).ElementAt(3));
  1168. }
  1169. for (i = 0; i < m_pParent->m_List3.GetItemCount(); i++)
  1170. {
  1171. m_List3.InsertItem(i, m_pParent->m_List3.GetItemText(i, 0));
  1172. m_List3.SetItemText(i, 1, m_pParent->m_List3.GetItemText(i, 1));
  1173. m_List3.SetItemText(i, 2, m_pParent->m_List3.GetItemText(i, 2));
  1174. m_List3.SetItemText(i, 3, m_pParent->m_List3.GetItemText(i, 3));
  1175. m_List3.SetItemText(i, 4, m_pParent->m_List3.GetItemText(i, 4));
  1176. m_List3.SetItemText(i, 5, m_pParent->m_List3.GetItemText(i, 5));
  1177. #ifdef LKAY_VERSION
  1178. m_List3.SetItemText(i, 6, m_pParent->m_List3.GetItemText (i, 6));
  1179. m_List3.SetItemText(i, 7, m_pParent->m_List3.GetItemText (i, 7));
  1180. #endif
  1181. }
  1182. }
  1183. else
  1184. {
  1185. UpdateData();
  1186. // m_pParent->m_name1=m_name1;
  1187. m_pParent->m_time6 = m_time6;
  1188. m_pParent->m_time4 = m_time4;
  1189. m_pParent->m_waiter3 = m_waiter3;
  1190. m_pParent->m_taoxizs = m_taoxizs;
  1191. m_pParent->m_choosezs = m_choosezs;
  1192. m_pParent->m_bz3 = m_bz3;
  1193. m_pParent->m_bz4 = m_bz4;
  1194. m_pParent->m_strOrderNumber = m_id;
  1195. m_pParent->m_money3 = m_money3;
  1196. m_pParent->m_oldmoney3 = m_oldmoney3;
  1197. m_combourgent.GetLBText(m_combourgent.GetCurSel(), m_urgent);
  1198. m_pParent->m_urgent = m_urgent;
  1199. m_pParent->m_time5 = m_time5;
  1200. m_pParent->m_status8 = m_status8;
  1201. m_pParent->UpdateData(false);
  1202. m_pParent->m_no2array.Copy(m_no2array);
  1203. m_pParent->m_noarray.Copy(m_noarray);
  1204. m_pParent->m_bSave = m_bSave;
  1205. if (m_bModify)
  1206. {
  1207. m_pParent->UpdateChooseZS();//更新选中的照片
  1208. m_pParent->GetNoSelPhoto();
  1209. m_pParent->LoadPhotos();//更新显示
  1210. }
  1211. m_pParent->m_List2.DeleteAllItems();
  1212. m_pParent->m_List3.DeleteAllItems();
  1213. /* for(int i=0; i<m_List2.GetItemCount (); i++)
  1214. {
  1215. m_pParent->m_List2.InsertItem(i, m_List2.GetItemText (i, 0));
  1216. m_pParent->m_List2.SetItemText(i, 1, m_List2.GetItemText (i, 1));
  1217. m_pParent->m_List2.SetItemText(i, 2, m_List2.GetItemText (i, 2));
  1218. m_pParent->m_List2.SetItemText(i, 3, m_List2.GetItemText (i, 3));
  1219. m_pParent->m_List2.SetItemText(i, 4, m_List2.GetItemText (i, 4));
  1220. }*/
  1221. for (int i = 0; i < m_List3.GetItemCount(); i++)
  1222. {
  1223. m_pParent->m_List3.InsertItem(i, m_List3.GetItemText(i, 0));
  1224. m_pParent->m_List3.SetItemText(i, 1, m_List3.GetItemText(i, 1));
  1225. m_pParent->m_List3.SetItemText(i, 2, m_List3.GetItemText(i, 2));
  1226. m_pParent->m_List3.SetItemText(i, 3, m_List3.GetItemText(i, 3));
  1227. m_pParent->m_List3.SetItemText(i, 4, m_List3.GetItemText(i, 4));
  1228. m_pParent->m_List3.SetItemText(i, 5, m_List3.GetItemText(i, 5));
  1229. #ifdef LKAY_VERSION
  1230. m_pParent->m_List3.SetItemText(i, 6, m_List3.GetItemText (i, 6));
  1231. m_pParent->m_List3.SetItemText(i, 7, m_List3.GetItemText (i, 7));
  1232. #endif
  1233. }
  1234. }
  1235. }
  1236. void ChoosePhotoSkin3::OnBTNprint() // 打单按钮;
  1237. {
  1238. if (m_pParent->m_mode2)
  1239. g_pMainWnd->PrintFlowChart4(m_id);
  1240. else
  1241. g_pMainWnd->PrintFlowChart(m_id);
  1242. }
  1243. void ChoosePhotoSkin3::OnBTNprint2()
  1244. {
  1245. m_pParent->UpdateChooseZS();
  1246. m_pParent->GetNoSelPhoto();
  1247. m_pParent->LoadPhotos();//更新显示
  1248. if (m_pParent->m_patharray2.GetSize() == 0)
  1249. {
  1250. AfxMessageBox("没有选中的照片!"); return;
  1251. }
  1252. /* CString name;
  1253. if(!m_name1.IsEmpty ())
  1254. name=m_name1+",";
  1255. name+=m_name2;
  1256. name.TrimRight (",");*/
  1257. g_pMainWnd->PrintThumbNail(&(m_pParent->m_patharray2), "客人:" + m_name1 + "-选片小图", m_pParent->m_mode2, m_pParent->m_size);
  1258. }
  1259. float ChoosePhotoSkin3::GetMoney()
  1260. {
  1261. float ret = 0;
  1262. for (int i = 0; i < m_List3.GetItemCount(); i++)
  1263. {
  1264. ret += atof(m_List3.GetItemText(i, 3))*atof(m_List3.GetItemText(i, 4));
  1265. }
  1266. return ret;
  1267. }
  1268. float ChoosePhotoSkin3::GetMoney2()
  1269. {
  1270. float ret = 0;
  1271. for (int i = 0; i < m_List2.GetItemCount(); i++)
  1272. {
  1273. ret += GetSPPriceFromId(m_List2.GetItemText(i, 0))*atof(m_List2.GetItemText(i, 2));
  1274. }
  1275. return ret;
  1276. }
  1277. void ChoosePhotoSkin3::OnButton12() // 选择客户要求;
  1278. {
  1279. SPLBDlg dlg;
  1280. dlg.m_mode = 19;
  1281. if (dlg.DoModal() == IDOK)
  1282. {
  1283. UpdateData();
  1284. m_bz3 += "要求:"+dlg.m_edit1+"\r\n";
  1285. UpdateData(0);
  1286. }
  1287. }