gxd-uni-library-editx 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (215) hide show
  1. package/.editorconfig +14 -0
  2. package/README.md +447 -0
  3. package/index.js +3 -0
  4. package/package.json +104 -0
  5. package/postcss.config.js +22 -0
  6. package/settings.js.tpl +68 -0
  7. package/src/XdAppClass.1.0.js +257 -0
  8. package/src/XdAppClass.js +150 -0
  9. package/src/components/XdAddress/XdAddress.vue +579 -0
  10. package/src/components/XdAddressSelect/XdAddressSelect.vue +243 -0
  11. package/src/components/XdBaiduMap/XdBaiduMap.vue +204 -0
  12. package/src/components/XdBaiduOverlay/XdBaiduOverlay.vue +345 -0
  13. package/src/components/XdBaiduSearch/XdBaiduSearch.vue +354 -0
  14. package/src/components/XdBar/XdBar.vue +339 -0
  15. package/src/components/XdButton/XdButton.vue +288 -0
  16. package/src/components/XdCartList/XdCartList.vue +791 -0
  17. package/src/components/XdCartNoStoreList/XdCartNoStoreList.vue +747 -0
  18. package/src/components/XdCity/XdCity.vue +620 -0
  19. package/src/components/XdCity/city.js +93 -0
  20. package/src/components/XdCity/testData.js +124 -0
  21. package/src/components/XdCityLocation/XdCityLocation.vue +314 -0
  22. package/src/components/XdCityLocation/jweixin.js +72 -0
  23. package/src/components/XdCityShow/XdCityShow.vue +354 -0
  24. package/src/components/XdClipImage/XdClipImage.vue +879 -0
  25. package/src/components/XdCoins/XdCoins.vue +66 -0
  26. package/src/components/XdConfirm/XdConfirm.vue +240 -0
  27. package/src/components/XdContentXss/XdContentXss.vue +71 -0
  28. package/src/components/XdDailog/XdDailog.vue +258 -0
  29. package/src/components/XdDate/XdDataItemOne.vue +236 -0
  30. package/src/components/XdDate/XdDate.vue +1081 -0
  31. package/src/components/XdDate/XdDateItem.vue +316 -0
  32. package/src/components/XdDate/XdDateTime.vue +929 -0
  33. package/src/components/XdDate/i18n/en.json +19 -0
  34. package/src/components/XdDate/i18n/index.js +8 -0
  35. package/src/components/XdDate/i18n/zh-Hans.json +19 -0
  36. package/src/components/XdDate/i18n/zh-Hant.json +19 -0
  37. package/src/components/XdDate/keypress.js +45 -0
  38. package/src/components/XdDate/util.js +418 -0
  39. package/src/components/XdDownDrawer/XdDownDrawer.vue +176 -0
  40. package/src/components/XdEditPwd/XdEditPwd.vue +305 -0
  41. package/src/components/XdEnterOrderList/XdEnterOrderList.vue +413 -0
  42. package/src/components/XdExpressTimeLine/XdExpressTimeLine.vue +280 -0
  43. package/src/components/XdFilter/XdFilter.vue +541 -0
  44. package/src/components/XdFontIcon/XdFontIcon.vue +165 -0
  45. package/src/components/XdFontIcon/css/icon.less +498 -0
  46. package/src/components/XdFooterBar/XdFooterBar.vue +291 -0
  47. package/src/components/XdFooterTabbar/XdFooterTabbar.vue +284 -0
  48. package/src/components/XdForm/XdForm.vue +481 -0
  49. package/src/components/XdForm/validate.js +486 -0
  50. package/src/components/XdFormCheckbox/XdFormCheckbox.vue +858 -0
  51. package/src/components/XdFormDate.vue +187 -0
  52. package/src/components/XdFormInput/XdFormInput.vue +535 -0
  53. package/src/components/XdFormInput/common.js +56 -0
  54. package/src/components/XdFormItem/XdFormItem.vue +583 -0
  55. package/src/components/XdFormSelect/XdFormSelect.vue +119 -0
  56. package/src/components/XdImage/XdImage.vue +113 -0
  57. package/src/components/XdItemCardUser/XdItemCardUser.vue +232 -0
  58. package/src/components/XdItemFilmImage/XdItemFilmImage.vue +146 -0
  59. package/src/components/XdItemFilmText/XdItemFilmText.vue +83 -0
  60. package/src/components/XdItemPhysical/XdItemPhysical.vue +410 -0
  61. package/src/components/XdItemPhysicalPack/XdItemPhysicalPack.vue +240 -0
  62. package/src/components/XdItemStore/XdItemStore.vue +236 -0
  63. package/src/components/XdItemUserInfo/XdItemUserInfo.vue +175 -0
  64. package/src/components/XdJson/XdJson.vue +398 -0
  65. package/src/components/XdKeyValue/XdKeyValue.vue +150 -0
  66. package/src/components/XdLabelNew/XdLabelNew.vue +193 -0
  67. package/src/components/XdLayout/XdLayout.vue +634 -0
  68. package/src/components/XdLoading/XdLoading.vue +165 -0
  69. package/src/components/XdMore/XdMore.vue +66 -0
  70. package/src/components/XdMpHtml/XdMpHtml.vue +458 -0
  71. package/src/components/XdMpHtml/node/node.vue +536 -0
  72. package/src/components/XdMpHtml/parser.js +1260 -0
  73. package/src/components/XdMpHtml/static/js/handler.js +1 -0
  74. package/src/components/XdMpHtml/static/js/uni.webview.min.js +1 -0
  75. package/src/components/XdMpHtml/static/local.html +1 -0
  76. package/src/components/XdMy/XdMy.vue +294 -0
  77. package/src/components/XdMySuccess/XdMySuccess.vue +603 -0
  78. package/src/components/XdNavTab/XdNavTab.vue +147 -0
  79. package/src/components/XdNoData/XdNoData.vue +87 -0
  80. package/src/components/XdNoticeBar/XdNoticeBar.vue +501 -0
  81. package/src/components/XdNumber/XdNumber.vue +210 -0
  82. package/src/components/XdNumberUni/XdNumberUni.vue +270 -0
  83. package/src/components/XdNumberUni/readme.md +42 -0
  84. package/src/components/XdOnlineConfirm/XdOnlineConfirm.vue +385 -0
  85. package/src/components/XdOnlineDetail/XdOnlineDetail.vue +332 -0
  86. package/src/components/XdOnlinePay/XdOnlinePay.vue +349 -0
  87. package/src/components/XdOnlineSchedule/XdOnlineSchedule.vue +453 -0
  88. package/src/components/XdOnlineSeat/XdOnlineSeat.vue +796 -0
  89. package/src/components/XdOnlineSeatMove/XdOnlineSeatMove.vue +1012 -0
  90. package/src/components/XdPayCombo/XdPayCombo.vue +118 -0
  91. package/src/components/XdPreviewImage/XdPreviewImage.vue +372 -0
  92. package/src/components/XdPwPay/XdPwPay.vue +214 -0
  93. package/src/components/XdRadio/XdRadio.vue +151 -0
  94. package/src/components/XdRangeSlider/XdRangeSlider.vue +355 -0
  95. package/src/components/XdRedName/XdRedName.vue +35 -0
  96. package/src/components/XdSearchBar/XdSearchBar.vue +286 -0
  97. package/src/components/XdSelect/XdSelect.vue +382 -0
  98. package/src/components/XdSelectCity/XdSelectCity.vue +270 -0
  99. package/src/components/XdSelectTime/XdSelectTime.vue +342 -0
  100. package/src/components/XdStar/XdStar.vue +261 -0
  101. package/src/components/XdStoreCashier/XdStoreCashier.vue +526 -0
  102. package/src/components/XdStoreItem/XdStoreItem.vue +400 -0
  103. package/src/components/XdStoreOrderDetail/XdStoreOrderDetail.vue +1571 -0
  104. package/src/components/XdStoreOrderList/XdStoreOrderList.vue +450 -0
  105. package/src/components/XdStoreProductInfo/XdStoreProductInfo.vue +940 -0
  106. package/src/components/XdStoreProductType/XdStoreProductType.vue +307 -0
  107. package/src/components/XdSuccess/XdSuccess.vue +527 -0
  108. package/src/components/XdSwipeSelect/XdSwipeSelect.vue +99 -0
  109. package/src/components/XdSwiper/XdSwiper.vue +124 -0
  110. package/src/components/XdSwitch/XdSwitch.vue +204 -0
  111. package/src/components/XdTab/XdTab.vue +220 -0
  112. package/src/components/XdTabScroll/XdTabScroll.vue +212 -0
  113. package/src/components/XdTag/XdTag.vue +423 -0
  114. package/src/components/XdTimeLine/XdTimeLine.vue +121 -0
  115. package/src/components/XdTips/XdTips.vue +212 -0
  116. package/src/components/XdTipsBlock/XdTipsBlock.vue +141 -0
  117. package/src/components/XdTitleSection/XdTitleSection.vue +152 -0
  118. package/src/components/XdTitleTab/XdTitleTab.vue +227 -0
  119. package/src/components/XdUnit/XdUnit.vue +206 -0
  120. package/src/components/XdUpload/XdUpload.vue +197 -0
  121. package/src/components/XdUploadImage/XdUploadImage.vue +145 -0
  122. package/src/components/Xdlogs/XdLogs.vue +144 -0
  123. package/src/components/autoload.js +211 -0
  124. package/src/components/swipeAction/UniSwipeAction.vue +43 -0
  125. package/src/components/swipeActionItem/UniSwipeActionItem.vue +386 -0
  126. package/src/components/swipeActionItem/bindingx.js +298 -0
  127. package/src/components/swipeActionItem/index.wxs +321 -0
  128. package/src/components/swipeActionItem/isPC.js +18 -0
  129. package/src/components/swipeActionItem/mpalipay.js +210 -0
  130. package/src/components/swipeActionItem/mpother.js +252 -0
  131. package/src/components/swipeActionItem/mpwxs.js +140 -0
  132. package/src/dome/dome/address.vue +415 -0
  133. package/src/dome/dome/auth/login.vue +166 -0
  134. package/src/dome/dome/baidu_show.vue +20 -0
  135. package/src/dome/dome/cake.vue +186 -0
  136. package/src/dome/dome/cart.vue +205 -0
  137. package/src/dome/dome/cart_store.vue +149 -0
  138. package/src/dome/dome/cashier/cashier.vue +73 -0
  139. package/src/dome/dome/cashier/check_cashier.vue +469 -0
  140. package/src/dome/dome/cashier/success.vue +127 -0
  141. package/src/dome/dome/city.vue +148 -0
  142. package/src/dome/dome/cityData.js +9 -0
  143. package/src/dome/dome/clip.vue +82 -0
  144. package/src/dome/dome/date/date.vue +273 -0
  145. package/src/dome/dome/date/selected.js +315 -0
  146. package/src/dome/dome/dcom/app1.vue +13 -0
  147. package/src/dome/dome/dcom/app2.vue +13 -0
  148. package/src/dome/dome/dcom/app3.vue +13 -0
  149. package/src/dome/dome/dcom/app4.vue +13 -0
  150. package/src/dome/dome/dcom/app5.vue +13 -0
  151. package/src/dome/dome/dcom/index.vue +1 -0
  152. package/src/dome/dome/debug/debug.vue +95 -0
  153. package/src/dome/dome/docache/docache.vue +88 -0
  154. package/src/dome/dome/express.vue +269 -0
  155. package/src/dome/dome/form.vue +312 -0
  156. package/src/dome/dome/icon.js +125 -0
  157. package/src/dome/dome/icon.vue +93 -0
  158. package/src/dome/dome/index.vue +725 -0
  159. package/src/dome/dome/item.vue +236 -0
  160. package/src/dome/dome/json/json.vue +88 -0
  161. package/src/dome/dome/layout.vue +105 -0
  162. package/src/dome/dome/line.vue +113 -0
  163. package/src/dome/dome/map/search.vue +70 -0
  164. package/src/dome/dome/my.vue +171 -0
  165. package/src/dome/dome/notice.vue +93 -0
  166. package/src/dome/dome/online/confirm.vue +92 -0
  167. package/src/dome/dome/online/detail.vue +80 -0
  168. package/src/dome/dome/online/pay.vue +78 -0
  169. package/src/dome/dome/online/schedule.vue +73 -0
  170. package/src/dome/dome/online/seat.vue +98 -0
  171. package/src/dome/dome/order/detail.vue +166 -0
  172. package/src/dome/dome/order/enter_order.vue +294 -0
  173. package/src/dome/dome/order/list.vue +219 -0
  174. package/src/dome/dome/order/order.js +18 -0
  175. package/src/dome/dome/order/success.vue +68 -0
  176. package/src/dome/dome/product.vue +179 -0
  177. package/src/dome/dome/store_cashier.vue +67 -0
  178. package/src/dome/dome/swiper.vue +32 -0
  179. package/src/dome/dome/webview.vue +61 -0
  180. package/src/install.js +183 -0
  181. package/src/main/address/address.vue +251 -0
  182. package/src/main/cart/cart.vue +149 -0
  183. package/src/main/cashier/cashier.vue +72 -0
  184. package/src/main/cashier/check_cashier.vue +483 -0
  185. package/src/main/city/city.vue +149 -0
  186. package/src/main/date/date.vue +260 -0
  187. package/src/main/order/order.js +19 -0
  188. package/src/main/order/order.vue +222 -0
  189. package/src/main/product/detail.vue +121 -0
  190. package/src/main/product/type.vue +108 -0
  191. package/src/main/search/search.vue +501 -0
  192. package/src/pages.json +337 -0
  193. package/src/plugins/CreatedComponentsPlugin.js +19 -0
  194. package/src/plugins/JsonRename.js +72 -0
  195. package/src/plugins/SetAppParams.js +171 -0
  196. package/src/project.js +18 -0
  197. package/src/utils/Cookie.js +68 -0
  198. package/src/utils/Runtime.js +105 -0
  199. package/src/utils/Storage.js +104 -0
  200. package/src/utils/XdNetwork.js +133 -0
  201. package/src/utils/helper.js +1321 -0
  202. package/src/utils/nourl.js +95 -0
  203. package/src/utils/project.js +17 -0
  204. package/src/utils/xd.auth.js +61 -0
  205. package/src/utils/xd.base.js +474 -0
  206. package/src/utils/xd.common.js +240 -0
  207. package/src/utils/xd.event.js +99 -0
  208. package/src/utils/xd.frame.js +96 -0
  209. package/src/utils/xd.path.js +96 -0
  210. package/src/utils/xdAppLog.js +170 -0
  211. package/src/utils/xdWxLog.js +302 -0
  212. package/src/utils/xdh5log.js +307 -0
  213. package/src/websetting.js +64 -0
  214. package/tsconfig.json +9 -0
  215. package/xd.less +180 -0
