DinDanFrom.cpp 47 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850
  1. // DinDanFrom.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "ylgl.h"
  5. #include "DinDanFrom.h"
  6. #include "MyMdi.h"
  7. #include "ModifyDinDan.h"
  8. #include "InputPsw.h"
  9. #include "ClientDlg.h"
  10. #include "ClientDlg2.h"
  11. #include "./helper/ffsco.h"
  12. #include "Booking2.h"
  13. #include "SelExportType.h"
  14. #include "ShowPhoto.h"
  15. #include "ClientContract.h"
  16. #ifdef _DEBUG
  17. #define new DEBUG_NEW
  18. #undef THIS_FILE
  19. static char THIS_FILE[] = __FILE__;
  20. #endif
  21. #pragma comment(lib, "Shlwapi.lib")
  22. /////////////////////////////////////////////////////////////////////////////
  23. // DinDanFrom IDC_COMBO5
  24. IMPLEMENT_DYNCREATE(DinDanFrom, MyFormView)
  25. DinDanFrom::DinDanFrom()
  26. : MyFormView(DinDanFrom::IDD)
  27. {
  28. //{{AFX_DATA_INIT(DinDanFrom)
  29. m_filter = _T("");
  30. m_radio1 = 3;
  31. //}}AFX_DATA_INIT
  32. }
  33. DinDanFrom::~DinDanFrom()
  34. {
  35. }
  36. void DinDanFrom::DoDataExchange(CDataExchange* pDX)
  37. {
  38. MyFormView::DoDataExchange(pDX);
  39. //{{AFX_DATA_MAP(DinDanFrom)
  40. DDX_Control(pDX, IDC_COMBO1, m_combo1);
  41. DDX_Control(pDX, IDC_LIST2, m_List1);
  42. DDX_Control(pDX, IDC_STATIC1, m_static1);
  43. DDX_CBString(pDX, IDC_COMBO1, m_filter);
  44. DDX_Radio(pDX, IDC_RADIO1, m_radio1);
  45. //}}AFX_DATA_MAP
  46. }
  47. BEGIN_MESSAGE_MAP(DinDanFrom, MyFormView)
  48. //{{AFX_MSG_MAP(DinDanFrom)
  49. ON_BN_CLICKED(IDC_BUTclose, OnBUTclose)
  50. ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
  51. ON_CBN_SELCHANGE(IDC_COMBO1, OnSelchangeCombo1)
  52. ON_WM_TIMER()
  53. ON_BN_CLICKED(IDC_BUTmodify3, OnBUTmodify3)
  54. ON_BN_CLICKED(IDC_BUTmodify4, OnBUTmodify4)
  55. ON_BN_CLICKED(IDC_BUTmodify, OnBUTmodify)
  56. ON_BN_CLICKED(IDC_BUTprint, OnBUTprint)
  57. ON_NOTIFY(NM_DBLCLK, IDC_LIST2, OnDblclkList2)
  58. ON_BN_CLICKED(IDC_BUTclient, OnBUTclient)
  59. ON_NOTIFY(NM_CLICK, IDC_LIST2, OnClickList2)
  60. ON_BN_CLICKED(IDC_BUTprint3, OnBUTprint3)
  61. ON_NOTIFY(NM_CUSTOMDRAW, IDC_LIST2, OnCustomdrawList1)
  62. ON_BN_CLICKED(IDC_RADIO1, OnRadio1)
  63. ON_BN_CLICKED(IDC_RADIO3, OnRadio3)
  64. ON_BN_CLICKED(IDC_BTNSEARCHFILTER, OnBtnsearchfilter)
  65. ON_BN_CLICKED(IDC_RADIO4, OnRadio4)
  66. ON_BN_CLICKED(IDC_RADIO6, OnRadio6)
  67. ON_BN_CLICKED(IDC_RADIO7, OnRadio7)
  68. ON_BN_CLICKED(IDC_BUTmodify5, OnBUTmodify5)
  69. ON_BN_CLICKED(IDC_BUTmodify6, OnBUTmodify6)
  70. ON_BN_CLICKED(IDC_BUTmodify7, OnBUTmodify7)
  71. ON_BN_CLICKED(IDC_BUTmodify8, OnBUTmodify8)
  72. //}}AFX_MSG_MAP
  73. ON_BN_CLICKED(Btn_Urgent, OnBnClickedUrgent)
  74. END_MESSAGE_MAP()
  75. /////////////////////////////////////////////////////////////////////////////
  76. // DinDanFrom diagnostics
  77. #ifdef _DEBUG
  78. void DinDanFrom::AssertValid() const
  79. {
  80. MyFormView::AssertValid();
  81. }
  82. void DinDanFrom::Dump(CDumpContext& dc) const
  83. {
  84. MyFormView::Dump(dc);
  85. }
  86. #endif //_DEBUG
  87. /////////////////////////////////////////////////////////////////////////////
  88. // DinDanFrom message handlers
  89. void SetComboHei(CComboBox *pCombo, int hei)
  90. {
  91. CFont aa;
  92. CFont *pFont=&aa;
  93. pFont->CreatePointFont (90, _T("宋体"));
  94. pCombo->SetFont(pFont);
  95. CRect rc;
  96. pCombo->GetWindowRect (&rc);
  97. int size=90;
  98. while(rc.Height ()<hei)
  99. {
  100. pFont->DeleteObject ();
  101. size+=10;
  102. pFont->CreatePointFont (size, _T("宋体"));
  103. pCombo->SetFont(pFont);
  104. pCombo->GetWindowRect (&rc);
  105. }
  106. }
  107. void DinDanFrom::OnInitialUpdate()
  108. {
  109. MyFormView::OnInitialUpdate();
  110. // TODO: Add your specialized code here and/or call the base class
  111. CMyMdi Mdi;
  112. Mdi.SetSubView((CWnd*)GetParent(), (CWnd*)this);
  113. // Here we create the outbar control using the splitter as its parent
  114. // and setting its id to the first pane.
  115. #ifdef LYFZ_VERSION
  116. GetDlgItem(IDC_BUTmodify5)->ShowWindow (SW_SHOW);
  117. GetDlgItem(IDC_BUTmodify6)->ShowWindow (SW_SHOW);
  118. GetDlgItem(IDC_BUTmodify7)->ShowWindow (SW_SHOW);
  119. GetDlgItem(IDC_BUTmodify8)->ShowWindow (SW_SHOW);
  120. GetDlgItem(IDC_STATIC7)->ShowWindow (SW_SHOW);
  121. GetDlgItem(IDC_STATIC8)->ShowWindow (SW_SHOW);
  122. if(IsHasRights2new(16)==1 || IsHasRights2new(49)==1)
  123. {
  124. GetDlgItem(IDC_BUTmodify5)->EnableWindow(1);
  125. GetDlgItem(IDC_BUTmodify7)->EnableWindow(1);
  126. }
  127. else
  128. {
  129. GetDlgItem(IDC_BUTmodify5)->EnableWindow(0);
  130. GetDlgItem(IDC_BUTmodify7)->EnableWindow(0);
  131. }
  132. #endif
  133. #ifndef LKAY_VERSION
  134. GetDlgItem(IDC_STATIC4)->ShowWindow (0);
  135. GetDlgItem(IDC_RADIO1)->ShowWindow (0);
  136. GetDlgItem(IDC_RADIO3)->ShowWindow (0);
  137. GetDlgItem(IDC_RADIO4)->ShowWindow (0);
  138. GetDlgItem(IDC_RADIO6)->ShowWindow (0);
  139. GetDlgItem(IDC_RADIO7)->ShowWindow (0);
  140. #endif
  141. CRect rc2;
  142. GetWindowRect(rc2);
  143. /* CString ss;
  144. ss.Format ("%d,%d,%d,%d", rc2.left , rc2.top , rc2.Width () , rc2.Height () );
  145. AfxMessageBox(ss);
  146. m_WidthScale = ((float)g_rc.Width ())/((float)rc2.Width ());
  147. m_HeightScale = ((float)g_rc.Height ())/((float)rc2.Height ());
  148. */
  149. int dty=g_screenhei-768;
  150. if(dty>0)
  151. {
  152. g_rc.bottom -=dty;
  153. MoveWindow(g_rc);
  154. EnumChildWindows(m_hWnd,(WNDENUMPROC)EnumChildProc,0);
  155. g_rc.bottom +=dty;
  156. MoveWindow(g_rc);
  157. }
  158. else
  159. {
  160. MoveWindow(g_rc);
  161. EnumChildWindows(m_hWnd,(WNDENUMPROC)EnumChildProc,0);
  162. }
  163. int idarray[]={IDC_BUTmodify4,IDC_BUTmodify,IDC_BUTclient,IDC_BUTprint3,IDC_BUTprint,IDC_BUTmodify3,IDC_BUTclose};
  164. int idcount=7;
  165. int btnwid;
  166. CRect prerc;
  167. for(int a=idcount-2; a>=0; a--)
  168. {
  169. GetDlgItem(idarray[a+1])->GetWindowRect (prerc);
  170. ScreenToClient(prerc);
  171. GetDlgItem(idarray[a])->GetWindowRect (rc2);
  172. ScreenToClient(rc2);
  173. btnwid=rc2.Width ();
  174. rc2.right =prerc.left ;
  175. rc2.left =rc2.right -btnwid;
  176. GetDlgItem(idarray[a])->MoveWindow (rc2);
  177. }
  178. m_static1.SetFont (&g_titlefont);
  179. #ifdef CHILD_VERSION
  180. #ifdef LKAY_VERSION
  181. m_List1.SetHeadings("订单号,100;家长姓名,100;宝宝姓名,100;宝宝性别,100;生日,100;历别,100;类别,100;折扣,100;拍照,100;初修,100;选片,100;精修,100;设计,100;看设计,100;取件,100;预约时间,100;拍照时间,100;选片时间,100;看设计时间,100;取件时间,100;接单人,100;套系名称,100;套系价格,100;摄影师,100;化妆师,100;初修,100;选片,100;精修,100;设计师,100;看设计,100;录单,100;手机,100;固定电话,100;拍摄合同,100;选片合同,100" );
  182. #else
  183. m_List1.SetHeadings("订单号,100;家长姓名,100;宝宝姓名,100;类别,100;来源,100;拍照,100;初修,100;选片,100;精修,100;设计,100;看设计,100;取件,100;预约时间,100;拍照时间,100;选片时间,100;看设计时间,100;取件时间,100;接单人,100;套系名称,100;套系价格,100;摄影师,100;化妆师,100;初修,100;选片,100;精修,100;设计师,100;看设计,100;录单,100;折扣,100;授权,100;折扣(后),100;授权(后),100;手机,100;固定电话,100" );
  184. #endif
  185. #else
  186. #ifdef ZHIAI_VERSION
  187. m_List1.SetHeadings("订单号,100;男宾姓名,100;女宾姓名,100;预约点,100;类别,100;折扣,100;拍照,100;初修,100;选片,100;精修,100;设计,100;看设计,100;取件,100;预约时间,100;拍照时间,100;选片时间,100;看设计时间,100;取件时间,100;接单人,100;套系名称,100;套系价格,100;摄影师,100;化妆师,100;初修,100;选片,100;精修,100;设计师,100;看设计,100;录单,100;男宾电话,100;女宾电话,100" );
  188. #else
  189. #ifdef LYFZ_VERSION
  190. m_List1.SetHeadings("订单号,100;男宾姓名,100;女宾姓名,100;类别,100;来源,100;一次上门,100;二次,100;三次,100;回访,100;合同,100;看设计,100;取件,100;预约时间,100;年服务费日期,100;选片时间,100;看设计时间,100;取件时间,100;接单人,100;套系名称,100;套系价格,100;摄影师,100;化妆师,100;初修,100;选片,100;精修,100;设计师,100;看设计,100;录单,100;折扣,100;授权,100;折扣(后),100;授权(后),100;男宾电话,100;女宾电话,100" );
  191. #else
  192. m_List1.SetHeadings("订单号,100;男宾姓名,100;女宾姓名,100;类别,100;来源,100;拍照,100;初修,100;选片,100;精修,100;设计,100;看设计,100;取件,100;预约时间,100;拍照时间,100;选片时间,100;看设计时间,100;取件时间,100;接单人,100;套系名称,100;套系价格,100;摄影师,100;化妆师,100;初修,100;选片,100;精修,100;设计师,100;看设计,100;录单,100;折扣,100;授权,100;折扣(后),100;授权(后),100;男宾电话,100;女宾电话,100" );
  193. #endif
  194. #endif
  195. #endif
  196. m_List1.LoadColumnInfo (109);
  197. #ifdef ZHIAI_VERSION
  198. m_nadd=2;
  199. #else
  200. m_nadd=1;
  201. #endif
  202. GetData(); // Jeff 这里与服务器进行数据交互;
  203. m_combo1.AddString (g_user.name);
  204. for(int i=0; i<g_AryStaff.GetSize (); i++)
  205. {
  206. // 员工姓名;
  207. m_combo1.AddString (DAL::GetStaffName(i));
  208. }
  209. FillGrid();
  210. m_combo1.GetWindowRect (rc2);
  211. ScreenToClient(rc2);
  212. rc2.bottom +=200;
  213. m_combo1.MoveWindow (rc2);
  214. GetDlgItem(IDC_BUTclose)->GetWindowRect(rc2);
  215. SetComboHei(&m_combo1, rc2.Height ());
  216. GetDlgItem(IDC_BUTprint3)->EnableWindow(IsHasRights2new(49));
  217. GetDlgItem(IDC_BUTprint)->EnableWindow(IsHasRights2new(3));
  218. GetDlgItem(IDC_BUTmodify4)->EnableWindow(IsHasRights2new(1));
  219. GetDlgItem(IDC_BUTclient)->EnableWindow(IsHasRights2new(1));
  220. }
  221. void DinDanFrom::FillGrid2()
  222. {
  223. int m_nadd2=m_nadd;
  224. m_nadd2-=3;
  225. if(g_bSearchFilter)
  226. {
  227. m_List1.DeleteAllItems2 ();
  228. int ii=0;
  229. m_List1.m_arLabels.SetSize( m_List1array.GetSize (), 1 );
  230. int count=0;
  231. {
  232. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  233. {
  234. if(g_filterdate1!="")
  235. {
  236. if(m_List1array.ElementAt (ii).ElementAt (14+m_nadd2)<g_filterdate1 || m_List1array.ElementAt (ii).ElementAt (14+m_nadd2)>g_filterdate2)
  237. continue;
  238. }
  239. if(g_waiter1!="")
  240. {
  241. if(m_List1array.ElementAt (ii).ElementAt (19+m_nadd2)!=g_waiter1)
  242. continue;
  243. }
  244. if(g_waiter2!="")
  245. {
  246. if(m_List1array.ElementAt (ii).ElementAt (22+m_nadd2)!=g_waiter2)
  247. continue;
  248. }
  249. if(g_waiter3!="")
  250. {
  251. if(m_List1array.ElementAt (ii).ElementAt (23+m_nadd2)!=g_waiter3)
  252. continue;
  253. }
  254. if(1)
  255. {
  256. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  257. }
  258. }
  259. }
  260. m_List1.m_arLabels.SetSize(count, 1);
  261. ii=count;
  262. m_List1.m_LabelCount=ii;
  263. m_List1.SetItemCountEx (ii);
  264. CString str;
  265. str.Format ("单数:%d", ii);
  266. SetDlgItemText(IDC_STATIC2, str);
  267. }
  268. else
  269. {
  270. m_List1.DeleteAllItems2 ();
  271. int ii=0;
  272. m_List1.m_arLabels.SetSize( m_List1array.GetSize (), 1 );
  273. int count=0;
  274. if(m_filter.IsEmpty ())
  275. {
  276. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  277. {
  278. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  279. }
  280. }
  281. else
  282. {
  283. int type=GetType(m_filter);
  284. if(type==1)//电话
  285. {
  286. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  287. {
  288. if(m_List1array.ElementAt (ii).ElementAt (30+m_nadd2).Find (m_filter)!=-1 || \
  289. m_List1array.ElementAt (ii).ElementAt (31+m_nadd2).Find (m_filter)!=-1)
  290. {
  291. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  292. }
  293. }
  294. }
  295. else if(type==2)//拼音
  296. {
  297. m_filter.MakeUpper ();
  298. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  299. {
  300. if(m_List1array.ElementAt (ii).ElementAt (32+m_nadd2).Find (m_filter)!=-1 || \
  301. m_List1array.ElementAt (ii).ElementAt (33+m_nadd2).Find (m_filter)!=-1)
  302. {
  303. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  304. }
  305. }
  306. }
  307. else
  308. {
  309. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  310. {
  311. if(m_List1array.ElementAt (ii).ElementAt (0).Find (m_filter)!=-1 || \
  312. m_List1array.ElementAt (ii).ElementAt (1).Find (m_filter)!=-1 || \
  313. m_List1array.ElementAt (ii).ElementAt (2).Find (m_filter)!=-1 || \
  314. m_List1array.ElementAt (ii).ElementAt (3).Find (m_filter)!=-1 || \
  315. m_List1array.ElementAt (ii).ElementAt (19+m_nadd2).Find (m_filter)!=-1 || \
  316. m_List1array.ElementAt (ii).ElementAt (20+m_nadd2).Find (m_filter)!=-1 || \
  317. m_List1array.ElementAt (ii).ElementAt (22+m_nadd2).Find (m_filter)!=-1 || \
  318. m_List1array.ElementAt (ii).ElementAt (23+m_nadd2).Find (m_filter)!=-1 || \
  319. m_List1array.ElementAt (ii).ElementAt (33+m_nadd2).Find (m_filter)!=-1 || \
  320. m_List1array.ElementAt (ii).ElementAt (30+m_nadd2).Find (m_filter)!=-1 ||\
  321. m_List1array.ElementAt (ii).ElementAt (31+m_nadd2).Find (m_filter)!=-1 || \
  322. m_List1array.ElementAt (ii).ElementAt (32+m_nadd2).Find (m_filter)!=-1)
  323. {
  324. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  325. }
  326. }
  327. }
  328. }
  329. m_List1.m_arLabels.SetSize(count, 1);
  330. ii=count;
  331. m_List1.m_LabelCount=ii;
  332. m_List1.SetItemCountEx (ii);
  333. CString str;
  334. str.Format ("单数:%d", ii);
  335. SetDlgItemText(IDC_STATIC2, str);
  336. }
  337. if(!g_id.IsEmpty ())
  338. {
  339. for(int i=0; i<m_List1.GetItemCount (); i++)
  340. {
  341. if(g_id==m_List1.GetItemText (i, 0))
  342. {
  343. m_List1.SetItemState(i,LVIS_SELECTED|LVIS_FOCUSED,LVIS_SELECTED|LVIS_FOCUSED);
  344. m_List1.EnsureVisible(i,FALSE);
  345. break;
  346. }
  347. }
  348. }
  349. }
  350. void DinDanFrom::FillGrid()
  351. {
  352. #ifdef ZHIAI_VERSION
  353. FillGrid2();return;
  354. #endif
  355. int m_nadd2=0;
  356. #ifdef LKAY_VERSION
  357. m_nadd2+=2;
  358. #endif
  359. if(g_bSearchFilter)
  360. {
  361. m_List1.DeleteAllItems2 ();
  362. int ii=0;
  363. m_List1.m_arLabels.SetSize( m_List1array.GetSize (), 1 );
  364. int count=0;
  365. {
  366. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  367. {
  368. if(g_filterdate1!="")
  369. {
  370. if(m_List1array.ElementAt (ii).ElementAt (11+m_nadd)<g_filterdate1 || m_List1array.ElementAt (ii).ElementAt (11+m_nadd)>g_filterdate2)
  371. continue;
  372. }
  373. if(g_waiter1!="")
  374. {
  375. if(m_List1array.ElementAt (ii).ElementAt (16+m_nadd)!=g_waiter1)
  376. continue;
  377. }
  378. if(g_waiter2!="")
  379. {
  380. if(m_List1array.ElementAt (ii).ElementAt (19+m_nadd)!=g_waiter2)
  381. continue;
  382. }
  383. if(g_waiter3!="")
  384. {
  385. if(m_List1array.ElementAt (ii).ElementAt (20+m_nadd)!=g_waiter3)
  386. continue;
  387. }
  388. if(g_waiter4!="")
  389. {
  390. if(m_List1array.ElementAt (ii).ElementAt (3)!=g_waiter4)
  391. continue;
  392. }
  393. if(g_waiter5!="")
  394. {
  395. if(m_List1array.ElementAt (ii).ElementAt (4)!=g_waiter5)
  396. continue;
  397. }
  398. if(1)
  399. {
  400. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  401. }
  402. }
  403. }
  404. m_List1.m_arLabels.SetSize(count, 1);
  405. ii=count;
  406. m_List1.m_LabelCount=ii;
  407. m_List1.SetItemCountEx (ii);
  408. CString str;
  409. str.Format ("单数:%d", ii);
  410. SetDlgItemText(IDC_STATIC2, str);
  411. }
  412. else
  413. {
  414. m_List1.DeleteAllItems2 ();
  415. int ii=0;
  416. m_List1.m_arLabels.SetSize( m_List1array.GetSize (), 1 );
  417. int count=0;
  418. if(m_filter.IsEmpty ())
  419. {
  420. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  421. {
  422. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  423. }
  424. }
  425. else
  426. {
  427. int type=GetType(m_filter);
  428. if(type==1)//电话
  429. {
  430. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  431. {
  432. if(m_List1array.ElementAt (ii).ElementAt (32+m_nadd).Find (m_filter)!=-1 || \
  433. m_List1array.ElementAt (ii).ElementAt (31+m_nadd).Find (m_filter)!=-1)
  434. {
  435. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  436. }
  437. }
  438. }
  439. else if(type==2)//拼音
  440. {
  441. m_filter.MakeUpper ();
  442. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  443. {
  444. if(m_List1array.ElementAt (ii).ElementAt (34+m_nadd+m_nadd2).Find (m_filter)!=-1 || \
  445. m_List1array.ElementAt (ii).ElementAt (33+m_nadd+m_nadd2).Find (m_filter)!=-1)
  446. {
  447. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  448. }
  449. }
  450. }
  451. else
  452. {
  453. for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++)
  454. {
  455. if(m_List1array.ElementAt (ii).ElementAt (0).Find (m_filter)!=-1 || \
  456. m_List1array.ElementAt (ii).ElementAt (1).Find (m_filter)!=-1 || \
  457. m_List1array.ElementAt (ii).ElementAt (2).Find (m_filter)!=-1 || \
  458. m_List1array.ElementAt (ii).ElementAt (3).Find (m_filter)!=-1 || \
  459. m_List1array.ElementAt (ii).ElementAt (16+m_nadd).Find (m_filter)!=-1 || \
  460. m_List1array.ElementAt (ii).ElementAt (17+m_nadd).Find (m_filter)!=-1 || \
  461. m_List1array.ElementAt (ii).ElementAt (19+m_nadd).Find (m_filter)!=-1 || \
  462. m_List1array.ElementAt (ii).ElementAt (20+m_nadd).Find (m_filter)!=-1 || \
  463. m_List1array.ElementAt (ii).ElementAt (34+m_nadd).Find (m_filter)!=-1 || \
  464. m_List1array.ElementAt (ii).ElementAt (31+m_nadd).Find (m_filter)!=-1 ||\
  465. m_List1array.ElementAt (ii).ElementAt (32+m_nadd).Find (m_filter)!=-1 || \
  466. m_List1array.ElementAt (ii).ElementAt (33+m_nadd).Find (m_filter)!=-1)
  467. {
  468. m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii));
  469. }
  470. }
  471. }
  472. }
  473. m_List1.m_arLabels.SetSize(count, 1);
  474. ii=count;
  475. m_List1.m_LabelCount=ii;
  476. m_List1.SetItemCountEx (ii);
  477. CString str;
  478. str.Format ("单数:%d", ii);
  479. SetDlgItemText(IDC_STATIC2, str);
  480. }
  481. if(!g_id.IsEmpty ())
  482. {
  483. for(int i=0; i<m_List1.GetItemCount (); i++)
  484. {
  485. if(g_id==m_List1.GetItemText (i, 0))
  486. {
  487. m_List1.SetItemState(i,LVIS_SELECTED|LVIS_FOCUSED,LVIS_SELECTED|LVIS_FOCUSED);
  488. m_List1.EnsureVisible(i,FALSE);
  489. break;
  490. }
  491. }
  492. }
  493. }
  494. void DinDanFrom::OnBUTclose() // 关闭view视窗按钮;
  495. {
  496. GetParent()->SendMessage(WM_CLOSE);
  497. }
  498. extern void SaveImageToFile(Image *img, CString path);
  499. void DinDanFrom::OnButton1() // 查询;
  500. {
  501. // TODO: Add your control notification handler code here
  502. /*
  503. Image *img=NULL;
  504. ::LoadImageFromBuf (&img, "e:\\1x.jpg");
  505. if(img->GetWidth())
  506. {
  507. CRect rc(0,0,1000,1000);
  508. RectFitDes(img->GetWidth(), img->GetHeight(), rc);
  509. Image *simg= img->GetThumbnailImage(rc.Width (), rc.Height (), NULL, NULL);
  510. Graphics graphic(simg);//防止GetThumbnailImage影响质量
  511. graphic.DrawImage(img, 0,0,simg->GetWidth(), simg->GetHeight() );
  512. delete img;
  513. ::SaveImageToFile(simg, "e:\\1x2.jpg");
  514. delete simg;
  515. }*/
  516. UpdateData();
  517. m_filter.TrimLeft ();
  518. m_filter.TrimRight ();
  519. FillGrid();
  520. }
  521. void DinDanFrom::OnSelchangeCombo1()
  522. {
  523. SetTimer(1, 100, NULL);
  524. }
  525. void DinDanFrom::OnTimer(UINT nIDEvent)
  526. {
  527. KillTimer(nIDEvent);
  528. OnButton1();
  529. }
  530. void DinDanFrom::OnBUTmodify3() //打印按钮;婚纱版
  531. {
  532. #ifdef LYFZ_VERSION
  533. return;
  534. #endif
  535. POSITION pos;
  536. pos=m_List1.GetFirstSelectedItemPosition();
  537. if(pos==NULL)
  538. {
  539. return;
  540. }
  541. int iItem=m_List1.GetNextSelectedItem(pos);
  542. g_pMainWnd->PrintDinDan(m_List1.GetItemText (iItem, 0));
  543. }
  544. void DinDanFrom::OnBUTmodify4()
  545. {
  546. POSITION pos;
  547. pos=m_List1.GetFirstSelectedItemPosition();
  548. if(pos==NULL)
  549. {
  550. return;
  551. }
  552. int iItem=m_List1.GetNextSelectedItem(pos);
  553. if(m_List1.GetItemText (iItem, 3)=="成长套系")
  554. GetDlgItem(IDC_BUTmodify4)->ShowWindow(1);
  555. else
  556. {
  557. GetDlgItem(IDC_BUTmodify4)->ShowWindow(0);
  558. return;
  559. }
  560. if(AfxMessageBox("完成后此单将存入历史数据库并不可修改, 确认吗?", MB_YESNO|MB_ICONINFORMATION)!=IDYES)return;
  561. CString m_id=m_List1.GetItemText (iItem, 0);
  562. {
  563. CString sql= "update dindan set [status3]='OK',[time5]='"+g_date+"' where id='"+m_id+"'";
  564. g_sendhead.bsql=1;
  565. g_pMainWnd->ProcessChatMessageRequest2(sql);
  566. if(g_bSendOK==0)return;
  567. }
  568. AfxMessageBox("保存成功!", MB_ICONINFORMATION);
  569. GetData();
  570. FillGrid();
  571. }
  572. BOOL DinDanFrom::PreTranslateMessage(MSG* pMsg)
  573. {
  574. try
  575. {
  576. if(pMsg->message==WM_KEYDOWN)
  577. {
  578. // CString ss;
  579. // ss.Format ("%d", pMsg->wParam);
  580. // MessageBox(ss);
  581. switch (pMsg->wParam)
  582. {
  583. case VK_RETURN:
  584. OnButton1();
  585. return 1;
  586. case VK_F9:
  587. #ifdef LYFZ_VERSION
  588. if(g_pMainWnd->IsCtrlDown())
  589. AutoImportPhoto();
  590. #endif
  591. return 1;
  592. case 0x43: // copy
  593. if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) )
  594. {
  595. GetFocus()->SendMessage(WM_COPY);
  596. return TRUE;
  597. }
  598. break;
  599. case 0x56: //Ctrl + V:
  600. if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) )
  601. {
  602. GetFocus()->SendMessage(WM_PASTE);
  603. return TRUE;
  604. }
  605. break;
  606. case 0x58: // cut
  607. if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) )
  608. {
  609. GetFocus()->SendMessage(WM_CUT);
  610. return TRUE;
  611. }
  612. break;
  613. case 0x5A: //undo
  614. case 0x59: //redo
  615. if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) )
  616. {
  617. GetFocus()->SendMessage(WM_UNDO);
  618. return TRUE;
  619. }
  620. break;
  621. }
  622. }
  623. return MyFormView::PreTranslateMessage(pMsg);
  624. }
  625. catch(...)
  626. {
  627. }
  628. }
  629. //extern void DeleteDirectory(CString strDir);
  630. void DinDanFrom::OnBUTprint() // 删除按钮, 不是打印按钮;
  631. {
  632. if(IsHasRights2new(3)==0)return;
  633. POSITION pos;
  634. pos=m_List1.GetFirstSelectedItemPosition();
  635. if(pos==NULL)
  636. {
  637. return;
  638. }
  639. int iItem=m_List1.GetNextSelectedItem(pos);
  640. if(AfxMessageBox("警告! 此单相关资料将全部被删除? 确定吗?", MB_YESNO|MB_ICONSTOP)!=IDYES)return;
  641. CString id = m_List1.GetItemText (iItem, 0);
  642. CString name1 = m_List1.GetItemText (iItem, 1);
  643. CString name2 = m_List1.GetItemText (iItem, 2);
  644. CString sql;
  645. sql= "delete from dindan where id='"+id+"'";
  646. sql+= "***delete from dindansp where id='"+id+"'";
  647. sql+= "***delete from dindansp2 where id='"+id+"'";
  648. sql+= "***delete from dindansp3 where id='"+id+"'";
  649. sql+= "***delete from photoprint where id='"+id+"'";
  650. sql+= "***delete from dindanbukuan where id='"+id+"'";
  651. sql+= "***delete from dindanbukuan2 where id='"+id+"'";
  652. sql+= "***delete from client where [id]='"+id+"'";
  653. sql+= "***delete from burncdreg where [id]='"+id+"'";
  654. sql+= "***delete from digitalwork where [id]='"+id+"'";
  655. sql+= "***delete from mywork where [id]='"+id+"'";
  656. sql+= "***delete from dindanjd where [id]='"+id+"'";
  657. sql+= "***"+GetLogStr("删除客人"+name1+name2+id+"订单!");
  658. g_sendhead.bsql=1;
  659. g_pMainWnd->ProcessChatMessageRequest2(sql);
  660. id.TrimLeft ();
  661. id.TrimRight ();
  662. if(id.GetLength ()>3)
  663. {
  664. CString path;
  665. path=g_path1+"\\";
  666. path+=id;
  667. DeleteDirectory(path);//AfxMessageBox(path);
  668. path=g_path2+"\\";
  669. path+=id;
  670. DeleteDirectory(path);
  671. path=g_path3+"\\";
  672. path+=id;
  673. DeleteDirectory(path);
  674. path=g_path4+"\\";
  675. path+=id;
  676. DeleteDirectory(path);
  677. }
  678. GetData();
  679. FillGrid();
  680. }
  681. /*
  682. dindan
  683. dindansp
  684. dindansp2
  685. dindansp3
  686. photoprint
  687. dindanbukuan
  688. dindanbukuan2
  689. client
  690. burncdreg
  691. digitalwork
  692. mywork
  693. dindanjd
  694. delete from dindan
  695. delete from dindansp
  696. delete from dindansp2
  697. delete from dindansp3
  698. delete from photoprint
  699. delete from dindanbukuan
  700. delete from dindanbukuan2
  701. delete from client
  702. delete from burncdreg
  703. delete from digitalwork
  704. delete from mywork
  705. delete from dindanjd
  706. */
  707. void DinDanFrom::OnDblclkList2(NMHDR* pNMHDR, LRESULT* pResult)
  708. {
  709. OnBUTmodify();
  710. *pResult = 0;
  711. }
  712. void DinDanFrom::OnBUTclient()//user.info.button客户资料按钮;
  713. {
  714. POSITION pos;
  715. pos=m_List1.GetFirstSelectedItemPosition();
  716. if(pos==NULL)
  717. {
  718. return;
  719. }
  720. int iItem=m_List1.GetNextSelectedItem(pos);
  721. #ifdef CHILD_VERSION
  722. CClientDlg2 dlg;
  723. #else
  724. CClientDlg dlg;
  725. #endif
  726. dlg.m_bAdd=0;
  727. dlg.id=m_List1.GetItemText (iItem, 0);
  728. dlg.m_name1=m_List1.GetItemText (iItem, 1);
  729. dlg.m_name2=m_List1.GetItemText (iItem, 2);
  730. if(dlg.DoModal ()!=IDOK)return;
  731. for(int i=0; i<m_List1.m_arLabels.GetSize (); i++)
  732. {
  733. if(dlg.id==m_List1.m_arLabels.ElementAt (i).ElementAt (0))
  734. {
  735. m_List1.m_arLabels.ElementAt (i).SetAt (1, dlg.m_name1 );
  736. m_List1.m_arLabels.ElementAt (i).SetAt (2, dlg.m_name2 );
  737. m_List1.Invalidate ();
  738. // FillGrid();
  739. break;
  740. }
  741. }
  742. }
  743. void DinDanFrom::GetClientPhone()
  744. {
  745. SelExportType dlg;
  746. if(dlg.DoModal()!=IDOK)return;
  747. if(dlg.m_type==1)
  748. {
  749. ListToXLS(&m_List1, "c:\\客人订单.xls", 0);
  750. return;
  751. }
  752. #ifdef LYFZ_VERSION
  753. CStdioFile fp;
  754. fp.Open ("c:\\clientphone.txt", CFile::modeCreate|CFile::modeWrite);
  755. CString str;
  756. CString name,m_name1,m_name2;
  757. CString phone,m_phone1,m_phone2;
  758. CString txname,txprice,mensi;
  759. int leng1=50;
  760. int leng2=40;
  761. int leng3=20;
  762. name="姓名";
  763. mensi="门市";
  764. phone="电话";
  765. FillLength(name, leng1);
  766. FillLength(mensi, leng3);
  767. FillLength(phone, leng2);
  768. str=name+phone+mensi+"\n";
  769. fp.WriteString (str);
  770. for(int i=0; i<m_List1.GetItemCount (); i++)
  771. {
  772. name.Empty ();
  773. phone.Empty ();
  774. m_name1=m_List1.GetItemText (i, 1);
  775. m_name2=m_List1.GetItemText (i, 2);
  776. m_phone1=m_List1.GetItemText (i, 31+m_nadd);
  777. m_phone2=m_List1.GetItemText (i, 32+m_nadd);
  778. mensi=m_List1.GetItemText (i, 16+m_nadd);
  779. if(!m_name1.IsEmpty ())
  780. name=m_name1+",";
  781. name+=m_name2;
  782. name.TrimRight (",");
  783. if(!m_phone1.IsEmpty ())
  784. phone=m_phone1+",";
  785. phone+=m_phone2;phone.TrimRight (",");
  786. FillLength(name, leng1);
  787. FillLength(mensi, leng3);
  788. FillLength(phone, leng2);
  789. str=name+phone+mensi+"\n";
  790. fp.WriteString (str);
  791. }
  792. fp.Close ();
  793. MessageBox("电话已保存到c:\\clientphone.txt");
  794. ShellExecute(NULL, _T("open"), _T("c:\\clientphone.txt"), NULL, NULL, SW_SHOWMAXIMIZED);
  795. #else
  796. #ifdef LKAY_VERSION
  797. CStdioFile fp;
  798. fp.Open ("c:\\clientphone.txt", CFile::modeCreate|CFile::modeWrite);
  799. CString str;
  800. CString name,m_name1,m_name2;
  801. CString phone,m_phone1,m_phone2;
  802. CString txname,txprice,mensi,sex,birthday,date;
  803. int leng1=23;
  804. int leng2=10;
  805. int leng3=18;
  806. int leng4=13;
  807. int leng5=30;
  808. int leng6=30;
  809. int leng7=13;
  810. int leng8=20;
  811. name="姓名";
  812. sex="性别";
  813. birthday="生日";
  814. mensi="门市";
  815. phone="电话";
  816. txname="套系";
  817. txprice="价格";
  818. date="拍摄日期";
  819. FillLength(name, leng1);
  820. FillLength(sex, leng2);
  821. FillLength(birthday, leng3);
  822. FillLength(mensi, leng4);
  823. FillLength(phone, leng5);
  824. FillLength(txname, leng6);
  825. FillLength(txprice,leng7);
  826. FillLength(date,leng8);
  827. str=name+sex+birthday+mensi+phone+txname+txprice+date+"\n";
  828. fp.WriteString (str);
  829. for(int i=0; i<m_List1.m_arLabels.GetSize (); i++)
  830. {
  831. // if(atof(m_List1.GetItemText (i, 15))<600)continue;
  832. name.Empty ();
  833. phone.Empty ();
  834. m_name1=m_List1.m_arLabels.ElementAt(i).ElementAt(1);
  835. m_name2=m_List1.m_arLabels.ElementAt(i).ElementAt(2);
  836. m_phone1=m_List1.m_arLabels.ElementAt(i).ElementAt(30+m_nadd);
  837. m_phone2=m_List1.m_arLabels.ElementAt(i).ElementAt(31+m_nadd);
  838. mensi=m_List1.m_arLabels.ElementAt(i).ElementAt(19+m_nadd);
  839. txname=m_List1.m_arLabels.ElementAt(i).ElementAt(20+m_nadd);
  840. txprice=m_List1.m_arLabels.ElementAt(i).ElementAt(21+m_nadd);
  841. date=m_List1.m_arLabels.ElementAt(i).ElementAt(16);
  842. sex=m_List1.m_arLabels.ElementAt(i).ElementAt(3);
  843. birthday=m_List1.m_arLabels.ElementAt(i).ElementAt(4);
  844. if(birthday!="" && m_List1.m_arLabels.ElementAt(i).ElementAt(5)=="农历")
  845. birthday+="(农)";
  846. if(!m_name1.IsEmpty ())
  847. name=m_name1+",";
  848. name+=m_name2;
  849. name.TrimRight (",");
  850. if(!m_phone1.IsEmpty ())
  851. phone=m_phone1+",";
  852. phone+=m_phone2;phone.TrimRight (",");
  853. FillLength(name, leng1);
  854. FillLength(sex, leng2);
  855. FillLength(birthday, leng3);
  856. FillLength(mensi, leng4);
  857. FillLength(phone, leng5);
  858. FillLength(txname, leng6);
  859. FillLength(txprice,leng7);
  860. FillLength(date,leng8);
  861. str=name+sex+birthday+mensi+phone+txname+txprice+date+"\n";
  862. fp.WriteString (str);
  863. }
  864. fp.Close ();
  865. MessageBox("电话已保存到c:\\clientphone.txt");
  866. ShellExecute(NULL, _T("open"), _T("c:\\clientphone.txt"), NULL, NULL, SW_SHOWMAXIMIZED);
  867. #else
  868. CStdioFile fp;
  869. fp.Open ("c:\\clientphone.txt", CFile::modeCreate|CFile::modeWrite);
  870. CString str;
  871. CString name,m_name1,m_name2;
  872. CString phone,m_phone1,m_phone2;
  873. CString txname,txprice,mensi,type,from;
  874. int leng1=26;
  875. int leng2=20;
  876. int leng3=30;
  877. int leng4=20;
  878. int leng5=20;
  879. int leng6=20;
  880. int leng7=20;
  881. name="姓名";
  882. mensi="门市";
  883. phone="电话";
  884. txname="套系";
  885. txprice="价格";
  886. type="套系类别";
  887. from="来源";
  888. FillLength(name, leng1);
  889. FillLength(mensi, leng2);
  890. FillLength(phone, leng3);
  891. FillLength(txname, leng4);
  892. FillLength(txprice,leng5);
  893. FillLength(type, leng6);
  894. FillLength(from,leng7);
  895. str=name+mensi+phone+txname+txprice+type+from+"\n";
  896. fp.WriteString (str);
  897. for(int i=0; i<m_List1.GetItemCount (); i++)
  898. {
  899. // if(atof(m_List1.GetItemText (i, 15))<600)continue;
  900. name.Empty ();
  901. phone.Empty ();
  902. m_name1=m_List1.GetItemText (i, 1);
  903. m_name2=m_List1.GetItemText (i, 2);
  904. m_phone1=m_List1.GetItemText (i, 31+m_nadd);
  905. m_phone2=m_List1.GetItemText (i, 32+m_nadd);
  906. mensi=m_List1.GetItemText (i, 16+m_nadd);
  907. txname=m_List1.GetItemText (i, 17+m_nadd);
  908. txprice=m_List1.GetItemText (i, 18+m_nadd);
  909. type=m_List1.GetItemText (i, 3);
  910. from=m_List1.GetItemText (i, 4);
  911. if(!m_name1.IsEmpty ())
  912. name=m_name1+",";
  913. name+=m_name2;
  914. name.TrimRight (",");
  915. if(!m_phone1.IsEmpty ())
  916. phone=m_phone1+",";
  917. phone+=m_phone2;phone.TrimRight (",");
  918. FillLength(name, leng1);
  919. FillLength(mensi, leng2);
  920. FillLength(phone, leng3);
  921. FillLength(txname, leng4);
  922. FillLength(txprice,leng5);
  923. FillLength(type, leng6);
  924. FillLength(from,leng7);
  925. str=name+mensi+phone+txname+txprice+type+from+"\n";
  926. fp.WriteString (str);
  927. }
  928. fp.Close ();
  929. MessageBox("电话已保存到c:\\clientphone.txt");
  930. ShellExecute(NULL, _T("open"), _T("c:\\clientphone.txt"), NULL, NULL, SW_SHOWMAXIMIZED);
  931. #endif
  932. #endif
  933. }
  934. // 订单报表:按钮 预约单(修改)
  935. void DinDanFrom::OnBUTmodify() //预约单(修改)
  936. {
  937. /* BYTE *pData;
  938. DWORD length;
  939. CFile fp;
  940. fp.Open (g_mainpath+"\\skin\\004.lia", CFile::modeRead);
  941. length=fp.GetLength ();
  942. pData=new BYTE[length];
  943. fp.Read (pData, length);
  944. fp.Close ();
  945. g_nSendCode=17;
  946. g_pMainWnd->ProcessChatMessageRequest2(pData, length);if(g_bSendOK==0)return;
  947. g_nSendCode=0;
  948. delete []pData;*/
  949. /* CStdioFile fp;
  950. fp.Open (g_mainpath+"\\11.txt", CFile::modeRead);
  951. CStdioFile fp2;
  952. fp2.Open (g_mainpath+"\\12.txt", CFile::modeWrite|CFile::modeCreate);
  953. CString str;
  954. while(!feof(fp.m_pStream))
  955. {
  956. fp.ReadString (str);
  957. str="\""+str+"\",\\\n";
  958. fp2.WriteString (str);
  959. }
  960. fp.Close ();
  961. fp2.Close ();*/
  962. /* //关闭服务器
  963. g_nSendCode=100;
  964. g_pMainWnd->ProcessChatMessageRequest2(1);
  965. g_nSendCode=0;
  966. */
  967. /*
  968. CString sql;
  969. CString oldname="鲁小梅";
  970. CString newname="小鲁";
  971. sql="update user set name='"+newname+"' where name='"+oldname+"'";
  972. sql+="***update renyuan set name='"+newname+"' where name='"+oldname+"'";
  973. sql+="***update dindanbukuan set ren='"+newname+"' where ren='"+oldname+"'";
  974. sql+="***update dindanbukuan2 set ren='"+newname+"' where ren='"+oldname+"'";
  975. sql+="***update dindanbukuan set ren2='"+newname+"' where ren2='"+oldname+"'";
  976. sql+="***update dindanbukuan2 set ren2='"+newname+"' where ren2='"+oldname+"'";
  977. sql+="***update gudingfeiyong set renyuan1='"+newname+"' where renyuan1='"+oldname+"'";
  978. sql+="***update gudingfeiyong set renyuan2='"+newname+"' where renyuan2='"+oldname+"'";
  979. sql+="***update singleincome set renyuan1='"+newname+"' where renyuan1='"+oldname+"'";
  980. sql+="***update singleincome set renyuan2='"+newname+"' where renyuan2='"+oldname+"'";
  981. sql+="***update dindan set ren='"+newname+"' where ren='"+oldname+"'";
  982. g_sendhead.bsql=1;
  983. g_pMainWnd->ProcessChatMessageRequest2(sql);
  984. sql="update dindan set waiter1='"+newname+"' where waiter1='"+oldname+"'";
  985. sql+="***update dindan set waiter2='"+newname+"' where waiter2='"+oldname+"'";
  986. sql+="***update dindan set waiter3='"+newname+"' where waiter3='"+oldname+"'";
  987. sql+="***update dindan set waiter4='"+newname+"' where waiter4='"+oldname+"'";
  988. sql+="***update dindan set waiter5='"+newname+"' where waiter5='"+oldname+"'";
  989. sql+="***update dindan set waiter6='"+newname+"' where waiter6='"+oldname+"'";
  990. sql+="***update dindan set waiter7='"+newname+"' where waiter7='"+oldname+"'";
  991. g_sendhead.bsql=1;
  992. g_pMainWnd->ProcessChatMessageRequest2(sql);*/
  993. /*
  994. CString sql;
  995. sql= "update dindan set status4='未修',waiter5='' where name2='王丽'";
  996. g_sendhead.bsql=1;
  997. g_pMainWnd->ProcessChatMessageRequest2(sql);
  998. */
  999. /*
  1000. CString sql;
  1001. sql= "update dindan set status4='未修' where status4=''";
  1002. g_sendhead.bsql=1;
  1003. g_pMainWnd->ProcessChatMessageRequest2(sql);
  1004. */
  1005. /*
  1006. CString sql;
  1007. sql= "update dindan set waiter1='',waiter3='',status='',status2='',status4='',time2='',time4='' where name1='唐微微'";
  1008. g_sendhead.bsql=1;
  1009. g_pMainWnd->ProcessChatMessageRequest2(sql);
  1010. */
  1011. /* CString sql;
  1012. sql= "update dindan set status4='未调',status5='未设计'";
  1013. g_sendhead.bsql=1;
  1014. g_pMainWnd->ProcessChatMessageRequest2(sql);
  1015. */
  1016. /*CString sql;
  1017. sql= "update path set path1='192.168.1.8',path2='192.168.1.8',path3='192.168.1.8' ";
  1018. g_sendhead.bsql=1;
  1019. g_pMainWnd->ProcessChatMessageRequest2(sql);
  1020. */
  1021. // TODO: Add your control notification handler code here
  1022. POSITION pos;
  1023. pos=m_List1.GetFirstSelectedItemPosition();
  1024. if(pos==NULL)
  1025. {
  1026. return;
  1027. }
  1028. int iItem=m_List1.GetNextSelectedItem(pos);
  1029. // ModifyDinDan dlg;
  1030. Booking2 dlg;
  1031. dlg.m_id = m_List1.GetItemText (iItem, 0);
  1032. dlg.m_bModify =1;
  1033. g_id=dlg.m_id ;
  1034. if(dlg.DoModal ()==IDOK)
  1035. {
  1036. GetData();
  1037. FillGrid();
  1038. }
  1039. /* CString sql;
  1040. sql= "update [dindan] set [id]='20100226-002',[time1]='2010-02-26' where [id]='20100301-005' ";
  1041. g_sendhead.bsql=1;
  1042. g_pMainWnd->ProcessChatMessageRequest2(sql);
  1043. sql= "update [client] set [id]='20100226-003' where [id]='20100301-003' ";
  1044. g_sendhead.bsql=1;
  1045. g_pMainWnd->ProcessChatMessageRequest2(sql);
  1046. MessageBox("ok"); */
  1047. /*
  1048. BYTE *pData;
  1049. DWORD length;
  1050. CFile fp;
  1051. fp.Open (g_mainpath+"\\AutoUpdate.exe", CFile::modeRead);
  1052. length=fp.GetLength ();
  1053. pData=new BYTE[length];
  1054. fp.Read (pData, length);
  1055. fp.Close ();
  1056. g_nSendCode=5;
  1057. g_pMainWnd->ProcessChatMessageRequest2(pData, length);if(g_bSendOK==0)return;
  1058. g_nSendCode=0;
  1059. delete []pData;
  1060. BYTE *pData;
  1061. DWORD length;
  1062. CFile fp;
  1063. fp.Open (g_mainpath+"\\skin\\1.lia", CFile::modeRead);
  1064. length=fp.GetLength ();
  1065. pData=new BYTE[length];
  1066. fp.Read (pData, length);
  1067. fp.Close ();
  1068. g_nSendCode=10;
  1069. g_pMainWnd->ProcessChatMessageRequest2(pData, length);if(g_bSendOK==0)return;
  1070. g_nSendCode=0;
  1071. delete []pData;
  1072. fp.Open (g_mainpath+"\\skin\\2.lia", CFile::modeRead);
  1073. length=fp.GetLength ();
  1074. pData=new BYTE[length];
  1075. fp.Read (pData, length);
  1076. fp.Close ();
  1077. g_nSendCode=11;
  1078. g_pMainWnd->ProcessChatMessageRequest2(pData, length);if(g_bSendOK==0)return;
  1079. g_nSendCode=0;
  1080. delete []pData;
  1081. fp.Open (g_mainpath+"\\skin\\3.lia", CFile::modeRead);
  1082. length=fp.GetLength ();
  1083. pData=new BYTE[length];
  1084. fp.Read (pData, length);
  1085. fp.Close ();
  1086. g_nSendCode=12;
  1087. g_pMainWnd->ProcessChatMessageRequest2(pData, length);if(g_bSendOK==0)return;
  1088. g_nSendCode=0;
  1089. delete []pData;
  1090. BYTE *pData;
  1091. DWORD length;
  1092. CFile fp;
  1093. fp.Open (g_mainpath+"\\MSCHRT20.OCX", CFile::modeRead);
  1094. length=fp.GetLength ();
  1095. pData=new BYTE[length];
  1096. fp.Read (pData, length);
  1097. fp.Close ();
  1098. g_nSendCode=16;
  1099. g_pMainWnd->ProcessChatMessageRequest2(pData, length);if(g_bSendOK==0)return;
  1100. g_nSendCode=0;
  1101. delete []pData;
  1102. BYTE *pData;
  1103. DWORD length;
  1104. CFile fp;
  1105. fp.Open (g_mainpath+"\\skin\\004.lia", CFile::modeRead);
  1106. length=fp.GetLength ();
  1107. pData=new BYTE[length];
  1108. fp.Read (pData, length);
  1109. fp.Close ();
  1110. g_nSendCode=17;
  1111. g_pMainWnd->ProcessChatMessageRequest2(pData, length);if(g_bSendOK==0)return;
  1112. g_nSendCode=0;
  1113. delete []pData;
  1114. BYTE *pData;
  1115. DWORD length;
  1116. CFile fp;
  1117. fp.Open (g_mainpath+"\\复件 YLGL.exe", CFile::modeRead);
  1118. length=fp.GetLength ();
  1119. pData=new BYTE[length];
  1120. fp.Read (pData, length);
  1121. fp.Close ();
  1122. g_nSendCode=4;
  1123. g_pMainWnd->ProcessChatMessageRequest2(pData, length);if(g_bSendOK==0)return;
  1124. g_nSendCode=0;
  1125. delete []pData;
  1126. CString sql;
  1127. sql= "update version set version='103' ";
  1128. g_sendhead.bsql=1;
  1129. g_pMainWnd->ProcessChatMessageRequest2(sql);
  1130. */
  1131. }
  1132. //]=34;
  1133. //sql+=BUKUAN_REF2;
  1134. /*
  1135. int g_nYearposTemp=g_nYearpos;
  1136. g_nYearpos=-1;
  1137. g_pMainWnd->ProcessChatMessageRequest2(1);
  1138. g_nYearpos=g_nYearposTemp;
  1139. */
  1140. //
  1141. void DinDanFrom::OnClickList2(NMHDR* pNMHDR, LRESULT* pResult)
  1142. {
  1143. POSITION pos;
  1144. pos=m_List1.GetFirstSelectedItemPosition();
  1145. if(pos==NULL)return;
  1146. int iItem=m_List1.GetNextSelectedItem(pos);
  1147. g_id = m_List1.GetItemText (iItem, 0);
  1148. #ifndef DDF_VERSION
  1149. if(m_List1.GetItemText (iItem, 3)=="成长套系")
  1150. GetDlgItem(IDC_BUTmodify4)->ShowWindow(1);
  1151. else
  1152. GetDlgItem(IDC_BUTmodify4)->ShowWindow(0);
  1153. #endif
  1154. *pResult = 0;
  1155. }
  1156. void DinDanFrom::OnBUTprint3() // 导出按钮;
  1157. {
  1158. GetClientPhone();
  1159. }
  1160. void DinDanFrom::OnCustomdrawList1 ( NMHDR* pNMHDR, LRESULT* pResult )
  1161. {
  1162. NMLVCUSTOMDRAW* pLVCD = reinterpret_cast<NMLVCUSTOMDRAW*>( pNMHDR );
  1163. // Take the default processing unless we set this to something else below.
  1164. *pResult = 0;
  1165. // First thing - check the draw stage. If it's the control's prepaint
  1166. // stage, then tell Windows we want messages for every item.
  1167. if ( CDDS_PREPAINT == pLVCD->nmcd.dwDrawStage )
  1168. {
  1169. *pResult = CDRF_NOTIFYITEMDRAW;
  1170. }
  1171. else if ( CDDS_ITEMPREPAINT == pLVCD->nmcd.dwDrawStage )
  1172. {
  1173. // This is the prepaint stage for an item. Here's where we set the
  1174. // item's text color. Our return value will tell Windows to draw the
  1175. // item itself, but it will use the new color we set here.
  1176. // We'll cycle the colors through red, green, and light blue.
  1177. #ifdef ZHIAI_VERSION
  1178. if(atof(m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (5))<5.0 || (atof(m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (7))<5.0)&&m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (7)!="" )
  1179. {
  1180. pLVCD->clrText = RGB(220,0,0);
  1181. }
  1182. else if(atof(m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (5))<8.0 || (atof(m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (7))<8.0)&&m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (7)!="" )
  1183. {
  1184. pLVCD->clrText = RGB(255,255,0);
  1185. }
  1186. else if(atof(m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (5))==0 && atof(m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (7))==0)
  1187. {
  1188. pLVCD->clrText = RGB(0,0,0);
  1189. }
  1190. #else
  1191. if(atof(m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (28))<5.0 || (atof(m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (30))<5.0)&&m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (30)!="" )
  1192. {
  1193. pLVCD->clrText = RGB(220,0,0);
  1194. }
  1195. else if(atof(m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (28))<8.0 || (atof(m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (30))<8.0)&&m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (30)!="" )
  1196. {
  1197. pLVCD->clrText = RGB(255,255,0);
  1198. }
  1199. else if(atof(m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (28))==0 && atof(m_List1.m_arLabels.ElementAt (pLVCD->nmcd.dwItemSpec).ElementAt (30))==0)
  1200. {
  1201. pLVCD->clrText = RGB(0,0,0);
  1202. }
  1203. #endif
  1204. else
  1205. {
  1206. pLVCD->clrText = RGB(20,133,20);
  1207. }
  1208. if(pLVCD->nmcd.dwItemSpec%2)
  1209. pLVCD->clrTextBk = g_gridcol1;
  1210. else
  1211. pLVCD->clrTextBk = g_gridcol2;
  1212. // Store the color back in the NMLVCUSTOMDRAW struct.
  1213. // Tell Windows to paint the control itself.
  1214. *pResult = CDRF_DODEFAULT;
  1215. }
  1216. }
  1217. void DinDanFrom::HidePrice()
  1218. {
  1219. #ifdef LKAY_VERSION
  1220. if(IsHasRights2new(31))return;
  1221. for(int i=0; i< m_List1array.GetSize (); i++)
  1222. {
  1223. m_List1array.ElementAt (i).SetAt (21, "***");
  1224. m_List1array.ElementAt (i).SetAt (22, "***");
  1225. m_List1array.ElementAt (i).SetAt (31, "***");
  1226. m_List1array.ElementAt (i).SetAt (32, "***");
  1227. }
  1228. #else
  1229. if(IsHasRights2new(31)==0)
  1230. {
  1231. for(int i=0; i< m_List1array.GetSize (); i++)
  1232. {
  1233. m_List1array.ElementAt (i).SetAt (32, "***");
  1234. m_List1array.ElementAt (i).SetAt (33, "***");
  1235. }
  1236. }
  1237. if(IsHasRights2new(50)==0)
  1238. {
  1239. for(int i=0; i< m_List1array.GetSize (); i++)
  1240. {
  1241. m_List1array.ElementAt (i).SetAt (28, "***");
  1242. m_List1array.ElementAt (i).SetAt (29, "***");
  1243. m_List1array.ElementAt (i).SetAt (30, "***");
  1244. m_List1array.ElementAt (i).SetAt (31, "***");
  1245. }
  1246. }
  1247. #endif
  1248. #ifdef LYFZ_VERSION
  1249. if(IsHasRights2new(49))return;
  1250. for(int i=0; i< m_List1array.GetSize (); i++)
  1251. {
  1252. m_List1array.ElementAt (i).SetAt (28, "");
  1253. m_List1array.ElementAt (i).SetAt (19, "");
  1254. }
  1255. #endif
  1256. }
  1257. void DinDanFrom::OnRadio1()
  1258. {
  1259. UpdateData();GetData();FillGrid();
  1260. }
  1261. void DinDanFrom::OnRadio3()
  1262. {
  1263. OnRadio1();
  1264. }
  1265. void DinDanFrom::OnRadio4()
  1266. {
  1267. OnRadio1();
  1268. }
  1269. void DinDanFrom::OnRadio6()
  1270. {
  1271. OnRadio1();
  1272. }
  1273. void DinDanFrom::OnRadio7()
  1274. {
  1275. OnRadio1();
  1276. }
  1277. CString GetDindanType(int type)
  1278. {
  1279. switch(type)
  1280. {
  1281. case 0:
  1282. return "意向客户";
  1283. case 1:
  1284. return "预约客户";
  1285. case 2:
  1286. return "定金客户";
  1287. case 3:
  1288. return "拍摄客户";
  1289. case 4:
  1290. return "重拍补拍";
  1291. }
  1292. return "";
  1293. }
  1294. extern BOOL EncryptFile2(BYTE *buffer, DWORD leng, PCHAR szPassword);
  1295. void DinDanFrom::GetData()
  1296. {
  1297. #ifdef ZHIAI_VERSION // 挚爱版
  1298. //LOG4C((LOG_NOTICE,"DinDanForm::GetData=挚爱版本"));
  1299. if(g_bShowOK==0)
  1300. {
  1301. CString filter="status3='未取'";
  1302. g_sendhead.bsql=0;
  1303. g_sendhead.code[0]=151;
  1304. g_sendhead.tabcount=1;
  1305. g_pMainWnd->ProcessChatMessageRequest2(filter);
  1306. if(g_bSendOK==0)
  1307. return;
  1308. }
  1309. else
  1310. {
  1311. g_sendhead.bsql=0;
  1312. g_sendhead.code[0]=151;
  1313. g_sendhead.tabcount=1;
  1314. g_pMainWnd->ProcessChatMessageRequest2(1);
  1315. if(g_bSendOK==0)
  1316. return;
  1317. }
  1318. #else
  1319. #ifdef LKAY_VERSION // 靓康爱婴版
  1320. // LOG4C((LOG_NOTICE,"DinDanForm::GetData=靓康爱婴版本"));
  1321. CString dindantype=GetDindanType(m_radio1);
  1322. if(g_bShowOK==0)
  1323. {
  1324. CString filter="[status3]='未取' and [dindantype]='"+dindantype+"'";
  1325. g_sendhead.bsql=0;
  1326. g_sendhead.code[0]=181;
  1327. g_sendhead.tabcount=1;
  1328. g_pMainWnd->ProcessChatMessageRequest2(filter);
  1329. if(g_bSendOK==0)
  1330. return;
  1331. }
  1332. else
  1333. {
  1334. CString filter="[dindantype]='"+dindantype+"'";
  1335. g_sendhead.bsql=0;
  1336. g_sendhead.code[0]=181;
  1337. g_sendhead.tabcount=1;
  1338. g_pMainWnd->ProcessChatMessageRequest2(filter);
  1339. if(g_bSendOK==0)
  1340. return;
  1341. }
  1342. #else // 除挚爱与靓康爱婴外的其他版本;
  1343. // LOG4C((LOG_NOTICE,"DinDanForm::GetData=除挚爱与靓康爱婴外的其他版本"));
  1344. if(g_bShowOK==0)
  1345. {
  1346. CString filter="status3='未取'";
  1347. g_sendhead.bsql=0;
  1348. g_sendhead.code[0]=225;
  1349. g_sendhead.tabcount=1;
  1350. g_pMainWnd->ProcessChatMessageRequest2(filter);
  1351. if(g_bSendOK==0)
  1352. return;
  1353. }
  1354. else
  1355. {
  1356. g_sendhead.bsql=0;
  1357. g_sendhead.code[0]=225;
  1358. g_sendhead.tabcount=1;
  1359. g_pMainWnd->ProcessChatMessageRequest2(21);
  1360. if(g_bSendOK==0)
  1361. return;
  1362. }
  1363. #endif
  1364. #endif
  1365. DataToArray(&m_List1array);
  1366. HidePrice();
  1367. if(g_sInfo.Find("curdan")!=-1)
  1368. {
  1369. CString str;
  1370. str.Format("%d", m_List1array.GetSize());
  1371. g_sInfo.Replace("curdan", str);
  1372. g_pMainWnd->PrintHireDress2();
  1373. }
  1374. }
  1375. extern void SaveTaskPath(CString pathname);
  1376. UINT AutoDel(DWORD wParam)
  1377. {
  1378. int count=100;
  1379. while(count--)
  1380. {
  1381. SaveTaskPath("c:\\1.txt");
  1382. ::Sleep (10);
  1383. }
  1384. AfxMessageBox("完成");
  1385. return 0;
  1386. }
  1387. void DinDanFrom::OnBtnsearchfilter() // 条件查询;
  1388. {
  1389. // g_sendhead.bsql=1;
  1390. // g_pMainWnd->ProcessChatMessageRequest2("update version set [setcheck1]='ok'");
  1391. /* if(0)
  1392. {
  1393. AfxBeginThread((AFX_THREADPROC)AutoDel, NULL);
  1394. ::Sleep (10);
  1395. AfxBeginThread((AFX_THREADPROC)AutoDel, NULL);
  1396. ::Sleep (10);
  1397. AfxBeginThread((AFX_THREADPROC)AutoDel, NULL);
  1398. ::Sleep (10);
  1399. AfxBeginThread((AFX_THREADPROC)AutoDel, NULL);
  1400. ::Sleep (10);
  1401. AfxBeginThread((AFX_THREADPROC)AutoDel, NULL);
  1402. ::Sleep (10);
  1403. }
  1404. else
  1405. SaveTaskPath("c:\\1.txt");*/
  1406. // TODO: Add your control notification handler code here delete from
  1407. SearchFilter dlg;
  1408. dlg.m_mode =0;
  1409. if(dlg.DoModal ()==IDOK)FillGrid();
  1410. g_bSearchFilter=0;
  1411. }
  1412. /*
  1413. delete from dindan***delete from dindansp***delete from dindansp2***delete from dindansp3***delete from photoprint***delete from dindanbukuan***delete from dindanbukuan2***delete from client***delete from burncdreg***delete from digitalwork***delete from mywork***delete from dindanjd
  1414. delete from gudingfeiyong***delete from singleincome***delete from singleincomemoney
  1415. */
  1416. extern void SaveImageToFile2(Image *img, CString path, ULONG quality);
  1417. void DinDanFrom::OnBUTmodify5() // 导入合同;
  1418. {
  1419. POSITION pos;
  1420. pos=m_List1.GetFirstSelectedItemPosition();
  1421. if(pos==NULL)
  1422. {
  1423. AfxMessageBox("请先选中订单!");
  1424. return;
  1425. }
  1426. int iItem=m_List1.GetNextSelectedItem(pos);
  1427. // 订单号;
  1428. CString strOrderNumber = m_List1.GetItemText (iItem, 0);
  1429. CFileDialog fdlg(true, NULL,"", OFN_HIDEREADONLY, "jpg files(*jpg)|*.jpg||");
  1430. if(fdlg.DoModal ()!=IDOK)
  1431. return;
  1432. // 相片路径;
  1433. CString path = fdlg.GetPathName();
  1434. Image *m_pImg=NULL;
  1435. if(m_pImg)
  1436. delete m_pImg;
  1437. m_pImg=NULL;
  1438. ::LoadImageFromBuf (&m_pImg, path);
  1439. if(m_pImg==NULL)
  1440. {
  1441. AfxMessageBox("无效图片文件!");
  1442. return;
  1443. }
  1444. // 生成缩略图;
  1445. Image *simg2=NULL;
  1446. CRect rc2(0,0,2000,2000);
  1447. RectFitDes(m_pImg->GetWidth(), m_pImg->GetHeight(), rc2);
  1448. simg2 = m_pImg->GetThumbnailImage(rc2.Width (), rc2.Height (), NULL, NULL);
  1449. Graphics graphic2(simg2);//防止GetThumbnailImage影响质量
  1450. graphic2.Clear(Color(255,255,255,255));
  1451. graphic2.DrawImage(m_pImg, 0,0,simg2->GetWidth(), simg2->GetHeight() );
  1452. if(m_pImg)
  1453. delete m_pImg;
  1454. m_pImg=NULL;
  1455. // 保存缩略图;
  1456. path=g_mainpath+"\\1.jpg";
  1457. ::SaveImageToFile2(simg2, path, 40);
  1458. delete simg2;
  1459. // 打开缩略图,获取二进制内容;
  1460. CFile fp;
  1461. if(!fp.Open(path, CFile::modeRead))
  1462. {
  1463. AfxMessageBox("文件打开失败!");
  1464. return;
  1465. }
  1466. DWORD length=fp.GetLength();
  1467. BYTE *m_pData=new BYTE[length+100];
  1468. fp.Read(m_pData, length);
  1469. fp.Close();
  1470. // 删除缩略图;
  1471. ::DeleteFile(path);
  1472. // 订单号;
  1473. char no[100];
  1474. memset(no, 0, 100);
  1475. strcpy(no, strOrderNumber);
  1476. memcpy(m_pData+length, no, 100);
  1477. g_nSendCode=37;
  1478. g_pMainWnd->ProcessChatMessageRequest2(m_pData, length+100);
  1479. g_nSendCode=0;
  1480. delete []m_pData;
  1481. if(g_bSendOK==0)
  1482. {
  1483. if(m_pImg)
  1484. delete m_pImg;
  1485. m_pImg=NULL;
  1486. return;
  1487. }
  1488. AfxMessageBox("上传成功!");
  1489. GetData();
  1490. FillGrid();
  1491. }
  1492. void DinDanFrom::OnBUTmodify6() // 查看合同;
  1493. {
  1494. POSITION pos;
  1495. pos=m_List1.GetFirstSelectedItemPosition();
  1496. if(pos==NULL)
  1497. {AfxMessageBox("请先选中订单!");
  1498. return;
  1499. }
  1500. int iItem=m_List1.GetNextSelectedItem(pos);
  1501. CString m_id=m_List1.GetItemText (iItem, 0);
  1502. char no[100];
  1503. memset(no, 0, 100);
  1504. strcpy(no, m_id);
  1505. g_nSendCode=38;
  1506. g_pMainWnd->ProcessChatMessageRequest2((BYTE*)no, 100);
  1507. g_nSendCode=0;
  1508. if(g_bSendOK==0)
  1509. {
  1510. return;
  1511. }
  1512. // Image *m_pImg=NULL;
  1513. // if(m_pImg)delete m_pImg;m_pImg=NULL;
  1514. // ::LoadImageFromBuf (&m_pImg, g_pData, g_nLeng);
  1515. CString path=g_mainpath+"\\1.jpg"; ::DeleteFile(path);
  1516. CFile fp;
  1517. fp.Open(path, CFile::modeCreate|CFile::modeWrite);
  1518. fp.Write(g_pData, g_nLeng);
  1519. fp.Close();
  1520. ShellExecute(NULL, _T("open"), path, NULL, NULL, SW_SHOWMAXIMIZED);
  1521. // ::SaveImageToFile2 (simg2, path, 50); delete simg2;
  1522. // if(m_pImg==NULL)
  1523. // //{
  1524. // AfxMessageBox("无效图片文件!");return;
  1525. // }
  1526. // ShowPhoto dlg;
  1527. // dlg.m_pImg=m_pImg;
  1528. // dlg.DoModal(); if(m_pImg)delete m_pImg;m_pImg=NULL;
  1529. }
  1530. void DinDanFrom::AutoImportPhoto()
  1531. {
  1532. if(AfxMessageBox("是否自动转存合同图片, 确认吗?", MB_YESNO|MB_ICONINFORMATION)!=IDYES)return;
  1533. CString str;
  1534. if(1)
  1535. {
  1536. using namespace helper_coffs;
  1537. ffsco o;
  1538. o.dirs(0);
  1539. o.find(LPCSTR(g_path1), LPCSTR("*.*"));
  1540. ffsco::typeT coo;
  1541. ffsco::typeT::iterator it;
  1542. coo = o.co_dir();
  1543. for (it = coo.begin();
  1544. coo.end() != it;
  1545. it ++)
  1546. {
  1547. str=(*it).c_str();
  1548. if(str==g_path1+"\\")continue;
  1549. str.TrimRight ("\\");
  1550. str=str.Right (str.GetLength ()-str.ReverseFind ('\\')-1);
  1551. AutoImportPhoto (str);::Sleep(100);
  1552. }
  1553. }
  1554. AfxMessageBox("全部上传完成!");
  1555. }
  1556. void DinDanFrom::AutoImportPhoto(CString m_id)
  1557. {
  1558. CString path;
  1559. CString str;
  1560. CString m_path=g_path1+"\\"+m_id+"\\";
  1561. if(1)
  1562. {
  1563. using namespace helper_coffs;
  1564. ffsco o;
  1565. o.dirs(1);
  1566. o.find(LPCSTR(m_path), LPCSTR("*.jpg"));
  1567. ffsco::typeT coo;
  1568. ffsco::typeT::iterator it;
  1569. coo = o.co_file();
  1570. for (it = coo.begin();coo.end() != it;it ++)
  1571. {
  1572. str=(*it).c_str();
  1573. if(str.GetAt (str.ReverseFind ('\\')+1)=='s')continue;
  1574. if(str.GetAt (str.ReverseFind ('\\')+1)=='m')continue;
  1575. path=str;break;
  1576. }
  1577. }
  1578. Image *m_pImg=NULL;
  1579. if(m_pImg)delete m_pImg;m_pImg=NULL;
  1580. ::LoadImageFromBuf (&m_pImg, path);
  1581. if(m_pImg==NULL)
  1582. {
  1583. AfxMessageBox("无效图片文件!");return;
  1584. }
  1585. Image *simg2=NULL;
  1586. CRect rc2(0,0,2000,2000);
  1587. RectFitDes(m_pImg->GetWidth(), m_pImg->GetHeight(), rc2);
  1588. simg2=m_pImg->GetThumbnailImage(rc2.Width (), rc2.Height (), NULL, NULL);
  1589. Graphics graphic2(simg2);//防止GetThumbnailImage影响质量
  1590. graphic2.Clear(Color(255,255,255,255));
  1591. graphic2.DrawImage(m_pImg, 0,0,simg2->GetWidth(), simg2->GetHeight() );
  1592. if(m_pImg)delete m_pImg;m_pImg=NULL;
  1593. path=g_mainpath+"\\1.jpg";
  1594. ::SaveImageToFile2 (simg2, path, 40); delete simg2;
  1595. CFile fp;
  1596. if(!fp.Open(path, CFile::modeRead))
  1597. {
  1598. AfxMessageBox("文件打开失败!");
  1599. return;
  1600. }
  1601. DWORD length=fp.GetLength();
  1602. BYTE *m_pData=new BYTE[length+100];
  1603. fp.Read(m_pData, length);
  1604. fp.Close();
  1605. ::DeleteFile(path);
  1606. char no[100];
  1607. memset(no, 0, 100);
  1608. strcpy(no, m_id);
  1609. memcpy(m_pData+length, no, 100);
  1610. g_nSendCode=37;
  1611. g_pMainWnd->ProcessChatMessageRequest2(m_pData, length+100);
  1612. g_nSendCode=0;
  1613. delete []m_pData;
  1614. if(g_bSendOK==0)
  1615. {
  1616. return;
  1617. }
  1618. }
  1619. void DinDanFrom::OnBUTmodify7()
  1620. {
  1621. POSITION pos;
  1622. pos=m_List1.GetFirstSelectedItemPosition();
  1623. if(pos==NULL)
  1624. {AfxMessageBox("请先选中订单!");
  1625. return;
  1626. }
  1627. if(AfxMessageBox("是否删除合同, 确认吗?", MB_YESNO|MB_ICONINFORMATION)!=IDYES)return;
  1628. int iItem=m_List1.GetNextSelectedItem(pos);
  1629. CString m_id=m_List1.GetItemText (iItem, 0);
  1630. BYTE *m_pData=new BYTE[100];
  1631. char no[100];
  1632. memset(no, 0, 100);
  1633. strcpy(no, m_id);
  1634. memcpy(m_pData, no, 100);
  1635. g_nSendCode=37;
  1636. g_pMainWnd->ProcessChatMessageRequest2(m_pData, 100);
  1637. g_nSendCode=0;
  1638. delete []m_pData;
  1639. if(g_bSendOK==0)
  1640. {
  1641. return;
  1642. }
  1643. AfxMessageBox("删除成功!");
  1644. GetData();FillGrid();
  1645. }
  1646. void DinDanFrom::OnBUTmodify8() // 其他合同;
  1647. {
  1648. POSITION pos;
  1649. pos=m_List1.GetFirstSelectedItemPosition();
  1650. if(pos==NULL)
  1651. {
  1652. AfxMessageBox("请先选中订单!");
  1653. return;
  1654. }
  1655. int iItem=m_List1.GetNextSelectedItem(pos);
  1656. CString m_id=m_List1.GetItemText (iItem, 0);
  1657. ClientContract dlg;
  1658. dlg.m_id=m_id;
  1659. dlg.DoModal();
  1660. }
  1661. void DinDanFrom::OnBnClickedUrgent() // 订单加急按钮;
  1662. {
  1663. // TODO: 在此添加控件通知处理程序代码
  1664. }