MainFrm.h 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243
  1. // MainFrm.h : interface of the CMainFrame class
  2. //
  3. /////////////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_MAINFRM_H__2486F51E_8985_401E_AB91_D618397AED05__INCLUDED_)
  5. #define AFX_MAINFRM_H__2486F51E_8985_401E_AB91_D618397AED05__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. #include "BCMenu.h"
  10. #include "TrueColorToolBar.h"
  11. #include "MyToolBar.h"
  12. #include "MyMdi.H"
  13. #include "ClientTunnel.h"
  14. #include "ClientWnd.h"
  15. #include "MainFrimDlg2.h"
  16. #include "PrintRX.h"
  17. class CMainFrame : public CMDIFrameWnd
  18. {
  19. HICON m_hIcon;
  20. protected: // create from serialization only
  21. DECLARE_DYNCREATE(CMainFrame)
  22. MainFrimDlg2 *m_pMainFrimDlg2; //
  23. BCMenu m_menuXP; // 菜单
  24. /* 以下两类,都是继承CTooBar */
  25. CTrueColorToolBar m_wndToolBar; //
  26. MyToolBar m_wndToolBar2; //
  27. public:
  28. BOOL m_bCheckF2F3;
  29. CMainFrame();
  30. CMyMdi m_Mdi; //
  31. CStatusBar m_wndStatusBar; // 状态栏
  32. CClientWnd m_wndClient; // 客户显示区域
  33. CClientTunnel m_tClientTunnel; // 通信对象
  34. DWORD m_dwConnectionID; // 通信连接id
  35. // Overrides
  36. public:
  37. virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
  38. virtual BOOL PreTranslateMessage(MSG* pMsg);
  39. //}}AFX_VIRTUAL
  40. // Implementation
  41. public:
  42. HMENU NewMenu();
  43. virtual ~CMainFrame();
  44. #ifdef _DEBUG
  45. virtual void AssertValid() const;
  46. virtual void Dump(CDumpContext& dc) const;
  47. #endif
  48. // Generated message map functions
  49. protected:
  50. afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  51. afx_msg void OnDestroy();
  52. afx_msg void OnClose();
  53. afx_msg void OnTimer(UINT nIDEvent);
  54. afx_msg void Onchoosephotoskin();
  55. afx_msg void OnPath();
  56. afx_msg void OnServer();
  57. afx_msg void OnShowhis();
  58. afx_msg void OnStaffAchievementShow();
  59. afx_msg void OnAutodelphoto();
  60. afx_msg void Onphotomanage();
  61. afx_msg void OnCompanyinfo();
  62. afx_msg void OnHelpfile();
  63. afx_msg void OnPhotobak();
  64. afx_msg void OnTaoxifg();
  65. afx_msg void OnShowBakState();
  66. afx_msg void OnLog();
  67. //}}AFX_MSG
  68. #if defined(VC70) || defined(VC60)
  69. afx_msg UINT OnNcHitTest(CPoint point);
  70. #else
  71. afx_msg LRESULT OnNcHitTest(CPoint point);
  72. #endif
  73. afx_msg void OnNcLButtonDblClk(UINT nFlags, CPoint point);
  74. DECLARE_MESSAGE_MAP()
  75. public:
  76. void ShowMonthForm2();
  77. BOOL OnConnectLYFZ();
  78. void PrintHireDress(CString no);
  79. void PrintHireDress_01(CString strOrderNumber); // Jeff add.2014.09.02
  80. void PrintThumbNail(CStringArray *array, CString client, BOOL bDir, CString m_size);
  81. void PrintDailyForm(CArray<CStringArray, CStringArray>*Listarray, CString title, CString info);
  82. void PrintLoginForm(CArray<CStringArray, CStringArray>*Listarray, CString title, CString info);
  83. void PrintTakeForm(CArray<CStringArray, CStringArray>*Listarray);
  84. void PrintTakeForm1(CArray<CStringArray, CStringArray>*Listarray);
  85. void PrintTakeForm2(CArray<CStringArray, CStringArray>*Listarray);
  86. void PrintTakeForm3(CArray<CStringArray, CStringArray>*Listarray);
  87. void PrintTakeForm4(CArray<CStringArray, CStringArray>*Listarray);
  88. void PrintTakeForm5(CArray<CStringArray, CStringArray>*Listarray);
  89. void PrintDinDan(CString strOrderNumber);
  90. void PrintDinDan2(CString strOrderNumber);
  91. void PrintDinDan3(CString strOrderNumber);
  92. void PrintDinDan4(CString strOrderNumber);
  93. void PrintDinDan5(CString strOrderNumber);
  94. void PrintDinDan6(CString strOrderNumber);
  95. void PrintFlowChart2(CString strOrderNumber);
  96. void PrintFlowChart3(CString strOrderNumber);
  97. void PrintFlowChart3_20151116(CString strOrderNumber);
  98. void PrintFlowChart4(CString strOrderNumber);
  99. void PrintReceipt2(CString strOrderNumber);
  100. void PrintFlowChart(CString strOrderNumber);
  101. void PrintFlowChart3LKAY(CString strOrderNumber);
  102. void PrintReceipt(CStringArray *pArray);
  103. void PrintReceipt_01(CStringArray *pArray); // Jeff添加支付方式
  104. void PrintReceipt_02(CStringArray *pArray,CPrintRX *pPrinter = NULL,const int &nCount = 1,const BOOL bPrintImmediately = FALSE); // Jeff添加支付方式
  105. void PrintReceipt2(CStringArray *pArray);
  106. void PrintReceipt3(CString strOrderNumber, CStringArray *pArray, float money); // 打印收据
  107. // 打印会员充值记录;
  108. void PrintRechargeRecord(CStringArray *pArryRechargeRecod);
  109. CString GetDanWei(CString name, CArray<CStringArray, CStringArray>*array);
  110. BOOL IsCtrlDown();
  111. BOOL IsShiftDown();
  112. void LinkClick(CString str, int nParent);
  113. void ResetTimer();
  114. void NewMenu2();
  115. void OnCommandMenu(UINT nID); //响应菜单命令
  116. void OnClose2();
  117. void OnHistory(UINT nID);
  118. void OnBranchData(UINT nID);
  119. void OnBranchData2(UINT nID);
  120. void AddHistoryMenu(CArray<CStringArray, CStringArray>*hisyeararray);
  121. void AddBranchMenu(CArray<CStringArray, CStringArray>*branchArray);
  122. void GetOcx();
  123. void ToPhotoPrint();
  124. // void SetSelFolder(int pos);
  125. void GetSkin();
  126. void AutoUpdate();
  127. void OnOutbarNotify(CString str);
  128. /*********************************************************************/
  129. void ProcessChatMessageRequest2(BYTE code);
  130. void ProcessChatMessageRequest2(CString sql);
  131. void ProcessChatMessageRequest2(BYTE *pData, int length);
  132. void InsideMsg();
  133. int GetPort();
  134. // Jeff:以下6个连接,每个连接的服务器都不一样;
  135. BOOL OnConnect();
  136. BOOL OnConnectIP();
  137. BOOL OnConnectBranch();
  138. BOOL OnConnectBranch2();
  139. BOOL OnConnect2();
  140. BOOL OnConnect3();
  141. // .断开与服务器的连接,并设置连接id为INVALID_SOCKET;
  142. void OnDisconnect();
  143. // .获取当前客户端与服务端的连接id;
  144. DWORD GetConnectionID();
  145. // .当连接服务器成功后,服务器返回当前与客户端连接的SOCKET值,用该值设置为连接id;
  146. void SetConnectionID(DWORD dwConnection);
  147. // .用户登陆服务器请求;
  148. BOOL ProcessLoginRequest();
  149. // .用户登陆服务请求,服务器的响应返回;
  150. void ProcessLoginResponse(void *pLoginResult);
  151. // .客户端登陆后,聊天数据请求;
  152. BOOL ProcessChatMessageRequest(void *szDataBuf, int nDataLen);
  153. // .客户端登陆后,聊天数据请求,服务端的响应返回;
  154. void ProcessChatMessageResponse(void *pResponse);
  155. // .客户端的网络事件接收处理;
  156. void ProcessNetEvent(int nEventType, void *pRecvMsg, DWORD dwDataLen);
  157. #if USE_SHARE_FLORD
  158. // .获取NetShareInfo表;
  159. BOOL GetSharePathInfo();
  160. #endif
  161. afx_msg LRESULT OnKernelSendMessaage(WPARAM wp, LPARAM lp);
  162. };
  163. #endif // !defined(AFX_MAINFRM_H__2486F51E_8985_401E_AB91_D618397AED05__INCLUDED_)
  164. /************************************************************************/
  165. /*
  166. //////////////////////////////////////////////////////////////////////////
  167. 客户端通信对象:
  168. CClientTunnel m_tClientTunnel
  169. 第一步,调用以下连接服务器函数;
  170. BOOL OnConnect();
  171. BOOL OnConnectIP();
  172. BOOL OnConnectBranch();
  173. BOOL OnConnectBranch2();
  174. BOOL OnConnect2();
  175. BOOL OnConnect3();
  176. 第二步,登录服务器,事件处理,响应返回;
  177. BOOL ProcessLoginRequest();
  178. void ProcessNetEvent(int nEventType, void *pRecvMsg, DWORD dwDataLen);
  179. void ProcessLoginResponse(void *pLoginResult);
  180. 第三步;
  181. BOOL ProcessChatMessageRequest(void *szDataBuf, int nDataLen);
  182. void ProcessNetEvent(int nEventType, void *pRecvMsg, DWORD dwDataLen);
  183. void ProcessChatMessageResponse(void *pResponse);
  184. 第四步,处理完毕,断开连接;
  185. void OnDisconnect();
  186. //////////////////////////////////////////////////////////////////////////
  187. 1.CMainFrame::OnCreate() 中调用 SetTimer(1,NULL,10);来登录服务器;
  188. 2.CMainFrame::OnTimer()中, 执行welcome dlg, 且此时g_bNoLoginLia 为 0(skin文件夹里有5.lia则为0,否则为1),则执行Login3 dlg;
  189. 3.welcome::OnTimer()中,正常情况下g_bGenBranchData为0,则g_nSendCode被设置为211;
  190. 注:g_nSendCode在服务端名称是dwToUserID.
  191. g_nSendCode=211: 更新 \服务端\skin\ 文件夹下的大小变更的文件到客户端去;
  192. g_nSendCode=21: 也是更新,处理方式不一样;
  193. 4.welcome::OnTimer()里调用了CMainFrame::ProcessChatMessageRequest2,ProcessChatMessageRequest2再调用SendDataDlg dlg;
  194. 5.SendDataDlg::OnTimer里调用CConnectDlg dlg 进行连接服务器和登陆服务器的动作;
  195. 6.CConnectDlg::OnTimer里调用CMainFrame::OnConnect();
  196. 7.CMainFrame::OnConnect(),里连接了服务器,然后调用CMainFrame::ProcessLoginRequest()登录服务器;
  197. 8.最后CMainFrame::ProcessChatMessageRequest2里启动SetTimer(2,g_ntimeout,NULL)来断开连接;
  198. */
  199. /************************************************************************/