CTuikuanWnd.h 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. #pragma once
  2. #include "../pch/pch.h"
  3. class CValueWnd;
  4. class CTuikuanWnd : public CWindowWnd, public INotifyUI, public IMessageFilterUI
  5. {
  6. public:
  7. CTuikuanWnd()
  8. {
  9. }
  10. LPCTSTR GetWindowClassName() const
  11. {
  12. return _T("UITuikuanFrame");
  13. };
  14. UINT GetClassStyle() const
  15. {
  16. return UI_CLASSSTYLE_DIALOG;
  17. };
  18. void OnFinalMessage(HWND /*hWnd*/)
  19. {
  20. //m_pm.RemovePreMessageFilter(this);
  21. delete this;
  22. };
  23. void setValueWnd(CValueWnd* valueWnd)
  24. {
  25. m_valueWnd = valueWnd;
  26. }
  27. void Init();
  28. void Notify(TNotifyUI& msg);
  29. LRESULT OnCreate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  30. LRESULT OnClose(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  31. LRESULT OnDestroy(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  32. LRESULT OnNcActivate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  33. LRESULT OnNcCalcSize(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  34. LRESULT OnNcPaint(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  35. LRESULT OnNcHitTest(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  36. LRESULT OnSize(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  37. LRESULT OnMouseMove(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  38. LRESULT OnTimer(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  39. LRESULT OnTuikuanNeedPassword(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  40. LRESULT OnTuikuanSuccess(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  41. LRESULT OnTuikuanFail(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  42. LRESULT HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
  43. LRESULT MessageHandler(UINT uMsg, WPARAM wParam, LPARAM lParam, bool& bHandled);
  44. void InitMoney(std::wstring value);
  45. void UpdateFocus();
  46. //点击确认,开始执行收款
  47. void StartTuikuan();
  48. //处理收款
  49. void HandleTuikuan();
  50. //处理收款的密码查询
  51. void HandleTuikuanPassword();
  52. public:
  53. CPaintManagerUI m_pm;
  54. CValueWnd* m_valueWnd;
  55. bool m_is_money_init = false;
  56. std::wstring m_money;
  57. std::wstring m_tuikuanma;
  58. int m_tuikuanma_type; //付款码类型 1:微信支付 2:支付宝 3:其他的
  59. //收款状态 0:未开始 1:请求发给服务器了,但是暂时还没得到反馈 2:(未使用) 3:成功 4:失败
  60. int m_tuikuan_status = 0;
  61. std::string m_order_no;
  62. std::string m_out_trade_no;
  63. std::wstring m_fail_message;
  64. //窗口关闭的定时器时间
  65. int m_timer_now = 4;
  66. };