CDiandanPageUI.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. #pragma once
  2. #include "../pch/pch.h"
  3. #include "CBasePageUI.h"
  4. #include "../zhipuzi/CFood.h"
  5. #include "../zhipuzi/CFoodtype.h"
  6. #include "../zhipuzi/CFoodpackage.h"
  7. #include "../control/CDiandanFoodItemUI.h"
  8. #include "../zhipuzi/CDiandanOrder.h"
  9. class CDiandanPageUI : public CBasePageUI
  10. {
  11. public:
  12. CDiandanPageUI();
  13. ~CDiandanPageUI();
  14. //初始化当前页面的展示,处理默认展示效果,在页面被加载的时候调用
  15. void InitShow();
  16. //处理按钮点击类事件
  17. void HandleClickMsg(TNotifyUI& msg);
  18. //处理option切换事件
  19. void HandleSelectChangeMsg(TNotifyUI& msg);
  20. //处理下拉框、radio的切换事件
  21. void HandleItemSelectMsg(TNotifyUI& msg);
  22. void InitFoodtypeShow();
  23. //刷新商品展示
  24. void RefreshFoodlist();
  25. //添加一个新的商品到购物车展示
  26. void AddDiandanOrderItemShow(int index);
  27. //刷新某个购物车商品的显示
  28. void UpdateDiandanOrderItemShow(int index);
  29. //删除购物车中某一个商品
  30. void DelDiandanOrderItemShow(int index);
  31. //点击某一个商品的item之后的处理逻辑
  32. void ClickFoodAction();
  33. //点击加号之后的逻辑
  34. void ClickAdd();
  35. //点击减号之后的逻辑
  36. void ClickDel();
  37. //点击删除之后的逻辑
  38. void ClickRemove();
  39. //点击规格之后的逻辑
  40. void ClickGuige();
  41. private:
  42. CTileLayoutUI* m_foodLayout;
  43. CHorizontalLayoutUI* m_foodtypeLayout;
  44. //套餐商品数量
  45. int m_nFoodpackageNum;
  46. //所有商品分类(只包含收银机显示的分类)
  47. std::vector<CFoodType> m_types;
  48. //当前选中的商品分类ID,为空表示没选中任何分类,为taocan表示选中套餐分类,如果选中普通商品分类就是分类ID
  49. std::string m_cur_type_id = "";
  50. CDiandanFoodItemUI* m_cur_click_food_item;
  51. //当前购物车的订单,根据这个来进行渲染显示
  52. CDiandanOrder m_cur_diandan_order;
  53. };