|
|
@@ -12,6 +12,11 @@
|
|
|
#include "../wnd/CZhekouWnd.h"
|
|
|
#include "../wnd/CRengongYouhuiWnd.h"
|
|
|
#include "../wnd/CJiajiaWnd.h"
|
|
|
+#include "../wnd/CSaomaYouhuiquanWnd.h"
|
|
|
+#include "../wnd/CSaomaShangpinquanWnd.h"
|
|
|
+#include "../wnd/CSaomaCikaWnd.h"
|
|
|
+#include "../wnd/CSaomaQuanyikaWnd.h"
|
|
|
+#include "../wnd/CCanpaiWnd.h"
|
|
|
|
|
|
CDiandanPageUI::CDiandanPageUI()
|
|
|
{
|
|
|
@@ -25,6 +30,10 @@ CDiandanPageUI::~CDiandanPageUI()
|
|
|
//初始化当前页面的展示,处理默认展示效果,在页面被加载的时候调用
|
|
|
void CDiandanPageUI::InitShow()
|
|
|
{
|
|
|
+ //根据店铺设置,初始化结算信息
|
|
|
+ this->InitJiesuanInfo();
|
|
|
+
|
|
|
+ //初始化商品渲染相关的信息
|
|
|
m_foodLayout = static_cast<CTileLayoutUI*>(this->FindSubControl(_T("diandan_foodlist")));
|
|
|
m_foodtypeLayout = static_cast<CHorizontalLayoutUI*>(this->FindSubControl(_T("diandan_fenlei_layout")));
|
|
|
|
|
|
@@ -57,9 +66,6 @@ void CDiandanPageUI::InitShow()
|
|
|
}
|
|
|
|
|
|
this->RefreshFoodlist();
|
|
|
-
|
|
|
- //根据店铺设置,初始化结算信息
|
|
|
- this->InitJiesuanInfo();
|
|
|
}
|
|
|
|
|
|
//初始化结算页面的信息
|
|
|
@@ -67,6 +73,21 @@ void CDiandanPageUI::InitJiesuanInfo()
|
|
|
{
|
|
|
CShopinfo shopinfo = CShopinfo::m_shopinfo;
|
|
|
|
|
|
+ //先清空会员登录状态
|
|
|
+ m_is_member = false;
|
|
|
+
|
|
|
+ CButtonUI* pMemberLoginBtn = static_cast<CButtonUI*>(this->FindSubControl(_T("btn_diandan_member_login")));
|
|
|
+ pMemberLoginBtn->SetVisible(true);
|
|
|
+
|
|
|
+ CLabelUI* pMemberInfo = static_cast<CLabelUI*>(this->FindSubControl(_T("diandan_page_member_info")));
|
|
|
+ pMemberInfo->SetVisible(false);
|
|
|
+
|
|
|
+ //再重新设置牌号
|
|
|
+ m_canpai = "";
|
|
|
+
|
|
|
+ CButtonUI* pCanpaiEdit = static_cast<CButtonUI*>(this->FindSubControl(_T("btn_diandan_canpaihao")));
|
|
|
+ pCanpaiEdit->SetText(L"输入餐牌号");
|
|
|
+
|
|
|
//先初始化折扣值
|
|
|
CEditUI* pZhekouEdit = static_cast<CEditUI*>(this->FindSubControl(_T("diandan_jiesuan_zhekou_value")));
|
|
|
pZhekouEdit->SetText(L"100");
|
|
|
@@ -83,24 +104,35 @@ void CDiandanPageUI::InitJiesuanInfo()
|
|
|
|
|
|
//优惠券
|
|
|
m_is_youhuiquan = false;
|
|
|
+ CLabelUI* pYouhuiquanEdit = static_cast<CLabelUI*>(this->FindSubControl(_T("diandan_jiesuan_youhuiquan_status")));
|
|
|
+ pYouhuiquanEdit->SetText(L"未使用");
|
|
|
|
|
|
//商品券
|
|
|
m_is_shangpinquan = false;
|
|
|
+ CLabelUI* pShangpinEdit = static_cast<CLabelUI*>(this->FindSubControl(_T("diandan_jiesuan_shangpinquan_status")));
|
|
|
+ pShangpinEdit->SetText(L"未使用");
|
|
|
|
|
|
//次卡
|
|
|
m_is_cika = false;
|
|
|
+ CLabelUI* pCikaEdit = static_cast<CLabelUI*>(this->FindSubControl(_T("diandan_jiesuan_cika_status")));
|
|
|
+ pCikaEdit->SetText(L"未使用");
|
|
|
|
|
|
//权益卡
|
|
|
m_is_quanyika = false;
|
|
|
+ CLabelUI* pQuanyikaEdit = static_cast<CLabelUI*>(this->FindSubControl(_T("diandan_jiesuan_quanyika_status")));
|
|
|
+ pQuanyikaEdit->SetText(L"未使用");
|
|
|
|
|
|
//抹零
|
|
|
m_moling_type = 0;
|
|
|
CCheckBoxUI* pMolingCheck = static_cast<CCheckBoxUI*>(this->FindSubControl(_T("diandan_jiesuan_moling_bumoling")));
|
|
|
pMolingCheck->Selected(true, false);
|
|
|
|
|
|
- CHorizontalLayoutUI* pZhifufangshiLayout = static_cast<CHorizontalLayoutUI*>(this->FindSubControl(_T("diandan_jiesuan_zhifufangshi_layout")));
|
|
|
+ //调整所有与价格相关的展示
|
|
|
+ UpdateJiesuanInfo();
|
|
|
|
|
|
//添加支付方式
|
|
|
+ CHorizontalLayoutUI* pZhifufangshiLayout = static_cast<CHorizontalLayoutUI*>(this->FindSubControl(_T("diandan_jiesuan_zhifufangshi_layout")));
|
|
|
+
|
|
|
int num = 0;
|
|
|
|
|
|
CHorizontalLayoutUI* pWeixinLayout = static_cast<CHorizontalLayoutUI*>(this->FindSubControl(_T("diandan_jiesuan_zhifufangshi_weixinzhifu")));
|
|
|
@@ -375,6 +407,31 @@ void CDiandanPageUI::HandleClickMsg(TNotifyUI& msg)
|
|
|
//点击人工优惠
|
|
|
this->ClickRengongyouhui();
|
|
|
}
|
|
|
+ else if (name == L"diandan_jiesuan_youhuiquan_btn")
|
|
|
+ {
|
|
|
+ //点击扫码优惠券
|
|
|
+ this->ClickSaomaYouhuiquan();
|
|
|
+ }
|
|
|
+ else if (name == L"diandan_jiesuan_shangpinquan_btn")
|
|
|
+ {
|
|
|
+ //点击扫码商品券
|
|
|
+ this->ClickSaomaShangpinquan();
|
|
|
+ }
|
|
|
+ else if (name == L"diandan_jiesuan_cika_btn")
|
|
|
+ {
|
|
|
+ //点击扫码次卡
|
|
|
+ this->ClickSaomaCika();
|
|
|
+ }
|
|
|
+ else if (name == L"diandan_jiesuan_quanyika_btn")
|
|
|
+ {
|
|
|
+ //点击扫码权益卡
|
|
|
+ this->ClickSaomaQuanyika();
|
|
|
+ }
|
|
|
+ else if (name == L"btn_diandan_canpaihao")
|
|
|
+ {
|
|
|
+ //点击餐牌号
|
|
|
+ this->ClickCanpai();
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
//处理option切换事件
|
|
|
@@ -769,19 +826,16 @@ void CDiandanPageUI::UpdateJiesuanInfo()
|
|
|
m_quanyika_youhui = 0;
|
|
|
if (m_is_quanyika == true)
|
|
|
{
|
|
|
- if (CShopinfo::m_shopinfo.m_is_eq_card_discount == "1")
|
|
|
- {
|
|
|
- double quanyika_zhekou = atof(CShopinfo::m_shopinfo.m_eq_card_discount_value.c_str());
|
|
|
+ double quanyika_zhekou = atof(m_quanyika_discount.c_str());
|
|
|
|
|
|
- //这里最多是10折
|
|
|
- double old_cur_price_quanyika_discount = cur_price;
|
|
|
+ //这里最多是10折
|
|
|
+ double old_cur_price_quanyika_discount = cur_price;
|
|
|
|
|
|
- cur_price = (double)(cur_price * quanyika_zhekou) / 10.00;
|
|
|
+ cur_price = (double)(cur_price * quanyika_zhekou) / 10.00;
|
|
|
|
|
|
- m_quanyika_youhui = old_cur_price_quanyika_discount - cur_price;
|
|
|
+ m_quanyika_youhui = old_cur_price_quanyika_discount - cur_price;
|
|
|
|
|
|
- totol_youhui += m_quanyika_youhui;
|
|
|
- }
|
|
|
+ totol_youhui += m_quanyika_youhui;
|
|
|
}
|
|
|
|
|
|
//次卡折扣
|
|
|
@@ -1769,4 +1823,204 @@ void CDiandanPageUI::ClickRengongyouhui()
|
|
|
return;
|
|
|
}
|
|
|
}
|
|
|
+}
|
|
|
+
|
|
|
+void CDiandanPageUI::ClickSaomaYouhuiquan()
|
|
|
+{
|
|
|
+ CSaomaYouhuiquanWnd* pSaomaYouhuiquanDlg = new CSaomaYouhuiquanWnd();
|
|
|
+
|
|
|
+ if (pSaomaYouhuiquanDlg != NULL)
|
|
|
+ {
|
|
|
+ pSaomaYouhuiquanDlg->Create(m_pManager->GetPaintWindow(), _T(""), UI_WNDSTYLE_DIALOG, WS_EX_WINDOWEDGE);
|
|
|
+ pSaomaYouhuiquanDlg->SetIcon(IDI_ICON_DUILIB);
|
|
|
+ pSaomaYouhuiquanDlg->CenterWindow();
|
|
|
+
|
|
|
+ pSaomaYouhuiquanDlg->SetTitle(L"扫码使用优惠券");
|
|
|
+
|
|
|
+ UINT ret = pSaomaYouhuiquanDlg->ShowModal();
|
|
|
+
|
|
|
+ if (ret == IDOK)
|
|
|
+ {
|
|
|
+ //这说明优惠券核销成功了
|
|
|
+ m_is_youhuiquan = true;
|
|
|
+ m_youhuiquan_id = pSaomaYouhuiquanDlg->m_coupon_id;
|
|
|
+ m_coupon_basic_price = pSaomaYouhuiquanDlg->m_coupon_basic_price;
|
|
|
+ m_coupon_deadline = pSaomaYouhuiquanDlg->m_coupon_deadline;
|
|
|
+ m_coupon_value = pSaomaYouhuiquanDlg->m_coupon_value;
|
|
|
+
|
|
|
+ CLabelUI* pYouhuiEdit = static_cast<CLabelUI*>(this->FindSubControl(_T("diandan_jiesuan_youhuiquan_status")));
|
|
|
+ pYouhuiEdit->SetText(L"已使用");
|
|
|
+
|
|
|
+ this->UpdateJiesuanInfo();
|
|
|
+
|
|
|
+ delete pSaomaYouhuiquanDlg;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ delete pSaomaYouhuiquanDlg;
|
|
|
+
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+//点击扫码商品券
|
|
|
+void CDiandanPageUI::ClickSaomaShangpinquan()
|
|
|
+{
|
|
|
+ CSaomaShangpinquanWnd* pSaomaShangpinquanDlg = new CSaomaShangpinquanWnd();
|
|
|
+
|
|
|
+ if (pSaomaShangpinquanDlg != NULL)
|
|
|
+ {
|
|
|
+ pSaomaShangpinquanDlg->Create(m_pManager->GetPaintWindow(), _T(""), UI_WNDSTYLE_DIALOG, WS_EX_WINDOWEDGE);
|
|
|
+ pSaomaShangpinquanDlg->SetIcon(IDI_ICON_DUILIB);
|
|
|
+ pSaomaShangpinquanDlg->CenterWindow();
|
|
|
+
|
|
|
+ pSaomaShangpinquanDlg->SetTitle(L"扫码使用商品券");
|
|
|
+
|
|
|
+ UINT ret = pSaomaShangpinquanDlg->ShowModal();
|
|
|
+
|
|
|
+ if (ret == IDOK)
|
|
|
+ {
|
|
|
+ //这说明商品券核销成功了
|
|
|
+ m_is_shangpinquan = true;
|
|
|
+
|
|
|
+ m_shangpinquan_id = pSaomaShangpinquanDlg->m_goodscoupon_id;
|
|
|
+ m_shangpinquan_name = pSaomaShangpinquanDlg->m_goods_coupon_name;
|
|
|
+ m_shangpinquan_foodid = pSaomaShangpinquanDlg->m_bind_foods_id;
|
|
|
+
|
|
|
+ CLabelUI* pYouhuiEdit = static_cast<CLabelUI*>(this->FindSubControl(_T("diandan_jiesuan_shangpinquan_status")));
|
|
|
+ pYouhuiEdit->SetText(L"已使用");
|
|
|
+
|
|
|
+ this->UpdateJiesuanInfo();
|
|
|
+
|
|
|
+ delete pSaomaShangpinquanDlg;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ delete pSaomaShangpinquanDlg;
|
|
|
+
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+//点击扫码权益卡
|
|
|
+void CDiandanPageUI::ClickSaomaQuanyika()
|
|
|
+{
|
|
|
+ CSaomaQuanyikaWnd* pSaomaQuanyikaDlg = new CSaomaQuanyikaWnd();
|
|
|
+
|
|
|
+ if (pSaomaQuanyikaDlg != NULL)
|
|
|
+ {
|
|
|
+ pSaomaQuanyikaDlg->Create(m_pManager->GetPaintWindow(), _T(""), UI_WNDSTYLE_DIALOG, WS_EX_WINDOWEDGE);
|
|
|
+ pSaomaQuanyikaDlg->SetIcon(IDI_ICON_DUILIB);
|
|
|
+ pSaomaQuanyikaDlg->CenterWindow();
|
|
|
+
|
|
|
+ pSaomaQuanyikaDlg->SetTitle(L"扫码使用权益卡");
|
|
|
+
|
|
|
+ UINT ret = pSaomaQuanyikaDlg->ShowModal();
|
|
|
+
|
|
|
+ if (ret == IDOK)
|
|
|
+ {
|
|
|
+ //这说明权益卡核销成功了
|
|
|
+ m_is_quanyika = true;
|
|
|
+
|
|
|
+ m_quanyika_discount = pSaomaQuanyikaDlg->m_discount;
|
|
|
+
|
|
|
+ CLabelUI* pYouhuiEdit = static_cast<CLabelUI*>(this->FindSubControl(_T("diandan_jiesuan_quanyika_status")));
|
|
|
+ pYouhuiEdit->SetText(L"已使用");
|
|
|
+
|
|
|
+ this->UpdateJiesuanInfo();
|
|
|
+
|
|
|
+ delete pSaomaQuanyikaDlg;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ delete pSaomaQuanyikaDlg;
|
|
|
+
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+//点击扫码次卡
|
|
|
+void CDiandanPageUI::ClickSaomaCika()
|
|
|
+{
|
|
|
+ CSaomaCikaWnd* pSaomaCikaDlg = new CSaomaCikaWnd();
|
|
|
+
|
|
|
+ if (pSaomaCikaDlg != NULL)
|
|
|
+ {
|
|
|
+ pSaomaCikaDlg->Create(m_pManager->GetPaintWindow(), _T(""), UI_WNDSTYLE_DIALOG, WS_EX_WINDOWEDGE);
|
|
|
+ pSaomaCikaDlg->SetIcon(IDI_ICON_DUILIB);
|
|
|
+ pSaomaCikaDlg->CenterWindow();
|
|
|
+
|
|
|
+ pSaomaCikaDlg->SetTitle(L"扫码使用次卡");
|
|
|
+
|
|
|
+ UINT ret = pSaomaCikaDlg->ShowModal();
|
|
|
+
|
|
|
+ if (ret == IDOK)
|
|
|
+ {
|
|
|
+ //这说明商品券核销成功了
|
|
|
+ m_is_cika = true;
|
|
|
+
|
|
|
+ m_cika_id = pSaomaCikaDlg->m_timescoupon_id;
|
|
|
+ m_cika_deduct_type = pSaomaCikaDlg->m_deduct_type;
|
|
|
+ m_cika_discount = pSaomaCikaDlg->m_discount;
|
|
|
+ m_cika_discount_value = pSaomaCikaDlg->m_discount_value;
|
|
|
+ m_cika_full_reduce = pSaomaCikaDlg->m_full_reduce;
|
|
|
+ m_cika_full_reduce_value = pSaomaCikaDlg->m_full_reduce_value;
|
|
|
+ m_cika_offer = pSaomaCikaDlg->m_offer;
|
|
|
+ m_cika_offer_value = pSaomaCikaDlg->m_offer_value;
|
|
|
+ m_cika_bind_foods_id = pSaomaCikaDlg->m_bind_foods_id;
|
|
|
+
|
|
|
+ CLabelUI* pYouhuiEdit = static_cast<CLabelUI*>(this->FindSubControl(_T("diandan_jiesuan_cika_status")));
|
|
|
+ pYouhuiEdit->SetText(L"已使用");
|
|
|
+
|
|
|
+ this->UpdateJiesuanInfo();
|
|
|
+
|
|
|
+ delete pSaomaCikaDlg;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ delete pSaomaCikaDlg;
|
|
|
+
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+void CDiandanPageUI::ClickCanpai()
|
|
|
+{
|
|
|
+ CCanpaiWnd* pCanpaiDlg = new CCanpaiWnd();
|
|
|
+
|
|
|
+ if (pCanpaiDlg != NULL)
|
|
|
+ {
|
|
|
+ pCanpaiDlg->Create(m_pManager->GetPaintWindow(), _T(""), UI_WNDSTYLE_DIALOG, WS_EX_WINDOWEDGE);
|
|
|
+ pCanpaiDlg->SetIcon(IDI_ICON_DUILIB);
|
|
|
+ pCanpaiDlg->CenterWindow();
|
|
|
+
|
|
|
+ pCanpaiDlg->SetTitle(L"输入餐牌号");
|
|
|
+
|
|
|
+ UINT ret = pCanpaiDlg->ShowModal();
|
|
|
+
|
|
|
+ if (ret == IDOK)
|
|
|
+ {
|
|
|
+ //这说明折扣输入了
|
|
|
+ std::string canpai = pCanpaiDlg->getContent();
|
|
|
+
|
|
|
+ m_canpai = canpai;
|
|
|
+
|
|
|
+ CButtonUI* pCanpaiEdit = static_cast<CButtonUI*>(this->FindSubControl(_T("btn_diandan_canpaihao")));
|
|
|
+ pCanpaiEdit->SetText((L"餐牌号 " + CLewaimaiString::UTF8ToUnicode(canpai)).c_str());
|
|
|
+
|
|
|
+ this->UpdateJiesuanInfo();
|
|
|
+
|
|
|
+ delete pCanpaiDlg;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ delete pCanpaiDlg;
|
|
|
+
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|