#pragma once #include "../pch/pch.h" #include "CModalWnd.h" class CFulikaShoukuanWnd : public CModalWnd { public: CFulikaShoukuanWnd() { } LPCTSTR GetWindowClassName() const { return _T("UIShoukuanFrame"); }; UINT GetClassStyle() const { return UI_CLASSSTYLE_DIALOG; }; void OnFinalMessage(HWND /*hWnd*/) { m_pm.RemovePreMessageFilter(this); }; void Init(); void Notify(TNotifyUI& msg); LRESULT OnCreate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnClose(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnDestroy(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnNcActivate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnNcCalcSize(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnNcPaint(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnNcHitTest(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnSize(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnMouseMove(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnTimer(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnShoukuanNeedPassword(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnShoukuanSuccess(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnShoukuanFail(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam); LRESULT MessageHandler(UINT uMsg, WPARAM wParam, LPARAM lParam, bool& bHandled); void InitMoney(std::wstring value); void InitFukuanma(std::string fukuanma); void SetCommonParams(std::map params); //点击确认,开始执行收款 void StartShoukuan(); //开始退出 void StartClose(); //处理收款 void HandleShoukuan(); //处理收款的密码查询 void HandleShoukuanPassword(); //取消查询密码 void CancelShoukuanPassword(); //处理取消收款 void HandleCancelShoukuan(); void ReadShoukuanValue(); void SetType(int nType) { m_nType = nType; } //处理键盘捕捉结果 void HandleTextCapture(std::string content); public: CPaintManagerUI m_pm; std::wstring m_money; std::string m_fukuanma; std::string m_shoujihao; std::string m_password; //收款状态 0:未开始 1:请求发给服务器了,但是暂时还没得到反馈 2:查询密码中 3:成功 4:失败 5:正在取消支付 int m_shoukuan_status = 0; std::wstring m_fail_message; //窗口关闭的定时器时间 int m_timer_now = 2; std::map m_commonParams; int m_shoukuanModel = 1; //收款模式 1:会员扫码 2:手机号+密码 int m_inputType = 1; //当前输入框 1:输入手机号 2:输入密码 //支付成功返回的字段 std::string m_kucun_string; std::string m_out_trade_no; std::string m_take_food_code; std::string m_show_trade_no; //当前收款场景 1 点单收银 2正餐收银 3扫码收银 int m_nType = 1; };