@@ -0,0 +1,186 @@
1
+ <template>
2
+ <xd-layout
3
+ title="商品详情"
4
+ background="#f8f8f8"
5
+ :show-footer="false"
6
+ :show-bar="true"
7
+ @back="back"
8
+ >
9
+ <xd-store-product-info
10
+ :item="item"
11
+ :collect="collect"
12
+ :cart-number="cartNumber"
13
+ :address="address"
14
+ :is-show-selected="true"
15
+ :is-show-send-range="true"
16
+ @onCollect="handleCollect"
17
+ @onFastLink="handleFastLink"
18
+ @onFastBtn="handleFastBtn"
19
+ @onShop="handleShop"
20
+ @onSend="handleSend"
21
+ >
22
+ </xd-store-product-info>
23
+ </xd-layout>
24
+ </template>
25
+
26
+ <script>
27
+ import XdLayout from "@/components/XdLayout/XdLayout";
28
+ import XdStoreCart from "@/components/XdCartList/XdCartList";
29
+ import XdStoreProductInfo from "@/components/XdStoreProductInfo/XdStoreProductInfo";
30
+
31
+ export default {
32
+ name: "AppProductCake",
33
+ components: {
34
+ XdStoreProductInfo,
35
+ XdLayout,
36
+ XdStoreCart
37
+ },
38
+ data() {
39
+ return {
40
+ collect: null,
41
+ cartNumber: 99,
42
+ address:null,
43
+ selectNumber: null,
44
+
45
+ item: {
46
+ //头部轮播图
47
+ thumb: ["https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20210604101103940.jpg", "https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20210604101113376.jpg", "https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20210604101122312.jpg"],
48
+ product_name: '中粮 福临门小厨味道米面礼盒 4.5kg', //商品名称
49
+ product_short_desc: '中粮 福临门小厨味道米面礼盒 4.5kg中粮 福临门小厨味道米面礼盒 4.5kg', //商品短名称
50
+ product_sub_name: '尺寸/口味/人群', //副标题,无此此地不显示副标题
51
+ sale_price: 150, //价格
52
+ id: 199191,
53
+ collect: true, //是否启用收藏按钮(undefined => 不显示 true=> 已收藏, false=> 未收藏)
54
+
55
+ //显示店铺展示模块
56
+ shop: {
57
+ logo: 'https://jfbcake.oss-cn-beijing.aliyuncs.com/uploads/20200826/733372b7f9022ce6c127ffbe03c54cb5.jpg',
58
+ name: '幸福西饼廊坊店',
59
+ desc: '使图片的长边能完全显示出来。也就是说,可以完整地将图片显示出来',
60
+ },
61
+
62
+ //产品显示标签
63
+ infoLabel: [
64
+ {
65
+ label: '描述',
66
+ value: '下午茶类产品不包含生日帽、蜡烛和巧克力牌',
67
+ },
68
+ {
69
+ label: '保质期',
70
+ value: '当天食用',
71
+ },
72
+ {
73
+ label: '预约时间',
74
+ value: '提前24小时预约',
75
+ },
76
+ {
77
+ label: '配送方式',
78
+ value: ['专人配送', '到店自提', '快递物流'],
79
+ },
80
+ {
81
+ label: '配送范围',
82
+ value: '北京,上海,河北唐山,大连 或者 北京,上海城市地区除外',
83
+ },
84
+ ],
85
+
86
+
87
+ tips: '订单付款后72小时内发货,法定节假日顺延到工作日发货',
88
+
89
+ //发货提示
90
+ notice: '订单付款后72小时内发货,法定节假日顺延到工作日发货',
91
+
92
+ //快速链接地址 align=left,right, center
93
+ links: [
94
+ {name: '查看配送范围', value: '全国', key: 0, align: 'right'},
95
+ {name: '支持门店', value: '某某门店', key: 1, align: 'right'}
96
+ ],
97
+
98
+ //快速按钮
99
+ fastBtns: [
100
+ {type: 'primary', name: '补货中', disabled: true},
101
+ {type: 'subPrimary', name: '立即购买', disabled: true},
102
+ ],
103
+
104
+ //详情
105
+ //detail: "\n \n \u003Cp\u003E\u003Cimg src=\u0022https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20210119153542102.png?x-oss-process=style\/common\u0022 style=\u0022width: 100%;\u0022\u003E\u003C\/p\u003E\n \u003Cdiv\u003E\u003Cimg src=\u0022https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/7daysservice.jpeg\u0022 width=\u0022100%\u0022\u003E\u003C\/div\u003E",
106
+ detail: "\n \n \n \n \n \u003Cp\u003E\u5907\u6ce8\uff1a\u003C\/p\u003E\u003Cp\u003E1\u3001\u672c\u4ea7\u54c1\u4e0d\u652f\u63017\u5929\u65e0\u7406\u7531\u9000\u6362\u8d27\u003C\/p\u003E\u003Cp\u003E2\u3001\u65b0\u7586\u3001\u897f\u85cf\u3001\u5185\u8499\u3001\u6d77\u5357\u3001\u6e2f\u6fb3\u53f0\u4e0d\u652f\u6301\u6d3e\u4ef6\u003C\/p\u003E\u003Cp\u003E\u003Cimg src=\u0022https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20201130142948482.jpg?x-oss-process=style\/common\u0022 style=\u0022width: 100%;\u0022\u003E\u003C\/p\u003E\u003Cp\u003E\u003Cimg src=\u0022https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20201130142947977.jpg?x-oss-process=style\/common\u0022 style=\u0022width: 100%;\u0022\u003E\u003C\/p\u003E\u003Cp\u003E\u003Cimg src=\u0022https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20201130142947278.jpg?x-oss-process=style\/common\u0022 style=\u0022width: 100%;\u0022\u003E\u003C\/p\u003E\u003Cp\u003E\u003Cimg src=\u0022https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20201130142947126.jpg?x-oss-process=style\/common\u0022 style=\u0022width: 100%;\u0022\u003E\u003C\/p\u003E\u003Cp\u003E\u003Cimg src=\u0022https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20201130142947903.jpg?x-oss-process=style\/common\u0022 style=\u0022width: 100%;\u0022\u003E\u003C\/p\u003E\u003Cp\u003E\u003Cimg src=\u0022https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20201130142947859.jpg?x-oss-process=style\/common\u0022 style=\u0022width: 100%;\u0022\u003E\u003C\/p\u003E\u003Cp\u003E\u003Cimg src=\u0022https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20201130142947175.jpg?x-oss-process=style\/common\u0022 style=\u0022width: 100%;\u0022\u003E\u003C\/p\u003E\u003Cp\u003E\u003Cimg src=\u0022https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20201130142947841.jpg?x-oss-process=style\/common\u0022 style=\u0022width: 100%;\u0022\u003E\u003C\/p\u003E\u003Cp\u003E\u003Cimg src=\u0022https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20201130142947619.jpg?x-oss-process=style\/common\u0022 style=\u0022width: 100%;\u0022\u003E\u003C\/p\u003E\u003Cp\u003E\u003Cimg src=\u0022https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20201130142948576.jpg?x-oss-process=style\/common\u0022 style=\u0022width: 100%;\u0022\u003E\u003C\/p\u003E\u003Cp\u003E\u003Cimg src=\u0022https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20201130142947384.jpg?x-oss-process=style\/common\u0022 style=\u0022width: 100%;\u0022\u003E\u003C\/p\u003E\u003Cp\u003E\u003Cimg src=\u0022https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/20201130142947381.jpg?x-oss-process=style\/common\u0022 style=\u0022width: 100%;\u0022\u003E\u003C\/p\u003E\n \n \n \n \u003Cdiv\u003E\u003Cimg src=\u0022https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/7daysservice.jpeg\u0022 width=\u0022100%\u0022\u003E\u003C\/div\u003E",
107
+ },
108
+ }
109
+ },
110
+ created(){
111
+ setTimeout(()=>{
112
+ this.address = '河北省廊坊三河市北城汽车站片城建新村50号楼5单元3001室'
113
+ }, 1000);
114
+ setTimeout(()=>{
115
+ this.collect = true;
116
+ this.cartNumber = 100;
117
+ this.selectNumber = '2件'
118
+ }, 5000)
119
+ },
120
+
121
+ methods: {
122
+ back(){
123
+ this.$xdUniHelper.navigateBack()
124
+ },
125
+
126
+ /**
127
+ * @description 点击配送范围事件
128
+ * @param item 当前商品对象
129
+ */
130
+ handleSend(item){
131
+ console.log('handleSend', item)
132
+ },
133
+
134
+ /**
135
+ * @description 点击收藏事件
136
+ * @param item 当前商品对象
137
+ */
138
+ handleCollect(item) {
139
+ console.log('handleCollect',item)
140
+ this.$xdShowLoading({});
141
+ setTimeout(() => {
142
+ this.collect = !this.collect;
143
+ this.$xdHideLoading()
144
+ }, 1000)
145
+ },
146
+
147
+ /**
148
+ * @description 快速连接点击事件
149
+ * @param link 当前点击连接对象
150
+ * @param index 当前快速连接所在列表位置
151
+ */
152
+ handleFastLink({link ,index}){
153
+ if(index === 0) {
154
+ this.$xdUniHelper.redirectTo({
155
+
156
+ })
157
+ }
158
+ console.log('handleFastLink', link, index)
159
+ },
160
+
161
+ /**
162
+ * @description 快速按钮点击事件
163
+ * @param link 当前点击连接对象
164
+ * @param index 当前快速连接所在列表位置
165
+ */
166
+ handleFastBtn({btn, index}){
167
+ console.log('handleFastBtn', btn, index)
168
+ },
169
+
170
+ /**
171
+ * @description 点击店铺模块事件
172
+ */
173
+ handleShop(shop){
174
+ console.log('handleShop', shop)
175
+ }
176
+
177
+
178
+ }
179
+ }
180
+ </script>
181
+
182
+ <style scoped lang="less">
183
+ .app-send {
184
+ text-align: right;
185
+ }
186
+ </style>
@@ -0,0 +1,205 @@
1
+ <template>
2
+ <xd-layout
3
+ :title="title"
4
+ background="#f8f8f8"
5
+ :show-bar="true"
6
+ :show-back="true"
7
+ @back="back"
8
+ @done="handleDone"
9
+ >
10
+ <template v-if="layoutDone">
11
+ <view>
12
+ <xd-store-cart
13
+ ref="xd-store-cart"
14
+ @onPay="handlePayClick"
15
+ @onCurtRemove="handleRemoveCurt"
16
+ @onCurtSetNumber="handleCurtSetNumber"
17
+ @onCartList="handleCurtList"
18
+ @onSelect="handleSelect"
19
+ :is-all="isAll"
20
+ ></xd-store-cart>
21
+ </view>
22
+ <template slot="footer">
23
+ <view class="app-body__footer" :style="{bottom: bottom + 'px'}">
24
+ <template v-if="selectCart !== null">
25
+ <view>
26
+ <xd-radio size="mini" @change="handleChangeAll" :value="isAll"></xd-radio>
27
+ </view>
28
+ <view>全选</view>
29
+ <view>
30
+ <xd-unit :price="getProductPrice(selectCart.totalPrice)" :font-size="40" :iocn-size=".45"></xd-unit>
31
+ </view>
32
+ <view>
33
+ <xd-button type="primary" size="mini" radius="10rpx">{{btnMsg}}</xd-button>
34
+ </view>
35
+ </template>
36
+ </view>
37
+ </template>
38
+ </template>
39
+ </xd-layout>
40
+ </template>
41
+
42
+ <script>
43
+ import XdLayout from "@/components/XdLayout/XdLayout";
44
+ import XdStoreCart from "@/components/XdCartList/XdCartList";
45
+ import XdRadio from "@/components/XdRadio/XdRadio";
46
+ import XdUnit from "@/components/XdUnit/XdUnit";
47
+ import XdButton from "@/components/XdButton/XdButton";
48
+
49
+ export default {
50
+ name: "XdCartInde",
51
+ components: {
52
+ XdButton,
53
+ XdUnit,
54
+ XdRadio,
55
+ XdLayout,
56
+ XdStoreCart
57
+ },
58
+ data() {
59
+ return {
60
+ top: 0, //顶部到顶部自定义位置距离
61
+ bottom: 0, //底部到底部自定义位置距离
62
+ layoutDone: false, //layout插件加载完成
63
+
64
+ isAll: true, //是否全选
65
+ btnMsg: '结算',
66
+ title: '购物车',
67
+ selectCart: null
68
+ }
69
+ },
70
+ created(){
71
+
72
+ },
73
+
74
+ methods: {
75
+
76
+ getProductPrice(price){
77
+ return this.$xdUniHelper.divisionFloatNumber(price, 100)
78
+ },
79
+
80
+ /**
81
+ * @description 全选选中购物车
82
+ * @param status
83
+ */
84
+ handleChangeAll(status){
85
+ this.$refs['xd-store-cart'].setIsAll(status);//调用插件内的方式
86
+ },
87
+
88
+ /**
89
+ * @description 选中购物车事件
90
+ * @param select
91
+ */
92
+ handleSelect(select){
93
+ console.log('handleSelect',select);
94
+ this.selectCart = select;
95
+ if(select.totalNum > 0) this.btnMsg = `结算(${select.totalNum})`;
96
+ else this.btnMsg = `结算`;
97
+ if (select.countNum > 0) this.title = `购物车(${select.countNum})`;
98
+ else this.title = `购物车`;
99
+ this.isAll = select.isAll;
100
+ },
101
+
102
+
103
+ /**
104
+ * @description 确认订单
105
+ * @param item 门店与商品信息
106
+ */
107
+ handlePayClick(item) {
108
+ console.log('handlePayClick',item)
109
+ },
110
+
111
+ /**
112
+ * @description 删除购物车商品
113
+ * @param product {Object} 商品信息
114
+ * @param item {Object} 门店信息
115
+ * @param delDone {Function} 商品删除完成回调
116
+ */
117
+ handleRemoveCurt(product, item , delDone){
118
+ console.log('handleRemoveCurt', product, item);
119
+ setTimeout(()=>{
120
+ delDone();
121
+ },2000)
122
+ },
123
+
124
+ /**
125
+ * @description 商品增加购买数量
126
+ * @param product {Object} 商品信息
127
+ * @param item {Object} 门店信息
128
+ * @param setDone {Function} 商品增加数量完成回调 1=>更新成功 2=>更新失败
129
+ */
130
+ handleCurtSetNumber(product, item, setDone) {
131
+ console.log('handleCurtSetNumber', product, item);
132
+ this.$xdShowLoading({});
133
+ setTimeout(() => {
134
+ setDone(1);
135
+ this.$xdHideLoading()
136
+ }, 1000)
137
+ },
138
+
139
+ /**
140
+ * @description 获取购物车数据
141
+ * @param resolve {Function} 获取购物车数据完成回调
142
+ */
143
+ handleCurtList(resolve) {
144
+ console.log('handleCurtSetNumber');
145
+ uni.showLoading({});
146
+ setTimeout(() => {
147
+ //null=>使用测试数据
148
+ //array => 正式数据
149
+ resolve(null);
150
+ uni.hideLoading()
151
+ }, 100)
152
+ },
153
+
154
+ handleDone(layoutInfo) {
155
+ let {bottom, top} = layoutInfo;
156
+ this.bottom = bottom;
157
+ this.layoutDone = true;
158
+ },
159
+
160
+ back() {
161
+ this.$xdUniHelper.navigateBack()
162
+ },
163
+
164
+ }
165
+ }
166
+ </script>
167
+
168
+ <style scoped lang="less">
169
+ .app-body {
170
+ &__footer {
171
+ position: fixed;
172
+ left: 0;
173
+ right: 0;
174
+ border-top: 1px solid #efefef;
175
+ background: #fff;
176
+ height: unit(100,rpx);
177
+ box-shadow: 0 0 unit(10,rpx) rgba(0,0,0,.1);
178
+ z-index: 100;
179
+ padding: 0 unit(20,rpx);
180
+
181
+ display: flex;
182
+ justify-content: space-between;
183
+ align-items: center;
184
+
185
+ & > view:first-child{
186
+ transform: scale(.86);
187
+ }
188
+
189
+ & > view:first-child,
190
+ & > view:nth-child(2),
191
+ & >view:last-child {
192
+ flex-shrink: 0;
193
+ }
194
+
195
+ & > view:nth-child(2){
196
+ margin-left: unit(20,rpx);
197
+ }
198
+
199
+ & > view:nth-child(3) {
200
+ flex: 1;
201
+ margin-left: unit(20,rpx);
202
+ }
203
+ }
204
+ }
205
+ </style>
@@ -0,0 +1,149 @@
1
+ <template>
2
+ <xd-layout
3
+ :title="title"
4
+ background="#f8f8f8"
5
+ :show-bar="true"
6
+ @back="back"
7
+ >
8
+ <view style="padding: 20rpx; box-sizing: border-box">
9
+ <xd-cart-no-store-list
10
+ :count.sync="productCount"
11
+ @onPay="handlePayClick"
12
+ @onCartRemove="handleRemoveCart"
13
+ @onCartUpdateNumber="handleCartSetNumber"
14
+ @onCartList="handleCartList"
15
+ @onToCartDetail="handleToCartDetail"
16
+ @onRecommendList="handleRecommendList"
17
+ @onToProductDetail="handleToProductDetail"
18
+ :is-all="false"
19
+ ></xd-cart-no-store-list>
20
+ </view>
21
+
22
+ </xd-layout>
23
+ </template>
24
+
25
+ <script>
26
+ import XdLayout from "@/components/XdLayout/XdLayout";
27
+ import XdCartNoStoreList from "@/components/XdCartNoStoreList/XdCartNoStoreList";
28
+
29
+ export default {
30
+ name: "XdCartInde",
31
+ components: {
32
+ XdLayout,
33
+ XdCartNoStoreList
34
+ },
35
+ data() {
36
+ return {
37
+ productCount: 0,
38
+ title: '购物车'
39
+ }
40
+ },
41
+
42
+ watch:{
43
+ productCount(val){
44
+ if(val > 0) {
45
+ this.title = `购物车(${val})`
46
+ }
47
+ else{
48
+ this.title = `购物车`
49
+ }
50
+ },
51
+ },
52
+
53
+ created(){
54
+
55
+ },
56
+
57
+ methods: {
58
+ back(){
59
+ this.$xdUniHelper.navigateBack()
60
+ },
61
+
62
+ /**
63
+ * @description 确认订单
64
+ * @param item 门店与商品信息
65
+ */
66
+ handlePayClick(item) {
67
+ console.log('handlePayClick',item)
68
+ },
69
+
70
+ /**
71
+ * @description 删除购物车商品
72
+ * @param item {Object} 商品信息
73
+ * @param index {Number} 当前商品所在列表位置
74
+ * @param number {Number} 当前更改商品数量
75
+ * @param delDone {Function} 商品删除完成回调 1:删除购物成功 2:删除购物成功
76
+ */
77
+ handleRemoveCart({item,index, number}, delDone){
78
+ console.log('handleRemoveCart', item, index, number);
79
+ setTimeout(()=>{
80
+ delDone(1);
81
+ },2000)
82
+ },
83
+
84
+ /**
85
+ * @description 更新购物车商品数量
86
+ * @param item {Object} 商品信息
87
+ * @param index {Number} 当前商品所在列表位置
88
+ * @param number {Number} 当前更改商品数量
89
+ * @param setDone {Function} 商品更新数量完成回调
90
+ * @return setDone返回值 1:更新购物成功 2:更新购物失败
91
+ */
92
+ handleCartSetNumber({item, index, number}, setDone) {
93
+ console.log('handleCartSetNumber', item, index, number);
94
+ setTimeout(() => {
95
+ setDone(2);
96
+ }, 2000)
97
+ },
98
+
99
+ /**
100
+ * @description 获取购物车数据
101
+ * @param resolve {Function} 获取购物车数据完成回调
102
+ */
103
+ handleCartList(resolve) {
104
+ setTimeout(() => {
105
+ //null=>使用测试数据
106
+ //array => 正式数据
107
+ resolve(null);
108
+ uni.hideLoading()
109
+ }, 1000)
110
+ },
111
+
112
+
113
+ /**
114
+ * @description 获取推荐数据列表
115
+ * @param resolve {Function} 获取推荐数据列表完成回调
116
+ */
117
+ handleRecommendList(resolve) {
118
+ setTimeout(() => {
119
+ //null=>使用测试数据
120
+ //array => 正式数据
121
+ resolve(null);
122
+ }, 1000)
123
+ },
124
+
125
+ /**
126
+ * @description 推荐商品查看详情
127
+ */
128
+ handleToProductDetail(item){
129
+ console.log('handleToProductDetail',item);
130
+ },
131
+
132
+
133
+ /**
134
+ * @description 购物车查看详情事件
135
+ * @param item {Function} 获取购物车数据完成回调
136
+ */
137
+ handleToCartDetail(item){
138
+ console.log(item)
139
+ }
140
+
141
+
142
+
143
+ }
144
+ }
145
+ </script>
146
+
147
+ <style scoped lang="less">
148
+
149
+ </style>
@@ -0,0 +1,73 @@
1
+ <template>
2
+ <xd-layout
3
+ title="收银台"
4
+ background="#f8f8f8"
5
+ :show-bar="true"
6
+ :show-footer="false"
7
+ @back="back"
8
+ >
9
+ <view class="app-body">
10
+ <xd-store-cashier
11
+ @onReceiveTime="handleReceiveTime"
12
+ @onChangeAddress="handleChangeAddress"
13
+ >
14
+
15
+ </xd-store-cashier>
16
+ </view>
17
+ </xd-layout>
18
+ </template>
19
+
20
+ <script>
21
+ import XdLayout from "@/components/XdLayout/XdLayout";
22
+ import XdStoreCashier from "@/components/XdStoreCashier/XdStoreCashier";
23
+
24
+
25
+ export default {
26
+ name: "XdCartInde",
27
+ components: {
28
+ XdStoreCashier,
29
+ XdLayout,
30
+ },
31
+ data() {
32
+ return {
33
+
34
+ }
35
+ },
36
+
37
+ created(){
38
+
39
+ },
40
+
41
+ methods: {
42
+
43
+ /**
44
+ * @description 切换配送地址
45
+ */
46
+ handleChangeAddress(){
47
+ console.log('handleChangeAddress')
48
+ },
49
+
50
+ /**
51
+ * @description 获取配送时间段数据列表
52
+ * @param resolve 成功回调事件 null=> 使用测试数据 object => 正式数控
53
+ */
54
+ handleReceiveTime(resolve){
55
+ console.log('handleReceiveTime');
56
+ setTimeout(() => {
57
+ resolve(null);
58
+ }, 500)
59
+ },
60
+
61
+
62
+ back(){
63
+ this.$xdUniHelper.navigateBack()
64
+ },
65
+ }
66
+ }
67
+ </script>
68
+
69
+ <style scoped lang="less">
70
+ .app-body {
71
+
72
+ }
73
+ </style>