|
|
@@ -194,6 +194,29 @@ void CShoukuanPageUI::HandleClickMsg(TNotifyUI& msg)
|
|
|
//点击微信支付
|
|
|
this->StartWeixinzhifuShoukuan();
|
|
|
}
|
|
|
+ else if (senderName == L"diandan_jiesuan_zhifufangshi_shoukuan_btn")
|
|
|
+ {
|
|
|
+ //点击会员支付
|
|
|
+ this->StartHuiyuanShoukuan();
|
|
|
+ }
|
|
|
+ else if (senderName == L"diandan_jiesuan_zhifufangshi_xianjin_btn")
|
|
|
+ {
|
|
|
+ //点击现金收款
|
|
|
+ this->StartXianjinShoukuan();
|
|
|
+ }
|
|
|
+ else if (senderName == L"diandan_jiesuan_zhifufangshi_fulika_btn")
|
|
|
+ {
|
|
|
+ //福利卡收款
|
|
|
+ this->StartFulikaShoukuan();
|
|
|
+ }
|
|
|
+ else if (senderName == L"diandan_jiesuan_zhifufangshi_zidingyi_btn")
|
|
|
+ {
|
|
|
+ //自定义支付
|
|
|
+ std::wstring name = msg.pSender->GetText();
|
|
|
+ std::wstring selfpay_id = msg.pSender->GetCustomAttribute(L"selfpay_id");
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
//处理option切换事件
|
|
|
@@ -478,6 +501,8 @@ void CShoukuanPageUI::StartWeixinzhifuShoukuan(std::string fukuanma)
|
|
|
m_is_show_modal_wnd = true;
|
|
|
m_curModalWnd = pShoukuanWnd;
|
|
|
|
|
|
+ pShoukuanWnd->SetType(4);
|
|
|
+
|
|
|
pShoukuanWnd->Create(m_pManager->GetPaintWindow(), _T(""), UI_WNDSTYLE_DIALOG, WS_EX_TOOLWINDOW);
|
|
|
pShoukuanWnd->SetIcon(IDI_ICON_DUILIB);
|
|
|
pShoukuanWnd->CenterWindow();
|
|
|
@@ -514,13 +539,13 @@ void CShoukuanPageUI::StartWeixinzhifuShoukuan(std::string fukuanma)
|
|
|
}
|
|
|
|
|
|
//说明收款成功了,需要进行一些后续的处理
|
|
|
- //this->StartWorkAfterShoukuan(pShoukuanWnd->m_kucun_string, pShoukuanWnd->m_take_food_code, pShoukuanWnd->m_show_trade_no, zhifu_type);
|
|
|
+ this->StartWorkAfterShoukuan(pShoukuanWnd->m_show_trade_no, zhifu_type);
|
|
|
|
|
|
m_pMainWnd->ShowToast(L"收款成功!");
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- int a = 1;
|
|
|
+
|
|
|
}
|
|
|
|
|
|
m_is_show_modal_wnd = false;
|
|
|
@@ -528,6 +553,82 @@ void CShoukuanPageUI::StartWeixinzhifuShoukuan(std::string fukuanma)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+//开始进行会员收款
|
|
|
+void CShoukuanPageUI::StartHuiyuanShoukuan()
|
|
|
+{
|
|
|
+ if (m_is_show_modal_wnd == true)
|
|
|
+ {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (atof(GetMoney().c_str()) < 0.0001)
|
|
|
+ {
|
|
|
+ m_pMainWnd->ShowToast(L"收款金额不能为0");
|
|
|
+
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ CHuiyuanShoukuanWnd* pShoukuanWnd = new CHuiyuanShoukuanWnd();
|
|
|
+ if (pShoukuanWnd != NULL)
|
|
|
+ {
|
|
|
+ m_is_show_modal_wnd = true;
|
|
|
+ m_curModalWnd = pShoukuanWnd;
|
|
|
+
|
|
|
+ pShoukuanWnd->SetType(4);
|
|
|
+
|
|
|
+ pShoukuanWnd->Create(m_pManager->GetPaintWindow(), _T(""), UI_WNDSTYLE_DIALOG, WS_EX_TOOLWINDOW);
|
|
|
+ pShoukuanWnd->SetIcon(IDI_ICON_DUILIB);
|
|
|
+ pShoukuanWnd->CenterWindow();
|
|
|
+
|
|
|
+ std::string format_string = GetMoney();
|
|
|
+ std::wstring watchValue = CLewaimaiString::UTF8ToUnicode(format_string);
|
|
|
+ pShoukuanWnd->InitMoney(watchValue);
|
|
|
+
|
|
|
+ //这里要对提交订单的参数进行组装,然后方便请求
|
|
|
+ pShoukuanWnd->SetCommonParams(GetSendorderParams());
|
|
|
+
|
|
|
+ /*
|
|
|
+ if (m_is_start_catch && m_catch_string.length() == 18)
|
|
|
+ {
|
|
|
+ pShoukuanWnd->InitFukuanma(m_catch_string);
|
|
|
+ }
|
|
|
+ }*/
|
|
|
+
|
|
|
+ UINT ret = pShoukuanWnd->ShowModal();
|
|
|
+ if (ret == IDOK)
|
|
|
+ {
|
|
|
+ std::string balance = pShoukuanWnd->m_balance;
|
|
|
+ std::string member_number = pShoukuanWnd->m_member_number;
|
|
|
+
|
|
|
+ //说明收款成功了,需要进行一些后续的处理
|
|
|
+ this->StartWorkAfterShoukuan(pShoukuanWnd->m_show_trade_no, "huiyuanzhifu", balance, member_number);
|
|
|
+
|
|
|
+ m_pMainWnd->ShowToast(L"收款成功!");
|
|
|
+ }
|
|
|
+
|
|
|
+ m_is_show_modal_wnd = false;
|
|
|
+ delete pShoukuanWnd;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+//开始进行现金收款
|
|
|
+void CShoukuanPageUI::StartXianjinShoukuan()
|
|
|
+{
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+//开始进行福利卡收款
|
|
|
+void CShoukuanPageUI::StartFulikaShoukuan()
|
|
|
+{
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+//开始自定义支付收款
|
|
|
+void CShoukuanPageUI::StartZidingyiShoukuan(std::wstring name, std::wstring selfpay_id)
|
|
|
+{
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
//获取通用参数,任何支付方式都要用到的参数,个性化参数在弹框里面处理
|
|
|
//参考文档 http://apidoc.zhipuzi.com/index.php/home/item/show?item_id=4
|
|
|
std::map<string, string> CShoukuanPageUI::GetSendorderParams()
|
|
|
@@ -536,11 +637,8 @@ std::map<string, string> CShoukuanPageUI::GetSendorderParams()
|
|
|
|
|
|
params["order_no"] = CRandomHelper::GetRandString(20);
|
|
|
|
|
|
- params["coupon"] = CLewaimaiString::DoubleToString(1, 2);
|
|
|
- params["price_plus"] = CLewaimaiString::DoubleToString(1, 2);
|
|
|
- params["price_moling"] = CLewaimaiString::DoubleToString(1, 2);
|
|
|
- params["yingshou_value"] = CLewaimaiString::DoubleToString(1, 2);
|
|
|
- params["shishou_value"] = CLewaimaiString::DoubleToString(1, 2);
|
|
|
+ params["yingshou_value"] = GetMoney();
|
|
|
+ params["shishou_value"] = GetMoney();
|
|
|
params["zhaoling_value"] = "0";
|
|
|
|
|
|
params["zhifu_type"] = "";
|
|
|
@@ -548,6 +646,11 @@ std::map<string, string> CShoukuanPageUI::GetSendorderParams()
|
|
|
return params;
|
|
|
}
|
|
|
|
|
|
+void CShoukuanPageUI::StartWorkAfterShoukuan(std::string show_trade_no, std::string shoukuan_type, std::string balance, std::string member_number)
|
|
|
+{
|
|
|
+ this->InitMoney();
|
|
|
+}
|
|
|
+
|
|
|
void CShoukuanPageUI::SetPos(RECT rc, bool bNeedInvalidate)
|
|
|
{
|
|
|
m_nPageWidth = rc.right - rc.left;
|