ChoosePhotoSkin3.cpp 51 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773
  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. #include "ChoosePhotoLog.h"
  18. #include "ChoosePhotoBase.h"
  19. #include "Global\des.h"
  20. #ifdef _DEBUG
  21. #define new DEBUG_NEW
  22. #undef THIS_FILE
  23. static char THIS_FILE[] = __FILE__;
  24. #endif
  25. // Jeff add 2014-12-11 分隔符;
  26. //#define SEPARATOR _T("|")
  27. ChoosePhotoSkin3::ChoosePhotoSkin3(CWnd* pParent /*=NULL*/) : CDialog(ChoosePhotoSkin3::IDD, pParent)
  28. {
  29. m_bz3 = _T("");
  30. m_time5 = _T("");
  31. m_urgent = _T("");
  32. m_time6 = _T("");
  33. m_bz4 = _T("");
  34. m_pParent = NULL;
  35. m_name1 = _T("");
  36. m_time4 = g_date;
  37. m_waiter3 = _T("");
  38. m_takezs = _T("");
  39. m_taoxizs = _T("");
  40. m_choosezs = _T("");
  41. m_id = _T("");
  42. m_money3 = _T("");
  43. m_bSave = 0;
  44. m_bModify = 0;
  45. m_bPushedSave = 0;
  46. m_strStatusOfChoosePhoto = "未选";
  47. m_bReChoose = FALSE;
  48. //m_delphotosMode = 0; //默认为选片模式;// 已使用GetParent()->m_mode2;
  49. }
  50. void ChoosePhotoSkin3::DoDataExchange(CDataExchange* pDX)
  51. {
  52. CDialog::DoDataExchange(pDX);
  53. DDX_Control(pDX, IDC_EDITtime6, m_datectrl2);
  54. DDX_Control(pDX, IDC_COMBO1, m_combo1);
  55. DDX_Control(pDX, IDC_EDITtime5, m_datenum);
  56. DDX_Control(pDX, IDC_COMBOurgent, m_combourgent);
  57. DDX_Control(pDX, IDC_EDITzs3, m_editnum4);
  58. DDX_Control(pDX, IDC_EDITzs2, m_editnum3);
  59. DDX_Control(pDX, IDC_EDITzs, m_editnum2);
  60. DDX_Control(pDX, IDC_EDITmoney3, m_editnum1);
  61. DDX_Control(pDX, IDC_LIST3, m_List3);
  62. DDX_Control(pDX, IDC_LIST2, m_List2);
  63. DDX_Control(pDX, IDC_LIST1, m_List1);
  64. DDX_Text(pDX, IDC_EDITname1, m_name1);
  65. DDX_Text(pDX, IDC_EDITtime4, m_time4);
  66. DDX_Text(pDX, IDC_EDITwaiter3, m_waiter3);
  67. DDX_Text(pDX, IDC_EDITzs, m_takezs);
  68. DDX_Text(pDX, IDC_EDITzs2, m_taoxizs);
  69. DDX_Text(pDX, IDC_EDITzs3, m_choosezs);
  70. DDX_Text(pDX, IDC_EDITmoney3, m_money3);
  71. DDX_Text(pDX, IDC_EDITbz3, m_bz3);
  72. DDV_MaxChars(pDX, m_bz3, 1000);
  73. DDX_Text(pDX, IDC_EDITtime5, m_time5);
  74. DDX_Text(pDX, IDC_EDITtime6, m_time6);
  75. DDX_Text(pDX, IDC_EDITid, m_id);
  76. DDX_Text(pDX, IDC_EDITbz4, m_bz4);
  77. }
  78. BEGIN_MESSAGE_MAP(ChoosePhotoSkin3, CDialog)
  79. ON_WM_CLOSE()
  80. ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
  81. ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
  82. ON_BN_CLICKED(IDC_BUTTON3, OnButton3)
  83. ON_BN_CLICKED(IDC_BUTTON4, OnButton4)
  84. ON_WM_TIMER()
  85. ON_BN_CLICKED(IDC_BUTTON7, OnSpBox)
  86. ON_BN_CLICKED(IDC_BUTTON8, OnButton8)
  87. ON_BN_CLICKED(IDC_BUTTON5, OnButton5)
  88. ON_BN_CLICKED(IDC_BUTTON6, OnButton6)
  89. ON_BN_CLICKED(IDC_BTNprint, OnBTNprint)
  90. ON_BN_CLICKED(IDC_BUTTON9, OnButton9)
  91. ON_BN_CLICKED(IDC_BTNprint2, OnBTNprint2)
  92. ON_WM_PAINT()
  93. ON_WM_DESTROY()
  94. ON_BN_CLICKED(IDC_BUTTON12, OnButton12)
  95. ON_BN_CLICKED(Btn_MicroShare, OnBnClickedMicroshare)
  96. ON_BN_CLICKED(IDC_BUTTON_FINDLOG, OnBnClickedFindLog)
  97. END_MESSAGE_MAP()
  98. /////////////////////////////////////////////////////////////////////////////
  99. BOOL ChoosePhotoSkin3::OnInitDialog()
  100. {
  101. CDialog::OnInitDialog();
  102. if (m_pParent->m_Runingmode)
  103. {
  104. GetDlgItem(IDC_STATIC2)->ShowWindow(0);
  105. GetDlgItem(IDC_STATIC4)->ShowWindow(0);
  106. GetDlgItem(IDC_STATIC6)->ShowWindow(0);
  107. GetDlgItem(IDC_EDITzs)->ShowWindow(0);
  108. GetDlgItem(IDC_EDITzs2)->ShowWindow(0);
  109. GetDlgItem(IDC_EDITzs3)->ShowWindow(0);
  110. m_combo1.AddString("OK");
  111. m_combo1.AddString("修改中");
  112. m_combo1.AddString("未看");
  113. CRect rc;
  114. GetDlgItem(IDC_STATIC8)->GetWindowRect(rc);
  115. ScreenToClient(rc);
  116. GetDlgItem(IDC_STATIC5)->MoveWindow(rc);
  117. GetDlgItem(IDC_EDITzs2)->GetWindowRect(rc);
  118. ScreenToClient(rc);
  119. GetDlgItem(IDC_EDITmoney3)->MoveWindow(rc);
  120. GetDlgItem(IDC_STATIC8)->ShowWindow(0);
  121. GetDlgItem(IDC_COMBO1)->ShowWindow(0);
  122. }
  123. else
  124. {
  125. GetDlgItem(IDC_STATIC8)->ShowWindow(0);
  126. GetDlgItem(IDC_COMBO1)->ShowWindow(0);
  127. }
  128. 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());
  129. #ifdef LKAY_VERSION
  130. CTimeSpan dt(31, 0, 0, 0);
  131. tm+=dt;
  132. m_datenum.SetDefaultValue(tm.Format ("%Y-%m-%d"));
  133. CTimeSpan dt2(4, 0, 0, 0);
  134. tm-=dt2;
  135. m_datectrl2.SetDefaultValue(tm.Format ("%Y-%m-%d"));
  136. #else
  137. CTimeSpan dt(61, 0, 0, 0);
  138. tm += dt;
  139. m_datenum.SetDefaultValue(tm.Format("%Y-%m-%d"));
  140. CTimeSpan dt2(31, 0, 0, 0);
  141. tm -= dt2;
  142. m_datectrl2.SetDefaultValue(tm.Format("%Y-%m-%d"));
  143. #endif
  144. m_bPushedSave = 0;
  145. m_bSaveFail = 0;
  146. m_List2.InitStyle();
  147. m_List2.InsertColumn(0, _T("编号"), LVCFMT_LEFT, 55);
  148. m_List2.InsertColumn(1, _T("商品名称"), LVCFMT_LEFT, 150);
  149. m_List2.InsertColumn(2, _T("数量"), LVCFMT_LEFT, 55);
  150. m_List3.InitStyle();
  151. m_List3.InsertColumn(0, _T("autuid"), LVCFMT_LEFT, 0);
  152. m_List3.InsertColumn(1, _T("编号"), LVCFMT_LEFT, 55);
  153. m_List3.InsertColumn(2, _T("商品名称"), LVCFMT_LEFT, 150);
  154. m_List3.InsertColumn(3, _T("价格"), LVCFMT_LEFT, 55);
  155. m_List3.InsertColumn(4, _T("数量"), LVCFMT_LEFT, 55);
  156. #ifdef LKAY_VERSION
  157. m_List3.InsertColumn(5,_T("P数"),LVCFMT_LEFT,55);
  158. m_List3.InsertColumn(6,_T("张数"),LVCFMT_LEFT,55);
  159. m_List3.InsertColumn(7,_T("照片编号"),LVCFMT_LEFT,355);
  160. #else
  161. m_List3.InsertColumn(5, _T("照片编号"), LVCFMT_LEFT, 355);
  162. // 2015.11.13 保存列表添加多一列商品备注选项;
  163. m_List3.InsertColumn(6, _T("备注"), LVCFMT_LEFT, 300);
  164. #endif
  165. m_combourgent.AddString("是");
  166. m_combourgent.AddString("否");
  167. LoadData(1);
  168. // AnimateWindow(GetSafeHwnd(), 3000, AW_BLEND);
  169. return false;
  170. }
  171. void ChoosePhotoSkin3::OnOK()
  172. {
  173. }
  174. void ChoosePhotoSkin3::OnClose()
  175. {
  176. m_bExit = 0;
  177. SetSPName3();
  178. SetSPName2();
  179. LoadData(0);
  180. CDialog::OnClose();
  181. }
  182. void ChoosePhotoSkin3::OnDestroy()
  183. {
  184. m_bExit = 0;
  185. LoadData(0);
  186. m_pParent = NULL;
  187. CDialog::OnDestroy();
  188. }
  189. BOOL ChoosePhotoSkin3::PreTranslateMessage(MSG* pMsg)
  190. {
  191. if (0)//pMsg->message==WM_LBUTTONDOWN)
  192. {
  193. {//list2
  194. CPoint pt;
  195. CRect rc, rc2;
  196. ::GetCursorPos(&pt);
  197. m_List2.GetWindowRect(rc2);
  198. if (rc2.PtInRect(pt) == 0) goto mm;
  199. SetTimer(2, 300, NULL);
  200. }
  201. mm: {//list3
  202. CPoint pt;
  203. CRect rc, rc2;
  204. ::GetCursorPos(&pt);
  205. m_List3.GetWindowRect(rc2);
  206. if (rc2.PtInRect(pt) == 0) return CDialog::PreTranslateMessage(pMsg);
  207. SetTimer(3, 300, NULL);
  208. }
  209. }
  210. else if (pMsg->message == WM_LBUTTONDBLCLK)
  211. {
  212. {//list2
  213. CPoint pt;
  214. CRect rc, rc2;
  215. ::GetCursorPos(&pt);
  216. m_List2.GetWindowRect(rc2);
  217. if (rc2.PtInRect(pt) == 0) goto ll;
  218. /* pt.x-=rc2.left ;
  219. pt.y-=rc2.top ;
  220. POSITION pos;
  221. pos=m_List2.GetFirstSelectedItemPosition();
  222. if(pos==NULL)return 1;
  223. int iItem=m_List2.GetNextSelectedItem(pos);
  224. m_List2.GetSubItemRect( iItem,4, LVIR_BOUNDS, rc);
  225. if(rc.PtInRect (pt))
  226. return CDialog::PreTranslateMessage(pMsg);
  227. else*/
  228. return 1;
  229. }
  230. ll: {//list3
  231. CPoint pt;
  232. CRect rc, rc2;
  233. ::GetCursorPos(&pt);
  234. m_List3.GetWindowRect(rc2);
  235. if (rc2.PtInRect(pt) == 0) return CDialog::PreTranslateMessage(pMsg);
  236. pt.x -= rc2.left;
  237. pt.y -= rc2.top;
  238. POSITION pos;
  239. pos = m_List3.GetFirstSelectedItemPosition();
  240. if (pos == NULL)return 1;
  241. int iItem = m_List3.GetNextSelectedItem(pos);
  242. m_List3.GetSubItemRect(iItem, 4, LVIR_BOUNDS, rc);
  243. if (1)//rc.PtInRect (pt))
  244. return CDialog::PreTranslateMessage(pMsg);
  245. else
  246. return 1;
  247. }
  248. }
  249. if (pMsg->message == WM_KEYDOWN)
  250. {
  251. switch (pMsg->wParam)
  252. {
  253. case VK_DELETE:
  254. {
  255. if (GetFocus() == GetDlgItem(IDC_EDITbz4))
  256. {
  257. if (AfxMessageBox("删除后将无法恢复, 确认删除备注吗?", MB_YESNO) != IDYES)return 1;
  258. m_bz4 = "";
  259. SetDlgItemText(IDC_EDITbz4, "");
  260. }
  261. }
  262. return 1;
  263. }
  264. }
  265. return CDialog::PreTranslateMessage(pMsg);
  266. }
  267. int ChoosePhotoSkin3::GetZS(CString str)
  268. {
  269. #ifdef USE_SEP_VEB
  270. str.TrimLeft(SEPS_VEB);
  271. str.TrimRight(SEPS_VEB);
  272. if (str.IsEmpty())return 0;
  273. int pos = str.Find(SEPS_VEB);
  274. int count = 1;
  275. while (pos != -1)
  276. {
  277. str.Delete(pos);
  278. pos = str.Find(SEPS_VEB);
  279. count++;
  280. }
  281. #else
  282. str.TrimLeft(_T(","));
  283. str.TrimRight(_T(","));
  284. if (str.IsEmpty())return 0;
  285. int pos = str.Find(',');
  286. int count = 1;
  287. while (pos != -1)
  288. {
  289. str.Delete(pos);
  290. pos = str.Find(',');
  291. count++;
  292. }
  293. #endif
  294. return count;
  295. }
  296. long ChoosePhotoSkin3::UpdateTakeZS(WPARAM inWParam, LPARAM inLParam)
  297. {
  298. return 1;
  299. }
  300. void ChoosePhotoSkin3::OnButton1()
  301. {
  302. }
  303. void ChoosePhotoSkin3::UpdateChooseZS()
  304. {
  305. }
  306. void ChoosePhotoSkin3::OnButton2()
  307. {
  308. POSITION pos;
  309. pos = m_List2.GetFirstSelectedItemPosition();
  310. if (pos == NULL)
  311. {
  312. AfxMessageBox("请先选中您要重选的商品!", MB_ICONINFORMATION);
  313. return;
  314. }
  315. m_bModify = 1;
  316. int iItem = m_List2.GetNextSelectedItem(pos);
  317. m_List2.SetItemText(iItem, 4, "");
  318. m_noarray.SetAt(iItem, "");
  319. UpdateChooseZS();
  320. }
  321. //商品升级
  322. void ChoosePhotoSkin3::OnButton9()//商品升级
  323. {
  324. POSITION pos;
  325. pos = m_List3.GetFirstSelectedItemPosition();
  326. if (pos == NULL)
  327. {
  328. AfxMessageBox("请先选中您要升级的商品!", MB_ICONINFORMATION);
  329. return;
  330. }
  331. m_bModify = 1;
  332. int iItem = m_List3.GetNextSelectedItem(pos);
  333. SPBox dlg;
  334. if (dlg.DoModal() != IDOK)return;
  335. m_List3.SetItemText(iItem, 1, dlg.m_spid);
  336. m_List3.SetItemText(iItem, 2, GetSPNameFromId(dlg.m_spid));
  337. CString str;
  338. str.Format("%f", GetSPPriceFromId(dlg.m_spid));
  339. ConvertToPrice(str);
  340. m_List3.SetItemText(iItem, 3, str);
  341. }
  342. // 刷新按钮;
  343. void ChoosePhotoSkin3::OnButton3()// 刷新按钮;
  344. {
  345. if (m_List2.GetItemCount())return;
  346. CString sql = "gentakecontent:" + m_id;
  347. g_sendhead.bsql = 1;
  348. g_pMainWnd->ProcessChatMessageRequest2(sql);//printf("Jeff:sql=%s\n\n",sql);// Jeff Printf
  349. if (g_bSendOK == 0)
  350. return;
  351. CString filter = "id='" + m_id + "'";
  352. g_sendhead.code[0] = 182;
  353. g_sendhead.tabcount = 1;
  354. g_sendhead.bsql = 0;
  355. g_pMainWnd->ProcessChatMessageRequest2(filter);//printf("Jeff:filter=%s\n\n",filter);// Jeff Printf
  356. if (g_bSendOK == 0)return;
  357. CArray<CStringArray, CStringArray> sparray;
  358. DataToArray(&g_List1array);
  359. m_List2.DeleteAllItems();
  360. for (int i = 0; i < g_List1array.GetSize(); i++)
  361. {
  362. m_List2.InsertItem(i, g_List1array.ElementAt(i).ElementAt(1));
  363. m_List2.SetItemText(i, 1, g_List1array.ElementAt(i).ElementAt(2));
  364. m_List2.SetItemText(i, 2, g_List1array.ElementAt(i).ElementAt(3));
  365. }
  366. /* for(int i=0; i<m_List2.GetItemCount (); i++)
  367. {
  368. m_List2.SetItemText (i, 4, "");
  369. m_noarray.SetAt (i, "");
  370. }
  371. UpdateChooseZS();m_bModify=1;*/
  372. }
  373. CString ChoosePhotoSkin3::GetLB(CString name)
  374. {
  375. for (int i = 0; i < m_pParent->m_List2array.GetSize(); i++)
  376. {
  377. if (name == m_pParent->m_List2array.ElementAt(i).ElementAt(1))
  378. return m_pParent->m_List2array.ElementAt(i).ElementAt(4);
  379. }
  380. return "";
  381. }
  382. // 保存按钮;
  383. void ChoosePhotoSkin3::OnButton4() // 保存按钮;
  384. {
  385. m_bPushedSave = 1;
  386. SetSPName3();
  387. SetSPName2();
  388. UpdateData();
  389. if (!CheckDateOK(m_time5))
  390. return;
  391. if (!CheckDateOK(m_time6))
  392. return;
  393. // 刷新按钮;
  394. OnButton3();
  395. CString strAuthorize = _T("");
  396. CString strDiscount = _T("");
  397. // 计算折扣;
  398. if (atoi(g_cominfoarray.ElementAt(0).ElementAt(113)))
  399. GetCalculatingDiscount(strAuthorize, strDiscount);
  400. if (m_pParent->m_Runingmode)
  401. {
  402. DesinCheck dlg;
  403. int pos = m_combo1.GetCurSel();
  404. if (pos != -1)
  405. m_combo1.GetLBText(pos, m_status8);
  406. dlg.m_status8 = m_status8;
  407. dlg.DoModal();
  408. m_status8 = dlg.m_status8;
  409. m_combo1.SetCurSel(m_combo1.FindString(0, m_status8));
  410. }
  411. CString sql = _T("");
  412. BOOL bZZB = 0;
  413. CArray<CStringArray, CStringArray> sparray;
  414. // 获取选片或选设计的数据;
  415. GetSPData(sparray, bZZB);
  416. // 保存选片或选设计数据;
  417. UpdateSPData(sparray);
  418. m_combourgent.GetLBText(m_combourgent.GetCurSel(), m_urgent);
  419. //过滤备注;
  420. FilterBZ(m_bz3);
  421. //保存文件夹信息;
  422. if (m_pParent->m_Runingmode == 0)
  423. SaveFolderInfo();
  424. // Jeff,选片状态已经为OK的,拒绝更改选片人和选片状态;2014.08.30
  425. // Jeff,先要获取选片状态。
  426. // GetParent()->m_mode2
  427. // 选片或选设计时被删除的相片;
  428. // ItCivilian des加密 [6/7/2016];
  429. CString strDelphotos = m_pParent->m_delphotos;
  430. if (0 == des_crypt(strDelphotos, strDelphotos) )
  431. {
  432. strDelphotos = _T("<?>") + strDelphotos;
  433. }
  434. #if JEFF_TEST_ON
  435. // 若重选全部,清空一切;
  436. CSQLStatementImpl::GetInstancePtr()->ReSetKind(_T("dindan"), _T("where id='") + m_id + _T("'"), KIND_UPDATE, 15);
  437. if (m_bReChoose == TRUE)
  438. {
  439. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("status2"), _T("未选")); // 选片状态;
  440. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("waiter3"), _T("")); // 选片人;
  441. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("taoxizs"), m_taoxizs);
  442. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("takezs"), _T(""));
  443. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("choosezs"), _T(""));
  444. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time4"), _T("")); // 选片时间 ;
  445. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time5"), _T("")); // 订单的取件时间 ;
  446. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time6"), m_time6); // 看设计时间;
  447. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("urgent"), m_urgent); // 是否加急;
  448. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("money3"), _T("")); // 加挑金额;
  449. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("bz3"), _T(""));
  450. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("bz4"), _T(""));
  451. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("delphotos"), _T("")); // 选片时,被删除的相片;
  452. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("authorize2"), strAuthorize);
  453. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("discount2"), strDiscount);
  454. CSQLStatementImpl::GetInstancePtr()->ReturnSQL(sql);
  455. //sql = CSQLStatementImpl::GetInstancePtr()->ReturnSQL();
  456. }
  457. else
  458. {
  459. if (m_strStatusOfChoosePhoto == _T("OK"))
  460. {
  461. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("taoxizs"), m_taoxizs); // 套系张数:入底\入册;
  462. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("takezs"), m_takezs); // 拍摄张数(底片张数);
  463. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("choosezs"), m_choosezs); // 加挑张数;
  464. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time4"), m_time4); // 选片时间 ;
  465. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time5"), m_time5); // 订单的取件时间 ;
  466. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time6"), m_time6); // 看设计时间;
  467. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("urgent"), m_urgent); // 是否加急;
  468. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("money3"), m_money3); // 加挑金额;
  469. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("bz3"), m_bz3);
  470. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("bz4"), m_bz4);
  471. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("delphotos"), strDelphotos); // 选片时,被删除的相片;
  472. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("authorize2"), strAuthorize);
  473. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("discount2"), strDiscount);
  474. CSQLStatementImpl::GetInstancePtr()->ReturnSQL(sql);
  475. //sql = CSQLStatementImpl::GetInstancePtr()->ReturnSQL();
  476. }
  477. else
  478. {
  479. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("status2"), _T("OK")); // 选片状态;
  480. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("waiter3"), m_waiter3); // 选片人;
  481. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("taoxizs"), m_taoxizs);
  482. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("takezs"), m_takezs);
  483. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("choosezs"), m_choosezs);
  484. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time4"), m_time4);
  485. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time5"), m_time5);
  486. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("time6"), m_time6);
  487. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("urgent"), m_urgent);
  488. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("money3"), m_money3);
  489. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("bz3"), m_bz3);
  490. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("bz4"), m_bz4);
  491. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("delphotos"), strDelphotos);
  492. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("authorize2"), strAuthorize);
  493. CSQLStatementImpl::GetInstancePtr()->AddElement(_T("discount2"), strDiscount);
  494. CSQLStatementImpl::GetInstancePtr()->ReturnSQL(sql);
  495. //sql = CSQLStatementImpl::GetInstancePtr()->ReturnSQL();
  496. }
  497. }
  498. //WriteClientLog(sql);
  499. #else
  500. if (m_strStatusOfChoosePhoto == _T("OK"))
  501. sql = _T("update dindan set taoxizs='") + m_taoxizs + _T("',takezs='") + m_takezs + _T("',choosezs='") + m_choosezs + _T("',time4='") + m_time4 + _T("',time5='") + m_time5 + _T("',time6='") + m_time6 + _T("',urgent='") + m_urgent + _T("',money3='") + m_money3 + _T("',bz3='") + m_bz3 + _T("',bz4='") + m_bz4 + _T("',delphotos='") + delphotos + _T("',authorize2='") + strAuthorize + _T("',discount2='") + strDiscount + _T("' where id='") + m_id + _T("'");
  502. else
  503. sql = _T("update dindan set status2='OK',waiter3='") + m_waiter3 + _T("',taoxizs='") + m_taoxizs + _T("',takezs='") + m_takezs + _T("',choosezs='") + m_choosezs + _T("',time4='") + m_time4 + _T("',time5='") + m_time5 + _T("',time6='") + m_time6 + _T("',urgent='") + m_urgent + _T("',money3='") + m_money3 + _T("',bz3='") + m_bz3 + _T("',bz4='") + m_bz4 + _T("',delphotos='") + delphotos + _T("',authorize2='") + strAuthorize + _T("',discount2='") + strDiscount + _T("' where id='") + m_id + _T("'");;
  504. #endif //#if JEFF_TEST_ON
  505. //添加短信记录;
  506. if (m_pParent->m_Runingmode == 1) // 看设计;
  507. {
  508. if (m_status8 != _T("OK"))
  509. sql = _T("update dindan set bz2='") + m_bz3 + _T("',status8='") + m_status8 + _T("',status5='设计中',time6='") + m_time6 + _T("',time5='") + m_time5 + _T("',waiter8='") + g_user.name + _T("',urgent='") + m_urgent + _T("',money3='") + m_money3 + _T("',delphotos2='") + strDelphotos + _T("',authorize2='") + strAuthorize + _T("',discount2='") + strDiscount + _T("' where id='") + m_id + _T("'");
  510. else
  511. sql = _T("update dindan set bz2='") + m_bz3 + _T("',status8='") + m_status8 + _T("',status5='OK',time6='") + m_time6 + _T("',time5='") + m_time5 + _T("',waiter8='") + g_user.name + _T("',urgent='") + m_urgent + _T("',money3='") + m_money3 + _T("',delphotos2='") + strDelphotos + _T("',authorize2='") + strAuthorize + _T("',discount2='") + strDiscount + _T("' where id='") + m_id + _T("'");
  512. }
  513. AddSMSGLog(m_pParent->m_Runingmode, sql);
  514. //新摄控本;
  515. if (atoi(g_cominfoarray.ElementAt(0).ElementAt(117)))
  516. GetWorkBookData(sql);
  517. g_sendhead.bsql = 1;
  518. g_pMainWnd->ProcessChatMessageRequest2(sql);
  519. if (g_bSendOK == 0)
  520. {
  521. m_bSaveFail = 1;
  522. return;
  523. }
  524. m_bSave = 1;
  525. if (atof(m_oldmoney3) != atof(m_money3))
  526. {
  527. InputJT dlg;
  528. dlg.m_id = m_id;
  529. dlg.m_money.Format("%0.2f", atof(m_money3) - atof(m_oldmoney3));
  530. dlg.DoModal();
  531. }
  532. m_oldmoney3 = m_money3;
  533. AfxMessageBox(_T("保存成功!"), MB_ICONINFORMATION);
  534. //添加操作记录;
  535. CString strType = _T("");
  536. if (m_pParent->m_Runingmode == 0)
  537. strType = _T("选片保存");
  538. else
  539. strType = _T("看设计保存");
  540. //添加操作记录('用户帐号','用户名','记录时间','客户端mac','操作类型','订单号','商品ID','商品名称','照片编号');
  541. CString strCurrTime = CTime::GetCurrentTime().Format("%Y-%m-%d %H:%M:%S");
  542. int nSize = m_List3.GetItemCount();
  543. CString strLogSql = _T("");
  544. for(int i = 0; i<nSize; i++)
  545. {
  546. // 商品id;
  547. CString strSPID = m_List3.GetItemText(i, 1);
  548. // 商品名;
  549. CString strSPName = m_List3.GetItemText(i, 2);
  550. #ifdef LKAY_VERSION
  551. CString strPhotoNo = m_List3.GetItemText(i, 7);
  552. #else
  553. // ItCivilian des加密[6/8/2016];
  554. CString strPhotoNo = m_List3.GetItemText(i, 5);
  555. if ( 0 == des_crypt(strPhotoNo, strPhotoNo) )
  556. {
  557. strPhotoNo = _T("<?>") + strPhotoNo;
  558. }
  559. #endif //#ifdef LKAY_VERSION
  560. CString strValues = _T("");
  561. strValues.Format(_T("'%s','%s','%s','%s','%s','%s','%s','%s','%s'"), g_user.account, g_user.name, strCurrTime, g_strMacAddr, strType, m_id, strSPID, strSPName, strPhotoNo);
  562. strLogSql += _T("insert into SelectPhotoLog(Account,UserName,LogDate,ClientMac,OptType,OrderID,SPID,SPName,PhotoNo) values (") + strValues + _T(");");
  563. }
  564. // 添加删除相片记录;
  565. if(strDelphotos != _T(""))
  566. {
  567. if (m_pParent->m_Runingmode == 0)
  568. strType = _T("选片删除");
  569. else
  570. strType = _T("看设计删除");
  571. CString strValues = _T("");
  572. strValues.Format(_T("'%s','%s','%s','%s','%s','%s','%s','%s','%s'"), g_user.account, g_user.name, strCurrTime, g_strMacAddr, strType, m_id, _T(""), _T(""), strDelphotos);
  573. strLogSql += _T("insert into SelectPhotoLog(Account,UserName,LogDate,ClientMac,OptType,OrderID,SPID,SPName,PhotoNo) values (") + strValues + _T(");");
  574. }
  575. g_sendhead.bsql = 1;
  576. g_pMainWnd->ProcessChatMessageRequest2(strLogSql);
  577. if (g_bSendOK == 0)
  578. return;
  579. m_bExit = 0;
  580. if (m_pParent->ReLoad() == 0)
  581. {
  582. OnClose();
  583. m_bExit = 1;
  584. return;
  585. }
  586. LoadData(1);
  587. // 添加掌中宝app;
  588. if (bZZB == 0 && atoi(g_cominfoarray.ElementAt(0).ElementAt(130)) == 0)
  589. AddZZBApp();
  590. }
  591. void ChoosePhotoSkin3::OnTimer(UINT nIDEvent)
  592. {
  593. if (nIDEvent == 3)
  594. {
  595. KillTimer(nIDEvent);
  596. SetSPName3();
  597. }
  598. if (nIDEvent == 2)
  599. {
  600. KillTimer(nIDEvent);
  601. SetSPName2();
  602. }
  603. }
  604. float ChoosePhotoSkin3::GetSPPriceFromId(CString id)
  605. {
  606. for (int i = 0; i < m_pParent->m_sparray.GetSize(); i++)
  607. {
  608. if (id == m_pParent->m_sparray.ElementAt(i).ElementAt(0))
  609. return atof(m_pParent->m_sparray.ElementAt(i).ElementAt(4));
  610. }
  611. return 0;
  612. }
  613. void ChoosePhotoSkin3::GetSPInfoFromName(CString name, CString &id, CString &splb)
  614. {
  615. for (int i = 0; i < m_pParent->m_sparray.GetSize(); i++)
  616. {
  617. if (name == m_pParent->m_sparray.ElementAt(i).ElementAt(1))
  618. {
  619. id = m_pParent->m_sparray.ElementAt(i).ElementAt(0);
  620. break;
  621. }
  622. }
  623. }
  624. CString ChoosePhotoSkin3::GetSPNameFromId(CString id)
  625. {
  626. int i = 0;
  627. for ( i = 0; i < m_pParent->m_sparray.GetSize(); i++)
  628. {
  629. if (id == m_pParent->m_sparray.ElementAt(i).ElementAt(0))
  630. return m_pParent->m_sparray.ElementAt(i).ElementAt(1);
  631. }
  632. id.TrimLeft("0");
  633. for (i = 0; i < m_pParent->m_sparray.GetSize(); i++)
  634. {
  635. if (id == m_pParent->m_sparray.ElementAt(i).ElementAt(0))
  636. return m_pParent->m_sparray.ElementAt(i).ElementAt(1);
  637. }
  638. return "";
  639. }
  640. void ChoosePhotoSkin3::SetSPName2()
  641. {
  642. for (int i = 0; i < m_List2.GetItemCount(); i++)
  643. {
  644. if (GetSPNameFromId(m_List2.GetItemText(i, 1)) != "")
  645. m_List2.SetItemText(i, 2, GetSPNameFromId(m_List2.GetItemText(i, 1)));
  646. }
  647. }
  648. void ChoosePhotoSkin3::SetSPName3()
  649. {
  650. UpdateData();
  651. m_no2array.RemoveAll();
  652. CString str;
  653. for (int i = 0; i < m_List3.GetItemCount(); i++)
  654. {
  655. if (GetSPNameFromId(m_List3.GetItemText(i, 1)) != "")
  656. m_List3.SetItemText(i, 2, GetSPNameFromId(m_List3.GetItemText(i, 1)));
  657. str.Format("%f", GetSPPriceFromId(m_List3.GetItemText(i, 1)));
  658. ConvertToPrice(str);
  659. if (m_List3.GetItemText(i, 1) != "" && (m_List3.GetItemText(i, 3) == "" || m_List3.GetItemText(i, 3) == "0"))
  660. m_List3.SetItemText(i, 3, str);
  661. #ifdef LKAY_VERSION
  662. str=m_List3.GetItemText(i,7);
  663. #else
  664. str = m_List3.GetItemText(i, 5);
  665. #endif
  666. if (!str.IsEmpty())
  667. #ifdef USE_SEP_VEB
  668. str = SEPS_VEB + str + SEPS_VEB;
  669. #else
  670. str = _T(",") + str + _T(",");
  671. #endif
  672. m_no2array.Add(str);
  673. }
  674. }
  675. //加选商品
  676. void ChoosePhotoSkin3::OnSpBox()
  677. {
  678. SPBox dlg;
  679. if (dlg.DoModal() != IDOK)return;
  680. OnButton3();
  681. for (int a = 0; a < dlg.m_spidarray.GetSize(); a++)
  682. {
  683. dlg.m_spid = dlg.m_spidarray.ElementAt(a);
  684. dlg.m_spname = dlg.m_spnamearray.ElementAt(a);
  685. dlg.m_lb = dlg.m_lbarray.ElementAt(a);
  686. int pos = m_List3.GetItemCount();
  687. CString str;
  688. if (pos)
  689. {
  690. if (m_List3.GetItemText(pos - 1, 1).IsEmpty() && m_List3.GetItemText(pos - 1, 2).IsEmpty())
  691. {
  692. pos--;
  693. m_List3.SetItemText(pos, 1, dlg.m_spid);
  694. m_List3.SetItemText(pos, 2, GetSPNameFromId(dlg.m_spid));
  695. str.Format("%f", GetSPPriceFromId(dlg.m_spid));
  696. ConvertToPrice(str);
  697. m_List3.SetItemText(pos, 3, str);
  698. m_List3.SetItemText(pos, 4, "1");
  699. }
  700. else
  701. {
  702. m_List3.InsertItem(pos, "");
  703. m_List3.SetItemText(pos, 1, dlg.m_spid);
  704. m_List3.SetItemText(pos, 2, GetSPNameFromId(dlg.m_spid));
  705. str.Format("%f", GetSPPriceFromId(dlg.m_spid));
  706. ConvertToPrice(str);
  707. m_List3.SetItemText(pos, 3, str);
  708. m_List3.SetItemText(pos, 4, "1");
  709. }
  710. }
  711. else
  712. {
  713. m_List3.InsertItem(pos, "");
  714. m_List3.SetItemText(pos, 1, dlg.m_spid);
  715. m_List3.SetItemText(pos, 2, GetSPNameFromId(dlg.m_spid));
  716. str.Format("%f", GetSPPriceFromId(dlg.m_spid));
  717. ConvertToPrice(str);
  718. m_List3.SetItemText(pos, 3, str);
  719. m_List3.SetItemText(pos, 4, "1");
  720. }
  721. }
  722. SetSPName3();
  723. }
  724. void ChoosePhotoSkin3::OnButton8() // 删除按钮;
  725. {
  726. POSITION pos;
  727. pos = m_List3.GetFirstSelectedItemPosition();
  728. if (pos == NULL)
  729. {
  730. AfxMessageBox("请先选中您要删除的项目!", MB_ICONINFORMATION);
  731. return;
  732. }
  733. if (AfxMessageBox("删除后将无法恢复, 确认删除吗?", MB_YESNO) != IDYES)return;
  734. OnButton3();
  735. int iItem = m_List3.GetNextSelectedItem(pos);
  736. m_List3.DeleteItem(iItem);
  737. SetSPName3();
  738. }
  739. //重选
  740. void ChoosePhotoSkin3::OnButton5()
  741. {
  742. POSITION pos;
  743. pos = m_List3.GetFirstSelectedItemPosition();
  744. if (pos == NULL)
  745. {
  746. AfxMessageBox("请先选中您要重选的商品!", MB_ICONINFORMATION);
  747. return;
  748. }
  749. if (AfxMessageBox("确认重选吗?", MB_YESNO) != IDYES)return;
  750. m_bModify = 1;
  751. int iItem = m_List3.GetNextSelectedItem(pos);
  752. #ifdef LKAY_VERSION
  753. m_List3.SetItemText (iItem, 7, "");
  754. #else
  755. m_List3.SetItemText(iItem, 5, "");
  756. #endif
  757. if (m_no2array.GetSize() > iItem)
  758. m_no2array.SetAt(iItem, "");
  759. UpdateChooseZS();
  760. }
  761. // 全部重选按钮;
  762. void ChoosePhotoSkin3::OnButton6()
  763. {
  764. if (AfxMessageBox("确认重选吗?", MB_YESNO) != IDYES)return;
  765. for (int i = 0; i<m_List3.GetItemCount(); i++)
  766. {
  767. #ifdef LKAY_VERSION
  768. m_List3.SetItemText (i, 7, "");
  769. #else
  770. m_List3.SetItemText(i, 5, "");
  771. #endif
  772. if (m_no2array.GetSize()>i)
  773. m_no2array.SetAt(i, "");
  774. }
  775. UpdateChooseZS();
  776. m_bModify = 1;
  777. m_bReChoose = TRUE;
  778. WriteLog(_T("选片重选"), m_id + CString(_T("订单选片被全部重选")));
  779. }
  780. void ChoosePhotoSkin3::LoadData(BOOL bLoad)
  781. {
  782. int i = 0;
  783. if (bLoad)
  784. {
  785. m_name1 = m_pParent->m_name;
  786. m_time6 = m_pParent->m_time6;
  787. m_time4 = m_pParent->m_time4;
  788. m_waiter3 = m_pParent->m_waiter3;
  789. m_takezs = m_pParent->m_takezs;
  790. m_taoxizs = m_pParent->m_taoxizs;
  791. m_choosezs = m_pParent->m_choosezs;
  792. m_bz3 = m_pParent->m_bz3;
  793. m_bz4 = m_pParent->m_bz4;
  794. m_id = m_pParent->m_strOrderNumber;
  795. m_money3 = m_pParent->m_money3;
  796. m_oldmoney3 = m_pParent->m_oldmoney3;
  797. m_time5 = m_pParent->m_time5;
  798. m_urgent = m_pParent->m_urgent;
  799. if (m_pParent->m_Runingmode && m_time6.IsEmpty())
  800. m_time6 = g_date;
  801. if (m_combourgent.FindString(0, m_urgent) == -1)
  802. m_combourgent.SetCurSel(1);
  803. else
  804. m_combourgent.SetCurSel(m_combourgent.FindString(0, m_urgent));
  805. m_status8 = m_pParent->m_status8;
  806. if (m_combo1.FindString(0, m_status8) == -1)
  807. m_combo1.SetCurSel(0);
  808. else
  809. m_combo1.SetCurSel(m_combo1.FindString(0, m_status8));
  810. UpdateData(false);
  811. m_no2array.Copy(m_pParent->m_no2array);
  812. m_noarray.Copy(m_pParent->m_noarray);
  813. m_List2.DeleteAllItems();
  814. m_List3.DeleteAllItems();
  815. for ( i = 0; i < m_pParent->m_oldsparray.GetSize(); i++)
  816. {
  817. m_List2.InsertItem(i, m_pParent->m_oldsparray.ElementAt(i).ElementAt(1));
  818. m_List2.SetItemText(i, 1, m_pParent->m_oldsparray.ElementAt(i).ElementAt(2));
  819. m_List2.SetItemText(i, 2, m_pParent->m_oldsparray.ElementAt(i).ElementAt(3));
  820. }
  821. for (i = 0; i < m_pParent->m_List3.GetItemCount(); i++)
  822. {
  823. m_List3.InsertItem(i, m_pParent->m_List3.GetItemText(i, 0));
  824. m_List3.SetItemText(i, 1, m_pParent->m_List3.GetItemText(i, 1));
  825. m_List3.SetItemText(i, 2, m_pParent->m_List3.GetItemText(i, 2));
  826. m_List3.SetItemText(i, 3, m_pParent->m_List3.GetItemText(i, 3));
  827. m_List3.SetItemText(i, 4, m_pParent->m_List3.GetItemText(i, 4));
  828. m_List3.SetItemText(i, 5, m_pParent->m_List3.GetItemText(i, 5));
  829. m_List3.SetItemText(i, 6, m_pParent->m_List3.GetItemText(i, 6));
  830. #ifdef LKAY_VERSION
  831. m_List3.SetItemText(i, 6, m_pParent->m_List3.GetItemText (i, 6));
  832. m_List3.SetItemText(i, 7, m_pParent->m_List3.GetItemText (i, 7));
  833. #endif
  834. }
  835. }
  836. else
  837. {
  838. UpdateData();
  839. // m_pParent->m_name1=m_name1;
  840. m_pParent->m_time6 = m_time6;
  841. m_pParent->m_time4 = m_time4;
  842. m_pParent->m_waiter3 = m_waiter3;
  843. m_pParent->m_taoxizs = m_taoxizs;
  844. m_pParent->m_choosezs = m_choosezs;
  845. m_pParent->m_bz3 = m_bz3;
  846. m_pParent->m_bz4 = m_bz4;
  847. m_pParent->m_strOrderNumber = m_id;
  848. m_pParent->m_money3 = m_money3;
  849. m_pParent->m_oldmoney3 = m_oldmoney3;
  850. m_combourgent.GetLBText(m_combourgent.GetCurSel(), m_urgent);
  851. m_pParent->m_urgent = m_urgent;
  852. m_pParent->m_time5 = m_time5;
  853. m_pParent->m_status8 = m_status8;
  854. m_pParent->UpdateData(false);
  855. m_pParent->m_no2array.Copy(m_no2array);
  856. m_pParent->m_noarray.Copy(m_noarray);
  857. m_pParent->m_bSave = m_bSave;
  858. if (m_bModify)
  859. {
  860. m_pParent->UpdateChooseZS();//更新选中的照片
  861. m_pParent->GetNoSelPhoto();
  862. m_pParent->LoadPhotos();//更新显示
  863. }
  864. m_pParent->m_List2.DeleteAllItems();
  865. m_pParent->m_List3.DeleteAllItems();
  866. /* for(int i=0; i<m_List2.GetItemCount (); i++)
  867. {
  868. m_pParent->m_List2.InsertItem(i, m_List2.GetItemText (i, 0));
  869. m_pParent->m_List2.SetItemText(i, 1, m_List2.GetItemText (i, 1));
  870. m_pParent->m_List2.SetItemText(i, 2, m_List2.GetItemText (i, 2));
  871. m_pParent->m_List2.SetItemText(i, 3, m_List2.GetItemText (i, 3));
  872. m_pParent->m_List2.SetItemText(i, 4, m_List2.GetItemText (i, 4));
  873. }*/
  874. for ( i = 0; i < m_List3.GetItemCount(); i++)
  875. {
  876. m_pParent->m_List3.InsertItem(i, m_List3.GetItemText(i, 0));
  877. m_pParent->m_List3.SetItemText(i, 1, m_List3.GetItemText(i, 1));
  878. m_pParent->m_List3.SetItemText(i, 2, m_List3.GetItemText(i, 2));
  879. m_pParent->m_List3.SetItemText(i, 3, m_List3.GetItemText(i, 3));
  880. m_pParent->m_List3.SetItemText(i, 4, m_List3.GetItemText(i, 4));
  881. m_pParent->m_List3.SetItemText(i, 5, m_List3.GetItemText(i, 5));
  882. m_pParent->m_List3.SetItemText(i, 6, m_List3.GetItemText(i, 6));
  883. #ifdef LKAY_VERSION
  884. m_pParent->m_List3.SetItemText(i, 6, m_List3.GetItemText (i, 6));
  885. m_pParent->m_List3.SetItemText(i, 7, m_List3.GetItemText (i, 7));
  886. #endif
  887. }
  888. }
  889. }
  890. void ChoosePhotoSkin3::OnBTNprint() // 打单按钮;
  891. {
  892. if (m_pParent->m_Runingmode)
  893. g_pMainWnd->PrintFlowChart4(m_id);
  894. else
  895. g_pMainWnd->PrintFlowChart(m_id);
  896. }
  897. void ChoosePhotoSkin3::OnBTNprint2() // 打小图;
  898. {
  899. m_pParent->UpdateChooseZS();
  900. m_pParent->GetNoSelPhoto();
  901. m_pParent->LoadPhotos();//更新显示;
  902. if (m_pParent->m_SelPhotoPath.GetSize() == 0)
  903. {
  904. AfxMessageBox("没有选中的照片!"); return;
  905. }
  906. /* CString name;
  907. if(!m_name1.IsEmpty ())
  908. name=m_name1+_T(",");
  909. name+=m_name2;
  910. name.TrimRight (_T(","));*/
  911. g_pMainWnd->PrintThumbNail(&(m_pParent->m_SelPhotoPath), "客人:" + m_name1 + "-选片小图", m_pParent->m_Runingmode, m_pParent->m_size);
  912. }
  913. float ChoosePhotoSkin3::GetMoney()
  914. {
  915. float ret = 0;
  916. for (int i = 0; i < m_List3.GetItemCount(); i++)
  917. {
  918. ret += atof(m_List3.GetItemText(i, 3))*atof(m_List3.GetItemText(i, 4));
  919. }
  920. return ret;
  921. }
  922. float ChoosePhotoSkin3::GetMoney2()
  923. {
  924. float ret = 0;
  925. for (int i = 0; i < m_List2.GetItemCount(); i++)
  926. {
  927. ret += GetSPPriceFromId(m_List2.GetItemText(i, 0))*atof(m_List2.GetItemText(i, 2));
  928. }
  929. return ret;
  930. }
  931. void ChoosePhotoSkin3::OnButton12() // 选择客户要求;
  932. {
  933. SPLBDlg dlg;
  934. dlg.m_mode = 19;
  935. if (dlg.DoModal() == IDOK)
  936. {
  937. UpdateData();
  938. m_bz3 += "要求:" + dlg.m_edit1 + "\r\n";
  939. UpdateData(0);
  940. }
  941. }
  942. void ChoosePhotoSkin3::OnBnClickedMicroshare() // 微分享按钮;
  943. {
  944. // 定义变量;
  945. CString strOrderNumber = _T(""); // 订单号;
  946. CString strScenery = _T(""); // 景点名;
  947. CString strCustomer = _T(""); // 顾客姓名;
  948. CString strMakeupArtist = _T(""); // 化妆师;
  949. CString strSourcePath = _T(""); // 相片根目录;
  950. CString strBranchName = _T(""); // 分店名;
  951. CString strBranchDomain = _T(""); // 分店域名;
  952. TCHAR szShareId[MAX_PATH] = _T(""); // 微分享相册ID;
  953. // 没有集团版选片的,所以暂时不需要处理分店上的目录;
  954. // 且景点也置空,主要是原片目录和初修目录的判断;
  955. strOrderNumber = m_pParent->m_strOrderNumber;
  956. strMakeupArtist = m_pParent->m_waiter2;
  957. // 判断初修片目录是否有相片,无则指向原片目录;
  958. BOOL bOriginal = FALSE;
  959. #if 0
  960. strSourcePath.Format(_T("%s\\%s"), g_path2, strOrderNumber);
  961. if (PathFileExists(strSourcePath))
  962. {
  963. // 查找初修片目录是否有订单文件相片;
  964. using namespace helper_coffs;
  965. ffsco o;
  966. o.dirs(1);
  967. o.find(LPCSTR(strSourcePath), LPCSTR("*.jpg"));
  968. if (o.co_file().size() == 0)
  969. strSourcePath.Format(_T("%s\\%s"), g_path1, strOrderNumber);
  970. }
  971. else
  972. {
  973. bOriginal = TRUE;
  974. strSourcePath.Format(_T("%s\\%s"), g_path1, strOrderNumber);
  975. }
  976. #else
  977. CString strtmp;
  978. CStringArray AryOrderPath;
  979. // 获取所有的初修片共享目录;
  980. int nSize = g_aryOfSharePathInfo.GetSize();
  981. for ( int i = 0; i < nSize; i++ )
  982. {
  983. if ( 2 == atoi(g_aryOfSharePathInfo.ElementAt(i).ElementAt(5)) )
  984. {
  985. if ( g_aryOfSharePathInfo.ElementAt(i).ElementAt(1).Compare(g_branchname.IsEmpty() ? g_domain : g_branchname ) != 0 )
  986. {
  987. continue;
  988. }
  989. strtmp = g_aryOfSharePathInfo.ElementAt(i).ElementAt(2);
  990. strtmp += _T("\\");
  991. strtmp += strOrderNumber;
  992. strtmp += _T("\\");
  993. if ( PathFileExists(strtmp) )
  994. {
  995. AryOrderPath.Add(strtmp);
  996. }
  997. }
  998. }
  999. strtmp.Format(_T("%s\\%s\\"), g_path2, strOrderNumber);
  1000. if ( PathFileExists(strtmp) )
  1001. {
  1002. AryOrderPath.Add(strtmp);
  1003. }
  1004. // 查找初修片目录是否有订单文件相片;
  1005. using namespace helper_coffs;
  1006. ffsco o;
  1007. o.dirs(1);
  1008. for ( int j = 0; j < AryOrderPath.GetSize(); j++)
  1009. {
  1010. o.find(LPCSTR(AryOrderPath.ElementAt(j)), LPCSTR("*.jpg"));
  1011. }
  1012. if ( o.co_file().size() == 0 )
  1013. {
  1014. AryOrderPath.RemoveAll();
  1015. // 如果初修共享目录无相片,则使用原片共享目录;
  1016. // 获取所有的初修片共享目录;
  1017. int nSize = g_aryOfSharePathInfo.GetSize();
  1018. for ( int ii = 0; ii < nSize; ii++ )
  1019. {
  1020. if ( 1 == atoi(g_aryOfSharePathInfo.ElementAt(ii).ElementAt(5)) )
  1021. {
  1022. if ( g_aryOfSharePathInfo.ElementAt(ii).ElementAt(1).Compare(g_branchname.IsEmpty() ? g_domain : g_branchname ) != 0 )
  1023. {
  1024. continue;
  1025. }
  1026. strtmp = g_aryOfSharePathInfo.ElementAt(ii).ElementAt(2);
  1027. strtmp += _T("\\");
  1028. strtmp += strOrderNumber;
  1029. strtmp += _T("\\");
  1030. if ( PathFileExists(strtmp) )
  1031. {
  1032. AryOrderPath.Add(strtmp);
  1033. }
  1034. }
  1035. }
  1036. strtmp.Format(_T("%s\\%s\\"), g_path1, strOrderNumber);
  1037. if ( PathFileExists(strtmp) )
  1038. {
  1039. AryOrderPath.Add(strtmp);
  1040. }
  1041. }
  1042. for ( int k = 0; k < AryOrderPath.GetSize(); k++ )
  1043. {
  1044. strSourcePath = AryOrderPath.ElementAt(k) ;
  1045. strSourcePath += _T("#");
  1046. }
  1047. #endif
  1048. // 加载动态库;
  1049. if (LoadMicroShareLibrary() == FALSE)
  1050. return;
  1051. if (g_lyfzCreateShare)
  1052. {
  1053. g_lyfzCreateShare(
  1054. g_cominfoarray.ElementAt(0).ElementAt(147), // 微账号;
  1055. g_cominfoarray.ElementAt(0).ElementAt(148), // 微密码;
  1056. //(bOriginal == FALSE) ? g_path2 : g_path1, // 相片根级目录;
  1057. strSourcePath,
  1058. strBranchDomain, // 分店域名;由于当前版本没有实现跨店选片,所以这一步略过;
  1059. strOrderNumber, // 订单号;
  1060. strScenery, // 拍摄景点;
  1061. strSourcePath,
  1062. m_pParent->m_name1, // 顾客1姓名;
  1063. m_pParent->m_name2, // 顾客2姓名;
  1064. strMakeupArtist, // 化妆师;
  1065. szShareId // 返回的微相册id;
  1066. );
  1067. }
  1068. FreeMicroShareLibrary();
  1069. }
  1070. /************************************************************************/
  1071. /*
  1072. 函数: GetCalculatingDiscount
  1073. 描述: 计算折扣
  1074. 参数:
  1075. CString& strAuthorize, 授权
  1076. CString& strDiscount 折扣
  1077. 返回:
  1078. */
  1079. /************************************************************************/
  1080. void ChoosePhotoSkin3::GetCalculatingDiscount(CString& strAuthorize, CString& strDiscount)
  1081. {
  1082. //计算折扣
  1083. float saleprice1 = GetMoney();
  1084. float saleprice2 = GetMoney2();
  1085. if (saleprice1 > saleprice2)
  1086. strDiscount.Format(_T("%0.3f"), min(10.0, (atof(m_money3) * 10) / (saleprice1 - saleprice2)));
  1087. else
  1088. strDiscount = _T("10.0");
  1089. if (IsHasRights2new(26) == 0 && atof(m_money3) > 0.1)//无折扣权限
  1090. {
  1091. if (strDiscount != _T("10.0"))
  1092. {
  1093. AfxMessageBox(_T("价格太低,需授权!!"), MB_ICONINFORMATION);
  1094. Login2 dlg;
  1095. dlg.m_mode = 2;
  1096. if (dlg.DoModal() != IDOK)
  1097. return;
  1098. if (IsHasRightsnew2(26, dlg.m_rights) == 0)
  1099. return;
  1100. strDiscount.Format(_T("%0.3f"), min(10.0, (atof(m_money3) * 10) / (saleprice1 - saleprice2)));
  1101. if (atof(strDiscount) < atof(dlg.m_discount2))
  1102. {
  1103. CString str;
  1104. str.Format(_T("折扣%s太低,需授权!"), strDiscount);
  1105. if (AfxMessageBox(str, MB_ICONINFORMATION))
  1106. return;
  1107. }
  1108. strAuthorize = dlg.m_name;
  1109. }
  1110. }
  1111. else if (atof(strDiscount) < atof(g_user.m_discount2))//&& atof(m_money3)>0.1 )
  1112. {
  1113. AfxMessageBox(_T("价格太低,需授权!!"), MB_ICONINFORMATION);
  1114. Login2 dlg;
  1115. dlg.m_mode = 2;
  1116. if (dlg.DoModal() != IDOK)
  1117. return;
  1118. if (IsHasRightsnew2(26, dlg.m_rights) == 0)
  1119. return;
  1120. strDiscount.Format(_T("%0.3f"), min(10.0, (atof(m_money3) * 10) / (saleprice1 - saleprice2)));
  1121. if (atof(strDiscount) < atof(dlg.m_discount2))
  1122. {
  1123. CString str;
  1124. str.Format(_T("折扣%s太低,需授权!"), strDiscount);
  1125. if(AfxMessageBox(str, MB_ICONINFORMATION))
  1126. return;
  1127. }
  1128. strDiscount = dlg.m_name;
  1129. }
  1130. }
  1131. /************************************************************************/
  1132. /*
  1133. 函数: GetSPData
  1134. 描述: 获取商品数据
  1135. 参数:
  1136. CArray<CStringArray, CStringArray>& sparray 返回商品集
  1137. BOOL& bZZB 是否
  1138. 返回:
  1139. */
  1140. /************************************************************************/
  1141. void ChoosePhotoSkin3::GetSPData(CArray<CStringArray, CStringArray>& sparray, BOOL& bZZB)
  1142. {
  1143. // 选片或选设计选中的相片编号;
  1144. CString strSelImgs = _T("");
  1145. CString strGoodName = _T("");
  1146. sparray.SetSize(m_no2array.GetSize());
  1147. // 获取商品数据;
  1148. int i = 0;
  1149. for (int j = 0; j < m_no2array.GetSize(); j++)
  1150. {
  1151. // 订单号;
  1152. sparray.ElementAt(i).Add(m_id);
  1153. // dindansp.autoid;
  1154. sparray.ElementAt(i).Add(m_List3.GetItemText(j, 0));
  1155. // dindansp.spid;
  1156. sparray.ElementAt(i).Add(m_List3.GetItemText(j, 1));
  1157. // dindansp.name;
  1158. strGoodName = m_List3.GetItemText(j, 2);
  1159. strGoodName.TrimRight();
  1160. sparray.ElementAt(i).Add(strGoodName);
  1161. if (strGoodName == _T("掌中宝app"))
  1162. bZZB = 1;
  1163. // 价格;
  1164. sparray.ElementAt(i).Add(m_List3.GetItemText(j, 3));
  1165. // 数量;
  1166. sparray.ElementAt(i).Add(m_List3.GetItemText(j, 4));
  1167. #ifdef LKAY_VERSION
  1168. sparray.ElementAt (i).Add ( m_List3.GetItemText (j, 5) );
  1169. sparray.ElementAt (i).Add ( m_List3.GetItemText (j, 6) );
  1170. sparray.ElementAt (i).Add (m_List3.GetItemText (j, 7) );//编号
  1171. #else
  1172. // 相片串;
  1173. // ItCivilian des加密 [6/7/2016];
  1174. strSelImgs = m_List3.GetItemText(j, 5);
  1175. if ( 0 == des_crypt(strSelImgs, strSelImgs) )
  1176. {
  1177. strSelImgs = _T("<?>") + strSelImgs;
  1178. }
  1179. sparray.ElementAt(i).Add(strSelImgs);
  1180. #endif
  1181. // 备注;
  1182. sparray.ElementAt(i).Add(m_List3.GetItemText(j,6));
  1183. if (m_pParent->m_Runingmode)
  1184. {// 选设计;
  1185. sparray.ElementAt(i).Add(m_status8);
  1186. sparray.ElementAt(i).Add(GetLB(m_List3.GetItemText(j, 2)));
  1187. sparray.ElementAt(i).Add(m_List3.GetItemText(j, 4));
  1188. sparray.ElementAt(i).Add(m_pParent->m_seltxname);
  1189. }
  1190. else
  1191. sparray.ElementAt(i).Add(m_pParent->m_seltxname);
  1192. i++;
  1193. }
  1194. if(sparray.GetSize() == 0)
  1195. {
  1196. sparray.SetSize(1);
  1197. sparray.ElementAt(0).Add(m_id);
  1198. }
  1199. int realcount = sparray.GetSize();
  1200. sparray.SetSize(realcount + 1, 1);
  1201. sparray.ElementAt(realcount).Add(g_user.name);
  1202. }
  1203. /************************************************************************/
  1204. /* 函数:UpdateSPData[6/7/2016 ItCivilian];
  1205. /* 描述:将选片或选设计的结果保存到数据库中;
  1206. /* 参数:;
  1207. /* [IN] sparray:CtrlList里列表值;
  1208. /* [OUT] :;
  1209. /* [IN/OUT] :;
  1210. /* 返回:void;
  1211. /* 注意:;
  1212. /* 示例:;
  1213. /*
  1214. /* 修改:;
  1215. /* 日期:;
  1216. /* 内容:;
  1217. /************************************************************************/
  1218. void ChoosePhotoSkin3::UpdateSPData(CArray<CStringArray, CStringArray>& sparray)
  1219. {
  1220. CMemFile memfile;
  1221. CArchive ar(&memfile, CArchive::store);
  1222. for (int ii = 0; ii < sparray.GetSize(); ii++)
  1223. sparray.ElementAt(ii).Serialize(ar);
  1224. ar.Close();
  1225. // 将数据复制到缓冲区;
  1226. int length = memfile.GetLength();
  1227. BYTE *pData = memfile.Detach();
  1228. int size = sparray.GetSize();
  1229. BYTE *pData2 = new BYTE[length + sizeof(int)];
  1230. memcpy(pData2, pData, length);
  1231. memcpy(pData2 + length, &size, sizeof(int));
  1232. delete [] pData;
  1233. length += sizeof(int);
  1234. CString savepath = _T("");
  1235. savepath.Format("%s\\%s.dat", g_mainpath, m_id);
  1236. if (m_pParent->m_Runingmode)
  1237. savepath.Format("%s\\%s-2.dat", g_mainpath, m_id);
  1238. if(0)
  1239. {
  1240. CFile fp;
  1241. fp.Open(savepath, CFile::modeCreate | CFile::modeWrite);
  1242. fp.Write(pData2, length);
  1243. fp.Close();
  1244. }
  1245. g_nSendCode = 6;
  1246. if (m_pParent->m_Runingmode)
  1247. g_nSendCode = 24;
  1248. g_pMainWnd->ProcessChatMessageRequest2(pData2, length);
  1249. g_nSendCode = 0;
  1250. if (g_bSendOK == 0)
  1251. {
  1252. delete[]pData2;
  1253. m_bSaveFail = 1;
  1254. return;
  1255. }
  1256. ::DeleteFile(savepath); // 删除*.dat文件;
  1257. delete [] pData2;
  1258. }
  1259. /************************************************************************/
  1260. /*
  1261. 函数: GetWorkBookData
  1262. 描述: 获取新摄控本数据
  1263. 参数:
  1264. CString& sql 返回要执行的sql
  1265. 返回:
  1266. */
  1267. /************************************************************************/
  1268. void ChoosePhotoSkin3::GetWorkBookData(CString& sql)
  1269. {
  1270. CString id = m_id;
  1271. CString m_time5old = m_pParent->m_time5old;
  1272. CString m_time6old = m_pParent->m_time6old;
  1273. m_pParent->m_time5old = m_time5;
  1274. m_pParent->m_time6old = m_time6;
  1275. CString timestamp;
  1276. CTime tm = CTime::GetCurrentTime();
  1277. CTimeSpan dt(0, 0, 0, 1);
  1278. timestamp = tm.Format(_T("%Y%m%d%H%M%S"));
  1279. CString sql2(_T("")), phone(_T("")), clothescount(_T(""));
  1280. CString m_phone1 = m_pParent->m_phone1;
  1281. CString m_phone2 = m_pParent->m_phone2;
  1282. CString m_name1 = m_pParent->m_name1;
  1283. CString m_name2 = m_pParent->m_name2;
  1284. CString taoxiname = m_pParent->taoxiname;
  1285. CString m_taoxijiage = m_pParent->m_taoxijiage;
  1286. CString m_waiter1 = m_pParent->m_waiter1;
  1287. CString m_waiter2 = m_pParent->m_waiter2;
  1288. CString ren = m_pParent->ren;
  1289. CString m_clothescount = m_pParent->m_clothescount;
  1290. if (m_time6 != "" && m_time6old != m_time6)
  1291. {
  1292. tm += dt;
  1293. timestamp = tm.Format(_T("%Y%m%d%H%M%S"));
  1294. phone = m_phone1 + _T(" ") + m_phone2;
  1295. phone.TrimLeft();
  1296. if (m_clothescount != _T(""))
  1297. clothescount = _T("服装:") + m_clothescount;
  1298. if (1)//m_time6old=="")
  1299. sql2.Format(_T("***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, _T(""), taoxiname, m_taoxijiage, m_waiter1, m_waiter2, ren, m_taoxijiage, clothescount, g_user.name, timestamp, m_time6, 2, _T("未到"), id);
  1300. else
  1301. sql2.Format(_T("***update [todaytake] set [date]='%s' where [id]='%s' and [mode]='%d'"), m_time6, id, 2);
  1302. sql += sql2;
  1303. }
  1304. if (m_time5 != "" && m_time5old != m_time5)
  1305. {
  1306. tm += dt;
  1307. timestamp = tm.Format(_T("%Y%m%d%H%M%S"));
  1308. phone = m_phone1 + _T(" ") + m_phone2;
  1309. phone.TrimLeft();
  1310. if (m_clothescount != _T(""))
  1311. clothescount = _T("服装:") + m_clothescount;
  1312. if (1)//m_time5old=="")
  1313. sql2.Format(_T("***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, _T(""), taoxiname, m_taoxijiage, m_waiter1, m_waiter2, ren, m_taoxijiage, clothescount, g_user.name, timestamp, m_time5, 3, _T("未到"), id);
  1314. else
  1315. sql2.Format(_T("***update [todaytake] set [date]='%s' where [id]='%s' and [mode]='%d'"), m_time5, id, 3);
  1316. sql += sql2;
  1317. }
  1318. }
  1319. /************************************************************************/
  1320. /*
  1321. 函数: AddZZBApp
  1322. 描述: 添加掌中宝app
  1323. 参数:
  1324. 返回:
  1325. */
  1326. /************************************************************************/
  1327. void ChoosePhotoSkin3::AddZZBApp()
  1328. {
  1329. CString sql = _T("");
  1330. ZZB dlg;
  1331. dlg.SetLiaPath("6.lia");
  1332. if (dlg.DoModal() == IDOK)
  1333. {
  1334. CString m_spname = _T("掌中宝app");
  1335. CString m_spid;
  1336. CString m_lb;
  1337. GetSPInfoFromName(m_spname, m_spid, m_lb);
  1338. if (m_spid == _T(""))
  1339. {
  1340. sql = _T("insert into shangpinlb (name)values('掌中宝app')***insert into shangpin(spid,spname,splb,hide)values('ZZB001','掌中宝app','掌中宝app','上架')");
  1341. g_sendhead.bsql = 1;
  1342. g_pMainWnd->ProcessChatMessageRequest2(sql);
  1343. if (g_bSendOK == 0)
  1344. {
  1345. m_bSaveFail = 1;
  1346. return;
  1347. }
  1348. g_sendhead.code[0] = 4;
  1349. g_sendhead.tabcount = 1;
  1350. g_sendhead.bsql = 0;
  1351. g_pMainWnd->ProcessChatMessageRequest2(1);
  1352. if (g_bSendOK == 0)
  1353. {
  1354. m_bSaveFail = 1;
  1355. return;
  1356. }
  1357. DataToArray(&(m_pParent->m_sparray));
  1358. GetSPInfoFromName(m_spname, m_spid, m_lb);
  1359. }
  1360. int pos = m_List3.GetItemCount();
  1361. CString str;
  1362. if (pos)
  1363. {
  1364. if (m_List3.GetItemText(pos - 1, 1).IsEmpty() && m_List3.GetItemText(pos - 1, 2).IsEmpty())
  1365. {
  1366. pos--;
  1367. m_List3.SetItemText(pos, 1, m_spid);
  1368. m_List3.SetItemText(pos, 2, GetSPNameFromId(m_spid));
  1369. str.Format("%f", GetSPPriceFromId(m_spid));
  1370. ConvertToPrice(str);
  1371. m_List3.SetItemText(pos, 3, str);
  1372. m_List3.SetItemText(pos, 4, "1");
  1373. }
  1374. else
  1375. {
  1376. m_List3.InsertItem(pos, "");
  1377. m_List3.SetItemText(pos, 1, m_spid);
  1378. m_List3.SetItemText(pos, 2, GetSPNameFromId(m_spid));
  1379. str.Format("%f", GetSPPriceFromId(m_spid));
  1380. ConvertToPrice(str);
  1381. m_List3.SetItemText(pos, 3, str);
  1382. m_List3.SetItemText(pos, 4, "1");
  1383. }
  1384. }
  1385. else
  1386. {
  1387. m_List3.InsertItem(pos, "");
  1388. m_List3.SetItemText(pos, 1, m_spid);
  1389. m_List3.SetItemText(pos, 2, GetSPNameFromId(m_spid));
  1390. str.Format("%f", GetSPPriceFromId(m_spid));
  1391. ConvertToPrice(str);
  1392. m_List3.SetItemText(pos, 3, str);
  1393. m_List3.SetItemText(pos, 4, "1");
  1394. }
  1395. SetSPName3();
  1396. AfxMessageBox("已自动添加产品 '掌中宝app', 请继续挑选制作掌中宝app照片!", MB_ICONINFORMATION);
  1397. }
  1398. }
  1399. /************************************************************************/
  1400. /*
  1401. 函数: AddSMSGLog
  1402. 描述: 添加短信记录
  1403. 参数:
  1404. const int nRuningmode 选片模式==0、看设计模式==1, 默认为0;
  1405. CString& sql 返回要添加短信的sql
  1406. 返回:
  1407. */
  1408. /************************************************************************/
  1409. void ChoosePhotoSkin3::AddSMSGLog(const int nRuningmode, CString& sql)
  1410. {
  1411. CString m_name1 = m_pParent->m_name1;
  1412. CString m_name2 = m_pParent->m_name2;
  1413. CString m_phone1 = m_pParent->m_phone1;
  1414. CString m_phone2 = m_pParent->m_phone2;
  1415. CString oldstatus = m_pParent->m_checkstatus;
  1416. CString sql2 = _T("");
  1417. BOOL msgcheck = FALSE;
  1418. CString msgcontent = _T("");
  1419. if(nRuningmode == 1)
  1420. {
  1421. msgcheck = atoi(g_cominfoarray.ElementAt(0).ElementAt(103)); // [version].[msgcheck13].是否在客人看样OK后发送短信;
  1422. msgcontent = g_cominfoarray.ElementAt(0).ElementAt(107);
  1423. }
  1424. else
  1425. {
  1426. msgcheck = atoi(g_cominfoarray.ElementAt(0).ElementAt(102)); // [version].[msgcheck12].是否在客人看样OK后发送短信;
  1427. msgcontent = g_cominfoarray.ElementAt(0).ElementAt(106);
  1428. }
  1429. if (oldstatus == _T("OK"))
  1430. msgcheck = 0;
  1431. if(nRuningmode == 1 && m_status8 != _T("OK"))//m_status8选设计状态;
  1432. msgcheck = 0;
  1433. #ifdef CHILD_VERSION
  1434. if (msgcheck)
  1435. {
  1436. CString m_content3 = msgcontent;
  1437. CString str, timestamp;
  1438. timestamp = _T("777888");
  1439. {
  1440. CString name;
  1441. if (!m_name1.IsEmpty())
  1442. name = m_name1 + _T(",");
  1443. name += m_name2;
  1444. name.TrimRight(_T(","));
  1445. if (name.IsEmpty() == 0 && CheckPhoneType(m_phone1) != -1 && CheckBadWords(name, 0))
  1446. {
  1447. str = name + m_content3;
  1448. str.Replace(_T("xxx小朋友"), _T(""));
  1449. int count = GetLengthEx(str) / MSG_LENGTH;
  1450. if (GetLengthEx(str) % MSG_LENGTH)
  1451. count++;
  1452. CString scount = _T("");
  1453. scount.Format("%d", count);
  1454. #if JEFF_TEST_ON
  1455. // 插入记录时需要加上短信类型;
  1456. CString strmsgtype = _T("");
  1457. if(nRuningmode == 1)
  1458. strmsgtype = _T("13");
  1459. else
  1460. strmsgtype = _T("12");
  1461. sql2.Format(INSERT_SENDREGDELAY, strmsgtype, m_phone1, str, timestamp, scount, _T("0"), _T("0"), _T("0"),_T("系统自动发送"));
  1462. sql += _T("***") + sql2;
  1463. #else
  1464. sql2 = _T("***insert into sendregdelay([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('") + m_phone1 + _T("','") + str + _T("','") + timestamp + _T("','") + scount + _T("','0','0','0','系统自动发送')");
  1465. sql += sql2;
  1466. #endif
  1467. }
  1468. }
  1469. }
  1470. #else
  1471. if (msgcheck)
  1472. {
  1473. CString m_content3 = msgcontent;
  1474. CString str, timestamp;
  1475. timestamp = _T("777888");
  1476. int pos = m_content3.Find(_T("xxx先生/女士"));
  1477. if (pos != -1)
  1478. {
  1479. if (m_name1.IsEmpty() == 0 && CheckPhoneType(m_phone1) != -1 && CheckBadWords(m_name1, 0))
  1480. {
  1481. str = m_content3;
  1482. str.Replace(_T("xxx先生/女士"), m_name1 + _T("先生"));
  1483. int count = GetLengthEx(str) / MSG_LENGTH;
  1484. if (GetLengthEx(str) % MSG_LENGTH)
  1485. count++;
  1486. CString scount = _T("");
  1487. scount.Format(_T("%d"), count);
  1488. #if JEFF_TEST_ON
  1489. // 插入记录时需要加上短信类型;
  1490. sql2.Format(INSERT_SENDREGDELAY, _T("13"), m_phone1, str, timestamp, scount, _T("0"), _T("0"), _T("0"), _T("系统自动发送"));
  1491. sql += _T("***") + sql2;
  1492. #else
  1493. sql2=_T("***insert into sendregdelay([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('") + m_phone1 + _T("','") + str + _T("','") + timestamp + _T("','") + scount + _T("','0','0','0','系统自动发送')");
  1494. sql+=sql2;
  1495. #endif
  1496. }
  1497. if (m_name2.IsEmpty() == 0 && CheckPhoneType(m_phone2) != -1 && CheckBadWords(m_name2, 0))
  1498. {
  1499. str = m_content3;
  1500. str.Replace(_T("xxx先生/女士"), m_name2 + _T("女士"));
  1501. int count = GetLengthEx(str) / MSG_LENGTH;
  1502. if (GetLengthEx(str) % MSG_LENGTH)
  1503. count++;
  1504. CString scount = _T("");
  1505. scount.Format(_T("%d"), count);
  1506. CTime tm = CTime::GetCurrentTime();
  1507. tm += CTimeSpan(0, 0, 0, 3);
  1508. timestamp = _T("777888");
  1509. #if JEFF_TEST_ON
  1510. // 插入记录时需要加上短信类型;
  1511. CString strmsgtype = _T("");
  1512. if(nRuningmode == 1)
  1513. strmsgtype = _T("13");
  1514. else
  1515. strmsgtype = _T("12");
  1516. sql2.Format(INSERT_SENDREGDELAY, strmsgtype, m_phone2, str, timestamp, scount, _T("0"), _T("0"), _T("0"), _T("系统自动发送"));
  1517. sql += _T("***") + sql2;
  1518. #else
  1519. sql2=_T("***insert into sendregdelay([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values('") + m_phone2 + _T("','") + str + _T("','") + timestamp + _T("','") + scount + _T("','0','0','0','系统自动发送')");
  1520. sql+=sql2;
  1521. #endif
  1522. }
  1523. }
  1524. }
  1525. #endif
  1526. }
  1527. /************************************************************************/
  1528. /*
  1529. 函数: SaveFolderInfo
  1530. 描述: 保存文件夹信息
  1531. 参数:
  1532. 返回: 1成功,0失败
  1533. */
  1534. /************************************************************************/
  1535. int ChoosePhotoSkin3::SaveFolderInfo()
  1536. {
  1537. CString filter = _T("LoadFolder@OrderID='") + m_pParent->m_strOrderNumber + _T("'");
  1538. g_sendhead.code[0] = 235;
  1539. g_sendhead.tabcount = 1;
  1540. g_sendhead.bsql = 0;
  1541. g_pMainWnd->ProcessChatMessageRequest2(filter);
  1542. if (g_bSendOK == 0)
  1543. return 0;
  1544. CArray<CStringArray, CStringArray> folderarr;
  1545. DataToArray(&folderarr);
  1546. CString strFolderNames = _T("");
  1547. CString strPhotos = _T("");
  1548. CString strDelPhotos = _T("");
  1549. CString strSql = _T("");
  1550. m_pParent->GetAllFolderNames(strFolderNames);
  1551. if(strFolderNames != _T(""))
  1552. {
  1553. //通过文件夹获取所有的相片和删除的相片
  1554. m_pParent->GetAllFileFromFolder(0, strPhotos);
  1555. m_pParent->GetAllFileFromFolder(3, strDelPhotos);
  1556. // ItCivilian des加密 [6/7/2016];
  1557. if ( 0 == des_crypt(strPhotos,strPhotos) )
  1558. strPhotos = _T("<?>") + strPhotos;
  1559. if ( 0 == des_crypt(strDelPhotos,strDelPhotos) )
  1560. strDelPhotos = _T("<?>") + strDelPhotos;
  1561. }
  1562. if(folderarr.GetSize() > 0)
  1563. {
  1564. strSql = _T("UPDATE FolderInfo SET FolderNames='") + strFolderNames + ("',Photos='") + strPhotos + _T("',DelPhotos='") + strDelPhotos + _T("' where OrderID='") + m_pParent->m_strOrderNumber + _T("'");
  1565. g_sendhead.bsql = 1;
  1566. g_pMainWnd->ProcessChatMessageRequest2(strSql);
  1567. if(g_bSendOK == 0)
  1568. return 0;
  1569. }
  1570. else
  1571. {
  1572. //INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)
  1573. strSql = _T("INSERT INTO FolderInfo (OrderID,FolderNames,Photos,DelPhotos) VALUES ('") + m_pParent->m_strOrderNumber + _T("','") + strFolderNames + _T("','") + strPhotos + _T("','") + strDelPhotos + _T("')");
  1574. g_sendhead.bsql = 1;
  1575. g_pMainWnd->ProcessChatMessageRequest2(strSql);
  1576. if(g_bSendOK == 0)
  1577. return 0;
  1578. }
  1579. return 1;
  1580. }
  1581. /************************************************************************/
  1582. /*
  1583. 函数: OnBnClickedFindLog
  1584. 描述: 查询记录
  1585. 参数:
  1586. 返回:
  1587. */
  1588. /************************************************************************/
  1589. void ChoosePhotoSkin3::OnBnClickedFindLog()
  1590. {
  1591. ChoosePhotoLog dlg;
  1592. dlg.m_strCurrOrderID = m_id;
  1593. dlg.DoModal();
  1594. }