BeautifySkinFrom2.cpp 38 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599
  1. // BeautifySkinFrom2.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "ylgl.h"
  5. #include "BeautifySkinFrom2.h"
  6. #include "MyMdi.H"
  7. #include "ModifyDinDan.h"
  8. #include "InputPsw.h"
  9. #include "ImportPhoto.h"
  10. #include "ShowPic.h"
  11. #include "SelectPhotoDlg.h"
  12. #include "./helper/ffsco.h"
  13. #include "ShowCut.h"
  14. #include "CompressOption.h"
  15. #ifdef _DEBUG
  16. #define new DEBUG_NEW
  17. #undef THIS_FILE
  18. static char THIS_FILE[] = __FILE__;
  19. #endif
  20. //#pragma comment(lib, "Shlwapi.lib")
  21. /////////////////////////////////////////////////////////////////////////////
  22. // BeautifySkinFrom2
  23. IMPLEMENT_DYNCREATE(BeautifySkinFrom2, MyFormView)
  24. BeautifySkinFrom2::BeautifySkinFrom2()
  25. : MyFormView(BeautifySkinFrom2::IDD)
  26. {
  27. //{{AFX_DATA_INIT(BeautifySkinFrom2)
  28. m_filter = _T("");
  29. m_nAdd=0;
  30. //}}AFX_DATA_INIT
  31. if(g_bAllBranch)
  32. {
  33. m_nAdd=1;
  34. }
  35. }
  36. BeautifySkinFrom2::~BeautifySkinFrom2()
  37. {
  38. }
  39. void BeautifySkinFrom2::DoDataExchange(CDataExchange* pDX)
  40. {
  41. MyFormView::DoDataExchange(pDX);
  42. //{{AFX_DATA_MAP(BeautifySkinFrom2)
  43. DDX_Control(pDX, IDC_COMBO1, m_combo1);
  44. DDX_Control(pDX, IDC_LIST2, m_List1);
  45. DDX_Control(pDX, IDC_STATIC1, m_static1);
  46. DDX_CBString(pDX, IDC_COMBO1, m_filter);
  47. //}}AFX_DATA_MAP
  48. }
  49. BEGIN_MESSAGE_MAP(BeautifySkinFrom2, MyFormView)
  50. //{{AFX_MSG_MAP(BeautifySkinFrom2)
  51. ON_BN_CLICKED(IDC_BUTclose, OnBUTclose)
  52. ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
  53. ON_CBN_SELCHANGE(IDC_COMBO1, OnSelchangeCombo1)
  54. ON_WM_TIMER()
  55. ON_BN_CLICKED(IDC_BUTimportphoto, OnBUTimportphoto)
  56. ON_BN_CLICKED(IDC_BUTshowphoto, OnBUTshowphoto)
  57. ON_BN_CLICKED(IDC_BUTexportphoto, OnBUTexportphoto)
  58. ON_BN_CLICKED(IDC_BUTexportphoto2, OnBUTexportphoto2)
  59. ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
  60. ON_NOTIFY(LVN_ITEMCHANGED, IDC_LIST2, OnItemchangedList2)
  61. ON_NOTIFY(NM_CLICK, IDC_LIST2, OnClickList2)
  62. ON_BN_CLICKED(IDC_BTNSEARCHFILTER, OnBtnsearchfilter)
  63. ON_BN_CLICKED(IDC_BUTprint3, OnBUTprint3)
  64. //}}AFX_MSG_MAP
  65. END_MESSAGE_MAP()
  66. /////////////////////////////////////////////////////////////////////////////
  67. // BeautifySkinFrom2 diagnostics
  68. #ifdef _DEBUG
  69. void BeautifySkinFrom2::AssertValid() const
  70. {
  71. MyFormView::AssertValid();
  72. }
  73. void BeautifySkinFrom2::Dump(CDumpContext& dc) const
  74. {
  75. MyFormView::Dump(dc);
  76. }
  77. #endif //_DEBUG
  78. /////////////////////////////////////////////////////////////////////////////
  79. // BeautifySkinFrom2 message handlers
  80. void BeautifySkinFrom2::OnInitialUpdate()
  81. {
  82. MyFormView::OnInitialUpdate();
  83. // TODO: Add your specialized code here and/or call the base class
  84. CMyMdi Mdi;
  85. Mdi.SetSubView((CWnd*)GetParent(), (CWnd*)this);
  86. // Here we create the outbar control using the splitter as its parent
  87. // and setting its id to the first pane.
  88. CRect rc2;
  89. GetWindowRect(rc2);
  90. ::MoveWindow(m_hWnd,g_rc.left,g_rc.top,g_rc.Width(),g_rc.Height(),TRUE);
  91. EnumChildWindows(m_hWnd,(WNDENUMPROC)EnumChildProc,0);
  92. int idarray[]={IDC_BUTprint3,IDC_BUTexportphoto,IDC_BUTimportphoto,IDC_BUTshowphoto,IDC_BUTexportphoto2,IDC_BUTclose};
  93. int idcount=6;
  94. int btnwid;
  95. CRect prerc;
  96. for(int a=idcount-2; a>=0; a--)
  97. {
  98. GetDlgItem(idarray[a+1])->GetWindowRect (prerc);
  99. ScreenToClient(prerc);
  100. GetDlgItem(idarray[a])->GetWindowRect (rc2);
  101. ScreenToClient(rc2);
  102. btnwid=rc2.Width ();
  103. rc2.right =prerc.left ;
  104. rc2.left =rc2.right -btnwid;
  105. GetDlgItem(idarray[a])->MoveWindow (rc2);
  106. }
  107. m_static1.SetFont (&g_titlefont);
  108. if(g_bAllBranch==0)
  109. {
  110. #ifdef CHILD_VERSION
  111. m_List1.SetHeadings("订单号,100;家长姓名,100;宝宝姓名,100;修片,100;选片,100;选片日期,100;精修,100;精修日期,100;加急,100;取件日期,100;修片人,100;精修人,100;接单人,100;套系名称,100;套系价格,100;手机,100;固定电话,100" );
  112. #else
  113. m_List1.SetHeadings("订单号,100;男宾姓名,100;女宾姓名,100;修片,100;选片,100;选片日期,100;精修,100;精修日期,100;加急,100;取件日期,100;修片人,100;精修人,100;接单人,100;套系名称,100;套系价格,100;男宾电话,100;女宾电话,100" );
  114. #endif
  115. m_List1.LoadColumnInfo (122);
  116. }
  117. else
  118. {
  119. #ifdef CHILD_VERSION
  120. m_List1.SetHeadings("店名,100;订单号,100;家长姓名,100;宝宝姓名,100;修片,100;选片,100;选片日期,100;精修,100;精修日期,100;加急,100;取件日期,100;修片人,100;精修人,100;接单人,100;套系名称,100;套系价格,100;手机,100;固定电话,100" );
  121. #else
  122. m_List1.SetHeadings("店名,100;订单号,100;男宾姓名,100;女宾姓名,100;修片,100;选片,100;选片日期,100;精修,100;精修日期,100;加急,100;取件日期,100;修片人,100;精修人,100;接单人,100;套系名称,100;套系价格,100;男宾电话,100;女宾电话,100" );
  123. #endif
  124. m_List1.LoadColumnInfo (198);
  125. GetDlgItem(IDC_BUTprint3)->ShowWindow (1);
  126. }
  127. GetData();
  128. m_combo1.AddString (g_user.name);
  129. m_combo1.GetWindowRect (rc2);
  130. ScreenToClient(rc2);
  131. rc2.bottom +=200;
  132. m_combo1.MoveWindow (rc2);
  133. GetDlgItem(IDC_BUTclose)->GetWindowRect(rc2);
  134. SetComboHei(&m_combo1, rc2.Height ());
  135. GetDlgItem(IDC_BUTexportphoto)->EnableWindow(IsHasRights2new(10));
  136. GetDlgItem(IDC_BUTexportphoto2)->EnableWindow(IsHasRights2new(11));
  137. }
  138. void BeautifySkinFrom2::FillGrid(BOOL bStatus)
  139. {
  140. if(g_bSearchFilter)
  141. {
  142. m_List1.DeleteAllItems2 ();
  143. int ii=0;
  144. m_List1.m_arLabels.SetSize( m_List1array.GetSize (), 1 );
  145. int count=0;
  146. {
  147. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  148. {
  149. if(g_filterdate1!="")
  150. {
  151. if(m_List1array.ElementAt (ii).ElementAt (7+m_nAdd)<g_filterdate1 || m_List1array.ElementAt (ii).ElementAt (7+m_nAdd)>g_filterdate2)
  152. continue;
  153. }
  154. if(g_waiter1!="")
  155. {
  156. if(m_List1array.ElementAt (ii).ElementAt (11+m_nAdd)!=g_waiter1)
  157. continue;
  158. }
  159. if(g_bAllBranch && g_filterbranch!="")
  160. {
  161. if(m_List1array.ElementAt (ii).ElementAt (0)!= g_filterbranch)
  162. continue;
  163. }
  164. if(1)
  165. {
  166. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  167. }
  168. }
  169. }
  170. m_List1.m_arLabels.SetSize(count, 1);
  171. ii=count;
  172. m_List1.m_LabelCount=ii;
  173. m_List1.SetItemCountEx (ii);
  174. CString str;
  175. str.Format ("单数:%d", ii);
  176. SetDlgItemText(IDC_STATIC2, str);
  177. }
  178. else
  179. {
  180. m_List1.DeleteAllItems2 ();
  181. int ii=0;
  182. m_List1.m_arLabels.SetSize( m_List1array.GetSize (), 1 );
  183. int count=0;
  184. if(m_filter.IsEmpty ())
  185. {
  186. if(bStatus)
  187. {
  188. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  189. {
  190. if(m_List1array.ElementAt (ii).ElementAt (4+m_nAdd)=="OK"&&m_List1array.ElementAt (ii).ElementAt (6+m_nAdd)!="OK")
  191. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  192. }
  193. }
  194. else
  195. {
  196. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  197. {
  198. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  199. }
  200. }
  201. }
  202. else
  203. {
  204. if(bStatus)
  205. {
  206. int type=GetType(m_filter);
  207. if(type==1)//电话
  208. {
  209. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  210. {
  211. if(m_List1array.ElementAt (ii).ElementAt (4+m_nAdd)=="OK"&&m_List1array.ElementAt (ii).ElementAt (6+m_nAdd)!="OK" && (m_List1array.ElementAt (ii).ElementAt (15+m_nAdd).Find (m_filter)!=-1 || \
  212. m_List1array.ElementAt (ii).ElementAt (15+m_nAdd).Find (m_filter)!=-1) )
  213. {
  214. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  215. }
  216. }
  217. }
  218. else if(type==2)//拼音
  219. {
  220. m_filter.MakeUpper ();
  221. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  222. {
  223. if(m_List1array.ElementAt (ii).ElementAt (4+m_nAdd)=="OK"&&m_List1array.ElementAt (ii).ElementAt (6+m_nAdd)!="OK" &&(m_List1array.ElementAt (ii).ElementAt (17+m_nAdd).Find (m_filter)!=-1 || \
  224. m_List1array.ElementAt (ii).ElementAt (17+m_nAdd).Find (m_filter)!=-1))
  225. {
  226. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  227. }
  228. }
  229. }
  230. else
  231. {
  232. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  233. {
  234. if(m_List1array.ElementAt (ii).ElementAt (4+m_nAdd)=="OK"&&m_List1array.ElementAt (ii).ElementAt (6+m_nAdd)!="OK" &&(m_List1array.ElementAt (ii).ElementAt (0).Find (m_filter)!=-1 ||\
  235. m_List1array.ElementAt (ii).ElementAt (1).Find (m_filter)!=-1 || \
  236. m_List1array.ElementAt (ii).ElementAt (2).Find (m_filter)!=-1 || \
  237. m_List1array.ElementAt (ii).ElementAt (3).Find (m_filter)!=-1 || \
  238. m_List1array.ElementAt (ii).ElementAt (9).Find (m_filter)!=-1 || \
  239. m_List1array.ElementAt (ii).ElementAt (10).Find (m_filter)!=-1 || \
  240. m_List1array.ElementAt (ii).ElementAt (11).Find (m_filter)!=-1|| \
  241. m_List1array.ElementAt (ii).ElementAt (12).Find (m_filter)!=-1|| \
  242. m_List1array.ElementAt (ii).ElementAt (14).Find (m_filter)!=-1 || \
  243. m_List1array.ElementAt (ii).ElementAt (15).Find (m_filter)!=-1 || \
  244. m_List1array.ElementAt (ii).ElementAt (16).Find (m_filter)!=-1 || \
  245. m_List1array.ElementAt (ii).ElementAt (17).Find (m_filter)!=-1) )
  246. {
  247. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  248. }
  249. }
  250. }
  251. }
  252. else
  253. {
  254. int type=GetType(m_filter);
  255. if(type==1)//电话
  256. {
  257. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  258. {
  259. if(m_List1array.ElementAt (ii).ElementAt (15+m_nAdd).Find (m_filter)!=-1 || \
  260. m_List1array.ElementAt (ii).ElementAt (16+m_nAdd).Find (m_filter)!=-1)
  261. {
  262. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  263. }
  264. }
  265. }
  266. else if(type==2)//拼音
  267. {
  268. m_filter.MakeUpper ();
  269. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  270. {
  271. if(m_List1array.ElementAt (ii).ElementAt (17+m_nAdd).Find (m_filter)!=-1 || \
  272. m_List1array.ElementAt (ii).ElementAt (18+m_nAdd).Find (m_filter)!=-1)
  273. {
  274. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  275. }
  276. }
  277. }
  278. else
  279. {
  280. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  281. {
  282. if(m_List1array.ElementAt (ii).ElementAt (0).Find (m_filter)!=-1 ||\
  283. m_List1array.ElementAt (ii).ElementAt (1).Find (m_filter)!=-1 || \
  284. m_List1array.ElementAt (ii).ElementAt (2).Find (m_filter)!=-1 || \
  285. m_List1array.ElementAt (ii).ElementAt (3).Find (m_filter)!=-1 || \
  286. m_List1array.ElementAt (ii).ElementAt (9).Find (m_filter)!=-1 || \
  287. m_List1array.ElementAt (ii).ElementAt (10).Find (m_filter)!=-1 || \
  288. m_List1array.ElementAt (ii).ElementAt (11).Find (m_filter)!=-1|| \
  289. m_List1array.ElementAt (ii).ElementAt (12).Find (m_filter)!=-1|| \
  290. m_List1array.ElementAt (ii).ElementAt (14).Find (m_filter)!=-1 || \
  291. m_List1array.ElementAt (ii).ElementAt (15).Find (m_filter)!=-1 || \
  292. m_List1array.ElementAt (ii).ElementAt (16).Find (m_filter)!=-1 || \
  293. m_List1array.ElementAt (ii).ElementAt (17).Find (m_filter)!=-1)
  294. {
  295. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  296. }
  297. }
  298. }
  299. }
  300. }
  301. m_List1.m_arLabels.SetSize(count, 1);
  302. ii=count;
  303. m_List1.m_LabelCount=ii;
  304. m_List1.SetItemCountEx (ii);
  305. CString str;
  306. str.Format ("单数:%d", ii);
  307. SetDlgItemText(IDC_STATIC2, str);
  308. }
  309. if(!g_id.IsEmpty ())
  310. {
  311. for(int i=0; i<m_List1.GetItemCount (); i++)
  312. {
  313. if(g_id==m_List1.GetItemText (i, 0+m_nAdd))
  314. {
  315. m_List1.SetItemState(i,LVIS_SELECTED|LVIS_FOCUSED,LVIS_SELECTED|LVIS_FOCUSED);
  316. m_List1.EnsureVisible(i,FALSE);
  317. break;
  318. }
  319. }
  320. }
  321. }
  322. void BeautifySkinFrom2::OnBUTclose()
  323. {
  324. // TODO: Add your control notification handler code here
  325. GetParent()->SendMessage(WM_CLOSE);
  326. }
  327. void BeautifySkinFrom2::OnSelchangeCombo1()
  328. {
  329. // TODO: Add your control notification handler code here
  330. SetTimer(1, 100, NULL);
  331. }
  332. void BeautifySkinFrom2::OnTimer(UINT nIDEvent)
  333. {
  334. // TODO: Add your message handler code here and/or call default
  335. KillTimer(nIDEvent);
  336. OnButton1();
  337. }
  338. BOOL BeautifySkinFrom2::PreTranslateMessage(MSG* pMsg)
  339. {
  340. // TODO: Add your specialized code here and/or call the base class
  341. try
  342. {
  343. if(pMsg->message==WM_KEYDOWN)
  344. {
  345. switch (pMsg->wParam)
  346. {
  347. case VK_RETURN:
  348. OnButton1();
  349. return 1;
  350. case 0x43: // copy
  351. if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) )
  352. {
  353. GetFocus()->SendMessage(WM_COPY);
  354. return TRUE;
  355. }
  356. break;
  357. case 0x56: //Ctrl + V:
  358. if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) )
  359. {
  360. GetFocus()->SendMessage(WM_PASTE);
  361. return TRUE;
  362. }
  363. break;
  364. case 0x58: // cut
  365. if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) )
  366. {
  367. GetFocus()->SendMessage(WM_CUT);
  368. return TRUE;
  369. }
  370. break;
  371. case 0x5A: //undo
  372. case 0x59: //redo
  373. if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) )
  374. {
  375. GetFocus()->SendMessage(WM_UNDO);
  376. return TRUE;
  377. }
  378. break;
  379. }
  380. }
  381. return MyFormView::PreTranslateMessage(pMsg);
  382. }
  383. catch(...)
  384. {
  385. }
  386. }
  387. void BeautifySkinFrom2::OnBUTimportphoto()
  388. {
  389. // TODO: Add your control notification handler code here
  390. POSITION pos;
  391. pos=m_List1.GetFirstSelectedItemPosition();
  392. if(pos==NULL)
  393. {
  394. AfxMessageBox("请先选中您要导片的定单!", MB_ICONINFORMATION);
  395. return;
  396. }
  397. int iItem=m_List1.GetNextSelectedItem(pos);
  398. CString branch;
  399. CString id=m_List1.GetItemText (iItem, 0+m_nAdd);
  400. if(g_bAllBranch)
  401. branch=m_List1.GetItemText (iItem, 0);
  402. CString oldstatus=m_List1.GetItemText (iItem, 6+m_nAdd);
  403. CString time9=m_List1.GetItemText (iItem, 7+m_nAdd);
  404. CString name=m_List1.GetItemText (iItem, 1+m_nAdd)+","+m_List1.GetItemText (iItem, 2+m_nAdd);
  405. name.TrimLeft (",");
  406. name.TrimRight (",");
  407. name="客人:"+name;
  408. CString phone=m_List1.GetItemText (iItem, 15+m_nAdd)+","+m_List1.GetItemText (iItem, 16+m_nAdd);
  409. phone.TrimLeft (",");
  410. phone.TrimRight (",");
  411. phone="电话:"+phone;
  412. #ifdef ENTERPRISE_VERSION
  413. if(::CheckFolderFileExist (g_path4)==0)
  414. ::CreateDirectory (g_path4, NULL);
  415. #endif
  416. if(!::CheckFolderFileExist (g_path4))
  417. {
  418. AfxMessageBox("精修片保存机器目录未设置, 请通知系统管理员!", MB_ICONINFORMATION);
  419. return;
  420. }
  421. CString savepath;
  422. if(g_bAllBranch)
  423. {
  424. CString branchpath=GetBranchPhotoPath(branch);
  425. savepath=g_path4+branchpath+"\\";
  426. if(::CheckFolderFileExist (savepath)==0)
  427. ::CreateDirectory (savepath, NULL);
  428. }
  429. else
  430. savepath=g_path4+"\\";
  431. savepath+=id+"\\";
  432. if(::CheckFolderFileExist (savepath)==0)
  433. ::CreateDirectory (savepath, NULL);
  434. /* IsGrowthTx growthtxdlg;
  435. growthtxdlg.m_id=id;
  436. growthtxdlg.DoModal ();
  437. if(growthtxdlg.m_bReturnOK==0)
  438. return;
  439. if(growthtxdlg.m_bGrowthTx && growthtxdlg.m_seltxname.IsEmpty ())
  440. return;
  441. if(!growthtxdlg.m_seltxname.IsEmpty ())
  442. {
  443. savepath+=growthtxdlg.m_seltxname+"\\";
  444. if(::CheckFolderFileExist (savepath)==0)
  445. ::CreateDirectory (savepath, NULL);
  446. }*/
  447. CString srcdir;CString str;
  448. GetSavePath(srcdir);
  449. if(srcdir.IsEmpty())
  450. {
  451. CString status6;
  452. if(AfxMessageBox("客照是否全部精修完毕?", MB_YESNO|MB_ICONINFORMATION)==IDYES)
  453. status6="OK";
  454. else
  455. status6="修片中";
  456. CString sql;
  457. if(time9.IsEmpty ())
  458. sql="update dindan set status6='"+status6+"',time9='"+g_date+"' where id='"+id+"'";
  459. else
  460. sql="update dindan set status6='"+status6+"' where id='"+id+"'";
  461. g_sendhead.bsql=1;
  462. if(g_bAllBranch)
  463. {
  464. g_branchip=GetIP(branch);
  465. g_pMainWnd->OnDisconnect();
  466. g_branchname=branch;
  467. g_bBranchModify=1;
  468. g_pMainWnd->ProcessChatMessageRequest2(sql);
  469. g_pMainWnd->OnDisconnect();g_bBranchModify=0;g_branchip=g_branchname="";
  470. }
  471. else
  472. g_pMainWnd->ProcessChatMessageRequest2(sql);
  473. if(g_bSendOK==0)return;
  474. if(g_bAllBranch==0)
  475. {
  476. GetData();
  477. }
  478. else
  479. {
  480. for(int i=0; i<m_List1array.GetSize (); i++)
  481. {
  482. if(id==m_List1array.ElementAt (i).ElementAt (1) && branch==m_List1array.ElementAt (i).ElementAt (0))
  483. {
  484. m_List1array.ElementAt (i).SetAt (6+m_nAdd, status6);
  485. if(time9.IsEmpty ())
  486. m_List1array.ElementAt (i).SetAt (7+m_nAdd, g_date);
  487. FillGrid();
  488. break;
  489. }
  490. }
  491. }
  492. return;
  493. }
  494. if(srcdir.GetLength ()<4)
  495. {
  496. AfxMessageBox("请选择正确的您文件所在的目录!", MB_ICONSTOP);
  497. return;
  498. }
  499. if(oldstatus!="未修")
  500. {
  501. str.Format ("%s\r\n%s\r\n此单已导入过修片,确认您选中的照片没有导入过吗? 否则会覆盖原来的照片, 是否继续?", name, phone );
  502. if(AfxMessageBox(str, MB_YESNO|MB_ICONSTOP)!=IDYES)
  503. return;
  504. }
  505. else
  506. {
  507. str.Format ("%s\r\n%s\r\n确认您选中的照片与客户资料相符吗? 是否继续?", name, phone );
  508. if(AfxMessageBox(str, MB_YESNO|MB_ICONINFORMATION)!=IDYES)
  509. return;
  510. }
  511. CStringArray array;
  512. CStringArray desarray;
  513. CStringArray dirarray;
  514. if(1)
  515. {
  516. using namespace helper_coffs;
  517. ffsco o;
  518. o.dirs(1);
  519. o.find(LPCSTR(srcdir), LPCSTR("*.*"));
  520. ffsco::typeT coo;
  521. ffsco::typeT::iterator it;
  522. coo = o.co_dir();
  523. for (it = coo.begin();
  524. coo.end() != it;
  525. it ++)
  526. {
  527. str=(*it).c_str();
  528. if(FindArray(&dirarray, str)==-1)
  529. {
  530. dirarray.Add (str);
  531. if(str!=dirarray.ElementAt (0))
  532. {
  533. str=savepath+str.Right (str.GetLength ()-dirarray.ElementAt (0).GetLength ());
  534. if(::CheckFolderFileExist (str)==0)
  535. ::CreateDirectory (str, NULL);
  536. }
  537. }
  538. }
  539. }
  540. if(1)
  541. {
  542. for(int i=0; i<dirarray.GetSize (); i++)
  543. {
  544. using namespace helper_coffs;
  545. ffsco o;
  546. o.dirs(0);
  547. o.find(LPCSTR(dirarray.ElementAt (i)), LPCSTR("*.jpg"));
  548. ffsco::typeT coo;
  549. ffsco::typeT::iterator it;
  550. coo = o.co_file();
  551. for (it = coo.begin();
  552. coo.end() != it;
  553. it ++)
  554. {
  555. str=(*it).c_str();
  556. array.Add (str);
  557. desarray.Add (savepath+dirarray.ElementAt (i).Right (dirarray.ElementAt (i).GetLength ()-dirarray.ElementAt (0).GetLength ())+str.Right (str.GetLength ()-str.ReverseFind ('\\')-1));
  558. }
  559. }
  560. }
  561. if(array.GetSize ()==0)return;
  562. ImportPhoto dlg;
  563. dlg.m_branch=branch;
  564. dlg.m_nphototype=2;
  565. dlg.m_bOverWrite=1;
  566. dlg.m_pArray=&array;
  567. dlg.m_pDesArray=&desarray;
  568. dlg.m_savepath =savepath;
  569. #ifdef ENTERPRISE_VERSION
  570. // if(!g_branchname.IsEmpty ())
  571. {
  572. dlg.m_bSaveUploadTask=g_bSaveUploadTask3;
  573. dlg.m_sel=g_cominfoarraylocal.ElementAt(0).ElementAt(80);
  574. dlg.m_uploadtaskarray .Add (id+";"+name);
  575. dlg.m_uploadtaskarray .Add ("");
  576. dlg.m_uploadtaskarray .Add ("");
  577. dlg.m_uploadtaskarray .Add ("");
  578. dlg.m_uploadtaskarray .Add ("");
  579. dlg.m_uploadtaskarray .Add ("");
  580. dlg.m_uploadtaskarray .Add ("");
  581. dlg.m_uploadtaskarray .Add ("");
  582. dlg.m_uploadtaskarray .Add ("");
  583. dlg.m_uploadtaskarray .Add ("");
  584. }
  585. #endif
  586. dlg.DoModal ();
  587. CString status6;
  588. if(AfxMessageBox("客照是否全部精修完毕?", MB_YESNO|MB_ICONINFORMATION)==IDYES)
  589. status6="OK";
  590. else
  591. status6="修片中";
  592. CString sql;
  593. if(time9.IsEmpty ())
  594. sql="update dindan set status6='"+status6+"',waiter7='"+g_user.name+"',time9='"+g_date+"' where id='"+id+"'";
  595. else
  596. sql="update dindan set status6='"+status6+"',waiter7='"+g_user.name+"' where id='"+id+"'";
  597. g_sendhead.bsql=1;
  598. if(g_bAllBranch)
  599. {
  600. g_branchip=GetIP(branch);
  601. g_pMainWnd->OnDisconnect();
  602. g_branchname=branch;
  603. g_bBranchModify=1;
  604. g_pMainWnd->ProcessChatMessageRequest2(sql);
  605. g_pMainWnd->OnDisconnect();g_bBranchModify=0;g_branchip=g_branchname="";
  606. }
  607. else
  608. g_pMainWnd->ProcessChatMessageRequest2(sql);
  609. if(g_bSendOK==0)return;
  610. savepath+="ok";
  611. ::DeleteFile (savepath);
  612. AfxMessageBox("导入客照成功!", MB_ICONINFORMATION);
  613. if(g_bAllBranch==0)
  614. {
  615. GetData();
  616. }
  617. else
  618. {
  619. for(int i=0; i<m_List1array.GetSize (); i++)
  620. {
  621. if(id==m_List1array.ElementAt (i).ElementAt (1) && branch==m_List1array.ElementAt (i).ElementAt (0))
  622. {
  623. m_List1array.ElementAt (i).SetAt (6+m_nAdd, status6);
  624. if(time9.IsEmpty ())
  625. m_List1array.ElementAt (i).SetAt (7+m_nAdd, g_date);
  626. m_List1array.ElementAt (i).SetAt (11+m_nAdd, g_user.name);
  627. FillGrid();
  628. break;
  629. }
  630. }
  631. }
  632. }
  633. void BeautifySkinFrom2::OnBUTshowphoto()
  634. {
  635. // TODO: Add your control notification handler code here
  636. POSITION pos;
  637. pos=m_List1.GetFirstSelectedItemPosition();
  638. if(pos==NULL)
  639. {
  640. AfxMessageBox("请先选中您要查看的定单!", MB_ICONINFORMATION);
  641. return;
  642. }
  643. int iItem=m_List1.GetNextSelectedItem(pos);
  644. CString branch;
  645. CString id=m_List1.GetItemText (iItem, 0+m_nAdd);
  646. if(g_bAllBranch)
  647. branch=m_List1.GetItemText (iItem, 0);
  648. CString name=m_List1.GetItemText (iItem, 1+m_nAdd)+","+m_List1.GetItemText (iItem, 2+m_nAdd);
  649. name.TrimLeft (",");
  650. name.TrimRight (",");
  651. name="客人:"+name;
  652. ShowPic dlg;
  653. dlg.m_id=id;
  654. dlg.m_name=name;
  655. dlg.m_mode=3;
  656. if(g_bAllBranch)
  657. {
  658. dlg.m_branch=branch;
  659. CString branchpath=GetBranchPhotoPath(branch);
  660. dlg.m_path=g_path4+branchpath+"\\";
  661. }
  662. else
  663. dlg.m_path=g_path4+"\\";
  664. dlg.m_path+=id;
  665. dlg.m_path +="\\";
  666. dlg.DoModal ();
  667. }
  668. void BeautifySkinFrom2::GetNo(CString str, CStringArray &array)
  669. {
  670. if(!str.IsEmpty ())
  671. {
  672. int pos=str.Find (",");
  673. while(pos!=-1)
  674. {
  675. if(FindArray(&array, str.Left (pos))==-1)
  676. array.Add (str.Left (pos));
  677. str=str.Right (str.GetLength ()-pos-1);
  678. pos=str.Find (",");
  679. }
  680. if(FindArray(&array, str)==-1)
  681. array.Add(str);
  682. }
  683. }
  684. CString BeautifySkinFrom2::GetSelName(CString name, CArray<CStringArray, CStringArray>&spnamearray)
  685. {
  686. CString ret;
  687. name=","+name+",";
  688. CString str;
  689. for(int i=0; i<spnamearray.GetSize (); i++)
  690. {
  691. str=","+spnamearray.ElementAt (i).ElementAt (6)+",";
  692. if(str.Find (name)!=-1)
  693. {
  694. ret+=spnamearray.ElementAt (i).ElementAt (5);
  695. ret+=";";
  696. }
  697. }
  698. ret.TrimRight (";");
  699. ret.Replace ("*", "x");
  700. return ret;
  701. }
  702. CString GetPathFromNo2(CString dir, CString no)
  703. {
  704. CString sRet;
  705. dir.TrimRight('\\');
  706. dir+="\\";
  707. CStringArray dirarray;
  708. CString temp;
  709. using namespace helper_coffs;
  710. ffsco o;
  711. o.dirs(1);
  712. o.find(LPCSTR(dir), LPCSTR("*.*"));
  713. ffsco::typeT coo;
  714. ffsco::typeT::iterator it;
  715. coo = o.co_dir();
  716. for (it = coo.begin();
  717. coo.end() != it;
  718. it ++)
  719. {
  720. temp=(*it).c_str();
  721. if(::FindArray (&dirarray, temp)==-1 && temp!=dir)
  722. {
  723. dirarray.Add (temp);
  724. }
  725. }
  726. for(int i=0; i<dirarray.GetSize(); i++)
  727. {
  728. temp=dirarray.ElementAt(i);
  729. sRet.Format("%s%s.jpg", temp, no);
  730. if(::PathFileExists (sRet))return sRet;
  731. sRet.Replace(".jpg", ".raw");
  732. if(::PathFileExists (sRet))return sRet;
  733. sRet.Replace(".raw", ".nef");
  734. if(::PathFileExists (sRet))return sRet;
  735. sRet.Replace(".nef", ".cr2");
  736. if(::PathFileExists (sRet))return sRet;
  737. sRet.Replace(".cr2", ".jpg");
  738. if(::PathFileExists (sRet))return sRet;
  739. }
  740. return dir+no+".jpg";
  741. }
  742. CString GetPathFromNo3(CString dir, CString no)
  743. {
  744. CString sRet;
  745. dir.TrimRight('\\');
  746. dir+="\\";
  747. CStringArray dirarray;
  748. CString temp;
  749. using namespace helper_coffs;
  750. ffsco o;
  751. o.dirs(1);
  752. o.find(LPCSTR(dir), LPCSTR("*.*"));
  753. ffsco::typeT coo;
  754. ffsco::typeT::iterator it;
  755. coo = o.co_dir();
  756. for (it = coo.begin();
  757. coo.end() != it;
  758. it ++)
  759. {
  760. temp=(*it).c_str();
  761. if(::FindArray (&dirarray, temp)==-1 && temp!=dir)
  762. {
  763. dirarray.Add (temp);
  764. }
  765. }
  766. for(int i=0; i<dirarray.GetSize(); i++)
  767. {
  768. temp=dirarray.ElementAt(i);
  769. sRet.Format("%s%s.jpg", temp, no);
  770. if(::PathFileExists (sRet))return sRet;
  771. }
  772. return dir+no+".jpg";
  773. }
  774. void BeautifySkinFrom2::OnBUTexportphoto()
  775. {
  776. // OnBUTexportphotoAddName();return;
  777. if(IsHasRights2new(10)==0)return;
  778. // TODO: Add your control notification handler code here GetSelName
  779. UpdateData();
  780. POSITION pos;
  781. pos=m_List1.GetFirstSelectedItemPosition();
  782. if(pos==NULL)
  783. {
  784. AfxMessageBox("请先选中您要导片的定单!", MB_ICONINFORMATION);
  785. return;
  786. }
  787. int iItem=m_List1.GetNextSelectedItem(pos);
  788. CString status2=m_List1.GetItemText (iItem, 4+m_nAdd);
  789. if(status2!="OK")
  790. {
  791. AfxMessageBox("此单未选片!", MB_ICONINFORMATION);
  792. return;
  793. }
  794. BOOL bOfmat=0;
  795. CString id=m_List1.GetItemText (iItem, 0+m_nAdd);
  796. CString branch;
  797. if(g_bAllBranch)
  798. branch=m_List1.GetItemText (iItem, 0);
  799. CString name1=m_List1.GetItemText (iItem, 1+m_nAdd);
  800. CString name2=m_List1.GetItemText (iItem, 2+m_nAdd);
  801. IsGrowthTx growthtxdlg;
  802. growthtxdlg.m_mode=1;
  803. growthtxdlg.m_strOrderNumber=id;
  804. growthtxdlg.DoModal ();
  805. BOOL m_bGrowthTX=growthtxdlg.m_bGrowthTx;
  806. CString m_seltxname=growthtxdlg.m_seltxname;
  807. #ifdef CHILD_VERSION
  808. CString filter="id='"+id+"';id='"+id+"';id='"+id+"' and name<>'入册' and name<>'入底'";
  809. if(m_seltxname!="" && m_seltxname!="全部")
  810. {
  811. filter="id='"+id+"' and growthtxname='"+m_seltxname+"';id='"+id+"';id='"+id+"' and name<>'入册' and name<>'入底'";
  812. }
  813. #else
  814. CString filter="id='"+id+"';id='"+id+"';id='"+id+"' and kind<>'2' and name<>'入册' and name<>'入底'";
  815. #endif
  816. g_sendhead.bsql=0;
  817. g_sendhead.code[0]=50;
  818. g_sendhead.code[1]=11;
  819. g_sendhead.code[2]=56;
  820. g_sendhead.tabcount=3;
  821. if(g_bAllBranch)
  822. {
  823. g_branchip=GetIP(branch);
  824. g_pMainWnd->OnDisconnect();
  825. g_branchname=branch;
  826. g_bBranchModify=1;
  827. g_pMainWnd->ProcessChatMessageRequest2(filter);
  828. g_pMainWnd->OnDisconnect();g_bBranchModify=0;g_branchip=g_branchname="";
  829. }
  830. else
  831. g_pMainWnd->ProcessChatMessageRequest2(filter);
  832. if(g_bSendOK==0)return;
  833. CArray<CStringArray, CStringArray>sparray;
  834. CArray<CStringArray, CStringArray>sparray2;
  835. DataToArray( &sparray, &g_List1array, &sparray2);
  836. CString path;
  837. if(g_bAllBranch)
  838. {
  839. CString branchpath=GetBranchPhotoPath(branch);
  840. path=g_path2+branchpath+"\\";
  841. }
  842. else
  843. path=g_path2+"\\";
  844. SelectPhotoDlg selectdlg;
  845. selectdlg.DoModal ();
  846. path+=id;
  847. path +="\\";
  848. if(m_seltxname!="" && m_seltxname!="全部")
  849. {
  850. path+=m_seltxname; path +="\\";
  851. }
  852. ////////////////////////////////////////
  853. CString str,spname;
  854. CStringArray noarray;
  855. CStringArray spnamearray;
  856. int i = 0;
  857. for( i=0; i<sparray.GetSize (); i++)
  858. {
  859. str=sparray.ElementAt (i).ElementAt (6);
  860. spname=sparray.ElementAt (i).ElementAt (5);
  861. GetNo(str, noarray);
  862. }
  863. if(noarray.GetSize ()==0)
  864. {
  865. AfxMessageBox("此单未选片!", MB_ICONINFORMATION);
  866. return;
  867. }
  868. spnamearray.SetSize(noarray.GetSize ());
  869. for( i=0; i<noarray.GetSize (); i++)
  870. {
  871. str=noarray.ElementAt (i);
  872. spnamearray.SetAt (i, GetSelName(str, sparray));//+"-"+str );
  873. }
  874. CString dir;
  875. GetSavePath(dir);
  876. if(dir.IsEmpty())return;
  877. dir.TrimRight ('\\');
  878. dir+="\\";
  879. dir+=id;
  880. dir+=g_branchname;
  881. if(g_bAllBranch)
  882. {
  883. if(GetBranchPhotoPath(branch)!="")
  884. dir+=branch;
  885. }
  886. dir+=name1;
  887. dir+=name2;
  888. dir+="选片";
  889. dir+="\\";
  890. CStringArray array;
  891. CStringArray spnamearray2;
  892. CString src,des;
  893. if(selectdlg.m_mode==0)
  894. {
  895. for(i=0; i<noarray.GetSize (); i++)
  896. {
  897. if( (m_seltxname!=""&&m_seltxname!="全部") || m_bGrowthTX==0)
  898. src.Format ("%s%s.jpg", path, noarray.ElementAt (i));
  899. else
  900. src=GetPathFromNo3(path, noarray.ElementAt (i));
  901. // AfxMessageBox(noarray.ElementAt (i));
  902. if(::CheckFileExist (src))
  903. {
  904. array.Add (src);
  905. if(1)//selectdlg.m_check1)
  906. spnamearray2.Add (spnamearray.ElementAt (i));
  907. else
  908. spnamearray2.Add (noarray.ElementAt (i));
  909. }
  910. else
  911. AfxMessageBox("未找到初修过的文件:"+src.Right (src.GetLength ()-src.ReverseFind ('\\')-1), MB_ICONINFORMATION);
  912. }
  913. }
  914. if(array.GetSize ()==0)
  915. {
  916. if(selectdlg.m_mode==0)
  917. AfxMessageBox("注意:此单未修片, 导出的是原片!", MB_ICONINFORMATION);
  918. if(g_bAllBranch)
  919. {
  920. CString branchpath=GetBranchPhotoPath(branch);
  921. path=g_path1+branchpath+"\\";
  922. }
  923. else
  924. path=g_path1+"\\";
  925. path+=id;
  926. path +="\\";
  927. dir.Delete (dir.GetLength ()-1, 1);
  928. dir+="(未修)\\";
  929. bOfmat=1;
  930. for(i=0; i<noarray.GetSize (); i++)
  931. {
  932. // src.Format ("%s%s.jpg", path, noarray.ElementAt (i));
  933. src=GetPathFromNo2(path, noarray.ElementAt (i));
  934. if(::CheckFileExist (src))
  935. {
  936. array.Add (src);
  937. if(1)//selectdlg.m_check1)
  938. spnamearray2.Add (spnamearray.ElementAt (i));
  939. else
  940. spnamearray2.Add (noarray.ElementAt (i));
  941. // AfxMessageBox(spnamearray.ElementAt (i));
  942. // AfxMessageBox(noarray.ElementAt (i));
  943. }
  944. else
  945. AfxMessageBox("未找到原片文件:"+src.Right (src.GetLength ()-src.ReverseFind ('\\')-1), MB_ICONINFORMATION);
  946. }
  947. }
  948. if(array.GetSize ()==0)
  949. {
  950. AfxMessageBox("此单未导入原片!", MB_ICONINFORMATION);
  951. return;
  952. }
  953. ::CreateDirectory (dir, NULL);
  954. ImportPhoto dlg;
  955. dlg.m_name=name1+name2;
  956. dlg.m_bAddname=selectdlg.m_check1;
  957. dlg.m_bOfmat=bOfmat;
  958. dlg.m_mode =1;
  959. dlg.m_bOrigin =1;
  960. dlg.m_pArray=&array;
  961. dlg.m_pArray2=&spnamearray2;
  962. dlg.m_savepath =dir;
  963. dlg.DoModal ();
  964. //////////////
  965. if(g_List1array.GetSize ())
  966. {
  967. CStdioFile fp;
  968. fp.Open (dir+"客户要求.txt", CFile::modeCreate|CFile::modeWrite);
  969. fp.WriteString ("选片要求:\n");
  970. fp.WriteString (g_List1array.ElementAt (0).ElementAt (39)+" "+g_List1array.ElementAt (0).ElementAt (75));
  971. fp.WriteString ("\n");
  972. fp.WriteString ("\n");
  973. fp.WriteString ("订单要求:\n");
  974. fp.WriteString (g_List1array.ElementAt (0).ElementAt (38));
  975. fp.WriteString ("\n");
  976. fp.WriteString ("\n");
  977. fp.WriteString ("客人产品:\n");
  978. CString str;
  979. str="产品名称";
  980. FillLength(str, 30);
  981. str+="数量";
  982. FillLength(str, 40);
  983. #ifdef LKAY_VERSION
  984. str+="P数";
  985. FillLength(str, 50);
  986. str+="加急";
  987. FillLength(str, 60);
  988. str+="取件日期";
  989. FillLength(str, 70);
  990. #else
  991. str+="加急";
  992. FillLength(str, 50);
  993. str+="取件日期";
  994. FillLength(str, 60);
  995. #endif
  996. fp.WriteString (str);
  997. fp.WriteString ("\n");
  998. for(int i=0; i<sparray2.GetSize (); i++)
  999. {
  1000. str.Empty ();
  1001. str=sparray2.ElementAt (i).ElementAt (0);
  1002. FillLength(str, 30);
  1003. str+=sparray2.ElementAt (i).ElementAt (1);
  1004. FillLength(str, 40);
  1005. #ifdef LKAY_VERSION
  1006. str+=sparray2.ElementAt (i).ElementAt (29);//p数
  1007. FillLength(str, 50);
  1008. str+=sparray2.ElementAt (i).ElementAt (18);
  1009. FillLength(str, 60);
  1010. str+=sparray2.ElementAt (i).ElementAt (19);
  1011. FillLength(str, 70);
  1012. #else
  1013. str+=sparray2.ElementAt (i).ElementAt (18);
  1014. FillLength(str, 50);
  1015. str+=sparray2.ElementAt (i).ElementAt (19);
  1016. FillLength(str, 60);
  1017. #endif
  1018. fp.WriteString (str); fp.WriteString ("\n");
  1019. }
  1020. fp.Close ();
  1021. }
  1022. //////////////
  1023. AfxMessageBox("导片成功!", MB_ICONINFORMATION);
  1024. {
  1025. ShowCut dlg;
  1026. dlg.m_branch=branch;
  1027. dlg.m_mode=1;
  1028. dlg.m_id =id;
  1029. dlg.DoModal ();
  1030. }
  1031. // CString str;
  1032. str=" 导出选片 ";
  1033. str+="客人:";
  1034. str+=name1+name2+id;
  1035. WriteLog(str);
  1036. }
  1037. void BeautifySkinFrom2::OnBUTexportphoto2()
  1038. {
  1039. if(IsHasRights2new(11)==0)return;
  1040. // TODO: Add your control notification handler code here
  1041. POSITION pos;
  1042. pos=m_List1.GetFirstSelectedItemPosition();
  1043. if(pos==NULL)
  1044. {
  1045. AfxMessageBox("请先选中您要导出片的定单!", MB_ICONINFORMATION);
  1046. return;
  1047. }
  1048. int iItem=m_List1.GetNextSelectedItem(pos);
  1049. CString id=m_List1.GetItemText (iItem, 0+m_nAdd);
  1050. CString branch;
  1051. if(g_bAllBranch)
  1052. branch=m_List1.GetItemText (iItem, 0);
  1053. CString path;
  1054. if(g_bAllBranch)
  1055. {
  1056. CString branchpath=GetBranchPhotoPath(branch);
  1057. path=g_path4+branchpath+"\\";
  1058. }
  1059. else
  1060. path=g_path4+"\\";
  1061. path+=id;
  1062. path +="\\";
  1063. CStringArray array;
  1064. CString dir;
  1065. GetSavePath(dir);
  1066. if(dir.IsEmpty())
  1067. {
  1068. return;
  1069. }
  1070. CString name1=m_List1.GetItemText (iItem, 1+m_nAdd);
  1071. CString name2=m_List1.GetItemText (iItem, 2+m_nAdd);
  1072. dir.TrimRight ('\\');
  1073. dir+="\\";
  1074. dir+=id;
  1075. dir+=g_branchname;
  1076. if(g_bAllBranch)
  1077. {
  1078. if(GetBranchPhotoPath(branch)!="")
  1079. dir+=branch;
  1080. }
  1081. dir+=name1;
  1082. dir+=name2;
  1083. dir+="精修好的片";
  1084. dir+="\\";
  1085. ::CreateDirectory (dir, NULL);
  1086. CStringArray desarray;
  1087. CStringArray dirarray;
  1088. CString savepath=dir;
  1089. CString str;
  1090. if(1)
  1091. {
  1092. using namespace helper_coffs;
  1093. ffsco o;
  1094. o.dirs(1);
  1095. o.find(LPCSTR(path), LPCSTR("*.*"));
  1096. ffsco::typeT coo;
  1097. ffsco::typeT::iterator it;
  1098. coo = o.co_dir();
  1099. for (it = coo.begin();
  1100. coo.end() != it;
  1101. it ++)
  1102. {
  1103. str=(*it).c_str();
  1104. if(FindArray(&dirarray, str)==-1)
  1105. {
  1106. dirarray.Add (str);
  1107. if(str!=dirarray.ElementAt (0))
  1108. {
  1109. str=savepath+str.Right (str.GetLength ()-dirarray.ElementAt (0).GetLength ());
  1110. if(::CheckFolderFileExist (str)==0)
  1111. ::CreateDirectory (str, NULL);
  1112. }
  1113. }
  1114. }
  1115. }
  1116. if(1)
  1117. {
  1118. for(int i=0; i<dirarray.GetSize (); i++)
  1119. {
  1120. using namespace helper_coffs;
  1121. ffsco o;
  1122. o.dirs(0);
  1123. o.find(LPCSTR(dirarray.ElementAt (i)), LPCSTR("*.jpg"));
  1124. ffsco::typeT coo;
  1125. ffsco::typeT::iterator it;
  1126. coo = o.co_file();
  1127. for (it = coo.begin();
  1128. coo.end() != it;
  1129. it ++)
  1130. {
  1131. str=(*it).c_str();
  1132. if(str.GetAt (str.ReverseFind ('\\')+1)=='s')continue;
  1133. if(str.GetAt (str.ReverseFind ('\\')+1)=='m')continue;
  1134. array.Add (str);
  1135. desarray.Add (savepath+dirarray.ElementAt (i).Right (dirarray.ElementAt (i).GetLength ()-dirarray.ElementAt (0).GetLength ())+str.Right (str.GetLength ()-str.ReverseFind ('\\')-1));
  1136. }
  1137. }
  1138. }
  1139. if(array.GetSize ()==0)
  1140. {
  1141. AfxMessageBox("此单未导片!", MB_ICONINFORMATION);
  1142. return;
  1143. }
  1144. CCompressOption comoptdlg;
  1145. comoptdlg.DoModal ();
  1146. ImportPhoto dlg;
  1147. dlg.m_nOutputSize=comoptdlg.m_nsize;
  1148. dlg.m_mode =1;
  1149. dlg.m_pArray=&array;
  1150. dlg.m_pDesArray=&desarray;
  1151. dlg.m_savepath =dir;
  1152. dlg.DoModal (); AfxMessageBox("导片成功!", MB_ICONINFORMATION);
  1153. // CString str;
  1154. str=" 导出精修片 ";
  1155. str+="客人:";
  1156. str+=name1+name2+id;
  1157. WriteLog(str);
  1158. }
  1159. void BeautifySkinFrom2::OnButton1()
  1160. {
  1161. // TODO: Add your control notification handler code here
  1162. UpdateData();
  1163. m_filter.TrimLeft ();
  1164. m_filter.TrimRight ();
  1165. FillGrid();
  1166. }
  1167. void BeautifySkinFrom2::OnButton2()
  1168. {
  1169. // TODO: Add your control notification handler code here
  1170. UpdateData();
  1171. m_filter.TrimLeft ();
  1172. m_filter.TrimRight ();
  1173. FillGrid(1);
  1174. }
  1175. void BeautifySkinFrom2::OnItemchangedList2(NMHDR* pNMHDR, LRESULT* pResult)
  1176. {
  1177. NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
  1178. // TODO: Add your control notification handler code here
  1179. POSITION pos;
  1180. pos=m_List1.GetFirstSelectedItemPosition();
  1181. if(pos==NULL)
  1182. {
  1183. return;
  1184. }
  1185. int iItem=m_List1.GetNextSelectedItem(pos);
  1186. if(IsHasRights2new(6) || IsHasRights2new(49))
  1187. {
  1188. GetDlgItem(IDC_BUTimportphoto)->EnableWindow(1);
  1189. }
  1190. else
  1191. GetDlgItem(IDC_BUTimportphoto)->EnableWindow(0);
  1192. /* if(waiter7.IsEmpty () && IsHasRights2new(6) || IsHasRights2new(49))
  1193. {
  1194. GetDlgItem(IDC_BUTimportphoto)->EnableWindow(1);
  1195. }
  1196. else if(waiter7==g_user.name && IsHasRights2new(6) )
  1197. {
  1198. GetDlgItem(IDC_BUTimportphoto)->EnableWindow(1);
  1199. }
  1200. else
  1201. GetDlgItem(IDC_BUTimportphoto)->EnableWindow(0);*/
  1202. *pResult = 0;
  1203. }
  1204. void BeautifySkinFrom2::OnClickList2(NMHDR* pNMHDR, LRESULT* pResult)
  1205. {
  1206. // TODO: Add your control notification handler code here
  1207. POSITION pos;
  1208. pos=m_List1.GetFirstSelectedItemPosition();
  1209. if(pos==NULL)return;
  1210. int iItem=m_List1.GetNextSelectedItem(pos);
  1211. g_id = m_List1.GetItemText (iItem, 0+m_nAdd);
  1212. *pResult = 0;
  1213. }
  1214. void BeautifySkinFrom2::HidePrice()
  1215. {
  1216. #ifdef LKAY_VERSION
  1217. if(IsHasRights2new(31))return;
  1218. for(int i=0; i< m_List1array.GetSize (); i++)
  1219. {
  1220. m_List1array.ElementAt (i).SetAt (14+m_nAdd, "***");
  1221. m_List1array.ElementAt (i).SetAt (15+m_nAdd, "***");
  1222. m_List1array.ElementAt (i).SetAt (16+m_nAdd, "***");
  1223. m_List1array.ElementAt (i).SetAt (13+m_nAdd, "***");
  1224. }
  1225. #else
  1226. if(IsHasRights2new(31))return;
  1227. for(int i=0; i< m_List1array.GetSize (); i++)
  1228. {
  1229. m_List1array.ElementAt (i).SetAt (16+m_nAdd, "***");
  1230. m_List1array.ElementAt (i).SetAt (15+m_nAdd, "***");
  1231. }
  1232. #endif
  1233. }
  1234. void BeautifySkinFrom2::OnBtnsearchfilter()
  1235. {
  1236. // TODO: Add your control notification handler code here
  1237. SearchFilter dlg;
  1238. dlg.m_mode =2;
  1239. if(dlg.DoModal ()==IDOK)FillGrid();
  1240. g_bSearchFilter=0;
  1241. }
  1242. void BeautifySkinFrom2::GetData()
  1243. {
  1244. if(g_bAllBranch==0)
  1245. {
  1246. if(g_bShowOK==0)
  1247. {
  1248. #ifdef LKAY_VERSION
  1249. CString filter="status3='未取' and (dindantype<>'意向客户' or dindantype is null)";
  1250. #else
  1251. CString filter="status3='未取'";
  1252. #endif
  1253. g_sendhead.bsql=0;
  1254. g_sendhead.code[0]=35;
  1255. g_sendhead.tabcount=1;
  1256. g_pMainWnd->ProcessChatMessageRequest2(filter);if(g_bSendOK==0)return;
  1257. }
  1258. else
  1259. {
  1260. g_sendhead.bsql=0;
  1261. g_sendhead.code[0]=35;
  1262. g_sendhead.tabcount=1;
  1263. #ifdef LKAY_VERSION
  1264. CString filter="dindantype<>'意向客户' or dindantype is null";
  1265. g_pMainWnd->ProcessChatMessageRequest2(filter);
  1266. #else
  1267. g_pMainWnd->ProcessChatMessageRequest2(1);
  1268. #endif
  1269. if(g_bSendOK==0)return;
  1270. }
  1271. DataToArray(&m_List1array);
  1272. }
  1273. else
  1274. {
  1275. //////////////数据汇总
  1276. m_List1array.RemoveAll ();
  1277. CString branch;
  1278. for(int i=-1; i<g_brancharray.GetSize ()-1; i++)
  1279. {
  1280. if(i!=-1)
  1281. {
  1282. branch=g_brancharray.ElementAt (i).ElementAt (0);
  1283. g_branchip=g_brancharray.ElementAt (i).ElementAt (1);
  1284. g_pMainWnd->OnDisconnect();
  1285. g_branchname=branch;
  1286. g_bBranchModify=1;
  1287. }
  1288. else
  1289. branch=g_brancharray.ElementAt (g_brancharray.GetSize ()-1).ElementAt (0);
  1290. if(g_bShowOK==0)
  1291. {
  1292. CString filter="status3='未取'";
  1293. g_sendhead.bsql=0;
  1294. g_sendhead.code[0]=35;
  1295. g_sendhead.tabcount=1;
  1296. g_pMainWnd->ProcessChatMessageRequest2(filter);if(g_bSendOK==0)continue;
  1297. }
  1298. else
  1299. {
  1300. g_sendhead.bsql=0;
  1301. g_sendhead.code[0]=35;
  1302. g_sendhead.tabcount=1;
  1303. g_pMainWnd->ProcessChatMessageRequest2(1);if(g_bSendOK==0)continue;
  1304. }
  1305. CArray<CStringArray, CStringArray>List1array;
  1306. DataToArray(&List1array);
  1307. int size=m_List1array.GetSize ();
  1308. for(int j=0; j<List1array.GetSize (); j++)
  1309. {
  1310. size++;
  1311. m_List1array.SetSize(size , 1 );
  1312. size--;
  1313. m_List1array.ElementAt (size).Copy (List1array.ElementAt (j));
  1314. m_List1array.ElementAt (size).InsertAt (0, branch);
  1315. size++;
  1316. }
  1317. }
  1318. g_pMainWnd->OnDisconnect();
  1319. g_bBranchModify=0;g_branchip=g_branchname="";
  1320. }
  1321. HidePrice();
  1322. FillGrid();
  1323. }
  1324. void BeautifySkinFrom2::OnBUTprint3()
  1325. {
  1326. // TODO: Add your control notification handler code here
  1327. GetData();
  1328. }
  1329. void BeautifySkinFrom2::OnBUTexportphotoAddName()
  1330. {
  1331. if(IsHasRights2new(10)==0)return;
  1332. // TODO: Add your control notification handler code here
  1333. UpdateData();
  1334. POSITION pos;
  1335. pos=m_List1.GetFirstSelectedItemPosition();
  1336. if(pos==NULL)
  1337. {
  1338. AfxMessageBox("请先选中您要导片的定单!", MB_ICONINFORMATION);
  1339. return;
  1340. }
  1341. int iItem=m_List1.GetNextSelectedItem(pos);
  1342. CString status2=m_List1.GetItemText (iItem, 4);
  1343. if(status2!="OK")
  1344. {
  1345. AfxMessageBox("此单未选片!", MB_ICONINFORMATION);
  1346. return;
  1347. }
  1348. CString id=m_List1.GetItemText (iItem, 0);
  1349. CString name1=m_List1.GetItemText (iItem, 1);
  1350. CString name2=m_List1.GetItemText (iItem, 2);
  1351. CString filter="id='"+id+"';id='"+id+"'";
  1352. g_sendhead.bsql=0;
  1353. g_sendhead.code[0]=50;
  1354. g_sendhead.code[1]=11;
  1355. g_sendhead.tabcount=2;
  1356. g_pMainWnd->ProcessChatMessageRequest2(filter);if(g_bSendOK==0)return;
  1357. CArray<CStringArray, CStringArray>sparray;
  1358. DataToArray( &sparray, &g_List1array);
  1359. CString path=g_path2+"\\";
  1360. SelectPhotoDlg selectdlg;
  1361. selectdlg.DoModal ();
  1362. path+=id;
  1363. path +="\\";
  1364. ////////////////////////////////////////
  1365. CString str,spname;
  1366. CStringArray noarray;
  1367. CStringArray spnamearray;
  1368. int i=0;
  1369. for( i=0; i<sparray.GetSize (); i++)
  1370. {
  1371. str=sparray.ElementAt (i).ElementAt (6);
  1372. spname=sparray.ElementAt (i).ElementAt (5);
  1373. GetNo(str, noarray);
  1374. }
  1375. if(noarray.GetSize ()==0)
  1376. {
  1377. AfxMessageBox("此单未选片!", MB_ICONINFORMATION);
  1378. return;
  1379. }
  1380. spnamearray.SetSize(noarray.GetSize ());
  1381. for( i=0; i<noarray.GetSize (); i++)
  1382. {
  1383. str=noarray.ElementAt (i);
  1384. spnamearray.SetAt (i, GetSelName(str, sparray)+"-"+str );
  1385. }
  1386. CString dir;
  1387. GetSavePath(dir);
  1388. if(dir.IsEmpty())return;
  1389. dir.TrimRight ('\\');
  1390. dir+="\\";
  1391. dir+=id;
  1392. dir+=name1;
  1393. dir+=name2;
  1394. dir+="选片";
  1395. dir+="\\";
  1396. CStringArray array;
  1397. CStringArray spnamearray2;
  1398. CString src,des;
  1399. if(selectdlg.m_mode==0)
  1400. {
  1401. for(i=0; i<noarray.GetSize (); i++)
  1402. {
  1403. src.Format ("%s%s.jpg", path, noarray.ElementAt (i));
  1404. if(::CheckFolderFileExist (src))
  1405. {
  1406. array.Add (src);
  1407. if(selectdlg.m_check1)
  1408. spnamearray2.Add (spnamearray.ElementAt (i));
  1409. else
  1410. spnamearray2.Add (noarray.ElementAt (i));
  1411. }
  1412. else
  1413. AfxMessageBox("未找到初修过的文件:"+src.Right (src.GetLength ()-src.ReverseFind ('\\')-1), MB_ICONINFORMATION);
  1414. }
  1415. }
  1416. if(array.GetSize ()==0)
  1417. {
  1418. if(selectdlg.m_mode==0)
  1419. AfxMessageBox("注意:此单未修片, 导出的是原片!", MB_ICONINFORMATION);
  1420. path=g_path1+"\\";
  1421. path+=id;
  1422. path +="\\";
  1423. dir.Delete (dir.GetLength ()-1, 1);
  1424. dir+="(未修)\\";
  1425. for(i=0; i<noarray.GetSize (); i++)
  1426. {
  1427. src=GetPathFromNo2(path, noarray.ElementAt (i));
  1428. if(::CheckFileExist (src))
  1429. {
  1430. array.Add (src);
  1431. if(selectdlg.m_check1)
  1432. spnamearray2.Add (spnamearray.ElementAt (i));
  1433. else
  1434. spnamearray2.Add (noarray.ElementAt (i));
  1435. }
  1436. }
  1437. }
  1438. if(array.GetSize ()==0)
  1439. {
  1440. AfxMessageBox("此单未导入原片!", MB_ICONINFORMATION);
  1441. return;
  1442. }
  1443. ::CreateDirectory (dir, NULL);
  1444. ImportPhoto dlg;
  1445. dlg.m_mode =1;
  1446. dlg.m_pArray=&array;
  1447. dlg.m_pArray2=&spnamearray2;
  1448. dlg.m_savepath =dir;
  1449. dlg.DoModal ();
  1450. //////////////
  1451. if(g_List1array.GetSize ())
  1452. {
  1453. CStdioFile fp;
  1454. fp.Open (dir+"客户要求.txt", CFile::modeCreate|CFile::modeWrite);
  1455. fp.WriteString (g_List1array.ElementAt (0).ElementAt (39));
  1456. fp.Close ();
  1457. }
  1458. //////////////
  1459. AfxMessageBox("导片成功!", MB_ICONINFORMATION);
  1460. }