MainFrm.h 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244
  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. #ifdef 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 PrintHireDress2();
  79. void PrintHireDress(CString no);
  80. void PrintHireDress_01(CString strOrderNumber); // Jeff add.2014.09.02
  81. void PrintThumbNail(CStringArray *array, CString client, BOOL bDir, CString m_size);
  82. void PrintDailyForm(CArray<CStringArray, CStringArray>*Listarray, CString title, CString info);
  83. void PrintLoginForm(CArray<CStringArray, CStringArray>*Listarray, CString title, CString info);
  84. void PrintTakeForm(CArray<CStringArray, CStringArray>*Listarray);
  85. void PrintTakeForm1(CArray<CStringArray, CStringArray>*Listarray);
  86. void PrintTakeForm2(CArray<CStringArray, CStringArray>*Listarray);
  87. void PrintTakeForm3(CArray<CStringArray, CStringArray>*Listarray);
  88. void PrintTakeForm4(CArray<CStringArray, CStringArray>*Listarray);
  89. void PrintTakeForm5(CArray<CStringArray, CStringArray>*Listarray);
  90. void PrintDinDan(CString strOrderNumber);
  91. void PrintDinDan2(CString strOrderNumber);
  92. void PrintDinDan3(CString strOrderNumber);
  93. void PrintDinDan4(CString strOrderNumber);
  94. void PrintDinDan5(CString strOrderNumber);
  95. void PrintDinDan6(CString strOrderNumber);
  96. void PrintFlowChart2(CString strOrderNumber);
  97. void PrintFlowChart3(CString strOrderNumber);
  98. void PrintFlowChart3_20151116(CString strOrderNumber);
  99. void PrintFlowChart4(CString strOrderNumber);
  100. void PrintReceipt2(CString strOrderNumber);
  101. void PrintFlowChart(CString strOrderNumber);
  102. void PrintFlowChart3LKAY(CString strOrderNumber);
  103. void PrintReceipt(CStringArray *pArray);
  104. void PrintReceipt_01(CStringArray *pArray); // Jeff添加支付方式
  105. void PrintReceipt_02(CStringArray *pArray,CPrintRX *pPrinter = NULL,const int &nCount = 1,const BOOL bPrintImmediately = FALSE); // Jeff添加支付方式
  106. void PrintReceipt2(CStringArray *pArray);
  107. void PrintReceipt3(CString strOrderNumber, CStringArray *pArray, float money); // 打印收据
  108. // 打印会员充值记录;
  109. void PrintRechargeRecord(CStringArray *pArryRechargeRecod);
  110. CString GetDanWei(CString name, CArray<CStringArray, CStringArray>*array);
  111. BOOL IsCtrlDown();
  112. BOOL IsShiftDown();
  113. void LinkClick(CString str, int nParent);
  114. void ResetTimer();
  115. void NewMenu2();
  116. void OnCommandMenu(UINT nID); //响应菜单命令
  117. void OnClose2();
  118. void OnHistory(UINT nID);
  119. void OnBranchData(UINT nID);
  120. void OnBranchData2(UINT nID);
  121. void AddHistoryMenu(CArray<CStringArray, CStringArray>*hisyeararray);
  122. void AddBranchMenu(CArray<CStringArray, CStringArray>*branchArray);
  123. void GetOcx();
  124. void ToPhotoPrint();
  125. // void SetSelFolder(int pos);
  126. void GetSkin();
  127. void AutoUpdate();
  128. void OnOutbarNotify(CString str);
  129. /*********************************************************************/
  130. void ProcessChatMessageRequest2(BYTE code);
  131. void ProcessChatMessageRequest2(CString sql);
  132. void ProcessChatMessageRequest2(BYTE *pData, int length);
  133. void InsideMsg();
  134. int GetPort();
  135. // Jeff:以下6个连接,每个连接的服务器都不一样;
  136. BOOL OnConnect();
  137. BOOL OnConnectIP();
  138. BOOL OnConnectBranch();
  139. BOOL OnConnectBranch2();
  140. BOOL OnConnect2();
  141. BOOL OnConnect3();
  142. // .断开与服务器的连接,并设置连接id为INVALID_SOCKET;
  143. void OnDisconnect();
  144. // .获取当前客户端与服务端的连接id;
  145. DWORD GetConnectionID();
  146. // .当连接服务器成功后,服务器返回当前与客户端连接的SOCKET值,用该值设置为连接id;
  147. void SetConnectionID(DWORD dwConnection);
  148. // .用户登陆服务器请求;
  149. BOOL ProcessLoginRequest();
  150. // .用户登陆服务请求,服务器的响应返回;
  151. void ProcessLoginResponse(void *pLoginResult);
  152. // .客户端登陆后,聊天数据请求;
  153. BOOL ProcessChatMessageRequest(void *szDataBuf, int nDataLen);
  154. // .客户端登陆后,聊天数据请求,服务端的响应返回;
  155. void ProcessChatMessageResponse(void *pResponse);
  156. // .客户端的网络事件接收处理;
  157. void ProcessNetEvent(int nEventType, void *pRecvMsg, DWORD dwDataLen);
  158. #if USE_SHARE_FLORD
  159. // .获取NetShareInfo表;
  160. BOOL GetSharePathInfo();
  161. #endif
  162. afx_msg LRESULT OnKernelSendMessaage(WPARAM wp, LPARAM lp);
  163. };
  164. #endif // !defined(AFX_MAINFRM_H__2486F51E_8985_401E_AB91_D618397AED05__INCLUDED_)
  165. /************************************************************************/
  166. /*
  167. //////////////////////////////////////////////////////////////////////////
  168. 客户端通信对象:
  169. CClientTunnel m_tClientTunnel
  170. 第一步,调用以下连接服务器函数;
  171. BOOL OnConnect();
  172. BOOL OnConnectIP();
  173. BOOL OnConnectBranch();
  174. BOOL OnConnectBranch2();
  175. BOOL OnConnect2();
  176. BOOL OnConnect3();
  177. 第二步,登录服务器,事件处理,响应返回;
  178. BOOL ProcessLoginRequest();
  179. void ProcessNetEvent(int nEventType, void *pRecvMsg, DWORD dwDataLen);
  180. void ProcessLoginResponse(void *pLoginResult);
  181. 第三步;
  182. BOOL ProcessChatMessageRequest(void *szDataBuf, int nDataLen);
  183. void ProcessNetEvent(int nEventType, void *pRecvMsg, DWORD dwDataLen);
  184. void ProcessChatMessageResponse(void *pResponse);
  185. 第四步,处理完毕,断开连接;
  186. void OnDisconnect();
  187. //////////////////////////////////////////////////////////////////////////
  188. 1.CMainFrame::OnCreate() 中调用 SetTimer(1,NULL,10);来登录服务器;
  189. 2.CMainFrame::OnTimer()中, 执行welcome dlg, 且此时g_bNoLoginLia 为 0(skin文件夹里有5.lia则为0,否则为1),则执行Login3 dlg;
  190. 3.welcome::OnTimer()中,正常情况下g_bGenBranchData为0,则g_nSendCode被设置为211;
  191. 注:g_nSendCode在服务端名称是dwToUserID.
  192. g_nSendCode=211: 更新 \服务端\skin\ 文件夹下的大小变更的文件到客户端去;
  193. g_nSendCode=21: 也是更新,处理方式不一样;
  194. 4.welcome::OnTimer()里调用了CMainFrame::ProcessChatMessageRequest2,ProcessChatMessageRequest2再调用SendDataDlg dlg;
  195. 5.SendDataDlg::OnTimer里调用CConnectDlg dlg 进行连接服务器和登陆服务器的动作;
  196. 6.CConnectDlg::OnTimer里调用CMainFrame::OnConnect();
  197. 7.CMainFrame::OnConnect(),里连接了服务器,然后调用CMainFrame::ProcessLoginRequest()登录服务器;
  198. 8.最后CMainFrame::ProcessChatMessageRequest2里启动SetTimer(2,g_ntimeout,NULL)来断开连接;
  199. */
  200. /************************************************************************/