Compare commits
123 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 7480569afe | |||
| 2d111ae180 | |||
|
|
5ab8745e0a | ||
|
|
1bd3b228c4 | ||
| b0bbe7ada4 | |||
|
|
eb6339e2c6 | ||
|
|
a566fd4e0f | ||
|
|
dbd676bfb1 | ||
|
|
9f46bc8179 | ||
|
|
447cdfc9c1 | ||
|
|
c2364361d3 | ||
| cc672b7178 | |||
| 43ea49f03d | |||
| 2012e82d4b | |||
|
|
b473f617b8 | ||
|
|
a72b2a850c | ||
|
|
004efeafd2 | ||
|
|
84f9da386b | ||
|
|
a43ff5488f | ||
|
|
cbeb006a2e | ||
|
|
a8b78b20e6 | ||
|
|
1a58020062 | ||
|
|
851b48f822 | ||
|
|
d069df8461 | ||
|
|
a0c6678a9e | ||
|
|
101ff20634 | ||
|
|
27d2d0b231 | ||
|
|
f716e5641e | ||
|
|
eab91ebec0 | ||
| c63783a31d | |||
|
|
16ff7c351a | ||
|
|
4bdab41028 | ||
|
|
3c09cca6f4 | ||
|
|
812abdfea3 | ||
|
|
2e862f298b | ||
|
|
e1a88d88f1 | ||
|
|
bd2d9b5076 | ||
|
|
5d278a2a38 | ||
|
|
a1524b7e9a | ||
|
|
9e8d512bf0 | ||
|
|
615f731c38 | ||
|
|
34d43fabd2 | ||
|
|
966ff03967 | ||
|
|
87e67fa36a | ||
|
|
0578fba964 | ||
|
|
c79a1ebee5 | ||
|
|
4889ce9ff9 | ||
|
|
24b1e33bbb | ||
|
|
8dd4b5c084 | ||
|
|
f04b8383bc | ||
|
|
02f9fcbf5c | ||
|
|
930cfd4886 | ||
|
|
99214ff83c | ||
|
|
fedecba65c | ||
|
|
41a6ada67b | ||
|
|
68282cc1b3 | ||
|
|
4391347b87 | ||
|
|
c74f0b91b1 | ||
|
|
e8fbaf9ff3 | ||
|
|
cdb7f61cc9 | ||
|
|
f37335925b | ||
|
|
f6faa871eb | ||
|
|
65c5ada66f | ||
|
|
2b1417beba | ||
|
|
8178ad3ea3 | ||
|
|
39b5a36b55 | ||
|
|
e714b00177 | ||
|
|
76ce8a51d4 | ||
|
|
6cab276416 | ||
|
|
fe66032d7e | ||
|
|
07be220126 | ||
|
|
85b6610eaa | ||
|
|
a9701f4347 | ||
|
|
6e01a07d0d | ||
|
|
b3cfa37bb0 | ||
|
|
5745ec68f5 | ||
|
|
a7861abca0 | ||
|
|
e52a5fd2f3 | ||
|
|
0344e669b4 | ||
|
|
6032cfc13d | ||
|
|
1155891056 | ||
|
|
038c9ecda5 | ||
| 17e7e59c9d | |||
|
|
3f46bf31e8 | ||
|
|
601d49f812 | ||
|
|
f5ecd349b6 | ||
|
|
333b945181 | ||
|
|
8317f9c19f | ||
|
|
040b6fb4ca | ||
|
|
6cb98e9f37 | ||
|
|
27e4e817c8 | ||
|
|
7d6ef1a603 | ||
|
|
86f3712098 | ||
|
|
8aa7027bf6 | ||
|
|
28ae2b34b1 | ||
|
|
4b0a1eaa17 | ||
|
|
293413a7e7 | ||
|
|
d50c8157af | ||
|
|
4ecfb6e907 | ||
|
|
2257caed23 | ||
|
|
2fe7fbbbd9 | ||
|
|
b6c4e65ed9 | ||
|
|
0bcad2ecb1 | ||
|
|
d551c03564 | ||
|
|
f1fd270762 | ||
|
|
d663124cf4 | ||
|
|
dcafefc065 | ||
|
|
ce588ca195 | ||
|
|
f75c13cf63 | ||
|
|
908f1e8bd0 | ||
|
|
ee731a4892 | ||
|
|
d72b3db56e | ||
|
|
ede9287ad9 | ||
|
|
3d8f433afd | ||
|
|
0e768d72f7 | ||
|
|
e53abdda81 | ||
|
|
5a6938a857 | ||
|
|
b3ef52a10d | ||
|
|
3e26f6d3b4 | ||
|
|
789f8bb290 | ||
|
|
8983c50e47 | ||
|
|
dd9a270507 | ||
|
|
997aad33a7 |
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
.hbuilderx
|
||||||
|
.history
|
||||||
6
.idea/vcs.xml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="VcsDirectoryMappings">
|
||||||
|
<mapping directory="" vcs="Git" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
298
.idea/workspace.xml
Normal file
@ -0,0 +1,298 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="ChangeListManager">
|
||||||
|
<list default="true" id="7ad6e168-2bad-4033-9487-e4cb7263474e" name="Changes" comment="">
|
||||||
|
<change beforePath="$PROJECT_DIR$/activity/cutprice/detail.vue" beforeDir="false" afterPath="$PROJECT_DIR$/activity/cutprice/detail.vue" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/pages/checkout/checkout.vue" beforeDir="false" afterPath="$PROJECT_DIR$/pages/checkout/checkout.vue" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/coupon/detail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/coupon/detail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/coupon/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/coupon/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/coupon/member.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/coupon/member.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/cutprice/detail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/cutprice/detail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/cutprice/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/cutprice/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/cutprice/userlist.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/cutprice/userlist.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/fightgroup/detail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/fightgroup/detail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/fightgroup/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/fightgroup/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/fightgroup/order.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/fightgroup/order.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/gift/exchange.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/gift/exchange.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/giftbag/detail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/giftbag/detail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/giftbag/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/giftbag/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/luckydraw/detail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/luckydraw/detail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/market/checkin.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/market/checkin.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/market/detail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/market/detail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/market/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/market/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/market/signin.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/market/signin.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/plantform/secondlist.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/plantform/secondlist.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/smashgoldeneggs/detail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/smashgoldeneggs/detail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/smashgoldeneggs/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/activity/smashgoldeneggs/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/address/selectCity.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/address/selectCity.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/address/selectShippingAddress.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/address/selectShippingAddress.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/address/umask.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/address/umask.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/chain/chain/favorable.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/chain/chain/favorable.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/chain/chain/favorabledetail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/chain/chain/favorabledetail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/chain/chain/index.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/chain/chain/index.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/chain/chain/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/chain/chain/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/chain/chain/scan.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/chain/chain/scan.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/category.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/category.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/detail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/detail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/lists.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/lists.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/plate.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/plate.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/post.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/post.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/searchsq.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/searchsq.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/userspace.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/userspace.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/video.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/community/video.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/components/chunlei-video/chunlei-video.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/components/chunlei-video/chunlei-video.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/components/douyin-scrollview/douyin-H-scrollview.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/components/douyin-scrollview/douyin-H-scrollview.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/components/five-comment/five-comment.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/components/five-comment/five-comment.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/components/five-mul-commentlist/five-mul-commentlist.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/components/five-mul-commentlist/five-mul-commentlist.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/components/q-post-waterfall/q-post-waterfall.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/components/q-post-waterfall/q-post-waterfall.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/components/tab.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/components/tab.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/components/video-lists/video-lists.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/components/video-lists/video-lists.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/nvueSwiper/nvueSwiper.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/community/nvueSwiper/nvueSwiper.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/HM-filterDropdown/HM-filterDropdown.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/HM-filterDropdown/HM-filterDropdown.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/WaterfallsFlow/WaterfallsFlow.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/WaterfallsFlow/WaterfallsFlow.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/WaterfallsFlowItem/WaterfallsFlowItem.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/WaterfallsFlowItem/WaterfallsFlowItem.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/actibity-countdown.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/actibity-countdown.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/chunlei-video/chunlei-video.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/chunlei-video/chunlei-video.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/coupon/coupon.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/coupon/coupon.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/day-countdown.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/day-countdown.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/delivery-time-op/delivery-time-op.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/delivery-time-op/delivery-time-op.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/download-app.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/download-app.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/five-comment/five-comment.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/five-comment/five-comment.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/five-mul-commentlist/five-mul-commentlist.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/five-mul-commentlist/five-mul-commentlist.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/guess-you-like.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/guess-you-like.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/header-nav-menu.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/header-nav-menu.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/item-list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/item-list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/jin-attachment/jin-attachment.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/jin-attachment/jin-attachment.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/loading.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/loading.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/loginPopup.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/loginPopup.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/mpvue-citypicker/mpvueCityPicker.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/mpvue-citypicker/mpvueCityPicker.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/payment-box.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/payment-box.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/product-list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/product-list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/quick-nav.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/quick-nav.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/share-box-mp.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/share-box-mp.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/shop/category.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/shop/category.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/status-bar.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/status-bar.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/store-lists.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/store-lists.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/diy-countdown.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/diy-countdown.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/diy.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/diy.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/shoptheme1.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/shoptheme1.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/shoptheme2.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/shoptheme2.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/shoptheme3.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/shoptheme3.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/shoptheme4.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/shoptheme4.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/shoptheme5.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/shoptheme5.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/shoptheme6.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/themes/shoptheme6.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/tp-search/tp-search.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/tp-search/tp-search.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/u-lazy-load/u-lazy-load.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/u-lazy-load/u-lazy-load.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/u-waterfall/u-waterfall.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/u-waterfall/u-waterfall.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-badge.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-badge.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-collapse-item/uni-collapse-item.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-collapse-item/uni-collapse-item.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-collapse/uni-collapse.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-collapse/uni-collapse.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-drawer.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-drawer.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-drawer/uni-drawer.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-drawer/uni-drawer.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-icons/uni-icons.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-icons/uni-icons.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-list-item/uni-list-item.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-list-item/uni-list-item.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-list/uni-list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-list/uni-list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-nav-bar/uni-nav-bar.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-nav-bar/uni-nav-bar.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-nav-bar/uni-status-bar.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-nav-bar/uni-status-bar.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-number-box/uni-number-box.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-number-box/uni-number-box.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-popup/uni-popup.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-popup/uni-popup.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-tag/uni-tag.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-tag/uni-tag.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-transition/uni-transition.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-transition/uni-transition.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/verify-code/imgcode.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/verify-code/imgcode.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/verifycode-dialog/verifycode-dialog.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/verifycode-dialog/verifycode-dialog.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/video-lists/video-lists.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/video-lists/video-lists.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/watch-login/watch-button.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/watch-login/watch-button.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/watch-login/watch-input.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/watch-login/watch-input.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/zy-search/zy-search.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/components/zy-search/zy-search.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/hall/purchase/add.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/hall/purchase/add.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/hall/purchase/detail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/hall/purchase/detail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/hall/purchase/lists.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/hall/purchase/lists.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/hall/purchase/my.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/hall/purchase/my.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/hall/purchase/receive.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/hall/purchase/receive.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/im/chat/chat.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/im/chat/chat.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/im/chat/emotion/index.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/im/chat/emotion/index.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/im/infos/infos.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/im/infos/infos.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/integral/integral/exchange.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/integral/integral/exchange.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/integral/integral/integral.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/integral/integral/integral.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/integral/integral/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/integral/integral/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/integral/integral/product.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/integral/integral/product.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/integral/integral/record.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/integral/integral/record.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/integral/sp/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/integral/sp/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/address/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/address/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/address/manage.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/address/manage.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/address/umask.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/address/umask.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/card/detail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/card/detail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/card/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/card/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/card/user_list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/card/user_list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/balance.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/balance.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/bankcard-add.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/bankcard-add.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/bankcard-list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/bankcard-list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/commissionapply.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/commissionapply.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/commissionwithdraw.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/commissionwithdraw.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/predeposit.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/predeposit.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/predepositapply.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/predepositapply.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/predepositapplylist.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/predepositapplylist.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/predepositlist.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/predepositlist.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/recharge.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/recharge.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/rechargelist.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/cash/rechargelist.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/fans/endorsement.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/fans/endorsement.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/fans/fansrank.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/fans/fansrank.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/fans/index.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/fans/index.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/fans/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/fans/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/fans/profitlist.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/fans/profitlist.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/fanxiao-sign/sigin-in.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/fanxiao-sign/sigin-in.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/invoice/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/invoice/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/invoice/manage.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/invoice/manage.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/invoice/order.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/invoice/order.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/activity.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/activity.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/bindphone.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/bindphone.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/browse.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/browse.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/card.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/card.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/carddesc.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/carddesc.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/certification.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/certification.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/certifiedsns.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/certifiedsns.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/coupon.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/coupon.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/cwx-keyboard/cwx-keyboard.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/cwx-keyboard/cwx-keyboard.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/data.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/data.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/favorites-store.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/favorites-store.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/favorites.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/favorites.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/feedback-add.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/feedback-add.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/feedback.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/feedback.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/growth.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/growth.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/logout.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/logout.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/lx-coupon/lx-coupon.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/lx-coupon/lx-coupon.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/message.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/message.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/messagedetail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/messagedetail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/options.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/options.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/paypwd.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/paypwd.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/prize.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/prize.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/receiveprize.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/receiveprize.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/returndetail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/returndetail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/returnlist.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/returnlist.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/settlement-account-manage.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/settlement-account-manage.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/settlement-account.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/settlement-account.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/sign.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/sign.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/store-apply.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/store-apply.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/supermarketlList.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/supermarketlList.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/task.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/member/task.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/order/detail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/order/detail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/order/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/order/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/order/logistics.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/order/logistics.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/product/comment.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/product/comment.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/product/coupon.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/product/coupon.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/product/return.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/product/return.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/zwy-calendar/zwy-calendar.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/member/zwy-calendar/zwy-calendar.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/cart/cart.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/cart/cart.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/category/category.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/category/category.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/category/storeCategory.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/category/storeCategory.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/checkout/checkout.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/checkout/checkout.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/cart.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/cart.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/guide.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/guide.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/h5_merch_apply.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/h5_merch_apply.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/image.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/image.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/member.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/member.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/login/login.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/login/login.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/commentlist.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/commentlist.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/detail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/detail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/article/category.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/article/category.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/article/detail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/article/detail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/article/index.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/article/index.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/article/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/article/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/category/brands.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/category/brands.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/category/tab-nvue/brandproduct.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/category/tab-nvue/brandproduct.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/diy-page/diy-page.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/diy-page/diy-page.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/index/about.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/index/about.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/index/category.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/index/category.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/index/components/tabbar.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/index/components/tabbar.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/index/store.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/index/store.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/info/edit.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/info/edit.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/info/list.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/info/list.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/login/forget.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/login/forget.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/login/pwd.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/login/pwd.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/login/register.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/login/register.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/login/sms.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/login/sms.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/product/tag.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/product/tag.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/scan/scan.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/scan/scan.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/search/search.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/search/search.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/subsite/ss-select-city/ss-select-city.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/subsite/ss-select-city/ss-select-city.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/subsite/subsitelist.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/subsite/subsitelist.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/video/video.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/video/video.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/webpage/web.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/webpage/web.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/westore/index.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/pagesub/westore/index.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/index/index.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/index/index.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/order/autograph.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/order/autograph.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/order/deliver.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/order/deliver.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/order/detail.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/order/detail.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/order/lists.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/order/lists.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/order/pay.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/order/pay.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/order/write.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/order/write.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/product/add.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/product/add.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/product/lists.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/product/lists.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/product/pool.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/product/pool.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/product/sale.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/product/sale.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/product/save.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/product/save.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/store/account.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/store/account.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/store/address.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/store/address.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/store/express.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/store/express.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/store/manage.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/store/manage.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/uni-plate-input/uni-plate-input.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/uni-plate-input/uni-plate-input.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/user/add.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/user/add.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/user/address.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/user/address.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/user/cart.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/user/cart.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/user/manage.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/seller/user/manage.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/ms-activity-tag/components/ms-activity-tag/ms-activity-tag.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/ms-activity-tag/components/ms-activity-tag/ms-activity-tag.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/search-box/components/search-box/search-box.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/search-box/components/search-box/search-box.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js.map" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js.map" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/mp-weixin/activity/cutprice/detail.js" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/mp-weixin/activity/cutprice/detail.js" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/mp-weixin/components/u-parse/components/wxParseImg.json" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/mp-weixin/components/u-parse/components/wxParseImg.json" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/mp-weixin/pages/checkout/checkout.js" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/mp-weixin/pages/checkout/checkout.js" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/mp-weixin/pages/checkout/checkout.wxml" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/mp-weixin/pages/checkout/checkout.wxml" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/unpackage/dist/dev/mp-weixin/project.config.json" beforeDir="false" afterPath="$PROJECT_DIR$/unpackage/dist/dev/mp-weixin/project.config.json" afterDir="false" />
|
||||||
|
</list>
|
||||||
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
|
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||||
|
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||||
|
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||||
|
</component>
|
||||||
|
<component name="Git.Settings">
|
||||||
|
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
||||||
|
</component>
|
||||||
|
<component name="ProjectColorInfo"><![CDATA[{
|
||||||
|
"customColor": "",
|
||||||
|
"associatedIndex": 5
|
||||||
|
}]]></component>
|
||||||
|
<component name="ProjectId" id="37V4yfMUMaf2oGpicbnRZMvXDJj" />
|
||||||
|
<component name="ProjectViewState">
|
||||||
|
<option name="hideEmptyMiddlePackages" value="true" />
|
||||||
|
<option name="showLibraryContents" value="true" />
|
||||||
|
</component>
|
||||||
|
<component name="PropertiesComponent"><![CDATA[{
|
||||||
|
"keyToString": {
|
||||||
|
"RunOnceActivity.OpenProjectViewOnStart": "true",
|
||||||
|
"RunOnceActivity.ShowReadmeOnStart": "true",
|
||||||
|
"WebServerToolWindowFactoryState": "false",
|
||||||
|
"git-widget-placeholder": "main",
|
||||||
|
"settings.editor.selected.configurable": "preferences.pluginManager",
|
||||||
|
"vue.rearranger.settings.migration": "true"
|
||||||
|
}
|
||||||
|
}]]></component>
|
||||||
|
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
|
||||||
|
<component name="TaskManager">
|
||||||
|
<task active="true" id="Default" summary="Default task">
|
||||||
|
<changelist id="7ad6e168-2bad-4033-9487-e4cb7263474e" name="Changes" comment="" />
|
||||||
|
<created>1766975162564</created>
|
||||||
|
<option name="number" value="Default" />
|
||||||
|
<option name="presentableId" value="Default" />
|
||||||
|
<updated>1766975162564</updated>
|
||||||
|
<workItem from="1766975163875" duration="113000" />
|
||||||
|
</task>
|
||||||
|
<servers />
|
||||||
|
</component>
|
||||||
|
<component name="TypeScriptGeneratedFilesManager">
|
||||||
|
<option name="version" value="3" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
40
Jenkinsfile
vendored
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
pipeline {
|
||||||
|
agent any
|
||||||
|
|
||||||
|
environment {
|
||||||
|
DEPLOY_DIR = '/data/nginx/www/fafamall/h5' // 主节点部署目录(保留原配置)
|
||||||
|
DIST_PATH = 'dist' // 编译产物目录(保留原配置)
|
||||||
|
SLAVE_IP = '172.16.0.10' // 从节点 IP(与之前一致)
|
||||||
|
SLAVE_DEPLOY_DIR = '/data/nginx/www/fafamall/h5' // 从节点目标目录(与主节点一致)
|
||||||
|
SSH_PORT = '2203' // 从节点 SSH 端口(固定配置)
|
||||||
|
SSH_KEY = '/root/.ssh/id_rsa' // 主节点免密私钥路径(固定配置)
|
||||||
|
}
|
||||||
|
|
||||||
|
stages {
|
||||||
|
stage('拉取代码并验证') {
|
||||||
|
steps {
|
||||||
|
checkout scm
|
||||||
|
sh """
|
||||||
|
[ -d "${DIST_PATH}" ] || { echo "错误:未找到 ${DIST_PATH} 文件夹"; exit 1; }
|
||||||
|
echo "${DIST_PATH} 验证通过"
|
||||||
|
"""
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('主节点部署') {
|
||||||
|
steps {
|
||||||
|
sh """
|
||||||
|
mkdir -p ${DEPLOY_DIR}
|
||||||
|
rm -rf ${DEPLOY_DIR}/*
|
||||||
|
cp -r ${DIST_PATH}/* ${DEPLOY_DIR}/
|
||||||
|
echo "主节点部署完成:${DIST_PATH} → ${DEPLOY_DIR}"
|
||||||
|
"""
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
post {
|
||||||
|
success { echo "🎉 h5 项目 - 主节点部署+从节点同步+Nginx重启全部完成!" }
|
||||||
|
failure { echo "❌ h5 项目 - 部署/同步流程失败,请排查问题后重试" }
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -1,129 +1,364 @@
|
|||||||
<template>
|
<template>
|
||||||
<view>
|
<view>
|
||||||
<view class='tails_box' :style='"height:" + CenterCoupon.AllowOfflineWriteOff?"640rpx":"400rpx"'>
|
<view
|
||||||
<view class='tails_couname'>
|
class="tails_box"
|
||||||
|
:style="
|
||||||
|
'height:' + CenterCoupon.AllowOfflineWriteOff ? '640rpx' : '400rpx'
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<view class="tails_couname">
|
||||||
<text>
|
<text>
|
||||||
{{CenterCoupon.activity_name}}
|
{{ CenterCoupon.activity_name }}
|
||||||
<span style="font-size: 12rpx;margin-left:6rpx;color:#FF9933" v-if="CenterCoupon.activity_on_is_off === 1">(线下使用)</span>
|
<span
|
||||||
|
style="font-size: 12rpx; margin-left: 6rpx; color: #ff9933"
|
||||||
|
v-if="CenterCoupon.activity_on_is_off === 1"
|
||||||
|
>(线下使用)</span
|
||||||
|
>
|
||||||
</text>
|
</text>
|
||||||
</view>
|
</view>
|
||||||
<view class='tails_mon'><label style='font-size:30rpx;margin-right:8rpx;margin-left:25%'>{{__('¥')}}</label><label style='font-size:60rpx;margin-right: 24rpx;ont-weight:bold;'>{{CenterCoupon.voucher_price || CenterCoupon.activity_rule.voucher_price}}</label><label style='font-size:24rpx;color:#9B9B9B'>{{sprintf(__('满¥%s可用'), CenterCoupon.voucher_subtotal || CenterCoupon.activity_rule.requirement.buy.subtotal )}}</label></view>
|
<view class="tails_mon"
|
||||||
<view class='tails_time' style='width:100%'>{{sprintf(__('有效日期至:%s'), CenterCoupon.voucher_end_date || CenterCoupon.activity_endtime)}}
|
><label
|
||||||
|
style="font-size: 30rpx; margin-right: 8rpx; margin-left: 25%"
|
||||||
|
>{{ __("¥") }}</label
|
||||||
|
><label
|
||||||
|
style="font-size: 60rpx; margin-right: 24rpx; ont-weight: bold"
|
||||||
|
>{{
|
||||||
|
CenterCoupon.voucher_price ||
|
||||||
|
CenterCoupon.activity_rule.voucher_price
|
||||||
|
}}</label
|
||||||
|
><label style="font-size: 24rpx; color: #9b9b9b">{{
|
||||||
|
sprintf(
|
||||||
|
__("满¥%s可用"),
|
||||||
|
CenterCoupon.voucher_subtotal ||
|
||||||
|
CenterCoupon.activity_rule.requirement.buy.subtotal
|
||||||
|
)
|
||||||
|
}}</label></view
|
||||||
|
>
|
||||||
|
<view class="tails_time" style="width: 100%"
|
||||||
|
>{{
|
||||||
|
sprintf(
|
||||||
|
__("有效日期至:%s"),
|
||||||
|
CenterCoupon.voucher_end_date || CenterCoupon.activity_endtime
|
||||||
|
)
|
||||||
|
}}
|
||||||
</view>
|
</view>
|
||||||
<view class='tails_time' v-if="CenterCoupon.AllowOfflineWriteOff">
|
<view class="tails_time" v-if="CenterCoupon.AllowOfflineWriteOff">
|
||||||
<image :src='CenterCoupon.WriteOffCodeUrl' style="width: 64%;height: 289rpx;"></image>
|
<image
|
||||||
|
:src="CenterCoupon.WriteOffCodeUrl"
|
||||||
|
style="width: 64%; height: 289rpx"
|
||||||
|
></image>
|
||||||
</view>
|
</view>
|
||||||
<view class='tails_time' style='font-size:24rpx;color:#9B9B9B ' v-if="CenterCoupon.AllowOfflineWriteOff">
|
<view
|
||||||
{{CenterCoupon.WriteOffCode}}
|
class="tails_time"
|
||||||
|
style="font-size: 24rpx; color: #9b9b9b"
|
||||||
|
v-if="CenterCoupon.AllowOfflineWriteOff"
|
||||||
|
>
|
||||||
|
{{ CenterCoupon.WriteOffCode }}
|
||||||
</view>
|
</view>
|
||||||
<view class='btn_box' v-if="!CenterCoupon.AllowOfflineWriteOff" style="height: 100rpx;">
|
<view
|
||||||
<view class='but-stl' style="margin-right: 86rpx;" @tap="receivenowWeixin" v-if="CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_NORMAL && CenterCoupon.CouponType==2" :data-id="CenterCoupon.activity_id">{{__('立即领取')}}
|
class="btn_box"
|
||||||
|
v-if="!CenterCoupon.AllowOfflineWriteOff"
|
||||||
|
style="height: 100rpx"
|
||||||
|
>
|
||||||
|
<view
|
||||||
|
class="but-stl"
|
||||||
|
style="margin-right: 86rpx"
|
||||||
|
@tap="receivenowWeixin"
|
||||||
|
v-if="
|
||||||
|
CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_NORMAL &&
|
||||||
|
CenterCoupon.CouponType == 2
|
||||||
|
"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
>{{ __("立即领取") }}
|
||||||
</view>
|
</view>
|
||||||
<view class='but-stl' style="margin-right: 86rpx;" @tap="receivenow" v-if="CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_NORMAL" :data-id="CenterCoupon.activity_id">{{__('立即领取')}}
|
<view
|
||||||
|
class="but-stl"
|
||||||
|
style="margin-right: 86rpx"
|
||||||
|
@tap="receivenow"
|
||||||
|
v-if="CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_NORMAL"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
>{{ __("立即领取") }}
|
||||||
</view>
|
</view>
|
||||||
<view class='but-stl' style="margin-right: 86rpx;" v-if="(CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_FINISHED || CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_CLOSED) && CenterCoupon.voucher_state_id != StateCode.VOUCHER_STATE_USED" :data-id="CenterCoupon.activity_id">{{__('已领完')}}
|
<view
|
||||||
|
class="but-stl"
|
||||||
|
style="margin-right: 86rpx"
|
||||||
|
v-if="
|
||||||
|
(CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_FINISHED ||
|
||||||
|
CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_CLOSED) &&
|
||||||
|
CenterCoupon.voucher_state_id != StateCode.VOUCHER_STATE_USED
|
||||||
|
"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
>{{ __("已领完") }}
|
||||||
</view>
|
</view>
|
||||||
<view class='but-stl' style="margin-right: 86rpx;" :data-id="CenterCoupon.activity_id" v-if="CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_USED">{{__('已使用')}}
|
<view
|
||||||
|
class="but-stl"
|
||||||
|
style="margin-right: 86rpx"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
v-if="CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_USED"
|
||||||
|
>{{ __("已使用") }}
|
||||||
</view>
|
</view>
|
||||||
<view class='but-stl' style="margin-right: 86rpx;" :data-id="CenterCoupon.activity_id" v-if="CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_TIMEOUT">{{__('已过期')}}
|
<view
|
||||||
|
class="but-stl"
|
||||||
|
style="margin-right: 86rpx"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
v-if="
|
||||||
|
CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_TIMEOUT
|
||||||
|
"
|
||||||
|
>{{ __("已过期") }}
|
||||||
</view>
|
</view>
|
||||||
<block v-if="CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_UNUSED && CenterCoupon.AllowOfflineWriteOff == false">
|
<block
|
||||||
<view class='but-stl' style="margin-right: 86rpx;" v-if="(isOnLine)" :data-id="CenterCoupon.activity_id" :data-store_id="(CenterCoupon.store_id)" @tap="usenow">{{__('立即使用')}}
|
v-if="
|
||||||
|
CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_UNUSED &&
|
||||||
|
CenterCoupon.AllowOfflineWriteOff == false
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<view
|
||||||
|
class="but-stl"
|
||||||
|
style="margin-right: 86rpx"
|
||||||
|
v-if="isOnLine"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
:data-store_id="CenterCoupon.store_id"
|
||||||
|
@tap="usenow"
|
||||||
|
>{{ __("立即使用") }}
|
||||||
</view>
|
</view>
|
||||||
<view class='but-stl' style="margin-right: 86rpx;" v-else :data-id="CenterCoupon.activity_id" :data-store_id="(CenterCoupon.store_id)" :data-writeoff_code="CenterCoupon.writeoff_code" @tap="Make">{{__('立即使用')}}
|
<view
|
||||||
|
class="but-stl"
|
||||||
|
style="margin-right: 86rpx"
|
||||||
|
v-else
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
:data-store_id="CenterCoupon.store_id"
|
||||||
|
:data-writeoff_code="CenterCoupon.writeoff_code"
|
||||||
|
@tap="Make"
|
||||||
|
>{{ __("立即使用") }}
|
||||||
</view>
|
</view>
|
||||||
</block>
|
</block>
|
||||||
|
|
||||||
|
<view
|
||||||
<view class='but-stl' style="margin-right: 86rpx;" v-if="CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_UNUSED && CenterCoupon.AllowOfflineWriteOff" :data-id="CenterCoupon.activity_id" :data-store_id="(CenterCoupon.store_id)" @tap="usenow">{{__('在线使用')}}
|
class="but-stl"
|
||||||
|
style="margin-right: 86rpx"
|
||||||
|
v-if="
|
||||||
|
CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_UNUSED &&
|
||||||
|
CenterCoupon.AllowOfflineWriteOff
|
||||||
|
"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
:data-store_id="CenterCoupon.store_id"
|
||||||
|
@tap="usenow"
|
||||||
|
>{{ __("在线使用") }}
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
<view
|
||||||
<view :data-id="CenterCoupon.activity_id" :data-name="CenterCoupon.Name" @tap="shareBox" class='but-stl02' v-if="false">{{__('分享给好友')}}
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
:data-name="CenterCoupon.Name"
|
||||||
|
@tap="shareBox"
|
||||||
|
class="but-stl02"
|
||||||
|
v-if="false"
|
||||||
|
>{{ __("分享给好友") }}
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class='img_box'>
|
<view class="img_box">
|
||||||
<image src="https://static.lancerdt.com/xcxfile/appicon/coupon/partingLine.png" style="width:100%;height:100%;vertical-align:top;"></image>
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/coupon/partingLine.png"
|
||||||
|
style="width: 100%; height: 100%; vertical-align: top"
|
||||||
|
></image>
|
||||||
</view>
|
</view>
|
||||||
<view class='tailfoli' style="overflow: hidden;">
|
<view class="tailfoli" style="overflow: hidden">
|
||||||
<view class='btn_box' style='margin:9px auto 0 auto;overflow: hidden' v-if="CenterCoupon.AllowOfflineWriteOff">
|
<view
|
||||||
<view class='but-stl' style="margin-right: 86rpx;" @tap="receivenowWeixin" v-if="CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_NORMAL && CenterCoupon.CouponType==2" :data-id="CenterCoupon.activity_id">{{__('立即领取')}}
|
class="btn_box"
|
||||||
|
style="margin: 9px auto 0 auto; overflow: hidden"
|
||||||
|
v-if="CenterCoupon.AllowOfflineWriteOff"
|
||||||
|
>
|
||||||
|
<view
|
||||||
|
class="but-stl"
|
||||||
|
style="margin-right: 86rpx"
|
||||||
|
@tap="receivenowWeixin"
|
||||||
|
v-if="
|
||||||
|
CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_NORMAL &&
|
||||||
|
CenterCoupon.CouponType == 2
|
||||||
|
"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
>{{ __("立即领取") }}
|
||||||
</view>
|
</view>
|
||||||
<view class='but-stl' style="margin-right: 86rpx;" @tap="receivenow" v-if="CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_NORMAL" :data-id="CenterCoupon.activity_id">{{__('立即领取')}}
|
<view
|
||||||
|
class="but-stl"
|
||||||
|
style="margin-right: 86rpx"
|
||||||
|
@tap="receivenow"
|
||||||
|
v-if="CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_NORMAL"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
>{{ __("立即领取") }}
|
||||||
</view>
|
</view>
|
||||||
<view class='but-stl' style="margin-right: 86rpx;" v-if="(CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_FINISHED || CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_CLOSED) && CenterCoupon.voucher_state_id != StateCode.VOUCHER_STATE_USED" :data-id="CenterCoupon.activity_id">{{__('已领完')}}
|
<view
|
||||||
|
class="but-stl"
|
||||||
|
style="margin-right: 86rpx"
|
||||||
|
v-if="
|
||||||
|
(CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_FINISHED ||
|
||||||
|
CenterCoupon.activity_state == StateCode.ACTIVITY_STATE_CLOSED) &&
|
||||||
|
CenterCoupon.voucher_state_id != StateCode.VOUCHER_STATE_USED
|
||||||
|
"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
>{{ __("已领完") }}
|
||||||
</view>
|
</view>
|
||||||
<view class='but-stl' style="margin-right: 86rpx;" :data-id="CenterCoupon.activity_id" v-if="CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_USED">{{__('已使用')}}
|
<view
|
||||||
|
class="but-stl"
|
||||||
|
style="margin-right: 86rpx"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
v-if="CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_USED"
|
||||||
|
>{{ __("已使用") }}
|
||||||
</view>
|
</view>
|
||||||
<view class='but-stl' style="margin-right: 86rpx;" :data-id="CenterCoupon.activity_id" v-if="CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_TIMEOUT">{{__('已过期')}}
|
<view
|
||||||
|
class="but-stl"
|
||||||
|
style="margin-right: 86rpx"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
v-if="
|
||||||
|
CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_TIMEOUT
|
||||||
|
"
|
||||||
|
>{{ __("已过期") }}
|
||||||
</view>
|
</view>
|
||||||
<view class='but-stl' style="margin-right: 86rpx;" v-if="CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_UNUSED && CenterCoupon.AllowOfflineWriteOff == false" :data-id="CenterCoupon.activity_id" :data-store_id="(CenterCoupon.store_id)" @tap="usenow">{{__('立即使用')}}
|
<view
|
||||||
|
class="but-stl"
|
||||||
|
style="margin-right: 86rpx"
|
||||||
|
v-if="
|
||||||
|
CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_UNUSED &&
|
||||||
|
CenterCoupon.AllowOfflineWriteOff == false
|
||||||
|
"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
:data-store_id="CenterCoupon.store_id"
|
||||||
|
@tap="usenow"
|
||||||
|
>{{ __("立即使用") }}
|
||||||
</view>
|
</view>
|
||||||
<view class='but-stl' style="margin-right: 86rpx;" v-if="CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_UNUSED && CenterCoupon.AllowOfflineWriteOff " :data-id="CenterCoupon.activity_id" :data-store_id="(CenterCoupon.store_id)" @tap="usenow">{{__('在线使用')}}
|
<view
|
||||||
|
class="but-stl"
|
||||||
|
style="margin-right: 86rpx"
|
||||||
|
v-if="
|
||||||
|
CenterCoupon.voucher_state_id == StateCode.VOUCHER_STATE_UNUSED &&
|
||||||
|
CenterCoupon.AllowOfflineWriteOff
|
||||||
|
"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
:data-store_id="CenterCoupon.store_id"
|
||||||
|
@tap="usenow"
|
||||||
|
>{{ __("在线使用") }}
|
||||||
</view>
|
</view>
|
||||||
<view class='but-stl02' :data-id="CenterCoupon.activity_id" @tap="shareBox" :data-name="CenterCoupon.Name" v-if="false">{{__('分享给好友')}}
|
<view
|
||||||
|
class="but-stl02"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
@tap="shareBox"
|
||||||
|
:data-name="CenterCoupon.Name"
|
||||||
|
v-if="false"
|
||||||
|
>{{ __("分享给好友") }}
|
||||||
</view>
|
</view>
|
||||||
<view class='btn_mx' v-if="CenterCoupon.AllowOfflineWriteOff">{{__('支持线下使用(在门店购物时,向店员出示此码抵扣)')}}</view>
|
<view class="btn_mx" v-if="CenterCoupon.AllowOfflineWriteOff">{{
|
||||||
|
__("支持线下使用(在门店购物时,向店员出示此码抵扣)")
|
||||||
|
}}</view>
|
||||||
</view>
|
</view>
|
||||||
<view class='tails_tox' v-if="!CenterCoupon.AllowOfflineWriteOff">
|
<view class="tails_tox" v-if="!CenterCoupon.AllowOfflineWriteOff">
|
||||||
<view class='tail_fo1'>{{__('使用条件')}}</view>
|
<view class="tail_fo1">{{ __("使用条件") }}</view>
|
||||||
<view class='tail_fo2'>
|
<view class="tail_fo2">
|
||||||
<view style="margin-bottom: 10rpx; ">1、{{sprintf(__('满¥%s可用'), CenterCoupon.voucher_subtotal || CenterCoupon.activity_rule.requirement.buy.subtotal)}}</view>
|
<view style="margin-bottom: 10rpx"
|
||||||
|
>1、{{
|
||||||
|
sprintf(
|
||||||
|
__("满¥%s可用"),
|
||||||
|
CenterCoupon.voucher_subtotal ||
|
||||||
|
CenterCoupon.activity_rule.requirement.buy.subtotal
|
||||||
|
)
|
||||||
|
}}</view
|
||||||
|
>
|
||||||
<view>
|
<view>
|
||||||
<label style="margin-right: 57rpx;">2、{{CenterCoupon.store_name}}{{__('可用')}}</label>
|
<label style="margin-right: 57rpx"
|
||||||
<label v-if="CenterCoupon.activity_on_is_off === 0" style="color: #FFCA81;" :data-id="CenterCoupon.activity_id" @tap="usenow" :data-store_id="(CenterCoupon.store_id)">{{__('查看')}}</label>
|
>2、{{ CenterCoupon.store_name }}{{ __("可用") }}</label
|
||||||
|
>
|
||||||
|
<label
|
||||||
|
v-if="CenterCoupon.activity_on_is_off === 0"
|
||||||
|
style="color: #ffca81"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
@tap="usenow"
|
||||||
|
:data-store_id="CenterCoupon.store_id"
|
||||||
|
>{{ __("查看") }}</label
|
||||||
|
>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class='tails_tox' v-if="CenterCoupon.AllowOfflineWriteOff">
|
<view class="tails_tox" v-if="CenterCoupon.AllowOfflineWriteOff">
|
||||||
<view class='tail_fo5'>{{__('使用条件')}}</view>
|
<view class="tail_fo5">{{ __("使用条件") }}</view>
|
||||||
<view class='tail_fo6'>
|
<view class="tail_fo6">
|
||||||
<view style="margin-bottom: 10rpx; ">1、{{sprintf(__('满¥%s可用'), CenterCoupon.voucher_subtotal || CenterCoupon.activity_rule.requirement.buy.subtotal)}}</view>
|
<view style="margin-bottom: 10rpx"
|
||||||
<view><label style="margin-right: 57rpx;">2、{{CenterCoupon.store_name}}{{__('可用')}}</label><label style="color: #FFCA81;" :data-id="CenterCoupon.activity_id" :data-store_id="(CenterCoupon.store_id)" @tap="usenow">{{__('查看')}}</label>
|
>1、{{
|
||||||
|
sprintf(
|
||||||
|
__("满¥%s可用"),
|
||||||
|
CenterCoupon.voucher_subtotal ||
|
||||||
|
CenterCoupon.activity_rule.requirement.buy.subtotal
|
||||||
|
)
|
||||||
|
}}</view
|
||||||
|
>
|
||||||
|
<view
|
||||||
|
><label style="margin-right: 57rpx"
|
||||||
|
>2、{{ CenterCoupon.store_name }}{{ __("可用") }}</label
|
||||||
|
><label
|
||||||
|
style="color: #ffca81"
|
||||||
|
:data-id="CenterCoupon.activity_id"
|
||||||
|
:data-store_id="CenterCoupon.store_id"
|
||||||
|
@tap="usenow"
|
||||||
|
>{{ __("查看") }}</label
|
||||||
|
>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view style='width:100%' v-if="CenterCoupon.Description != ''&& CenterCoupon.Description != null || CenterCoupon.AllowOfflineWriteOff">
|
<view
|
||||||
<view class='tails_tox' style="width: 85%;padding-bottom: 60rpx;">
|
style="width: 100%"
|
||||||
<view class='tail_fo1' style='color:#fff '>{{__('使用说明')}}</view>
|
v-if="
|
||||||
<view class='tail_fo3' style='color:#fff;height:43rpx' v-if="CenterCoupon.AllowOfflineWriteOff">
|
(CenterCoupon.Description != '' && CenterCoupon.Description != null) ||
|
||||||
{{__('支持线下使用,领取后向店员展示优惠券详情')}}
|
CenterCoupon.AllowOfflineWriteOff
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<view class="tails_tox" style="width: 85%; padding-bottom: 60rpx">
|
||||||
|
<view class="tail_fo1" style="color: #fff">{{ __("使用说明") }}</view>
|
||||||
|
<view
|
||||||
|
class="tail_fo3"
|
||||||
|
style="color: #fff; height: 43rpx"
|
||||||
|
v-if="CenterCoupon.AllowOfflineWriteOff"
|
||||||
|
>
|
||||||
|
{{ __("支持线下使用,领取后向店员展示优惠券详情") }}
|
||||||
</view>
|
</view>
|
||||||
<rich-text style='color:#fff;white-space: pre-line;font-size:22rpx;word-break:break-all' v-if='CenterCoupon.Description' nodes='CenterCoupon.Description'></rich-text>
|
<rich-text
|
||||||
|
style="
|
||||||
|
color: #fff;
|
||||||
|
white-space: pre-line;
|
||||||
|
font-size: 22rpx;
|
||||||
|
word-break: break-all;
|
||||||
|
"
|
||||||
|
v-if="CenterCoupon.Description"
|
||||||
|
nodes="CenterCoupon.Description"
|
||||||
|
></rich-text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<template is="shareMskTpl" data="PageQRCodeInfo" />
|
<template is="shareMskTpl" data="PageQRCodeInfo" />
|
||||||
|
|
||||||
<view :class="bannerShow ? 'canvas' : 'hide'" @click="setHide">
|
<view :class="bannerShow ? 'canvas' : 'hide'" @click="setHide">
|
||||||
<canvas class="m-canvas" canvas-id="qrcode" style="width: 200px;height: 200px;" />
|
<canvas
|
||||||
|
class="m-canvas"
|
||||||
|
canvas-id="qrcode"
|
||||||
|
style="width: 200px; height: 200px"
|
||||||
|
/>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import $ from "../../helpers/util";
|
import $ from "../../helpers/util";
|
||||||
import uniQrcode from '@/components/uni-qrcode/uni-qrcode.vue';
|
|
||||||
|
|
||||||
import uQRCode from '@/components/uni-qrcode/uqrcode.js';
|
import uQRCode from "@/components/uni-qrcode/uqrcode.js";
|
||||||
import {
|
import { mapState, mapMutations } from "vuex";
|
||||||
mapState,
|
|
||||||
mapMutations
|
|
||||||
} from 'vuex'
|
|
||||||
|
|
||||||
|
export default {
|
||||||
export default {
|
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
options: {},
|
options: {},
|
||||||
CenterCoupon: {
|
CenterCoupon: {
|
||||||
activity_rule: {
|
activity_rule: {
|
||||||
requirement: {
|
requirement: {
|
||||||
buy: {}
|
buy: {},
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
cid: "",
|
cid: "",
|
||||||
couponItemId: "",
|
couponItemId: "",
|
||||||
@ -131,19 +366,27 @@
|
|||||||
isOnLine: false, //是否线上优惠券
|
isOnLine: false, //是否线上优惠券
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: mapState(['Config', 'StateCode', 'notice', 'plantformInfo', 'shopInfo', 'userInfo', 'hasLogin']),
|
computed: mapState([
|
||||||
onLoad: function(options) {
|
"Config",
|
||||||
|
"StateCode",
|
||||||
|
"notice",
|
||||||
|
"plantformInfo",
|
||||||
|
"shopInfo",
|
||||||
|
"userInfo",
|
||||||
|
"hasLogin",
|
||||||
|
]),
|
||||||
|
onLoad: function (options) {
|
||||||
uni.setNavigationBarTitle({
|
uni.setNavigationBarTitle({
|
||||||
title: this.__('优惠券详情')
|
title: this.__("优惠券详情"),
|
||||||
});
|
});
|
||||||
|
|
||||||
this.setData({
|
this.setData({
|
||||||
cid: options.cid,
|
cid: options.cid,
|
||||||
couponItemId: options.couponItemId
|
couponItemId: options.couponItemId,
|
||||||
});
|
});
|
||||||
|
|
||||||
var that = this;
|
var that = this;
|
||||||
that.GetCouponInfo()
|
that.GetCouponInfo();
|
||||||
|
|
||||||
/*
|
/*
|
||||||
this.forceUserInfo(function(user) {
|
this.forceUserInfo(function(user) {
|
||||||
@ -154,149 +397,161 @@
|
|||||||
*/
|
*/
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
...mapMutations(['login', 'logout', 'getPlantformInfo', 'forceUserInfo', 'getUserInfo']),
|
...mapMutations([
|
||||||
|
"login",
|
||||||
|
"logout",
|
||||||
|
"getPlantformInfo",
|
||||||
|
"forceUserInfo",
|
||||||
|
"getUserInfo",
|
||||||
|
]),
|
||||||
|
|
||||||
GetCouponInfo: function(e) {
|
GetCouponInfo: function (e) {
|
||||||
var params = {
|
var params = {
|
||||||
activity_id: this.cid,
|
activity_id: this.cid,
|
||||||
user_voucher_id: this.couponItemId
|
user_voucher_id: this.couponItemId,
|
||||||
},
|
},
|
||||||
that = this;
|
that = this;
|
||||||
|
|
||||||
|
|
||||||
that.$.request({
|
that.$.request({
|
||||||
url: this.Config.URL.user.voucher_get,
|
url: this.Config.URL.user.voucher_get,
|
||||||
data: params,
|
data: params,
|
||||||
success: function(data, status, msg, code) {
|
success: function (data, status, msg, code) {
|
||||||
if (status == 200) {
|
if (status == 200) {
|
||||||
data.AllowOfflineWriteOff = false;
|
data.AllowOfflineWriteOff = false;
|
||||||
that.setData({
|
that.setData({
|
||||||
CenterCoupon: data
|
CenterCoupon: data,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
onGotUserInfo: function(e) {
|
onGotUserInfo: function (e) {
|
||||||
if (null != e.detail.userInfo) {
|
if (null != e.detail.userInfo) {
|
||||||
var a = {
|
var a = {
|
||||||
Photo: e.detail.userInfo.avatarUrl,
|
Photo: e.detail.userInfo.avatarUrl,
|
||||||
NickName: e.detail.userInfo.nickName,
|
NickName: e.detail.userInfo.nickName,
|
||||||
UserName: app.globalData.UserInfo.UserName
|
UserName: app.globalData.UserInfo.UserName,
|
||||||
};
|
};
|
||||||
$.xsr($.makeUrl(userapi.UpdateUserPhotoAndNickName, a), function(e) {
|
$.xsr($.makeUrl(userapi.UpdateUserPhotoAndNickName, a), function (e) {
|
||||||
//console.log("个人信息:", e)
|
//console.log("个人信息:", e)
|
||||||
}), app.imageUrl = e.detail.userInfo.avatarUrl, app.nickName = e.detail.userInfo.nickName, app.authorize = true, this.shareQRCode()
|
}),
|
||||||
|
(app.imageUrl = e.detail.userInfo.avatarUrl),
|
||||||
|
(app.nickName = e.detail.userInfo.nickName),
|
||||||
|
(app.authorize = true),
|
||||||
|
this.shareQRCode();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
shareQRCode: function(e) {
|
shareQRCode: function (e) {
|
||||||
//console.log("2:", this.cid);
|
//console.log("2:", this.cid);
|
||||||
var a = this,
|
var a = this,
|
||||||
o = {
|
o = {
|
||||||
vendorId: app.globalData.VendorInfo.Id,
|
vendorId: app.globalData.VendorInfo.Id,
|
||||||
userId: app.globalData.UserInfo.Id,
|
userId: app.globalData.UserInfo.Id,
|
||||||
couponId: this.cid
|
couponId: this.cid,
|
||||||
};
|
};
|
||||||
$.xsr($.makeUrl(userapi.QRCouponCodePoster, o), function(e) {
|
$.xsr($.makeUrl(userapi.QRCouponCodePoster, o), function (e) {
|
||||||
//console.log("图片", e), a.setData({PageQRCodeInfo: {Path: e.Info, IsShare: true, IsShareBox: false, IsJT: true}})
|
//console.log("图片", e), a.setData({PageQRCodeInfo: {Path: e.Info, IsShare: true, IsShareBox: false, IsJT: true}})
|
||||||
})
|
});
|
||||||
},
|
},
|
||||||
showCodeImg: function() {
|
showCodeImg: function () {
|
||||||
wx.previewImage({
|
wx.previewImage({
|
||||||
current: this.PageQRCodeInfo.Path,
|
current: this.PageQRCodeInfo.Path,
|
||||||
urls: [this.PageQRCodeInfo.Path]
|
urls: [this.PageQRCodeInfo.Path],
|
||||||
})
|
});
|
||||||
},
|
},
|
||||||
saveImg: function() {
|
saveImg: function () {
|
||||||
var a = this;
|
var a = this;
|
||||||
$.loading(), wx.downloadFile({
|
$.loading(),
|
||||||
|
wx.downloadFile({
|
||||||
url: this.PageQRCodeInfo.Path,
|
url: this.PageQRCodeInfo.Path,
|
||||||
success: function(e) {
|
success: function (e) {
|
||||||
$.hideloading(), wx.saveImageToPhotosAlbum({
|
$.hideloading(),
|
||||||
|
wx.saveImageToPhotosAlbum({
|
||||||
filePath: e.tempFilePath,
|
filePath: e.tempFilePath,
|
||||||
success: function() {
|
success: function () {
|
||||||
a.setData({
|
a.setData({
|
||||||
PageQRCodeInfo: {
|
PageQRCodeInfo: {
|
||||||
Path: "",
|
Path: "",
|
||||||
IsShare: false,
|
IsShare: false,
|
||||||
IsShareBox: false,
|
IsShareBox: false,
|
||||||
IsJT: false
|
IsJT: false,
|
||||||
}
|
|
||||||
}), $.alert("保存图片成功!")
|
|
||||||
},
|
},
|
||||||
fail: function(e) {
|
}),
|
||||||
$.hideloading()
|
$.alert("保存图片成功!");
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
fail: function(e) {
|
fail: function (e) {
|
||||||
$.hideloading()
|
$.hideloading();
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
cancelShare: function() {
|
});
|
||||||
|
},
|
||||||
|
fail: function (e) {
|
||||||
|
$.hideloading();
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
cancelShare: function () {
|
||||||
this.setData({
|
this.setData({
|
||||||
PageQRCodeInfo: {
|
PageQRCodeInfo: {
|
||||||
Path: "",
|
Path: "",
|
||||||
IsShare: false,
|
IsShare: false,
|
||||||
IsShareBox: false,
|
IsShareBox: false,
|
||||||
IsJT: false
|
IsJT: false,
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
usenow: function(e) {
|
});
|
||||||
|
},
|
||||||
|
usenow: function (e) {
|
||||||
let that = this;
|
let that = this;
|
||||||
var t = e.currentTarget.dataset.store_id;
|
var t = e.currentTarget.dataset.store_id;
|
||||||
that.$.redirectTo({
|
that.$.redirectTo({
|
||||||
url: "/member/product/coupon?store_id=" + t
|
url: "/member/product/coupon?store_id=" + t,
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
receivenow: function(e) {
|
|
||||||
let that = this;
|
|
||||||
that.getCoupon(e.currentTarget.dataset.id)
|
|
||||||
},
|
|
||||||
|
|
||||||
setHide: function() {
|
|
||||||
this.setData({
|
|
||||||
bannerShow: false
|
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
Make: function(e) {
|
receivenow: function (e) {
|
||||||
|
let that = this;
|
||||||
|
that.getCoupon(e.currentTarget.dataset.id);
|
||||||
|
},
|
||||||
|
|
||||||
|
setHide: function () {
|
||||||
|
this.setData({
|
||||||
|
bannerShow: false,
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
Make: function (e) {
|
||||||
var that = this;
|
var that = this;
|
||||||
|
|
||||||
that.setData({
|
that.setData({
|
||||||
bannerShow: true
|
bannerShow: true,
|
||||||
});
|
});
|
||||||
let writeoff_code = e.currentTarget.dataset.writeoff_code;
|
let writeoff_code = e.currentTarget.dataset.writeoff_code;
|
||||||
if (writeoff_code != null && writeoff_code != '') {
|
if (writeoff_code != null && writeoff_code != "") {
|
||||||
that.couponItemId = writeoff_code;
|
that.couponItemId = writeoff_code;
|
||||||
}
|
}
|
||||||
|
|
||||||
uQRCode.make({
|
uQRCode.make({
|
||||||
canvasId: 'qrcode',
|
canvasId: "qrcode",
|
||||||
componentInstance: this,
|
componentInstance: this,
|
||||||
text: that.couponItemId,
|
text: that.couponItemId,
|
||||||
size: 200,
|
size: 200,
|
||||||
margin: 10,
|
margin: 10,
|
||||||
backgroundColor: '#ffffff',
|
backgroundColor: "#ffffff",
|
||||||
foregroundColor: '#000000',
|
foregroundColor: "#000000",
|
||||||
fileType: 'jpg',
|
fileType: "jpg",
|
||||||
// correctLevel: uQRCode.errorCorrectLevel.H,
|
// correctLevel: uQRCode.errorCorrectLevel.H,
|
||||||
success: res => {
|
success: (res) => {
|
||||||
// console.log(res);
|
// console.log(res);
|
||||||
},
|
},
|
||||||
fail: error => {
|
fail: (error) => {
|
||||||
console.log(error);
|
console.log(error);
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
getCoupon: function(t) {
|
getCoupon: function (t) {
|
||||||
let that = this;
|
let that = this;
|
||||||
var params = {
|
var params = {
|
||||||
activity_id: t,
|
activity_id: t,
|
||||||
user_is_new: 0
|
user_is_new: 0,
|
||||||
};
|
};
|
||||||
|
|
||||||
this.forceUserInfo((user) => {
|
this.forceUserInfo((user) => {
|
||||||
@ -304,17 +559,18 @@
|
|||||||
$.request({
|
$.request({
|
||||||
url: this.Config.URL.user.voucher_add,
|
url: this.Config.URL.user.voucher_add,
|
||||||
data: params,
|
data: params,
|
||||||
success: function(data, status, msg, code) {
|
success: function (data, status, msg, code) {
|
||||||
if (200 == status) {
|
if (200 == status) {
|
||||||
that.getCouponlist();
|
that.getCouponlist();
|
||||||
|
|
||||||
that.$.confirm(that.__("领取成功!,去消费"), function(a) {
|
that.$.confirm(that.__("领取成功!,去消费"), function (a) {
|
||||||
if (a.confirm) {
|
if (a.confirm) {
|
||||||
that.$.navigateTo({
|
that.$.navigateTo({
|
||||||
url: "/pagesub/index/store?store_id=" + that.CenterCoupon.store_id
|
url:
|
||||||
})
|
"/pagesub/index/store?store_id=" +
|
||||||
|
that.CenterCoupon.store_id,
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
$.alert(msg);
|
$.alert(msg);
|
||||||
@ -324,7 +580,6 @@
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
t && $.clearxsr($.makeUrl(userapi.UserReceiveCoupon, params), function (t) {
|
t && $.clearxsr($.makeUrl(userapi.UserReceiveCoupon, params), function (t) {
|
||||||
0 == t.Code ? (that.setData({isCancelSuccess: false, mskType: 2, Coupons: t.Info}), wx.showToast({
|
0 == t.Code ? (that.setData({isCancelSuccess: false, mskType: 2, Coupons: t.Info}), wx.showToast({
|
||||||
@ -335,31 +590,31 @@
|
|||||||
|
|
||||||
*/
|
*/
|
||||||
},
|
},
|
||||||
shareBox: function() {
|
shareBox: function () {
|
||||||
this.setData({
|
this.setData({
|
||||||
PageQRCodeInfo: {
|
PageQRCodeInfo: {
|
||||||
Path: "",
|
Path: "",
|
||||||
IsShare: true,
|
IsShare: true,
|
||||||
IsShareBox: true,
|
IsShareBox: true,
|
||||||
IsJT: false
|
IsJT: false,
|
||||||
}
|
},
|
||||||
})
|
});
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
}
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import "../../styles/_variables";
|
@import "../../styles/_variables";
|
||||||
|
|
||||||
/* pages/Receivetails/Receivetails.wxss */
|
/* pages/Receivetails/Receivetails.wxss */
|
||||||
page {
|
page {
|
||||||
background: #DB384C
|
background: #db384c;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tails_box {
|
.tails_box {
|
||||||
width: 94%;
|
width: 94%;
|
||||||
/*height: 345rpx;*/
|
/*height: 345rpx;*/
|
||||||
background: #fff;
|
background: #fff;
|
||||||
@ -368,42 +623,42 @@
|
|||||||
padding-top: 18rpx;
|
padding-top: 18rpx;
|
||||||
border-top-left-radius: 11px;
|
border-top-left-radius: 11px;
|
||||||
border-top-right-radius: 11px;
|
border-top-right-radius: 11px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tails_logo {
|
.tails_logo {
|
||||||
width: 112rpx;
|
width: 112rpx;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: -14%;
|
top: -14%;
|
||||||
left: 42%;
|
left: 42%;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
overflow: hidden
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tails_shopname {
|
.tails_shopname {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
text-align: center
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tails_couname {
|
.tails_couname {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
color: #DB384C;
|
color: #db384c;
|
||||||
font-size: 36rpx;
|
font-size: 36rpx;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
margin-top: 10rpx;
|
margin-top: 10rpx;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tails_mon {
|
.tails_mon {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
color: #DB384C;
|
color: #db384c;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
margin-top: 40rpx;
|
margin-top: 40rpx;
|
||||||
margin-bottom: 40rpx;
|
margin-bottom: 40rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tails_but {
|
.tails_but {
|
||||||
width: 54%;
|
width: 54%;
|
||||||
margin: 43rpx auto 0 auto;
|
margin: 43rpx auto 0 auto;
|
||||||
height: 50rpx;
|
height: 50rpx;
|
||||||
@ -412,114 +667,114 @@
|
|||||||
text-align: center;
|
text-align: center;
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
line-height: 50rpx;
|
line-height: 50rpx;
|
||||||
color: #DB384C
|
color: #db384c;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tails_time {
|
.tails_time {
|
||||||
width: 64%;
|
width: 64%;
|
||||||
/*margin: 25rpx auto 0 auto;*/
|
/*margin: 25rpx auto 0 auto;*/
|
||||||
text-align: center;
|
text-align: center;
|
||||||
font-size: 22rpx;
|
font-size: 22rpx;
|
||||||
color: #DB384C
|
color: #db384c;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tails_tox {
|
.tails_tox {
|
||||||
width: 89%;
|
width: 89%;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tail_fo1 {
|
.tail_fo1 {
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
color: #000000;
|
color: #000000;
|
||||||
line-height: 62rpx
|
line-height: 62rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tail_fo5 {
|
.tail_fo5 {
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
padding-left: 20rpx;
|
padding-left: 20rpx;
|
||||||
line-height: 62rpx
|
line-height: 62rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tail_fo2 {
|
.tail_fo2 {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
color: #9B9B9B;
|
color: #9b9b9b;
|
||||||
border-radius: 10rpx
|
border-radius: 10rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tail_fo6 {
|
.tail_fo6 {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
padding-left: 20rpx;
|
padding-left: 20rpx;
|
||||||
border-radius: 10rpx
|
border-radius: 10rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tail_fo3 {
|
.tail_fo3 {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 137rpx;
|
height: 137rpx;
|
||||||
font-size: 22rpx;
|
font-size: 22rpx;
|
||||||
border-radius: 10rpx
|
border-radius: 10rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.but-stl {
|
.but-stl {
|
||||||
width: 42%;
|
width: 42%;
|
||||||
float: left;
|
float: left;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
height: 61rpx;
|
height: 61rpx;
|
||||||
border-radius: 50rpx;
|
border-radius: 50rpx;
|
||||||
border: 1px solid #fff;
|
border: 1px solid #fff;
|
||||||
background: #DB384C;
|
background: #db384c;
|
||||||
font-size: 26rpx;
|
font-size: 26rpx;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
line-height: 61rpx;
|
line-height: 61rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.but-stl02 {
|
.but-stl02 {
|
||||||
width: 42%;
|
width: 42%;
|
||||||
float: left;
|
float: left;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
height: 61rpx;
|
height: 61rpx;
|
||||||
border-radius: 50rpx;
|
border-radius: 50rpx;
|
||||||
border: 1px solid #DB384C;
|
border: 1px solid #db384c;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
font-size: 26rpx;
|
font-size: 26rpx;
|
||||||
color: #DB384C;
|
color: #db384c;
|
||||||
line-height: 61rpx;
|
line-height: 61rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tailfoli {
|
.tailfoli {
|
||||||
width: 94%;
|
width: 94%;
|
||||||
height: 88px;
|
height: 88px;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
border-bottom-left-radius: 11px;
|
border-bottom-left-radius: 11px;
|
||||||
border-bottom-right-radius: 11px;
|
border-bottom-right-radius: 11px;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn_box {
|
.btn_box {
|
||||||
width: 88%;
|
width: 88%;
|
||||||
margin: 22px auto 0 auto;
|
margin: 22px auto 0 auto;
|
||||||
wxcs_style_margin: 22px auto 0 auto;
|
wxcs_style_margin: 22px auto 0 auto;
|
||||||
/*height: 100rpx;*/
|
/*height: 100rpx;*/
|
||||||
display: flex;
|
display: flex;
|
||||||
}
|
}
|
||||||
|
|
||||||
.img_box {
|
.img_box {
|
||||||
width: 94%;
|
width: 94%;
|
||||||
height: 72rpx;
|
height: 72rpx;
|
||||||
margin: 0 auto
|
margin: 0 auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn_mx {
|
.btn_mx {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
font-size: 22rpx;
|
font-size: 22rpx;
|
||||||
color: #9B9B9B;
|
color: #9b9b9b;
|
||||||
margin: 88rpx 0 0
|
margin: 88rpx 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-canvas {
|
.m-canvas {
|
||||||
position: absolute !important;
|
position: absolute !important;
|
||||||
/*重要的一步是设置绝对定位*/
|
/*重要的一步是设置绝对定位*/
|
||||||
margin: auto;
|
margin: auto;
|
||||||
@ -529,9 +784,9 @@
|
|||||||
right: 0;
|
right: 0;
|
||||||
top: 0;
|
top: 0;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.canvas {
|
.canvas {
|
||||||
background: rgba(0, 0, 0, 0.6);
|
background: rgba(0, 0, 0, 0.6);
|
||||||
position: fixed;
|
position: fixed;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@ -539,5 +794,5 @@
|
|||||||
left: 0;
|
left: 0;
|
||||||
top: 0;
|
top: 0;
|
||||||
z-index: 99;
|
z-index: 99;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@ -1,34 +1,79 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="page">
|
<view class="page">
|
||||||
<scroll-view class="m-scrollBox" scroll-y="true">
|
<scroll-view class="m-scrollBox" scroll-y="true">
|
||||||
<block v-if="(UserCoupon.length>0)">
|
<block v-if="UserCoupon.length > 0">
|
||||||
<view class="m-coupon-item" @click="changecoupon" :data-id="(item.user_voucher_id)" :data-item_id="(item.item_id)" v-for="(item, index) in UserCoupon" :key="index">
|
<view
|
||||||
<image lazy-load :src="((item.voucher_state_id==1501 && item.voucher_subtotal<=amount)?'https://static.lancerdt.com/xcxfile/appicon/images/coupon_red.png':'https://static.lancerdt.com/xcxfile/appicon/images/coupon_gray.png')" class="item-bg"></image>
|
class="m-coupon-item"
|
||||||
|
@click="changecoupon"
|
||||||
|
:data-id="item.user_voucher_id"
|
||||||
|
:data-item_id="item.item_id"
|
||||||
|
v-for="(item, index) in UserCoupon"
|
||||||
|
:key="index"
|
||||||
|
>
|
||||||
|
<image
|
||||||
|
lazy-load
|
||||||
|
:src="
|
||||||
|
item.voucher_state_id == 1501 && item.voucher_subtotal <= amount
|
||||||
|
? 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/images/coupon_red.png'
|
||||||
|
: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/images/coupon_gray.png'
|
||||||
|
"
|
||||||
|
class="item-bg"
|
||||||
|
></image>
|
||||||
|
|
||||||
<view class="coupon-item-left">
|
<view class="coupon-item-left">
|
||||||
<view class="item-left-top">{{__('¥')}}<label style="font-size:64rpx">{{item.voucher_price}}</label></view>
|
<view class="item-left-top"
|
||||||
<view class="item-left-bottom">{{sprintf(__('满(%s)可用'), item.voucher_subtotal)}}</view>
|
>{{ __("¥")
|
||||||
|
}}<label style="font-size: 64rpx">{{
|
||||||
|
item.voucher_price
|
||||||
|
}}</label></view
|
||||||
|
>
|
||||||
|
<view class="item-left-bottom">{{
|
||||||
|
sprintf(__("满(%s)可用"), item.voucher_subtotal)
|
||||||
|
}}</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="coupon-item-right">
|
<view class="coupon-item-right">
|
||||||
<view class="item-title item-title-black">{{item.activity_name}}</view>
|
<view class="item-title item-title-black">{{
|
||||||
<view class="item-middle">{{sprintf(__('满 %s 减 %s'), item.voucher_subtotal, item.voucher_price)}}</view>
|
item.activity_name
|
||||||
|
}}</view>
|
||||||
|
<view class="item-middle">{{
|
||||||
|
sprintf(
|
||||||
|
__("满 %s 减 %s"),
|
||||||
|
item.voucher_subtotal,
|
||||||
|
item.voucher_price
|
||||||
|
)
|
||||||
|
}}</view>
|
||||||
<view class="item-middle">
|
<view class="item-middle">
|
||||||
<label class="item-time">{{item.voucher_start_date}}~{{item.voucher_end_date}}</label>
|
<label class="item-time"
|
||||||
|
>{{ item.voucher_start_date }}~{{
|
||||||
|
item.voucher_end_date
|
||||||
|
}}</label
|
||||||
|
>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="item-desc"></view>
|
<view class="item-desc"></view>
|
||||||
</view>
|
</view>
|
||||||
<image lazy-load src="/static/images/checked.png" class="image-checked" v-if="(item.user_voucher_id == id_checked)" />
|
<image
|
||||||
|
lazy-load
|
||||||
|
src="/static/images/checked.png"
|
||||||
|
class="image-checked"
|
||||||
|
v-if="item.user_voucher_id == id_checked"
|
||||||
|
/>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<button class="u-btn u-btn-default" style="margin-top:30rpx;" @click="uesnothing">{{__('不使用优惠券')}}</button>
|
<button
|
||||||
|
class="u-btn u-btn-default"
|
||||||
|
style="margin-top: 30rpx"
|
||||||
|
@click="uesnothing"
|
||||||
|
>
|
||||||
|
{{ __("不使用优惠券") }}
|
||||||
|
</button>
|
||||||
</block>
|
</block>
|
||||||
<view class="m-nullcontent" v-else>
|
<view class="m-nullcontent" v-else>
|
||||||
<view class="m-nullpage-middle">
|
<view class="m-nullpage-middle">
|
||||||
<label class="iconfont icon-meiyougengduo"></label>
|
<label class="iconfont icon-meiyougengduo"></label>
|
||||||
<view class="m-null-tip">
|
<view class="m-null-tip">
|
||||||
<text>{{__('亲~什么都没有')}}</text>
|
<text>{{ __("亲~什么都没有") }}</text>
|
||||||
<text>{{__('赶快去领券中心吧')}}</text>
|
<text>{{ __("赶快去领券中心吧") }}</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@ -37,14 +82,10 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import $ from "../../helpers/util";
|
import $ from "../../helpers/util";
|
||||||
import {
|
import { mapState, mapMutations } from "vuex";
|
||||||
mapState,
|
|
||||||
mapMutations
|
|
||||||
} from 'vuex'
|
|
||||||
|
|
||||||
|
export default {
|
||||||
export default {
|
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
options: {},
|
options: {},
|
||||||
@ -52,13 +93,21 @@
|
|||||||
amount: 0,
|
amount: 0,
|
||||||
UserCoupon: [],
|
UserCoupon: [],
|
||||||
id_checked: 0,
|
id_checked: 0,
|
||||||
IsUseCoupon: 1
|
IsUseCoupon: 1,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: mapState(['Config', 'StateCode', 'notice', 'plantformInfo', 'shopInfo', 'userInfo', 'hasLogin']),
|
computed: mapState([
|
||||||
onLoad: function(options) {
|
"Config",
|
||||||
|
"StateCode",
|
||||||
|
"notice",
|
||||||
|
"plantformInfo",
|
||||||
|
"shopInfo",
|
||||||
|
"userInfo",
|
||||||
|
"hasLogin",
|
||||||
|
]),
|
||||||
|
onLoad: function (options) {
|
||||||
uni.setNavigationBarTitle({
|
uni.setNavigationBarTitle({
|
||||||
title: this.__('使用优惠券')
|
title: this.__("使用优惠券"),
|
||||||
});
|
});
|
||||||
|
|
||||||
var voucher_items = $.parseJSON(options.val);
|
var voucher_items = $.parseJSON(options.val);
|
||||||
@ -67,76 +116,81 @@
|
|||||||
id_checked: options.user_voucher_id,
|
id_checked: options.user_voucher_id,
|
||||||
amount: options.amount,
|
amount: options.amount,
|
||||||
options: options,
|
options: options,
|
||||||
})
|
});
|
||||||
|
|
||||||
if (options.ifcart) {
|
if (options.ifcart) {
|
||||||
this.getselect()
|
this.getselect();
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
...mapMutations(['login', 'logout', 'getPlantformInfo', 'forceUserInfo', 'getUserInfo']),
|
...mapMutations([
|
||||||
|
"login",
|
||||||
|
"logout",
|
||||||
|
"getPlantformInfo",
|
||||||
|
"forceUserInfo",
|
||||||
|
"getUserInfo",
|
||||||
|
]),
|
||||||
|
|
||||||
getselect: function() {
|
getselect: function () {
|
||||||
var that = this;
|
var that = this;
|
||||||
var params = {};
|
var params = {};
|
||||||
that.$.request({
|
that.$.request({
|
||||||
url: this.Config.URL.cart.getselect,
|
url: this.Config.URL.cart.getselect,
|
||||||
data: params,
|
data: params,
|
||||||
success: function(data, status, msg, code) {
|
success: function (data, status, msg, code) {
|
||||||
var isSelect = false;
|
var isSelect = false;
|
||||||
if (status == 200) {
|
if (status == 200) {
|
||||||
if (data['items'].length > 0) {
|
if (data["items"].length > 0) {
|
||||||
that.setData({
|
that.setData({
|
||||||
CartSelect: data['items']
|
CartSelect: data["items"],
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
//that.$.confirm(msg);
|
//that.$.confirm(msg);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
changecoupon: function(e) {
|
});
|
||||||
|
},
|
||||||
|
changecoupon: function (e) {
|
||||||
var that = this;
|
var that = this;
|
||||||
var item_id = parseInt(e.currentTarget.dataset.item_id);
|
var item_id = parseInt(e.currentTarget.dataset.item_id);
|
||||||
|
|
||||||
this.setData({
|
this.setData({
|
||||||
IsUseCoupon: 0,
|
IsUseCoupon: 0,
|
||||||
id_checked: parseInt(e.currentTarget.dataset.id)
|
id_checked: parseInt(e.currentTarget.dataset.id),
|
||||||
});
|
});
|
||||||
|
|
||||||
that.goback();
|
that.goback();
|
||||||
},
|
},
|
||||||
uesnothing: function() {
|
uesnothing: function () {
|
||||||
var that = this;
|
var that = this;
|
||||||
|
|
||||||
this.setData({
|
this.setData({
|
||||||
IsUseCoupon: 0,
|
IsUseCoupon: 0,
|
||||||
id_checked: 0
|
id_checked: 0,
|
||||||
});
|
});
|
||||||
|
|
||||||
this.goback();
|
this.goback();
|
||||||
},
|
},
|
||||||
goback: function() {
|
goback: function () {
|
||||||
var that = this;
|
var that = this;
|
||||||
$.navigateBack(1, function() {
|
$.navigateBack(1, function () {
|
||||||
var params = that.options;
|
var params = that.options;
|
||||||
|
|
||||||
params.user_voucher_id = that.id_checked;
|
params.user_voucher_id = that.id_checked;
|
||||||
that.notice.postNotificationName("RefreshCoupon", params)
|
that.notice.postNotificationName("RefreshCoupon", params);
|
||||||
})
|
});
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
}
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import "../../styles/_variables";
|
@import "../../styles/_variables";
|
||||||
|
|
||||||
.m-scrollBox {
|
.m-scrollBox {
|
||||||
padding: 10rpx 10rpx 0rpx;
|
padding: 10rpx 10rpx 0rpx;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
@ -144,45 +198,45 @@
|
|||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-coupon-item {
|
.m-coupon-item {
|
||||||
margin: 10rpx 10rpx 20rpx;
|
margin: 10rpx 10rpx 20rpx;
|
||||||
position: relative;
|
position: relative;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 190rpx;
|
height: 190rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-coupon-item .item-bg {
|
.m-coupon-item .item-bg {
|
||||||
width: 710rpx;
|
width: 710rpx;
|
||||||
height: 190rpx;
|
height: 190rpx;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 0;
|
left: 0;
|
||||||
top: 0;
|
top: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.coupon-item-left {
|
.coupon-item-left {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
color: white;
|
color: white;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
width: 250rpx;
|
width: 250rpx;
|
||||||
padding: 25rpx 0rpx;
|
padding: 25rpx 0rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-left-top {
|
.item-left-top {
|
||||||
line-height: 100rpx;
|
line-height: 100rpx;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-left-top label {
|
.item-left-top label {
|
||||||
font-size: 90rpx;
|
font-size: 90rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-left-bottom {
|
.item-left-bottom {
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.coupon-item-right {
|
.coupon-item-right {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 250rpx;
|
left: 250rpx;
|
||||||
top: 0;
|
top: 0;
|
||||||
@ -191,9 +245,9 @@
|
|||||||
padding: 10rpx 20rpx;
|
padding: 10rpx 20rpx;
|
||||||
font-size: 22rpx;
|
font-size: 22rpx;
|
||||||
color: gray;
|
color: gray;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-title {
|
.item-title {
|
||||||
line-height: 40rpx;
|
line-height: 40rpx;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
height: 80rpx;
|
height: 80rpx;
|
||||||
@ -202,19 +256,19 @@
|
|||||||
display: -webkit-box;
|
display: -webkit-box;
|
||||||
-webkit-box-orient: vertical;
|
-webkit-box-orient: vertical;
|
||||||
-webkit-line-clamp: 2;
|
-webkit-line-clamp: 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-title-black {
|
.item-title-black {
|
||||||
color: #333;
|
color: #333;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-middle {
|
.item-middle {
|
||||||
height: 50rpx;
|
height: 50rpx;
|
||||||
line-height: 50rpx;
|
line-height: 50rpx;
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-usenow {
|
.item-usenow {
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
border: 1px solid $default-skin-bg;
|
border: 1px solid $default-skin-bg;
|
||||||
float: right;
|
float: right;
|
||||||
@ -224,9 +278,9 @@
|
|||||||
position: relative;
|
position: relative;
|
||||||
top: -8rpx;
|
top: -8rpx;
|
||||||
line-height: 40rpx;
|
line-height: 40rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-desc {
|
.item-desc {
|
||||||
height: 50rpx;
|
height: 50rpx;
|
||||||
line-height: 50rpx;
|
line-height: 50rpx;
|
||||||
margin-top: 5rpx;
|
margin-top: 5rpx;
|
||||||
@ -235,13 +289,13 @@
|
|||||||
display: -webkit-box;
|
display: -webkit-box;
|
||||||
-webkit-box-orient: vertical;
|
-webkit-box-orient: vertical;
|
||||||
-webkit-line-clamp: 1;
|
-webkit-line-clamp: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
.image-checked {
|
.image-checked {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 20rpx;
|
right: 20rpx;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
width: 50rpx;
|
width: 50rpx;
|
||||||
height: 50rpx;
|
height: 50rpx;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@ -3,20 +3,42 @@
|
|||||||
<view class="search">
|
<view class="search">
|
||||||
<slot></slot>
|
<slot></slot>
|
||||||
<template>
|
<template>
|
||||||
<input maxlength="20" type="text" value="" confirm-type="search" @confirm="searchStart()" :placeholder="__('请输入兑换码')" v-model="code" />
|
<input
|
||||||
|
maxlength="20"
|
||||||
|
type="text"
|
||||||
|
value=""
|
||||||
|
confirm-type="search"
|
||||||
|
@confirm="searchStart()"
|
||||||
|
:placeholder="__('请输入兑换码')"
|
||||||
|
v-model="code"
|
||||||
|
/>
|
||||||
</template>
|
</template>
|
||||||
<!-- <image src="https://static.lancerdt.com/xcxfile/appicon/zy-search/search.svg" mode="aspectFit" @click="searchStart()" class="search-icon"></image> -->
|
<!-- <image src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/zy-search/search.svg" mode="aspectFit" @click="searchStart()" class="search-icon"></image> -->
|
||||||
<button mode="aspectFit" @click="searchStart()" style="background-color: crimson;color: aliceblue;margin-top: 40rpx;">立即兑换</button>
|
<button
|
||||||
|
mode="aspectFit"
|
||||||
|
@click="searchStart()"
|
||||||
|
style="background-color: crimson; color: aliceblue; margin-top: 40rpx"
|
||||||
|
>
|
||||||
|
立即兑换
|
||||||
|
</button>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<block v-if="(isData)">
|
<block v-if="isData">
|
||||||
<view class="m-cells m-cells-form">
|
<view class="m-cells m-cells-form">
|
||||||
<view class="m-cell">
|
<view class="m-cell">
|
||||||
<view class="m-cell-hd" style="width: 140rpx;"><label class="u-label">{{activityInfo.activity_title}}</label></view>
|
<view class="m-cell-hd" style="width: 140rpx"
|
||||||
|
><label class="u-label">{{
|
||||||
|
activityInfo.activity_title
|
||||||
|
}}</label></view
|
||||||
|
>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="m-product-list">
|
<view class="m-product-list">
|
||||||
<view v-for="(item, ii) in activityInfo.items" :key="ii" class="m-product-item">
|
<view
|
||||||
|
v-for="(item, ii) in activityInfo.items"
|
||||||
|
:key="ii"
|
||||||
|
class="m-product-item"
|
||||||
|
>
|
||||||
<view class="m-product-img">
|
<view class="m-product-img">
|
||||||
<image :src="item.product_image" mode="aspectFill" />
|
<image :src="item.product_image" mode="aspectFill" />
|
||||||
</view>
|
</view>
|
||||||
@ -27,55 +49,72 @@
|
|||||||
|
|
||||||
<view class="m-product-price">
|
<view class="m-product-price">
|
||||||
<block v-if="item.item_unit_price">
|
<block v-if="item.item_unit_price">
|
||||||
<label>{{ __('¥') }}</label>
|
<label>{{ __("¥") }}</label>
|
||||||
{{ item.item_unit_price }}
|
{{ item.item_unit_price }}
|
||||||
</block>
|
</block>
|
||||||
<text style="float: right;margin-right: 60rpx;">x{{ item.item_quantity }}</text>
|
<text style="float: right; margin-right: 60rpx"
|
||||||
|
>x{{ item.item_quantity }}</text
|
||||||
|
>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<button class="u-btn u-btn-default" @click="submitInfo" style="margin-top:40rpx;">{{ __('领取礼包') }}</button>
|
<button
|
||||||
|
class="u-btn u-btn-default"
|
||||||
|
@click="submitInfo"
|
||||||
|
style="margin-top: 40rpx"
|
||||||
|
>
|
||||||
|
{{ __("领取礼包") }}
|
||||||
|
</button>
|
||||||
</block>
|
</block>
|
||||||
<view class="u-loadmore u-loadmore-line" v-else>
|
<view class="u-loadmore u-loadmore-line" v-else>
|
||||||
<text class="u-loadmore-tips">{{__('没有更多数据啦!')}}</text>
|
<text class="u-loadmore-tips">{{ __("没有更多数据啦!") }}</text>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {
|
import { mapState, mapMutations } from "vuex";
|
||||||
mapState,
|
|
||||||
mapMutations
|
|
||||||
} from 'vuex';
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data: function() {
|
data: function () {
|
||||||
return {
|
return {
|
||||||
code: '',
|
code: "",
|
||||||
activityInfo: {},
|
activityInfo: {},
|
||||||
isData: false,
|
isData: false,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: mapState(['Config', 'StateCode', 'notice', 'plantformInfo', 'shopInfo', 'userInfo', 'hasLogin']),
|
computed: mapState([
|
||||||
onLoad: function(options) {
|
"Config",
|
||||||
|
"StateCode",
|
||||||
|
"notice",
|
||||||
|
"plantformInfo",
|
||||||
|
"shopInfo",
|
||||||
|
"userInfo",
|
||||||
|
"hasLogin",
|
||||||
|
]),
|
||||||
|
onLoad: function (options) {
|
||||||
uni.setNavigationBarTitle({
|
uni.setNavigationBarTitle({
|
||||||
title: this.__('礼包兑换')
|
title: this.__("礼包兑换"),
|
||||||
});
|
});
|
||||||
|
|
||||||
var that = this;
|
var that = this;
|
||||||
this.forceUserInfo(function(user) {
|
this.forceUserInfo(function (user) {
|
||||||
console.log(user);
|
console.log(user);
|
||||||
that.setData({
|
that.setData({
|
||||||
serial_code: user.serial_code
|
serial_code: user.serial_code,
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
...mapMutations(['login', 'logout', 'getPlantformInfo', 'forceUserInfo', 'getUserInfo']),
|
...mapMutations([
|
||||||
|
"login",
|
||||||
|
"logout",
|
||||||
|
"getPlantformInfo",
|
||||||
|
"forceUserInfo",
|
||||||
|
"getUserInfo",
|
||||||
|
]),
|
||||||
searchStart(e) {
|
searchStart(e) {
|
||||||
var that = this;
|
var that = this;
|
||||||
if (!this.code) {
|
if (!this.code) {
|
||||||
@ -83,59 +122,63 @@
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var params = {
|
var params = {
|
||||||
code: this.code
|
code: this.code,
|
||||||
};
|
};
|
||||||
that.$.request({
|
that.$.request({
|
||||||
url: this.Config.URL.store.getActivityCodeList,
|
url: this.Config.URL.store.getActivityCodeList,
|
||||||
method: 'post',
|
method: "post",
|
||||||
data: params,
|
data: params,
|
||||||
success: function(data, status, msg, code) {
|
success: function (data, status, msg, code) {
|
||||||
if (status == 200) {
|
if (status == 200) {
|
||||||
that.setData({
|
that.setData({
|
||||||
activityInfo: data,
|
activityInfo: data,
|
||||||
isData: true,
|
isData: true,
|
||||||
})
|
});
|
||||||
} else {
|
} else {
|
||||||
that.$.alert(msg);
|
that.$.alert(msg);
|
||||||
that.setData({
|
that.setData({
|
||||||
activityInfo: {},
|
activityInfo: {},
|
||||||
isData: false,
|
isData: false,
|
||||||
})
|
});
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
},
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
submitInfo: function() {
|
submitInfo: function () {
|
||||||
var that = this;
|
var that = this;
|
||||||
var pat = []
|
var pat = [];
|
||||||
var items = this.activityInfo.activity_rule.quantity
|
var items = this.activityInfo.activity_rule.quantity;
|
||||||
for (var i in items) {
|
for (var i in items) {
|
||||||
if (items[i].quantity > 0) {
|
if (items[i].quantity > 0) {
|
||||||
var t = items[i].item_id + '|' + items[i].quantity
|
var t = items[i].item_id + "|" + items[i].quantity;
|
||||||
pat.push(t)
|
pat.push(t);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (pat.length <= 0) {
|
if (pat.length <= 0) {
|
||||||
that.$.alert("亲~请选择商品!");
|
that.$.alert("亲~请选择商品!");
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var str = pat.join(',');
|
var str = pat.join(",");
|
||||||
that.$.navigateTo({
|
that.$.navigateTo({
|
||||||
url: "/pages/checkout/checkout?ifcart=0&cart_id=" + str + "&activity_id=" + that.activityInfo.activity_id + "&code=" + that.code
|
url:
|
||||||
})
|
"/pages/checkout/checkout?ifcart=0&cart_id=" +
|
||||||
|
str +
|
||||||
|
"&activity_id=" +
|
||||||
|
that.activityInfo.activity_id +
|
||||||
|
"&code=" +
|
||||||
|
that.code,
|
||||||
|
});
|
||||||
},
|
},
|
||||||
}
|
},
|
||||||
}
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
.search {
|
.search {
|
||||||
width: 640rpx;
|
width: 640rpx;
|
||||||
margin: 30rpx auto 20rpx;
|
margin: 30rpx auto 20rpx;
|
||||||
position: relative;
|
position: relative;
|
||||||
@ -166,9 +209,9 @@
|
|||||||
top: -2rpx;
|
top: -2rpx;
|
||||||
z-index: 10;
|
z-index: 10;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-product-img {
|
.m-product-img {
|
||||||
width: 120rpx;
|
width: 120rpx;
|
||||||
height: 120rpx;
|
height: 120rpx;
|
||||||
|
|
||||||
@ -176,23 +219,22 @@
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-product-info {
|
.m-product-info {
|
||||||
height: 120rpx;
|
height: 120rpx;
|
||||||
margin-left: 20rpx;
|
margin-left: 20rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-product-item {
|
.m-product-item {
|
||||||
height: 120rpx;
|
height: 120rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-product-name {
|
.m-product-name {
|
||||||
height: 120rpx;
|
height: 120rpx;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
.m-product-name uni-label {
|
||||||
|
|
||||||
.m-product-name uni-label {
|
|
||||||
-webkit-line-clamp: 1;
|
-webkit-line-clamp: 1;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
3877
address/citys.js
Normal file
488
address/selectCity.vue
Normal file
@ -0,0 +1,488 @@
|
|||||||
|
<template>
|
||||||
|
<view class="nyn-city-list-container">
|
||||||
|
<!-- 搜索框 -->
|
||||||
|
<!-- <view class="search">
|
||||||
|
<input
|
||||||
|
type="text"
|
||||||
|
placeholder="请输入城市名称"
|
||||||
|
placeholder-style="font-size:20rpx"
|
||||||
|
@input="bindinputCitys"
|
||||||
|
/>
|
||||||
|
</view> -->
|
||||||
|
<uni-nav-bar
|
||||||
|
title=""
|
||||||
|
:fixed="true"
|
||||||
|
:border="false"
|
||||||
|
:left-width="'60rpx'"
|
||||||
|
:right-width="'160rpx'"
|
||||||
|
:statusBar="true"
|
||||||
|
:height="'34px'"
|
||||||
|
>
|
||||||
|
<block slot="left">
|
||||||
|
<view class="left-block" @click="handerSkip">
|
||||||
|
<image
|
||||||
|
style="
|
||||||
|
width: 11px;
|
||||||
|
height: 18px;
|
||||||
|
vertical-align: middle;
|
||||||
|
margin-left: 6px;
|
||||||
|
"
|
||||||
|
lazy-load
|
||||||
|
src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAAA2CAYAAABJN/BMAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAIaADAAQAAAABAAAANgAAAADEgMuSAAAF8ElEQVRYCc2Ya2hcVRDHk91sHo3mTR5rbJrnapsYTKIfWmMSapWKICJCoeCHfgqCKGh9VFRE1FiFopQYEbRYW1SsobVfpFahjRoxEYvGmDQJeZAHTbJ5rtnNY9ffhNzl3JtNzN3cBA8Md86ce2b+Z2bOnHNvRMT/oNm3GUNkXl7ezvj4+Pnp6elFzbZNY7bjWVBQsBs756Kjo4+q9rbLEzY8UBwIBC5iXIDUJCcnBwDT4vF4FrYDhC0/P78qMjLyE4wXKB4oi42NbXe73e1bHo7CwsI78EA9dJsCIAJQP8fExDQhC0SqAxbzNnKgVEIAORXdC/CXvF7vY0NDQ/+IfKs8YcMD+/1+/xchAHyJ7IgGQEBsiSdIwrvQfRbKV20Qgkb6td3d3Td4BltUkLOGseOBiqWlpQuoS1dUzsNfIBEPt7W1Ca9rVobDjgceIATiASOAz9iOtaEACBrLwsE23Eusz6Azx6D3bFxc3JMAcIvBUM0KT9iLioruAcA3GNgFaQvzkQOny8vLH18PgIDSJggfTrOzDR8iBO8zeaeiwAf/8eLi4kv9/f0Tijwku6mKCYAqPPARmm+FggvCA6cA9kJfX99kSKsGYXCiQb5ut7q6OmpgYKCSlxoBkai87AXAp11dXbU8A4p8XdZ0TgiAwcHBh9F62gjAZrN9gPGjZgAIOtPhiIqKug/jH0K3qMvDcD30Kl6YVuUb4TccDrLcMTk5uR/jX6E4XlE+B99AFXzGrAc0HRsKxwqARwEgx7EKQA6g96gDr4QLQIBsKBwYeZB366FMmaS0dxl7kzowq8hMs+uGQzwwNTV1UE5DNMcq2j2s/AQheFmRhc2uGY4VAIcAIHVAB4D+O7Ozs3VhWzVMXDMcuPkRckAqoXoYRbAN6+bm5o6PjIxIPljSVoXD6XTuAMATeOA4LlfH5+ieJATPWWJZUaK7TwgAzvyn8MAxAwAvHmiw2+2vK3MtY3UgAHAQzc9DNxksnMMzr1GIZgxyS7q6xGT1slL1LFg2gtxJpTQCswSAKNGBoH8V8suA2ghPJVe2Ezk5OVmq3CpetzsSExNbiL3cC+QrSU1KAetibA/fkY3qd6QVQHQgOBtmU1JSrqD4dqgAUj0lfCFhKUlNTb3Ml5NlW1QHAiMRExMTHlb7LTshmW4JpEte+nlQVkZGxtWxsTE5vDbdVoEQjbh7jtA04X5JxnJIfU/43eyW3NLS0vO9vb2rcohxU01VrptIaLxc4a/4fL4MBooh1SMyr5hzJQ+wP8i7uskmO2uCED3Dw8MLGPmOLSrdOyH1DBGZizG+8pN/JIxyuQ2rqYkXUgHu9s7Pz7/N4FuQMRljkB0BSB3bWN1NIXWtJTQz0c4HzosYC1VR5VP/JDvnWEdHh+mqum44DMgDuLwpLS3NDRBJ1psN4yXIYzl/mkdHR1d9bxre1XXNgJCJgdzc3Gskq3xV10Bqjjjol7FrHNSQy/AbbmZBSLL68cg1knGAEFRhaYdizYE3Kil4dq4Dv8zMzMgPkf9spkFoGgHyB8Y66UtoUjX5yrPC4XD4AdKyESBhgxBjALlOCf+b1R+gq56y0cju5neAh3d+WgG25mNTINAaIP7deKSZ0AiQBGh5x9GPhr8fkFMJCQm/U9CCP0+R69pmQSwrY7UDGGtm9aUInFBw6yPbB6AZit6aQCwBIUjwyBBAfsWo7Jo0ka00KWh7oRG88ZsmVJ9BxKpwM7zL5crlv8R5wOxBj1qR/XhEquvnXBN1Jd4yT2jAx8fHJ9PT07+nXriQ7VKAyILlz+6NrKysPyloS/SXm+UgRCtA3ABpAkgFXfmHpbU4mH1cFa8Tvr80oeXh0BTLk6uAXJrPQfdCUlG1No9HDiUlJV1sbW3d2h/s7BpfZmbmJVYu/zLkyqh5Xp41nM49eKRDTRwNpaXP9vb2YU7Xp1n51wbFEhrZOf4tByGGOzs7x8rKyg7DnoLkFuaB3mCXnOEZ/kWEyaab5AgeeZbtO9zT09OAgk3fT02DkAnZ2dlx8vNNnfwvwX82xj5+deEAAAAASUVORK5CYII="
|
||||||
|
/>
|
||||||
|
</view>
|
||||||
|
</block>
|
||||||
|
<view class="input-view">
|
||||||
|
<uni-icons
|
||||||
|
type="search"
|
||||||
|
size="22"
|
||||||
|
color="#666666"
|
||||||
|
style="line-height: 60rpx"
|
||||||
|
/>
|
||||||
|
<input
|
||||||
|
confirm-type="search"
|
||||||
|
class="input"
|
||||||
|
type="text"
|
||||||
|
placeholder="输入城市名进行搜索"
|
||||||
|
@input="bindinputCitys"
|
||||||
|
/>
|
||||||
|
</view>
|
||||||
|
</uni-nav-bar>
|
||||||
|
<!-- 热门城市 -->
|
||||||
|
<view class="ynq-AutoAddress">
|
||||||
|
<text class="iconfontAili icon-dingwei1"></text>
|
||||||
|
<text style="margin: 0 12rpx">当前定位城市</text>
|
||||||
|
<text>{{ loactionCity }}</text>
|
||||||
|
</view>
|
||||||
|
<text>热门城市</text>
|
||||||
|
<view class="hot">
|
||||||
|
<view
|
||||||
|
class="hot-item"
|
||||||
|
v-for="item in hotList"
|
||||||
|
:key="item.id"
|
||||||
|
@tap="bindCity(item)"
|
||||||
|
:data-city="item.name"
|
||||||
|
>{{ item.name }}</view
|
||||||
|
>
|
||||||
|
</view>
|
||||||
|
<!-- 首字母检索 -->
|
||||||
|
<view class="searchLetter touchClass">
|
||||||
|
<!-- 右边字母数据数据 触摸事件-->
|
||||||
|
<view
|
||||||
|
v-for="item in searchLetter"
|
||||||
|
:key="item.name"
|
||||||
|
:data-letter="item.name"
|
||||||
|
:style="{ height: `${itemH}px` }"
|
||||||
|
@touchstart.stop="searchStart"
|
||||||
|
@touchmove.stop="searchMove"
|
||||||
|
@touchend.stop="searchEnd"
|
||||||
|
>{{ item.name }}</view
|
||||||
|
>
|
||||||
|
</view>
|
||||||
|
<!-- 左边字母跟右边字母true时 屏幕中心显示选中的首字母-->
|
||||||
|
<!-- 居中首字母样式 -->
|
||||||
|
<view class="cont_Letter" v-if="isShowLetter">
|
||||||
|
{{ showLetter }}
|
||||||
|
</view>
|
||||||
|
<scroll-view
|
||||||
|
scroll-y="true"
|
||||||
|
:style="{ height: `${winHeight}px` }"
|
||||||
|
:scroll-top="scrollTop"
|
||||||
|
enhanced
|
||||||
|
:show-scrollbar="false"
|
||||||
|
v-if="!search"
|
||||||
|
>
|
||||||
|
<!-- 循环城市数据 -->
|
||||||
|
<view v-for="(value, key) in cityList" :key="key">
|
||||||
|
<!-- 循环首字母检索信息 -->
|
||||||
|
<view class="list_letter">{{ key }}</view>
|
||||||
|
<!-- 城市ID城市名称 -->
|
||||||
|
<view
|
||||||
|
class="item_city"
|
||||||
|
v-for="item in value"
|
||||||
|
:key="item.id"
|
||||||
|
:data-city="item.name"
|
||||||
|
@tap="bindCity(item)"
|
||||||
|
>{{ item.name }}</view
|
||||||
|
>
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
||||||
|
<!-- 搜索列表 -->
|
||||||
|
<view class="list" v-if="search">
|
||||||
|
<view
|
||||||
|
class="text"
|
||||||
|
v-for="item in searchList"
|
||||||
|
:key="item.id"
|
||||||
|
@tap="bindCity(item)"
|
||||||
|
:data-city="item.name"
|
||||||
|
>{{ item.name }}</view
|
||||||
|
>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import address from "./citys.js";
|
||||||
|
export default {
|
||||||
|
name: "NynCityList",
|
||||||
|
props: {
|
||||||
|
hot: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false,
|
||||||
|
default: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
isShowLetter: false, //拖动时,是否显示中间字母
|
||||||
|
showLetter: "A", //中间字母
|
||||||
|
searchLetter: [], //字母检索列表
|
||||||
|
itemH: 0, //字母列表的高度
|
||||||
|
startPageY: 0, //开始拖动字母时Y坐标
|
||||||
|
bHeight: 0,
|
||||||
|
tHeight: 0,
|
||||||
|
CityName: "",
|
||||||
|
scrollTop: 0, //城市列表容器滚动条的位置
|
||||||
|
winHeight: 0, //城市列表窗口高度
|
||||||
|
cityList: [], //城市列表
|
||||||
|
hotList: [], //热门列表
|
||||||
|
search: false, //是否搜索
|
||||||
|
searchList: [],
|
||||||
|
time: 0,
|
||||||
|
loactionCity: "无法定位",
|
||||||
|
isAdd: false,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
onShow() {
|
||||||
|
let currentAddress = uni.getStorageSync("currentAddress");
|
||||||
|
let loactionCity = uni.getStorageSync("loactionCity");
|
||||||
|
if (currentAddress) {
|
||||||
|
if (currentAddress.area) {
|
||||||
|
this.loactionCity = currentAddress.area;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!currentAddress.area && currentAddress.city) {
|
||||||
|
this.loactionCity = currentAddress.city;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!currentAddress.area && !currentAddress.city && currentAddress.addr) {
|
||||||
|
let regex = /(\S+市)/g;
|
||||||
|
let matches = currentAddress.addr.match(regex);
|
||||||
|
if (matches && matches.length > 0) {
|
||||||
|
let firstMatch = matches[0]; // 第一个匹配的“xx市”
|
||||||
|
this.loactionCity = firstMatch;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.loactionCity = loactionCity;
|
||||||
|
},
|
||||||
|
onLoad(options) {
|
||||||
|
if (options.isAdd) {
|
||||||
|
this.isAdd = options.isAdd;
|
||||||
|
}
|
||||||
|
this.initList();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
handerSkip() {
|
||||||
|
uni.navigateBack();
|
||||||
|
},
|
||||||
|
/* 列表初始化 */
|
||||||
|
initList() {
|
||||||
|
let searchLetter = [];
|
||||||
|
for (let key in address.cities) {
|
||||||
|
searchLetter.push(key);
|
||||||
|
}
|
||||||
|
let hotList = address.hotCities;
|
||||||
|
let cityList = address.cities;
|
||||||
|
let sysInfo = uni.getSystemInfoSync();
|
||||||
|
let winHeight = sysInfo.windowHeight;
|
||||||
|
//添加要匹配的字母范围值
|
||||||
|
//更加屏幕高度设置子元素的高度
|
||||||
|
let itemH = winHeight / searchLetter.length;
|
||||||
|
let tempObj = [];
|
||||||
|
for (let i = 0; i < searchLetter.length; i++) {
|
||||||
|
let temp = {};
|
||||||
|
temp.name = searchLetter[i];
|
||||||
|
temp.tHeight = i * itemH;
|
||||||
|
temp.bHeight = (i + 1) * itemH;
|
||||||
|
tempObj.push(temp);
|
||||||
|
}
|
||||||
|
this.winHeight = winHeight;
|
||||||
|
this.itemH = itemH - "20";
|
||||||
|
this.searchLetter = tempObj;
|
||||||
|
this.cityList = cityList;
|
||||||
|
this.hotList = hotList;
|
||||||
|
},
|
||||||
|
/* 搜索城市时触发 */
|
||||||
|
bindinputCitys(e) {
|
||||||
|
if (this.time !== null) {
|
||||||
|
clearTimeout(this.time);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.time = setTimeout(() => {
|
||||||
|
if (e.detail.value != "") {
|
||||||
|
this.search = true;
|
||||||
|
} else {
|
||||||
|
this.search = false;
|
||||||
|
}
|
||||||
|
let cities = this.cityList;
|
||||||
|
let cyits = [];
|
||||||
|
for (let key in cities) {
|
||||||
|
for (let i = 0; i < cities[key].length; i++) {
|
||||||
|
if (
|
||||||
|
cities[key][i].name.search(e.detail.value) != -1 ||
|
||||||
|
cities[key][i].spell.search(e.detail.value) != -1
|
||||||
|
) {
|
||||||
|
cyits.push(cities[key][i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.searchList = cyits;
|
||||||
|
}, 300);
|
||||||
|
},
|
||||||
|
/* 检索字母拖动开始 */
|
||||||
|
searchStart(e) {
|
||||||
|
let showLetter = e.currentTarget.dataset.letter;
|
||||||
|
let pageY = e.touches[0].pageY;
|
||||||
|
this.setScrollTop(showLetter);
|
||||||
|
this.nowLetter(pageY);
|
||||||
|
this.showLetter = showLetter;
|
||||||
|
this.startPageY = pageY;
|
||||||
|
this.isShowLetter = true;
|
||||||
|
// let pageY = e.touches[0].pageY;
|
||||||
|
// this.nowLetter(pageY);
|
||||||
|
// this.startPageY = pageY;
|
||||||
|
// this.isShowLetter = true
|
||||||
|
},
|
||||||
|
/* 检索字母拖动中 */
|
||||||
|
searchMove(e) {
|
||||||
|
let pageY = e.touches[0].pageY;
|
||||||
|
let startPageY = this.startPageY;
|
||||||
|
let tHeight = this.tHeight;
|
||||||
|
let bHeight = this.bHeight;
|
||||||
|
// let showLetter = 0;
|
||||||
|
if (startPageY - pageY > 0) {
|
||||||
|
//向上移动
|
||||||
|
if (pageY < tHeight) {
|
||||||
|
this.nowLetter(pageY);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
//向下移动
|
||||||
|
if (pageY > bHeight) {
|
||||||
|
this.nowLetter(pageY);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
/* 检索字母拖动结束 */
|
||||||
|
searchEnd() {
|
||||||
|
setTimeout(() => {
|
||||||
|
this.isShowLetter = false;
|
||||||
|
}, 1000);
|
||||||
|
},
|
||||||
|
/* 点击城市 */
|
||||||
|
bindCity(item) {
|
||||||
|
// 向外传递这个城市
|
||||||
|
// this.$emit("bindCity", item);
|
||||||
|
uni.setStorageSync("city", item.name);
|
||||||
|
uni.navigateBack();
|
||||||
|
},
|
||||||
|
/* 设置scroll-view滚动距离 */
|
||||||
|
setScrollTop(showLetter) {
|
||||||
|
let scrollTop = 0;
|
||||||
|
let cityList = this.cityList;
|
||||||
|
let cityCount = 0;
|
||||||
|
let initialCount = 0;
|
||||||
|
for (let key in cityList) {
|
||||||
|
if (showLetter == key) {
|
||||||
|
scrollTop = initialCount * 30 + cityCount * 41;
|
||||||
|
break;
|
||||||
|
} else {
|
||||||
|
initialCount++;
|
||||||
|
cityCount += cityList[key].length;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.scrollTop = scrollTop;
|
||||||
|
},
|
||||||
|
/* */
|
||||||
|
nowLetter(pageY) {
|
||||||
|
let letterData = this.searchLetter;
|
||||||
|
let bHeight = 0;
|
||||||
|
let tHeight = 0;
|
||||||
|
let showLetter = "";
|
||||||
|
for (let i = 0; i < letterData.length; i++) {
|
||||||
|
if (letterData[i].tHeight <= pageY && pageY <= letterData[i].bHeight) {
|
||||||
|
bHeight = letterData[i].bHeight;
|
||||||
|
tHeight = letterData[i].tHeight;
|
||||||
|
showLetter = letterData[i].name;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// this.setScrollTop(showLetter);
|
||||||
|
this.bHeight = bHeight;
|
||||||
|
this.tHeight = tHeight;
|
||||||
|
this.showLetter = showLetter;
|
||||||
|
this.startPageY = pageY;
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.nyn-city-list-container {
|
||||||
|
padding: 0 48rpx;
|
||||||
|
background: #fff;
|
||||||
|
height: 100%;
|
||||||
|
overflow: hidden;
|
||||||
|
|
||||||
|
.ynq-AutoAddress {
|
||||||
|
margin: 48rpx 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 隐藏滚动条 */
|
||||||
|
.scroll-view {
|
||||||
|
scrollbar-width: none; /* Firefox */
|
||||||
|
}
|
||||||
|
|
||||||
|
.scroll-view::-webkit-scrollbar {
|
||||||
|
display: none; /* Chrome, Safari */
|
||||||
|
}
|
||||||
|
|
||||||
|
.input-view {
|
||||||
|
width: 92%;
|
||||||
|
display: flex;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
height: 60rpx;
|
||||||
|
border-radius: 30rpx;
|
||||||
|
padding: 0 4%;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
margin: 10rpx 0;
|
||||||
|
line-height: 60rpx;
|
||||||
|
margin-left: 10rpx;
|
||||||
|
color: #b9b9b9;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input-view .uni-icon {
|
||||||
|
line-height: 60rpx !important;
|
||||||
|
font-size: 24rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input-view .uni-icons {
|
||||||
|
font-size: 32rpx !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input-view .input {
|
||||||
|
height: 60rpx;
|
||||||
|
line-height: 60rpx;
|
||||||
|
width: 94%;
|
||||||
|
padding: 0 2%;
|
||||||
|
font-size: 24rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.search {
|
||||||
|
background-color: #ffffff;
|
||||||
|
border: 1px solid #cccccc;
|
||||||
|
width: 686rpx;
|
||||||
|
border-radius: 100rpx;
|
||||||
|
margin: 20rpx auto;
|
||||||
|
padding: 4rpx;
|
||||||
|
input {
|
||||||
|
line-height: 60rpx;
|
||||||
|
text-align: left;
|
||||||
|
padding-left: 20rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/* 首字母样式 */
|
||||||
|
.searchLetter {
|
||||||
|
position: fixed;
|
||||||
|
right: 0;
|
||||||
|
top: 20%;
|
||||||
|
width: 30px;
|
||||||
|
height: 80%;
|
||||||
|
text-align: center;
|
||||||
|
justify-content: center;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
color: #666;
|
||||||
|
background-color: #fff;
|
||||||
|
z-index: 1;
|
||||||
|
view {
|
||||||
|
height: 50rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/* 右边首字母样式 */
|
||||||
|
.touchClass {
|
||||||
|
color: #666;
|
||||||
|
font-size: 28rpx;
|
||||||
|
}
|
||||||
|
/* 居中显示的选中首字母 */
|
||||||
|
.cont_Letter {
|
||||||
|
background-color: #666;
|
||||||
|
color: #fff;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
position: fixed;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
margin: -50px;
|
||||||
|
width: 100px;
|
||||||
|
height: 100px;
|
||||||
|
border-radius: 10px;
|
||||||
|
font-size: 26px;
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
|
/* 循环数据首字母检索 */
|
||||||
|
.list_letter {
|
||||||
|
display: flex;
|
||||||
|
background-color: #fff;
|
||||||
|
height: 30px;
|
||||||
|
color: #2a2a2a;
|
||||||
|
font-size: 26rpx;
|
||||||
|
align-items: center;
|
||||||
|
position: sticky;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
/* 城市样式 */
|
||||||
|
.item_city {
|
||||||
|
display: flex;
|
||||||
|
background-color: #fff;
|
||||||
|
height: 40px;
|
||||||
|
line-height: 40px;
|
||||||
|
color: #2a2a2a;
|
||||||
|
font-size: 28rpx;
|
||||||
|
align-items: center;
|
||||||
|
border-bottom: 1px solid #f8f8f8;
|
||||||
|
}
|
||||||
|
.hot {
|
||||||
|
background: #ffffff;
|
||||||
|
display: flex;
|
||||||
|
flex-flow: wrap;
|
||||||
|
margin: 10px 0px;
|
||||||
|
justify-content: space-between;
|
||||||
|
|
||||||
|
.hot-item {
|
||||||
|
font-size: 28rpx;
|
||||||
|
padding: 4px 11px;
|
||||||
|
border-radius: 6px;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
background: #f5f5f6;
|
||||||
|
width: 17%;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.list {
|
||||||
|
.eng {
|
||||||
|
background: #ffffff;
|
||||||
|
padding: 30rpx;
|
||||||
|
color: #212121;
|
||||||
|
}
|
||||||
|
.text {
|
||||||
|
color: #212121;
|
||||||
|
font-size: 28rpx;
|
||||||
|
height: 40px;
|
||||||
|
line-height: 40px;
|
||||||
|
border-bottom: 1px solid #e6e6e6;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
898
address/selectShippingAddress.vue
Normal file
@ -0,0 +1,898 @@
|
|||||||
|
<template>
|
||||||
|
<view class="address-container">
|
||||||
|
<view class="hander">
|
||||||
|
<uni-nav-bar
|
||||||
|
title=""
|
||||||
|
:fixed="true"
|
||||||
|
:statusBar="false"
|
||||||
|
:border="false"
|
||||||
|
:left-width="'132rpx'"
|
||||||
|
:right-width="'0rpx'"
|
||||||
|
>
|
||||||
|
<block slot="left">
|
||||||
|
<view class="left-block" @click="handerSkip">
|
||||||
|
<text class="iconfontAili icon-dingwei1"></text>
|
||||||
|
<text class="city-block">{{
|
||||||
|
originalData.result.addressComponent.city
|
||||||
|
}}</text>
|
||||||
|
<text class="iconfontAili icon-xiala"></text>
|
||||||
|
</view>
|
||||||
|
</block>
|
||||||
|
<view class="input-view">
|
||||||
|
<uni-icons
|
||||||
|
type="search"
|
||||||
|
size="22"
|
||||||
|
color="#666666"
|
||||||
|
style="line-height: 60rpx"
|
||||||
|
/>
|
||||||
|
<input
|
||||||
|
confirm-type="search"
|
||||||
|
class="input"
|
||||||
|
type="text"
|
||||||
|
placeholder="请输入收货地址"
|
||||||
|
@click="onSearch"
|
||||||
|
@input="handerAddress"
|
||||||
|
/>
|
||||||
|
</view>
|
||||||
|
</uni-nav-bar>
|
||||||
|
</view>
|
||||||
|
<scroll-view
|
||||||
|
v-if="!showSearchAddress"
|
||||||
|
class="uni-swiper-list"
|
||||||
|
scroll-y
|
||||||
|
@scroll="onScroll"
|
||||||
|
scroll-with-animation="true"
|
||||||
|
:scroll-top="scrollTop"
|
||||||
|
>
|
||||||
|
<view class="address-block">
|
||||||
|
<view class="address-box">
|
||||||
|
<view class="address-left-block">{{
|
||||||
|
originalData.result.sematic_description
|
||||||
|
}}</view>
|
||||||
|
<view class="address-right-block" @click="anewLoction">
|
||||||
|
<text class="iconfontAili icon-zhongxindingwei"></text>
|
||||||
|
<view style="padding-left: 8rpx">重新定位</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view
|
||||||
|
class="list-block"
|
||||||
|
v-if="userInfo.token && formatAddreesList.length > 0"
|
||||||
|
>
|
||||||
|
<view class="list-title-block">
|
||||||
|
<text class="iconfontAili icon-dianpu"></text>
|
||||||
|
<text class="title-block">我的收货地址</text>
|
||||||
|
</view>
|
||||||
|
<view
|
||||||
|
class="list-item"
|
||||||
|
v-for="(item, index) of formatAddreesList"
|
||||||
|
:key="index"
|
||||||
|
@click="handerSetAddress(item, 'my')"
|
||||||
|
>
|
||||||
|
<view class="item-info">
|
||||||
|
<text
|
||||||
|
:class="['item-lable', lableCalss(item.ud_label)]"
|
||||||
|
v-if="
|
||||||
|
item.ud_label == 1 || item.ud_label == 2 || item.ud_label == 3
|
||||||
|
"
|
||||||
|
>{{ labelList[item.ud_label] }}</text
|
||||||
|
>
|
||||||
|
<text class="item-address">{{ item.ud_marker }}</text>
|
||||||
|
<text class="item-detailed-address">{{ item.ud_street_no }}</text>
|
||||||
|
</view>
|
||||||
|
<view class="item-role-info">
|
||||||
|
<text class="item-name">{{ item.ud_name }}</text>
|
||||||
|
<text class="item-sex">{{ item.sex == 0 ? "先生" : "女士" }}</text>
|
||||||
|
<text class="item-mobile">{{ item.ud_mobile }}</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view
|
||||||
|
class="tips"
|
||||||
|
@click="handerList"
|
||||||
|
v-if="formatAddreesList.length > 4"
|
||||||
|
>
|
||||||
|
{{ showFormatAddreesList ? "收起全部地址" : "展开更多地址" }}
|
||||||
|
<text
|
||||||
|
:class="[
|
||||||
|
'iconfontAili ',
|
||||||
|
showFormatAddreesList ? 'icon-top' : 'icon-xiala',
|
||||||
|
]"
|
||||||
|
></text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="list-block">
|
||||||
|
<view class="list-title-block">
|
||||||
|
<text class="iconfontAili icon-dingwei1"></text>
|
||||||
|
<text class="title-block">附近地址</text>
|
||||||
|
</view>
|
||||||
|
<view
|
||||||
|
class="list-item"
|
||||||
|
v-for="(item, index) of nearbyAddressList"
|
||||||
|
:key="index"
|
||||||
|
>
|
||||||
|
<view class="item-info" @click="handerSetAddress(item)">
|
||||||
|
<text class="item-address">{{ item.name }}</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<uMask :show="showMask" :zIndex="2" @click="showMask = false"></uMask>
|
||||||
|
</scroll-view>
|
||||||
|
<scroll-view
|
||||||
|
v-if="showSearchAddress && searchAddress.length > 0"
|
||||||
|
class="uni-swiper-list"
|
||||||
|
scroll-y
|
||||||
|
@scroll="onScroll"
|
||||||
|
scroll-with-animation="true"
|
||||||
|
:scroll-top="scrollTop"
|
||||||
|
>
|
||||||
|
<view class="search-address-list">
|
||||||
|
<view
|
||||||
|
class="search-address-item"
|
||||||
|
v-for="(item, index) of searchAddress"
|
||||||
|
:key="index"
|
||||||
|
>
|
||||||
|
<view
|
||||||
|
class="search-address-item-left"
|
||||||
|
@click="handerSetAddress(item)"
|
||||||
|
>
|
||||||
|
<view class="item-left-name" v-html="item.searchName"></view>
|
||||||
|
<view class="item-left-address">{{
|
||||||
|
item.detailedInformation
|
||||||
|
}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="search-address-item-right">{{ item.distance }}km</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
||||||
|
<view class="u-btn u-btn-default" @click="AddAddress">
|
||||||
|
<text class="iconfontAili icon-zengjiatianjiajiahao"></text>
|
||||||
|
<text>新增收货地址</text>
|
||||||
|
</view>
|
||||||
|
<loginPopup :show="showLoginPopup" @close="closeLoginPopup"></loginPopup>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import uMask from "./umask.vue";
|
||||||
|
import BMapLib from "../helpers/GeoUtils.js";
|
||||||
|
import { mapState, mapMutations } from "vuex";
|
||||||
|
import loginPopup from "@/components/loginPopup.vue";
|
||||||
|
var bmap = require("../libs/bmap-wx.js");
|
||||||
|
export default {
|
||||||
|
components: {
|
||||||
|
uMask,
|
||||||
|
loginPopup,
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
scrollTop: 0,
|
||||||
|
showMask: false,
|
||||||
|
originalData: {
|
||||||
|
result: {
|
||||||
|
addressComponent: {
|
||||||
|
city: "正在定位",
|
||||||
|
},
|
||||||
|
sematic_description: "定位中..",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
addressList: [],
|
||||||
|
formatAddreesList: [],
|
||||||
|
showFormatAddreesList: false,
|
||||||
|
nearbyAddressList: [],
|
||||||
|
showSearchAddress: false,
|
||||||
|
time: 0,
|
||||||
|
searchAddress: [],
|
||||||
|
labelList: ["", "家", "公司", "学校"],
|
||||||
|
options: {},
|
||||||
|
showLoginPopup: false,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
computed: mapState([
|
||||||
|
"Config",
|
||||||
|
"StateCode",
|
||||||
|
"notice",
|
||||||
|
"plantformInfo",
|
||||||
|
"shopInfo",
|
||||||
|
"userInfo",
|
||||||
|
"hasLogin",
|
||||||
|
]),
|
||||||
|
onLoad(options) {
|
||||||
|
console.log("options", options);
|
||||||
|
if (options && options.isShopList) {
|
||||||
|
this.options = options;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onShow() {
|
||||||
|
if (this.userInfo.token) {
|
||||||
|
this.getAddressList();
|
||||||
|
}
|
||||||
|
let city = uni.getStorageSync("city");
|
||||||
|
if (!city) {
|
||||||
|
this.isPhoneLocationEnabled();
|
||||||
|
} else {
|
||||||
|
this.originalData.result.addressComponent.city = city;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onUnload() {
|
||||||
|
uni.switchTab({
|
||||||
|
url: `/pages/index/index`,
|
||||||
|
});
|
||||||
|
uni.removeStorageSync("city");
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
...mapMutations([
|
||||||
|
"login",
|
||||||
|
"logout",
|
||||||
|
"getPlantformInfo",
|
||||||
|
"forceUserInfo",
|
||||||
|
"getUserInfo",
|
||||||
|
"setCartNum",
|
||||||
|
]),
|
||||||
|
closeLoginPopup() {
|
||||||
|
this.showLoginPopup = false;
|
||||||
|
},
|
||||||
|
lableCalss(number) {
|
||||||
|
if (number == 1) {
|
||||||
|
return "item-lable-1";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (number == 2) {
|
||||||
|
return "item-lable-2";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (number == 3) {
|
||||||
|
return "item-lable-3";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
getAddressList() {
|
||||||
|
let that = this;
|
||||||
|
that.$.request({
|
||||||
|
url: that.Config.URL.user.address_lists,
|
||||||
|
data: {},
|
||||||
|
success: function (data, status, msg, code) {
|
||||||
|
if (200 == status) {
|
||||||
|
if (data.items.length > 0) {
|
||||||
|
console.log(that.addressList);
|
||||||
|
that.addressList = data.items;
|
||||||
|
that.formatAddreesList = that.addressList.slice(0, 4);
|
||||||
|
} else {
|
||||||
|
that.setData({
|
||||||
|
isdata: false,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
uni.stopPullDownRefresh();
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
AddAddress() {
|
||||||
|
if (!this.hasLogin) {
|
||||||
|
this.showLoginPopup = true;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
uni.navigateTo({
|
||||||
|
url: "/member/address/manage",
|
||||||
|
});
|
||||||
|
},
|
||||||
|
handerSetAddress(item, type) {
|
||||||
|
if (type == "my") {
|
||||||
|
let group = {
|
||||||
|
name: item.ud_marker,
|
||||||
|
location: {
|
||||||
|
lat: item.ud_latitude,
|
||||||
|
lng: item.ud_longitude,
|
||||||
|
},
|
||||||
|
...item,
|
||||||
|
};
|
||||||
|
uni.setStorageSync("currentAddress", group);
|
||||||
|
} else {
|
||||||
|
uni.setStorageSync("currentAddress", item);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (this.options && this.options.isShopList) {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: `/member/member/supermarketlList`,
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
uni.switchTab({
|
||||||
|
url: "/pages/index/index",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
anewLoction() {
|
||||||
|
uni.removeStorageSync("currentAddress");
|
||||||
|
uni.switchTab({
|
||||||
|
url: "/pages/index/index",
|
||||||
|
});
|
||||||
|
},
|
||||||
|
isPhoneLocationEnabled() {
|
||||||
|
let _this = this;
|
||||||
|
// 获取用户手机系统信息
|
||||||
|
uni.getSystemInfo({
|
||||||
|
success: (res) => {
|
||||||
|
const locationEnabled = res.locationEnabled;
|
||||||
|
if (locationEnabled) {
|
||||||
|
// 手机GPS定位已开启则判断微信APP是否已获取访问定位信息的权限
|
||||||
|
_this.isAppAuthorized();
|
||||||
|
} else {
|
||||||
|
// 手机GPS定位未开启则引导用户手动前往开启
|
||||||
|
uni.showModal({
|
||||||
|
title: "提示",
|
||||||
|
content:
|
||||||
|
'小程序需要基于您的手机定位信息为您提供服务,当前检测到您的手机并未打开定位开关,请关闭小程序后前往 "设置 - 定位服务/位置信息" 开启手机定位,然后重新进入小程序~',
|
||||||
|
showCancel: false,
|
||||||
|
confirmText: "我已知悉",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
fail: (err) => {
|
||||||
|
console.log("用户手机系统信息获取失败", err);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
isAuthorized(a = "scope.userLocation") {
|
||||||
|
// 检查当前是否已经授权访问scope属性
|
||||||
|
let _this = this;
|
||||||
|
uni.getSetting({
|
||||||
|
success: (res) => {
|
||||||
|
let userLocation = res.authSetting[a];
|
||||||
|
if (!userLocation) {
|
||||||
|
// 判断当前是否获得授权,如果没有就去申请授权
|
||||||
|
_this.getAuthorize();
|
||||||
|
} else {
|
||||||
|
_this.getLocation();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
fail: (err) => {
|
||||||
|
_this.openSetting();
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
isAppAuthorized() {
|
||||||
|
let _this = this;
|
||||||
|
// 微信APP授权设置
|
||||||
|
const appAuthorizeSetting = uni.getAppAuthorizeSetting();
|
||||||
|
// 是否允许微信使用定位信息的开关
|
||||||
|
let locationAuthorized = appAuthorizeSetting.locationAuthorized;
|
||||||
|
switch (locationAuthorized) {
|
||||||
|
case "authorized":
|
||||||
|
_this.isAuthorized();
|
||||||
|
break;
|
||||||
|
case "denied":
|
||||||
|
uni.showModal({
|
||||||
|
title: "提示",
|
||||||
|
content:
|
||||||
|
"已拒绝微信获取定位权限,即将打开权限管理页面,请把定位权限设置为允许~",
|
||||||
|
confirmText: "前往设置",
|
||||||
|
success: (res) => {
|
||||||
|
if (res.confirm) {
|
||||||
|
_this.openAppAuthorizeSetting();
|
||||||
|
} else if (res.cancel) {
|
||||||
|
_this.rejectGetLocation();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
case "not determined":
|
||||||
|
uni.showModal({
|
||||||
|
title: "提示",
|
||||||
|
content: "请授权微信获取定位权限~",
|
||||||
|
confirmText: "同意授权",
|
||||||
|
success: (res) => {
|
||||||
|
if (res.confirm) {
|
||||||
|
_this.openAppAuthorizeSetting();
|
||||||
|
} else if (res.cancel) {
|
||||||
|
_this.rejectGetLocation();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
getAuthorize(a = "scope.userLocation") {
|
||||||
|
let _this = this;
|
||||||
|
// uniapp弹窗弹出获取授权(地理,个人微信信息等授权信息)弹窗
|
||||||
|
uni.authorize({
|
||||||
|
scope: a,
|
||||||
|
success: () => {
|
||||||
|
_this.getLocation();
|
||||||
|
},
|
||||||
|
fail: () => {
|
||||||
|
_this.openSetting();
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
openSetting() {
|
||||||
|
let _this = this;
|
||||||
|
uni.showModal({
|
||||||
|
title: "提示",
|
||||||
|
content: "我们需要获取您的位置信息,为您提供服务~",
|
||||||
|
success: (res) => {
|
||||||
|
if (res.confirm) {
|
||||||
|
uni.openSetting({
|
||||||
|
success: (res) => {
|
||||||
|
if (res.authSetting["scope.userLocation"] === true) {
|
||||||
|
_this.getLocation();
|
||||||
|
} else {
|
||||||
|
_this.rejectGetLocation();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
fail: (err) => {
|
||||||
|
console.log("小程序授权弹窗打开失败", err);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
} else if (res.cancel) {
|
||||||
|
_this.rejectGetLocation();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
rejectGetLocation() {
|
||||||
|
uni.showToast({
|
||||||
|
title: "您拒绝了位置授权,小程序无法继续提供出行服务~",
|
||||||
|
icon: "none",
|
||||||
|
duration: 3000,
|
||||||
|
});
|
||||||
|
},
|
||||||
|
openAppAuthorizeSetting() {
|
||||||
|
let _this = this;
|
||||||
|
uni.openAppAuthorizeSetting({
|
||||||
|
success: (res) => {
|
||||||
|
console.log("打开系统微信授权管理页成功", res);
|
||||||
|
_this.isAuthorized();
|
||||||
|
},
|
||||||
|
fail: (err) => {
|
||||||
|
console.log("打开系统微信授权管理页失败", err);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
getLocation() {
|
||||||
|
var that = this;
|
||||||
|
|
||||||
|
let location = "";
|
||||||
|
let currentAddress = uni.getStorageSync("currentAddress");
|
||||||
|
if (currentAddress) {
|
||||||
|
if (currentAddress.point) {
|
||||||
|
location = currentAddress.point.y + "," + currentAddress.point.x;
|
||||||
|
} else {
|
||||||
|
location =
|
||||||
|
currentAddress.location.lat + "," + currentAddress.location.lng;
|
||||||
|
}
|
||||||
|
let BMap = new bmap.BMapWX({
|
||||||
|
// ak: "LkqqCMB1qZmjYEkzx0Y1PTfmAUrkWPog",
|
||||||
|
ak: that.bdMapAk,
|
||||||
|
});
|
||||||
|
let fail = function (res) {
|
||||||
|
console.log("fail", res);
|
||||||
|
};
|
||||||
|
let success = function (res) {
|
||||||
|
console.log("结果地址", res);
|
||||||
|
that.originalData = res.originalData;
|
||||||
|
that.originalData.result.sematic_description = currentAddress.name;
|
||||||
|
let city = uni.getStorageSync("city");
|
||||||
|
if (city) {
|
||||||
|
that.originalData.result.addressComponent.city = city;
|
||||||
|
}
|
||||||
|
that.nearbyAddressList = res.originalData.result.pois;
|
||||||
|
};
|
||||||
|
BMap.regeocoding({
|
||||||
|
location: location,
|
||||||
|
coordtype: "gcj02ll",
|
||||||
|
ret_coordtype: "gcj02ll",
|
||||||
|
fail: fail,
|
||||||
|
success: success,
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
uni.getLocation({
|
||||||
|
type: "wgs84",
|
||||||
|
isHighAccuracy: true,
|
||||||
|
success: function (res) {
|
||||||
|
location = res.latitude + "," + res.longitude;
|
||||||
|
|
||||||
|
let BMap = new bmap.BMapWX({
|
||||||
|
// ak: "LkqqCMB1qZmjYEkzx0Y1PTfmAUrkWPog",
|
||||||
|
ak: that.bdMapAk,
|
||||||
|
});
|
||||||
|
|
||||||
|
let fail = function (res) {
|
||||||
|
console.log("fail", res);
|
||||||
|
};
|
||||||
|
|
||||||
|
let success = function (res) {
|
||||||
|
console.log("结果地址", res);
|
||||||
|
that.address = res.originalData.result.sematic_description;
|
||||||
|
that.originalData = res.originalData;
|
||||||
|
|
||||||
|
let city = uni.getStorageSync("city");
|
||||||
|
if (city) {
|
||||||
|
that.originalData.result.addressComponent.city = city;
|
||||||
|
}
|
||||||
|
that.nearbyAddressList = res.originalData.result.pois;
|
||||||
|
};
|
||||||
|
|
||||||
|
BMap.regeocoding({
|
||||||
|
location: location,
|
||||||
|
coordtype: "wgs84ll",
|
||||||
|
ret_coordtype: "gcj02ll",
|
||||||
|
fail: fail,
|
||||||
|
success: success,
|
||||||
|
});
|
||||||
|
},
|
||||||
|
fail: function (error) {
|
||||||
|
console.error("获取位置失败:", error);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
handerSkip() {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: `/address/selectCity`,
|
||||||
|
});
|
||||||
|
},
|
||||||
|
onSearch() {
|
||||||
|
this.showMask = true;
|
||||||
|
},
|
||||||
|
handerList() {
|
||||||
|
this.showFormatAddreesList = !this.showFormatAddreesList;
|
||||||
|
if (this.showFormatAddreesList) {
|
||||||
|
this.formatAddreesList = this.addressList;
|
||||||
|
} else {
|
||||||
|
this.formatAddreesList = this.addressList.slice(0, 4);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onScroll() {},
|
||||||
|
// 搜索地址
|
||||||
|
handerAddress(e) {
|
||||||
|
let that = this;
|
||||||
|
|
||||||
|
let value = e.target.value;
|
||||||
|
if (value.length == 0) {
|
||||||
|
this.showSearchAddress = false;
|
||||||
|
} else {
|
||||||
|
this.showSearchAddress = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
var fail = function (res) {
|
||||||
|
console.log("fail", res);
|
||||||
|
};
|
||||||
|
|
||||||
|
var currentPoint = {
|
||||||
|
lat: that.originalData.result.location.lat,
|
||||||
|
lng: that.originalData.result.location.lng,
|
||||||
|
};
|
||||||
|
|
||||||
|
var metersToKilometers = function (meters) {
|
||||||
|
let kilometers = meters / 1000;
|
||||||
|
|
||||||
|
// 保留两位小数
|
||||||
|
return kilometers.toFixed(2);
|
||||||
|
};
|
||||||
|
|
||||||
|
var success = function (res) {
|
||||||
|
console.log("结果地址", res);
|
||||||
|
if (res.data.status != 0) {
|
||||||
|
uni.showToast({
|
||||||
|
title: res.message,
|
||||||
|
icon: "none",
|
||||||
|
duration: 3000,
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
that.searchAddress = res.data.result
|
||||||
|
.filter((item) => "location" in item)
|
||||||
|
.map((item) => {
|
||||||
|
let obj = {
|
||||||
|
...item,
|
||||||
|
name: item.name,
|
||||||
|
detailedInformation: item.address.replace(/-/g, ""),
|
||||||
|
distance: metersToKilometers(
|
||||||
|
BMapLib.GeoUtils.getDistance(currentPoint, item.location)
|
||||||
|
),
|
||||||
|
};
|
||||||
|
return obj;
|
||||||
|
});
|
||||||
|
|
||||||
|
console.log("that.searchAddress", that.searchAddress);
|
||||||
|
|
||||||
|
that.searchAddress.forEach((item) => {
|
||||||
|
if (item.name.indexOf(value) >= 0) {
|
||||||
|
item.searchName = item.name.replaceAll(
|
||||||
|
value,
|
||||||
|
"<font style='color:#ee852f;padding:0 4px'>" + value + "</font>"
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
item.searchName = item.name;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
console.log("searchAddress", that.searchAddress);
|
||||||
|
};
|
||||||
|
|
||||||
|
let params = {
|
||||||
|
query: value,
|
||||||
|
region: this.originalData.result.addressComponent.city,
|
||||||
|
output: "json",
|
||||||
|
city_limit: true,
|
||||||
|
ret_coordtype: "gcj02ll",
|
||||||
|
// ak: "qWKt2xbrqXsp2yK35YYXVBNZgrbiCG5v",
|
||||||
|
ak: that.bdMapAk,
|
||||||
|
};
|
||||||
|
|
||||||
|
let city = that.originalData.result.addressComponent.city;
|
||||||
|
if (city) {
|
||||||
|
params.center = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (this.time !== null) {
|
||||||
|
clearTimeout(this.time);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.time = setTimeout(() => {
|
||||||
|
uni.request({
|
||||||
|
url: `https://api.map.baidu.com/place/v2/suggestion`,
|
||||||
|
data: params,
|
||||||
|
success: success,
|
||||||
|
fail: fail,
|
||||||
|
});
|
||||||
|
}, 600);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
.address-container {
|
||||||
|
height: calc(100vh - 88rpx);
|
||||||
|
background: #fff;
|
||||||
|
overflow: hidden;
|
||||||
|
|
||||||
|
.item-lable-1 {
|
||||||
|
background: #fdf3da;
|
||||||
|
color: #de8a48;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-lable-2 {
|
||||||
|
background: #e5eefb;
|
||||||
|
color: #4687e4;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-lable-3 {
|
||||||
|
background: #eff9e7;
|
||||||
|
color: #6eb768;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hander {
|
||||||
|
.uni-navbar__header {
|
||||||
|
align-items: center;
|
||||||
|
padding: 10rpx 20rpx !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.left-block {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
line-height: 60rpx;
|
||||||
|
}
|
||||||
|
.city-block {
|
||||||
|
white-space: nowrap; /* 确保文本在一行内显示 */
|
||||||
|
overflow: hidden; /* 隐藏超出容器的文本 */
|
||||||
|
text-overflow: ellipsis; /* 使用省略符号表示文本超出 */
|
||||||
|
max-width: 140rpx;
|
||||||
|
padding-right: 4rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-dingwei {
|
||||||
|
font-size: 40rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-right {
|
||||||
|
font-size: 24rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.address-block {
|
||||||
|
margin: 20rpx 0;
|
||||||
|
padding: 20rpx 32rpx;
|
||||||
|
border-top: 2rpx solid #f0f0f0;
|
||||||
|
border-bottom: 2rpx solid #f0f0f0;
|
||||||
|
|
||||||
|
.address-box {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
.address-left-block {
|
||||||
|
font-size: 32rpx;
|
||||||
|
white-space: nowrap; /* 确保文本在一行内显示 */
|
||||||
|
overflow: hidden; /* 隐藏超出容器的文本 */
|
||||||
|
text-overflow: ellipsis; /* 使用省略符号表示文本超出 */
|
||||||
|
max-width: 520rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.address-right-block {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
color: #de8a48;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.list-block {
|
||||||
|
padding: 0 32rpx;
|
||||||
|
border-bottom: 2rpx solid #f8f8f8;
|
||||||
|
|
||||||
|
.list-title-block {
|
||||||
|
position: sticky;
|
||||||
|
top: 0;
|
||||||
|
padding: 12rpx 0;
|
||||||
|
background: #fff;
|
||||||
|
|
||||||
|
.title-block {
|
||||||
|
font-size: 28rpx;
|
||||||
|
padding-left: 6rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.list-item {
|
||||||
|
margin: 0 32rpx;
|
||||||
|
padding: 20rpx 0;
|
||||||
|
border-bottom: 2rpx solid #f0f0f0;
|
||||||
|
|
||||||
|
.item-lable {
|
||||||
|
display: inline-block;
|
||||||
|
margin-right: 9px;
|
||||||
|
padding: 0px 8px;
|
||||||
|
width: 32px;
|
||||||
|
border-radius: 4px;
|
||||||
|
text-align: center;
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-address {
|
||||||
|
margin-right: 8rpx;
|
||||||
|
font-weight: 700;
|
||||||
|
font-size: 30rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-detailed-address {
|
||||||
|
font-weight: 700;
|
||||||
|
font-size: 30rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-role-info {
|
||||||
|
color: #848484;
|
||||||
|
font-size: 24rpx;
|
||||||
|
|
||||||
|
.item-name {
|
||||||
|
padding-right: 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-mobile {
|
||||||
|
margin-left: 40rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.tips {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
margin: 20rpx 32rpx;
|
||||||
|
font-size: 24rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-zengjiatianjiajiahao {
|
||||||
|
font-size: 40rpx;
|
||||||
|
color: #3579ff;
|
||||||
|
margin-right: 12rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-address-list {
|
||||||
|
margin: 40rpx;
|
||||||
|
|
||||||
|
.search-address-item {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
padding: 20rpx 0;
|
||||||
|
border-bottom: 2rpx solid #f0f0f0;
|
||||||
|
|
||||||
|
.search-address-item-left {
|
||||||
|
width: 80%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-address-item-right {
|
||||||
|
color: #d7d7d7;
|
||||||
|
width: 20%;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
rich-text {
|
||||||
|
// max-width: 90%;
|
||||||
|
max-height: 27px;
|
||||||
|
overflow: hidden;
|
||||||
|
word-break: break-all; /* break-all(允许在单词内换行。) */
|
||||||
|
text-overflow: ellipsis; /* 超出部分省略号 */
|
||||||
|
display: -webkit-box; /** 对象作为伸缩盒子模型显示 **/
|
||||||
|
-webkit-box-orient: vertical; /** 设置或检索伸缩盒对象的子元素的排列方式 **/
|
||||||
|
-webkit-line-clamp: 2; /** 显示的行数 **/
|
||||||
|
}
|
||||||
|
|
||||||
|
// .item-left-name rich-text {
|
||||||
|
// white-space: nowrap; /* 确保文本在一行内显示 */
|
||||||
|
// overflow: hidden; /* 隐藏超出容器的文本 */
|
||||||
|
// text-overflow: ellipsis; /* 使用省略符号表示文本超出 */
|
||||||
|
// -webkit-box-orient: vertical;
|
||||||
|
// max-width: 90%;
|
||||||
|
// display: -webkit-box;
|
||||||
|
// box-sizing: border-box;
|
||||||
|
// }
|
||||||
|
|
||||||
|
.item-left-address {
|
||||||
|
font-size: 24rpx;
|
||||||
|
color: #848484;
|
||||||
|
white-space: nowrap; /* 确保文本在一行内显示 */
|
||||||
|
overflow: hidden; /* 隐藏超出容器的文本 */
|
||||||
|
text-overflow: ellipsis; /* 使用省略符号表示文本超出 */
|
||||||
|
max-width: 90%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.input-view {
|
||||||
|
width: 92%;
|
||||||
|
display: flex;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
height: 60rpx;
|
||||||
|
border-radius: 30rpx;
|
||||||
|
padding: 0 4%;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
margin: 10rpx 0;
|
||||||
|
line-height: 60rpx;
|
||||||
|
margin-left: 10rpx;
|
||||||
|
color: #b9b9b9;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input-view .uni-icon {
|
||||||
|
line-height: 60rpx !important;
|
||||||
|
font-size: 24rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input-view .uni-icons {
|
||||||
|
font-size: 32rpx !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input-view .input {
|
||||||
|
height: 60rpx;
|
||||||
|
line-height: 60rpx;
|
||||||
|
width: 94%;
|
||||||
|
padding: 0 2%;
|
||||||
|
font-size: 24rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.uni-swiper-list {
|
||||||
|
height: calc(100vh - 98px);
|
||||||
|
}
|
||||||
|
|
||||||
|
.u-btn-default {
|
||||||
|
position: fixed;
|
||||||
|
left: 0;
|
||||||
|
bottom: 0;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
width: 100%;
|
||||||
|
background: #fff;
|
||||||
|
color: #000;
|
||||||
|
z-index: 1;
|
||||||
|
margin: 0;
|
||||||
|
height: 120rpx;
|
||||||
|
line-height: 120rpx;
|
||||||
|
bottom: constant(safe-area-inset-bottom);
|
||||||
|
// bottom: env(safe-area-inset-bottom);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>.
|
||||||
130
address/umask.vue
Normal file
@ -0,0 +1,130 @@
|
|||||||
|
<template>
|
||||||
|
<view
|
||||||
|
class="u-mask"
|
||||||
|
hover-stop-propagation
|
||||||
|
:style="[maskStyle, zoomStyle]"
|
||||||
|
@tap="click"
|
||||||
|
@touchmove.stop.prevent="() => {}"
|
||||||
|
:class="{
|
||||||
|
'u-mask-zoom': zoom,
|
||||||
|
'u-mask-show': show,
|
||||||
|
}"
|
||||||
|
>
|
||||||
|
<slot />
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
/**
|
||||||
|
* mask 遮罩
|
||||||
|
* @description 创建一个遮罩层,用于强调特定的页面元素,并阻止用户对遮罩下层的内容进行操作,一般用于弹窗场景
|
||||||
|
* @tutorial https://www.uviewui.com/components/mask.html
|
||||||
|
* @property {Boolean} show 是否显示遮罩(默认false)
|
||||||
|
* @property {String Number} z-index z-index 层级(默认1070)
|
||||||
|
* @property {Object} custom-style 自定义样式对象,见上方说明
|
||||||
|
* @property {String Number} duration 动画时长,单位毫秒(默认300)
|
||||||
|
* @property {Boolean} zoom 是否使用scale对遮罩进行缩放(默认true)
|
||||||
|
* @property {Boolean} mask-click-able 遮罩是否可点击,为false时点击不会发送click事件(默认true)
|
||||||
|
* @event {Function} click mask-click-able为true时,点击遮罩发送此事件
|
||||||
|
* @example <u-mask :show="show" @click="show = false"></u-mask>
|
||||||
|
*/
|
||||||
|
export default {
|
||||||
|
name: "u-mask",
|
||||||
|
props: {
|
||||||
|
// 是否显示遮罩
|
||||||
|
show: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false,
|
||||||
|
},
|
||||||
|
// 层级z-index
|
||||||
|
zIndex: {
|
||||||
|
type: [Number, String],
|
||||||
|
default: "",
|
||||||
|
},
|
||||||
|
// 用户自定义样式
|
||||||
|
customStyle: {
|
||||||
|
type: Object,
|
||||||
|
default() {
|
||||||
|
return {};
|
||||||
|
},
|
||||||
|
},
|
||||||
|
// 遮罩的动画样式, 是否使用使用zoom进行scale进行缩放
|
||||||
|
zoom: {
|
||||||
|
type: Boolean,
|
||||||
|
default: true,
|
||||||
|
},
|
||||||
|
// 遮罩的过渡时间,单位为ms
|
||||||
|
duration: {
|
||||||
|
type: [Number, String],
|
||||||
|
default: 300,
|
||||||
|
},
|
||||||
|
// 是否可以通过点击遮罩进行关闭
|
||||||
|
maskClickAble: {
|
||||||
|
type: Boolean,
|
||||||
|
default: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
zoomStyle: {
|
||||||
|
transform: "",
|
||||||
|
},
|
||||||
|
scale: "scale(1.2, 1.2)",
|
||||||
|
};
|
||||||
|
},
|
||||||
|
watch: {
|
||||||
|
show(n) {
|
||||||
|
if (n && this.zoom) {
|
||||||
|
// 当展示遮罩的时候,设置scale为1,达到缩小(原来为1.2)的效果
|
||||||
|
this.zoomStyle.transform = "scale(1, 1)";
|
||||||
|
} else if (!n && this.zoom) {
|
||||||
|
// 当隐藏遮罩的时候,设置scale为1.2,达到放大(因为显示遮罩时已重置为1)的效果
|
||||||
|
this.zoomStyle.transform = this.scale;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
maskStyle() {
|
||||||
|
let style = {};
|
||||||
|
style.backgroundColor = "rgba(0, 0, 0, 0.6)";
|
||||||
|
if (this.show)
|
||||||
|
style.zIndex = this.zIndex ? this.zIndex : this.$u.zIndex.mask;
|
||||||
|
else style.zIndex = -1;
|
||||||
|
style.transition = `all ${this.duration / 1000}s ease-in-out`;
|
||||||
|
// 判断用户传递的对象是否为空,不为空就进行合并
|
||||||
|
if (Object.keys(this.customStyle).length)
|
||||||
|
style = {
|
||||||
|
...style,
|
||||||
|
...this.customStyle,
|
||||||
|
};
|
||||||
|
return style;
|
||||||
|
},
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
click() {
|
||||||
|
if (!this.maskClickAble) return;
|
||||||
|
this.$emit("click");
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.u-mask {
|
||||||
|
position: fixed;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
opacity: 0;
|
||||||
|
transition: transform 0.3s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.u-mask-show {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.u-mask-zoom {
|
||||||
|
transform: scale(1.2, 1.2);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -19,7 +19,7 @@
|
|||||||
<view class="title" style="background"></view>
|
<view class="title" style="background"></view>
|
||||||
<view class="totalMoney no_lab" v-if="isshow" style="background:#fff"><label>不参与优惠金额:</label><input placeholder="询问服务员后输入" type="digit" @input="onNodiscount" maxlength="8" @blur="blur1" :value="nodiscountvalue" /></view>
|
<view class="totalMoney no_lab" v-if="isshow" style="background:#fff"><label>不参与优惠金额:</label><input placeholder="询问服务员后输入" type="digit" @input="onNodiscount" maxlength="8" @blur="blur1" :value="nodiscountvalue" /></view>
|
||||||
<view class="discount" v-if="isshow1 && shop_discount<10">
|
<view class="discount" v-if="isshow1 && shop_discount<10">
|
||||||
<image src="https://static.lancerdt.com/xcxfile/appicon/img/discount-icon.png" style="width:50rpx;height:54rpx;float:left;margin-top:16rpx"></image><text style="float:left;margin-left:20rpx">{{shop_discount||10}}折</text><text style="color:#db384c;float:right">-{{Currency}}{{discount}}</text>
|
<image src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/img/discount-icon.png" style="width:50rpx;height:54rpx;float:left;margin-top:16rpx"></image><text style="float:left;margin-left:20rpx">{{shop_discount||10}}折</text><text style="color:#db384c;float:right">-{{Currency}}{{discount}}</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="pay">
|
<view class="pay">
|
||||||
<view class="coupon" @click="suitcouponlist" v-if="CouponEnabeld==true&&isCoupon">
|
<view class="coupon" @click="suitcouponlist" v-if="CouponEnabeld==true&&isCoupon">
|
||||||
@ -46,7 +46,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<view class="u-top-default">
|
<view class="u-top-default">
|
||||||
<navigator url='/pages/index/index' open-type="switchTab" class="u-back2">
|
<navigator url='/pages/index/index' open-type="switchTab" class="u-back2">
|
||||||
<image src='https://static.lancerdt.com/xcxfile/appicon/img/gohome.png'></image>
|
<image src='https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/img/gohome.png'></image>
|
||||||
</navigator>
|
</navigator>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
@ -55,16 +55,12 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {
|
import { mapState, mapMutations } from "vuex";
|
||||||
mapState,
|
|
||||||
mapMutations
|
|
||||||
} from 'vuex'
|
|
||||||
|
|
||||||
|
import paymentBox from "../../components/payment-box.vue";
|
||||||
|
|
||||||
import paymentBox from '../../components/payment-box.vue'
|
export default {
|
||||||
|
data: function () {
|
||||||
export default {
|
|
||||||
data: function() {
|
|
||||||
return {
|
return {
|
||||||
store_name: "",
|
store_name: "",
|
||||||
money: "",
|
money: "",
|
||||||
@ -100,60 +96,73 @@
|
|||||||
isECashCard: true,
|
isECashCard: true,
|
||||||
isCoupon: true,
|
isCoupon: true,
|
||||||
isSubmit: true,
|
isSubmit: true,
|
||||||
Currency: '¥',
|
Currency: "¥",
|
||||||
store_id: 0,
|
store_id: 0,
|
||||||
|
|
||||||
paymentData: {}
|
paymentData: {},
|
||||||
}
|
};
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
paymentBox
|
paymentBox,
|
||||||
},
|
},
|
||||||
computed: mapState(['Config', 'StateCode', 'notice', 'plantformInfo', 'shopInfo', 'userInfo', 'hasLogin']),
|
computed: mapState([
|
||||||
|
"Config",
|
||||||
|
"StateCode",
|
||||||
|
"notice",
|
||||||
|
"plantformInfo",
|
||||||
|
"shopInfo",
|
||||||
|
"userInfo",
|
||||||
|
"hasLogin",
|
||||||
|
]),
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
uni.setNavigationBarTitle({
|
uni.setNavigationBarTitle({
|
||||||
title: this.__('优惠买单')
|
title: this.__("优惠买单"),
|
||||||
});
|
});
|
||||||
|
|
||||||
var that = this;
|
var that = this;
|
||||||
|
|
||||||
that.setData({
|
that.setData({
|
||||||
Currency: that.__('¥'),
|
Currency: that.__("¥"),
|
||||||
store_id: options.store_id || 1001
|
store_id: options.store_id || 1001,
|
||||||
});
|
});
|
||||||
|
|
||||||
this.forceUserInfo(function(user) {
|
this.forceUserInfo(function (user) {
|
||||||
that.load();
|
that.load();
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
onUnload() {
|
onUnload() {
|
||||||
// 离开页面,注销事件
|
// 离开页面,注销事件
|
||||||
var that = this
|
var that = this;
|
||||||
this.notice.removeNotification("RefreshCoupon1", that);
|
this.notice.removeNotification("RefreshCoupon1", that);
|
||||||
|
|
||||||
|
|
||||||
if (this.$refs.paymentBox.showBoxView) {
|
if (this.$refs.paymentBox.showBoxView) {
|
||||||
this.$refs.paymentBox.cancel();
|
this.$refs.paymentBox.cancel();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
...mapMutations([
|
||||||
|
"login",
|
||||||
|
"logout",
|
||||||
|
"getPlantformInfo",
|
||||||
|
"forceUserInfo",
|
||||||
|
"getUserInfo",
|
||||||
|
"reloadUserResource",
|
||||||
|
]),
|
||||||
|
|
||||||
...mapMutations(['login', 'logout', 'getPlantformInfo', 'forceUserInfo', 'getUserInfo', 'reloadUserResource']),
|
load: function () {
|
||||||
|
|
||||||
load: function() {
|
|
||||||
let that = this;
|
let that = this;
|
||||||
|
|
||||||
// 初始化页面
|
// 初始化页面
|
||||||
that.$.request({
|
that.$.request({
|
||||||
type: 'post',
|
type: "post",
|
||||||
url: this.Config.URL.store.info,
|
url: this.Config.URL.store.info,
|
||||||
data: {
|
data: {
|
||||||
store_id: that.store_id,
|
store_id: that.store_id,
|
||||||
action: 'intro'
|
action: "intro",
|
||||||
},
|
},
|
||||||
dataType: 'json',
|
dataType: "json",
|
||||||
success: function(data, status, msg, code) {
|
success: function (data, status, msg, code) {
|
||||||
//console.log("优惠买单:", data);
|
//console.log("优惠买单:", data);
|
||||||
that.setData({
|
that.setData({
|
||||||
shop_discount: data.info.store_discount,
|
shop_discount: data.info.store_discount,
|
||||||
@ -163,125 +172,148 @@
|
|||||||
});
|
});
|
||||||
//console.log("CouponEnabeld", that.CouponEnabeld);
|
//console.log("CouponEnabeld", that.CouponEnabeld);
|
||||||
|
|
||||||
false ? that.setData({
|
false
|
||||||
isshow1: false
|
? that.setData({
|
||||||
}) : that.setData({
|
isshow1: false,
|
||||||
isshow1: true
|
})
|
||||||
|
: that.setData({
|
||||||
|
isshow1: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
that.inputVal()
|
that.inputVal();
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
this.notice.addNotification("RefreshCoupon1", that.RefreshCoupon1, that);
|
this.notice.addNotification("RefreshCoupon1", that.RefreshCoupon1, that);
|
||||||
|
|
||||||
var e = 'VendorFeatureSet'; - 1 < e.indexOf("ECashCard") ? (this.setData({
|
var e = "VendorFeatureSet";
|
||||||
isECashCard: true
|
-1 < e.indexOf("ECashCard")
|
||||||
}), this.GetUserUsableECash()) : this.setData({
|
? (this.setData({
|
||||||
isECashCard: false
|
isECashCard: true,
|
||||||
}), -1 < e.indexOf("Coupon") ? this.setData({
|
}),
|
||||||
isCoupon: true
|
this.GetUserUsableECash())
|
||||||
}) : this.setData({
|
: this.setData({
|
||||||
isCoupon: false
|
isECashCard: false,
|
||||||
|
}),
|
||||||
|
-1 < e.indexOf("Coupon")
|
||||||
|
? this.setData({
|
||||||
|
isCoupon: true,
|
||||||
})
|
})
|
||||||
|
: this.setData({
|
||||||
|
isCoupon: false,
|
||||||
|
});
|
||||||
},
|
},
|
||||||
clearnum: function(a) {
|
clearnum: function (a) {
|
||||||
this.setData({
|
this.setData({
|
||||||
deliveryNum: ""
|
deliveryNum: "",
|
||||||
})
|
});
|
||||||
},
|
},
|
||||||
GetUserUsableECash: function() {
|
GetUserUsableECash: function () {
|
||||||
var a = {
|
var a = {
|
||||||
userName: this.userInfo.UserName,
|
userName: this.userInfo.UserName,
|
||||||
orderRealTotal: 0
|
orderRealTotal: 0,
|
||||||
},
|
},
|
||||||
that = this;
|
that = this;
|
||||||
that.$.xsr(that.$.makeUrl(orderapi.GetUserUsableECash, a), function(a) {
|
that.$.xsr(that.$.makeUrl(orderapi.GetUserUsableECash, a), function (a) {
|
||||||
that.setData({
|
that.setData({
|
||||||
MaxUsableCash: a.Info[0].MaxUsableCash,
|
MaxUsableCash: a.Info[0].MaxUsableCash,
|
||||||
MaxUsableECardCash: a.Info[0].MaxUsableECardCash,
|
MaxUsableECardCash: a.Info[0].MaxUsableECardCash,
|
||||||
MaxUsableExtraCash: a.Info[0].MaxUsableExtraCash
|
MaxUsableExtraCash: a.Info[0].MaxUsableExtraCash,
|
||||||
})
|
});
|
||||||
})
|
});
|
||||||
},
|
},
|
||||||
RefreshCoupon1: function(a) {
|
RefreshCoupon1: function (a) {
|
||||||
this.setData({
|
this.setData({
|
||||||
couponItemId: a.couponItemId,
|
couponItemId: a.couponItemId,
|
||||||
IsUseCoupon: a.IsUseCoupon,
|
IsUseCoupon: a.IsUseCoupon,
|
||||||
DiscountMoney: a.DiscountMoney,
|
DiscountMoney: a.DiscountMoney,
|
||||||
MoneyLimit: a.MoneyLimit
|
MoneyLimit: a.MoneyLimit,
|
||||||
}), this.inputVal()
|
}),
|
||||||
|
this.inputVal();
|
||||||
},
|
},
|
||||||
inputnum: function(e) {
|
inputnum: function (e) {
|
||||||
let that = this;
|
let that = this;
|
||||||
this.setData({
|
this.setData({
|
||||||
money: e.detail.value
|
money: e.detail.value,
|
||||||
});
|
});
|
||||||
|
|
||||||
parseFloat(e.detail.value) - (parseFloat(e.detail.value) - parseFloat(this.nodiscount || 0)) * (1 - this.shop_discount / 10) < parseFloat(this.MoneyLimit) && this.setData({
|
parseFloat(e.detail.value) -
|
||||||
couponItemId: 0,
|
(parseFloat(e.detail.value) - parseFloat(this.nodiscount || 0)) *
|
||||||
IsUseCoupon: 0,
|
(1 - this.shop_discount / 10) <
|
||||||
DiscountMoney: 0,
|
parseFloat(this.MoneyLimit) &&
|
||||||
MoneyLimit: 0
|
|
||||||
});
|
|
||||||
|
|
||||||
that.$.isNull(e.detail.value) && this.setData({
|
|
||||||
couponItemId: 0,
|
|
||||||
IsUseCoupon: 0,
|
|
||||||
DiscountMoney: 0,
|
|
||||||
MoneyLimit: 0
|
|
||||||
});
|
|
||||||
|
|
||||||
parseFloat(this.nodiscount) > parseFloat(e.detail.value) && (that.$.showModal({
|
|
||||||
title: "提示",
|
|
||||||
content: "不参与优惠金额应小于总金额"
|
|
||||||
}), this.setData({
|
|
||||||
nodiscount: 0,
|
|
||||||
discount: 0
|
|
||||||
}));
|
|
||||||
|
|
||||||
this.inputVal()
|
|
||||||
},
|
|
||||||
onNodiscount: function(a) {
|
|
||||||
let that = this;
|
|
||||||
this.setData({
|
this.setData({
|
||||||
nodiscount: a.detail.value
|
|
||||||
});
|
|
||||||
parseFloat(this.money) - (parseFloat(this.money) - parseFloat(a.detail.value || 0)) * (1 - this.shop_discount / 10) < parseFloat(this.MoneyLimit) && this.setData({
|
|
||||||
couponItemId: 0,
|
couponItemId: 0,
|
||||||
IsUseCoupon: 0,
|
IsUseCoupon: 0,
|
||||||
DiscountMoney: 0,
|
DiscountMoney: 0,
|
||||||
MoneyLimit: 0
|
MoneyLimit: 0,
|
||||||
});
|
});
|
||||||
|
|
||||||
parseFloat(a.detail.value) > parseFloat(this.money) && (that.$.showModal({
|
that.$.isNull(e.detail.value) &&
|
||||||
|
this.setData({
|
||||||
|
couponItemId: 0,
|
||||||
|
IsUseCoupon: 0,
|
||||||
|
DiscountMoney: 0,
|
||||||
|
MoneyLimit: 0,
|
||||||
|
});
|
||||||
|
|
||||||
|
parseFloat(this.nodiscount) > parseFloat(e.detail.value) &&
|
||||||
|
(that.$.showModal({
|
||||||
title: "提示",
|
title: "提示",
|
||||||
content: "不参与优惠金额应小于总金额"
|
content: "不参与优惠金额应小于总金额",
|
||||||
}), this.setData({
|
}),
|
||||||
|
this.setData({
|
||||||
nodiscount: 0,
|
nodiscount: 0,
|
||||||
discount: 0,
|
discount: 0,
|
||||||
nodiscountvalue: ""
|
|
||||||
}));
|
}));
|
||||||
|
|
||||||
this.inputVal()
|
this.inputVal();
|
||||||
},
|
},
|
||||||
blur: function(a) {
|
onNodiscount: function (a) {
|
||||||
let that = this;
|
let that = this;
|
||||||
/^\d{1,10}(\.\d{1,2})?$/.test(a.detail.value) || that.$.showModal({
|
this.setData({
|
||||||
|
nodiscount: a.detail.value,
|
||||||
|
});
|
||||||
|
parseFloat(this.money) -
|
||||||
|
(parseFloat(this.money) - parseFloat(a.detail.value || 0)) *
|
||||||
|
(1 - this.shop_discount / 10) <
|
||||||
|
parseFloat(this.MoneyLimit) &&
|
||||||
|
this.setData({
|
||||||
|
couponItemId: 0,
|
||||||
|
IsUseCoupon: 0,
|
||||||
|
DiscountMoney: 0,
|
||||||
|
MoneyLimit: 0,
|
||||||
|
});
|
||||||
|
|
||||||
|
parseFloat(a.detail.value) > parseFloat(this.money) &&
|
||||||
|
(that.$.showModal({
|
||||||
title: "提示",
|
title: "提示",
|
||||||
content: "请输入正确金额"
|
content: "不参与优惠金额应小于总金额",
|
||||||
})
|
}),
|
||||||
|
this.setData({
|
||||||
|
nodiscount: 0,
|
||||||
|
discount: 0,
|
||||||
|
nodiscountvalue: "",
|
||||||
|
}));
|
||||||
|
|
||||||
|
this.inputVal();
|
||||||
},
|
},
|
||||||
blur1: function(a) {
|
blur: function (a) {
|
||||||
let that = this;
|
let that = this;
|
||||||
/^\d{1,10}(\.\d{1,2})?$/.test(a.detail.value) || that.$.showModal({
|
/^\d{1,10}(\.\d{1,2})?$/.test(a.detail.value) ||
|
||||||
|
that.$.showModal({
|
||||||
title: "提示",
|
title: "提示",
|
||||||
content: "请输入正确金额"
|
content: "请输入正确金额",
|
||||||
})
|
});
|
||||||
},
|
},
|
||||||
inputVal: function() {
|
blur1: function (a) {
|
||||||
|
let that = this;
|
||||||
|
/^\d{1,10}(\.\d{1,2})?$/.test(a.detail.value) ||
|
||||||
|
that.$.showModal({
|
||||||
|
title: "提示",
|
||||||
|
content: "请输入正确金额",
|
||||||
|
});
|
||||||
|
},
|
||||||
|
inputVal: function () {
|
||||||
let that = this;
|
let that = this;
|
||||||
var a = this.money,
|
var a = this.money,
|
||||||
t = this.nodiscount,
|
t = this.nodiscount,
|
||||||
@ -289,89 +321,142 @@
|
|||||||
o = this.DiscountMoney;
|
o = this.DiscountMoney;
|
||||||
this.setData({
|
this.setData({
|
||||||
discount: ((a - t) * (1 - e / 10)).toFixed(2),
|
discount: ((a - t) * (1 - e / 10)).toFixed(2),
|
||||||
payment: (a - (a - t) * (1 - e / 10) - o).toFixed(2)
|
payment: (a - (a - t) * (1 - e / 10) - o).toFixed(2),
|
||||||
}), this.payment < 0 && this.setData({
|
}),
|
||||||
payment: 0
|
this.payment < 0 &&
|
||||||
}), isNaN(this.discount) && this.setData({
|
this.setData({
|
||||||
discount: 0
|
payment: 0,
|
||||||
}), isNaN(this.payment) && this.setData({
|
}),
|
||||||
payment: 0
|
isNaN(this.discount) &&
|
||||||
}), 0 == this.MaxUsableCash && this.setData({
|
this.setData({
|
||||||
realPayMoney: this.payment
|
discount: 0,
|
||||||
}), this.MaxUsableCash >= this.payment ? this.setData({
|
}),
|
||||||
|
isNaN(this.payment) &&
|
||||||
|
this.setData({
|
||||||
|
payment: 0,
|
||||||
|
}),
|
||||||
|
0 == this.MaxUsableCash &&
|
||||||
|
this.setData({
|
||||||
|
realPayMoney: this.payment,
|
||||||
|
}),
|
||||||
|
this.MaxUsableCash >= this.payment
|
||||||
|
? this.setData({
|
||||||
balance: this.payment,
|
balance: this.payment,
|
||||||
realMoney: 0
|
realMoney: 0,
|
||||||
}) : this.setData({
|
|
||||||
balance: this.MaxUsableCash,
|
|
||||||
realMoney: (this.payment - this.MaxUsableCash).toFixed(2)
|
|
||||||
}), this.setData({
|
|
||||||
realPayMoney: this.realMoney
|
|
||||||
}), 0 == this.isBalance && this.setData({
|
|
||||||
realPayMoney: this.payment
|
|
||||||
})
|
})
|
||||||
|
: this.setData({
|
||||||
|
balance: this.MaxUsableCash,
|
||||||
|
realMoney: (this.payment - this.MaxUsableCash).toFixed(2),
|
||||||
|
}),
|
||||||
|
this.setData({
|
||||||
|
realPayMoney: this.realMoney,
|
||||||
|
}),
|
||||||
|
0 == this.isBalance &&
|
||||||
|
this.setData({
|
||||||
|
realPayMoney: this.payment,
|
||||||
|
});
|
||||||
},
|
},
|
||||||
suitcouponlist: function() {
|
suitcouponlist: function () {
|
||||||
var a = this.money,
|
var a = this.money,
|
||||||
t = this.nodiscount,
|
t = this.nodiscount,
|
||||||
e = this.shop_discount;
|
e = this.shop_discount;
|
||||||
this.setData({
|
this.setData({
|
||||||
discount: ((a - t) * (1 - e / 10)).toFixed(2)
|
discount: ((a - t) * (1 - e / 10)).toFixed(2),
|
||||||
});
|
});
|
||||||
var o = {
|
var o = {
|
||||||
userId: this.userInfo.Id,
|
userId: this.userInfo.Id,
|
||||||
store_id: 1001,
|
store_id: 1001,
|
||||||
realMoney: (a - (a - t) * (1 - e / 10)).toFixed(2)
|
realMoney: (a - (a - t) * (1 - e / 10)).toFixed(2),
|
||||||
},
|
},
|
||||||
that = this;
|
that = this;
|
||||||
that.$.xsr(that.$.makeUrl(cartapi.GetUsableCouponItemListForQuickPay, o), function(a) {
|
that.$.xsr(
|
||||||
|
that.$.makeUrl(cartapi.GetUsableCouponItemListForQuickPay, o),
|
||||||
|
function (a) {
|
||||||
that.setData({
|
that.setData({
|
||||||
info: a.Info
|
info: a.Info,
|
||||||
}), that.$.navigateTo({
|
}),
|
||||||
url: "../favorablesuitcouponlist/favorablesuitcouponlist?val=" + JSON.stringify(a.Info) + "&id=" + that.couponItemId
|
that.$.navigateTo({
|
||||||
})
|
url:
|
||||||
})
|
"../favorablesuitcouponlist/favorablesuitcouponlist?val=" +
|
||||||
|
JSON.stringify(a.Info) +
|
||||||
|
"&id=" +
|
||||||
|
that.couponItemId,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
);
|
||||||
},
|
},
|
||||||
checkboxChange: function(a) {
|
checkboxChange: function (a) {
|
||||||
0 < a.detail.value.length ? this.setData({
|
0 < a.detail.value.length
|
||||||
isshow: true
|
? this.setData({
|
||||||
}) : this.setData({
|
isshow: true,
|
||||||
|
})
|
||||||
|
: this.setData({
|
||||||
isshow: false,
|
isshow: false,
|
||||||
nodiscount: 0
|
nodiscount: 0,
|
||||||
}), this.inputVal()
|
}),
|
||||||
|
this.inputVal();
|
||||||
},
|
},
|
||||||
paysubmit: function(a) {
|
paysubmit: function (a) {
|
||||||
var that = this;
|
var that = this;
|
||||||
if (that.$.isNull(this.money) || 0 == this.money) return that.$.showModal({
|
if (that.$.isNull(this.money) || 0 == this.money)
|
||||||
|
return (
|
||||||
|
that.$.showModal({
|
||||||
title: "提示",
|
title: "提示",
|
||||||
content: "请输入消费总金额"
|
content: "请输入消费总金额",
|
||||||
}), false;
|
}),
|
||||||
if (!/^\d{1,10}(\.\d{1,2})?$/.test(that.money)) return that.$.showModal({
|
false
|
||||||
|
);
|
||||||
|
if (!/^\d{1,10}(\.\d{1,2})?$/.test(that.money))
|
||||||
|
return (
|
||||||
|
that.$.showModal({
|
||||||
title: "提示",
|
title: "提示",
|
||||||
content: "请输入正确金额"
|
content: "请输入正确金额",
|
||||||
}), false;
|
}),
|
||||||
if (that.isshow && !/^\d{1,10}(\.\d{1,2})?$/.test(that.nodiscount)) return that.$.showModal({
|
false
|
||||||
|
);
|
||||||
|
if (that.isshow && !/^\d{1,10}(\.\d{1,2})?$/.test(that.nodiscount))
|
||||||
|
return (
|
||||||
|
that.$.showModal({
|
||||||
title: "提示",
|
title: "提示",
|
||||||
content: "请输入正确金额"
|
content: "请输入正确金额",
|
||||||
}), false;
|
}),
|
||||||
if (parseFloat(that.nodiscount) > parseFloat(that.money)) return that.$.showModal({
|
false
|
||||||
|
);
|
||||||
|
if (parseFloat(that.nodiscount) > parseFloat(that.money))
|
||||||
|
return (
|
||||||
|
that.$.showModal({
|
||||||
title: "提示",
|
title: "提示",
|
||||||
content: "不参与优惠金额应小于总金额"
|
content: "不参与优惠金额应小于总金额",
|
||||||
}), false;
|
}),
|
||||||
this.isBalance ? (0 == this.MaxUsableCash && this.setData({
|
false
|
||||||
|
);
|
||||||
|
this.isBalance
|
||||||
|
? (0 == this.MaxUsableCash &&
|
||||||
|
this.setData({
|
||||||
eCardCash: (1 * this.MaxUsableECardCash).toFixed(2),
|
eCardCash: (1 * this.MaxUsableECardCash).toFixed(2),
|
||||||
extraCash: (1 * this.MaxUsableExtraCash).toFixed(2)
|
extraCash: (1 * this.MaxUsableExtraCash).toFixed(2),
|
||||||
}), 0 != this.MaxUsableCash && 0 == this.balance && this.setData({
|
}),
|
||||||
|
0 != this.MaxUsableCash &&
|
||||||
|
0 == this.balance &&
|
||||||
|
this.setData({
|
||||||
eCardCash: (1 * this.MaxUsableECardCash).toFixed(2),
|
eCardCash: (1 * this.MaxUsableECardCash).toFixed(2),
|
||||||
extraCash: (1 * this.MaxUsableExtraCash).toFixed(2)
|
extraCash: (1 * this.MaxUsableExtraCash).toFixed(2),
|
||||||
}), this.balance >= this.MaxUsableECardCash && this.setData({
|
}),
|
||||||
|
this.balance >= this.MaxUsableECardCash &&
|
||||||
|
this.setData({
|
||||||
eCardCash: (1 * this.MaxUsableECardCash).toFixed(2),
|
eCardCash: (1 * this.MaxUsableECardCash).toFixed(2),
|
||||||
extraCash: (this.balance - 1 * this.MaxUsableECardCash).toFixed(2)
|
extraCash: (this.balance - 1 * this.MaxUsableECardCash).toFixed(
|
||||||
}), this.balance < this.MaxUsableECardCash && this.setData({
|
2
|
||||||
|
),
|
||||||
|
}),
|
||||||
|
this.balance < this.MaxUsableECardCash &&
|
||||||
|
this.setData({
|
||||||
eCardCash: (1 * this.balance).toFixed(2),
|
eCardCash: (1 * this.balance).toFixed(2),
|
||||||
extraCash: 0
|
extraCash: 0,
|
||||||
})) : this.setData({
|
}))
|
||||||
|
: this.setData({
|
||||||
eCardCash: 0,
|
eCardCash: 0,
|
||||||
extraCash: 0
|
extraCash: 0,
|
||||||
});
|
});
|
||||||
|
|
||||||
var param = {
|
var param = {
|
||||||
@ -386,82 +471,84 @@
|
|||||||
firstType: 2,
|
firstType: 2,
|
||||||
eCardCash: this.eCardCash,
|
eCardCash: this.eCardCash,
|
||||||
extraCash: this.extraCash,
|
extraCash: this.extraCash,
|
||||||
store_id: this.store_id
|
store_id: this.store_id,
|
||||||
};
|
};
|
||||||
|
|
||||||
that.$.request({
|
that.$.request({
|
||||||
url: this.Config.URL.pay.favorable,
|
url: this.Config.URL.pay.favorable,
|
||||||
data: param,
|
data: param,
|
||||||
success: function(data, status, msg, code) {
|
success: function (data, status, msg, code) {
|
||||||
if (status == 200) {
|
if (status == 200) {
|
||||||
that.gotopay(data.pay_sn, param.realMoney);
|
that.gotopay(data.pay_sn, param.realMoney);
|
||||||
} else {
|
} else {
|
||||||
that.$.alert(msg)
|
that.$.alert(msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
fail: function(err) {}
|
fail: function (err) {},
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
gotopay_old: function() {
|
gotopay_old: function () {
|
||||||
|
|
||||||
var that = this,
|
var that = this,
|
||||||
param = {
|
param = {
|
||||||
order_id: this.order_id,
|
order_id: this.order_id,
|
||||||
openid: this.userInfo.openId,
|
openid: this.userInfo.openId,
|
||||||
store_id: this.shopInfo.store_id,
|
store_id: this.shopInfo.store_id,
|
||||||
typ: 'json',
|
typ: "json",
|
||||||
payment_channel_code: 'wx_native',
|
payment_channel_code: "wx_native",
|
||||||
prepay_flag: 1
|
prepay_flag: 1,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
that.$.request({
|
that.$.request({
|
||||||
url: this.Config.URL.pay.pay,
|
url: this.Config.URL.pay.pay,
|
||||||
data: param,
|
data: param,
|
||||||
success: function(data, status, msg, code) {
|
success: function (data, status, msg, code) {
|
||||||
if (status == 200) {
|
if (status == 200) {
|
||||||
that.$.requestPayment({
|
that.$.requestPayment({
|
||||||
timeStamp: data.timeStamp,
|
timeStamp: data.timeStamp,
|
||||||
nonceStr: data.nonceStr,
|
nonceStr: data.nonceStr,
|
||||||
"package": data.package,
|
package: data.package,
|
||||||
signType: data.signType,
|
signType: data.signType,
|
||||||
paySign: data.paySign,
|
paySign: data.paySign,
|
||||||
success: function(n) {
|
success: function (n) {
|
||||||
that.returnUrl(param.order_id)
|
that.returnUrl(param.order_id);
|
||||||
},
|
},
|
||||||
fail: function(e) {
|
fail: function (e) {
|
||||||
that.$.redirectTo("/chain/chain/favorabledetail?on=" + param.order_id)
|
that.$.redirectTo(
|
||||||
|
"/chain/chain/favorabledetail?on=" + param.order_id
|
||||||
|
);
|
||||||
},
|
},
|
||||||
complete: function(n) {
|
complete: function (n) {
|
||||||
n.errMsg == "requestPayment:cancel" && (that.$.redirectTo("/chain/chain/favorabledetail?on=" + param.order_id), that.sendMessage(param.order_id, 1))
|
n.errMsg == "requestPayment:cancel" &&
|
||||||
}
|
(that.$.redirectTo(
|
||||||
})
|
"/chain/chain/favorabledetail?on=" + param.order_id
|
||||||
|
),
|
||||||
|
that.sendMessage(param.order_id, 1));
|
||||||
|
},
|
||||||
|
});
|
||||||
} else {
|
} else {
|
||||||
that.$.alert(msg)
|
that.$.alert(msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
fail: function(err) {}
|
fail: function (err) {},
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
gotopay: function(order_id, order_payment_amount) {
|
gotopay: function (order_id, order_payment_amount) {
|
||||||
var that = this;
|
var that = this;
|
||||||
|
|
||||||
that.setData({
|
that.setData({
|
||||||
order_id: order_id,
|
order_id: order_id,
|
||||||
'paymentData': {
|
paymentData: {
|
||||||
order_id: order_id,
|
order_id: order_id,
|
||||||
orderSelMoneyAmount: order_payment_amount,
|
orderSelMoneyAmount: order_payment_amount,
|
||||||
|
|
||||||
user_money: this.userInfo.user_money,
|
user_money: this.userInfo.user_money,
|
||||||
user_points: this.userInfo.user_points,
|
user_points: this.userInfo.user_points,
|
||||||
user_recharge_card: this.userInfo.user_recharge_card,
|
user_recharge_card: this.userInfo.user_recharge_card,
|
||||||
user_sp: this.userInfo.user_sp
|
user_sp: this.userInfo.user_sp,
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
this.$refs.paymentBox.show();
|
this.$refs.paymentBox.show();
|
||||||
@ -469,46 +556,52 @@
|
|||||||
return true;
|
return true;
|
||||||
},
|
},
|
||||||
|
|
||||||
onCancel: function(e) {
|
onCancel: function (e) {
|
||||||
return
|
return;
|
||||||
},
|
},
|
||||||
onPaid: function(e) {
|
onPaid: function (e) {
|
||||||
let that = this
|
let that = this;
|
||||||
|
|
||||||
if (this.$refs.paymentBox.showBoxView) {
|
if (this.$refs.paymentBox.showBoxView) {
|
||||||
this.$refs.paymentBox.cancel();
|
this.$refs.paymentBox.cancel();
|
||||||
}
|
}
|
||||||
|
|
||||||
that.reloadUserResource(function(user_info) {
|
that.reloadUserResource(function (user_info) {
|
||||||
that.$.alert(that.__('支付成功'), function() {
|
that.$.alert(
|
||||||
that.$.gotopage("/chain/chain/favorabledetail?order_id=" + that.order_id)
|
that.__("支付成功"),
|
||||||
}, 2000)
|
function () {
|
||||||
});
|
that.$.gotopage(
|
||||||
|
"/chain/chain/favorabledetail?order_id=" + that.order_id
|
||||||
|
);
|
||||||
},
|
},
|
||||||
onFail: function(e) {},
|
2000
|
||||||
|
);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
onFail: function (e) {},
|
||||||
|
|
||||||
returnUrl: function(a) {},
|
returnUrl: function (a) {},
|
||||||
switchChange: function(a) {
|
switchChange: function (a) {
|
||||||
a.detail.value ? this.setData({
|
a.detail.value
|
||||||
|
? this.setData({
|
||||||
realPayMoney: this.realMoney,
|
realPayMoney: this.realMoney,
|
||||||
isBalance: true
|
isBalance: true,
|
||||||
}) : this.setData({
|
|
||||||
realPayMoney: this.payment,
|
|
||||||
isBalance: false
|
|
||||||
})
|
})
|
||||||
}
|
: this.setData({
|
||||||
}
|
realPayMoney: this.payment,
|
||||||
|
isBalance: false,
|
||||||
}
|
});
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import "../../styles/_variables";
|
@import "../../styles/_variables";
|
||||||
|
|
||||||
.store-box {
|
.store-box {
|
||||||
width: 90%;
|
width: 90%;
|
||||||
display: flex;
|
display: flex;
|
||||||
line-height: 92rpx;
|
line-height: 92rpx;
|
||||||
@ -517,46 +610,46 @@
|
|||||||
padding-left: 24rpx;
|
padding-left: 24rpx;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.totalMoney {
|
.totalMoney {
|
||||||
width: 90%;
|
width: 90%;
|
||||||
display: flex;
|
display: flex;
|
||||||
margin: 24rpx auto 0;
|
margin: 24rpx auto 0;
|
||||||
justify-content: space-betwee;
|
justify-content: space-betwee;
|
||||||
height: 92rpx;
|
height: 92rpx;
|
||||||
border-radius: 8rpx;
|
border-radius: 8rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.totalMoney label {
|
.totalMoney label {
|
||||||
width: 54%;
|
width: 54%;
|
||||||
height: 92rpx;
|
height: 92rpx;
|
||||||
line-height: 92rpx;
|
line-height: 92rpx;
|
||||||
font-size: 26rpx;
|
font-size: 26rpx;
|
||||||
color: #000;
|
color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.totalMoney input {
|
.totalMoney input {
|
||||||
height: 92rpx;
|
height: 92rpx;
|
||||||
line-height: 92rpx;
|
line-height: 92rpx;
|
||||||
font-size: 26rpx;
|
font-size: 26rpx;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
margin-right: 20rpx;
|
margin-right: 20rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.nodiscount {
|
.nodiscount {
|
||||||
width: 90%;
|
width: 90%;
|
||||||
margin: 51rpx auto 20rpx auto;
|
margin: 51rpx auto 20rpx auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
.check {
|
.check {
|
||||||
height: 58rpx;
|
height: 58rpx;
|
||||||
line-height: 58rpx;
|
line-height: 58rpx;
|
||||||
font-size: 26rpx;
|
font-size: 26rpx;
|
||||||
color: #808080;
|
color: #808080;
|
||||||
}
|
}
|
||||||
|
|
||||||
.discount {
|
.discount {
|
||||||
height: 85rpx;
|
height: 85rpx;
|
||||||
line-height: 90rpx;
|
line-height: 90rpx;
|
||||||
padding: 0 40rpx;
|
padding: 0 40rpx;
|
||||||
@ -564,14 +657,14 @@
|
|||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
color: #000;
|
color: #000;
|
||||||
margin: 24rpx 0;
|
margin: 24rpx 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.pay {
|
.pay {
|
||||||
padding: 0 40rpx;
|
padding: 0 40rpx;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.coupon {
|
.coupon {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
height: 98rpx;
|
height: 98rpx;
|
||||||
@ -579,43 +672,43 @@
|
|||||||
font-size: 26rpx;
|
font-size: 26rpx;
|
||||||
color: #000;
|
color: #000;
|
||||||
border-bottom: 1rpx solid #f1f1f1;
|
border-bottom: 1rpx solid #f1f1f1;
|
||||||
}
|
}
|
||||||
|
|
||||||
.payments {
|
.payments {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
height: 98rpx;
|
height: 98rpx;
|
||||||
line-height: 98rpx;
|
line-height: 98rpx;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
color: #000;
|
color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.payment {
|
.payment {
|
||||||
width: 90%;
|
width: 90%;
|
||||||
height: 80rpx;
|
height: 80rpx;
|
||||||
line-height: 82rpx;
|
line-height: 82rpx;
|
||||||
background: #db384c;
|
background: #db384c;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
margin-top: 50rpx;
|
margin-top: 50rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.explain {
|
.explain {
|
||||||
width: 90%;
|
width: 90%;
|
||||||
margin: 50rpx auto;
|
margin: 50rpx auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
.title {
|
.title {
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
color: #000;
|
color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.content {
|
.content {
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
color: #717171;
|
color: #717171;
|
||||||
margin-top: 10rpx;
|
margin-top: 10rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-cell-ft::after {
|
.m-cell-ft::after {
|
||||||
content: " ";
|
content: " ";
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
height: 12rpx;
|
height: 12rpx;
|
||||||
@ -629,9 +722,9 @@
|
|||||||
margin-top: -8rpx;
|
margin-top: -8rpx;
|
||||||
top: -4rpx;
|
top: -4rpx;
|
||||||
right: -4rpx;
|
right: -4rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.u-back2 image {
|
.u-back2 image {
|
||||||
border-radius: 100%;
|
border-radius: 100%;
|
||||||
width: 77rpx;
|
width: 77rpx;
|
||||||
height: 77rpx;
|
height: 77rpx;
|
||||||
@ -644,33 +737,33 @@
|
|||||||
opacity: 0.8;
|
opacity: 0.8;
|
||||||
line-height: 77rpx;
|
line-height: 77rpx;
|
||||||
margin-bottom: 20rpx;
|
margin-bottom: 20rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.bj_able {
|
.bj_able {
|
||||||
background: #fff;
|
background: #fff;
|
||||||
width: 92%;
|
width: 92%;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
padding-bottom: 40rpx;
|
padding-bottom: 40rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.able_text {
|
.able_text {
|
||||||
letter-spacing: 2rpx;
|
letter-spacing: 2rpx;
|
||||||
width: 54%;
|
width: 54%;
|
||||||
height: 92rpx;
|
height: 92rpx;
|
||||||
line-height: 92rpx;
|
line-height: 92rpx;
|
||||||
font-size: 26rpx;
|
font-size: 26rpx;
|
||||||
color: #000;
|
color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.able_input {
|
.able_input {
|
||||||
width: 90%;
|
width: 90%;
|
||||||
margin: 20rpx auto 0 auto;
|
margin: 20rpx auto 0 auto;
|
||||||
border-bottom: 1rpx solid #f1f1f1;
|
border-bottom: 1rpx solid #f1f1f1;
|
||||||
height: 110rpx;
|
height: 110rpx;
|
||||||
display: flex;
|
display: flex;
|
||||||
}
|
}
|
||||||
|
|
||||||
.able_fuhao {
|
.able_fuhao {
|
||||||
font-family: PingFangSC-Medium;
|
font-family: PingFangSC-Medium;
|
||||||
font-size: 60rpx;
|
font-size: 60rpx;
|
||||||
color: #000;
|
color: #000;
|
||||||
@ -678,19 +771,19 @@
|
|||||||
text-align: center;
|
text-align: center;
|
||||||
line-height: 94rpx;
|
line-height: 94rpx;
|
||||||
margin-right: 10rpx;
|
margin-right: 10rpx;
|
||||||
font-weight: bold
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* .input_lab { float: left; width: 75%; height: 100%; } */
|
/* .input_lab { float: left; width: 75%; height: 100%; } */
|
||||||
.checkbox {
|
.checkbox {
|
||||||
font-family: PingFangSC-Regular;
|
font-family: PingFangSC-Regular;
|
||||||
font-size: 26rpx;
|
font-size: 26rpx;
|
||||||
color: #7b7b7b;
|
color: #7b7b7b;
|
||||||
letter-spacing: 0.5rpx;
|
letter-spacing: 0.5rpx;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.no_lab {
|
.no_lab {
|
||||||
width: 90%;
|
width: 90%;
|
||||||
display: flex;
|
display: flex;
|
||||||
margin: 24rpx auto 0;
|
margin: 24rpx auto 0;
|
||||||
@ -699,22 +792,22 @@
|
|||||||
border-radius: 8rpx;
|
border-radius: 8rpx;
|
||||||
line-height: 98rpx;
|
line-height: 98rpx;
|
||||||
border-bottom: 1rpx solid #f1f1f1;
|
border-bottom: 1rpx solid #f1f1f1;
|
||||||
}
|
}
|
||||||
|
|
||||||
.pict_fal {
|
.pict_fal {
|
||||||
width: 38rpx;
|
width: 38rpx;
|
||||||
height: 38rpx;
|
height: 38rpx;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 161rpx;
|
top: 161rpx;
|
||||||
right: 9%;
|
right: 9%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.fal_pic {
|
.fal_pic {
|
||||||
width: 38rpx;
|
width: 38rpx;
|
||||||
height: 38rpx;
|
height: 38rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.input_lab {
|
.input_lab {
|
||||||
width: 87%;
|
width: 87%;
|
||||||
font-family: UICTFontTextStyleBody;
|
font-family: UICTFontTextStyleBody;
|
||||||
font-size: 74rpx;
|
font-size: 74rpx;
|
||||||
@ -727,6 +820,6 @@
|
|||||||
-moz-box-sizing: border-box;
|
-moz-box-sizing: border-box;
|
||||||
-webkit-box-sizing: border-box;
|
-webkit-box-sizing: border-box;
|
||||||
vertical-align: middl;
|
vertical-align: middl;
|
||||||
font-weight: bold
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@ -1,54 +1,112 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="page">
|
<view class="page">
|
||||||
<movable-area class="move-area">
|
<movable-area class="move-area">
|
||||||
<movable-view v-if="info.IsRedPacketIcon" inertia class="move-img" direction="all" @tap='IsShowRPK'>
|
<movable-view
|
||||||
<image src="https://static.lancerdt.com/xcxfile/appicon/rpk_min.png"></image>
|
v-if="info.IsRedPacketIcon"
|
||||||
|
inertia
|
||||||
|
class="move-img"
|
||||||
|
direction="all"
|
||||||
|
@tap="IsShowRPK"
|
||||||
|
>
|
||||||
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/rpk_min.png"
|
||||||
|
></image>
|
||||||
</movable-view>
|
</movable-view>
|
||||||
<view style="background:#f8f8f8">
|
<view style="background: #f8f8f8">
|
||||||
<view class="paysuccess"><label>
|
<view class="paysuccess"
|
||||||
<image src="https://static.lancerdt.com/xcxfile/appicon/images/true.png" style="width:40rpx;height:40rpx;margin-top:8rpx"></image>
|
><label>
|
||||||
</label><text style="margin-left:10rpx">{{info.trade_is_paid==StateCode.ORDER_PAID_STATE_YES ? __('已支付') : __('待付款')}}</text></view>
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/images/true.png"
|
||||||
|
style="width: 40rpx; height: 40rpx; margin-top: 8rpx"
|
||||||
|
></image> </label
|
||||||
|
><text style="margin-left: 10rpx">{{
|
||||||
|
info.trade_is_paid == StateCode.ORDER_PAID_STATE_YES
|
||||||
|
? __("已支付")
|
||||||
|
: __("待付款")
|
||||||
|
}}</text></view
|
||||||
|
>
|
||||||
<view class="content">
|
<view class="content">
|
||||||
<view class="store">{{info.store_name}}
|
<view class="store">{{ info.store_name }} </view>
|
||||||
</view>
|
|
||||||
<view class="details">
|
<view class="details">
|
||||||
<view class="details-left">
|
<view class="details-left">
|
||||||
<view class="charge"><text>{{__('消费金额')}}:<text style="color:red">{{Currency}}{{info.order_payment_amount}}</text></text></view>
|
<view class="charge"
|
||||||
<view class="pay"><text>{{__('实际支付')}}:<text style="color:red">{{Currency}}{{info.trade_amount}}</text></text></view>
|
><text
|
||||||
<view class="monetary"><text>{{__('优惠金额')}}:<text style="color:red">{{Currency}}{{info.trade_discount}}</text></text></view>
|
>{{ __("消费金额") }}:<text style="color: red"
|
||||||
|
>{{ Currency }}{{ info.order_payment_amount }}</text
|
||||||
|
></text
|
||||||
|
></view
|
||||||
|
>
|
||||||
|
<view class="pay"
|
||||||
|
><text
|
||||||
|
>{{ __("实际支付") }}:<text style="color: red"
|
||||||
|
>{{ Currency }}{{ info.trade_amount }}</text
|
||||||
|
></text
|
||||||
|
></view
|
||||||
|
>
|
||||||
|
<view class="monetary"
|
||||||
|
><text
|
||||||
|
>{{ __("优惠金额") }}:<text style="color: red"
|
||||||
|
>{{ Currency }}{{ info.trade_discount }}</text
|
||||||
|
></text
|
||||||
|
></view
|
||||||
|
>
|
||||||
</view>
|
</view>
|
||||||
<view class="details-right">
|
<view class="details-right">
|
||||||
<view class="num"><text>{{__('订单编号')}}:{{info.order_id}}</text></view>
|
<view class="num"
|
||||||
<view class="time"><text>{{__('消费时间')}}:{{info.trade_create_time}}</text></view>
|
><text>{{ __("订单编号") }}:{{ info.order_id }}</text></view
|
||||||
<view class="monetary"><text>{{__('余额抵扣')}}:<text style="color:red">{{Currency}}{{info.trade_payment_money}}</text></text></view>
|
>
|
||||||
|
<view class="time"
|
||||||
|
><text
|
||||||
|
>{{ __("消费时间") }}:{{ info.trade_create_time }}</text
|
||||||
|
></view
|
||||||
|
>
|
||||||
|
<view class="monetary"
|
||||||
|
><text
|
||||||
|
>{{ __("余额抵扣") }}:<text style="color: red"
|
||||||
|
>{{ Currency }}{{ info.trade_payment_money }}</text
|
||||||
|
></text
|
||||||
|
></view
|
||||||
|
>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</movable-area>
|
</movable-area>
|
||||||
<view class="shareRPK " v-if="showRPK && info.IsRedPacketIcon && type==1" @tap='IsShowRPK'>
|
<view
|
||||||
<view :class="'shareRPKBox ' + showRPK ? 'animated bounceIn':'animated bounceOut'" catchtap style='background:url(https://static.lancerdt.com/xcxfile/appicon/rpk_box.png) no-repeat;background-size: cover;'>
|
class="shareRPK"
|
||||||
<view class="sendRPK" catchtap='shareBox'></view>
|
v-if="showRPK && info.IsRedPacketIcon && type == 1"
|
||||||
<view class="closeRPK" catchtap='IsShowRPK'></view>
|
@tap="IsShowRPK"
|
||||||
|
>
|
||||||
|
<view
|
||||||
|
:class="
|
||||||
|
'shareRPKBox ' + showRPK ? 'animated bounceIn' : 'animated bounceOut'
|
||||||
|
"
|
||||||
|
catchtap
|
||||||
|
style="
|
||||||
|
background: url(https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/rpk_box.png)
|
||||||
|
no-repeat;
|
||||||
|
background-size: cover;
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<view class="sendRPK" catchtap="shareBox"></view>
|
||||||
|
<view class="closeRPK" catchtap="IsShowRPK"></view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="u-top-default">
|
<view class="u-top-default">
|
||||||
<navigator url='/pages/index/index' open-type="switchTab" class="u-back2">
|
<navigator url="/pages/index/index" open-type="switchTab" class="u-back2">
|
||||||
<image src='https://static.lancerdt.com/xcxfile/appicon/img/gohome.png'></image>
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/img/gohome.png"
|
||||||
|
></image>
|
||||||
</navigator>
|
</navigator>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {
|
import { mapState, mapMutations } from "vuex";
|
||||||
mapState,
|
|
||||||
mapMutations
|
|
||||||
} from 'vuex'
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data: function() {
|
data: function () {
|
||||||
return {
|
return {
|
||||||
info: {},
|
info: {},
|
||||||
deduction: 0,
|
deduction: 0,
|
||||||
@ -57,20 +115,28 @@
|
|||||||
maxRPK: 0,
|
maxRPK: 0,
|
||||||
order_id: "",
|
order_id: "",
|
||||||
isshow1: false,
|
isshow1: false,
|
||||||
Currency: "¥"
|
Currency: "¥",
|
||||||
}
|
};
|
||||||
},
|
},
|
||||||
components: {},
|
components: {},
|
||||||
computed: mapState(['Config', 'StateCode', 'notice', 'plantformInfo', 'shopInfo', 'userInfo', 'hasLogin']),
|
computed: mapState([
|
||||||
|
"Config",
|
||||||
|
"StateCode",
|
||||||
|
"notice",
|
||||||
|
"plantformInfo",
|
||||||
|
"shopInfo",
|
||||||
|
"userInfo",
|
||||||
|
"hasLogin",
|
||||||
|
]),
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
uni.setNavigationBarTitle({
|
uni.setNavigationBarTitle({
|
||||||
title: this.__('优惠买单')
|
title: this.__("优惠买单"),
|
||||||
});
|
});
|
||||||
|
|
||||||
var that = this;
|
var that = this;
|
||||||
|
|
||||||
that.setData({
|
that.setData({
|
||||||
order_id: options.order_id || ''
|
order_id: options.order_id || "",
|
||||||
});
|
});
|
||||||
|
|
||||||
that.load();
|
that.load();
|
||||||
@ -78,13 +144,13 @@
|
|||||||
|
|
||||||
onUnload() {
|
onUnload() {
|
||||||
// 离开页面,注销事件
|
// 离开页面,注销事件
|
||||||
var that = this
|
var that = this;
|
||||||
},
|
},
|
||||||
/*
|
/*
|
||||||
onShareAppMessage: function() {
|
onShareAppMessage: function() {
|
||||||
return {
|
return {
|
||||||
title: "拼手气红包,第" + this.data.maxRPK + "个领取的红包最大!",
|
title: "拼手气红包,第" + this.data.maxRPK + "个领取的红包最大!",
|
||||||
imageUrl: "https://static.lancerdt.com/xcxfile/appicon/shareImg.png",
|
imageUrl: "https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/shareImg.png",
|
||||||
path: "pages/redpacket/redpacket?g=" + this.data.ActivityGroupId + "&n=" + this.data.maxRPK + "&uid=" + app.globalData
|
path: "pages/redpacket/redpacket?g=" + this.data.ActivityGroupId + "&n=" + this.data.maxRPK + "&uid=" + app.globalData
|
||||||
.UserInfo.Id,
|
.UserInfo.Id,
|
||||||
success: function() {
|
success: function() {
|
||||||
@ -92,183 +158,204 @@
|
|||||||
}
|
}
|
||||||
},*/
|
},*/
|
||||||
methods: {
|
methods: {
|
||||||
...mapMutations(['login', 'logout', 'getPlantformInfo', 'forceUserInfo', 'getUserInfo']),
|
...mapMutations([
|
||||||
|
"login",
|
||||||
|
"logout",
|
||||||
|
"getPlantformInfo",
|
||||||
|
"forceUserInfo",
|
||||||
|
"getUserInfo",
|
||||||
|
]),
|
||||||
|
|
||||||
load: function() {
|
load: function () {
|
||||||
let that = this;
|
let that = this;
|
||||||
|
|
||||||
// 初始化页面
|
// 初始化页面
|
||||||
that.$.request({
|
that.$.request({
|
||||||
type: 'post',
|
type: "post",
|
||||||
url: this.Config.URL.pay.consume_trade_detail,
|
url: this.Config.URL.pay.consume_trade_detail,
|
||||||
data: {
|
data: {
|
||||||
order_id: that.order_id
|
order_id: that.order_id,
|
||||||
},
|
},
|
||||||
dataType: 'json',
|
dataType: "json",
|
||||||
success: function(data, status, msg, code) {
|
success: function (data, status, msg, code) {
|
||||||
//console.log("优惠买单:", data);
|
//console.log("优惠买单:", data);
|
||||||
that.setData({
|
that.setData({
|
||||||
info: data,
|
info: data,
|
||||||
Currency: data.currency_symbol_left
|
Currency: data.currency_symbol_left,
|
||||||
});
|
});
|
||||||
|
|
||||||
false ? that.setData({
|
false
|
||||||
isshow1: false
|
? that.setData({
|
||||||
}) : that.setData({
|
isshow1: false,
|
||||||
isshow1: true
|
})
|
||||||
|
: that.setData({
|
||||||
|
isshow1: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
that.inputVal()
|
that.inputVal();
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
shareQRCode: function(a) {
|
shareQRCode: function (a) {
|
||||||
var e = this,
|
var e = this,
|
||||||
t = {
|
t = {
|
||||||
store_id: app.globalData.VendorInfo.Id,
|
store_id: app.globalData.VendorInfo.Id,
|
||||||
sponsorId: app.globalData.UserInfo.Id,
|
sponsorId: app.globalData.UserInfo.Id,
|
||||||
imageUrl: "https://static.lancerdt.com/xcxfile/appicon/shareImg.png",
|
imageUrl:
|
||||||
path: "pages/redpacket/redpacket?g=" + this.data.ActivityGroupId + "&n=" + this.data.maxRPK + "&uid=" + app.globalData
|
"https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/shareImg.png",
|
||||||
.UserInfo.Id,
|
path:
|
||||||
luckyOrder: this.data.maxRPK
|
"pages/redpacket/redpacket?g=" +
|
||||||
|
this.data.ActivityGroupId +
|
||||||
|
"&n=" +
|
||||||
|
this.data.maxRPK +
|
||||||
|
"&uid=" +
|
||||||
|
app.globalData.UserInfo.Id,
|
||||||
|
luckyOrder: this.data.maxRPK,
|
||||||
};
|
};
|
||||||
$.xsr($.makeUrl(orderapi.ShareLuckyRedPacket, t), function(a) {
|
$.xsr($.makeUrl(orderapi.ShareLuckyRedPacket, t), function (a) {
|
||||||
e.setData({
|
e.setData({
|
||||||
PageQRCodeInfo: {
|
PageQRCodeInfo: {
|
||||||
Path: a.Info,
|
Path: a.Info,
|
||||||
IsShare: true,
|
IsShare: true,
|
||||||
IsShareBox: false,
|
IsShareBox: false,
|
||||||
IsJT: true
|
IsJT: true,
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
shareBox: function() {
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
shareBox: function () {
|
||||||
this.setData({
|
this.setData({
|
||||||
PageQRCodeInfo: {
|
PageQRCodeInfo: {
|
||||||
Path: "",
|
Path: "",
|
||||||
IsShare: true,
|
IsShare: true,
|
||||||
IsShareBox: true,
|
IsShareBox: true,
|
||||||
IsJT: false
|
IsJT: false,
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
cancelShare: function() {
|
});
|
||||||
|
},
|
||||||
|
cancelShare: function () {
|
||||||
this.setData({
|
this.setData({
|
||||||
PageQRCodeInfo: {
|
PageQRCodeInfo: {
|
||||||
Path: "",
|
Path: "",
|
||||||
IsShare: false,
|
IsShare: false,
|
||||||
IsShareBox: false,
|
IsShareBox: false,
|
||||||
IsJT: false
|
IsJT: false,
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
saveImg: function() {
|
});
|
||||||
|
},
|
||||||
|
saveImg: function () {
|
||||||
var e = this;
|
var e = this;
|
||||||
$.loading(), wx.downloadFile({
|
$.loading(),
|
||||||
|
wx.downloadFile({
|
||||||
url: this.data.PageQRCodeInfo.Path,
|
url: this.data.PageQRCodeInfo.Path,
|
||||||
success: function(a) {
|
success: function (a) {
|
||||||
$.hideloading(), wx.saveImageToPhotosAlbum({
|
$.hideloading(),
|
||||||
|
wx.saveImageToPhotosAlbum({
|
||||||
filePath: a.tempFilePath,
|
filePath: a.tempFilePath,
|
||||||
success: function() {
|
success: function () {
|
||||||
e.setData({
|
e.setData({
|
||||||
PageQRCodeInfo: {
|
PageQRCodeInfo: {
|
||||||
Path: "",
|
Path: "",
|
||||||
IsShare: false,
|
IsShare: false,
|
||||||
IsShareBox: false,
|
IsShareBox: false,
|
||||||
IsJT: false
|
IsJT: false,
|
||||||
}
|
},
|
||||||
}), $.alert("保存图片成功!"), $.xsr1($.makeUrl(orderapi.ShareCount, {
|
}),
|
||||||
|
$.alert("保存图片成功!"),
|
||||||
|
$.xsr1(
|
||||||
|
$.makeUrl(orderapi.ShareCount, {
|
||||||
sponsorId: app.globalData.UserInfo.Id,
|
sponsorId: app.globalData.UserInfo.Id,
|
||||||
audienceType: 3,
|
audienceType: 3,
|
||||||
audienceId: 0,
|
audienceId: 0,
|
||||||
ContentType: 22,
|
ContentType: 22,
|
||||||
contentId: e.data.ActivityGroupId
|
contentId: e.data.ActivityGroupId,
|
||||||
}))
|
|
||||||
},
|
|
||||||
fail: function(a) {
|
|
||||||
$.hideloading(), console.log("保存图片失败:", a)
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
|
);
|
||||||
},
|
},
|
||||||
fail: function(a) {
|
fail: function (a) {
|
||||||
$.hideloading()
|
$.hideloading(), console.log("保存图片失败:", a);
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
showCodeImg: function() {
|
});
|
||||||
|
},
|
||||||
|
fail: function (a) {
|
||||||
|
$.hideloading();
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
showCodeImg: function () {
|
||||||
wx.previewImage({
|
wx.previewImage({
|
||||||
current: this.data.PageQRCodeInfo.Path,
|
current: this.data.PageQRCodeInfo.Path,
|
||||||
urls: [this.data.PageQRCodeInfo.Path]
|
urls: [this.data.PageQRCodeInfo.Path],
|
||||||
})
|
});
|
||||||
},
|
},
|
||||||
IsShowRPK: function() {
|
IsShowRPK: function () {
|
||||||
var a = this;
|
var a = this;
|
||||||
a.data.showRPK ? setTimeout(function() {
|
a.data.showRPK
|
||||||
|
? setTimeout(function () {
|
||||||
a.setData({
|
a.setData({
|
||||||
showRPK: false,
|
showRPK: false,
|
||||||
type: 1
|
type: 1,
|
||||||
})
|
});
|
||||||
}, 250) : a.setData({
|
}, 250)
|
||||||
|
: a.setData({
|
||||||
showRPK: true,
|
showRPK: true,
|
||||||
type: 1
|
type: 1,
|
||||||
})
|
});
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
|
};
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import "../../styles/_variables";
|
@import "../../styles/_variables";
|
||||||
|
|
||||||
.paysuccess {
|
.paysuccess {
|
||||||
height: 160rpx;
|
height: 160rpx;
|
||||||
margin-left: 30rpx;
|
margin-left: 30rpx;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
font-size: 36rpx;
|
font-size: 36rpx;
|
||||||
color: #000;
|
color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.content {
|
.content {
|
||||||
height: 400rpx;
|
height: 400rpx;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
padding: 0 30rpx
|
padding: 0 30rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.store {
|
.store {
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
color: #000;
|
color: #000;
|
||||||
height: 80rpx;
|
height: 80rpx;
|
||||||
border-bottom: 1px solid #d9d9d9;
|
border-bottom: 1px solid #d9d9d9;
|
||||||
line-height: 90rpx;
|
line-height: 90rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.details {
|
.details {
|
||||||
display: flex;
|
display: flex;
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
color: #000;
|
color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.details-left {
|
.details-left {
|
||||||
width: 35%;
|
width: 35%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.details-left view {
|
.details-left view {
|
||||||
margin-top: 40rpx;
|
margin-top: 40rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.details-right {
|
.details-right {
|
||||||
width: 65%;
|
width: 65%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.details-right view {
|
.details-right view {
|
||||||
margin-top: 40rpx;
|
margin-top: 40rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-footer-btn {
|
.m-footer-btn {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
position: fixed;
|
position: fixed;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
@ -278,45 +365,45 @@
|
|||||||
border-top: 1rpx solid #d5d5d5;
|
border-top: 1rpx solid #d5d5d5;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
padding: 20rpx;
|
padding: 20rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.u-link-btn {
|
.u-link-btn {
|
||||||
margin: 0 10rpx;
|
margin: 0 10rpx;
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
line-height: 40rpx;
|
line-height: 40rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.move-area {
|
.move-area {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
min-height: 100%;
|
min-height: 100%;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.move-img {
|
.move-img {
|
||||||
height: 126rpx;
|
height: 126rpx;
|
||||||
width: 100rpx;
|
width: 100rpx;
|
||||||
z-index: 5;
|
z-index: 5;
|
||||||
margin-top: 70%;
|
margin-top: 70%;
|
||||||
margin-left: 650rpx;
|
margin-left: 650rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.move-img image {
|
.move-img image {
|
||||||
height: 126rpx;
|
height: 126rpx;
|
||||||
width: 100rpx;
|
width: 100rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.shareRPK {
|
.shareRPK {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
background-color: rgba(0, 0, 0, .5);
|
background-color: rgba(0, 0, 0, 0.5);
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
z-index: 5;
|
z-index: 5;
|
||||||
}
|
}
|
||||||
|
|
||||||
.shareRPKBox {
|
.shareRPKBox {
|
||||||
width: 640rpx;
|
width: 640rpx;
|
||||||
height: 698rpx;
|
height: 698rpx;
|
||||||
background-color: red;
|
background-color: red;
|
||||||
@ -325,9 +412,9 @@
|
|||||||
left: 50%;
|
left: 50%;
|
||||||
margin-left: -320rpx;
|
margin-left: -320rpx;
|
||||||
margin-top: -349rpx;
|
margin-top: -349rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.sendRPK {
|
.sendRPK {
|
||||||
width: 222rpx;
|
width: 222rpx;
|
||||||
height: 70rpx;
|
height: 70rpx;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
@ -335,22 +422,22 @@
|
|||||||
margin-left: -100rpx;
|
margin-left: -100rpx;
|
||||||
top: 50%;
|
top: 50%;
|
||||||
margin-top: 140rpx;
|
margin-top: 140rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.closeRPK {
|
.closeRPK {
|
||||||
width: 50rpx;
|
width: 50rpx;
|
||||||
height: 50rpx;
|
height: 50rpx;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 50%;
|
left: 50%;
|
||||||
margin-left: -22rpx;
|
margin-left: -22rpx;
|
||||||
bottom: 25rpx;
|
bottom: 25rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.shareCodeImg {
|
.shareCodeImg {
|
||||||
height: 800rpx;
|
height: 800rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.u-back2 image {
|
.u-back2 image {
|
||||||
border-radius: 100%;
|
border-radius: 100%;
|
||||||
width: 77rpx;
|
width: 77rpx;
|
||||||
height: 77rpx;
|
height: 77rpx;
|
||||||
@ -363,5 +450,5 @@
|
|||||||
opacity: 0.8;
|
opacity: 0.8;
|
||||||
line-height: 77rpx;
|
line-height: 77rpx;
|
||||||
margin-bottom: 20rpx;
|
margin-bottom: 20rpx;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@ -2,59 +2,129 @@
|
|||||||
<view class="page">
|
<view class="page">
|
||||||
<view v-if="loadComplete">
|
<view v-if="loadComplete">
|
||||||
<block v-if="isdata && !issshow">
|
<block v-if="isdata && !issshow">
|
||||||
<scroll-view class="m-nearbylist" scroll-y="true" @scrolltolower="scrollbottom">
|
<scroll-view
|
||||||
<view class='list-box' @click="gopage" v-for="(item, index) in Info" :key="index" :data-chain_id="(item.chain_id)" :data-chain_name="(item.chain_name)">
|
class="m-nearbylist"
|
||||||
<view class='item-box'>
|
scroll-y="true"
|
||||||
<view class='flex-box'>
|
@scrolltolower="scrollbottom"
|
||||||
<image :src='item.chain_img' class='flex-shop'></image><label class='flex-title'>{{item.chain_name}}</label>
|
>
|
||||||
<view class='flex-postion'>
|
<view
|
||||||
<image src='https://static.lancerdt.com/xcxfile/appicon/img/location.png'></image><label>{{item.distance}}</label>
|
class="list-box"
|
||||||
|
@click="gopage"
|
||||||
|
v-for="(item, index) in Info"
|
||||||
|
:key="index"
|
||||||
|
:data-chain_id="item.chain_id"
|
||||||
|
:data-chain_name="item.chain_name"
|
||||||
|
>
|
||||||
|
<view class="item-box">
|
||||||
|
<view class="flex-box">
|
||||||
|
<image :src="item.chain_img" class="flex-shop"></image
|
||||||
|
><label class="flex-title">{{ item.chain_name }}</label>
|
||||||
|
<view class="flex-postion">
|
||||||
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/img/location.png"
|
||||||
|
></image
|
||||||
|
><label>{{ item.distance }}</label>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class='flex-info'>
|
<view class="flex-info">
|
||||||
<view class='flex-info-box' @click.stop="call" :data-phone="item.chain_mobile"><label class='flex-info-title'>{{__('商家电话:')}}</label><label style='color:#0095fd'>{{item.chain_mobile}}</label></view>
|
<view
|
||||||
<view class='flex-info-box' @click.stop="gotomap" :data-chain_id="(item.chain_id)" :data-chain_name="(item.chain_name)" :data-address="(item.chain_district_info)" :data-name="(item.chain_name)" :data-lat="(item.chain_lat)" :data-lng="(item.chain_lng)"><label class='flex-info-title'>{{__('商家地址:')}}</label><label>{{item.chain_district_info}}</label></view>
|
class="flex-info-box"
|
||||||
<image src='https://static.lancerdt.com/xcxfile/appicon/img/right.png'></image>
|
@click.stop="call"
|
||||||
|
:data-phone="item.chain_mobile"
|
||||||
|
><label class="flex-info-title">{{ __("商家电话:") }}</label
|
||||||
|
><label style="color: #0095fd">{{
|
||||||
|
item.chain_mobile
|
||||||
|
}}</label></view
|
||||||
|
>
|
||||||
|
<view
|
||||||
|
class="flex-info-box"
|
||||||
|
@click.stop="gotomap"
|
||||||
|
:data-chain_id="item.chain_id"
|
||||||
|
:data-chain_name="item.chain_name"
|
||||||
|
:data-address="item.chain_district_info"
|
||||||
|
:data-name="item.chain_name"
|
||||||
|
:data-lat="item.chain_lat"
|
||||||
|
:data-lng="item.chain_lng"
|
||||||
|
><label class="flex-info-title">{{ __("商家地址:") }}</label
|
||||||
|
><label>{{ item.chain_district_info }}</label></view
|
||||||
|
>
|
||||||
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/img/right.png"
|
||||||
|
></image>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="m-loading-box">
|
<view class="m-loading-box">
|
||||||
<block v-if="ispage && !issshow">
|
<block v-if="ispage && !issshow">
|
||||||
<view class="u-loadmore">
|
<view class="u-loadmore">
|
||||||
<label class="u-loading"></label><text class="u-loadmore-tips">{{__('正在加载')}}</text>
|
<label class="u-loading"></label
|
||||||
|
><text class="u-loadmore-tips">{{ __("正在加载") }}</text>
|
||||||
</view>
|
</view>
|
||||||
</block>
|
</block>
|
||||||
<block v-if="!ispage && !issshow">
|
<block v-if="!ispage && !issshow">
|
||||||
<view class="u-loadmore u-loadmore-line"><text class="u-loadmore-tips">{{__('没有更多数据啦!')}}</text></view>
|
<view class="u-loadmore u-loadmore-line"
|
||||||
|
><text class="u-loadmore-tips">{{
|
||||||
|
__("没有更多数据啦!")
|
||||||
|
}}</text></view
|
||||||
|
>
|
||||||
</block>
|
</block>
|
||||||
</view>
|
</view>
|
||||||
</scroll-view>
|
</scroll-view>
|
||||||
</block>
|
</block>
|
||||||
<view class="m-nullcontent" v-if="!isdata">
|
<view class="m-nullcontent" v-if="!isdata">
|
||||||
<view class="m-nullpage-middle"><label class="iconfont icon-meiyougengduo"></label>
|
<view class="m-nullpage-middle"
|
||||||
<view class="m-null-tip"><text>{{__('亲~什么都没有')}}</text><text>{{__('附近没什么门店!')}}</text></view>
|
><label class="iconfont icon-meiyougengduo"></label>
|
||||||
|
<view class="m-null-tip"
|
||||||
|
><text>{{ __("亲~什么都没有") }}</text
|
||||||
|
><text>{{ __("附近没什么门店!") }}</text></view
|
||||||
|
>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view v-if="isdata && issshow" class='open_ba'>
|
<view v-if="isdata && issshow" class="open_ba">
|
||||||
<view style="width: 200rpx;/*height: 100px*/margin: 71px auto 25px auto;wxcs_style_margin: 143rpx auto 50rpx auto;auto: 50rpx auto;">
|
<view
|
||||||
<image src='https://static.lancerdt.com/xcxfile/appicon/img/ditulogo.png' style="width: 200rpx;height: 200rpx;/*margin: 0 auto;*/"></image>
|
style="
|
||||||
|
width: 200rpx; /*height: 100px*/
|
||||||
|
margin: 71px auto 25px auto;
|
||||||
|
wxcs_style_margin: 143rpx auto 50rpx auto;
|
||||||
|
auto: 50rpx auto;
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/img/ditulogo.png"
|
||||||
|
style="width: 200rpx; height: 200rpx; /*margin: 0 auto;*/"
|
||||||
|
></image>
|
||||||
</view>
|
</view>
|
||||||
<view style="font-size: 28rpx;">{{__('无法获取到您的定位,请开启地理位置权限,将根据你的位置展示附近门店。')}}</view><button style="width: 34%;height: 79rpx;background: #33cc66;margin: 39px auto 0 auto;wxcs_style_margin: 79rpx auto 0 auto;color: #fff;line-height: 80rpx;text-align: center;" open-type="openSetting" @opensetting="handler">{{__('去开启')}}</button>
|
<view style="font-size: 28rpx">{{
|
||||||
|
__(
|
||||||
|
"无法获取到您的定位,请开启地理位置权限,将根据你的位置展示附近门店。"
|
||||||
|
)
|
||||||
|
}}</view
|
||||||
|
><button
|
||||||
|
style="
|
||||||
|
width: 34%;
|
||||||
|
height: 79rpx;
|
||||||
|
background: #33cc66;
|
||||||
|
margin: 39px auto 0 auto;
|
||||||
|
wxcs_style_margin: 79rpx auto 0 auto;
|
||||||
|
color: #fff;
|
||||||
|
line-height: 80rpx;
|
||||||
|
text-align: center;
|
||||||
|
"
|
||||||
|
open-type="openSetting"
|
||||||
|
@opensetting="handler"
|
||||||
|
>
|
||||||
|
{{ __("去开启") }}
|
||||||
|
</button>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {
|
import { mapState, mapMutations } from "vuex";
|
||||||
mapState,
|
|
||||||
mapMutations
|
|
||||||
} from 'vuex'
|
|
||||||
|
|
||||||
|
export default {
|
||||||
|
data: function () {
|
||||||
export default {
|
|
||||||
data: function() {
|
|
||||||
return {
|
return {
|
||||||
options: {},
|
options: {},
|
||||||
page: 1,
|
page: 1,
|
||||||
@ -69,106 +139,124 @@
|
|||||||
store_id: null,
|
store_id: null,
|
||||||
chain_id: null,
|
chain_id: null,
|
||||||
rows: 10,
|
rows: 10,
|
||||||
loadComplete: false // 没有加载数据前不显示的对应内容
|
loadComplete: false, // 没有加载数据前不显示的对应内容
|
||||||
}
|
};
|
||||||
},
|
},
|
||||||
computed: mapState(['Config', 'StateCode', 'notice', 'plantformInfo', 'shopInfo', 'userInfo', 'hasLogin']),
|
computed: mapState([
|
||||||
|
"Config",
|
||||||
|
"StateCode",
|
||||||
|
"notice",
|
||||||
|
"plantformInfo",
|
||||||
|
"shopInfo",
|
||||||
|
"userInfo",
|
||||||
|
"hasLogin",
|
||||||
|
]),
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
uni.setNavigationBarTitle({
|
uni.setNavigationBarTitle({
|
||||||
title: this.__('附近门店')
|
title: this.__("附近门店"),
|
||||||
});
|
});
|
||||||
|
|
||||||
var that = this;
|
var that = this;
|
||||||
that.setData({
|
that.setData({
|
||||||
options: options,
|
options: options,
|
||||||
store_id: options.store_id ? options.store_id : '',
|
store_id: options.store_id ? options.store_id : "",
|
||||||
item_id: options.item_id ? options.item_id : ''
|
item_id: options.item_id ? options.item_id : "",
|
||||||
});
|
});
|
||||||
|
|
||||||
that.$.getLocation({
|
that.$.getLocation({
|
||||||
type: "wgs84",
|
type: "wgs84",
|
||||||
success: function(response) {
|
success: function (response) {
|
||||||
that.setData({
|
that.setData({
|
||||||
latitude: response.latitude,
|
latitude: response.latitude,
|
||||||
longitude: response.longitude
|
longitude: response.longitude,
|
||||||
});
|
});
|
||||||
|
|
||||||
that.getNearbylist()
|
that.getNearbylist();
|
||||||
},
|
},
|
||||||
fail: function() {
|
fail: function () {
|
||||||
that.setData({
|
that.setData({
|
||||||
isdata: true
|
isdata: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
that.$.confirm(that.__('手机定位失败!'));
|
that.$.confirm(that.__("手机定位失败!"));
|
||||||
|
|
||||||
that.getNearbylist()
|
that.getNearbylist();
|
||||||
}
|
},
|
||||||
})
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
...mapMutations(['login', 'logout', 'getPlantformInfo', 'forceUserInfo', 'getUserInfo']),
|
...mapMutations([
|
||||||
getNearbylist: function() {
|
"login",
|
||||||
|
"logout",
|
||||||
|
"getPlantformInfo",
|
||||||
|
"forceUserInfo",
|
||||||
|
"getUserInfo",
|
||||||
|
]),
|
||||||
|
getNearbylist: function () {
|
||||||
var that = this;
|
var that = this;
|
||||||
var params = {
|
var params = {
|
||||||
lat: that.latitude,
|
lat: that.latitude,
|
||||||
lng: that.longitude,
|
lng: that.longitude,
|
||||||
page: that.page,
|
page: that.page,
|
||||||
rows: that.rows,
|
rows: that.rows,
|
||||||
store_id: that.options.store_id ? that.options.store_id : '',
|
store_id: that.options.store_id ? that.options.store_id : "",
|
||||||
item_id: that.options.item_id ? that.options.item_id : '',
|
item_id: that.options.item_id ? that.options.item_id : "",
|
||||||
};
|
};
|
||||||
that.$.request({
|
that.$.request({
|
||||||
url: this.Config.URL.store.getNearChain,
|
url: this.Config.URL.store.getNearChain,
|
||||||
data: params,
|
data: params,
|
||||||
dataType: 'json',
|
dataType: "json",
|
||||||
success: function(data, status, msg, code) {
|
success: function (data, status, msg, code) {
|
||||||
if (status == 200) {
|
if (status == 200) {
|
||||||
for (let i = 0; i < data.items.length; i++) {
|
for (let i = 0; i < data.items.length; i++) {
|
||||||
data.items[i]['distance'] = that.$.distanceFormat(data.items[i]['distance']);
|
data.items[i]["distance"] = that.$.distanceFormat(
|
||||||
|
data.items[i]["distance"]
|
||||||
|
);
|
||||||
|
|
||||||
let coord = that.$.bMapTransQQMap(data.items[i]['chain_lng'], data.items[i]['chain_lat']);
|
let coord = that.$.bMapTransQQMap(
|
||||||
data.items[i]['chain_lng'] = coord.lng;
|
data.items[i]["chain_lng"],
|
||||||
data.items[i]['chain_lat'] = coord.lat;
|
data.items[i]["chain_lat"]
|
||||||
|
);
|
||||||
|
data.items[i]["chain_lng"] = coord.lng;
|
||||||
|
data.items[i]["chain_lat"] = coord.lat;
|
||||||
}
|
}
|
||||||
|
|
||||||
that.setData({
|
that.setData({
|
||||||
isdata: true,
|
isdata: true,
|
||||||
loadComplete: true
|
loadComplete: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
if (data.page >= data.total) {
|
if (data.page >= data.total) {
|
||||||
that.setData({
|
that.setData({
|
||||||
flag: false,
|
flag: false,
|
||||||
ispage: false,
|
ispage: false,
|
||||||
Info: that.Info.concat(data.items)
|
Info: that.Info.concat(data.items),
|
||||||
})
|
});
|
||||||
} else {
|
} else {
|
||||||
that.setData({
|
that.setData({
|
||||||
flag: true,
|
flag: true,
|
||||||
ispage: true,
|
ispage: true,
|
||||||
Info: that.Info.concat(data.items)
|
Info: that.Info.concat(data.items),
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
that.setData({
|
that.setData({
|
||||||
flag: false,
|
flag: false,
|
||||||
ispage: false,
|
ispage: false,
|
||||||
loadComplete: true
|
loadComplete: true,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
fail: function(data) {
|
fail: function (data) {
|
||||||
that.setData({
|
that.setData({
|
||||||
loadComplete: true
|
loadComplete: true,
|
||||||
});
|
});
|
||||||
that.$.alert("网络异常请重试!");
|
that.$.alert("网络异常请重试!");
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
gotomap: function(e) {
|
gotomap: function (e) {
|
||||||
var that = this;
|
var that = this;
|
||||||
if (that.options.issub) {
|
if (that.options.issub) {
|
||||||
that.backCheckout(e.currentTarget.dataset);
|
that.backCheckout(e.currentTarget.dataset);
|
||||||
@ -178,21 +266,23 @@
|
|||||||
longitude: parseFloat(e.currentTarget.dataset.lng),
|
longitude: parseFloat(e.currentTarget.dataset.lng),
|
||||||
name: e.currentTarget.dataset.name,
|
name: e.currentTarget.dataset.name,
|
||||||
address: e.currentTarget.dataset.address,
|
address: e.currentTarget.dataset.address,
|
||||||
scale: 28
|
scale: 28,
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
gopage: function(e) {
|
gopage: function (e) {
|
||||||
var that = this;
|
var that = this;
|
||||||
if (that.options.issub) {
|
if (that.options.issub) {
|
||||||
that.backCheckout(e.currentTarget.dataset);
|
that.backCheckout(e.currentTarget.dataset);
|
||||||
} else if (that.options.is_flag) {
|
} else if (that.options.is_flag) {
|
||||||
that.setChain(e.currentTarget.dataset);
|
that.setChain(e.currentTarget.dataset);
|
||||||
} else {
|
} else {
|
||||||
this.$.gotopage('/chain/chain/index?chain_id=' + e.currentTarget.dataset.chain_id)
|
this.$.gotopage(
|
||||||
|
"/chain/chain/index?chain_id=" + e.currentTarget.dataset.chain_id
|
||||||
|
);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
backCheckout: function(data) {
|
backCheckout: function (data) {
|
||||||
let that = this;
|
let that = this;
|
||||||
var options = this.options;
|
var options = this.options;
|
||||||
options.chain_id = data.chain_id;
|
options.chain_id = data.chain_id;
|
||||||
@ -200,7 +290,6 @@
|
|||||||
var params = {};
|
var params = {};
|
||||||
var info_list = this.Info;
|
var info_list = this.Info;
|
||||||
for (var r = 0; r < info_list.length; r++) {
|
for (var r = 0; r < info_list.length; r++) {
|
||||||
|
|
||||||
if (info_list[r].chain_id == data.chain_id) {
|
if (info_list[r].chain_id == data.chain_id) {
|
||||||
params = info_list[r];
|
params = info_list[r];
|
||||||
}
|
}
|
||||||
@ -211,125 +300,127 @@
|
|||||||
//uni.setStorageSync('chain_id', data.chain_id);
|
//uni.setStorageSync('chain_id', data.chain_id);
|
||||||
//uni.setStorageSync('chain_name', data.chain_name);
|
//uni.setStorageSync('chain_name', data.chain_name);
|
||||||
|
|
||||||
that.$.navigateBack(1, function() {
|
that.$.navigateBack(1, function () {
|
||||||
that.notice.postNotificationName("RefreshOrderChain", options)
|
that.notice.postNotificationName("RefreshOrderChain", options);
|
||||||
})
|
});
|
||||||
},
|
},
|
||||||
scrollbottom: function() {
|
scrollbottom: function () {
|
||||||
if (this.flag) {
|
if (this.flag) {
|
||||||
var e = this;
|
var e = this;
|
||||||
e.setData({
|
e.setData({
|
||||||
flag: false
|
flag: false,
|
||||||
}), clearTimeout(t);
|
}),
|
||||||
var t = setTimeout(function() {
|
clearTimeout(t);
|
||||||
|
var t = setTimeout(function () {
|
||||||
e.setData({
|
e.setData({
|
||||||
type: e.type,
|
type: e.type,
|
||||||
page: parseInt(e.page) + 1,
|
page: parseInt(e.page) + 1,
|
||||||
rows: 10
|
rows: 10,
|
||||||
}), e.getNearbylist()
|
}),
|
||||||
},
|
e.getNearbylist();
|
||||||
500)
|
}, 500);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
setChain: function(e) {
|
setChain: function (e) {
|
||||||
var that = this;
|
var that = this;
|
||||||
//console.log(e);
|
//console.log(e);
|
||||||
that.$.showModal({
|
that.$.showModal({
|
||||||
title: '提示',
|
title: "提示",
|
||||||
content: '确定该门店成为您的默认自提点吗?',
|
content: "确定该门店成为您的默认自提点吗?",
|
||||||
success: function(res) {
|
success: function (res) {
|
||||||
if (res.confirm) {
|
if (res.confirm) {
|
||||||
uni.setStorageSync('chain_id', e.chain_id);
|
uni.setStorageSync("chain_id", e.chain_id);
|
||||||
uni.setStorageSync('chain_name', e.chain_name);
|
uni.setStorageSync("chain_name", e.chain_name);
|
||||||
|
|
||||||
var params = {
|
var params = {
|
||||||
chain_id: e.chain_id
|
chain_id: e.chain_id,
|
||||||
};
|
};
|
||||||
|
|
||||||
that.$.request({
|
that.$.request({
|
||||||
url: that.Config.URL.setChain,
|
url: that.Config.URL.setChain,
|
||||||
data: params,
|
data: params,
|
||||||
dataType: 'json',
|
dataType: "json",
|
||||||
success: function(data, status, msg, code) {
|
success: function (data, status, msg, code) {
|
||||||
if (status == 200) {
|
if (status == 200) {
|
||||||
that.$.gopage('/pages/index/index')
|
that.$.gopage("/pages/index/index");
|
||||||
} else {
|
} else {
|
||||||
that.$.alert('设置失败,请重新选择')
|
that.$.alert("设置失败,请重新选择");
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
},
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
selectchain: function(e) {
|
selectchain: function (e) {
|
||||||
var params = {},
|
var params = {},
|
||||||
info_list = this.Info;
|
info_list = this.Info;
|
||||||
for (var r = 0; r < info_list.length; r++) info_list[r].chain_id == e.currentTarget.dataset.chain_id && (params =
|
for (var r = 0; r < info_list.length; r++)
|
||||||
info_list[r]);
|
info_list[r].chain_id == e.currentTarget.dataset.chain_id &&
|
||||||
|
(params = info_list[r]);
|
||||||
var that = this;
|
var that = this;
|
||||||
that.$.navigateBack(1, function() {
|
that.$.navigateBack(1, function () {
|
||||||
var e = {
|
var e = {
|
||||||
chain_id: that.chain_id,
|
chain_id: that.chain_id,
|
||||||
spinfo: that.spid,
|
spinfo: that.spid,
|
||||||
ChainInfo: params
|
ChainInfo: params,
|
||||||
};
|
};
|
||||||
that.notice.postNotificationName("RefreshOrderChain", e)
|
that.notice.postNotificationName("RefreshOrderChain", e);
|
||||||
})
|
});
|
||||||
},
|
},
|
||||||
selectAddress: function(e) {
|
selectAddress: function (e) {
|
||||||
var params = {},
|
var params = {},
|
||||||
info_list = this.Info;
|
info_list = this.Info;
|
||||||
for (var r = 0; r < info_list.length; r++) info_list[r].chain_id == e.currentTarget.dataset.chain_id && (params =
|
for (var r = 0; r < info_list.length; r++)
|
||||||
info_list[r]);
|
info_list[r].chain_id == e.currentTarget.dataset.chain_id &&
|
||||||
|
(params = info_list[r]);
|
||||||
var that = this;
|
var that = this;
|
||||||
that.$.navigateBack(1, function() {
|
that.$.navigateBack(1, function () {
|
||||||
var e = {
|
var e = {
|
||||||
chain_id: that.chain_id,
|
chain_id: that.chain_id,
|
||||||
spinfo: that.spid,
|
spinfo: that.spid,
|
||||||
ChainInfo: params
|
ChainInfo: params,
|
||||||
};
|
};
|
||||||
that.notice.postNotificationName("RefreshOrderChain", e)
|
that.notice.postNotificationName("RefreshOrderChain", e);
|
||||||
})
|
});
|
||||||
},
|
},
|
||||||
call: function(e) {
|
call: function (e) {
|
||||||
let that = this;
|
let that = this;
|
||||||
that.$.makePhoneCall({
|
that.$.makePhoneCall({
|
||||||
phoneNumber: e.currentTarget.dataset.phone
|
phoneNumber: e.currentTarget.dataset.phone,
|
||||||
})
|
});
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
|
};
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import "../../styles/_variables";
|
@import "../../styles/_variables";
|
||||||
|
|
||||||
.list-box {
|
.list-box {
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
color: #333;
|
color: #333;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-box {
|
.item-box {
|
||||||
padding: 20rpx;
|
padding: 20rpx;
|
||||||
border-bottom: 1rpx solid #eee;
|
border-bottom: 1rpx solid #eee;
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-box {
|
.flex-box {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-shop {
|
.flex-shop {
|
||||||
width: 34rpx;
|
width: 34rpx;
|
||||||
height: 34rpx;
|
height: 34rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-title {
|
.flex-title {
|
||||||
font-size: 30rpx;
|
font-size: 30rpx;
|
||||||
margin-left: 10rpx;
|
margin-left: 10rpx;
|
||||||
max-width: 75%;
|
max-width: 75%;
|
||||||
@ -338,72 +429,72 @@
|
|||||||
line-height: 40rpx;
|
line-height: 40rpx;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-postion {
|
.flex-postion {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 0;
|
right: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-postion image {
|
.flex-postion image {
|
||||||
width: 20rpx;
|
width: 20rpx;
|
||||||
height: 26rpx;
|
height: 26rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-postion label {
|
.flex-postion label {
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
color: #9b9b9b;
|
color: #9b9b9b;
|
||||||
margin-left: 10rpx;
|
margin-left: 10rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-nearbylist {
|
.m-nearbylist {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-info {
|
.flex-info {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-info view {
|
.flex-info view {
|
||||||
margin: 10rpx 0 0 0;
|
margin: 10rpx 0 0 0;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-info-box {
|
.flex-info-box {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: flex-start;
|
align-items: flex-start;
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-info label {
|
.flex-info label {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
vertical-align: top;
|
vertical-align: top;
|
||||||
word-wrap: break-word;
|
word-wrap: break-word;
|
||||||
width: 520rpx;
|
width: 520rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-info image {
|
.flex-info image {
|
||||||
width: 40rpx;
|
width: 40rpx;
|
||||||
height: 40rpx;
|
height: 40rpx;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 10rpx;
|
right: 10rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-info-title {
|
.flex-info-title {
|
||||||
flex-basis: 145rpx;
|
flex-basis: 145rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.open_ba {
|
.open_ba {
|
||||||
width: 80%;
|
width: 80%;
|
||||||
margin: 0 auto
|
margin: 0 auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
.open_dl {
|
.open_dl {
|
||||||
width: 34%;
|
width: 34%;
|
||||||
height: 79rpx;
|
height: 79rpx;
|
||||||
background: #33cc66;
|
background: #33cc66;
|
||||||
@ -412,43 +503,41 @@
|
|||||||
color: #fff;
|
color: #fff;
|
||||||
margin: 79rpx auto 0 auto;
|
margin: 79rpx auto 0 auto;
|
||||||
line-height: 75rpx;
|
line-height: 75rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.nearbylist-item {
|
||||||
|
|
||||||
.nearbylist-item {
|
|
||||||
padding: 20rpx 30rpx;
|
padding: 20rpx 30rpx;
|
||||||
border-bottom: 1px solid #eee;
|
border-bottom: 1px solid #eee;
|
||||||
background: white;
|
background: white;
|
||||||
}
|
}
|
||||||
|
|
||||||
.nearbylist-item:last-child {
|
.nearbylist-item:last-child {
|
||||||
border: none;
|
border: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-info {
|
.item-info {
|
||||||
position: relative;
|
position: relative;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-name {
|
.item-name {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
font-size: 30rpx;
|
font-size: 30rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-phone {
|
.item-phone {
|
||||||
line-height: 45rpx;
|
line-height: 45rpx;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-distance {
|
.item-distance {
|
||||||
float: right;
|
float: right;
|
||||||
font-size: 26rpx;
|
font-size: 26rpx;
|
||||||
color: #bbb;
|
color: #bbb;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-address {
|
.item-address {
|
||||||
position: relative;
|
position: relative;
|
||||||
font-size: 26rpx;
|
font-size: 26rpx;
|
||||||
color: #bbb;
|
color: #bbb;
|
||||||
@ -458,10 +547,10 @@
|
|||||||
-webkit-box-orient: vertical;
|
-webkit-box-orient: vertical;
|
||||||
-webkit-line-clamp: 1;
|
-webkit-line-clamp: 1;
|
||||||
margin-right: 40rpx;
|
margin-right: 40rpx;
|
||||||
line-height: 40rpx
|
line-height: 40rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-info::after {
|
.item-info::after {
|
||||||
content: " ";
|
content: " ";
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
height: 12rpx;
|
height: 12rpx;
|
||||||
@ -476,10 +565,10 @@
|
|||||||
top: 72%;
|
top: 72%;
|
||||||
right: 4rpx;
|
right: 4rpx;
|
||||||
padding: 3rpx;
|
padding: 3rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-nearbylist {
|
.m-nearbylist {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
position: absolute
|
position: absolute;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@ -63,7 +63,7 @@
|
|||||||
<view class="m-nullpage-middle">
|
<view class="m-nullpage-middle">
|
||||||
<label class="iconfont icon-sousuo-sousuo"></label>
|
<label class="iconfont icon-sousuo-sousuo"></label>
|
||||||
<view class="m-null-tip">
|
<view class="m-null-tip">
|
||||||
<text>{{ __('亲~找不到您想要的信息') }}</text>
|
<text>暂无数据</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|||||||
@ -100,8 +100,7 @@
|
|||||||
<view class="m-nullpage-middle">
|
<view class="m-nullpage-middle">
|
||||||
<label class="iconfont icon-sousuo-sousuo"></label>
|
<label class="iconfont icon-sousuo-sousuo"></label>
|
||||||
<view class="m-null-tip">
|
<view class="m-null-tip">
|
||||||
<text>{{ __('亲~找不到您想要的帖子') }}</text>
|
<text>暂无数据</text>
|
||||||
<text>{{ __('再多点提示呗') }}</text>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|||||||
@ -63,9 +63,9 @@
|
|||||||
<cover-view class="right-text"></cover-view>
|
<cover-view class="right-text"></cover-view>
|
||||||
<!-- #endif -->
|
<!-- #endif -->
|
||||||
|
|
||||||
<cover-image v-if="item.IsFabulous" src="https://static.lancerdt.com/xcxfile/appicon/video/aixinRed.png" class="img" @click.stop="onUnLike" :data-story_id="item.story_id"></cover-image>
|
<cover-image v-if="item.IsFabulous" src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/aixinRed.png" class="img" @click.stop="onUnLike" :data-story_id="item.story_id"></cover-image>
|
||||||
|
|
||||||
<cover-image v-if="!(item.IsFabulous)" src="https://static.lancerdt.com/xcxfile/appicon/video/aixin.png" class="img" @click.stop="onLike" :data-story_id="item.story_id"></cover-image>
|
<cover-image v-if="!(item.IsFabulous)" src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/aixin.png" class="img" @click.stop="onLike" :data-story_id="item.story_id"></cover-image>
|
||||||
|
|
||||||
<!-- #ifdef APP-PLUS-NVUE -->
|
<!-- #ifdef APP-PLUS-NVUE -->
|
||||||
<text class="right-text">{{item.story_like_count}}</text>
|
<text class="right-text">{{item.story_like_count}}</text>
|
||||||
@ -75,7 +75,7 @@
|
|||||||
<!-- #endif -->
|
<!-- #endif -->
|
||||||
|
|
||||||
<block v-if="true">
|
<block v-if="true">
|
||||||
<cover-image src="https://static.lancerdt.com/xcxfile/appicon/video/xiaoxi.png" class="img" :data-story_id="item.story_id" :data-user_id="item.user_id" @click.stop="tapMsg"></cover-image>
|
<cover-image src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/xiaoxi.png" class="img" :data-story_id="item.story_id" :data-user_id="item.user_id" @click.stop="tapMsg"></cover-image>
|
||||||
|
|
||||||
<!-- #ifdef APP-PLUS-NVUE -->
|
<!-- #ifdef APP-PLUS-NVUE -->
|
||||||
<text class="right-text">{{item.story_comment_count}}</text>
|
<text class="right-text">{{item.story_comment_count}}</text>
|
||||||
@ -84,7 +84,7 @@
|
|||||||
<cover-view class="right-text">{{item.story_comment_count}}</cover-view>
|
<cover-view class="right-text">{{item.story_comment_count}}</cover-view>
|
||||||
<!-- #endif -->
|
<!-- #endif -->
|
||||||
<block v-if="false">
|
<block v-if="false">
|
||||||
<cover-image src="https://static.lancerdt.com/xcxfile/appicon/video/share-fill.png" class="img" @click.stop="tapShare"></cover-image>
|
<cover-image src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/share-fill.png" class="img" @click.stop="tapShare"></cover-image>
|
||||||
|
|
||||||
<!-- #ifdef APP-PLUS-NVUE -->
|
<!-- #ifdef APP-PLUS-NVUE -->
|
||||||
<text class="right-text">{{__('分享')}}</text>
|
<text class="right-text">{{__('分享')}}</text>
|
||||||
@ -95,7 +95,7 @@
|
|||||||
</block>
|
</block>
|
||||||
</block>
|
</block>
|
||||||
|
|
||||||
<cover-image src="https://static.lancerdt.com/xcxfile/appicon/video/changpian.png" class="musicIcon img" v-if="false"></cover-image>
|
<cover-image src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/changpian.png" class="musicIcon img" v-if="false"></cover-image>
|
||||||
</cover-view>
|
</cover-view>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@ -57,9 +57,9 @@
|
|||||||
<cover-view class="right-text"></cover-view>
|
<cover-view class="right-text"></cover-view>
|
||||||
<!-- #endif -->
|
<!-- #endif -->
|
||||||
|
|
||||||
<cover-image v-if="item.IsFabulous" src="https://static.lancerdt.com/xcxfile/appicon/video/aixinRed.png" class="img" @click.stop="onUnLike" :data-story_id="item.story_id"></cover-image>
|
<cover-image v-if="item.IsFabulous" src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/aixinRed.png" class="img" @click.stop="onUnLike" :data-story_id="item.story_id"></cover-image>
|
||||||
|
|
||||||
<cover-image v-if="!(item.IsFabulous)" src="https://static.lancerdt.com/xcxfile/appicon/video/aixin.png" class="img" @click.stop="onLike" :data-story_id="item.story_id"></cover-image>
|
<cover-image v-if="!(item.IsFabulous)" src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/aixin.png" class="img" @click.stop="onLike" :data-story_id="item.story_id"></cover-image>
|
||||||
|
|
||||||
<!-- #ifdef APP-PLUS-NVUE -->
|
<!-- #ifdef APP-PLUS-NVUE -->
|
||||||
<text class="right-text">{{item.story_like_count}}</text>
|
<text class="right-text">{{item.story_like_count}}</text>
|
||||||
@ -69,7 +69,7 @@
|
|||||||
<!-- #endif -->
|
<!-- #endif -->
|
||||||
|
|
||||||
<block v-if="true">
|
<block v-if="true">
|
||||||
<cover-image src="https://static.lancerdt.com/xcxfile/appicon/video/xiaoxi.png" class="img" :data-story_id="item.story_id" :data-user_id="item.user_id" @click.stop="tapMsg"></cover-image>
|
<cover-image src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/xiaoxi.png" class="img" :data-story_id="item.story_id" :data-user_id="item.user_id" @click.stop="tapMsg"></cover-image>
|
||||||
|
|
||||||
<!-- #ifdef APP-PLUS-NVUE -->
|
<!-- #ifdef APP-PLUS-NVUE -->
|
||||||
<text class="right-text">{{item.story_comment_count}}</text>
|
<text class="right-text">{{item.story_comment_count}}</text>
|
||||||
@ -78,7 +78,7 @@
|
|||||||
<cover-view class="right-text">{{item.story_comment_count}}</cover-view>
|
<cover-view class="right-text">{{item.story_comment_count}}</cover-view>
|
||||||
<!-- #endif -->
|
<!-- #endif -->
|
||||||
<block v-if="false">
|
<block v-if="false">
|
||||||
<cover-image src="https://static.lancerdt.com/xcxfile/appicon/video/share-fill.png" class="img" @click.stop="tapShare"></cover-image>
|
<cover-image src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/share-fill.png" class="img" @click.stop="tapShare"></cover-image>
|
||||||
|
|
||||||
<!-- #ifdef APP-PLUS-NVUE -->
|
<!-- #ifdef APP-PLUS-NVUE -->
|
||||||
<text class="right-text">{{__('分享')}}</text>
|
<text class="right-text">{{__('分享')}}</text>
|
||||||
@ -89,7 +89,7 @@
|
|||||||
</block>
|
</block>
|
||||||
</block>
|
</block>
|
||||||
|
|
||||||
<cover-image src="https://static.lancerdt.com/xcxfile/appicon/video/changpian.png" class="musicIcon img" v-if="false"></cover-image>
|
<cover-image src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/changpian.png" class="musicIcon img" v-if="false"></cover-image>
|
||||||
</cover-view>
|
</cover-view>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@ -1,369 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="swiperContent">
|
|
||||||
<swiper
|
|
||||||
@change="change"
|
|
||||||
@animationfinish="animationfinish"
|
|
||||||
:indicator-dots="indicatorDots"
|
|
||||||
:indicator-active-color="indicatorActiveColor"
|
|
||||||
:indicator-color="indicatorColor"
|
|
||||||
:current="current"
|
|
||||||
:interval="interval"
|
|
||||||
:duration="duration"
|
|
||||||
:circular="circular"
|
|
||||||
:vertical="vertical"
|
|
||||||
:previous-margin="previousMargin"
|
|
||||||
:next-margin="nextMargin"
|
|
||||||
:display-multiple-items="displayMultipleItems"
|
|
||||||
:skip-hidden-item-layout="skipHiddenItemLayout"
|
|
||||||
:autoplay="(autoplay && flag)"
|
|
||||||
:style="{'height':swiperHeight+'px'}"
|
|
||||||
:class="(swiperType && displayMultipleItems ==1 && !vertical && !fullScreen)?'cardSwiper':'' "
|
|
||||||
class="screen-swiper"
|
|
||||||
>
|
|
||||||
<swiper-item class="swiper-item" v-for="(item,index) in swiperList" :key="index" :class="(cardCur==index && displayMultipleItems ==1 && !vertical && !fullScreen)?'cur':''" @tap="tplGoToPage" :data-id="(item.did)" :data-name="(item.name)" :data-type="(item.selectType)" :data-keyword="(item.keyWord)" :data-appid="(item.AppId)" :data-appurl="(item.AppUrl)" :data-MinAppUrl="(item.MinAppUrl)">
|
|
||||||
<view v-if="item[imageKey] && !item[videoKey]">
|
|
||||||
<image :src="item[imageKey]" :style="{'height':swiperHeight+'px'}"></image>
|
|
||||||
<text v-if="textTip" class="swiperText" :style="{
|
|
||||||
'bottom':(swiperType?(textStyleBottom+12):textStyleBottom)+'%',
|
|
||||||
'right':textStyleRight+'%',
|
|
||||||
'color':textStyleColor,
|
|
||||||
'background':textStyleBgcolor,
|
|
||||||
'font-size':rpxtopx(textStyleSize)
|
|
||||||
}">{{item[textKey]}}</text>
|
|
||||||
</view>
|
|
||||||
<view v-if="item[videoKey]">
|
|
||||||
<video :src="item[videoKey]" @play="play" @pause="pause" :style="{'height':swiperHeight+'px'}" autoplay loop muted :autoplay="videoAutoplay" objectFit="cover"></video>
|
|
||||||
</view>
|
|
||||||
</swiper-item>
|
|
||||||
<swiper-item class="swiper-item" v-if="swiperList.length==0" >
|
|
||||||
<text></text>
|
|
||||||
</swiper-item>
|
|
||||||
</swiper>
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
export default {
|
|
||||||
name:'bw-swiper',
|
|
||||||
created:function(){
|
|
||||||
var that = this;
|
|
||||||
if(this.fullScreen){
|
|
||||||
uni.getSystemInfo({
|
|
||||||
success:function(e){
|
|
||||||
that.swiperHeight = e.screenHeight -44
|
|
||||||
}})
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted:function(){
|
|
||||||
if(!this.fullScreen){
|
|
||||||
const query = uni.createSelectorQuery().in(this);
|
|
||||||
query.select('.swiper-item').boundingClientRect(data => {
|
|
||||||
if(!!data){
|
|
||||||
this.swiperHeight = data.width/this.w_h;
|
|
||||||
}
|
|
||||||
}).exec();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
props: {
|
|
||||||
fullScreen:{ // 是否全屏
|
|
||||||
type:Boolean,
|
|
||||||
default:false
|
|
||||||
},
|
|
||||||
swiperList:{ // 滑块视图容器数据
|
|
||||||
type:Array,
|
|
||||||
required: true,
|
|
||||||
default:function(){
|
|
||||||
return []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
swiperType:{ // false => 全屏限高轮播图 true => 卡塔式轮播图
|
|
||||||
type:Boolean,
|
|
||||||
default:false
|
|
||||||
},
|
|
||||||
videoAutoplay:{ // true =>自动播放
|
|
||||||
type:Boolean,
|
|
||||||
default:false
|
|
||||||
},
|
|
||||||
videoKey:{ // 视频映射的键
|
|
||||||
type:String,
|
|
||||||
default:'src'
|
|
||||||
},
|
|
||||||
imageKey:{ // 图片映射的键
|
|
||||||
type:String,
|
|
||||||
default:'img'
|
|
||||||
},
|
|
||||||
textKey:{ // 文字说明映射的键
|
|
||||||
type:String,
|
|
||||||
default:'text'
|
|
||||||
},
|
|
||||||
textTip:{ // 图片文字说明 false => 隐藏
|
|
||||||
type:Boolean,
|
|
||||||
default:false
|
|
||||||
},
|
|
||||||
textStyleSize:{ // 图片文字大小
|
|
||||||
type:Number,
|
|
||||||
default:24
|
|
||||||
},
|
|
||||||
textStyleBottom:{ // 图片文字位置
|
|
||||||
type:Number,
|
|
||||||
default:5
|
|
||||||
},
|
|
||||||
textStyleRight:{ // 图片文字位置
|
|
||||||
type:Number,
|
|
||||||
default:5
|
|
||||||
},
|
|
||||||
textStyleColor:{ // 图片文字颜色
|
|
||||||
type:String,
|
|
||||||
default:'#ffffff'
|
|
||||||
},
|
|
||||||
textStyleBgcolor:{ // 图片文字背景色
|
|
||||||
type:String,
|
|
||||||
default:'transparent'
|
|
||||||
},
|
|
||||||
w_h:{ //宽高比 推荐 w/h => 2
|
|
||||||
type:Number,
|
|
||||||
default:2
|
|
||||||
},
|
|
||||||
skipHiddenItemLayout:{ //是否跳过未显示的滑块布局,设为 true 可优化复杂情况下的滑动性能,但会丢失隐藏状态滑块的布局信息
|
|
||||||
type:Boolean,
|
|
||||||
default:false
|
|
||||||
},
|
|
||||||
displayMultipleItems:{ //同时显示的滑块数量
|
|
||||||
type:Number,
|
|
||||||
default:1
|
|
||||||
},
|
|
||||||
nextMargin:{ // 后边距,可用于露出后一项的一小部分,接受 px 和 rpx 值 头条小程序不支持
|
|
||||||
type:String,
|
|
||||||
default:'0px'
|
|
||||||
},
|
|
||||||
previousMargin:{//前边距,可用于露出前一项的一小部分,接受 px 和 rpx 值头条小程序不支持
|
|
||||||
type:String,
|
|
||||||
default:'0px'
|
|
||||||
},
|
|
||||||
vertical:{ //滑动方向是否为纵向 卡牌 不支持纵向以及同时显示的2块以上滑块数量
|
|
||||||
type:Boolean,
|
|
||||||
default:false
|
|
||||||
},
|
|
||||||
circular:{ // 是否采用衔接滑动
|
|
||||||
type:Boolean,
|
|
||||||
default:true
|
|
||||||
},
|
|
||||||
duration:{ // 滑动动画时长
|
|
||||||
type:Number,
|
|
||||||
default:400
|
|
||||||
},
|
|
||||||
interval:{ // 自动切换时间间隔
|
|
||||||
type:Number,
|
|
||||||
default:2500
|
|
||||||
},
|
|
||||||
current:{ // 当前所在滑块的 index
|
|
||||||
type:Number,
|
|
||||||
default:0
|
|
||||||
},
|
|
||||||
autoplay:{ // 是否自动切换
|
|
||||||
type:Boolean,
|
|
||||||
default:false
|
|
||||||
},
|
|
||||||
indicatorColor:{ // 指示点颜色
|
|
||||||
type:String,
|
|
||||||
default:'#CCCCCC'
|
|
||||||
},
|
|
||||||
indicatorActiveColor: { // 当前选中的指示点颜色
|
|
||||||
type: String,
|
|
||||||
default: '#ffffff'
|
|
||||||
},
|
|
||||||
indicatorDots: { // 是否显示面板指示点
|
|
||||||
type: Boolean,
|
|
||||||
default: true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
flag:true,
|
|
||||||
cardCur:0,
|
|
||||||
swiperHeight:300
|
|
||||||
}
|
|
||||||
},
|
|
||||||
computed:{
|
|
||||||
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
rpxtopx:function(size){
|
|
||||||
// #ifdef MP-WEIXIN
|
|
||||||
return uni.upx2px(size)+'px'
|
|
||||||
// #endif
|
|
||||||
// #ifndef MP-WEIXIN
|
|
||||||
return size+'rpx';
|
|
||||||
// #endif
|
|
||||||
},
|
|
||||||
play:function(){
|
|
||||||
this.flag = false
|
|
||||||
},
|
|
||||||
pause:function(){
|
|
||||||
this.flag = true
|
|
||||||
},
|
|
||||||
|
|
||||||
tplGoToPage: function(e) {
|
|
||||||
let that = this;
|
|
||||||
var t = e.currentTarget.dataset;
|
|
||||||
switch (parseInt(t.type)) {
|
|
||||||
case 1:
|
|
||||||
that.$.gopage("/pages/product/detail?pid=" + t.id);
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
that.$.gopage("/pages/product/list?category_id=" + (t.id || 0) + "&cname=" + t.name);
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
that.$.gopage("/pages/product/list?pname=" + t.keyword);
|
|
||||||
break;
|
|
||||||
case 4: //快捷入口
|
|
||||||
if (t.appurl.indexOf("article-list") >= 0) {
|
|
||||||
that.$.gopage('/pagesub/article/list');
|
|
||||||
} else if (t.appurl.indexOf("fightgroupsorderlist") >= 0) {
|
|
||||||
that.$.gopage('/activity/fightgroup/order');
|
|
||||||
} else if (t.appurl.indexOf("fightgroupslist/fightgroupslist") >= 0) {
|
|
||||||
that.$.gopage('/activity/fightgroup/list');
|
|
||||||
} else if (t.appurl.indexOf("bargainlist/bargainlist") >= 0) {
|
|
||||||
that.$.gopage('/activity/cutprice/list');
|
|
||||||
} else if (t.appurl.indexOf("receivecontent/receivecontent") >= 0) {
|
|
||||||
that.$.gopage('/activity/coupon/list');
|
|
||||||
} else if (t.appurl.indexOf("cashaccount/cashaccount") >= 0) {
|
|
||||||
that.$.gopage('/member/cash/predeposit');
|
|
||||||
} else if (t.appurl.indexOf("fanslist/fanslist") >= 0) {
|
|
||||||
that.$.gopage('/member/fans/list');
|
|
||||||
} else if (t.appurl.indexOf("nearbylist/nearbylist") >= 0) {
|
|
||||||
that.$.gopage('/chain/chain/list');
|
|
||||||
} else if (t.appurl.indexOf("kind_id=1202") >= 0) {
|
|
||||||
that.$.gopage('/member/order/list?kind_id=1202');
|
|
||||||
} else if (t.appurl.indexOf("endorsement/endorsement") >= 0) {
|
|
||||||
that.$.gopage('/member/fans/endorsement');
|
|
||||||
} else if (t.appurl.indexOf("?type=3&sl=3") >= 0) {
|
|
||||||
that.$.gopage('/member/order/list?type=3&sl=3');
|
|
||||||
} else if (t.appurl.indexOf("goodcollection/goodcollection") >= 0) {
|
|
||||||
that.$.gopage('/member/member/favorites');
|
|
||||||
} else if (t.appurl.indexOf("fansrank/fansrank") >= 0) {
|
|
||||||
that.$.gopage('/member/fans/fansrank');
|
|
||||||
} else if (t.appurl.indexOf("favorable/favorable") >= 0) {
|
|
||||||
that.$.gopage('/chain/chain/favorable');
|
|
||||||
} else if (t.appurl.indexOf("fanslist/fanslist") >= 0) {
|
|
||||||
that.$.gopage('/member/fans/list');
|
|
||||||
} else if (t.appurl.indexOf("scan/scan") >= 0) {
|
|
||||||
that.$.gopage('/chain/chain/scan');
|
|
||||||
} else if (t.appurl.indexOf("smashgoldeneggs/smashgoldeneggs") >= 0) {
|
|
||||||
that.$.gopage('/activity/smashgoldeneggs/detail');
|
|
||||||
} else if (t.appurl.indexOf("luckydraw/luckydraw") >= 0) {
|
|
||||||
that.$.gopage('/member/luckydraw/detail');
|
|
||||||
} else {
|
|
||||||
that.$.gopage(t.appurl);
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
if (t.appurl.indexOf("fanslist/fanslist") >= 0) {
|
|
||||||
that.$.gopage('/member/fans/list');
|
|
||||||
} else {
|
|
||||||
that.$.gopage("/pagesub/article/list?category_id=" + (t.id || 0));
|
|
||||||
}
|
|
||||||
//that.$.gopage(t.appurl);
|
|
||||||
break;
|
|
||||||
case 6:
|
|
||||||
that.$.gopage("/pagesub/article/detail?id=" + t.id);
|
|
||||||
//that.$.gopage(t.appurl);
|
|
||||||
break;
|
|
||||||
case 7:
|
|
||||||
uni.navigateToMiniProgram({
|
|
||||||
appId: t.appid,
|
|
||||||
path: t.appurl || ""
|
|
||||||
});
|
|
||||||
break;
|
|
||||||
case 8:
|
|
||||||
that.$.gopage("/pagesub/diy-page/diy-page?id=" + t.id);
|
|
||||||
break;
|
|
||||||
case 9:
|
|
||||||
that.$.gopage("/pagesub/webpage/webpage?u=" + encodeURIComponent(t.appurl) + "&tn=" + t.name + "&tc=" + t.appid + "&tb=" +
|
|
||||||
t.keyword);
|
|
||||||
break;
|
|
||||||
case 99:
|
|
||||||
that.$.gopage(
|
|
||||||
'/pagesub/webpage/web?u=' +
|
|
||||||
encodeURIComponent(t.appurl) +
|
|
||||||
'&tn=' +
|
|
||||||
t.name +
|
|
||||||
'&tc=' +
|
|
||||||
t.appid +
|
|
||||||
'&tb=' +
|
|
||||||
t.keyword
|
|
||||||
);
|
|
||||||
|
|
||||||
case 10:
|
|
||||||
that.$.gopage(t.appurl);
|
|
||||||
break;
|
|
||||||
case 11:
|
|
||||||
that.$.gopage(t.appurl);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
clickItem:function(index){
|
|
||||||
if(this.swiperList.length>0){
|
|
||||||
this.$emit('clickItem',this.swiperList[index])
|
|
||||||
}
|
|
||||||
},
|
|
||||||
change:function(e){
|
|
||||||
this.$emit('change',e)
|
|
||||||
},
|
|
||||||
animationfinish:function(e){
|
|
||||||
this.cardCur = e.detail.current;
|
|
||||||
this.$emit('animationfinish',e)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
.cardSwiper .swiper-item{
|
|
||||||
width:86%!important;
|
|
||||||
overflow: initial;
|
|
||||||
}
|
|
||||||
.cardSwiper .swiper-item view{
|
|
||||||
width: 100%;
|
|
||||||
display: block;
|
|
||||||
height: 100%;
|
|
||||||
border-radius: 10rpx;
|
|
||||||
transform: scale(0.9,0.8);
|
|
||||||
opacity: 0.7;
|
|
||||||
transition: all 0.1s ease-in 0s;
|
|
||||||
overflow: hidden;
|
|
||||||
box-sizing: border-box;
|
|
||||||
margin-left:8.1%;
|
|
||||||
}
|
|
||||||
.cardSwiper .cur view{
|
|
||||||
transform: initial;
|
|
||||||
opacity: 1;
|
|
||||||
transition: all 0.1s ease-in 0s;
|
|
||||||
}
|
|
||||||
.swiper-item view{
|
|
||||||
height:100%;
|
|
||||||
width:100%;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
.swiperText{
|
|
||||||
position: absolute;
|
|
||||||
color:#ffffff;
|
|
||||||
z-index:2;
|
|
||||||
border-radius: 4rpx;
|
|
||||||
padding:0 4rpx;
|
|
||||||
}
|
|
||||||
.screen-swiper image{
|
|
||||||
width:100%;
|
|
||||||
}
|
|
||||||
.screen-swiper video,
|
|
||||||
.swiper-item video {
|
|
||||||
width: 100%;
|
|
||||||
display: block;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
.swiperContent{
|
|
||||||
width:100%;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
@ -2,115 +2,155 @@
|
|||||||
<template>
|
<template>
|
||||||
<view>
|
<view>
|
||||||
<!-- 新手大礼包 -->
|
<!-- 新手大礼包 -->
|
||||||
<view :class="['msk', (!user_is_new || isClosed)?'hide':'']" @tap="cancel">
|
<view
|
||||||
<view class="msk_box" url="../receivecontent/receivecontent" @tap="innertouch">
|
:class="['msk', !user_is_new || isClosed ? 'hide' : '']"
|
||||||
<image src="https://static.lancerdt.com/xcxfile/appicon/Package.png" style='width:100%'></image>
|
@tap="cancel"
|
||||||
<view class="msk_box_info" style='right:16%;top:40%;'><text>{{__('¥')}}</text><label>{{CouponAmount}}</label>
|
>
|
||||||
|
<view
|
||||||
|
class="msk_box"
|
||||||
|
url="../receivecontent/receivecontent"
|
||||||
|
@tap="innertouch"
|
||||||
|
>
|
||||||
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/Package.png"
|
||||||
|
style="width: 100%"
|
||||||
|
></image>
|
||||||
|
<view class="msk_box_info" style="right: 16%; top: 40%"
|
||||||
|
><text>{{ __("¥") }}</text
|
||||||
|
><label>{{ CouponAmount }}</label>
|
||||||
</view>
|
</view>
|
||||||
<view class="btn_receivenow" @tap="receivenow"></view>
|
<view class="btn_receivenow" @tap="receivenow"></view>
|
||||||
<view class="btn_cancel" @tap="cancel">✕</view>
|
<view class="btn_cancel" @tap="cancel">✕</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
|
||||||
<view class="msk1" @tap="cancelsuccess" v-if="isShowSuccessBox">
|
<view class="msk1" @tap="cancelsuccess" v-if="isShowSuccessBox">
|
||||||
<view class="m-coupon-box" @tap="innertouch">
|
<view class="m-coupon-box" @tap="innertouch">
|
||||||
<view :class="mskType==1?'m-coupon-box-top':'m-coupon-box-top2'"></view>
|
<view
|
||||||
|
:class="mskType == 1 ? 'm-coupon-box-top' : 'm-coupon-box-top2'"
|
||||||
|
></view>
|
||||||
<view class="m-coupon-box-content">
|
<view class="m-coupon-box-content">
|
||||||
<scroll-view scroll-y="true" class="m-coupon-box-list">
|
<scroll-view scroll-y="true" class="m-coupon-box-list">
|
||||||
<view class="m-coupon-box-item" v-for="(item, index) in coupon_rows" :key="index">
|
<view
|
||||||
<view class='m-coupon-box-item-left'><label style='font-size:24rpx;margin-top:14rpx'>{{__("¥")}}</label>{{item.voucher_price || item.activity_rule.voucher_price}}
|
class="m-coupon-box-item"
|
||||||
|
v-for="(item, index) in coupon_rows"
|
||||||
|
:key="index"
|
||||||
|
>
|
||||||
|
<view class="m-coupon-box-item-left"
|
||||||
|
><label style="font-size: 24rpx; margin-top: 14rpx">{{
|
||||||
|
__("¥")
|
||||||
|
}}</label
|
||||||
|
>{{ item.voucher_price || item.activity_rule.voucher_price }}
|
||||||
</view>
|
</view>
|
||||||
<view class='m-coupon-box-item-right'><label>{{sprintf(__('有效日期至:%s'), item.voucher_end_date || item.activity_endtime)}}</label>
|
<view class="m-coupon-box-item-right"
|
||||||
<text>{{item.activity_name}}</text>
|
><label>{{
|
||||||
|
sprintf(
|
||||||
|
__("有效日期至:%s"),
|
||||||
|
item.voucher_end_date || item.activity_endtime
|
||||||
|
)
|
||||||
|
}}</label>
|
||||||
|
<text>{{ item.activity_name }}</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</scroll-view>
|
</scroll-view>
|
||||||
</view>
|
</view>
|
||||||
<view class="m-coupon-box-bottom"></view>
|
<view class="m-coupon-box-bottom"></view>
|
||||||
<view class="close_msk" @tap="cancelsuccess">
|
<view class="close_msk" @tap="cancelsuccess">
|
||||||
<image style="width:50rpx;height:50rpx"
|
<image
|
||||||
src="https://static.lancerdt.com/xcxfile/appicon/img/delete.png"></image>
|
style="width: 50rpx; height: 50rpx"
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/img/delete.png"
|
||||||
|
></image>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {
|
import { mapState, mapMutations } from "vuex";
|
||||||
mapState,
|
|
||||||
mapMutations
|
|
||||||
} from 'vuex'
|
|
||||||
|
|
||||||
import $ from "../../helpers/util";
|
import $ from "../../helpers/util";
|
||||||
|
|
||||||
export default{
|
export default {
|
||||||
props:{
|
props: {
|
||||||
Coupons:{
|
Coupons: {
|
||||||
type:Object,
|
type: Object,
|
||||||
default:{}
|
default: {},
|
||||||
},
|
},
|
||||||
user_is_new:{
|
user_is_new: {
|
||||||
type:Number,
|
type: Number,
|
||||||
default:0
|
default: 0,
|
||||||
},
|
},
|
||||||
CouponAmount:{
|
CouponAmount: {
|
||||||
type:Number,
|
type: Number,
|
||||||
default:0.00
|
default: 0.0,
|
||||||
},
|
},
|
||||||
mskType:{
|
mskType: {
|
||||||
type:Number,
|
type: Number,
|
||||||
default:1
|
default: 1,
|
||||||
}
|
|
||||||
},
|
},
|
||||||
computed: mapState(['Config', 'StateCode', 'notice', 'plantformInfo', 'shopInfo', 'userInfo', 'hasLogin', '__']),
|
|
||||||
data(){
|
|
||||||
return{
|
|
||||||
isShowSuccessBox:false,
|
|
||||||
isClosed:false,
|
|
||||||
coupon_rows:[]
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
mounted() {
|
computed: mapState([
|
||||||
|
"Config",
|
||||||
|
"StateCode",
|
||||||
|
"notice",
|
||||||
|
"plantformInfo",
|
||||||
|
"shopInfo",
|
||||||
|
"userInfo",
|
||||||
|
"hasLogin",
|
||||||
|
"__",
|
||||||
|
]),
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
isShowSuccessBox: false,
|
||||||
|
isClosed: false,
|
||||||
|
coupon_rows: [],
|
||||||
|
};
|
||||||
},
|
},
|
||||||
methods:{
|
mounted() {},
|
||||||
...mapMutations(['login', 'logout', 'getPlantformInfo', 'forceUserInfo', 'getUserInfo', 'showCartNum']),
|
methods: {
|
||||||
|
...mapMutations([
|
||||||
|
"login",
|
||||||
|
"logout",
|
||||||
|
"getPlantformInfo",
|
||||||
|
"forceUserInfo",
|
||||||
|
"getUserInfo",
|
||||||
|
"showCartNum",
|
||||||
|
]),
|
||||||
receivenow: function () {
|
receivenow: function () {
|
||||||
this.userReceiveCoupon()
|
this.userReceiveCoupon();
|
||||||
},
|
},
|
||||||
cancel: function () {
|
cancel: function () {
|
||||||
this.setData({isClosed: true})
|
this.setData({ isClosed: true });
|
||||||
},
|
},
|
||||||
cancelsuccess: function () {
|
cancelsuccess: function () {
|
||||||
this.setData({isShowSuccessBox: false})
|
this.setData({ isShowSuccessBox: false });
|
||||||
},
|
|
||||||
innertouch: function () {
|
|
||||||
},
|
},
|
||||||
|
innertouch: function () {},
|
||||||
userReceiveCoupon: function () {
|
userReceiveCoupon: function () {
|
||||||
let that = this;
|
let that = this;
|
||||||
var params = {
|
var params = {
|
||||||
CouponIds: "",
|
CouponIds: "",
|
||||||
user_is_new: this.userInfo.user_is_new
|
user_is_new: this.userInfo.user_is_new,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
this.forceUserInfo((user) => {
|
this.forceUserInfo((user) => {
|
||||||
if (user) {
|
if (user) {
|
||||||
$.request({
|
$.request({
|
||||||
url: this.Config.URL.user.receive_new_gift,
|
url: this.Config.URL.user.receive_new_gift,
|
||||||
data: params,
|
data: params,
|
||||||
success: function(data, status, msg, code) {
|
success: function (data, status, msg, code) {
|
||||||
if (200 == status) {
|
if (200 == status) {
|
||||||
$.alert(that.__("领取成功!"));
|
$.alert(that.__("领取成功!"));
|
||||||
|
|
||||||
that.login({user_is_new:0});
|
that.login({ user_is_new: 0 });
|
||||||
|
|
||||||
that.setData({isShowSuccessBox: true, coupon_rows: data.items})
|
that.setData({
|
||||||
|
isShowSuccessBox: true,
|
||||||
|
coupon_rows: data.items,
|
||||||
|
});
|
||||||
} else {
|
} else {
|
||||||
$.alert(msg);
|
$.alert(msg);
|
||||||
}
|
}
|
||||||
@ -118,54 +158,45 @@
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
},
|
||||||
}
|
},
|
||||||
}
|
};
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
.video{
|
.video {
|
||||||
width: 750rpx;
|
width: 750rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.top{
|
.top {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top:0;
|
top: 0;
|
||||||
background-image: linear-gradient(to top , rgba(0,0,0,0) , rgba(0,0,0,0.7));
|
background-image: linear-gradient(
|
||||||
|
to top,
|
||||||
|
rgba(0, 0, 0, 0),
|
||||||
|
rgba(0, 0, 0, 0.7)
|
||||||
|
);
|
||||||
width: 750rpx;
|
width: 750rpx;
|
||||||
height: 300rpx;
|
height: 300rpx;
|
||||||
}
|
}
|
||||||
.bottom{
|
.bottom {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
background-image: linear-gradient(to top , rgba(0,0,0,0.7) , rgba(0,0,0,0));
|
background-image: linear-gradient(
|
||||||
|
to top,
|
||||||
|
rgba(0, 0, 0, 0.7),
|
||||||
|
rgba(0, 0, 0, 0)
|
||||||
|
);
|
||||||
width: 750rpx;
|
width: 750rpx;
|
||||||
height: 300rpx;
|
height: 300rpx;
|
||||||
}
|
}
|
||||||
.progressBar{
|
.progressBar {
|
||||||
border-radius: 2rpx;
|
border-radius: 2rpx;
|
||||||
height: 4rpx;
|
height: 4rpx;
|
||||||
background-color: #FFFFFF;
|
background-color: #ffffff;
|
||||||
z-index: 999999;
|
z-index: 999999;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
bottom: 40rpx;
|
bottom: 40rpx;
|
||||||
//#ifndef APP-PLUS-NVUE
|
}
|
||||||
animation: flicker 4s linear infinite;
|
|
||||||
animation-direction:alternate;
|
|
||||||
//#endif
|
|
||||||
}
|
|
||||||
//#ifndef APP-PLUS-NVUE
|
|
||||||
@keyframes flicker {
|
|
||||||
0% { box-shadow:0 0 0 #FFFFFF; }
|
|
||||||
/** 暂停效果 */
|
|
||||||
10% { box-shadow:0 0 2rpx #FFFFFF; }
|
|
||||||
50% { box-shadow:0 0 10rpx #FFFFFF; }
|
|
||||||
60% { box-shadow:0 0 12rpx #FFFFFF; }
|
|
||||||
90% { box-shadow:0 0 18rpx #FFFFFF; }
|
|
||||||
100% { box-shadow:0 0 20rpx #FFFFFF; }
|
|
||||||
|
|
||||||
}
|
|
||||||
//#endif
|
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
|||||||
@ -1,267 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class='keyboard' @click.stop='_handleKeyPress'>
|
|
||||||
<view class='key-row'>
|
|
||||||
<view class='key-cell cell_b' data-num='7'>7</view>
|
|
||||||
<view class='key-cell cell_b' data-num='8'>8</view>
|
|
||||||
<view class='key-cell cell_b' data-num='9'>9</view>
|
|
||||||
<view class='key-cell cell_b' data-num='-1'></view>
|
|
||||||
</view>
|
|
||||||
<view class='key-row'>
|
|
||||||
<view class='key-cell cell_b' data-num='4'>4</view>
|
|
||||||
<view class='key-cell cell_b' data-num='5'>5</view>
|
|
||||||
<view class='key-cell cell_b' data-num='6'>6</view>
|
|
||||||
<view class='key-cell cell_b' data-num='-1'></view>
|
|
||||||
</view>
|
|
||||||
<view class='key-row'>
|
|
||||||
<view class='key-cell cell_b' data-num='1'>1</view>
|
|
||||||
<view class='key-cell cell_b' data-num='2'>2</view>
|
|
||||||
<view class='key-cell cell_b' data-num='3'>3</view>
|
|
||||||
<view class='key-cell cell_b' data-num='-1'></view>
|
|
||||||
</view>
|
|
||||||
<view class="key-zero-and-point">
|
|
||||||
<view class="a cell_b zero" data-num='0'>0</view>
|
|
||||||
<view class="a cell_b point" data-num='.'>.</view>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view @touchstart="touchstart" @touchend="touchend" data-num='D' class="key-confirm2">
|
|
||||||
<text data-num='D'>C</text>
|
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class='key-confirm' :style="{'background':btnColor}" data-num='S'>
|
|
||||||
<view data-num='S' class="">
|
|
||||||
<view data-num='S' class="title">{{title}}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
export default{
|
|
||||||
name:"keyBoard",
|
|
||||||
props:{
|
|
||||||
title:{
|
|
||||||
default:'确认',
|
|
||||||
type:String
|
|
||||||
},
|
|
||||||
btnColor:{
|
|
||||||
default:'green',
|
|
||||||
}
|
|
||||||
},
|
|
||||||
data(){
|
|
||||||
return {
|
|
||||||
money:'',
|
|
||||||
Cdel:'',
|
|
||||||
Time:''
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
watch:{
|
|
||||||
money(val){
|
|
||||||
this.$emit('update:money',val);
|
|
||||||
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
methods : {
|
|
||||||
touchstart(){
|
|
||||||
this.Time=setInterval(()=>{
|
|
||||||
//console.log(this.money);
|
|
||||||
if(this.money==''){
|
|
||||||
clearInterval();
|
|
||||||
}
|
|
||||||
this.money = this.money.substring(0,this.money.length - 1);
|
|
||||||
},200)
|
|
||||||
},
|
|
||||||
touchend(){
|
|
||||||
clearInterval(this.Time);
|
|
||||||
},
|
|
||||||
//处理按键
|
|
||||||
_handleKeyPress(e) {
|
|
||||||
// //console.log('点击传e',e.target.dataset.num);
|
|
||||||
let num = e.target.dataset.num;
|
|
||||||
//不同按键处理逻辑
|
|
||||||
// -1 代表无效按键,直接返回
|
|
||||||
if (num == -1) return false;
|
|
||||||
switch (String(num)) {
|
|
||||||
//小数点
|
|
||||||
case '.':
|
|
||||||
this._handleDecimalPoint();
|
|
||||||
break;
|
|
||||||
//删除键
|
|
||||||
case 'D':
|
|
||||||
this._handleDeleteKey();
|
|
||||||
break;
|
|
||||||
//清空键
|
|
||||||
case 'C':
|
|
||||||
this._handleClearKey();
|
|
||||||
break;
|
|
||||||
//确认键
|
|
||||||
case 'S':
|
|
||||||
this._handleConfirmKey();
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
this._handleNumberKey(num);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
//处理小数点函数
|
|
||||||
_handleDecimalPoint() {
|
|
||||||
//如果包含小数点,直接返回
|
|
||||||
if (this.money.indexOf('.') > -1) return false;
|
|
||||||
//如果小数点是第一位,补0
|
|
||||||
if (!this.money.length)
|
|
||||||
this.money = '0.';
|
|
||||||
//如果不是,添加一个小数点
|
|
||||||
else
|
|
||||||
this.money = this.money + '.';
|
|
||||||
},
|
|
||||||
//处理删除键
|
|
||||||
_handleDeleteKey() {
|
|
||||||
let S = this.money;
|
|
||||||
//如果没有输入,直接返回
|
|
||||||
if (!S.length) return false;
|
|
||||||
//否则删除最后一个
|
|
||||||
this.money = S.substring(0, S.length - 1);
|
|
||||||
},
|
|
||||||
|
|
||||||
//处理清空键
|
|
||||||
_handleClearKey() {
|
|
||||||
this.money = '';
|
|
||||||
},
|
|
||||||
|
|
||||||
//处理数字
|
|
||||||
_handleNumberKey(num) {
|
|
||||||
if(this.money.length==10){
|
|
||||||
return
|
|
||||||
}
|
|
||||||
let S = this.money;
|
|
||||||
//如果有小数点且小数点位数不小于2
|
|
||||||
if ( S.indexOf('.') > -1 && S.substring(S.indexOf('.') + 1).length < 2)
|
|
||||||
this.money = S + num;
|
|
||||||
//没有小数点
|
|
||||||
if (!(S.indexOf('.') > -1)) {
|
|
||||||
//如果第一位是0,只能输入小数点
|
|
||||||
if (num == 0 && S.length == 0)
|
|
||||||
this.money = '0.';
|
|
||||||
else {
|
|
||||||
if (S.length && Number(S.charAt(0)) === 0) return;
|
|
||||||
this.money = S + num;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
//提交
|
|
||||||
_handleConfirmKey() {
|
|
||||||
let S = this.money;
|
|
||||||
//未输入
|
|
||||||
if (!S.length||S==0){
|
|
||||||
uni.showToast({
|
|
||||||
title: '请输入正确的数值',
|
|
||||||
icon:'none',
|
|
||||||
duration: 1000
|
|
||||||
});
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
//将 8. 这种转换成 8.00
|
|
||||||
if (S.indexOf('.') > -1 && S.indexOf('.') == (S.length - 1))
|
|
||||||
S = Number(S.substring(0, S.length - 1)).toFixed(2);
|
|
||||||
//保留两位
|
|
||||||
S = Number(S).toFixed(2);
|
|
||||||
this.$emit('confirmEvent',S); //提交参数
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="less" scoped>
|
|
||||||
.cell_b{
|
|
||||||
border-right: 1px solid #d5d5d6;
|
|
||||||
border-bottom: 1px solid #d5d5d6;
|
|
||||||
}
|
|
||||||
|
|
||||||
.key-container {
|
|
||||||
width: 100%;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
}
|
|
||||||
|
|
||||||
.keyboard {
|
|
||||||
flex: 1;
|
|
||||||
position: fixed;
|
|
||||||
bottom: 0;
|
|
||||||
left: 0;
|
|
||||||
height: 40vh;
|
|
||||||
width: 100%;
|
|
||||||
|
|
||||||
background: #FFFFFF;
|
|
||||||
}
|
|
||||||
.keyboard .key-row {
|
|
||||||
display: flex;
|
|
||||||
display: -webkit-flex;
|
|
||||||
position: relative;
|
|
||||||
height: 10vh;
|
|
||||||
line-height: 10vh;
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.keyboard .key-cell {
|
|
||||||
flex: 1;
|
|
||||||
-webkit-box-flex: 1;
|
|
||||||
font-size: 60rpx;
|
|
||||||
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.keyboard .key-confirm {
|
|
||||||
position: absolute;
|
|
||||||
text-align: center;
|
|
||||||
height: 30vh;
|
|
||||||
width: 25%;
|
|
||||||
line-height: 30vh;
|
|
||||||
color: #FFFFFF;
|
|
||||||
z-index: 5;
|
|
||||||
right: 0;
|
|
||||||
bottom: 0;
|
|
||||||
|
|
||||||
display:flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.keyboard .key-confirm2 {
|
|
||||||
position: absolute;
|
|
||||||
height: 10vh;
|
|
||||||
width: 25%;
|
|
||||||
line-height: 10vh;
|
|
||||||
z-index: 9999;
|
|
||||||
right: 0;
|
|
||||||
top: 0;
|
|
||||||
|
|
||||||
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
.key-zero-and-point{
|
|
||||||
display: flex;height: 10vh;justify-content: center;align-items: center;width:75%;font-size: 60rpx;
|
|
||||||
.zero{
|
|
||||||
display: flex;justify-content: center;align-items: center;width: 66.66%;font-size: 60rpx;text-align: center;height: 100%;
|
|
||||||
}
|
|
||||||
.point{
|
|
||||||
display: flex;justify-content: center;align-items: center;width: 33.33%;font-size: 60rpx;text-align: center;height: 100%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.key-cell:active{
|
|
||||||
color: white;
|
|
||||||
background: black; //黑色
|
|
||||||
opacity: 0.1; //这里重要,就是通过这个透明度来设置
|
|
||||||
}
|
|
||||||
.a:active,.key-confirm2:active{
|
|
||||||
color: white;
|
|
||||||
background: black; //黑色
|
|
||||||
opacity: 0.1; //这里重要,就是通过这个透明度来设置
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
325
components/delivery-time-op/delivery-time-op.vue
Normal file
@ -0,0 +1,325 @@
|
|||||||
|
<template>
|
||||||
|
<view>
|
||||||
|
<!-- 模态框 -->
|
||||||
|
<view @tap="Modal" :class="{ mask: model }"></view>
|
||||||
|
<!-- 弹窗主体 -->
|
||||||
|
<view
|
||||||
|
|
||||||
|
class="active"
|
||||||
|
:class="{ add: model }"
|
||||||
|
>
|
||||||
|
<view class="title">
|
||||||
|
<text class="title-text">{{ title }}</text>
|
||||||
|
<text @tap="close" class="close-btn">×</text>
|
||||||
|
</view>
|
||||||
|
<view class="cont" :style="{ height: barHidth - 80 + 'rpx' }">
|
||||||
|
<!-- 天 -->
|
||||||
|
<scroll-view class="day" :scroll-y="true">
|
||||||
|
<view
|
||||||
|
:class="index === isIndex ? 'active_copy' : ''"
|
||||||
|
v-for="(item, index) in content"
|
||||||
|
:key="item.date"
|
||||||
|
@tap="dataCallback(index, item)"
|
||||||
|
>
|
||||||
|
<view class="date-week">{{ item.date_title }}</view>
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
||||||
|
|
||||||
|
<!-- 时 -->
|
||||||
|
<scroll-view class="content" :scroll-y="true" :scroll-top="scrollTop">
|
||||||
|
<view
|
||||||
|
class="appoint"
|
||||||
|
:class="index === Indexes ? 'longActive' : ''"
|
||||||
|
@tap="timeCallback(index, item)"
|
||||||
|
v-for="(item, index) in Days"
|
||||||
|
:key="index"
|
||||||
|
>
|
||||||
|
{{ item.time_title }}
|
||||||
|
<text :class="index === Indexes ? 'cuIcon-check' : ''"></text>
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
props: {
|
||||||
|
title: {
|
||||||
|
type: String,
|
||||||
|
default: "选择预送达时间",
|
||||||
|
},
|
||||||
|
content: {
|
||||||
|
type: Array,
|
||||||
|
default: () => [
|
||||||
|
{
|
||||||
|
date_title: "B-12 (周五)",
|
||||||
|
date_str: "B-12",
|
||||||
|
date: "2025-10-12",
|
||||||
|
items: [
|
||||||
|
{
|
||||||
|
time_title: "16:35",
|
||||||
|
booking_at: 1,
|
||||||
|
booking_state: 1,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
date_title: "B-13 (周六)",
|
||||||
|
date_str: "B-13",
|
||||||
|
date: "2025-10-13",
|
||||||
|
items: [
|
||||||
|
{
|
||||||
|
time_title: "17:05",
|
||||||
|
booking_at: 2,
|
||||||
|
booking_state: 2,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
date_title: "B-14 (周日)",
|
||||||
|
date_str: "B-14",
|
||||||
|
date: "2025-10-14",
|
||||||
|
items: [
|
||||||
|
{
|
||||||
|
time_title: "17:35",
|
||||||
|
booking_at: 3,
|
||||||
|
booking_state: 2,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
date_title: "B-15 (周一)",
|
||||||
|
date_str: "B-15",
|
||||||
|
date: "2025-10-15",
|
||||||
|
items: [
|
||||||
|
{
|
||||||
|
time_title: "18:05",
|
||||||
|
booking_at: 4,
|
||||||
|
booking_state: 1,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
date_title: "B-15 (周二)",
|
||||||
|
date_str: "B-15",
|
||||||
|
date: "2025-10-16",
|
||||||
|
items: [
|
||||||
|
{
|
||||||
|
time_title: "18:35",
|
||||||
|
booking_at: 5,
|
||||||
|
booking_state: 1,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
barHidth: {
|
||||||
|
type: Number,
|
||||||
|
default: 500,
|
||||||
|
},
|
||||||
|
dodge: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
scrollTop: 0,
|
||||||
|
isIndex: 0,
|
||||||
|
Indexes: 0,
|
||||||
|
Days: [],
|
||||||
|
model: false,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
watch: {
|
||||||
|
content: {
|
||||||
|
immediate: true,
|
||||||
|
handler(newValue) {
|
||||||
|
if (newValue && newValue.length > 0 && newValue[0].items) {
|
||||||
|
this.Days = newValue[0].items;
|
||||||
|
} else {
|
||||||
|
console.warn('content 数据格式不正确', newValue);
|
||||||
|
this.Days = [];
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
close() {
|
||||||
|
this.model = false;
|
||||||
|
},
|
||||||
|
open() {
|
||||||
|
this.model = true;
|
||||||
|
},
|
||||||
|
Modal() {
|
||||||
|
if (this.dodge) {
|
||||||
|
this.close();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
gotop() {
|
||||||
|
this.scrollTop = 1;
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.scrollTop = 0;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
dataCallback(index, item) {
|
||||||
|
this.isIndex = index;
|
||||||
|
this.Days = this.content[index].items;
|
||||||
|
this.Indexes = 0;
|
||||||
|
this.gotop();
|
||||||
|
this.$emit("dataCallback", item);
|
||||||
|
},
|
||||||
|
timeCallback(index, item) {
|
||||||
|
this.Indexes = index;
|
||||||
|
const selectedDate = this.content[this.isIndex]; // 获取当前选中的日期对象
|
||||||
|
const selectedTime = item; // 当前选中的时间对象
|
||||||
|
this.$emit("timeCallback", {
|
||||||
|
date_title: selectedDate.date_title, // 日期标题
|
||||||
|
time_title: selectedTime.time_title, // 时间标题
|
||||||
|
booking_at: selectedTime.booking_at, // 预约时间戳
|
||||||
|
booking_begin_time: selectedTime.booking_begin_time, // 预约开始时间
|
||||||
|
booking_end_time: selectedTime.booking_end_time, // 预约结束时间
|
||||||
|
});
|
||||||
|
this.$emit("close"); // 触发关闭事件
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.mask {
|
||||||
|
position: fixed;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
background-color: rgba(0, 0, 0, 0.5);
|
||||||
|
z-index: 999;
|
||||||
|
}
|
||||||
|
|
||||||
|
.active {
|
||||||
|
position: fixed;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
z-index: 1000;
|
||||||
|
width: 100%;
|
||||||
|
background-color: #fff;
|
||||||
|
border-top-left-radius: 20rpx;
|
||||||
|
border-top-right-radius: 20rpx;
|
||||||
|
overflow: hidden;
|
||||||
|
transform: translateY(100%);
|
||||||
|
transition: transform 0.3s ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
.add {
|
||||||
|
height: 380px;
|
||||||
|
transform: translateY(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
.title {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
padding: 24rpx 30rpx;
|
||||||
|
border-bottom: 2rpx solid #eee;
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title-text {
|
||||||
|
font-size: 34rpx;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #333;
|
||||||
|
max-width: 80%;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 关闭按钮样式 */
|
||||||
|
.close-btn {
|
||||||
|
font-size: 50rpx;
|
||||||
|
color: #999;
|
||||||
|
padding: 10rpx; /* 增加点击区域 */
|
||||||
|
border-radius: 50%;
|
||||||
|
/* 右对齐(通过 flex 布局已实现,无需绝对定位) */
|
||||||
|
}
|
||||||
|
|
||||||
|
.close-btn:active {
|
||||||
|
background-color: #f5f5f5; /* 点击时轻微反馈 */
|
||||||
|
}
|
||||||
|
.cont {
|
||||||
|
display: flex;
|
||||||
|
height: calc(100% - 80rpx);
|
||||||
|
}
|
||||||
|
|
||||||
|
.day {
|
||||||
|
flex: 2;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.day view {
|
||||||
|
padding: 28rpx 0;
|
||||||
|
font-size: 28rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.date-week {
|
||||||
|
font-weight: 500;
|
||||||
|
color: #333; /* 日期颜色 */
|
||||||
|
}
|
||||||
|
|
||||||
|
.active_copy {
|
||||||
|
background-color: #fff;
|
||||||
|
color: #27c866;
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
|
||||||
|
.content {
|
||||||
|
flex: 3;
|
||||||
|
font-size: 28rpx;
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.appoint {
|
||||||
|
position: relative;
|
||||||
|
text-align: left;
|
||||||
|
padding: 30rpx 36rpx;
|
||||||
|
border-bottom: 2rpx solid #f5f5f5;
|
||||||
|
color: #333; /* 时间颜色 */
|
||||||
|
}
|
||||||
|
|
||||||
|
.longActive {
|
||||||
|
color: #27c866;
|
||||||
|
background-color: #f6fffa;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cuIcon-check {
|
||||||
|
position: absolute;
|
||||||
|
right: 36rpx;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateY(-50%);
|
||||||
|
width: 36rpx;
|
||||||
|
height: 36rpx;
|
||||||
|
background-color: #27c866;
|
||||||
|
border-radius: 50%;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cuIcon-check::after {
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
left: 10rpx;
|
||||||
|
top: 16rpx;
|
||||||
|
width: 12rpx;
|
||||||
|
height: 6rpx;
|
||||||
|
border-bottom: 4rpx solid white;
|
||||||
|
border-left: 4rpx solid white;
|
||||||
|
transform: rotate(-45deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
scroll-view ::-webkit-scrollbar {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -1,52 +0,0 @@
|
|||||||
#### **1. 使用方法:**
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
<!--
|
|
||||||
@param: commentList展示的评论列表数据
|
|
||||||
@method: clickPraise 点赞评论
|
|
||||||
@method: clickDelete 删除父级评论
|
|
||||||
@method: clickRecommentChild 点赞子评论
|
|
||||||
@method: clickDeleteChild 删除子评论
|
|
||||||
-->
|
|
||||||
<five-mul-commentlist
|
|
||||||
:commentList="commentList"
|
|
||||||
@clickPraise="clickPraiseComment"
|
|
||||||
@clickDelete="clickDeleteComment"
|
|
||||||
@clickDeleteChild="clickDeleteCommentChild"
|
|
||||||
@clickRecomment="clickRecomment"
|
|
||||||
@clickRecommentChild="clickRecommentChild"
|
|
||||||
></five-mul-commentlist>
|
|
||||||
|
|
||||||
```
|
|
||||||
#### **2. commentList数据格式参照如下:**
|
|
||||||
|
|
||||||
```json
|
|
||||||
[{
|
|
||||||
{
|
|
||||||
"COMMENT_TIME": "",
|
|
||||||
"FIRSTNICKNAME": "",
|
|
||||||
"IS_PRAISE": null,
|
|
||||||
"COMMENT": "",
|
|
||||||
"PRAISE_NUM": 0,
|
|
||||||
"CANDELETE": 0,
|
|
||||||
"HEADIMGURL": "",
|
|
||||||
"PARENTID": "",
|
|
||||||
"SECONDNICKNAME": null,
|
|
||||||
"CHILD_ANWSER_LIST": [{
|
|
||||||
"COMMENT_TIME": "",
|
|
||||||
"FIRSTNICKNAME": "",
|
|
||||||
"IS_PRAISE": null,
|
|
||||||
"COMMENT": "",
|
|
||||||
"PRAISE_NUM": 0,
|
|
||||||
"CANDELETE": 1,
|
|
||||||
"HEADIMGURL": ",
|
|
||||||
"SECONDNICKNAME": ""
|
|
||||||
}]
|
|
||||||
|
|
||||||
}
|
|
||||||
]
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -85,8 +85,7 @@
|
|||||||
<view class="m-nullpage-middle">
|
<view class="m-nullpage-middle">
|
||||||
<label class="iconfont icon-sousuo-sousuo"></label>
|
<label class="iconfont icon-sousuo-sousuo"></label>
|
||||||
<view class="m-null-tip">
|
<view class="m-null-tip">
|
||||||
<text>{{__('亲~找不到您想要的商品')}}</text>
|
<text>暂无数据</text>
|
||||||
<text>{{__('再多点提示呗')}}</text>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</navigator>
|
</navigator>
|
||||||
|
|||||||
@ -14,12 +14,9 @@
|
|||||||
</view>
|
</view>
|
||||||
</scroll-view>
|
</scroll-view>
|
||||||
|
|
||||||
<scroll-view scroll-top="200" class="m-navbar scroll-view_H" scroll-x
|
<scroll-view scroll-top="200" class="m-navbar scroll-view_H" scroll-x :style="'width:' + ((tabs[key].sidx && tabs[key].sort) ? '80%' : '94%')" :show-scrollbar="true" v-if="(tabs[key].isShowFilter)">
|
||||||
:style="'width:' + ((tabs[key].sidx && tabs[key].sort) ? '80%' : '94%')" :show-scrollbar="true"
|
|
||||||
v-if="(tabs[key].isShowFilter)">
|
|
||||||
<block v-for="(price,index) in prices" :key="index">
|
<block v-for="(price,index) in prices" :key="index">
|
||||||
<view class="filter-item " :class="priceIndex == index ? 'filter-item-on' :''"
|
<view class="filter-item " :class="priceIndex == index ? 'filter-item-on' :''" @click="selectPriceIndex(index)">
|
||||||
@click="selectPriceIndex(index)">
|
|
||||||
{{ price.title }}
|
{{ price.title }}
|
||||||
</view>
|
</view>
|
||||||
</block>
|
</block>
|
||||||
@ -27,64 +24,71 @@
|
|||||||
|
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
<view scroll-y="true" :class="['m-product-all u-pa', isShowFilter && isFilterFixed ? 'm-product-box' : '']"
|
<view scroll-y="true" :class="['m-product-all u-pa', isShowFilter && isFilterFixed ? 'm-product-box' : '']" :style="{backgroundColor:bgColor}">
|
||||||
:style="{backgroundColor:bgColor}">
|
|
||||||
|
|
||||||
<view :class="{'m-product-list':1, 'm-listv':viewtype==1}" v-if="(isdata)" style="width: 100%;">
|
<view :class="{'m-product-list':1, 'm-listv':viewtype==1}" v-if="(isdata)" style="width: 100%;">
|
||||||
<block v-for="(item, i) in pdlist" :key="i">
|
<block v-for="(item, i) in pdlist" :key="i">
|
||||||
<block
|
<block v-if="((priceIndex == -1) || (post.product_unit_price_max > 0 ? item.ItemSalePrice >= post.product_unit_price_min && item.ItemSalePrice <= post.product_unit_price_max : item.ItemSalePrice >= post.product_unit_price_min))">
|
||||||
v-if="((priceIndex == -1) || (post.product_unit_price_max > 0 ? item.ItemSalePrice >= post.product_unit_price_min && item.ItemSalePrice <= post.product_unit_price_max : item.ItemSalePrice >= post.product_unit_price_min))">
|
<navigator v-if="(!isFG)" :url="(item.is_virtual?'/pagesub/product/detail':'/pagesub/product/detail') + '?pid=' + (item.id)" class="m-product-item" :style="{marginLeft:(i%2==0 ? 10-paddingLeft : 5)*2 + 'rpx'}">
|
||||||
<navigator v-if="(!isFG)"
|
|
||||||
:url="(item.is_virtual?'/pages/product/detail':'/pages/product/detail') + '?pid=' + (item.id)"
|
|
||||||
class="m-product-item" :style="{marginLeft:(i%2==0 ? 10-paddingLeft : 5)*2 + 'rpx'}">
|
|
||||||
<view class="m-product-img product-list">
|
<view class="m-product-img product-list">
|
||||||
<view class="m-img-number" :class="'m-img-' + (i > 3 ? 3 : i)" v-if="(isShowNumber)">
|
<view class="m-img-number" :class="'m-img-' + (i > 3 ? 3 : i)" v-if="(isShowNumber)">
|
||||||
<span>{{ i + 1 }}</span>
|
<span>{{ i + 1 }}</span>
|
||||||
</view>
|
</view>
|
||||||
<image lazy-load :src="($.img(item.product_image, 360, 360))" v-if="item.product_image"/>
|
<image lazy-load :src="($.img(item.product_image, 360, 360))" v-if="item.product_image" />
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="m-product-info1" style="display:flex; flex-flow: column;justify-content: space-between;">
|
<view class="m-product-info1" style="display:flex; flex-flow: column;justify-content: space-between;">
|
||||||
<view class="m-product-name2">
|
<view class="m-product-name2">
|
||||||
<label>
|
<label>
|
||||||
<text class="tag tag-bargain" v-if="item.activity_type_id == StateCode.ACTIVITY_TYPE_BARGAIN">
|
<block v-if="item.activity_item_row" v-for="(id, idx) in item.activity_type_id_row" :key="idx">
|
||||||
{{ item.activity_type_name }}
|
<ms-activity-tag :typeId="id" v-if="id"></ms-activity-tag>
|
||||||
</text>
|
</block>
|
||||||
<text class="tag tag-gift" v-if="item.activity_type_id == StateCode.ACTIVITY_TYPE_GIFT">
|
{{ item.product_name }}
|
||||||
{{ item.activity_type_name }}
|
</label>
|
||||||
</text>
|
|
||||||
<text class="tag tag-saleoff"
|
|
||||||
v-if="item.activity_type_id == StateCode.ACTIVITY_TYPE_LIMITED_DISCOUNT">
|
|
||||||
{{ item.activity_type_name }}
|
|
||||||
</text>
|
|
||||||
<text class="tag tag-reduction" v-if="item.activity_type_id == StateCode.ACTIVITY_TYPE_REDUCTION">
|
|
||||||
{{ item.activity_type_name }}
|
|
||||||
</text>
|
|
||||||
{{ item.SalesName }}</label>
|
|
||||||
</view>
|
</view>
|
||||||
|
<view style='display: flex;margin-top:10upx;height: 40rpx;line-height: 40rpx;' v-if="(item.product_tag_list && item.product_tag_list.length > 0)">
|
||||||
<view class="m-product-price1">
|
<block v-for="(tag,index) in item.product_tag_list" :key="index">
|
||||||
<view class="money">
|
<uni-tag :text="tag" type="primary" size="small" style="border-radius: 8rpx;margin-right: 4rpx;"></uni-tag>
|
||||||
<block v-if="item.ItemSalePrice">
|
|
||||||
<label>{{ __('¥') }}</label>{{ number_format(item.ItemSalePrice, 2) }}
|
|
||||||
</block>
|
</block>
|
||||||
</view>
|
</view>
|
||||||
<view class="num" v-if="(false && plantformInfo.config.product_salenum_flag && item.SaleNum>0)">
|
<view class="m-product-price1" style="padding-top:0;">
|
||||||
|
<view class="money">
|
||||||
|
<block v-if="item.item_unit_price!='0.00'">
|
||||||
|
<label>{{ __('¥') }}</label>{{ item.item_unit_price }}
|
||||||
|
</block>
|
||||||
|
</view>
|
||||||
|
<view class="num" v-if="!plantformInfo.prodcut_addcart_flag && (plantformInfo.product_salenum_flag && item.SaleNum>0)">
|
||||||
<text>{{ __('已售') }}</text>
|
<text>{{ __('已售') }}</text>
|
||||||
<label style="color:#db384c;margin-left: 2px;">{{ item.SaleNum }}</label>
|
<label style="color:#db384c;margin-left: 2px;">{{ item.SaleNum }}</label>
|
||||||
</view>
|
</view>
|
||||||
<view class="add-cart hide">
|
<view class="multi-spec-box" v-if="plantformInfo.prodcut_addcart_flag">
|
||||||
<uni-icons type="plusempty" size="20" color="#fff"></uni-icons>
|
<view class="item-num-box">
|
||||||
|
<label class="item-num-over" v-if="(item.product_quantity==0)">{{__('已售罄')}}</label>
|
||||||
|
<block v-else>
|
||||||
|
<block v-if="(!item.HasManualSku)">
|
||||||
|
<view @click.stop="subCart" :data-cart_id="(item.cart_id)" :data-num="(item.user_cart_quantity)" :data-stock="(item.product_quantity)" :data-step="(-1)" :data-spuid="(item.product_id ? item.product_id : 0)" :data-pname="(item.product_name ? item.product_name : '')" :data-skuid="(item.item_id)" :data-index="(i)" v-if="(item.user_cart_quantity>0)" class="iconfont icon-jian item-num-dec"></view>
|
||||||
|
<text class="item-num-add" v-if="(item.user_cart_quantity>0)">{{item.user_cart_quantity>99?'99+':item.user_cart_quantity}}</text>
|
||||||
|
<view @click.stop="addCart" :data-num="(item.user_cart_quantity)" :data-stock="(item.product_quantity)" :data-step="(1)" :data-spuid="(item.product_id ? item.product_id : 0)" :data-pname="(item.product_name ? item.product_name : '')" :data-skuid="(item.item_id)" :data-index="(i)" :data-is_virtual="(item.kind_id!=1201)" class="iconfont icon-add "></view>
|
||||||
|
</block>
|
||||||
|
<label class="item-num-choose" @click.stop="showProduct" :data-item_id="(item.item_id)" :data-spuid="(item.product_id ? item.product_id : 0)" :data-index="(i)" v-else>{{__('选规格')}}
|
||||||
|
<view class="car-num" v-if="(item.user_cart_quantity>0)" style="right:-14rpx;top:-20rpx;">{{item.user_cart_quantity>99?'99+':item.user_cart_quantity}}</view>
|
||||||
|
</label>
|
||||||
|
</block>
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
<view :class="'c'+1" v-if="false">
|
<view :class="'c'+1" v-if="false">
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
<view class="points_box" v-if="plantformInfo.item_max_points_rate > 0">
|
||||||
|
<text>{{sprintf(__('最多可用 %s 积分'),number_format(item.item_unit_price*plantformInfo.item_max_points_rate/100/plantformInfo.jx_points_vaue_rate,0))}}</text>
|
||||||
</view>
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
</navigator>
|
</navigator>
|
||||||
</block>
|
</block>
|
||||||
|
|
||||||
</block>
|
</block>
|
||||||
|
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
<navigator url="/pagesub/search/search" redirect="true" class="m-nullpage" v-else>
|
<navigator url="/pagesub/search/search" redirect="true" class="m-nullpage" v-else>
|
||||||
<view class="m-nullpage-middle">
|
<view class="m-nullpage-middle">
|
||||||
@ -118,15 +122,18 @@
|
|||||||
|
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import uniDrawer from '@/components/uni-drawer.vue';
|
import uniDrawer from '@/components/uni-drawer/uni-drawer.vue';
|
||||||
import uniTag from '@/components/uni-tag/uni-tag.vue';
|
import uniTag from '@/components/uni-tag/uni-tag.vue';
|
||||||
import {mapMutations, mapState} from 'vuex';
|
import {
|
||||||
|
mapMutations,
|
||||||
|
mapState
|
||||||
|
} from 'vuex';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
options: {
|
options: {
|
||||||
type: Object,
|
type: Object,
|
||||||
default() {
|
default () {
|
||||||
return {}
|
return {}
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -136,7 +143,7 @@ export default {
|
|||||||
},
|
},
|
||||||
css: {
|
css: {
|
||||||
type: Object,
|
type: Object,
|
||||||
default() {
|
default () {
|
||||||
return {}
|
return {}
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -152,7 +159,7 @@ export default {
|
|||||||
|
|
||||||
fixTop: {
|
fixTop: {
|
||||||
type: Number,
|
type: Number,
|
||||||
default() {
|
default () {
|
||||||
return 0
|
return 0
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -194,7 +201,7 @@ export default {
|
|||||||
|
|
||||||
isShowLoading: {
|
isShowLoading: {
|
||||||
type: [Boolean, Number],
|
type: [Boolean, Number],
|
||||||
default: true
|
default: false
|
||||||
},
|
},
|
||||||
isGuessFlag: {
|
isGuessFlag: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
@ -204,10 +211,9 @@ export default {
|
|||||||
type: String,
|
type: String,
|
||||||
default: ''
|
default: ''
|
||||||
},
|
},
|
||||||
uniId:
|
uniId: {
|
||||||
{
|
|
||||||
type: String,
|
type: String,
|
||||||
default() {
|
default () {
|
||||||
return 'guessyoulike'
|
return 'guessyoulike'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -308,8 +314,10 @@ export default {
|
|||||||
let tmp_opt = this.optionStr;
|
let tmp_opt = this.optionStr;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
options = Object.assign(options, tmp_opt);
|
options = Object.assign(options, tmp_opt);
|
||||||
|
|
||||||
|
|
||||||
this.setData({
|
this.setData({
|
||||||
post: {
|
post: {
|
||||||
store_id: options.store_id,
|
store_id: options.store_id,
|
||||||
@ -347,10 +355,10 @@ export default {
|
|||||||
},
|
},
|
||||||
tabs: options.data ? options.data : []
|
tabs: options.data ? options.data : []
|
||||||
});
|
});
|
||||||
|
console.log("tabs:",JSON.stringify(options))
|
||||||
|
|
||||||
if (this.tabs) {
|
if (this.tabs) {
|
||||||
this.tabs.map(function (value, index) {
|
this.tabs.map(function(value, index) {
|
||||||
if (value.title) {
|
if (value.title) {
|
||||||
that.tabs[index].prices = that.priceTabs(value.title)
|
that.tabs[index].prices = that.priceTabs(value.title)
|
||||||
}
|
}
|
||||||
@ -364,8 +372,6 @@ export default {
|
|||||||
that.tabs[index].sidx = value.options.sidx
|
that.tabs[index].sidx = value.options.sidx
|
||||||
that.tabs[index].sort = value.options.sort
|
that.tabs[index].sort = value.options.sort
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -377,20 +383,24 @@ export default {
|
|||||||
//console.log(this.tabs)
|
//console.log(this.tabs)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
console.log("product_ids:",this.post.product_ids)
|
||||||
if (this.post.product_ids) {
|
if (this.post.product_ids) {
|
||||||
|
|
||||||
this.GetPlist(function () {
|
this.GetPlist(function() {
|
||||||
that.pdlist.length == 0 ? that.setData({isdata: false}) : that.setData({isdata: true});
|
that.pdlist.length == 0 ? that.setData({
|
||||||
|
isdata: false
|
||||||
|
}) : that.setData({
|
||||||
|
isdata: true
|
||||||
|
});
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
this.isdata = false;
|
this.isdata = !1;
|
||||||
return;
|
return;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
uni.$on('diy-scrollbottom', function (data) {
|
uni.$on('diy-scrollbottom', function(data) {
|
||||||
console.log('监听到事件来自 update ,携带参数 uniId 为:' + data.uniId);
|
console.log('监听到事件来自 update ,携带参数 uniId 为:' + data.uniId);
|
||||||
|
|
||||||
if (data.uniId == that.uniId) {
|
if (data.uniId == that.uniId) {
|
||||||
@ -457,7 +467,7 @@ export default {
|
|||||||
|
|
||||||
|
|
||||||
if (this.tabs) {
|
if (this.tabs) {
|
||||||
this.tabs.map(function (value, index) {
|
this.tabs.map(function(value, index) {
|
||||||
if (value.title) {
|
if (value.title) {
|
||||||
that.tabs[index].prices = that.priceTabs(value.title)
|
that.tabs[index].prices = that.priceTabs(value.title)
|
||||||
}
|
}
|
||||||
@ -483,12 +493,15 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (this.post.product_ids) {
|
if (this.post.product_ids) {
|
||||||
|
this.GetPlist(function() {
|
||||||
this.GetPlist(function () {
|
that.pdlist.length == 0 ? that.setData({
|
||||||
that.pdlist.length == 0 ? that.setData({isdata: false}) : that.setData({isdata: true});
|
isdata: !1
|
||||||
|
}) : that.setData({
|
||||||
|
isdata: !0
|
||||||
|
});
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
this.isdata = false;
|
this.isdata = !1;
|
||||||
return;
|
return;
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -499,7 +512,7 @@ export default {
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
...mapMutations(['login', 'logout', 'getPlantformInfo', 'forceUserInfo', 'getUserInfo']),
|
...mapMutations(['login', 'logout', 'getPlantformInfo', 'forceUserInfo', 'getUserInfo']),
|
||||||
pdprice: function () {
|
pdprice: function() {
|
||||||
this.post.sort = this.post.sort == 'DESC' ? 'ASC' : 'DESC';
|
this.post.sort = this.post.sort == 'DESC' ? 'ASC' : 'DESC';
|
||||||
this.GetPlist();
|
this.GetPlist();
|
||||||
},
|
},
|
||||||
@ -507,7 +520,7 @@ export default {
|
|||||||
/**
|
/**
|
||||||
* 过滤搜索
|
* 过滤搜索
|
||||||
*/
|
*/
|
||||||
onFilter: function () {
|
onFilter: function() {
|
||||||
uni.$emit('returnTop')
|
uni.$emit('returnTop')
|
||||||
|
|
||||||
var post = this.post;
|
var post = this.post;
|
||||||
@ -601,7 +614,7 @@ export default {
|
|||||||
this.rightDrawerVisible = false;
|
this.rightDrawerVisible = false;
|
||||||
},
|
},
|
||||||
|
|
||||||
editSidxName: function () {
|
editSidxName: function() {
|
||||||
console.log(this.post.sidx)
|
console.log(this.post.sidx)
|
||||||
if (this.post.sidx == 'product_unit_price') {
|
if (this.post.sidx == 'product_unit_price') {
|
||||||
this.sidxName = '价格';
|
this.sidxName = '价格';
|
||||||
@ -615,7 +628,7 @@ export default {
|
|||||||
this.sidxName = '排序';
|
this.sidxName = '排序';
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
priceTabs: function (priceList) {
|
priceTabs: function(priceList) {
|
||||||
|
|
||||||
if (priceList) {
|
if (priceList) {
|
||||||
|
|
||||||
@ -652,14 +665,14 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
selectPriceIndex: function (index) {
|
selectPriceIndex: function(index) {
|
||||||
var that = this;
|
var that = this;
|
||||||
this.priceIndex = index;
|
this.priceIndex = index;
|
||||||
this.post.product_unit_price_min = this.prices[index].from;
|
this.post.product_unit_price_min = this.prices[index].from;
|
||||||
this.post.product_unit_price_max = this.prices[index].to;
|
this.post.product_unit_price_max = this.prices[index].to;
|
||||||
},
|
},
|
||||||
|
|
||||||
switchTabs: function (index) {
|
switchTabs: function(index) {
|
||||||
|
|
||||||
|
|
||||||
var that = this;
|
var that = this;
|
||||||
@ -680,18 +693,22 @@ export default {
|
|||||||
this.editSidxName()
|
this.editSidxName()
|
||||||
|
|
||||||
if (this.post.product_ids.length > 0) {
|
if (this.post.product_ids.length > 0) {
|
||||||
this.GetPlist(function () {
|
this.GetPlist(function() {
|
||||||
that.pdlist.length == 0 ? that.setData({isdata: false}) : that.setData({isdata: true});
|
that.pdlist.length == 0 ? that.setData({
|
||||||
|
isdata: !1
|
||||||
|
}) : that.setData({
|
||||||
|
isdata: !0
|
||||||
|
});
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
this.isdata = false;
|
this.isdata = !1;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
assistItemReset: function (e) {
|
assistItemReset: function(e) {
|
||||||
var aid = parseInt(e.target.dataset.aid);
|
var aid = parseInt(e.target.dataset.aid);
|
||||||
|
|
||||||
let assist = this.assist.concat();
|
let assist = this.assist.concat();
|
||||||
@ -701,10 +718,12 @@ export default {
|
|||||||
items[i].checked = false;
|
items[i].checked = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.setData({assist: assist})
|
this.setData({
|
||||||
|
assist: assist
|
||||||
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
assistItemChange: function (e) {
|
assistItemChange: function(e) {
|
||||||
var values = e.detail.value;
|
var values = e.detail.value;
|
||||||
var aid = parseInt(e.target.dataset.aid);
|
var aid = parseInt(e.target.dataset.aid);
|
||||||
|
|
||||||
@ -721,9 +740,11 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
this.setData({assist: assist})
|
this.setData({
|
||||||
|
assist: assist
|
||||||
|
})
|
||||||
},
|
},
|
||||||
assistItemRadionChange: function (e) {
|
assistItemRadionChange: function(e) {
|
||||||
var value = e.target.value;
|
var value = e.target.value;
|
||||||
var aid = parseInt(e.target.dataset.aid);
|
var aid = parseInt(e.target.dataset.aid);
|
||||||
|
|
||||||
@ -738,12 +759,16 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
this.setData({assist: assist})
|
this.setData({
|
||||||
|
assist: assist
|
||||||
|
})
|
||||||
},
|
},
|
||||||
scrollbottom: function (e) {
|
scrollbottom: function(e) {
|
||||||
if (this.flag) {
|
if (this.flag) {
|
||||||
var that = this;
|
var that = this;
|
||||||
that.setData({flag: false}), clearTimeout(n);
|
that.setData({
|
||||||
|
flag: false
|
||||||
|
}), clearTimeout(n);
|
||||||
|
|
||||||
var post = this.post;
|
var post = this.post;
|
||||||
/*
|
/*
|
||||||
@ -752,7 +777,7 @@ export default {
|
|||||||
*/
|
*/
|
||||||
post.page = parseInt(that.post.page) + 1;
|
post.page = parseInt(that.post.page) + 1;
|
||||||
|
|
||||||
var n = setTimeout(function () {
|
var n = setTimeout(function() {
|
||||||
that.setData({
|
that.setData({
|
||||||
post: post
|
post: post
|
||||||
}),
|
}),
|
||||||
@ -764,15 +789,17 @@ export default {
|
|||||||
/*
|
/*
|
||||||
* 读取商品数据
|
* 读取商品数据
|
||||||
*/
|
*/
|
||||||
GetPlist: function (callback) {
|
GetPlist: function(callback) {
|
||||||
|
|
||||||
let url = this.Config.URL.pt.list;
|
let url = this.Config.URL.product.lists;
|
||||||
|
|
||||||
if (this.isGuessFlag) {
|
if (this.isGuessFlag) {
|
||||||
url = this.Config.URL.pt.guess;
|
url = this.Config.URL.product.guess;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.setData({flag: false});
|
this.setData({
|
||||||
|
flag: false
|
||||||
|
});
|
||||||
var that = this;
|
var that = this;
|
||||||
|
|
||||||
let params = Object.assign({}, that.post);
|
let params = Object.assign({}, that.post);
|
||||||
@ -793,17 +820,23 @@ export default {
|
|||||||
params.contract_type_ids = that.post.contract_type_ids.join(",");
|
params.contract_type_ids = that.post.contract_type_ids.join(",");
|
||||||
params.market_category_ids = that.post.market_category_ids.join(",");
|
params.market_category_ids = that.post.market_category_ids.join(",");
|
||||||
params.product_tags = that.post.product_tags.join(",");
|
params.product_tags = that.post.product_tags.join(",");
|
||||||
params.item_id = that.post.product_ids;
|
that.post.product_ids = that.post.product_ids.match(/\d+/g).map(Number);
|
||||||
|
|
||||||
|
|
||||||
|
params.item_ids = that.post.product_ids.join(",");
|
||||||
|
params.product_ids = '';
|
||||||
|
params.virtual = '';
|
||||||
|
console.log("params.item_ids--",params.item_ids)
|
||||||
|
|
||||||
that.$.request({
|
that.$.request({
|
||||||
url: this.Config.URL.pt.listItem,
|
url: url,
|
||||||
data: params,
|
data: params,
|
||||||
loading: false,
|
loading: false,
|
||||||
method: "GET",
|
method: "GET",
|
||||||
ajaxCache: {
|
ajaxCache: {
|
||||||
timeout: this.Config.CACHE_EXPIRE
|
timeout: this.Config.CACHE_EXPIRE
|
||||||
},
|
},
|
||||||
success: function (data, status, msg, code) {
|
success: function(data, status, msg, code) {
|
||||||
that.setData({
|
that.setData({
|
||||||
pdlist: []
|
pdlist: []
|
||||||
});
|
});
|
||||||
@ -872,10 +905,10 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
scrolltoupper: function (t) {
|
scrolltoupper: function(t) {
|
||||||
this.old.scposition = t.detail.scrollTop;
|
this.old.scposition = t.detail.scrollTop;
|
||||||
},
|
},
|
||||||
returnTop: function () {
|
returnTop: function() {
|
||||||
var that = this;
|
var that = this;
|
||||||
|
|
||||||
// 解决view层不同步的问题
|
// 解决view层不同步的问题
|
||||||
@ -883,7 +916,7 @@ export default {
|
|||||||
scposition: this.old.scposition
|
scposition: this.old.scposition
|
||||||
})
|
})
|
||||||
|
|
||||||
this.$nextTick(function () {
|
this.$nextTick(function() {
|
||||||
that.setData({
|
that.setData({
|
||||||
scposition: 0
|
scposition: 0
|
||||||
})
|
})
|
||||||
@ -906,18 +939,22 @@ export default {
|
|||||||
if (that.assist.length == 0) {
|
if (that.assist.length == 0) {
|
||||||
that.$.request({
|
that.$.request({
|
||||||
url: that.Config.URL.pt.listFilter,
|
url: that.Config.URL.pt.listFilter,
|
||||||
data: {category_id: that.post.category_id},
|
data: {
|
||||||
|
category_id: that.post.category_id
|
||||||
|
},
|
||||||
ajaxCache: {
|
ajaxCache: {
|
||||||
timeout: this.Config.CACHE_EXPIRE
|
timeout: this.Config.CACHE_EXPIRE
|
||||||
},
|
},
|
||||||
success: function (data, status, msg, code) {
|
success: function(data, status, msg, code) {
|
||||||
let contracts = data.contracts;
|
let contracts = data.contracts;
|
||||||
|
|
||||||
for (var i = 0; i < contracts.length; i++) {
|
for (var i = 0; i < contracts.length; i++) {
|
||||||
contracts[i].contract_is_unselected = true;
|
contracts[i].contract_is_unselected = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
that.setData({contract_row: contracts});
|
that.setData({
|
||||||
|
contract_row: contracts
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
let markets = data.markets;
|
let markets = data.markets;
|
||||||
@ -926,7 +963,9 @@ export default {
|
|||||||
markets[i].market_is_unselected = true;
|
markets[i].market_is_unselected = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
that.setData({market_row: markets});
|
that.setData({
|
||||||
|
market_row: markets
|
||||||
|
});
|
||||||
|
|
||||||
//筛选辅助属性
|
//筛选辅助属性
|
||||||
for (var i = 0; i < data.assists.length; i++) {
|
for (var i = 0; i < data.assists.length; i++) {
|
||||||
@ -962,21 +1001,21 @@ export default {
|
|||||||
this.assist[aid]['items'][index].assist_is_unselected = !this.assist[aid]['items'][index].assist_is_unselected;
|
this.assist[aid]['items'][index].assist_is_unselected = !this.assist[aid]['items'][index].assist_is_unselected;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
@import '../styles/_variables.scss';
|
@import '../styles/_variables.scss';
|
||||||
|
|
||||||
.m-navbar {
|
.m-navbar {
|
||||||
background-color: #f5f5f5;
|
background-color: #f5f5f5;
|
||||||
padding: 0 24rpx;
|
padding: 0 24rpx;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*全部商品 start*/
|
/*全部商品 start*/
|
||||||
.m-navbar-item {
|
.m-navbar-item {
|
||||||
// width:172rpx;
|
// width:172rpx;
|
||||||
padding: 20rpx;
|
padding: 20rpx;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
@ -987,6 +1026,7 @@ export default {
|
|||||||
line-height: 40rpx;
|
line-height: 40rpx;
|
||||||
letter-spacing: 1rpx;
|
letter-spacing: 1rpx;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|
||||||
// overflow: hidden;
|
// overflow: hidden;
|
||||||
// white-space: nowrap;
|
// white-space: nowrap;
|
||||||
// text-overflow: ellipsis;
|
// text-overflow: ellipsis;
|
||||||
@ -1002,100 +1042,100 @@ export default {
|
|||||||
border-color: #aaa transparent transparent transparent;
|
border-color: #aaa transparent transparent transparent;
|
||||||
border-style: solid dashed dashed dashed;
|
border-style: solid dashed dashed dashed;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-navbar-item:after {
|
.m-navbar-item:after {
|
||||||
border: none;
|
border: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.m-sort {
|
.m-sort {
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-sort image {
|
.m-sort image {
|
||||||
width: 24rpx;
|
width: 24rpx;
|
||||||
height: 24rpx;
|
height: 24rpx;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
/*top: 50%;*/
|
/*top: 50%;*/
|
||||||
margin-top: 10rpx;
|
margin-top: 10rpx;
|
||||||
margin-left: 2rpx;
|
margin-left: 2rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*全部商品 end*/
|
/*全部商品 end*/
|
||||||
.m-product-price1 {
|
.m-product-price1 {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
|
|
||||||
label {
|
label {
|
||||||
font-weight: initial;
|
font-weight: initial;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-listv {
|
.m-listv {
|
||||||
.m-product-price1 {
|
.m-product-price1 {
|
||||||
width: 312rpx;
|
width: 312rpx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.num {
|
.num {
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
color: #717171;
|
color: #717171;
|
||||||
// padding-right: 20rpx;
|
// padding-right: 20rpx;
|
||||||
/*margin-left:260rpx; */
|
/*margin-left:260rpx; */
|
||||||
}
|
}
|
||||||
|
|
||||||
.u-pa .m-tab {
|
.u-pa .m-tab {
|
||||||
top: var(--window-top);
|
top: var(--window-top);
|
||||||
}
|
}
|
||||||
|
|
||||||
.u-pa .m-tab-top {
|
.u-pa .m-tab-top {
|
||||||
top: 0;
|
top: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.u-pa .m-tab-fixed {
|
.u-pa .m-tab-fixed {
|
||||||
position: fixed !important;
|
position: fixed !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.filter-box {
|
.filter-box {
|
||||||
top: var(--window-top);
|
top: var(--window-top);
|
||||||
}
|
}
|
||||||
|
|
||||||
.filter-box-top {
|
.filter-box-top {
|
||||||
top: 0;
|
top: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tag-view {
|
.tag-view {
|
||||||
margin: 10rpx 20rpx;
|
margin: 10rpx 20rpx;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-numbox-value {
|
.uni-numbox-value {
|
||||||
border: 2rpx solid #cccccc;
|
border: 2rpx solid #cccccc;
|
||||||
background-color: #ffffff;
|
background-color: #ffffff;
|
||||||
width: 150rpx;
|
width: 150rpx;
|
||||||
height: 48rpx;
|
height: 48rpx;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-dot {
|
.uni-dot {
|
||||||
width: 30rpx;
|
width: 30rpx;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
line-height: 44rpx;
|
line-height: 44rpx;
|
||||||
height: 44rpx;
|
height: 44rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-padding-wrap {
|
.uni-padding-wrap {
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
max-width: 400rpx;
|
max-width: 400rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* */
|
/* */
|
||||||
.product-list {
|
.product-list {
|
||||||
position: relative;
|
position: relative;
|
||||||
z-index: 1;
|
z-index: 1;
|
||||||
|
|
||||||
@ -1125,6 +1165,7 @@ export default {
|
|||||||
line-height: 60rpx;
|
line-height: 60rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
& {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
z-index: 10;
|
z-index: 10;
|
||||||
height: 60rpx;
|
height: 60rpx;
|
||||||
@ -1136,6 +1177,7 @@ export default {
|
|||||||
left: 0;
|
left: 0;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.flag {
|
.flag {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
@ -1192,64 +1234,61 @@ export default {
|
|||||||
left: auto;
|
left: auto;
|
||||||
width: 40px;
|
width: 40px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.placeholder-class {
|
.placeholder-class {
|
||||||
font-size: 25rpx;
|
font-size: 25rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.button {
|
.button {
|
||||||
line-height: 2;
|
line-height: 2;
|
||||||
font-size: 34rpx;
|
font-size: 34rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-common-mt {
|
.uni-common-mt {
|
||||||
margin-top: 20rpx;
|
margin-top: 20rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.u-pa {
|
.u-pa {
|
||||||
position: inherit !important;
|
position: inherit !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.u-pa .m-product-list {
|
.u-pa .m-product-list {
|
||||||
padding-top: 0rpx;
|
padding-top: 0rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.u-pa .m-tab {
|
.u-pa .m-tab {
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-product-box {
|
.m-product-box {
|
||||||
margin-top: calc(var(--window-top) + 4rpx);
|
margin-top: calc(var(--window-top) + 4rpx);
|
||||||
}
|
}
|
||||||
|
|
||||||
.dropItem {
|
.dropItem {}
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.u-pa .m-product-list {
|
.u-pa .m-product-list {}
|
||||||
|
|
||||||
}
|
.m-listv .m-product-item:nth-child(1) {
|
||||||
|
|
||||||
.m-listv .m-product-item:nth-child(1) {
|
|
||||||
margin-top: 20rpx !important;
|
margin-top: 20rpx !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-listv .m-product-item:nth-child(2) {
|
.m-listv .m-product-item:nth-child(2) {
|
||||||
margin-top: 20rpx !important;
|
margin-top: 20rpx !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.m-listv .m-product-item:nth-child(odd) {
|
.m-listv .m-product-item:nth-child(odd) {
|
||||||
margin-left: 0;
|
margin-left: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-listv .m-product-item:nth-child(even) {
|
.m-listv .m-product-item:nth-child(even) {
|
||||||
margin-right: 0;
|
margin-right: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.scroll-view_H {
|
.scroll-view_H {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
|
|
||||||
@ -1269,26 +1308,26 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.money {
|
/* .money {
|
||||||
font-size: 32rpx;
|
font-size: 32rpx;
|
||||||
font-family: PingFangSC-Medium, PingFang SC;
|
font-family: PingFangSC-Medium, PingFang SC;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
color: $default-skin-bg;
|
color: $default-skin-bg;
|
||||||
line-height: 50rpx;
|
line-height: 50rpx;
|
||||||
}
|
} */
|
||||||
|
|
||||||
.add-cart {
|
.add-cart {
|
||||||
width: 50rpx;
|
width: 50rpx;
|
||||||
height: 50rpx;
|
height: 50rpx;
|
||||||
background: $default-skin-bg;
|
background: $default-skin-bg;
|
||||||
border-radius: 18rpx;
|
border-radius: 18rpx;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
line-height: 50rpx;
|
line-height: 50rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.filter-item {
|
.filter-item {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
|
|
||||||
padding: 10rpx 18rpx;
|
padding: 10rpx 18rpx;
|
||||||
@ -1302,33 +1341,33 @@ export default {
|
|||||||
line-height: 32rpx;
|
line-height: 32rpx;
|
||||||
|
|
||||||
margin-bottom: 4rpx;
|
margin-bottom: 4rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.filter-item-on {
|
.filter-item-on {
|
||||||
color: $default-skin-bg;
|
color: $default-skin-bg;
|
||||||
border-radius: 34rpx;
|
border-radius: 34rpx;
|
||||||
border: 2rpx solid $default-skin-bg;
|
border: 2rpx solid $default-skin-bg;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-listv .m-product-name2 {
|
.m-listv .m-product-name2 {
|
||||||
line-height: 32rpx;
|
line-height: 32rpx;
|
||||||
height: 64rpx;
|
height: 64rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-on {
|
.item-on {
|
||||||
font-size: 32rpx;
|
font-size: 32rpx;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
color: #222222;
|
color: #222222;
|
||||||
line-height: 44rpx;
|
line-height: 44rpx;
|
||||||
margin-left: -10px;
|
margin-left: -10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-navbar-info {
|
.m-navbar-info {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: flex-start;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-img-number {
|
.m-img-number {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 20rpx;
|
top: 20rpx;
|
||||||
left: 18rpx;
|
left: 18rpx;
|
||||||
@ -1345,26 +1384,26 @@ export default {
|
|||||||
color: #FFFFFF;
|
color: #FFFFFF;
|
||||||
line-height: 44rpx;
|
line-height: 44rpx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-img-0 {
|
.m-img-0 {
|
||||||
background-image:url('https://static.lancerdt.com/xcxfile/appicon/rank/1.png')
|
background-image: url('https://static.shopsuite.cn/xcxfile/appicon/rank/1.png')
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-img-1 {
|
.m-img-1 {
|
||||||
background-image:url('https://static.lancerdt.com/xcxfile/appicon/rank/2.png')
|
background-image: url('https://static.shopsuite.cn/xcxfile/appicon/rank/2.png')
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-img-2 {
|
.m-img-2 {
|
||||||
background-image:url('https://static.lancerdt.com/xcxfile/appicon/rank/3.png')
|
background-image: url('https://static.shopsuite.cn/xcxfile/appicon/rank/3.png')
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-img-3 {
|
.m-img-3 {
|
||||||
background-image:url('https://static.lancerdt.com/xcxfile/appicon/rank/4.png')
|
background-image: url('https://static.shopsuite.cn/xcxfile/appicon/rank/4.png')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.m-screen {
|
.m-screen {
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
font-family: PingFangSC-Regular, PingFang SC;
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
@ -1376,18 +1415,33 @@ export default {
|
|||||||
height: 12rpx;
|
height: 12rpx;
|
||||||
margin-top: 2px;
|
margin-top: 2px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.tab-filter {
|
.tab-filter {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 60rpx;
|
height: 60rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
::-webkit-scrollbar {
|
::-webkit-scrollbar {
|
||||||
width: 0;
|
width: 0;
|
||||||
height: 0;
|
height: 0;
|
||||||
color: transparent;
|
color: transparent;
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.m-product-info1{
|
||||||
|
.points_box{
|
||||||
|
text{
|
||||||
|
color: #daa520;
|
||||||
|
height: 40rpx;
|
||||||
|
line-height: 40rpx;
|
||||||
|
padding: 0rpx 15rpx;
|
||||||
|
font-size: 24rpx;
|
||||||
|
border: 1px solid #daa520;
|
||||||
|
border-radius: 10rpx;
|
||||||
|
display: inline-block;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
335
components/loginPopup.vue
Normal file
@ -0,0 +1,335 @@
|
|||||||
|
<template>
|
||||||
|
<view class="loginPopup-container">
|
||||||
|
<uni-popup ref="popup" type="bottom" :mask-click="false" :safe-area="true" :borderRadius="'10px 10x 10px 10px'">
|
||||||
|
<view class="popup-box">
|
||||||
|
<view class="head-img"></view>
|
||||||
|
<view v-if="showCloseIcon" class="uni-icon uni-icon-closeempty" color="#888" @click="close"></view>
|
||||||
|
<view class="popup-content">
|
||||||
|
<!-- <view class="title"> 微信账号登录小发同城小程序 </view> -->
|
||||||
|
<button class="btn-login" open-type="getPhoneNumber" @getphonenumber="getPhoneNumber">
|
||||||
|
<view>手机号快捷登录</view>
|
||||||
|
</button>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</uni-popup>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { mapState, mapMutations, mapGetters } from "vuex";
|
||||||
|
export default {
|
||||||
|
name: "loginPopup",
|
||||||
|
props: {
|
||||||
|
show: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false,
|
||||||
|
},
|
||||||
|
showCloseIcon: {
|
||||||
|
type: Boolean,
|
||||||
|
default: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
tmplIds: [
|
||||||
|
"kiDj_hSF_ASwD-Dlgxnypi6IJBQZ12a-hEpd3zZ-Uxc",
|
||||||
|
// "Lq6_OHOemtmBoWGrd9zvyJ3ultzXB5metmqPtYeV0pc",
|
||||||
|
],
|
||||||
|
};
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
...mapState(["showLoginPopup", "Config"]),
|
||||||
|
},
|
||||||
|
watch: {
|
||||||
|
show: {
|
||||||
|
handler(newValue, oldValue) {
|
||||||
|
if (newValue) {
|
||||||
|
this.open();
|
||||||
|
// this.getWXLoginCode();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// deep: true,
|
||||||
|
// immediate: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
onUnload() { },
|
||||||
|
onHide() {
|
||||||
|
this.close();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
...mapMutations([
|
||||||
|
"login",
|
||||||
|
"logout",
|
||||||
|
"getPlantformInfo",
|
||||||
|
"forceUserInfo",
|
||||||
|
"getUserInfo",
|
||||||
|
"reloadUserResource",
|
||||||
|
]),
|
||||||
|
open() {
|
||||||
|
this.$refs["popup"].open("bottom");
|
||||||
|
},
|
||||||
|
close() {
|
||||||
|
this.$refs["popup"].close();
|
||||||
|
this.$emit("close");
|
||||||
|
},
|
||||||
|
getWXLoginCode() {
|
||||||
|
let that = this;
|
||||||
|
|
||||||
|
wx.login({
|
||||||
|
success: (res) => {
|
||||||
|
// 登录注册接口
|
||||||
|
if (res.code) {
|
||||||
|
// 调用服务端登录接口,发送 res.code 到服务器端换取 openId, sessionKey, unionId并存入数据库中
|
||||||
|
let params = { code: res.code };
|
||||||
|
|
||||||
|
that.$.request({
|
||||||
|
url: that.cf.URL.get_miniapp_open_id,
|
||||||
|
data: params,
|
||||||
|
success: (data, status, msg, code) => { },
|
||||||
|
fail: (err, status) => { },
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
that.$.showModal({
|
||||||
|
content: that.__("授权失败"),
|
||||||
|
showCancel: false,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
// code 换 openid sessionkey uid
|
||||||
|
async getWxOpenId() {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
var that = this;
|
||||||
|
wx.login({
|
||||||
|
success: (res) => {
|
||||||
|
if (res.code) {
|
||||||
|
that.$.request({
|
||||||
|
url: this.Config.URL.wx.get_wx_openid,
|
||||||
|
data: {
|
||||||
|
code: res.code,
|
||||||
|
},
|
||||||
|
dataType: "json",
|
||||||
|
success: function (res) {
|
||||||
|
resolve(res.openid);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
// 授权用户信息
|
||||||
|
async getUserprofile() {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
wx.getUserInfo({
|
||||||
|
success: (res) => {
|
||||||
|
resolve(res);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
// 授权手机信息 服务端解析返回手机号 并回调一键登录注册
|
||||||
|
async getPhoneNumber(e) {
|
||||||
|
var that = this;
|
||||||
|
if (e.detail.errMsg == "getPhoneNumber:ok") {
|
||||||
|
that.$.request({
|
||||||
|
url: this.Config.URL.wx.get_wx_phone_number,
|
||||||
|
data: {
|
||||||
|
code: e.detail.code,
|
||||||
|
},
|
||||||
|
success: function (res) {
|
||||||
|
that.doWxUserRegisterAndLogin(res.phoneNumber);
|
||||||
|
|
||||||
|
setTimeout(() => {
|
||||||
|
that.$.showModal({
|
||||||
|
title: "订阅提示",
|
||||||
|
content: "是否订阅活动消息通知?",
|
||||||
|
cancelText: "暂不订阅",
|
||||||
|
confirmText: "立即订阅",
|
||||||
|
success: async function (n) {
|
||||||
|
if (n.confirm) {
|
||||||
|
wx.requestSubscribeMessage({
|
||||||
|
tmplIds: that.tmplIds,
|
||||||
|
success(rsp) {
|
||||||
|
let acceptCount = 0;
|
||||||
|
let rejectCount = 0;
|
||||||
|
|
||||||
|
console.log("success res====", rsp);
|
||||||
|
|
||||||
|
for (const templateId in rsp) {
|
||||||
|
if (that.tmplIds.includes(templateId)) {
|
||||||
|
const result = rsp[templateId];
|
||||||
|
if (result === "accept") {
|
||||||
|
acceptCount++;
|
||||||
|
} else if (
|
||||||
|
result === "reject" ||
|
||||||
|
result === "ban"
|
||||||
|
) {
|
||||||
|
rejectCount++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (acceptCount > 0 && rejectCount === 0) {
|
||||||
|
uni.showToast({
|
||||||
|
title: "订阅成功",
|
||||||
|
});
|
||||||
|
} else if (acceptCount === 0 && rejectCount > 0) {
|
||||||
|
uni.showToast({
|
||||||
|
title: "已拒绝订阅",
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
uni.showToast({
|
||||||
|
title: "已订阅或拒绝",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
fail(res) {
|
||||||
|
that.$.showModal({
|
||||||
|
content: `${res.errCode}:${res.errMsg}`,
|
||||||
|
showCancel: false,
|
||||||
|
confirmText: "好的",
|
||||||
|
})
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}, 500);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
that.$.confirm(that.__("授权失败"));
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
// 一键登录注册
|
||||||
|
async doWxUserRegisterAndLogin(phoneNumber) {
|
||||||
|
const openId = await this.getWxOpenId();
|
||||||
|
const {
|
||||||
|
userInfo: { nickName, avatarUrl },
|
||||||
|
} = await this.getUserprofile();
|
||||||
|
const that = this;
|
||||||
|
|
||||||
|
this.$.request({
|
||||||
|
url: this.Config.URL.wx.doWxUserRegisterAndLogin,
|
||||||
|
data: {
|
||||||
|
nickName,
|
||||||
|
avatarUrl,
|
||||||
|
phoneNumber,
|
||||||
|
openId,
|
||||||
|
},
|
||||||
|
method: "POST",
|
||||||
|
header: {
|
||||||
|
"Content-Type": "application/json;charset=utf-8",
|
||||||
|
},
|
||||||
|
dataType: "json",
|
||||||
|
success: function (data, status, msg, code) {
|
||||||
|
if (status != 200) {
|
||||||
|
that.$.confirm(that.__(msg || "登录失败,请重试!"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
that.loginSuccess(data);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
// 成功登录回调
|
||||||
|
loginSuccess(data) {
|
||||||
|
const that = this;
|
||||||
|
|
||||||
|
that.$.setStorageSync("uid", data.user_id);
|
||||||
|
that.$.setStorageSync("ukey", data.key);
|
||||||
|
|
||||||
|
// #ifdef H5
|
||||||
|
$cookies.set("uid", data.user_id);
|
||||||
|
$cookies.set("ukey", data.key);
|
||||||
|
// #endif
|
||||||
|
|
||||||
|
that.$.request({
|
||||||
|
url: that.Config.URL.user.overview,
|
||||||
|
success: function (results, status, msg, code) {
|
||||||
|
that.login(data);
|
||||||
|
that.reloadUserResource(function (user_info) {
|
||||||
|
that.setData({
|
||||||
|
UserInfo: user_info,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
// 核心:登录成功后,向父组件发送回调通知
|
||||||
|
that.$emit("loginSuccess"); // 新增这行,通知父组件
|
||||||
|
that.close();
|
||||||
|
},
|
||||||
|
fail: function () {
|
||||||
|
// 即使获取用户详情失败,也触发回调(避免登录后无响应)
|
||||||
|
that.$emit("loginSuccess");
|
||||||
|
that.close();
|
||||||
|
that.$.confirm("登录成功,但获取用户信息失败,请重试");
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<style lang="scss">
|
||||||
|
.loginPopup-container {
|
||||||
|
background: #fff;
|
||||||
|
|
||||||
|
.popup-box {
|
||||||
|
// padding: 40rpx;
|
||||||
|
position: relative;
|
||||||
|
width: 100%;
|
||||||
|
|
||||||
|
border-top-left-radius: 32rpx;
|
||||||
|
border-top-right-radius: 32rpx;
|
||||||
|
|
||||||
|
.head-img {
|
||||||
|
width: 100%;
|
||||||
|
height: 190px;
|
||||||
|
background-image: url("https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/login-bg.png");
|
||||||
|
background-size: 100% 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.uni-icon-closeempty {
|
||||||
|
position: absolute;
|
||||||
|
right: 10px;
|
||||||
|
top: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popup-content {
|
||||||
|
padding: 40rpx;
|
||||||
|
width: 90%;
|
||||||
|
height: 400rpx;
|
||||||
|
background: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title {
|
||||||
|
font-size: 18px;
|
||||||
|
text-align: center;
|
||||||
|
font-weight: 700;
|
||||||
|
color: #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn-login {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
margin: 0 40rpx;
|
||||||
|
margin-top: 80rpx;
|
||||||
|
height: 100rpx;
|
||||||
|
font-size: 32rpx;
|
||||||
|
background: #0787f4;
|
||||||
|
border-radius: 40px;
|
||||||
|
color: #fff;
|
||||||
|
|
||||||
|
.icon-weixin {
|
||||||
|
font-size: 48rpx;
|
||||||
|
margin-right: 16rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -1,21 +1,59 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="mpvue-picker">
|
<div class="mpvue-picker">
|
||||||
<div :class="{'pickerMask':showPicker}" @click="maskClick" catchtouchmove="true"></div>
|
<div
|
||||||
<div class="mpvue-picker-content " :class="{'mpvue-picker-view-show':showPicker}">
|
:class="{ pickerMask: showPicker }"
|
||||||
|
@click="maskClick"
|
||||||
|
catchtouchmove="true"
|
||||||
|
></div>
|
||||||
|
<div
|
||||||
|
class="mpvue-picker-content"
|
||||||
|
:class="{ 'mpvue-picker-view-show': showPicker }"
|
||||||
|
>
|
||||||
<div class="mpvue-picker__hd" catchtouchmove="true">
|
<div class="mpvue-picker__hd" catchtouchmove="true">
|
||||||
<div class="mpvue-picker__action" @click="pickerCancel">{{__('取消')}}</div>
|
<div class="mpvue-picker__action" @click="pickerCancel">
|
||||||
<div class="mpvue-picker__action" :style="{color:themeColor}" @click="pickerConfirm">{{__('确定')}}</div>
|
{{ __("取消") }}
|
||||||
</div>
|
</div>
|
||||||
<picker-view indicator-style="height: 40px;" class="mpvue-picker-view" :value="pickerValue" @change="pickerChange">
|
<div
|
||||||
|
class="mpvue-picker__action"
|
||||||
|
:style="{ color: themeColor }"
|
||||||
|
@click="pickerConfirm"
|
||||||
|
>
|
||||||
|
{{ __("确定") }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<picker-view
|
||||||
|
indicator-style="height: 40px;"
|
||||||
|
class="mpvue-picker-view"
|
||||||
|
:value="pickerValue"
|
||||||
|
@change="pickerChange"
|
||||||
|
>
|
||||||
<block>
|
<block>
|
||||||
<picker-view-column>
|
<picker-view-column>
|
||||||
<div class="picker-item" v-for="(item,index) in provinceDataList" :key="index">{{item.label}}</div>
|
<div
|
||||||
|
class="picker-item"
|
||||||
|
v-for="(item, index) in provinceDataList"
|
||||||
|
:key="index"
|
||||||
|
>
|
||||||
|
{{ item.label }}
|
||||||
|
</div>
|
||||||
</picker-view-column>
|
</picker-view-column>
|
||||||
<picker-view-column>
|
<picker-view-column>
|
||||||
<div class="picker-item" v-for="(item,index) in cityDataList" :key="index">{{item.label}}</div>
|
<div
|
||||||
|
class="picker-item"
|
||||||
|
v-for="(item, index) in cityDataList"
|
||||||
|
:key="index"
|
||||||
|
>
|
||||||
|
{{ item.label }}
|
||||||
|
</div>
|
||||||
</picker-view-column>
|
</picker-view-column>
|
||||||
<picker-view-column>
|
<picker-view-column>
|
||||||
<div class="picker-item" v-for="(item,index) in areaDataList" :key="index">{{item.label}}</div>
|
<div
|
||||||
|
class="picker-item"
|
||||||
|
v-for="(item, index) in areaDataList"
|
||||||
|
:key="index"
|
||||||
|
>
|
||||||
|
{{ item.label }}
|
||||||
|
</div>
|
||||||
</picker-view-column>
|
</picker-view-column>
|
||||||
</block>
|
</block>
|
||||||
</picker-view>
|
</picker-view>
|
||||||
@ -24,9 +62,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
export default {
|
||||||
|
|
||||||
export default {
|
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
pickerValue: [0, 0, 0],
|
pickerValue: [0, 0, 0],
|
||||||
@ -36,50 +72,49 @@
|
|||||||
/* 是否显示控件 */
|
/* 是否显示控件 */
|
||||||
showPicker: false,
|
showPicker: false,
|
||||||
|
|
||||||
|
provinceData: [],
|
||||||
provinceData : [],
|
cityData: [],
|
||||||
cityData : [],
|
areaData: [],
|
||||||
areaData : [],
|
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.init()
|
this.init();
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
/* 默认值 */
|
/* 默认值 */
|
||||||
pickerValueDefault: {
|
pickerValueDefault: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default () {
|
default() {
|
||||||
return [0, 0, 0]
|
return [0, 0, 0];
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
/* 主题色 */
|
/* 主题色 */
|
||||||
themeColor: String
|
themeColor: String,
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
pickerValueDefault() {
|
pickerValueDefault() {
|
||||||
this.init();
|
this.init();
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
init() {
|
init() {
|
||||||
let that = this;
|
let that = this;
|
||||||
// 读取地区数据 【为了不同项目的小程序包体大小考虑,这里不能直接把数据放前端,可以使用服务端缓存和浏览器与小程序的本地存储来优化】
|
// 读取地区数据 【为了不同项目的小程序包体大小考虑,这里不能直接把数据放前端,可以使用服务端缓存和浏览器与小程序的本地存储来优化】
|
||||||
let district_data = uni.getStorageSync('district_data');
|
let district_data = uni.getStorageSync("district_data");
|
||||||
if (!district_data) {
|
if (!district_data) {
|
||||||
that.$.request({
|
that.$.request({
|
||||||
url: that.cf.URL.getAppDistrict,
|
url: that.cf.URL.getAppDistrict,
|
||||||
data: {},
|
data: {},
|
||||||
loading: false,
|
loading: false,
|
||||||
ajaxCache: {
|
ajaxCache: {
|
||||||
timeout: this.cf.CACHE_EXPIRE
|
timeout: this.cf.CACHE_EXPIRE,
|
||||||
},
|
},
|
||||||
success: function(data, status, msg, code) {
|
success: function (data, status, msg, code) {
|
||||||
if (status == 200) {
|
if (status == 200) {
|
||||||
uni.setStorageSync('district_data', data);
|
uni.setStorageSync("district_data", data);
|
||||||
that.setDistrictData(data);
|
that.setDistrictData(data);
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
that.setDistrictData(district_data);
|
that.setDistrictData(district_data);
|
||||||
@ -93,12 +128,13 @@
|
|||||||
|
|
||||||
this.handPickValueDefault(); // 对 pickerValueDefault 做兼容处理
|
this.handPickValueDefault(); // 对 pickerValueDefault 做兼容处理
|
||||||
|
|
||||||
|
|
||||||
this.provinceDataList = district_data.provinceData;
|
this.provinceDataList = district_data.provinceData;
|
||||||
this.cityDataList = district_data.cityData[this.pickerValueDefault[0]];
|
this.cityDataList = district_data.cityData[this.pickerValueDefault[0]];
|
||||||
|
|
||||||
|
this.areaDataList =
|
||||||
this.areaDataList = district_data.areaData[this.pickerValueDefault[0]][this.pickerValueDefault[1]];
|
district_data.areaData[this.pickerValueDefault[0]][
|
||||||
|
this.pickerValueDefault[1]
|
||||||
|
];
|
||||||
this.pickerValue = this.pickerValueDefault;
|
this.pickerValue = this.pickerValueDefault;
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -112,11 +148,11 @@
|
|||||||
},
|
},
|
||||||
pickerCancel() {
|
pickerCancel() {
|
||||||
this.showPicker = false;
|
this.showPicker = false;
|
||||||
this._$emit('onCancel');
|
this._$emit("onCancel");
|
||||||
},
|
},
|
||||||
pickerConfirm(e) {
|
pickerConfirm(e) {
|
||||||
this.showPicker = false;
|
this.showPicker = false;
|
||||||
this._$emit('onConfirm');
|
this._$emit("onConfirm");
|
||||||
},
|
},
|
||||||
showPickerView() {
|
showPickerView() {
|
||||||
this.showPicker = true;
|
this.showPicker = true;
|
||||||
@ -155,11 +191,23 @@
|
|||||||
if (this.pickerValueDefault[0] > that.provinceData.length - 1) {
|
if (this.pickerValueDefault[0] > that.provinceData.length - 1) {
|
||||||
this.pickerValueDefault[0] = that.provinceData.length - 1;
|
this.pickerValueDefault[0] = that.provinceData.length - 1;
|
||||||
}
|
}
|
||||||
if (this.pickerValueDefault[1] > that.cityData[this.pickerValueDefault[0]].length - 1) {
|
if (
|
||||||
this.pickerValueDefault[1] = that.cityData[this.pickerValueDefault[0]].length - 1;
|
this.pickerValueDefault[1] >
|
||||||
|
that.cityData[this.pickerValueDefault[0]].length - 1
|
||||||
|
) {
|
||||||
|
this.pickerValueDefault[1] =
|
||||||
|
that.cityData[this.pickerValueDefault[0]].length - 1;
|
||||||
}
|
}
|
||||||
if (this.pickerValueDefault[2] > that.areaData[this.pickerValueDefault[0]][this.pickerValueDefault[1]].length - 1) {
|
if (
|
||||||
this.pickerValueDefault[2] = that.areaData[this.pickerValueDefault[0]][this.pickerValueDefault[1]].length - 1;
|
this.pickerValueDefault[2] >
|
||||||
|
that.areaData[this.pickerValueDefault[0]][this.pickerValueDefault[1]]
|
||||||
|
.length -
|
||||||
|
1
|
||||||
|
) {
|
||||||
|
this.pickerValueDefault[2] =
|
||||||
|
that.areaData[this.pickerValueDefault[0]][
|
||||||
|
this.pickerValueDefault[1]
|
||||||
|
].length - 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -179,39 +227,43 @@
|
|||||||
changePickerValue[2] = 0;
|
changePickerValue[2] = 0;
|
||||||
}
|
}
|
||||||
this.pickerValue = changePickerValue;
|
this.pickerValue = changePickerValue;
|
||||||
this._$emit('onChange');
|
this._$emit("onChange");
|
||||||
},
|
},
|
||||||
_$emit(emitName) {
|
_$emit(emitName) {
|
||||||
let pickObj = {
|
let pickObj = {
|
||||||
label: this._getLabel(),
|
label: this._getLabel(),
|
||||||
value: this._getVale(),
|
value: this._getVale(),
|
||||||
cityCode: this._getCityCode()
|
cityCode: this._getCityCode(),
|
||||||
};
|
};
|
||||||
this.$emit(emitName, pickObj);
|
this.$emit(emitName, pickObj);
|
||||||
},
|
},
|
||||||
_getLabel() {
|
_getLabel() {
|
||||||
let pcikerLabel = [this.provinceDataList[this.pickerValue[0]].label, this.cityDataList[this.pickerValue[1]].label,
|
let pcikerLabel = [
|
||||||
this.areaDataList[this.pickerValue[2]].label
|
this.provinceDataList[this.pickerValue[0]].label,
|
||||||
|
this.cityDataList[this.pickerValue[1]].label,
|
||||||
|
this.areaDataList[this.pickerValue[2]].label,
|
||||||
];
|
];
|
||||||
|
|
||||||
return pcikerLabel;
|
return pcikerLabel;
|
||||||
},
|
},
|
||||||
_getVale() {
|
_getVale() {
|
||||||
let pcikerValue = [this.provinceDataList[this.pickerValue[0]].value, this.cityDataList[this.pickerValue[1]].value,
|
let pcikerValue = [
|
||||||
this.areaDataList[this.pickerValue[2]].value
|
this.provinceDataList[this.pickerValue[0]].value,
|
||||||
|
this.cityDataList[this.pickerValue[1]].value,
|
||||||
|
this.areaDataList[this.pickerValue[2]].value,
|
||||||
];
|
];
|
||||||
|
|
||||||
return pcikerValue;
|
return pcikerValue;
|
||||||
},
|
},
|
||||||
_getCityCode() {
|
_getCityCode() {
|
||||||
return this.areaDataList[this.pickerValue[2]].value;
|
return this.areaDataList[this.pickerValue[2]].value;
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
.pickerMask {
|
.pickerMask {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
z-index: 1000;
|
z-index: 1000;
|
||||||
top: 0;
|
top: 0;
|
||||||
@ -219,9 +271,9 @@
|
|||||||
left: 0;
|
left: 0;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
background: rgba(0, 0, 0, 0.6);
|
background: rgba(0, 0, 0, 0.6);
|
||||||
}
|
}
|
||||||
|
|
||||||
.mpvue-picker-content {
|
.mpvue-picker-content {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
@ -229,23 +281,23 @@
|
|||||||
transition: all 0.3s ease;
|
transition: all 0.3s ease;
|
||||||
transform: translateY(100%);
|
transform: translateY(100%);
|
||||||
z-index: 3000;
|
z-index: 3000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.mpvue-picker-view-show {
|
.mpvue-picker-view-show {
|
||||||
transform: translateY(0);
|
transform: translateY(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
.mpvue-picker__hd {
|
.mpvue-picker__hd {
|
||||||
display: flex;
|
display: flex;
|
||||||
padding: 9px 15px;
|
padding: 9px 15px;
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
position: relative;
|
position: relative;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
font-size: 17px;
|
font-size: 17px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.mpvue-picker__hd:after {
|
.mpvue-picker__hd:after {
|
||||||
content: ' ';
|
content: " ";
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 0;
|
left: 0;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
@ -255,37 +307,37 @@
|
|||||||
color: #e5e5e5;
|
color: #e5e5e5;
|
||||||
transform-origin: 0 100%;
|
transform-origin: 0 100%;
|
||||||
transform: scaleY(0.5);
|
transform: scaleY(0.5);
|
||||||
}
|
}
|
||||||
|
|
||||||
.mpvue-picker__action {
|
.mpvue-picker__action {
|
||||||
display: block;
|
display: block;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
color: #1aad19;
|
color: #1aad19;
|
||||||
}
|
}
|
||||||
|
|
||||||
.mpvue-picker__action:first-child {
|
.mpvue-picker__action:first-child {
|
||||||
text-align: left;
|
text-align: left;
|
||||||
color: #888;
|
color: #888;
|
||||||
}
|
}
|
||||||
|
|
||||||
.mpvue-picker__action:last-child {
|
.mpvue-picker__action:last-child {
|
||||||
text-align: right;
|
text-align: right;
|
||||||
}
|
}
|
||||||
|
|
||||||
.picker-item {
|
.picker-item {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
line-height: 40px;
|
line-height: 40px;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.mpvue-picker-view {
|
.mpvue-picker-view {
|
||||||
position: relative;
|
position: relative;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 238px;
|
height: 238px;
|
||||||
background-color: rgba(255, 255, 255, 1);
|
background-color: rgba(255, 255, 255, 1);
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -1,155 +0,0 @@
|
|||||||
<template name="pay-box">
|
|
||||||
<block></block>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
export default {
|
|
||||||
name: "pay-box",
|
|
||||||
props: {
|
|
||||||
shareDataDefault: {
|
|
||||||
type: Object,
|
|
||||||
default() {
|
|
||||||
return {
|
|
||||||
shareTitle: '',
|
|
||||||
shareText: '',
|
|
||||||
href: '',
|
|
||||||
image: ''
|
|
||||||
}
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
data(){
|
|
||||||
return {
|
|
||||||
showBoxView:false,
|
|
||||||
shareType:0
|
|
||||||
}
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
uni.getProvider({
|
|
||||||
service: "share",
|
|
||||||
success: (e) => {
|
|
||||||
//console.log("success", e);
|
|
||||||
let data = []
|
|
||||||
for (let i = 0; i < e.provider.length; i++) {
|
|
||||||
switch (e.provider[i]) {
|
|
||||||
case 'weixin':
|
|
||||||
data.push({
|
|
||||||
name: '分享到微信好友',
|
|
||||||
id: 'weixin',
|
|
||||||
sort: 0
|
|
||||||
})
|
|
||||||
data.push({
|
|
||||||
name: '分享到微信朋友圈',
|
|
||||||
id: 'weixin',
|
|
||||||
type: 'WXSenceTimeline',
|
|
||||||
sort: 1
|
|
||||||
})
|
|
||||||
break;
|
|
||||||
case 'sinaweibo':
|
|
||||||
data.push({
|
|
||||||
name: '分享到新浪微博',
|
|
||||||
id: 'sinaweibo',
|
|
||||||
sort: 2
|
|
||||||
})
|
|
||||||
break;
|
|
||||||
case 'qq':
|
|
||||||
data.push({
|
|
||||||
name: '分享到QQ',
|
|
||||||
id: 'qq',
|
|
||||||
sort: 3
|
|
||||||
})
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
this.providerList = data.sort((x, y) => {
|
|
||||||
return x.sort - y.sort
|
|
||||||
});
|
|
||||||
},
|
|
||||||
fail: (e) => {
|
|
||||||
//console.log("获取登录通道失败", e);
|
|
||||||
uni.showModal({
|
|
||||||
content: "获取登录通道失败",
|
|
||||||
showCancel: false
|
|
||||||
})
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
methods:{
|
|
||||||
|
|
||||||
share() {
|
|
||||||
if (this.providerList.length === 0) {
|
|
||||||
uni.showModal({
|
|
||||||
title: '当前环境无分享渠道!',
|
|
||||||
showCancel: false
|
|
||||||
})
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
let itemList = this.providerList.map(function (value) {
|
|
||||||
return value.name
|
|
||||||
})
|
|
||||||
|
|
||||||
var that = this;
|
|
||||||
|
|
||||||
uni.showActionSheet({
|
|
||||||
itemList: itemList,
|
|
||||||
success: (res) => {
|
|
||||||
uni.share({
|
|
||||||
provider: this.providerList[res.tapIndex].id,
|
|
||||||
scene: this.providerList[res.tapIndex].type && this.providerList[res.tapIndex].type === 'WXSenceTimeline' ? 'WXSenceTimeline' : "WXSceneSession",
|
|
||||||
type: this.shareType,
|
|
||||||
|
|
||||||
summary : this.shareDataDefault.shareText,
|
|
||||||
imageUrl : this.shareDataDefault.image,
|
|
||||||
title : this.shareDataDefault.shareTitle,
|
|
||||||
href : this.shareDataDefault.href,
|
|
||||||
|
|
||||||
success: (res) => {
|
|
||||||
//console.log("success:" + JSON.stringify(res));
|
|
||||||
},
|
|
||||||
fail: (e) => {
|
|
||||||
uni.showModal({
|
|
||||||
//content: e.errMsg,
|
|
||||||
content: '用户取消',
|
|
||||||
showCancel:false
|
|
||||||
})
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
save(){
|
|
||||||
uni.showActionSheet({
|
|
||||||
itemList:['保存图片到相册'],
|
|
||||||
success: () => {
|
|
||||||
plus.gallery.save('https://img.cdn.aliyun.dcloud.net.cn/guide/uniapp/app_download.png', function() {
|
|
||||||
uni.showToast({
|
|
||||||
title:'保存成功',
|
|
||||||
icon:'none'
|
|
||||||
})
|
|
||||||
}, function() {
|
|
||||||
uni.showToast({
|
|
||||||
title:'保存失败,请重试!',
|
|
||||||
icon:'none'
|
|
||||||
})
|
|
||||||
});
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
cancel() {
|
|
||||||
this.showBoxView = false;
|
|
||||||
this.$emit('onCancel');
|
|
||||||
},
|
|
||||||
show() {
|
|
||||||
this.share();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
</style>
|
|
||||||
@ -1,36 +1,87 @@
|
|||||||
<template name="quick-nav">
|
<template name="quick-nav">
|
||||||
<view :class="[animation ? '' : 'zhezhaoceng']" >
|
<view :class="[animation ? '' : 'zhezhaoceng']">
|
||||||
<movable-area class="movableArea">
|
<movable-area class="movableArea">
|
||||||
<movable-view class="movableView" @touchmove.stop.prevent="doNothing" direction="all" :x="initX" :y="initY">
|
<movable-view
|
||||||
|
class="movableView"
|
||||||
|
@touchmove.stop.prevent="doNothing"
|
||||||
|
direction="all"
|
||||||
|
:x="initX"
|
||||||
|
:y="initY"
|
||||||
|
>
|
||||||
<view class="u-top1" v-if="isnav">
|
<view class="u-top1" v-if="isnav">
|
||||||
<image v-if="false" src='https://static.lancerdt.com/xcxfile/appicon/nav/black/nav_icon_nav.png' class="quicknav" @click='nav'></image>
|
<image
|
||||||
<image src='https://static.lancerdt.com/xcxfile/appicon/nav/black/nav_gotop.png' :class="[!isquicknav ?'hide':'quicknav']" @click="returnTop"></image>
|
v-if="false"
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/nav/black/nav_icon_nav.png"
|
||||||
|
class="quicknav"
|
||||||
|
@click="nav"
|
||||||
|
></image>
|
||||||
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/nav/black/nav_gotop.png"
|
||||||
|
:class="[!isquicknav ? 'hide' : 'quicknav']"
|
||||||
|
@click="returnTop"
|
||||||
|
></image>
|
||||||
</view>
|
</view>
|
||||||
<view v-else @click='outnav'>
|
<view v-else @click="outnav">
|
||||||
<view class="u-top1">
|
<view class="u-top1">
|
||||||
<navigator :class="[animation ? 'navtext1' : 'navtext']" url='/pages/index/member' open-type='switchTab'><text>{{__('个人中心')}}</text>
|
<navigator
|
||||||
<image src='https://static.lancerdt.com/xcxfile/appicon/nav/gray/nav_usercenter.png' class='quicknav'></image>
|
:class="[animation ? 'navtext1' : 'navtext']"
|
||||||
|
url="/pages/index/member"
|
||||||
|
open-type="switchTab"
|
||||||
|
><text>{{ __("个人中心") }}</text>
|
||||||
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/nav/gray/nav_usercenter.png"
|
||||||
|
class="quicknav"
|
||||||
|
></image>
|
||||||
</navigator>
|
</navigator>
|
||||||
|
|
||||||
<navigator :class="[animation ? 'navtext1' : 'navtext']" url='/member/member/favorites'><text>{{__('我的收藏')}}</text>
|
<navigator
|
||||||
<image src='https://static.lancerdt.com/xcxfile/appicon/nav/gray/nav_my_favor.png' class='quicknav'></image>
|
:class="[animation ? 'navtext1' : 'navtext']"
|
||||||
|
url="/member/member/favorites"
|
||||||
|
><text>{{ __("我的收藏") }}</text>
|
||||||
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/nav/gray/nav_my_favor.png"
|
||||||
|
class="quicknav"
|
||||||
|
></image>
|
||||||
</navigator>
|
</navigator>
|
||||||
<!-- #ifndef H5 -->
|
<!-- #ifndef H5 -->
|
||||||
<view :class="[animation ? 'navtext1' : 'navtext']" @click='shareBox'><text>{{__('分享')}}</text>
|
<view
|
||||||
<image src='https://static.lancerdt.com/xcxfile/appicon/nav/gray/nav_share.png' class='quicknav'></image>
|
:class="[animation ? 'navtext1' : 'navtext']"
|
||||||
|
@click="shareBox"
|
||||||
|
><text>{{ __("分享") }}</text>
|
||||||
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/nav/gray/nav_share.png"
|
||||||
|
class="quicknav"
|
||||||
|
></image>
|
||||||
</view>
|
</view>
|
||||||
<!-- #endif -->
|
<!-- #endif -->
|
||||||
<!-- #ifdef H5 -->
|
<!-- #ifdef H5 -->
|
||||||
<view :class="[animation ? 'navtext1' : 'navtext']" @click='shareBoxPoster'><text>{{__('生成海报')}}</text>
|
<view
|
||||||
<image src='https://static.lancerdt.com/xcxfile/appicon/nav/gray/nav_share.png' class='quicknav'></image>
|
:class="[animation ? 'navtext1' : 'navtext']"
|
||||||
|
@click="shareBoxPoster"
|
||||||
|
><text>{{ __("生成海报") }}</text>
|
||||||
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/nav/gray/nav_share.png"
|
||||||
|
class="quicknav"
|
||||||
|
></image>
|
||||||
</view>
|
</view>
|
||||||
<!-- #endif -->
|
<!-- #endif -->
|
||||||
<navigator :class="[animation ? 'navtext1' : 'navtext']" url='/pages/index/index' open-type='switchTab'>
|
<navigator
|
||||||
<text>{{__('首页')}}</text>
|
:class="[animation ? 'navtext1' : 'navtext']"
|
||||||
<image src='https://static.lancerdt.com/xcxfile/appicon/nav/gray/nav_home.png' class='quicknav'></image>
|
url="/pages/index/index"
|
||||||
|
open-type="switchTab"
|
||||||
|
>
|
||||||
|
<text>{{ __("首页") }}</text>
|
||||||
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/nav/gray/nav_home.png"
|
||||||
|
class="quicknav"
|
||||||
|
></image>
|
||||||
</navigator>
|
</navigator>
|
||||||
<view class='open-nav'><text></text>
|
<view class="open-nav"
|
||||||
<image src='https://static.lancerdt.com/xcxfile/appicon/nav/black/nav_icon_close.png' class='quicknav'></image>
|
><text></text>
|
||||||
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/nav/black/nav_icon_close.png"
|
||||||
|
class="quicknav"
|
||||||
|
></image>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@ -40,90 +91,93 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: "quick-nav",
|
name: "quick-nav",
|
||||||
props: {
|
props: {
|
||||||
isquicknav: {
|
isquicknav: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false
|
default: false,
|
||||||
},
|
},
|
||||||
|
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
isnav: true,
|
isnav: true,
|
||||||
animation: true,
|
animation: true,
|
||||||
initX: '690',
|
initX: "690",
|
||||||
initY: '1336',
|
initY: "1336",
|
||||||
}
|
};
|
||||||
},
|
},
|
||||||
|
|
||||||
mounted() {
|
mounted() {
|
||||||
let view = uni.createSelectorQuery().in(this).select(".movableArea");
|
let view = uni.createSelectorQuery().in(this).select(".movableArea");
|
||||||
let that = this;
|
let that = this;
|
||||||
|
|
||||||
view.fields({
|
view
|
||||||
|
.fields(
|
||||||
|
{
|
||||||
size: true,
|
size: true,
|
||||||
scrollOffset: true
|
scrollOffset: true,
|
||||||
}, data => {
|
},
|
||||||
|
(data) => {
|
||||||
if (data) {
|
if (data) {
|
||||||
that.setData({
|
that.setData({
|
||||||
initX: data.width,
|
initX: data.width,
|
||||||
initY: data.height - 100,
|
initY: data.height - 100,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}).exec();
|
}
|
||||||
|
)
|
||||||
|
.exec();
|
||||||
},
|
},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
shareBox: function() {
|
shareBox: function () {
|
||||||
this.$emit('onShareBox', 3);
|
this.$emit("onShareBox", 3);
|
||||||
},
|
},
|
||||||
|
|
||||||
shareBoxPoster: function() {
|
shareBoxPoster: function () {
|
||||||
this.$emit('onShareBox', 3);
|
this.$emit("onShareBox", 3);
|
||||||
},
|
},
|
||||||
|
|
||||||
returnTop: function() {
|
returnTop: function () {
|
||||||
this.$emit('onReturnTop');
|
this.$emit("onReturnTop");
|
||||||
},
|
},
|
||||||
doNothing: function() {
|
doNothing: function () {},
|
||||||
},
|
nav: function () {
|
||||||
nav: function() {
|
|
||||||
this.setData({
|
this.setData({
|
||||||
isnav: false,
|
isnav: false,
|
||||||
animation: false
|
animation: false,
|
||||||
})
|
});
|
||||||
},
|
},
|
||||||
outnav: function() {
|
outnav: function () {
|
||||||
var that = this;
|
var that = this;
|
||||||
this.setData({
|
this.setData({
|
||||||
animation: true
|
animation: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
setTimeout(function() {
|
setTimeout(function () {
|
||||||
that.setData({
|
that.setData({
|
||||||
isnav: true
|
isnav: true,
|
||||||
})
|
});
|
||||||
}, 250)
|
}, 250);
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
}
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import "../styles/_variables.scss";
|
@import "../styles/_variables.scss";
|
||||||
|
|
||||||
/* 快捷导航 */
|
/* 快捷导航 */
|
||||||
.u-tap-btn {
|
.u-tap-btn {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
right: 20rpx;
|
right: 20rpx;
|
||||||
bottom: 100rpx;
|
bottom: 100rpx;
|
||||||
z-index: 999
|
z-index: 999;
|
||||||
}
|
}
|
||||||
|
|
||||||
.u-go-home {
|
.u-go-home {
|
||||||
border-radius: 100%;
|
border-radius: 100%;
|
||||||
width: 80rpx;
|
width: 80rpx;
|
||||||
height: 80rpx;
|
height: 80rpx;
|
||||||
@ -136,23 +190,23 @@
|
|||||||
opacity: 0.8;
|
opacity: 0.8;
|
||||||
line-height: 80rpx;
|
line-height: 80rpx;
|
||||||
margin-bottom: 20rpx;
|
margin-bottom: 20rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.u-go-home .iconfont {
|
.u-go-home .iconfont {
|
||||||
font-size: 36rpx;
|
font-size: 36rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.zhezhaoceng {
|
.zhezhaoceng {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
top: 0;
|
top: 0;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
z-index: 99;
|
z-index: 99;
|
||||||
animation: opacity 500ms;
|
animation: opacity 500ms;
|
||||||
animation-fill-mode: forwards
|
animation-fill-mode: forwards;
|
||||||
}
|
}
|
||||||
|
|
||||||
@keyframes opacity {
|
@keyframes opacity {
|
||||||
from {
|
from {
|
||||||
background: rgba(0, 0, 0, 0);
|
background: rgba(0, 0, 0, 0);
|
||||||
}
|
}
|
||||||
@ -160,9 +214,9 @@
|
|||||||
to {
|
to {
|
||||||
background: rgba(0, 0, 0, 0.4);
|
background: rgba(0, 0, 0, 0.4);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@keyframes opacity1 {
|
@keyframes opacity1 {
|
||||||
from {
|
from {
|
||||||
background: rgba(0, 0, 0, 0.4);
|
background: rgba(0, 0, 0, 0.4);
|
||||||
}
|
}
|
||||||
@ -170,136 +224,135 @@
|
|||||||
to {
|
to {
|
||||||
background: rgba(0, 0, 0, 0);
|
background: rgba(0, 0, 0, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.quicknav {
|
.quicknav {
|
||||||
width: 80rpx;
|
width: 80rpx;
|
||||||
height: 80rpx;
|
height: 80rpx;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@keyframes mymove1 {
|
||||||
@keyframes mymove1 {
|
|
||||||
from {
|
from {
|
||||||
bottom: 0rpx;
|
bottom: 0rpx;
|
||||||
opacity: 0
|
opacity: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
to {
|
to {
|
||||||
bottom: 420rpx;
|
bottom: 420rpx;
|
||||||
opacity: 1
|
opacity: 1;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@keyframes mymove2 {
|
@keyframes mymove2 {
|
||||||
from {
|
from {
|
||||||
bottom: 0rpx;
|
bottom: 0rpx;
|
||||||
opacity: 0
|
opacity: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
to {
|
to {
|
||||||
bottom: 320rpx;
|
bottom: 320rpx;
|
||||||
opacity: 1
|
opacity: 1;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@keyframes mymove3 {
|
@keyframes mymove3 {
|
||||||
from {
|
from {
|
||||||
bottom: 0rpx;
|
bottom: 0rpx;
|
||||||
opacity: 0
|
opacity: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
to {
|
to {
|
||||||
bottom: 220rpx;
|
bottom: 220rpx;
|
||||||
opacity: 1
|
opacity: 1;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@keyframes mymove4 {
|
@keyframes mymove4 {
|
||||||
from {
|
from {
|
||||||
bottom: 0rpx;
|
bottom: 0rpx;
|
||||||
opacity: 0
|
opacity: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
to {
|
to {
|
||||||
bottom: 120rpx;
|
bottom: 120rpx;
|
||||||
opacity: 1
|
opacity: 1;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@keyframes mymove5 {
|
@keyframes mymove5 {
|
||||||
from {
|
from {
|
||||||
bottom: 420rpx;
|
bottom: 420rpx;
|
||||||
opacity: 1
|
opacity: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
to {
|
to {
|
||||||
bottom: 10rpx;
|
bottom: 10rpx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@keyframes mymove6 {
|
@keyframes mymove6 {
|
||||||
from {
|
from {
|
||||||
bottom: 320rpx;
|
bottom: 320rpx;
|
||||||
opacity: 1
|
opacity: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
to {
|
to {
|
||||||
bottom: 10rpx;
|
bottom: 10rpx;
|
||||||
opacity: 0
|
opacity: 0;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@keyframes mymove7 {
|
@keyframes mymove7 {
|
||||||
from {
|
from {
|
||||||
bottom: 220rpx;
|
bottom: 220rpx;
|
||||||
opacity: 1
|
opacity: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
to {
|
to {
|
||||||
bottom: 10rpx;
|
bottom: 10rpx;
|
||||||
opacity: 0
|
opacity: 0;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@keyframes mymove8 {
|
@keyframes mymove8 {
|
||||||
from {
|
from {
|
||||||
bottom: 120rpx;
|
bottom: 120rpx;
|
||||||
opacity: 1
|
opacity: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
to {
|
to {
|
||||||
bottom: 10rpx;
|
bottom: 10rpx;
|
||||||
opacity: 0
|
opacity: 0;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.navtext text {
|
.navtext text {
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
min-width: 120rpx;
|
min-width: 120rpx;
|
||||||
margin-right: 20rpx
|
margin-right: 20rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navtext1 text {
|
.navtext1 text {
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
min-width: 120rpx;
|
min-width: 120rpx;
|
||||||
margin-right: 20rpx
|
margin-right: 20rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.u-tuan-label {
|
.u-tuan-label {
|
||||||
padding: 5rpx 8rpx;
|
padding: 5rpx 8rpx;
|
||||||
background-color: #DB384C;
|
background-color: #db384c;
|
||||||
border-radius: 4rpx;
|
border-radius: 4rpx;
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
margin-right: 8rpx;
|
margin-right: 8rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-product-name2 {
|
.m-product-name2 {
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
padding-right: 20rpx;
|
padding-right: 20rpx;
|
||||||
@ -309,9 +362,9 @@
|
|||||||
display: -webkit-box;
|
display: -webkit-box;
|
||||||
-webkit-box-orient: vertical;
|
-webkit-box-orient: vertical;
|
||||||
-webkit-line-clamp: 2;
|
-webkit-line-clamp: 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
.m-listv .m-product-name2 {
|
.m-listv .m-product-name2 {
|
||||||
width: 345rpx;
|
width: 345rpx;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
padding: 0 20rpx;
|
padding: 0 20rpx;
|
||||||
@ -319,5 +372,5 @@
|
|||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
display: -webkit-box;
|
display: -webkit-box;
|
||||||
-webkit-box-orient: vertical;
|
-webkit-box-orient: vertical;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@ -1,128 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="tagController">
|
|
||||||
<view class="tagContainer">
|
|
||||||
<view class="tagItem" :class="tagBgColor" v-bind:key="index" v-for="(tagText,index) in value">
|
|
||||||
<text @tap="tapTag" :data-text="tagText">{{tagText}}</text>
|
|
||||||
<text v-if="isShowDelIcon" class="tagDelIcon" @tap="delTag" :data-text="tagText">x</text>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="tagInput" v-if="isShowAdd">
|
|
||||||
<input type="text" v-model="tagString" placeholder-class="placeholder-class" placeholder="输入新的标签" />
|
|
||||||
<button type="default" size="mini" @tap="createTags">添加</button>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
export default {
|
|
||||||
name:'robby-tags',
|
|
||||||
props: ['enableDel','bgColorType','value', 'enableAdd'],
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
tagString:'',
|
|
||||||
isShowDelIcon: this.enableDel || false,
|
|
||||||
isShowAdd: this.enableAdd || false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
computed:{
|
|
||||||
tagBgColor: function(){
|
|
||||||
if(this.bgColorType === null){
|
|
||||||
return 'tagBgDefault'
|
|
||||||
}else if(this.bgColorType === 'primary'){
|
|
||||||
return 'tagBgPrimary'
|
|
||||||
}else if(this.bgColorType === 'success'){
|
|
||||||
return 'tagBgSuccess'
|
|
||||||
}else if(this.bgColorType === 'warn'){
|
|
||||||
return 'tagBgWarning'
|
|
||||||
}else if(this.bgColorType === 'error'){
|
|
||||||
return 'tagBgError'
|
|
||||||
}else{
|
|
||||||
return 'tagBgDefault'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
createTags: function(){
|
|
||||||
let tempTagArr = []
|
|
||||||
if(this.tagString.length>0){
|
|
||||||
let newvalue = this.tagString.split(/,|,/)
|
|
||||||
for(let i=0;i<newvalue.length;i++){
|
|
||||||
let newTag = newvalue[i].trim()
|
|
||||||
|
|
||||||
if(newTag !== '' && this.value.indexOf(newTag) < 0){
|
|
||||||
tempTagArr.push(newTag)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
this.tagString = ''
|
|
||||||
this.value.splice(this.value.length,0, ...tempTagArr)
|
|
||||||
this.$emit('add', {
|
|
||||||
currentTag: tempTagArr,
|
|
||||||
allTags: this.value
|
|
||||||
})
|
|
||||||
this.$emit('input', this.value)
|
|
||||||
},
|
|
||||||
delTag: function(e){
|
|
||||||
let delTagText = e.currentTarget.dataset.text
|
|
||||||
let delTagIndex = this.value.indexOf(delTagText)
|
|
||||||
this.value.splice(delTagIndex,1)
|
|
||||||
this.$emit("delete", {
|
|
||||||
currentTag: delTagText,
|
|
||||||
allTags: this.value
|
|
||||||
})
|
|
||||||
this.$emit('input', this.value)
|
|
||||||
},
|
|
||||||
tapTag: function(e){
|
|
||||||
let selTagText = e.currentTarget.dataset.text
|
|
||||||
this.$emit("click", selTagText)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
|
|
||||||
.placeholder-class{
|
|
||||||
font-size: 24rpx;
|
|
||||||
}
|
|
||||||
.tagController{
|
|
||||||
padding: 10rpx;
|
|
||||||
}
|
|
||||||
.tagContainer{
|
|
||||||
display: flex;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
justify-content: flex-start;
|
|
||||||
}
|
|
||||||
.tagItem{
|
|
||||||
padding: 10rpx 20rpx;
|
|
||||||
margin: 10rpx;
|
|
||||||
border-radius: 40rpx;
|
|
||||||
color: white;
|
|
||||||
}
|
|
||||||
.tagBgDefault{
|
|
||||||
background-color: #cfcfcf;
|
|
||||||
color: black;
|
|
||||||
}
|
|
||||||
.tagBgPrimary{
|
|
||||||
background-color: #007aff;
|
|
||||||
}
|
|
||||||
.tagBgSuccess{
|
|
||||||
background-color: #4cd964;
|
|
||||||
}
|
|
||||||
.tagBgWarning{
|
|
||||||
background-color: #f0ad4e;
|
|
||||||
}
|
|
||||||
.tagBgError{
|
|
||||||
background-color: #dd524d;
|
|
||||||
}
|
|
||||||
.tagDelIcon{
|
|
||||||
padding-left: 20rpx;
|
|
||||||
}
|
|
||||||
.tagInput{
|
|
||||||
padding: 10rpx;
|
|
||||||
}
|
|
||||||
.tagInput input{
|
|
||||||
width: 60%;
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
@ -1,125 +1,143 @@
|
|||||||
<template name="share-box-mp">
|
<template name="share-box-mp">
|
||||||
<view :class="['shareMsk', isShare?'':'hide']">
|
<view :class="['shareMsk', isShare ? '' : 'hide']">
|
||||||
<view :class="['sharebox', isShareBox?'bounceInUp animated':'bounceOutDown animated']">
|
<view
|
||||||
<view class='shareList g-flex '>
|
:class="[
|
||||||
|
'sharebox',
|
||||||
|
isShareBox ? 'bounceInUp animated' : 'bounceOutDown animated',
|
||||||
|
]"
|
||||||
|
>
|
||||||
|
<view class="shareList g-flex">
|
||||||
<!-- #ifdef MP-WEIXIN -->
|
<!-- #ifdef MP-WEIXIN -->
|
||||||
<view class='shareItem g-flex-item'>
|
<view class="shareItem g-flex-item">
|
||||||
<view class='shareBtn'>
|
<view class="shareBtn">
|
||||||
<button open-type="share" style='line-height:0' hover-class="none">
|
<button open-type="share" style="line-height: 0" hover-class="none">
|
||||||
<image src='https://static.lancerdt.com/xcxfile/appicon/images/friend.png' style='width:100rpx;height:100rpx;margin-bottom:6rpx'></image>
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/images/friend.png"
|
||||||
|
style="width: 100rpx; height: 100rpx; margin-bottom: 6rpx"
|
||||||
|
></image>
|
||||||
</button>
|
</button>
|
||||||
<label>{{__('分享给朋友')}}</label>
|
<label>{{ __("分享给朋友") }}</label>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<!-- #endif -->
|
<!-- #endif -->
|
||||||
<view class='shareItem g-flex-item'>
|
<view class="shareItem g-flex-item">
|
||||||
<view class='shareBtn' @click='shareQRCode'>
|
<view class="shareBtn" @click="shareQRCode">
|
||||||
<image src='https://static.lancerdt.com/xcxfile/appicon/images/allfriend.png' style='width:100rpx;height:100rpx'></image>
|
<image
|
||||||
<label>{{__('生成海报')}}</label>
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/images/allfriend.png"
|
||||||
|
style="width: 100rpx; height: 100rpx"
|
||||||
|
></image>
|
||||||
|
<label>{{ __("生成海报") }}</label>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class='cancelShare' @click='cancelShare'>{{__('取消')}}</view>
|
<view class="cancelShare" @click="cancelShare">{{ __("取消") }}</view>
|
||||||
</view>
|
</view>
|
||||||
<view :class="['shareCodeImg', IsJT?'':'hide']">
|
<view :class="['shareCodeImg', IsJT ? '' : 'hide']">
|
||||||
<uni-icons class="uni-icon uni-icon-clear mp-clean-icon hide" type="clear" size="20" @click='cancelShare' v-if="false"/>
|
<uni-icons
|
||||||
<view class="uni-icon uni-icon-clear mp-clean-icon" @click='cancelShare'></view>
|
class="uni-icon uni-icon-clear mp-clean-icon hide"
|
||||||
<view @click='showCodeImg'>
|
type="clear"
|
||||||
<image mode="widthFix" :src='Path'></image>
|
size="20"
|
||||||
|
@click="cancelShare"
|
||||||
|
v-if="false"
|
||||||
|
/>
|
||||||
|
<view
|
||||||
|
class="uni-icon uni-icon-clear mp-clean-icon"
|
||||||
|
@click="cancelShare"
|
||||||
|
></view>
|
||||||
|
<view @click="showCodeImg">
|
||||||
|
<image mode="widthFix" :src="Path"></image>
|
||||||
</view>
|
</view>
|
||||||
<label>{{__('保存至相册 生成海报')}}</label>
|
<label>{{ __("保存至相册 生成海报") }}</label>
|
||||||
<button type="primary" size="mini" @click="saveImg">{{__('保存图片')}}</button>
|
<button type="primary" size="mini" @click="saveImg">
|
||||||
|
{{ __("保存图片") }}
|
||||||
|
</button>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
export default {
|
||||||
export default {
|
|
||||||
name: "share-box-mp",
|
name: "share-box-mp",
|
||||||
props: {
|
props: {
|
||||||
shareDataDefault: {
|
shareDataDefault: {
|
||||||
type: Object,
|
type: Object,
|
||||||
default() {
|
default() {
|
||||||
return {
|
return {
|
||||||
shareTitle: '',
|
shareTitle: "",
|
||||||
shareText: '',
|
shareText: "",
|
||||||
href: '',
|
href: "",
|
||||||
image: '',
|
image: "",
|
||||||
price: 0
|
price: 0,
|
||||||
}
|
};
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
data(){
|
data() {
|
||||||
return {
|
return {
|
||||||
IsJT:false,
|
IsJT: false,
|
||||||
Path:"",
|
Path: "",
|
||||||
isShare:false,
|
isShare: false,
|
||||||
isShareBox:false
|
isShareBox: false,
|
||||||
}
|
};
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
cancel() {
|
cancel() {
|
||||||
this.isShareBox = false;
|
this.isShareBox = false;
|
||||||
this.isShare = false;
|
this.isShare = false;
|
||||||
this.$emit('onCancel');
|
this.$emit("onCancel");
|
||||||
},
|
},
|
||||||
show() {
|
show() {
|
||||||
this.isShareBox = true;
|
this.isShareBox = true;
|
||||||
this.isShare = true;
|
this.isShare = true;
|
||||||
},
|
},
|
||||||
|
|
||||||
cancelShare: function() {
|
cancelShare: function () {
|
||||||
this.isShareBox = false;
|
this.isShareBox = false;
|
||||||
this.isShare = false;
|
this.isShare = false;
|
||||||
this.IsJT = false;
|
this.IsJT = false;
|
||||||
|
|
||||||
this.$emit('cancelShare')
|
this.$emit("cancelShare");
|
||||||
},
|
},
|
||||||
shareQRCode: function(e) {
|
shareQRCode: function (e) {
|
||||||
var that = this;
|
var that = this;
|
||||||
var params = {
|
var params = {
|
||||||
MainPrice: this.shareDataDefault.price,
|
MainPrice: this.shareDataDefault.price,
|
||||||
|
|
||||||
summary : this.shareDataDefault.shareText,
|
summary: this.shareDataDefault.shareText,
|
||||||
MainImg : this.shareDataDefault.image,
|
MainImg: this.shareDataDefault.image,
|
||||||
MainTitle : this.shareDataDefault.shareTitle,
|
MainTitle: this.shareDataDefault.shareTitle,
|
||||||
Path : this.shareDataDefault.href,
|
Path: this.shareDataDefault.href,
|
||||||
source_from: 'wxminiapp',
|
source_from: "wxminiapp",
|
||||||
|
|
||||||
poster_name:this.shareDataDefault.shareText,
|
poster_name: this.shareDataDefault.shareText,
|
||||||
path : this.shareDataDefault.href,
|
path: this.shareDataDefault.href,
|
||||||
};
|
};
|
||||||
|
|
||||||
let url = that.cf.URL.wx.getMiniAppQRCodeUnlimitPoster;
|
let url = that.cf.URL.wx.getMiniAppQRCodeUnlimitPoster;
|
||||||
|
|
||||||
if (this.shareDataDefault.price > 0)
|
if (this.shareDataDefault.price > 0) {
|
||||||
{
|
|
||||||
// #ifdef H5
|
// #ifdef H5
|
||||||
url = that.cf.URL.fx.poster;
|
url = that.cf.URL.fx.poster;
|
||||||
params['poster_type'] = 1;
|
params["poster_type"] = 1;
|
||||||
// #endif
|
// #endif
|
||||||
// #ifdef MP-WEIXIN
|
// #ifdef MP-WEIXIN
|
||||||
params['poster_type'] = 2
|
params["poster_type"] = 2;
|
||||||
// #endif
|
// #endif
|
||||||
// #ifdef APP-PLUS
|
// #ifdef APP-PLUS
|
||||||
params['poster_type'] = 1
|
params["poster_type"] = 1;
|
||||||
// #endif
|
// #endif
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
url = that.cf.URL.fx.poster;
|
url = that.cf.URL.fx.poster;
|
||||||
|
|
||||||
// #ifdef H5
|
// #ifdef H5
|
||||||
params['poster_type'] = 1;
|
params["poster_type"] = 1;
|
||||||
// #endif
|
// #endif
|
||||||
// #ifdef MP-WEIXIN
|
// #ifdef MP-WEIXIN
|
||||||
params['poster_type'] = 2
|
params["poster_type"] = 2;
|
||||||
// #endif
|
// #endif
|
||||||
// #ifdef APP-PLUS
|
// #ifdef APP-PLUS
|
||||||
params['poster_type'] = 1
|
params["poster_type"] = 1;
|
||||||
// #endif
|
// #endif
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -127,25 +145,25 @@
|
|||||||
that.$.request({
|
that.$.request({
|
||||||
url: url,
|
url: url,
|
||||||
data: params,
|
data: params,
|
||||||
method:"POST",
|
method: "POST",
|
||||||
success: function(data, status, msg, code) {
|
success: function (data, status, msg, code) {
|
||||||
that.setData({
|
that.setData({
|
||||||
Path: data.url || data.poster_url,
|
Path: data.url || data.poster_url,
|
||||||
isShare: true,
|
isShare: true,
|
||||||
isShareBox: false,
|
isShareBox: false,
|
||||||
IsJT: true
|
IsJT: true,
|
||||||
})
|
});
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
this.$emit('shareQRCode')
|
this.$emit("shareQRCode");
|
||||||
},
|
},
|
||||||
saveImg: function(e) {
|
saveImg: function (e) {
|
||||||
var that = this;
|
var that = this;
|
||||||
// #ifdef MP-WEIXIN
|
// #ifdef MP-WEIXIN
|
||||||
// 在合适的位置调用该方法,请求用户授权
|
// 在合适的位置调用该方法,请求用户授权
|
||||||
uni.authorize({
|
uni.authorize({
|
||||||
scope: 'scope.writePhotosAlbum',
|
scope: "scope.writePhotosAlbum",
|
||||||
success() {
|
success() {
|
||||||
// 用户同意授权,可以进行图片下载操作
|
// 用户同意授权,可以进行图片下载操作
|
||||||
that.saveImgFun();
|
that.saveImgFun();
|
||||||
@ -153,87 +171,88 @@
|
|||||||
fail() {
|
fail() {
|
||||||
// 用户拒绝授权,可以提示用户重新授权
|
// 用户拒绝授权,可以提示用户重新授权
|
||||||
uni.showModal({
|
uni.showModal({
|
||||||
title: '授权提示',
|
title: "授权提示",
|
||||||
content: '您拒绝了授权,如需下载图片,请点击下方按钮重新授权。',
|
content: "您拒绝了授权,如需下载图片,请点击下方按钮重新授权。",
|
||||||
confirmText: '重新授权',
|
confirmText: "重新授权",
|
||||||
success(res) {
|
success(res) {
|
||||||
if (res.confirm) {
|
if (res.confirm) {
|
||||||
// 用户点击重新授权,再次请求授权
|
// 用户点击重新授权,再次请求授权
|
||||||
uni.openSetting({
|
uni.openSetting({
|
||||||
success(res) {
|
success(res) {
|
||||||
if (res.authSetting['scope.writePhotosAlbum']) {
|
if (res.authSetting["scope.writePhotosAlbum"]) {
|
||||||
// 用户同意授权,可以进行图片下载操作
|
// 用户同意授权,可以进行图片下载操作
|
||||||
that.saveImgFun();
|
that.saveImgFun();
|
||||||
} else {
|
} else {
|
||||||
// 用户再次拒绝授权,可以提示用户授权失败
|
// 用户再次拒绝授权,可以提示用户授权失败
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: '授权失败',
|
title: "授权失败",
|
||||||
icon: 'none'
|
icon: "none",
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
});
|
||||||
}
|
}
|
||||||
})
|
},
|
||||||
}
|
});
|
||||||
}
|
},
|
||||||
})
|
});
|
||||||
}
|
|
||||||
})
|
|
||||||
// #endif
|
// #endif
|
||||||
// #ifndef MP-WEIXIN
|
// #ifndef MP-WEIXIN
|
||||||
this.saveImgFun();
|
this.saveImgFun();
|
||||||
// #endif
|
// #endif
|
||||||
},
|
},
|
||||||
saveImgFun: function(e) {
|
saveImgFun: function (e) {
|
||||||
var that = this;
|
var that = this;
|
||||||
that.$.showLoading();
|
that.$.showLoading();
|
||||||
that.$.downloadFile({
|
that.$.downloadFile({
|
||||||
url: that.Path,
|
url: that.Path,
|
||||||
success: function(t) {
|
success: function (t) {
|
||||||
that.$.hideLoading();
|
that.$.hideLoading();
|
||||||
that.$.saveImageToPhotosAlbum({
|
that.$.saveImageToPhotosAlbum({
|
||||||
filePath: t.tempFilePath,
|
filePath: t.tempFilePath,
|
||||||
success: function() {
|
success: function () {
|
||||||
that.setData({
|
that.setData({
|
||||||
Path: "",
|
Path: "",
|
||||||
isShare: false,
|
isShare: false,
|
||||||
isShareBox: false,
|
isShareBox: false,
|
||||||
IsJT: false
|
IsJT: false,
|
||||||
}), that.$.alert("保存图片成功!")
|
}),
|
||||||
|
that.$.alert("保存图片成功!");
|
||||||
},
|
},
|
||||||
fail: function(e) {
|
fail: function (e) {
|
||||||
that.$.hideLoading()
|
that.$.hideLoading();
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
fail: function(e) {
|
});
|
||||||
that.$.hideLoading()
|
},
|
||||||
}
|
fail: function (e) {
|
||||||
})
|
that.$.hideLoading();
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
that.$.hideLoading()
|
that.$.hideLoading();
|
||||||
|
|
||||||
this.$emit('saveImg')
|
this.$emit("saveImg");
|
||||||
},
|
},
|
||||||
showCodeImg: function() {
|
showCodeImg: function () {
|
||||||
let that = this;
|
let that = this;
|
||||||
that.$.previewImage({
|
that.$.previewImage({
|
||||||
current: that.Path,
|
current: that.Path,
|
||||||
urls: [that.Path]
|
urls: [that.Path],
|
||||||
})
|
});
|
||||||
|
|
||||||
this.$emit('showCodeImg')
|
this.$emit("showCodeImg");
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
}
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
.mp-clean-icon{
|
.mp-clean-icon {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 8rpx;
|
right: 8rpx;
|
||||||
top: 8rpx;
|
top: 8rpx;
|
||||||
color: #999999;
|
color: #999999;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
|||||||
@ -1,351 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view>
|
|
||||||
<!-- 商品分类 -->
|
|
||||||
<uni-drawer :visible="rightDrawerVisible" mode="right" @close="closeDrawer()" >
|
|
||||||
<view class="m-tab">
|
|
||||||
<view class="m-navbar">
|
|
||||||
<view :class="['m-navbar-item', tapindex==1?'m-navbar-item-on':'']" @click="onecategorys">
|
|
||||||
{{__('一级分类')}}
|
|
||||||
</view>
|
|
||||||
<view :class="['m-navbar-item', tapindex==2?'m-navbar-item-on':'']">
|
|
||||||
{{__('二级分类')}}
|
|
||||||
</view>
|
|
||||||
<view :class="['m-navbar-item', tapindex==3?'m-navbar-item-on':'']">
|
|
||||||
{{__('三级分类')}}
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<scroll-view scroll-y="true" style="height: 100%">
|
|
||||||
<view class="m-cells" style="padding:20rpx 20rpx;" v-for="(category,ii) in categorys" :key="ii">
|
|
||||||
<view class="m-cell m-cell-access m-info-sp" :data-category_id="category.category_id" :data-category_name="category.category_name" @click="getCate">
|
|
||||||
<view class="m-cell-bd">
|
|
||||||
<view class="m-order-title">
|
|
||||||
<label class="m-ber-n">{{category.category_name}}</label>
|
|
||||||
<label>
|
|
||||||
<image class="nav-image" lazy-load src="/static/images/nav.png" mode="scaleToFill" />
|
|
||||||
</label>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</scroll-view>
|
|
||||||
</uni-drawer>
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import uniDrawer from '@/components/uni-drawer.vue';
|
|
||||||
import { mapState, mapMutations } from 'vuex';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
props: {
|
|
||||||
rightDrawerVisible: {
|
|
||||||
type: Boolean,
|
|
||||||
default: false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
index:0,
|
|
||||||
tapindex: 1,
|
|
||||||
deep:0,
|
|
||||||
categorys:[]
|
|
||||||
};
|
|
||||||
},
|
|
||||||
|
|
||||||
components: {
|
|
||||||
uniDrawer
|
|
||||||
},
|
|
||||||
computed: mapState([
|
|
||||||
'Config',
|
|
||||||
'StateCode',
|
|
||||||
'notice',
|
|
||||||
'plantformInfo',
|
|
||||||
'shopInfo',
|
|
||||||
'userInfo',
|
|
||||||
'hasLogin'
|
|
||||||
]),
|
|
||||||
created() {
|
|
||||||
var that = this;
|
|
||||||
|
|
||||||
this.GetPlist(function() {
|
|
||||||
that.pdlist.length == 0 ? that.setData({ isdata: false }) : that.setData({ isdata: true });
|
|
||||||
});
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
...mapMutations(['login', 'logout', 'getPlantformInfo', 'forceUserInfo', 'getUserInfo']),
|
|
||||||
|
|
||||||
onecategorys: function(){
|
|
||||||
this.setData({
|
|
||||||
deep:1,
|
|
||||||
category_id:0,
|
|
||||||
tapindex:1
|
|
||||||
})
|
|
||||||
this.getcategorys()
|
|
||||||
},
|
|
||||||
getCate: function(e){
|
|
||||||
var that = this;
|
|
||||||
switch (that.tapindex) {
|
|
||||||
case 1:
|
|
||||||
that.setData({
|
|
||||||
deep:that.tapindex,
|
|
||||||
category_id:e.currentTarget.dataset.category_id,
|
|
||||||
onecategory:e.currentTarget.dataset.category_name,
|
|
||||||
tapindex:2
|
|
||||||
})
|
|
||||||
that.getcategorys()
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
that.setData({
|
|
||||||
deep:that.tapindex,
|
|
||||||
category_id:e.currentTarget.dataset.category_id,
|
|
||||||
twocategory:e.currentTarget.dataset.category_name,
|
|
||||||
tapindex:3
|
|
||||||
})
|
|
||||||
that.getcategorys()
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
that.setData({
|
|
||||||
threecategory:e.currentTarget.dataset.category_name,
|
|
||||||
category_id:e.currentTarget.dataset.category_id,
|
|
||||||
tapindex:1,
|
|
||||||
deep:1,
|
|
||||||
rightDrawerVisible:false
|
|
||||||
})
|
|
||||||
that.commodity_name = that.onecategory + '>' + that.twocategory + '>' + that.threecategory
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
getcategorys: function(e){
|
|
||||||
var that = this;
|
|
||||||
var params = {
|
|
||||||
deep:that.deep
|
|
||||||
};
|
|
||||||
|
|
||||||
if(that.category_id !== 0){
|
|
||||||
params.category_id= that.category_id
|
|
||||||
|
|
||||||
}
|
|
||||||
that.$.request({
|
|
||||||
url: that.Config.URL.product.category,
|
|
||||||
data: params,
|
|
||||||
success: function(data, status, msg, code) {
|
|
||||||
if(status == 200){
|
|
||||||
that.setData({
|
|
||||||
categorys:data.items
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
@import '../styles/_variables.scss';
|
|
||||||
|
|
||||||
/*全部商品 start*/
|
|
||||||
.m-navbar-item {
|
|
||||||
padding: 20rpx 0;
|
|
||||||
font-size: 24rpx;
|
|
||||||
i {
|
|
||||||
font-size: 0rpx;
|
|
||||||
line-height: 0;
|
|
||||||
vertical-align: middle;
|
|
||||||
display: inline-block;
|
|
||||||
width: 0rpx;
|
|
||||||
height: 0rpx;
|
|
||||||
margin-left: 9.375rpx;
|
|
||||||
border-width: 9.375rpx;
|
|
||||||
border-color: #aaa transparent transparent transparent;
|
|
||||||
border-style: solid dashed dashed dashed;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.m-navbar-item:after {
|
|
||||||
border: none;
|
|
||||||
}
|
|
||||||
.m-navbar-item.m-navbar-item-on {
|
|
||||||
background-color: #fff;
|
|
||||||
color: $default-skin-bg;
|
|
||||||
i {
|
|
||||||
border-color: $default-skin-bg transparent transparent;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.m-navbar-item.m-navbar-item-on::before {
|
|
||||||
content: ' ';
|
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
|
||||||
bottom: 0;
|
|
||||||
right: 0;
|
|
||||||
height: 6rpx;
|
|
||||||
border-bottom: 6rpx solid $default-skin-bg;
|
|
||||||
color: #cccccc;
|
|
||||||
-webkit-transform-origin: 0 100%;
|
|
||||||
transform-origin: 0 100%;
|
|
||||||
-webkit-transform: scaleY(0.5);
|
|
||||||
transform: scaleY(0.5);
|
|
||||||
z-index: 3;
|
|
||||||
}
|
|
||||||
.m-sort {
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
.m-sort image {
|
|
||||||
width: 24rpx;
|
|
||||||
height: 24rpx;
|
|
||||||
position: absolute;
|
|
||||||
/*top: 50%;*/
|
|
||||||
margin-top: 10rpx;
|
|
||||||
margin-left: 2rpx;
|
|
||||||
}
|
|
||||||
/*全部商品 end*/
|
|
||||||
.m-product-price1 {
|
|
||||||
width: 100%;
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-between;
|
|
||||||
}
|
|
||||||
.num {
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #717171;
|
|
||||||
padding-right: 20rpx;
|
|
||||||
/*margin-left:260rpx; */
|
|
||||||
}
|
|
||||||
|
|
||||||
.u-pa .m-tab {
|
|
||||||
top: var(--window-top);
|
|
||||||
}
|
|
||||||
.u-pa .m-tab-top {
|
|
||||||
top: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.filter-box {
|
|
||||||
top: var(--window-top);
|
|
||||||
}
|
|
||||||
|
|
||||||
.filter-box-top {
|
|
||||||
top: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tag-view {
|
|
||||||
margin: 10rpx 20rpx;
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uni-numbox-value {
|
|
||||||
border: 2rpx solid #cccccc;
|
|
||||||
background-color: #ffffff;
|
|
||||||
width: 150rpx;
|
|
||||||
height: 48rpx;
|
|
||||||
text-align: center;
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
.uni-dot {
|
|
||||||
width: 30rpx;
|
|
||||||
height: 100%;
|
|
||||||
text-align: center;
|
|
||||||
display: inline-block;
|
|
||||||
line-height: 44rpx;
|
|
||||||
height: 44rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uni-padding-wrap {
|
|
||||||
overflow: hidden;
|
|
||||||
max-width: 400rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* */
|
|
||||||
.product-list {
|
|
||||||
position: relative;
|
|
||||||
z-index: 1;
|
|
||||||
&:hover {
|
|
||||||
z-index: 2;
|
|
||||||
}
|
|
||||||
.flag {
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
left: 50%;
|
|
||||||
z-index: 2;
|
|
||||||
width: 64px;
|
|
||||||
height: 20px;
|
|
||||||
margin-left: -32px;
|
|
||||||
font-size: 12px;
|
|
||||||
line-height: 20px;
|
|
||||||
text-align: center;
|
|
||||||
color: #fff;
|
|
||||||
}
|
|
||||||
.flag-reduction {
|
|
||||||
background-color: #e50dbb;
|
|
||||||
z-index: 8;
|
|
||||||
}
|
|
||||||
|
|
||||||
.flag-saleoff {
|
|
||||||
background-color: #e53935;
|
|
||||||
z-index: 7;
|
|
||||||
}
|
|
||||||
|
|
||||||
.flag-postfree {
|
|
||||||
background-color: #ffac13;
|
|
||||||
z-index: 6;
|
|
||||||
}
|
|
||||||
|
|
||||||
.flag-bargain {
|
|
||||||
background-color: #ffac13;
|
|
||||||
z-index: 4;
|
|
||||||
}
|
|
||||||
|
|
||||||
.flag-gift {
|
|
||||||
background-color: #2196f3;
|
|
||||||
z-index: 3;
|
|
||||||
}
|
|
||||||
|
|
||||||
.flag-new {
|
|
||||||
background-color: #83c44e;
|
|
||||||
z-index: 5;
|
|
||||||
}
|
|
||||||
|
|
||||||
.flag-selfsupport {
|
|
||||||
background-color: #f44336;
|
|
||||||
z-index: 10;
|
|
||||||
|
|
||||||
position: absolute;
|
|
||||||
|
|
||||||
top: 1px;
|
|
||||||
right: 5px;
|
|
||||||
left: auto;
|
|
||||||
width: 40px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.placeholder-class{
|
|
||||||
font-size: 25rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.button{
|
|
||||||
line-height: 2;
|
|
||||||
font-size: 34rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.uni-common-mt{
|
|
||||||
margin-top: 20rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.u-pa {
|
|
||||||
position: inherit!important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.u-pa .m-product-list
|
|
||||||
{
|
|
||||||
padding-top:0rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.u-pa .m-tab{
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
@ -1,184 +0,0 @@
|
|||||||
const citys = [
|
|
||||||
{
|
|
||||||
"letter": "A",
|
|
||||||
"list": [
|
|
||||||
"安远","安义","安溪","安丘","安宁","安吉","安福","阿城","安阳","安顺","鞍山","安庆","安康","阿里",
|
|
||||||
"阿勒泰","阿拉善盟","阿克苏","阿坝"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "B",
|
|
||||||
"list": [
|
|
||||||
"北京","博兴","博罗","博爱","璧山","宾阳","宾县","滨海","巴彦","宝应","亳州","博尔塔拉","滨州","毕节",
|
|
||||||
"本溪","北海","巴中","巴音郭楞","巴彦淖尔","包头","保山","宝鸡","保定","蚌埠","白银","白山","百色","白城"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "C",
|
|
||||||
"list": [
|
|
||||||
"成都","常州","长沙","长春","重庆","朝阳","巢湖","长治","昌吉","昌都","常德","沧州","郴州","承德","潮州",
|
|
||||||
"滁州","楚雄","崇左","池州","赤峰","枞阳","从化","慈溪","淳安","崇州","崇义","崇仁","茌平","成武","城口",
|
|
||||||
"呈贡","潮安","昌邑","长兴","长汀","长泰","常熟","常山","昌乐","长乐","长海","长丰","长岛","曹县","苍山",
|
|
||||||
"苍南"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "D",
|
|
||||||
"list": [
|
|
||||||
"丹东","大理","东莞","大连","大兴安岭","大同","大庆","德州","德阳","德宏","达州","大丰","东营","迪庆",
|
|
||||||
"定西","单县","当涂","砀山","岱山","大邑","大田","大埔","丹阳","德化","德安","大足","大余","德庆","德清",
|
|
||||||
"登封","德惠","定南","垫江","电白","德兴","东海","东阿","定远","定陶","东台","东山","东平","东明","东源",
|
|
||||||
"东阳","东乡","洞头","都江堰","都昌","东至"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "E",
|
|
||||||
"list": [
|
|
||||||
"鄂尔多斯","恩施","恩平","鄂州"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "F",
|
|
||||||
"list": [
|
|
||||||
"佛山","福州","防城港","抚顺","阜新","阜阳","抚州","法库","富阳","福清","阜宁","阜南","富民","浮梁","福鼎",
|
|
||||||
"福安","佛冈","分宜","凤阳","奉新","丰县","凤台","丰顺","封开","奉节","奉化","丰都","丰城","费县","肥西",
|
|
||||||
"肥东","肥城","方正","繁昌"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "G",
|
|
||||||
"list": [
|
|
||||||
"广州","贵阳","甘南","赣州","甘孜","广安","广元","贵港","桂林","果洛","固原","赣县","赣榆","高安","固镇",
|
|
||||||
"古田","贵溪","灌云","冠县","灌南","光泽","广饶","广宁","广丰","广德","广昌","巩义","高州","高邮","高邑",
|
|
||||||
"高要","高唐","高青","高密","高陵","皋兰","高淳","藁城"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "H",
|
|
||||||
"list": [
|
|
||||||
"杭州","哈尔滨","邯郸","海口","黑河","合肥","鹤岗","河池","鹤壁","汉中","哈密","海西","海南","海东","海北",
|
|
||||||
"惠州","呼伦贝尔","葫芦岛","呼和浩特","黄石","黄山","黄南","黄冈","淮南","怀化","淮北","淮安","红河","贺州",
|
|
||||||
"菏泽","河源","和田地","衡阳","衡水","怀远","怀宁","怀集","桦甸","华安","洪泽","和县","鹤山","和平","横县",
|
|
||||||
"横峰","合川","含山","海阳","海盐","海宁","海门","海丰","海安","湖州","户县","霍山","霍邱","呼兰","湖口",
|
|
||||||
"惠民","惠来","惠东","会昌","惠安","化州","桓台"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "J",
|
|
||||||
"list": [
|
|
||||||
"鸡西","酒泉","九江","锦州","晋中","济宁","金华","荆州","荆门","景德镇","晋城","金昌","揭阳","嘉峪关","吉安",
|
|
||||||
"江门","佳木斯","济南","吉林","嘉兴","焦作","井冈山","旌德","靖安","即墨","揭西","界首","揭东","嘉祥","嘉善",
|
|
||||||
"胶州","胶南","蕉岭","蛟河","吉安","建阳","建瓯","建宁","建湖","江阴","姜堰","江山","将乐","江津","江都","建德",
|
|
||||||
"九台","九江","吉水","晋州","金寨","缙云","金乡","金溪","进贤","金堂","金坛","晋宁","金门","晋江","金湖","井陉",
|
|
||||||
"泾县","景宁","靖江","巨野","莒县","句容","莒南","鄄城","济源","济阳","绩溪"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "K",
|
|
||||||
"list": [
|
|
||||||
"昆明","开封","喀什地","克拉玛依","克孜勒","开化","开平","开县","开阳","康平","垦利","昆山"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "L",
|
|
||||||
"list": [
|
|
||||||
"连云港","凉山","乐山","拉萨","廊坊","莱芜","来宾","洛阳","柳州","兰州","六盘水","六安","丽水","林芝","临沂","临夏",
|
|
||||||
"临汾","临沧","丽江","辽源","辽阳","聊城","乐亭","乐清","乐平","乐陵","雷州","乐昌","乐安","兰溪","蓝田","郎溪",
|
|
||||||
"莱州","莱阳","莱西","来安","吕梁","泸州","漯河","娄底","龙岩","陇南","临邑","临沭","临朐","临泉","临清","临海",
|
|
||||||
"陵县","灵寿","灵璧","临安","利津","黎川","辽中","连州","涟水","连山","连平","连南","廉江","连江","莲花","梁山",
|
|
||||||
"梁平","连城","鹿寨","芦溪","禄劝","鹿泉","罗源","洛宁","罗定","庐江","陆河","陆丰","滦县","滦南","栾川","栾城",
|
|
||||||
"龙游","龙泉","龙南","龙门","龙口","龙海","龙川","隆安","溧阳","利辛","浏阳","柳江","柳城","溧水"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "M",
|
|
||||||
"list": [
|
|
||||||
"马鞍山","茂名","眉山","梅州","绵阳","牡丹江","马山","梅县","蒙城","孟津","蒙阴","孟州","明光","明溪","闽侯","闽清",
|
|
||||||
"木兰"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "N",
|
|
||||||
"list": [
|
|
||||||
"南昌","南京","南宁","南通","宁波","南充","南平","南阳","那曲","内江","宁德","怒江","南安","南澳","南城","南川","南丰",
|
|
||||||
"南靖","南康","南陵","南雄","宁都","宁国","宁海","宁化","宁津","宁乡","宁阳","农安"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "P",
|
|
||||||
"list": [
|
|
||||||
"盘锦","攀枝花","平顶山","平凉","萍乡","普洱","莆田","濮阳","磐安","磐石","沛县","蓬莱","彭水","彭泽","彭州","平度",
|
|
||||||
"平和","平湖","屏南","平山","平潭","平阳","平阴","平邑","平原","平远","郫县","邳州","鄱阳","浦城","浦江","蒲江","普兰店",
|
|
||||||
"普宁"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "Q",
|
|
||||||
"list": [
|
|
||||||
"青岛","泉州","黔东","黔南","黔西南","庆阳","清远","秦皇岛","钦州","齐齐哈尔","七台河","曲靖","衢州","迁安","潜山","铅山",
|
|
||||||
"迁西","启东","齐河","綦江","祁门","清流","青田","清新","青阳","庆元","庆云","清镇","青州","沁阳","邛崃","栖霞","全椒",
|
|
||||||
"曲江","曲阜","全南"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "R",
|
|
||||||
"list": [
|
|
||||||
"日喀则","日照","饶平","仁化","融安","荣昌","荣成","融水","如东","如皋","瑞安","瑞昌","瑞金","乳山","汝阳","乳源"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "S",
|
|
||||||
"list": [
|
|
||||||
"上海","沈阳","深圳","石家庄","苏州","三门峡","三明","三亚","商丘","商洛","上饶","汕尾","汕头","绍兴","韶关","山南","邵阳",
|
|
||||||
"十堰","双鸭山","石嘴山","绥化","松原","四平","朔州","泗阳","泗县","泗水","四会","泗洪","沭阳","顺昌","舒兰","舒城","双流",
|
|
||||||
"双城","寿县","寿宁","寿光","石柱","始兴","石台","石狮","石林","石城","射阳","歙县","深泽","莘县","嵊州","嵊泗","沙县","绍兴",
|
|
||||||
"邵武","尚志","上虞","上犹","上饶","上林","上栗","商河","上杭","上高","诏安","三门","三江","松阳","嵩县","松溪","嵩明","宿州",
|
|
||||||
"宿迁","随州","遂宁","宿松","遂溪","濉溪","睢宁","遂川","遂昌","宿豫"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "T",
|
|
||||||
"list": [
|
|
||||||
"天津","台州","唐山","塔城地","泰安","太原","泰州","天水","铁岭","铜川","通化","通辽","铜陵","铜仁", "通州","桐乡","铜山","潼南",
|
|
||||||
"桐庐","铜陵","铜梁","通河","铜鼓","桐城","天台","天长","滕州","唐海","郯城","泰兴","泰顺","台山","泰宁","太湖","泰和","太和","太仓",
|
|
||||||
"吐鲁番"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "W",
|
|
||||||
"list": [
|
|
||||||
"潍坊","威海","武汉","无锡","渭南","文山","温州","乌海","芜湖","乌兰察布","乌鲁木齐","武威","吴忠","武陟","婺源","武夷山","武义","巫溪",
|
|
||||||
"无为","巫山","武平","武宁","武鸣","武隆","五莲","吴江","无极","五华","芜湖","五河","无棣","吴川","武城","五常","涡阳","温县","汶上",
|
|
||||||
"温岭","翁源","文登","文成","微山","万载","万年","望江","望城","万安","瓦房店","梧州"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "X",
|
|
||||||
"list": [
|
|
||||||
"厦门","西安","许昌","徐州","襄樊","湘潭","湘西","咸宁","咸阳","孝感","锡林郭勒盟","兴安盟","邢台","西宁","新乡","信阳","新余","忻州",
|
|
||||||
"西双版纳","宣城","峡江","夏津","象山","响水","仙居","仙游","萧县","霞浦","息烽","新安","新昌","信丰","新丰","新干","兴国","兴化","兴宁",
|
|
||||||
"行唐","荥阳","星子","辛集","新建","新津","新乐","新民","新密","新泰","新兴","新沂","信宜","新郑","休宁","秀山","修水","修文","修武",
|
|
||||||
"寻甸","盱眙","徐闻","寻乌"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "Y",
|
|
||||||
"list": [
|
|
||||||
"扬州","烟台","雅安","延安","延边","盐城","阳江","阳泉","宜宾","宜昌","伊春","宜春","伊犁哈萨克","银川","营口","鹰潭","益阳","永州","岳阳",
|
|
||||||
"玉林","榆林","运城","云浮","玉树","玉溪","阳春","阳东","阳谷","阳山","阳信","阳西","扬中","偃师","延寿","兖州","伊川","宜丰","宜黄","依兰",
|
|
||||||
"宜良","沂南","英德","颍上","沂水","义乌","黟县","宜兴","弋阳","宜阳","沂源","仪征","永安","永川","永春","永登","永定","永丰","永吉","永嘉",
|
|
||||||
"永康","邕宁","永泰","永新","永修","尤溪","酉阳","元氏","禹城","于都","岳西","余干","玉环","余江","郁南","云安","郓城","云和","云霄","云阳",
|
|
||||||
"玉山","榆树","鱼台","玉田","余姚","榆中"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"letter": "Z",
|
|
||||||
"list": [
|
|
||||||
"漳州","遵化","郑州","中山","珠海","枣庄","张家界","张家口","张掖","湛江","肇庆","昭通","镇江","中卫","周口","舟山","驻马店","株洲","淄博",
|
|
||||||
"自贡","资阳","遵义","赞皇","增城","张家港","漳平","漳浦","章丘","樟树","沾化","赵县","招远","正定","政和","柘荣","中牟","忠县","周宁",
|
|
||||||
"周至","庄河","诸城","诸暨","紫金","资溪","邹城","邹平"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
|
|
||||||
export default citys
|
|
||||||
@ -1,150 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="select-city-wrap">
|
|
||||||
<view class="select-city">
|
|
||||||
<view class="index">
|
|
||||||
<view class="index-item" @click="scrollTo('#')">#</view>
|
|
||||||
<view class="index-item" v-for="item in citys" :key="item.letter" @click="scrollTo(item.letter)">{{item.letter}}</view>
|
|
||||||
</view>
|
|
||||||
<scroll-view :scroll-into-view="scrollIntoId" :scroll-y="true" :scroll-with-animation="true" :style="{height:windowHeight}">
|
|
||||||
<view class="content">
|
|
||||||
<view class="section" id="current">
|
|
||||||
<view class="city-title">{{__('当前城市')}}</view>
|
|
||||||
<view class="city-list">
|
|
||||||
<view class="city-item">{{current}}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="section" id="hot" v-if="hotCitys.length">
|
|
||||||
<view class="city-title">{{__('热门城市')}}</view>
|
|
||||||
<view class="city-list">
|
|
||||||
<view class="city-item" :class="{active: current === city.subsite_name}" v-for="(city, i) in hotCitys" :key="i" @click="onSelect(city)">{{city.subsite_name}}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="section" :id="item.letter" v-for="item in citys" :key="item.letter">
|
|
||||||
<view class="letter">{{item.letter}}</view>
|
|
||||||
<view class="city-list">
|
|
||||||
<view class="city-item" :class="{active: current === city.subsite_name}" v-for="(city,itemIndex) in item.list" :key="itemIndex" @click="onSelect(city)">{{city.subsite_name}}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</scroll-view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
<script>
|
|
||||||
//import Citys from './citys'
|
|
||||||
export default {
|
|
||||||
props: {
|
|
||||||
citys: {
|
|
||||||
type: Array,
|
|
||||||
default () {
|
|
||||||
return []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
hotCitys: {
|
|
||||||
type: Array,
|
|
||||||
default () {
|
|
||||||
return []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
subsite_current: {
|
|
||||||
type: Object,
|
|
||||||
default () {
|
|
||||||
return {}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
windowHeight: '',
|
|
||||||
scrollIntoId: 'F',
|
|
||||||
current: this.subsite_current.subsite_name
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
let that = this;
|
|
||||||
this.getSystemInfo()
|
|
||||||
|
|
||||||
setTimeout(function(){that.current = that.subsite_current.subsite_name}, 400)
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
getSystemInfo() {
|
|
||||||
uni.getSystemInfo().then(res => {
|
|
||||||
let [error, data] = res
|
|
||||||
this.windowHeight = `${data.windowHeight}px`
|
|
||||||
})
|
|
||||||
},
|
|
||||||
scrollTo(letter) {
|
|
||||||
this.scrollIntoId = letter === '#' ? 'current' : letter
|
|
||||||
},
|
|
||||||
onSelect(city) {
|
|
||||||
this.current = city.subsite_name
|
|
||||||
this.$emit('input', city)
|
|
||||||
this.$emit('on-select', city)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
.select-city-wrap {
|
|
||||||
position: relative;
|
|
||||||
padding: 0 30rpx;
|
|
||||||
background-color: #fff;
|
|
||||||
}
|
|
||||||
.select-city {
|
|
||||||
.index {
|
|
||||||
position: absolute;
|
|
||||||
right: 0;
|
|
||||||
bottom: 20rpx;
|
|
||||||
z-index: 999;
|
|
||||||
color: #2f9bfe;
|
|
||||||
font-size: 32rpx;
|
|
||||||
.index-item {
|
|
||||||
width: 40rpx;
|
|
||||||
height: 42rpx;
|
|
||||||
line-height: 42rpx;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.section {
|
|
||||||
margin-bottom: 19rpx;
|
|
||||||
.city-title {
|
|
||||||
color: #333;
|
|
||||||
font-size: 28rpx;
|
|
||||||
margin-bottom: 28rpx;
|
|
||||||
}
|
|
||||||
.letter {
|
|
||||||
width: 44rpx;
|
|
||||||
height: 44rpx;
|
|
||||||
color: #fff;
|
|
||||||
border-radius: 100%;
|
|
||||||
background-color: #2f9bfe;
|
|
||||||
font-size: 28rpx;
|
|
||||||
line-height: 44rpx;
|
|
||||||
text-align: center;
|
|
||||||
margin-bottom: 30rpx;
|
|
||||||
}
|
|
||||||
.city-list {
|
|
||||||
display: flex;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
.city-item {
|
|
||||||
width: 190rpx;
|
|
||||||
height: 55rpx;
|
|
||||||
margin-right: 36rpx;
|
|
||||||
margin-bottom: 28rpx;
|
|
||||||
line-height: 55rpx;
|
|
||||||
text-align: center;
|
|
||||||
border: 1px solid #dcdcdc;
|
|
||||||
border-radius: 6rpx;
|
|
||||||
color: #999;
|
|
||||||
font-size: 28rpx;
|
|
||||||
&.active {
|
|
||||||
background-color: #d5ebff;
|
|
||||||
border-color: #2f9bfe;
|
|
||||||
color: #2f9bfe;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
@ -1,35 +1,57 @@
|
|||||||
<template name="shoptheme1">
|
<template name="shoptheme1">
|
||||||
<view>
|
<view>
|
||||||
<view class="m-supermarket-ad">
|
<view class="m-supermarket-ad">
|
||||||
<view v-if="(commonTPL.AdContent.F1ProductContents.length>0)">
|
<view v-if="commonTPL.AdContent.F1ProductContents.length > 0">
|
||||||
<view class="m-supermarket-tip-list">
|
<!-- <view class="m-supermarket-tip-list">
|
||||||
<navigator :url="'/pages/product/list?is_store_flag=' + (commonTPL.isStoreFlag) + '&store_category_id=' + (item.store_product_cat_id) + '&cname=' + (item.name)"
|
<navigator :url="'/pages/product/list?is_store_flag=' + (commonTPL.isStoreFlag) + '&store_category_id=' + (item.store_product_cat_id) + '&cname=' + (item.name)"
|
||||||
v-for="(item, i) in commonTPL.smallCategory" :key="i" class="m-supermarket-tip-item">
|
v-for="(item, i) in commonTPL.smallCategory" :key="i" class="m-supermarket-tip-item">
|
||||||
<label>{{item.name}}</label>
|
<label>{{item.name}}</label>
|
||||||
</navigator>
|
</navigator>
|
||||||
</view>
|
</view> -->
|
||||||
<view class="m-product-list m-listv">
|
<view class="m-product-list m-listv">
|
||||||
<navigator v-for="(item, i) in commonTPL.AdContent.F1ProductContents" :key="i" :url="'/pages/product/detail?is_store_flag=' + (commonTPL.isStoreFlag) + '&pid=' + (item.ProductContentID)"
|
<navigator
|
||||||
class="m-product-item">
|
v-for="(item, i) in commonTPL.AdContent.F1ProductContents"
|
||||||
|
:key="i"
|
||||||
|
:url="
|
||||||
|
'/pages/product/detail?is_store_flag=' +
|
||||||
|
commonTPL.isStoreFlag +
|
||||||
|
'&pid=' +
|
||||||
|
item.ProductContentID
|
||||||
|
"
|
||||||
|
class="m-product-item"
|
||||||
|
>
|
||||||
<view class="m-product-img">
|
<view class="m-product-img">
|
||||||
<image :src="(item.ImagePath)" mode="aspectFill" />
|
<image :src="item.ImagePath" mode="aspectFill" />
|
||||||
</view>
|
</view>
|
||||||
<view class="m-product-info">
|
<view class="m-product-info">
|
||||||
<view class="m-product-name">
|
<view class="m-product-name">
|
||||||
<label>{{item.ProductName}}</label>
|
<label>{{ item.ProductName }}</label>
|
||||||
</view>
|
</view>
|
||||||
<view class="m-product-price">
|
<view class="m-product-price">
|
||||||
<block v-if="item.item_color[0].item_sale_price">
|
<block v-if="item.item_color[0].item_sale_price">
|
||||||
<label>{{__('¥')}}</label>{{number_format(item.item_color[0].item_sale_price, 2)}}
|
<label>{{ __("¥") }}</label
|
||||||
|
>{{ number_format(item.item_color[0].item_sale_price, 2) }}
|
||||||
</block>
|
</block>
|
||||||
|
|
||||||
<block v-if="item.product_unit_points">
|
<block v-if="item.product_unit_points">
|
||||||
<label style="margin: 0rpx 10rpx;">+</label><label style="font-size:32rpx">{{number_format(item.product_unit_points)}}</label> <label>{{__('积分')}}</label>
|
<label style="margin: 0rpx 10rpx">+</label
|
||||||
|
><label style="font-size: 32rpx">{{
|
||||||
|
number_format(item.product_unit_points)
|
||||||
|
}}</label>
|
||||||
|
<label>{{ __("积分") }}</label>
|
||||||
</block>
|
</block>
|
||||||
|
|
||||||
<block v-if="item.product_unit_sp">
|
<block v-if="item.product_unit_sp">
|
||||||
<label style="margin: 0rpx 10rpx;">+</label><label style="font-size:32rpx">{{item.product_unit_sp}}</label> <label>{{__('众宝')}}</label>
|
<label style="margin: 0rpx 10rpx">+</label
|
||||||
|
><label style="font-size: 32rpx">{{
|
||||||
|
item.product_unit_sp
|
||||||
|
}}</label>
|
||||||
|
<label>{{ __("众宝") }}</label>
|
||||||
</block>
|
</block>
|
||||||
|
<view
|
||||||
|
class="btn_addcard"
|
||||||
|
@click.stop="handleAddcard(item, $event)"
|
||||||
|
></view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</navigator>
|
</navigator>
|
||||||
@ -39,25 +61,28 @@
|
|||||||
<view class="m-nullpage-middle">
|
<view class="m-nullpage-middle">
|
||||||
<label class="iconfont icon-meiyougengduo"></label>
|
<label class="iconfont icon-meiyougengduo"></label>
|
||||||
<view class="m-null-tip">
|
<view class="m-null-tip">
|
||||||
<text>{{__('亲~什么都没有')}}</text>
|
<text>{{ __("亲~什么都没有") }}</text>
|
||||||
<text>{{__('暂时没有商品哦')}}</text>
|
<text>{{ __("暂时没有商品哦") }}</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
<loginPopup :show="showLoginPopup" @close="closeLoginPopup"></loginPopup>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import $ from "../../helpers/util";
|
||||||
|
import loginPopup from "@/components/loginPopup.vue";
|
||||||
|
import { mapMutations, mapState } from "vuex";
|
||||||
|
|
||||||
import $ from "../../helpers/util";
|
export default {
|
||||||
|
|
||||||
export default {
|
|
||||||
name: "shoptheme1",
|
name: "shoptheme1",
|
||||||
props: {
|
props: {
|
||||||
commonTPL: {
|
commonTPL: {
|
||||||
type: Object,
|
type: Object,
|
||||||
default () {
|
default() {
|
||||||
return {
|
return {
|
||||||
isStoreFlag: 1,
|
isStoreFlag: 1,
|
||||||
ProductInfo: {},
|
ProductInfo: {},
|
||||||
@ -87,27 +112,56 @@
|
|||||||
orderby: 1,
|
orderby: 1,
|
||||||
sort: 2,
|
sort: 2,
|
||||||
isnew: false,
|
isnew: false,
|
||||||
curpage: 1
|
curpage: 1,
|
||||||
},
|
},
|
||||||
formdate: "",
|
formdate: "",
|
||||||
pageId: 0
|
pageId: 0,
|
||||||
}
|
};
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
components: {
|
||||||
|
loginPopup,
|
||||||
|
},
|
||||||
data() {
|
data() {
|
||||||
return {}
|
return {
|
||||||
|
showLoginPopup: false,
|
||||||
|
};
|
||||||
},
|
},
|
||||||
created: function() {},
|
computed: mapState(["hasLogin"]),
|
||||||
methods: {}
|
created: function () {},
|
||||||
}
|
methods: {
|
||||||
|
handleAddcard(data, event) {
|
||||||
|
this.$emit("addCart", data);
|
||||||
|
},
|
||||||
|
closeLoginPopup() {
|
||||||
|
this.showLoginPopup = false;
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import "../../styles/_variables";
|
// @import "../../styles/_variables";
|
||||||
|
|
||||||
@import '../../styles/layout.scss';
|
// @import '../../styles/layout.scss';
|
||||||
@import '../../styles/store_themes.scss';
|
// @import '../../styles/store_themes.scss';
|
||||||
@import '../../styles/store_tpl.scss';
|
// @import '../../styles/store_tpl.scss';
|
||||||
|
.m-product-info {
|
||||||
|
width: auto;
|
||||||
|
}
|
||||||
|
.m-product-price {
|
||||||
|
position: relative;
|
||||||
|
width: auto;
|
||||||
|
}
|
||||||
|
.btn_addcard {
|
||||||
|
position: absolute;
|
||||||
|
right: 20rpx;
|
||||||
|
bottom: 8rpx;
|
||||||
|
width: 40rpx;
|
||||||
|
height: 40rpx;
|
||||||
|
background: url(https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/pc1.png)
|
||||||
|
center no-repeat;
|
||||||
|
background-size: cover;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -109,10 +109,10 @@
|
|||||||
|
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import "../../styles/_variables";
|
// @import "../../styles/_variables";
|
||||||
|
|
||||||
@import '../../styles/layout.scss';
|
// @import '../../styles/layout.scss';
|
||||||
@import '../../styles/store_themes.scss';
|
// @import '../../styles/store_themes.scss';
|
||||||
@import '../../styles/store_tpl.scss';
|
// @import '../../styles/store_tpl.scss';
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
|||||||
@ -83,9 +83,9 @@
|
|||||||
|
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import "../../styles/_variables";
|
// @import "../../styles/_variables";
|
||||||
|
|
||||||
@import '../../styles/layout.scss';
|
// @import '../../styles/layout.scss';
|
||||||
@import '../../styles/store_themes.scss';
|
// @import '../../styles/store_themes.scss';
|
||||||
@import '../../styles/store_tpl.scss';
|
// @import '../../styles/store_tpl.scss';
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -98,9 +98,9 @@
|
|||||||
|
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import "../../styles/_variables";
|
// @import "../../styles/_variables";
|
||||||
|
|
||||||
@import '../../styles/layout.scss';
|
// @import '../../styles/layout.scss';
|
||||||
@import '../../styles/store_themes.scss';
|
// @import '../../styles/store_themes.scss';
|
||||||
@import '../../styles/store_tpl.scss';
|
// @import '../../styles/store_tpl.scss';
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -60,9 +60,9 @@
|
|||||||
|
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import "../../styles/_variables";
|
// @import "../../styles/_variables";
|
||||||
|
|
||||||
@import '../../styles/layout.scss';
|
// @import '../../styles/layout.scss';
|
||||||
@import '../../styles/store_themes.scss';
|
// @import '../../styles/store_themes.scss';
|
||||||
@import '../../styles/store_tpl.scss';
|
// @import '../../styles/store_tpl.scss';
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -1139,10 +1139,10 @@
|
|||||||
|
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import "../../styles/_variables";
|
// @import "../../styles/_variables";
|
||||||
|
|
||||||
@import '../../styles/layout.scss';
|
// @import '../../styles/layout.scss';
|
||||||
@import '../../styles/store_themes.scss';
|
// @import '../../styles/store_themes.scss';
|
||||||
@import '../../styles/store_tpl.scss';
|
// @import '../../styles/store_tpl.scss';
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
|||||||
@ -4,6 +4,7 @@
|
|||||||
:lazy-load="node.attr.lazyLoad"
|
:lazy-load="node.attr.lazyLoad"
|
||||||
:class="node.classStr"
|
:class="node.classStr"
|
||||||
:style="newStyleStr || node.styleStr"
|
:style="newStyleStr || node.styleStr"
|
||||||
|
style="width:100% !important"
|
||||||
:data-src="node.attr.src"
|
:data-src="node.attr.src"
|
||||||
:src="node.attr.src"
|
:src="node.attr.src"
|
||||||
@tap="wxParseImgTap"
|
@tap="wxParseImgTap"
|
||||||
@ -52,11 +53,11 @@ export default {
|
|||||||
|
|
||||||
if ('chatimg' == this.node.attr.class)
|
if ('chatimg' == this.node.attr.class)
|
||||||
{
|
{
|
||||||
this.newStyleStr = `${styleStr}; width: 100%; padding: 0 ${+padding}px;`;
|
this.newStyleStr = `${styleStr}; max-width: 100%; padding: 0 ${+padding}px;`;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
this.newStyleStr = `${styleStr}; ${imageHeightStyle}; width: ${imageWidth}px; padding: 0 ${+padding}px;`;
|
this.newStyleStr = `${styleStr}; ${imageHeightStyle}; max-width: ${imageWidth}px; padding: 0 ${+padding}px;`;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 计算视觉优先的图片宽高
|
// 计算视觉优先的图片宽高
|
||||||
|
|||||||
@ -1,38 +1,75 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="uni-navbar" :class="{'uni-dark':dark}">
|
<view class="uni-navbar" :class="{ 'uni-dark': dark }">
|
||||||
<view :class="{ 'uni-navbar--fixed': fixed, 'uni-navbar--shadow': shadow, 'uni-navbar--border': border }"
|
<view
|
||||||
:style="{ 'background-color': themeBgColor }" class="uni-navbar__content">
|
:class="{
|
||||||
|
'uni-navbar--fixed': fixed,
|
||||||
|
'uni-navbar--shadow': shadow,
|
||||||
|
'uni-navbar--border': border,
|
||||||
|
}"
|
||||||
|
:style="{ 'background-color': themeBgColor }"
|
||||||
|
class="uni-navbar__content"
|
||||||
|
>
|
||||||
<status-bar v-if="statusBar" />
|
<status-bar v-if="statusBar" />
|
||||||
<view :style="{ color: themeColor,backgroundColor: themeBgColor ,height:navbarHeight}"
|
<view
|
||||||
class="uni-navbar__header">
|
:style="{
|
||||||
<view @tap="onClickLeft" class="uni-navbar__header-btns uni-navbar__header-btns-left"
|
color: themeColor,
|
||||||
:style="{width:leftIconWidth}">
|
backgroundColor: themeBgColor,
|
||||||
|
height: navbarHeight,
|
||||||
|
}"
|
||||||
|
class="uni-navbar__header"
|
||||||
|
>
|
||||||
|
<view
|
||||||
|
@tap="onClickLeft"
|
||||||
|
class="uni-navbar__header-btns uni-navbar__header-btns-left"
|
||||||
|
:style="{ minWidth: leftIconWidth }"
|
||||||
|
>
|
||||||
<slot name="left">
|
<slot name="left">
|
||||||
<view class="uni-navbar__content_view" v-if="leftIcon.length > 0">
|
<view class="uni-navbar__content_view" v-if="leftIcon.length > 0">
|
||||||
<uni-icons :color="themeColor" :type="leftIcon" size="20" />
|
<uni-icons :color="themeColor" :type="leftIcon" size="20" />
|
||||||
</view>
|
</view>
|
||||||
<view :class="{ 'uni-navbar-btn-icon-left': !leftIcon.length > 0 }" class="uni-navbar-btn-text"
|
<view
|
||||||
v-if="leftText.length">
|
:class="{ 'uni-navbar-btn-icon-left': !leftIcon.length > 0 }"
|
||||||
<text :style="{ color: themeColor, fontSize: '12px' }">{{ leftText }}</text>
|
class="uni-navbar-btn-text"
|
||||||
|
v-if="leftText.length"
|
||||||
|
>
|
||||||
|
<text :style="{ color: themeColor, fontSize: '12px' }">{{
|
||||||
|
leftText
|
||||||
|
}}</text>
|
||||||
</view>
|
</view>
|
||||||
</slot>
|
</slot>
|
||||||
</view>
|
</view>
|
||||||
<view class="uni-navbar__header-container " @tap="onClickTitle">
|
<view class="uni-navbar__header-container" @tap="onClickTitle">
|
||||||
<slot>
|
<slot>
|
||||||
<view class="uni-navbar__header-container-inner" v-if="title.length>0">
|
<view
|
||||||
<text class="uni-nav-bar-text uni-ellipsis-1"
|
class="uni-navbar__header-container-inner"
|
||||||
:style="{color: themeColor }">{{ title }}</text>
|
v-if="title.length > 0"
|
||||||
|
>
|
||||||
|
<text
|
||||||
|
class="uni-nav-bar-text uni-ellipsis-1"
|
||||||
|
:style="{ color: themeColor }"
|
||||||
|
>{{ title }}</text
|
||||||
|
>
|
||||||
</view>
|
</view>
|
||||||
</slot>
|
</slot>
|
||||||
</view>
|
</view>
|
||||||
<view @click="onClickRight" class="uni-navbar__header-btns uni-navbar__header-btns-right"
|
<view
|
||||||
:style="{width:rightIconWidth}">
|
@click="onClickRight"
|
||||||
|
class="uni-navbar__header-btns uni-navbar__header-btns-right"
|
||||||
|
:style="{ width: rightIconWidth }"
|
||||||
|
>
|
||||||
<slot name="right">
|
<slot name="right">
|
||||||
<view v-if="rightIcon.length">
|
<view v-if="rightIcon.length">
|
||||||
<uni-icons :color="themeColor" :type="rightIcon" size="22" />
|
<uni-icons :color="themeColor" :type="rightIcon" size="22" />
|
||||||
</view>
|
</view>
|
||||||
<view class="uni-navbar-btn-text" v-if="rightText.length && !rightIcon.length">
|
<view
|
||||||
<text class="uni-nav-bar-right-text" :style="{ color: themeColor}">{{ rightText }}</text>
|
class="uni-navbar-btn-text"
|
||||||
|
v-if="rightText.length && !rightIcon.length"
|
||||||
|
>
|
||||||
|
<text
|
||||||
|
class="uni-nav-bar-right-text"
|
||||||
|
:style="{ color: themeColor }"
|
||||||
|
>{{ rightText }}</text
|
||||||
|
>
|
||||||
</view>
|
</view>
|
||||||
</slot>
|
</slot>
|
||||||
</view>
|
</view>
|
||||||
@ -40,16 +77,19 @@
|
|||||||
</view>
|
</view>
|
||||||
<view class="uni-navbar__placeholder" v-if="fixed">
|
<view class="uni-navbar__placeholder" v-if="fixed">
|
||||||
<status-bar v-if="statusBar" />
|
<status-bar v-if="statusBar" />
|
||||||
<view class="uni-navbar__placeholder-view" :style="{ height:navbarHeight}" />
|
<view
|
||||||
|
class="uni-navbar__placeholder-view"
|
||||||
|
:style="{ height: navbarHeight }"
|
||||||
|
/>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import statusBar from "./uni-status-bar.vue";
|
import statusBar from "./uni-status-bar.vue";
|
||||||
const getVal = (val) => typeof val === 'number' ? val + 'px' : val;
|
const getVal = (val) => (typeof val === "number" ? val + "px" : val);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* NavBar 自定义导航栏
|
* NavBar 自定义导航栏
|
||||||
* @description 导航栏组件,主要用于头部导航
|
* @description 导航栏组件,主要用于头部导航
|
||||||
* @tutorial https://ext.dcloud.net.cn/plugin?id=52
|
* @tutorial https://ext.dcloud.net.cn/plugin?id=52
|
||||||
@ -69,114 +109,114 @@
|
|||||||
* @event {Function} clickRight 右侧按钮点击时触发
|
* @event {Function} clickRight 右侧按钮点击时触发
|
||||||
* @event {Function} clickTitle 中间标题点击时触发
|
* @event {Function} clickTitle 中间标题点击时触发
|
||||||
*/
|
*/
|
||||||
export default {
|
export default {
|
||||||
name: "UniNavBar",
|
name: "UniNavBar",
|
||||||
components: {
|
components: {
|
||||||
statusBar
|
statusBar,
|
||||||
},
|
},
|
||||||
emits: ['clickLeft', 'clickRight', 'clickTitle'],
|
emits: ["clickLeft", "clickRight", "clickTitle"],
|
||||||
props: {
|
props: {
|
||||||
dark: {
|
dark: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false
|
default: false,
|
||||||
},
|
},
|
||||||
title: {
|
title: {
|
||||||
type: String,
|
type: String,
|
||||||
default: ""
|
default: "",
|
||||||
},
|
},
|
||||||
leftText: {
|
leftText: {
|
||||||
type: String,
|
type: String,
|
||||||
default: ""
|
default: "",
|
||||||
},
|
},
|
||||||
rightText: {
|
rightText: {
|
||||||
type: String,
|
type: String,
|
||||||
default: ""
|
default: "",
|
||||||
},
|
},
|
||||||
leftIcon: {
|
leftIcon: {
|
||||||
type: String,
|
type: String,
|
||||||
default: ""
|
default: "",
|
||||||
},
|
},
|
||||||
rightIcon: {
|
rightIcon: {
|
||||||
type: String,
|
type: String,
|
||||||
default: ""
|
default: "",
|
||||||
},
|
},
|
||||||
fixed: {
|
fixed: {
|
||||||
type: [Boolean, String],
|
type: [Boolean, String],
|
||||||
default: false
|
default: false,
|
||||||
},
|
},
|
||||||
color: {
|
color: {
|
||||||
type: String,
|
type: String,
|
||||||
default: ""
|
default: "",
|
||||||
},
|
},
|
||||||
backgroundColor: {
|
backgroundColor: {
|
||||||
type: String,
|
type: String,
|
||||||
default: ""
|
default: "",
|
||||||
},
|
},
|
||||||
statusBar: {
|
statusBar: {
|
||||||
type: [Boolean, String],
|
type: [Boolean, String],
|
||||||
default: false
|
default: false,
|
||||||
},
|
},
|
||||||
shadow: {
|
shadow: {
|
||||||
type: [Boolean, String],
|
type: [Boolean, String],
|
||||||
default: false
|
default: false,
|
||||||
},
|
},
|
||||||
border: {
|
border: {
|
||||||
type: [Boolean, String],
|
type: [Boolean, String],
|
||||||
default: true
|
default: true,
|
||||||
},
|
},
|
||||||
height: {
|
height: {
|
||||||
type: [Number, String],
|
type: [Number, String],
|
||||||
default: 44
|
default: 44,
|
||||||
},
|
},
|
||||||
leftWidth: {
|
leftWidth: {
|
||||||
type: [Number, String],
|
type: [Number, String],
|
||||||
default: 60
|
default: 60,
|
||||||
},
|
},
|
||||||
rightWidth: {
|
rightWidth: {
|
||||||
type: [Number, String],
|
type: [Number, String],
|
||||||
default: 60
|
default: 60,
|
||||||
},
|
},
|
||||||
stat: {
|
stat: {
|
||||||
type: [Boolean, String],
|
type: [Boolean, String],
|
||||||
default: ''
|
default: "",
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
themeBgColor() {
|
themeBgColor() {
|
||||||
if (this.dark) {
|
if (this.dark) {
|
||||||
// 默认值
|
// 默认值
|
||||||
if (this.backgroundColor) {
|
if (this.backgroundColor) {
|
||||||
return this.backgroundColor
|
return this.backgroundColor;
|
||||||
} else {
|
} else {
|
||||||
return this.dark ? '#333' : '#FFF'
|
return this.dark ? "#333" : "#FFF";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return this.backgroundColor || '#FFF'
|
return this.backgroundColor || "#FFF";
|
||||||
},
|
},
|
||||||
themeColor() {
|
themeColor() {
|
||||||
if (this.dark) {
|
if (this.dark) {
|
||||||
// 默认值
|
// 默认值
|
||||||
if (this.color) {
|
if (this.color) {
|
||||||
return this.color
|
return this.color;
|
||||||
} else {
|
} else {
|
||||||
return this.dark ? '#fff' : '#333'
|
return this.dark ? "#fff" : "#333";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return this.color || '#333'
|
return this.color || "#333";
|
||||||
},
|
},
|
||||||
navbarHeight() {
|
navbarHeight() {
|
||||||
return getVal(this.height)
|
return getVal(this.height);
|
||||||
},
|
},
|
||||||
leftIconWidth() {
|
leftIconWidth() {
|
||||||
return getVal(this.leftWidth)
|
return getVal(this.leftWidth);
|
||||||
},
|
},
|
||||||
rightIconWidth() {
|
rightIconWidth() {
|
||||||
return getVal(this.rightWidth)
|
return getVal(this.rightWidth);
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
if (uni.report && this.stat && this.title !== '') {
|
if (uni.report && this.stat && this.title !== "") {
|
||||||
uni.report('title', this.title)
|
uni.report("title", this.title);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@ -188,43 +228,43 @@
|
|||||||
},
|
},
|
||||||
onClickTitle() {
|
onClickTitle() {
|
||||||
this.$emit("clickTitle");
|
this.$emit("clickTitle");
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
$nav-height: 44px;
|
$nav-height: 44px;
|
||||||
|
|
||||||
.uni-navbar {
|
.uni-navbar {
|
||||||
// box-sizing: border-box;
|
// box-sizing: border-box;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-nav-bar-text {
|
.uni-nav-bar-text {
|
||||||
/* #ifdef APP-PLUS */
|
/* #ifdef APP-PLUS */
|
||||||
font-size: 34rpx;
|
font-size: 34rpx;
|
||||||
/* #endif */
|
/* #endif */
|
||||||
/* #ifndef APP-PLUS */
|
/* #ifndef APP-PLUS */
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
/* #endif */
|
/* #endif */
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-nav-bar-right-text {
|
.uni-nav-bar-right-text {
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-navbar__content {
|
.uni-navbar__content {
|
||||||
position: relative;
|
position: relative;
|
||||||
// background-color: #fff;
|
// background-color: #fff;
|
||||||
// box-sizing: border-box;
|
// box-sizing: border-box;
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-navbar__content_view {
|
.uni-navbar__content_view {
|
||||||
// box-sizing: border-box;
|
// box-sizing: border-box;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-navbar-btn-text {
|
.uni-navbar-btn-text {
|
||||||
/* #ifndef APP-NVUE */
|
/* #ifndef APP-NVUE */
|
||||||
display: flex;
|
display: flex;
|
||||||
/* #endif */
|
/* #endif */
|
||||||
@ -232,45 +272,45 @@
|
|||||||
justify-content: flex-start;
|
justify-content: flex-start;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
line-height: 12px;
|
line-height: 12px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-navbar__header {
|
.uni-navbar__header {
|
||||||
/* #ifndef APP-NVUE */
|
/* #ifndef APP-NVUE */
|
||||||
display: flex;
|
display: flex;
|
||||||
/* #endif */
|
/* #endif */
|
||||||
padding: 0 10px;
|
padding: 5px 10px;
|
||||||
padding-top: 10rpx;
|
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
height: $nav-height;
|
height: $nav-height;
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
}
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
.uni-navbar__header-btns {
|
.uni-navbar__header-btns {
|
||||||
/* #ifndef APP-NVUE */
|
/* #ifndef APP-NVUE */
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
display: flex;
|
display: flex;
|
||||||
/* #endif */
|
/* #endif */
|
||||||
flex-wrap: nowrap;
|
flex-wrap: nowrap;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
width: 120rpx;
|
// width: 120rpx;
|
||||||
// padding: 0 6px;
|
// padding: 0 6px;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
/* #ifdef H5 */
|
/* #ifdef H5 */
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
/* #endif */
|
/* #endif */
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-navbar__header-btns-left {
|
.uni-navbar__header-btns-left {
|
||||||
/* #ifndef APP-NVUE */
|
/* #ifndef APP-NVUE */
|
||||||
display: flex;
|
display: flex;
|
||||||
/* #endif */
|
/* #endif */
|
||||||
width: 120rpx;
|
min-width: 120rpx;
|
||||||
justify-content: flex-start;
|
justify-content: flex-start;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-navbar__header-btns-right {
|
.uni-navbar__header-btns-right {
|
||||||
/* #ifndef APP-NVUE */
|
/* #ifndef APP-NVUE */
|
||||||
display: flex;
|
display: flex;
|
||||||
/* #endif */
|
/* #endif */
|
||||||
@ -279,18 +319,18 @@
|
|||||||
// padding-right: 30rpx;
|
// padding-right: 30rpx;
|
||||||
justify-content: flex-end;
|
justify-content: flex-end;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-navbar__header-container {
|
.uni-navbar__header-container {
|
||||||
/* #ifndef APP-NVUE */
|
/* #ifndef APP-NVUE */
|
||||||
display: flex;
|
display: flex;
|
||||||
/* #endif */
|
/* #endif */
|
||||||
flex: 1;
|
flex: 1;
|
||||||
padding: 0 10px;
|
padding: 0 10px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-navbar__header-container-inner {
|
.uni-navbar__header-container-inner {
|
||||||
/* #ifndef APP-NVUE */
|
/* #ifndef APP-NVUE */
|
||||||
display: flex;
|
display: flex;
|
||||||
/* #endif */
|
/* #endif */
|
||||||
@ -301,14 +341,13 @@
|
|||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
// box-sizing: border-box;
|
// box-sizing: border-box;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.uni-navbar__placeholder-view {
|
||||||
.uni-navbar__placeholder-view {
|
|
||||||
height: $nav-height;
|
height: $nav-height;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-navbar--fixed {
|
.uni-navbar--fixed {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
z-index: 998;
|
z-index: 998;
|
||||||
/* #ifdef H5 */
|
/* #ifdef H5 */
|
||||||
@ -319,20 +358,19 @@
|
|||||||
left: 0;
|
left: 0;
|
||||||
right: 0;
|
right: 0;
|
||||||
/* #endif */
|
/* #endif */
|
||||||
|
}
|
||||||
|
|
||||||
}
|
.uni-navbar--shadow {
|
||||||
|
|
||||||
.uni-navbar--shadow {
|
|
||||||
box-shadow: 0 1px 6px #ccc;
|
box-shadow: 0 1px 6px #ccc;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-navbar--border {
|
.uni-navbar--border {
|
||||||
border-bottom-width: 1rpx;
|
border-bottom-width: 1rpx;
|
||||||
border-bottom-style: solid;
|
border-bottom-style: solid;
|
||||||
border-bottom-color: #eee;
|
border-bottom-color: #eee;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-ellipsis-1 {
|
.uni-ellipsis-1 {
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
/* #ifndef APP-NVUE */
|
/* #ifndef APP-NVUE */
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
@ -342,8 +380,9 @@
|
|||||||
lines: 1;
|
lines: 1;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
/* #endif */
|
/* #endif */
|
||||||
}
|
}
|
||||||
|
|
||||||
// 暗主题配置
|
// 暗主题配置
|
||||||
.uni-dark {}
|
.uni-dark {
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -1,9 +1,10 @@
|
|||||||
<template>
|
<template>
|
||||||
<view style="position: relative;"
|
<view
|
||||||
|
style="position: relative"
|
||||||
@touchmove="ListTouchMove"
|
@touchmove="ListTouchMove"
|
||||||
@touchend.stop="ListTouchEnd"
|
@touchend.stop="ListTouchEnd"
|
||||||
@touchstart="ListTouchStart">
|
@touchstart="ListTouchStart"
|
||||||
|
>
|
||||||
<video
|
<video
|
||||||
:src="video_url"
|
:src="video_url"
|
||||||
preload
|
preload
|
||||||
@ -19,12 +20,14 @@
|
|||||||
class="video"
|
class="video"
|
||||||
:poster="cover_url"
|
:poster="cover_url"
|
||||||
@timeupdate="timeupdate"
|
@timeupdate="timeupdate"
|
||||||
|
|
||||||
@click.stop="clickVideo"
|
@click.stop="clickVideo"
|
||||||
>
|
></video>
|
||||||
</video>
|
<cover-image
|
||||||
<cover-image class="play" v-if="show_play" src="https://static.lancerdt.com/xcxfile/appicon/video/play_1.png"
|
class="play"
|
||||||
@click.stop="clickVideo"></cover-image>
|
v-if="show_play"
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/play_1.png"
|
||||||
|
@click.stop="clickVideo"
|
||||||
|
></cover-image>
|
||||||
<cover-view class="cover-view-left">
|
<cover-view class="cover-view-left">
|
||||||
<text class="view-left-text">@{{ nickname }}</text>
|
<text class="view-left-text">@{{ nickname }}</text>
|
||||||
<view class="view-left-text-content">
|
<view class="view-left-text-content">
|
||||||
@ -32,102 +35,126 @@
|
|||||||
</view>
|
</view>
|
||||||
</cover-view>
|
</cover-view>
|
||||||
<cover-view class="cover-view-right">
|
<cover-view class="cover-view-right">
|
||||||
<cover-image :src="cover_url" class="avater cimg" @click.stop="tapAvater"></cover-image>
|
<cover-image
|
||||||
|
:src="cover_url"
|
||||||
|
class="avater cimg"
|
||||||
|
@click.stop="tapAvater"
|
||||||
|
></cover-image>
|
||||||
<text class="right-follow">+</text>
|
<text class="right-follow">+</text>
|
||||||
<cover-image v-if="is_like" src="https://static.lancerdt.com/xcxfile/appicon/video/img/axc.png" class="img-left" @click.stop="onUnLike" :data-story_id="video_id"></cover-image>
|
<cover-image
|
||||||
|
v-if="is_like"
|
||||||
<cover-image v-if="!is_like" src="https://static.lancerdt.com/xcxfile/appicon/video/img/bed.png" class="img-left" @click.stop="onLike" :data-story_id="video_id"></cover-image>
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/img/axc.png"
|
||||||
|
class="img-left"
|
||||||
|
@click.stop="onUnLike"
|
||||||
|
:data-story_id="video_id"
|
||||||
|
></cover-image>
|
||||||
|
|
||||||
|
<cover-image
|
||||||
|
v-if="!is_like"
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/img/bed.png"
|
||||||
|
class="img-left"
|
||||||
|
@click.stop="onLike"
|
||||||
|
:data-story_id="video_id"
|
||||||
|
></cover-image>
|
||||||
|
|
||||||
<text class="right-text">{{ story_like_count }}</text>
|
<text class="right-text">{{ story_like_count }}</text>
|
||||||
<cover-image src="https://static.lancerdt.com/xcxfile/appicon/video/img/ay2.png" style="height: 80rpx;" class="img-left" @click.stop="tapMsg"></cover-image>
|
<cover-image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/img/ay2.png"
|
||||||
|
style="height: 80rpx"
|
||||||
|
class="img-left"
|
||||||
|
@click.stop="tapMsg"
|
||||||
|
></cover-image>
|
||||||
<text class="right-text">{{ pinglun }}</text>
|
<text class="right-text">{{ pinglun }}</text>
|
||||||
<cover-image src="https://static.lancerdt.com/xcxfile/appicon/video/img/b6p.png" style="height: 76rpx;" class="img-left" @click.stop="tapShare"></cover-image>
|
<cover-image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/img/b6p.png"
|
||||||
|
style="height: 76rpx"
|
||||||
|
class="img-left"
|
||||||
|
@click.stop="tapShare"
|
||||||
|
></cover-image>
|
||||||
<text class="right-text">{{ zhuanfa }}</text>
|
<text class="right-text">{{ zhuanfa }}</text>
|
||||||
<cover-image src="https://static.lancerdt.com/xcxfile/appicon/video/changpian.png" class="musicIcon cimg"></cover-image>
|
<cover-image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/video/changpian.png"
|
||||||
|
class="musicIcon cimg"
|
||||||
|
></cover-image>
|
||||||
</cover-view>
|
</cover-view>
|
||||||
<!-- <cover-view class="progressBar" :animation="animationData" :style="`width:${barWidth}px`"></cover-view> -->
|
<!-- <cover-view class="progressBar" :animation="animationData" :style="`width:${barWidth}px`"></cover-view> -->
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {
|
import { mapState, mapMutations } from "vuex";
|
||||||
mapState,
|
|
||||||
mapMutations
|
|
||||||
} from 'vuex'
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
video_id: {
|
video_id: {
|
||||||
type: Number,
|
type: Number,
|
||||||
default: 0
|
default: 0,
|
||||||
},
|
},
|
||||||
user_id: {
|
user_id: {
|
||||||
type: Number,
|
type: Number,
|
||||||
default: 0
|
default: 0,
|
||||||
},
|
},
|
||||||
nickname: {
|
nickname: {
|
||||||
type: String,
|
type: String,
|
||||||
default: ''
|
default: "",
|
||||||
},
|
},
|
||||||
video_describe: {
|
video_describe: {
|
||||||
type: String,
|
type: String,
|
||||||
default: ''
|
default: "",
|
||||||
},
|
},
|
||||||
cover_url: {
|
cover_url: {
|
||||||
type: String,
|
type: String,
|
||||||
default: ''
|
default: "",
|
||||||
},
|
},
|
||||||
video_url: {
|
video_url: {
|
||||||
type: String,
|
type: String,
|
||||||
default: ''
|
default: "",
|
||||||
},
|
},
|
||||||
dianzan: {
|
dianzan: {
|
||||||
type: Number,
|
type: Number,
|
||||||
default: 0
|
default: 0,
|
||||||
},
|
},
|
||||||
is_dianzan: {
|
is_dianzan: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false
|
default: false,
|
||||||
},
|
},
|
||||||
pinglun: {
|
pinglun: {
|
||||||
type: Number,
|
type: Number,
|
||||||
default: 0
|
default: 0,
|
||||||
},
|
},
|
||||||
zhuanfa: {
|
zhuanfa: {
|
||||||
type: Number,
|
type: Number,
|
||||||
default: 0
|
default: 0,
|
||||||
},
|
},
|
||||||
play: {
|
play: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false
|
default: false,
|
||||||
},
|
},
|
||||||
index: {
|
index: {
|
||||||
type: Number,
|
type: Number,
|
||||||
default: 0
|
default: 0,
|
||||||
},
|
},
|
||||||
cur_index: {
|
cur_index: {
|
||||||
type: Number,
|
type: Number,
|
||||||
default: 0
|
default: 0,
|
||||||
},
|
},
|
||||||
height: {
|
height: {
|
||||||
type: String,
|
type: String,
|
||||||
default: ''
|
default: "",
|
||||||
},
|
},
|
||||||
width: {
|
width: {
|
||||||
type: String,
|
type: String,
|
||||||
default: ''
|
default: "",
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
time: 0,
|
time: 0,
|
||||||
duration: 10,
|
duration: 10,
|
||||||
barWidth:0,
|
barWidth: 0,
|
||||||
animationData: {},
|
animationData: {},
|
||||||
times:null,
|
times: null,
|
||||||
show_play:false,
|
show_play: false,
|
||||||
|
|
||||||
|
|
||||||
is_like: false,
|
is_like: false,
|
||||||
story_like_count: 0,
|
story_like_count: 0,
|
||||||
@ -137,20 +164,33 @@ export default {
|
|||||||
this.is_like = this.is_dianzan;
|
this.is_like = this.is_dianzan;
|
||||||
this.story_like_count = this.dianzan;
|
this.story_like_count = this.dianzan;
|
||||||
},
|
},
|
||||||
computed: mapState(['Config', 'StateCode', 'notice', 'plantformInfo', 'shopInfo', 'userInfo', 'hasLogin']),
|
computed: mapState([
|
||||||
|
"Config",
|
||||||
|
"StateCode",
|
||||||
|
"notice",
|
||||||
|
"plantformInfo",
|
||||||
|
"shopInfo",
|
||||||
|
"userInfo",
|
||||||
|
"hasLogin",
|
||||||
|
]),
|
||||||
methods: {
|
methods: {
|
||||||
...mapMutations(['logout', 'getPlantformInfo', 'forceUserInfo', 'getStoreInfo']),
|
...mapMutations([
|
||||||
|
"logout",
|
||||||
|
"getPlantformInfo",
|
||||||
|
"forceUserInfo",
|
||||||
|
"getStoreInfo",
|
||||||
|
]),
|
||||||
ListTouchStart(e) {
|
ListTouchStart(e) {
|
||||||
//console.log(1, e);
|
//console.log(1, e);
|
||||||
this.$emit('ListTouchStart', e);
|
this.$emit("ListTouchStart", e);
|
||||||
},
|
},
|
||||||
ListTouchMove(e) {
|
ListTouchMove(e) {
|
||||||
//console.log(2, e);
|
//console.log(2, e);
|
||||||
this.$emit('ListTouchMove', e);
|
this.$emit("ListTouchMove", e);
|
||||||
},
|
},
|
||||||
ListTouchEnd(e) {
|
ListTouchEnd(e) {
|
||||||
//console.log(3, e);
|
//console.log(3, e);
|
||||||
this.$emit('ListTouchEnd', e);
|
this.$emit("ListTouchEnd", e);
|
||||||
},
|
},
|
||||||
|
|
||||||
timeupdate(event) {
|
timeupdate(event) {
|
||||||
@ -179,22 +219,22 @@ export default {
|
|||||||
// },50)
|
// },50)
|
||||||
// }
|
// }
|
||||||
},
|
},
|
||||||
tapAvater(){
|
tapAvater() {
|
||||||
this.$.gopage('/community/community/userspace?uid=' + this.user_id);
|
this.$.gopage("/community/community/userspace?uid=" + this.user_id);
|
||||||
//uni.showToast({icon: "success", title: "仅供演示", duration: 2e3})
|
//uni.showToast({icon: "success", title: "仅供演示", duration: 2e3})
|
||||||
},
|
},
|
||||||
tapLove(){
|
tapLove() {
|
||||||
uni.showToast({icon: "success", title: "仅供演示", duration: 2e3})
|
uni.showToast({ icon: "success", title: "仅供演示", duration: 2e3 });
|
||||||
},
|
},
|
||||||
tapMsg(){
|
tapMsg() {
|
||||||
uni.showToast({icon: "success", title: "仅供演示", duration: 2e3})
|
uni.showToast({ icon: "success", title: "仅供演示", duration: 2e3 });
|
||||||
},
|
},
|
||||||
tapShare(){
|
tapShare() {
|
||||||
uni.showToast({icon: "success", title: "仅供演示", duration: 2e3})
|
uni.showToast({ icon: "success", title: "仅供演示", duration: 2e3 });
|
||||||
},
|
},
|
||||||
clickVideo(e) {
|
clickVideo(e) {
|
||||||
//console.log('单视频点击事件');
|
//console.log('单视频点击事件');
|
||||||
this.$emit('clickVideo', e);
|
this.$emit("clickVideo", e);
|
||||||
},
|
},
|
||||||
videoPlay() {
|
videoPlay() {
|
||||||
if (this.play) {
|
if (this.play) {
|
||||||
@ -210,16 +250,16 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
onLike: function (a) {
|
onLike: function (a) {
|
||||||
let that = this;
|
let that = this;
|
||||||
that.forceUserInfo(function(user) {
|
that.forceUserInfo(function (user) {
|
||||||
that.doLike(a.currentTarget.dataset.story_id)
|
that.doLike(a.currentTarget.dataset.story_id);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
doLike: function (story_id) {
|
doLike: function (story_id) {
|
||||||
var that = this, params = {
|
var that = this,
|
||||||
story_id: story_id
|
params = {
|
||||||
|
story_id: story_id,
|
||||||
};
|
};
|
||||||
|
|
||||||
that.$.request({
|
that.$.request({
|
||||||
@ -228,21 +268,22 @@ export default {
|
|||||||
success: function (data, status, msg, code) {
|
success: function (data, status, msg, code) {
|
||||||
if (200 == status) {
|
if (200 == status) {
|
||||||
that.is_like = true;
|
that.is_like = true;
|
||||||
that.story_like_count ++
|
that.story_like_count++;
|
||||||
} else {
|
} else {
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
onUnLike: function (a) {
|
onUnLike: function (a) {
|
||||||
let that = this;
|
let that = this;
|
||||||
that.forceUserInfo(function(user) {
|
that.forceUserInfo(function (user) {
|
||||||
that.canceldianzan(a.currentTarget.dataset.story_id)
|
that.canceldianzan(a.currentTarget.dataset.story_id);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
canceldianzan: function (story_id) {
|
canceldianzan: function (story_id) {
|
||||||
var that = this, params = {
|
var that = this,
|
||||||
story_id: story_id
|
params = {
|
||||||
|
story_id: story_id,
|
||||||
};
|
};
|
||||||
|
|
||||||
that.$.request({
|
that.$.request({
|
||||||
@ -252,21 +293,20 @@ export default {
|
|||||||
if (200 == status) {
|
if (200 == status) {
|
||||||
//修正当前记录数据
|
//修正当前记录数据
|
||||||
that.is_like = false;
|
that.is_like = false;
|
||||||
that.story_like_count --
|
that.story_like_count--;
|
||||||
} else {
|
} else {
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
play(newVal, oldVal) {
|
play(newVal, oldVal) {
|
||||||
//console.info('watch play:');
|
//console.info('watch play:');
|
||||||
//console.info(newVal, oldVal);
|
//console.info(newVal, oldVal);
|
||||||
this.videoPlay();
|
this.videoPlay();
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
@ -276,7 +316,7 @@ export default {
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
.play{
|
.play {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 150rpx;
|
width: 150rpx;
|
||||||
height: 150rpx;
|
height: 150rpx;
|
||||||
@ -287,7 +327,7 @@ export default {
|
|||||||
.progressBar {
|
.progressBar {
|
||||||
border-radius: 2rpx;
|
border-radius: 2rpx;
|
||||||
height: 4rpx;
|
height: 4rpx;
|
||||||
background-color: #FF4500;
|
background-color: #ff4500;
|
||||||
z-index: 999999;
|
z-index: 999999;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
bottom: 68rpx;
|
bottom: 68rpx;
|
||||||
|
|||||||
@ -7,188 +7,233 @@
|
|||||||
<!-- sync双向数据绑定语法糖 -->
|
<!-- sync双向数据绑定语法糖 -->
|
||||||
<!-- <button type="primary" @click="changeStyle">双向数据绑定改变style</button> -->
|
<!-- <button type="primary" @click="changeStyle">双向数据绑定改变style</button> -->
|
||||||
<!-- #ifdef APP-PLUS -->
|
<!-- #ifdef APP-PLUS -->
|
||||||
<image src="https://static.lancerdt.com/xcxfile/appicon/zy-search/voice.svg" mode="aspectFit" @click="startRecognize()" class="voice-icon"></image>
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/zy-search/voice.svg"
|
||||||
|
mode="aspectFit"
|
||||||
|
@click="startRecognize()"
|
||||||
|
class="voice-icon"
|
||||||
|
></image>
|
||||||
<!-- #endif -->
|
<!-- #endif -->
|
||||||
<template v-if="isFocus">
|
<template v-if="isFocus">
|
||||||
<input maxlength="20" focus type="text" value="" confirm-type="search" @confirm="searchStart()" :placeholder="__('请输入关键词搜索')" v-model.trim="searchText"/>
|
<input
|
||||||
|
maxlength="20"
|
||||||
|
focus
|
||||||
|
type="text"
|
||||||
|
value=""
|
||||||
|
confirm-type="search"
|
||||||
|
@confirm="searchStart()"
|
||||||
|
:placeholder="__('请输入关键词搜索')"
|
||||||
|
v-model.trim="searchText"
|
||||||
|
/>
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<input maxlength="20" type="text" value="" confirm-type="search" @confirm="searchStart()" :placeholder="__('请输入关键词搜索')" v-model.trim="searchText"/>
|
<input
|
||||||
|
maxlength="20"
|
||||||
|
type="text"
|
||||||
|
value=""
|
||||||
|
confirm-type="search"
|
||||||
|
@confirm="searchStart()"
|
||||||
|
:placeholder="__('请输入关键词搜索')"
|
||||||
|
v-model.trim="searchText"
|
||||||
|
/>
|
||||||
</template>
|
</template>
|
||||||
<image src="https://static.lancerdt.com/xcxfile/appicon/zy-search/search.svg" mode="aspectFit" @click="searchStart()" class="search-icon"></image>
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/zy-search/search.svg"
|
||||||
|
mode="aspectFit"
|
||||||
|
@click="searchStart()"
|
||||||
|
class="search-icon"
|
||||||
|
></image>
|
||||||
</view>
|
</view>
|
||||||
<view :class="'s-' + theme" v-if="hList.length > 0">
|
<view :class="'s-' + theme" v-if="hList.length > 0">
|
||||||
<view class="header">
|
<view class="header">
|
||||||
{{__('历史记录')}}
|
{{ __("历史记录") }}
|
||||||
<image src="https://static.lancerdt.com/xcxfile/appicon/zy-search/delete.svg" mode="aspectFit" @click="delhistory"></image>
|
<image
|
||||||
|
src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/zy-search/delete.svg"
|
||||||
|
mode="aspectFit"
|
||||||
|
@click="delhistory"
|
||||||
|
></image>
|
||||||
</view>
|
</view>
|
||||||
<view class="list">
|
<view class="list">
|
||||||
<view v-for="(item,index) in hList" :key="index" @click="keywordsClick(item)">{{item}}</view>
|
<view
|
||||||
|
v-for="(item, index) in hList"
|
||||||
|
:key="index"
|
||||||
|
@click="keywordsClick(item)"
|
||||||
|
>{{ item }}</view
|
||||||
|
>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view :class="'wanted-' + theme" v-if="showWant">
|
<view :class="'wanted-' + theme" v-if="showWant">
|
||||||
<view class="header">{{__('猜你想搜的')}}</view>
|
<view class="header">{{ __("猜你想搜的") }}</view>
|
||||||
<view class="list">
|
<view class="list">
|
||||||
<view v-for="(item,index) in hotList" :key="index" @click="keywordsClick(item)">{{item}}</view>
|
<view
|
||||||
|
v-for="(item, index) in hotList"
|
||||||
|
:key="index"
|
||||||
|
@click="keywordsClick(item)"
|
||||||
|
>{{ item }}</view
|
||||||
|
>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
export default{
|
export default {
|
||||||
name:"zy-search",
|
name: "zy-search",
|
||||||
props:{
|
props: {
|
||||||
isFocus:{ //是否自动获取焦点
|
isFocus: {
|
||||||
|
//是否自动获取焦点
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false
|
default: false,
|
||||||
},
|
},
|
||||||
theme:{ //选择块级显示还是圆形显示
|
theme: {
|
||||||
|
//选择块级显示还是圆形显示
|
||||||
type: String,
|
type: String,
|
||||||
default: 'block'
|
default: "block",
|
||||||
},
|
},
|
||||||
showWant:{ //是否展示推荐菜单
|
showWant: {
|
||||||
|
//是否展示推荐菜单
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false
|
default: false,
|
||||||
},
|
},
|
||||||
hotList: { //推荐列表数据
|
hotList: {
|
||||||
|
//推荐列表数据
|
||||||
type: Array,
|
type: Array,
|
||||||
default () {
|
default() {
|
||||||
return []
|
return [];
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
searchHisList: {
|
searchHisList: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default () {
|
default() {
|
||||||
return []
|
return [];
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
suggestText: {
|
suggestText: {
|
||||||
type: String,
|
type: String,
|
||||||
default: ''
|
default: "",
|
||||||
},
|
},
|
||||||
|
|
||||||
speechEngine: { //语音引擎=>讯飞:iFly,百度:'baidu'
|
speechEngine: {
|
||||||
|
//语音引擎=>讯飞:iFly,百度:'baidu'
|
||||||
type: String,
|
type: String,
|
||||||
default: 'baidu'
|
default: "baidu",
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
searchText:'', //搜索关键词
|
searchText: "", //搜索关键词
|
||||||
hList:[] //历史记录
|
hList: [], //历史记录
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
var that = this;
|
var that = this;
|
||||||
setTimeout(()=>{
|
setTimeout(() => {
|
||||||
this.setData({
|
|
||||||
searchText: this.suggestText
|
|
||||||
});
|
|
||||||
|
|
||||||
if (this.searchHisList.length > 0)
|
// this.setData({
|
||||||
{
|
// searchText: this.suggestText,
|
||||||
|
// });
|
||||||
|
|
||||||
|
if (this.searchHisList.length > 0) {
|
||||||
//this.hList = this.searchHisList;
|
//this.hList = this.searchHisList;
|
||||||
this.hList = uni.getStorageSync('search_cache');
|
this.hList = uni.getStorageSync("search_cache");
|
||||||
|
} else {
|
||||||
|
this.hList = uni.getStorageSync("search_cache");
|
||||||
}
|
}
|
||||||
else
|
}, 200);
|
||||||
{
|
|
||||||
this.hList = uni.getStorageSync('search_cache');
|
|
||||||
}
|
|
||||||
}, 200)
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
searchStart: function() { //触发搜索
|
searchStart: function () {
|
||||||
|
//触发搜索
|
||||||
let _this = this;
|
let _this = this;
|
||||||
if (_this.searchText == '') {
|
if (_this.searchText == "") {
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: _this.__('请输入关键字'),
|
title: _this.__("请输入关键字"),
|
||||||
icon: 'none',
|
icon: "none",
|
||||||
duration: 1000
|
duration: 1000,
|
||||||
});
|
});
|
||||||
}else{
|
} else {
|
||||||
|
|
||||||
uni.getStorage({
|
uni.getStorage({
|
||||||
key:'search_cache',
|
key: "search_cache",
|
||||||
success(res){
|
success(res) {
|
||||||
let list = res.data;
|
let list = res.data;
|
||||||
let t = true;
|
let t = true;
|
||||||
if(list.length > 5){
|
if (list.length > 5) {
|
||||||
for(let item of list){
|
for (let item of list) {
|
||||||
if(item == _this.searchText){
|
if (item == _this.searchText) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
list.pop();
|
list.pop();
|
||||||
list.unshift(_this.searchText);
|
list.unshift(_this.searchText);
|
||||||
}else{
|
} else {
|
||||||
for(let item of list){
|
for (let item of list) {
|
||||||
if(item == _this.searchText){
|
if (item == _this.searchText) {
|
||||||
t = false;
|
t = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(t)
|
if (t) {
|
||||||
{
|
|
||||||
list.unshift(_this.searchText);
|
list.unshift(_this.searchText);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
_this.hList = list;
|
_this.hList = list;
|
||||||
uni.setStorage({
|
uni.setStorage({
|
||||||
key: 'search_cache',
|
key: "search_cache",
|
||||||
data: _this.hList
|
data: _this.hList,
|
||||||
});
|
});
|
||||||
_this.$emit('getSearchText', _this.searchText);
|
_this.$emit("getSearchText", _this.searchText);
|
||||||
},
|
},
|
||||||
fail() {
|
fail() {
|
||||||
_this.hList = [];
|
_this.hList = [];
|
||||||
_this.hList.push(_this.searchText);
|
_this.hList.push(_this.searchText);
|
||||||
uni.setStorage({
|
uni.setStorage({
|
||||||
key: 'search_cache',
|
key: "search_cache",
|
||||||
data: _this.hList
|
data: _this.hList,
|
||||||
|
});
|
||||||
|
_this.$emit("getSearchText", _this.searchText);
|
||||||
|
},
|
||||||
});
|
});
|
||||||
_this.$emit('getSearchText', _this.searchText);
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
keywordsClick (item) { //推荐搜索
|
keywordsClick(item) {
|
||||||
|
//推荐搜索
|
||||||
this.searchText = item;
|
this.searchText = item;
|
||||||
this.$emit('getSearchText', item);
|
this.$emit("getSearchText", item);
|
||||||
},
|
},
|
||||||
delhistory () { //清空历史记录
|
delhistory() {
|
||||||
|
//清空历史记录
|
||||||
this.hList = [];
|
this.hList = [];
|
||||||
uni.setStorage({
|
uni.setStorage({
|
||||||
key: 'search_cache',
|
key: "search_cache",
|
||||||
data: []
|
data: [],
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
startRecognize: function() { //语音输入
|
startRecognize: function () {
|
||||||
|
//语音输入
|
||||||
let _this = this;
|
let _this = this;
|
||||||
let options = {};
|
let options = {};
|
||||||
options.engine = _this.speechEngine;
|
options.engine = _this.speechEngine;
|
||||||
options.punctuation = false; // 是否需要标点符号
|
options.punctuation = false; // 是否需要标点符号
|
||||||
options.timeout = 10 * 1000;
|
options.timeout = 10 * 1000;
|
||||||
plus.speech.startRecognize(options, function(s) {
|
plus.speech.startRecognize(options, function (s) {
|
||||||
_this.searchText = _this.searchText + s;
|
_this.searchText = _this.searchText + s;
|
||||||
});
|
});
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
}
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="less" scoped>
|
<style lang="less" scoped>
|
||||||
.search{
|
.search {
|
||||||
width: 640rpx;
|
width: 640rpx;
|
||||||
margin: 30rpx auto 0;
|
margin: 30rpx auto 0;
|
||||||
position: relative;
|
position: relative;
|
||||||
input{
|
input {
|
||||||
background-color: #F7F7F7;
|
background-color: #f7f7f7;
|
||||||
padding: 10rpx 74rpx;
|
padding: 10rpx 74rpx;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
border-radius: 50rpx;
|
border-radius: 50rpx;
|
||||||
}
|
}
|
||||||
.voice-icon{
|
.voice-icon {
|
||||||
width: 36rpx;
|
width: 36rpx;
|
||||||
height: 36rpx;
|
height: 36rpx;
|
||||||
padding: 16rpx 20rpx 16rpx 0;
|
padding: 16rpx 20rpx 16rpx 0;
|
||||||
@ -197,7 +242,7 @@
|
|||||||
top: 4rpx;
|
top: 4rpx;
|
||||||
z-index: 10;
|
z-index: 10;
|
||||||
}
|
}
|
||||||
.search-icon{
|
.search-icon {
|
||||||
width: 36rpx;
|
width: 36rpx;
|
||||||
height: 36rpx;
|
height: 36rpx;
|
||||||
padding: 16rpx 20rpx 16rpx 0;
|
padding: 16rpx 20rpx 16rpx 0;
|
||||||
@ -206,14 +251,14 @@
|
|||||||
top: -2rpx;
|
top: -2rpx;
|
||||||
z-index: 10;
|
z-index: 10;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.s-block{
|
.s-block {
|
||||||
margin-top: 30rpx;
|
margin-top: 30rpx;
|
||||||
.header{
|
.header {
|
||||||
font-size: 32rpx;
|
font-size: 32rpx;
|
||||||
padding: 30rpx;
|
padding: 30rpx;
|
||||||
position: relative;
|
position: relative;
|
||||||
image{
|
image {
|
||||||
width: 36rpx;
|
width: 36rpx;
|
||||||
height: 36rpx;
|
height: 36rpx;
|
||||||
padding: 10rpx;
|
padding: 10rpx;
|
||||||
@ -222,33 +267,33 @@
|
|||||||
top: 24rpx;
|
top: 24rpx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.list{
|
.list {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
view{
|
view {
|
||||||
width: 50%;
|
width: 50%;
|
||||||
color: #8A8A8A;
|
color: #8a8a8a;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
padding: 20rpx 0;
|
padding: 20rpx 0;
|
||||||
border-top: 2rpx solid #FFF;
|
border-top: 2rpx solid #fff;
|
||||||
border-left: 2rpx solid #FFF;
|
border-left: 2rpx solid #fff;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
background-color: #F7F7F7;
|
background-color: #f7f7f7;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.s-circle{
|
.s-circle {
|
||||||
margin-top: 30rpx;
|
margin-top: 30rpx;
|
||||||
.header{
|
.header {
|
||||||
font-size: 32rpx;
|
font-size: 32rpx;
|
||||||
padding: 30rpx;
|
padding: 30rpx;
|
||||||
border-bottom: 2rpx solid #F9F9F9;
|
border-bottom: 2rpx solid #f9f9f9;
|
||||||
position: relative;
|
position: relative;
|
||||||
image{
|
image {
|
||||||
width: 36rpx;
|
width: 36rpx;
|
||||||
height: 36rpx;
|
height: 36rpx;
|
||||||
padding: 10rpx;
|
padding: 10rpx;
|
||||||
@ -257,67 +302,67 @@
|
|||||||
top: 24rpx;
|
top: 24rpx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.list{
|
.list {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
padding: 0 30rpx 20rpx;
|
padding: 0 30rpx 20rpx;
|
||||||
view{
|
view {
|
||||||
padding: 8rpx 30rpx;
|
padding: 8rpx 30rpx;
|
||||||
margin: 20rpx 30rpx 0 0;
|
margin: 20rpx 30rpx 0 0;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
color: #8A8A8A;
|
color: #8a8a8a;
|
||||||
background-color: #F7F7F7;
|
background-color: #f7f7f7;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
border-radius: 20rpx;
|
border-radius: 20rpx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.wanted-block{
|
.wanted-block {
|
||||||
margin-top: 30rpx;
|
margin-top: 30rpx;
|
||||||
.header{
|
.header {
|
||||||
font-size: 32rpx;
|
font-size: 32rpx;
|
||||||
padding: 30rpx;
|
padding: 30rpx;
|
||||||
}
|
}
|
||||||
.list{
|
.list {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
view{
|
view {
|
||||||
width: 50%;
|
width: 50%;
|
||||||
color: #8A8A8A;
|
color: #8a8a8a;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
padding: 20rpx 0;
|
padding: 20rpx 0;
|
||||||
border-top: 2rpx solid #FFF;
|
border-top: 2rpx solid #fff;
|
||||||
border-left: 2rpx solid #FFF;
|
border-left: 2rpx solid #fff;
|
||||||
background-color: #F7F7F7;
|
background-color: #f7f7f7;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.wanted-circle{
|
.wanted-circle {
|
||||||
margin-top: 30rpx;
|
margin-top: 30rpx;
|
||||||
.header{
|
.header {
|
||||||
font-size: 32rpx;
|
font-size: 32rpx;
|
||||||
padding: 30rpx;
|
padding: 30rpx;
|
||||||
}
|
}
|
||||||
.list{
|
.list {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
padding: 0 30rpx 20rpx;
|
padding: 0 30rpx 20rpx;
|
||||||
view{
|
view {
|
||||||
padding: 8rpx 30rpx;
|
padding: 8rpx 30rpx;
|
||||||
margin: 20rpx 30rpx 0 0;
|
margin: 20rpx 30rpx 0 0;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
color: #8A8A8A;
|
color: #8a8a8a;
|
||||||
background-color: #F7F7F7;
|
background-color: #f7f7f7;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
border-radius: 20rpx;
|
border-radius: 20rpx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -266,7 +266,10 @@ export default {
|
|||||||
"pay": bu + "/account/modules/pay/api/payment/wx/pay.php",
|
"pay": bu + "/account/modules/pay/api/payment/wx/pay.php",
|
||||||
"get_tpl_msg_config": au + "?ctl=Connect_Weixin&met=getTmpMsgConfig&typ=json&flag=app",
|
"get_tpl_msg_config": au + "?ctl=Connect_Weixin&met=getTmpMsgConfig&typ=json&flag=app",
|
||||||
"send_tpl_msg": au + "?ctl=Connect_Weixin&met=sendTplMsg&typ=json&flag=app",
|
"send_tpl_msg": au + "?ctl=Connect_Weixin&met=sendTplMsg&typ=json&flag=app",
|
||||||
"get_user_phone_number": ip + "account/weiXin/getUserPhoneNumber"
|
"get_user_phone_number": ip + "account/weiXin/getUserPhoneNumber",
|
||||||
|
"get_wx_phone_number": ip + "account/weiXin/getWxUserPhoneNumber",
|
||||||
|
"get_wx_openid": ip + "account/weiXin/getWxOpenId",
|
||||||
|
"doWxUserRegisterAndLogin": ip + "account/login/doWxUserRegisterAndLogin",
|
||||||
},
|
},
|
||||||
"store": {
|
"store": {
|
||||||
"get": iu + "?ctl=Store&met=get&typ=json",
|
"get": iu + "?ctl=Store&met=get&typ=json",
|
||||||
@ -284,7 +287,9 @@ export default {
|
|||||||
"menu": iu + "?ctl=Store&met=menu&typ=json",
|
"menu": iu + "?ctl=Store&met=menu&typ=json",
|
||||||
// "lists":iu + "?ctl=Store&met=lists&typ=json",
|
// "lists":iu + "?ctl=Store&met=lists&typ=json",
|
||||||
"lists": ip + "shop/store/lists",
|
"lists": ip + "shop/store/lists",
|
||||||
|
"category": ip + "shop/store/category",
|
||||||
|
// 附近门店列表
|
||||||
|
"nearList": ip + 'shop/store/near/list',
|
||||||
"listsChain": iu + "?ctl=Chain&met=lists&typ=json",
|
"listsChain": iu + "?ctl=Chain&met=lists&typ=json",
|
||||||
// "getChain":iu + "?ctl=Chain&met=getChainInfo&typ=json",
|
// "getChain":iu + "?ctl=Chain&met=getChainInfo&typ=json",
|
||||||
"getChain": ip + "shop/shop-chain-base/getChainInfo",
|
"getChain": ip + "shop/shop-chain-base/getChainInfo",
|
||||||
@ -378,6 +383,7 @@ export default {
|
|||||||
"sel": ip + "shop/userCart/sel",
|
"sel": ip + "shop/userCart/sel",
|
||||||
// "checkout": iu + "?ctl=Cart&met=checkout&typ=json",
|
// "checkout": iu + "?ctl=Cart&met=checkout&typ=json",
|
||||||
"checkout": ip + "shop/userCart/checkout",
|
"checkout": ip + "shop/userCart/checkout",
|
||||||
|
"getTimeSlots":ip+"/shop/userOrder/booking_time_args",
|
||||||
"checkDelivery": iu + "?ctl=Cart&met=checkDelivery&typ=json",
|
"checkDelivery": iu + "?ctl=Cart&met=checkDelivery&typ=json",
|
||||||
"order": iu + "?ctl=Cart&met=order&typ=e",
|
"order": iu + "?ctl=Cart&met=order&typ=e",
|
||||||
// "getselect":iu + "?ctl=Cart&met=getselect&typ=json",
|
// "getselect":iu + "?ctl=Cart&met=getselect&typ=json",
|
||||||
@ -580,6 +586,7 @@ export default {
|
|||||||
"listsCutPriceActivity": iu + "?ctl=Activity&met=listsCutPriceActivity&typ=json",
|
"listsCutPriceActivity": iu + "?ctl=Activity&met=listsCutPriceActivity&typ=json",
|
||||||
// "getCutPriceActivity": iu + "?ctl=Activity&met=getCutPriceActivity&typ=json",
|
// "getCutPriceActivity": iu + "?ctl=Activity&met=getCutPriceActivity&typ=json",
|
||||||
"getCutPriceActivity": ip + "shop/userActivity/getCutPriceActivity",
|
"getCutPriceActivity": ip + "shop/userActivity/getCutPriceActivity",
|
||||||
|
"dolookTurnCutPrice":ip+"shop/userActivity/dolookTurnCutPrice",
|
||||||
// "listsCutPriceHistory": iu + "?ctl=Activity&met=listsCutPriceHistory&typ=json",
|
// "listsCutPriceHistory": iu + "?ctl=Activity&met=listsCutPriceHistory&typ=json",
|
||||||
"listsCutPriceHistory": ip + "shop/userActivity/listsCutPriceHistory",
|
"listsCutPriceHistory": ip + "shop/userActivity/listsCutPriceHistory",
|
||||||
"listsGroupbookingActivity": iu + "?ctl=Activity&met=listsGroupbookingActivity&typ=json",
|
"listsGroupbookingActivity": iu + "?ctl=Activity&met=listsGroupbookingActivity&typ=json",
|
||||||
@ -1086,6 +1093,16 @@ export default {
|
|||||||
"card": {
|
"card": {
|
||||||
"card_list": mu + "/card/pay/pay-card-info/getListByUserid",
|
"card_list": mu + "/card/pay/pay-card-info/getListByUserid",
|
||||||
"card_info_get": mu + "/card/pay/pay-card-info/getInfoByCardTypeId"
|
"card_info_get": mu + "/card/pay/pay-card-info/getInfoByCardTypeId"
|
||||||
|
},
|
||||||
|
// 顺丰同城
|
||||||
|
"SF":{
|
||||||
|
"createOrder": ip + 'shop/sf-express/create-order',
|
||||||
|
"addOrderGratuityFee" : ip + 'shop/sf-express/add-order-gratuity-fee',
|
||||||
|
"reminderOrder" : ip + 'shop/sf-express/reminder-order',
|
||||||
|
"cancelOrder" : ip + 'shop/sf-express/cancel-order',
|
||||||
|
"listOrderFeed" : ip + 'shop/sf-express/list-order-feed',
|
||||||
|
"riderLatestPosition" : ip + 'shop/sf-express/rider-latest-position',
|
||||||
|
"mapH5" : ip + 'shop/sf-express/rider-view/v2'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tabBar": {
|
"tabBar": {
|
||||||
@ -1098,10 +1115,10 @@ export default {
|
|||||||
"pagePath": "pages/index/index",
|
"pagePath": "pages/index/index",
|
||||||
"iconPath": "static/images/tabBar1.png",
|
"iconPath": "static/images/tabBar1.png",
|
||||||
"selectedIconPath": "static/images/tabBar_sel1.png",
|
"selectedIconPath": "static/images/tabBar_sel1.png",
|
||||||
"text": "首页"
|
"text": "推荐"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"pagePath": "pages/category/category",
|
"pagePath": "pages/category/storeCategory",
|
||||||
"iconPath": "static/images/tabBar2.png",
|
"iconPath": "static/images/tabBar2.png",
|
||||||
"selectedIconPath": "static/images/tabBar_sel2.png",
|
"selectedIconPath": "static/images/tabBar_sel2.png",
|
||||||
"text": "分类"
|
"text": "分类"
|
||||||
@ -1110,7 +1127,7 @@ export default {
|
|||||||
"pagePath": "pages/index/image",
|
"pagePath": "pages/index/image",
|
||||||
"iconPath": "static/images/tabBarSns.png",
|
"iconPath": "static/images/tabBarSns.png",
|
||||||
"selectedIconPath": "static/images/tabBarSns_sel.png",
|
"selectedIconPath": "static/images/tabBarSns_sel.png",
|
||||||
"text": "发现"
|
"text": "社区"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"pagePath": "pages/cart/cart",
|
"pagePath": "pages/cart/cart",
|
||||||
|
|||||||
@ -7,7 +7,7 @@ var data = {
|
|||||||
symbol_right:'CNY',
|
symbol_right:'CNY',
|
||||||
label:'中文',
|
label:'中文',
|
||||||
standard:true,
|
standard:true,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbc4d56.png',
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbc4d56.png',
|
||||||
items:[
|
items:[
|
||||||
{
|
{
|
||||||
lang:'zh-CN',
|
lang:'zh-CN',
|
||||||
@ -16,7 +16,7 @@ var data = {
|
|||||||
symbol_right:'CNY',
|
symbol_right:'CNY',
|
||||||
label:'中文',
|
label:'中文',
|
||||||
standard:true,
|
standard:true,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbc4d56.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbc4d56.png'
|
||||||
}/*,
|
}/*,
|
||||||
{
|
{
|
||||||
lang:'zh-HK',
|
lang:'zh-HK',
|
||||||
@ -25,7 +25,7 @@ var data = {
|
|||||||
symbol_right:'CNY',
|
symbol_right:'CNY',
|
||||||
label:'中国香港',
|
label:'中国香港',
|
||||||
standard:true,
|
standard:true,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbc4d56.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbc4d56.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'zh-TW',
|
lang:'zh-TW',
|
||||||
@ -34,7 +34,7 @@ var data = {
|
|||||||
symbol_right:'TWD',
|
symbol_right:'TWD',
|
||||||
label:'中国台湾',
|
label:'中国台湾',
|
||||||
standard:true,
|
standard:true,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbc4d56.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbc4d56.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'en-GB',
|
lang:'en-GB',
|
||||||
@ -43,7 +43,7 @@ var data = {
|
|||||||
symbol_right:'USD',
|
symbol_right:'USD',
|
||||||
label:'English',
|
label:'English',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbd2fde.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbd2fde.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'ja-JP',
|
lang:'ja-JP',
|
||||||
@ -52,7 +52,7 @@ var data = {
|
|||||||
standard:false,
|
standard:false,
|
||||||
symbol:'J.¥',
|
symbol:'J.¥',
|
||||||
symbol_right:'JPY',
|
symbol_right:'JPY',
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affba1acd.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affba1acd.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'th-TH',
|
lang:'th-TH',
|
||||||
@ -61,7 +61,7 @@ var data = {
|
|||||||
symbol_right:'THB',
|
symbol_right:'THB',
|
||||||
label:'ภาษาไทย',
|
label:'ภาษาไทย',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affba41e4.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affba41e4.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'es-MX',
|
lang:'es-MX',
|
||||||
@ -70,7 +70,7 @@ var data = {
|
|||||||
symbol_right:'MXP',
|
symbol_right:'MXP',
|
||||||
label:'México',
|
label:'México',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affb9d481.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affb9d481.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'ar-SA',
|
lang:'ar-SA',
|
||||||
@ -79,7 +79,7 @@ var data = {
|
|||||||
symbol_right:'SAR',
|
symbol_right:'SAR',
|
||||||
standard:true,
|
standard:true,
|
||||||
label:'عربي ،',
|
label:'عربي ،',
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbcc280.png',
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbcc280.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'vi-VN',
|
lang:'vi-VN',
|
||||||
@ -88,7 +88,7 @@ var data = {
|
|||||||
symbol_right:'THB',
|
symbol_right:'THB',
|
||||||
label:'ViệtName',
|
label:'ViệtName',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbaedc0.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbaedc0.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'tr-TR',
|
lang:'tr-TR',
|
||||||
@ -97,7 +97,7 @@ var data = {
|
|||||||
symbol_right:'TRL',
|
symbol_right:'TRL',
|
||||||
label:'Türkçe',
|
label:'Türkçe',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbba93b.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbba93b.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'id-ID',
|
lang:'id-ID',
|
||||||
@ -106,7 +106,7 @@ var data = {
|
|||||||
symbol_right:'IDR',
|
symbol_right:'IDR',
|
||||||
label:'IndonesiaName',
|
label:'IndonesiaName',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbefcd4.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbefcd4.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'en-GB',
|
lang:'en-GB',
|
||||||
@ -115,7 +115,7 @@ var data = {
|
|||||||
symbol_right:'EUR',
|
symbol_right:'EUR',
|
||||||
label:'Britain',
|
label:'Britain',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbc9b6c.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbc9b6c.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'es-ES',
|
lang:'es-ES',
|
||||||
@ -124,7 +124,7 @@ var data = {
|
|||||||
symbol_right:'EUR',
|
symbol_right:'EUR',
|
||||||
label:'España',
|
label:'España',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affb9d481.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affb9d481.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'de-DE',
|
lang:'de-DE',
|
||||||
@ -133,7 +133,7 @@ var data = {
|
|||||||
symbol_right:'EUR',
|
symbol_right:'EUR',
|
||||||
label:'Deutsch',
|
label:'Deutsch',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbc0ecf.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbc0ecf.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'fr-FR',
|
lang:'fr-FR',
|
||||||
@ -142,7 +142,7 @@ var data = {
|
|||||||
symbol_right:'EUR',
|
symbol_right:'EUR',
|
||||||
label:'Français',
|
label:'Français',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affb9fb8a.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affb9fb8a.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'pt-PT',
|
lang:'pt-PT',
|
||||||
@ -151,7 +151,7 @@ var data = {
|
|||||||
symbol_right:'EUR',
|
symbol_right:'EUR',
|
||||||
label:'Português',
|
label:'Português',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbf0c70.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbf0c70.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'it-IT',
|
lang:'it-IT',
|
||||||
@ -160,7 +160,7 @@ var data = {
|
|||||||
symbol_right:'EUR',
|
symbol_right:'EUR',
|
||||||
label:'Italiano',
|
label:'Italiano',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbba16a.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbba16a.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'ru-RU',
|
lang:'ru-RU',
|
||||||
@ -169,7 +169,7 @@ var data = {
|
|||||||
symbol_right:'RUB',
|
symbol_right:'RUB',
|
||||||
label:'Русский язык',
|
label:'Русский язык',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affba229e.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affba229e.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'ro-RO',
|
lang:'ro-RO',
|
||||||
@ -178,7 +178,7 @@ var data = {
|
|||||||
symbol_right:'RON',
|
symbol_right:'RON',
|
||||||
label:'România',
|
label:'România',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affb9ccab.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affb9ccab.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'az-AZ',
|
lang:'az-AZ',
|
||||||
@ -187,7 +187,7 @@ var data = {
|
|||||||
symbol_right:'AZN',
|
symbol_right:'AZN',
|
||||||
label:'AzerbayjanlıName',
|
label:'AzerbayjanlıName',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbd2044.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbd2044.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'el-GR',
|
lang:'el-GR',
|
||||||
@ -196,7 +196,7 @@ var data = {
|
|||||||
symbol_right:'EUR',
|
symbol_right:'EUR',
|
||||||
label:'Ελληνικά',
|
label:'Ελληνικά',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbec621.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbec621.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'fi-FI',
|
lang:'fi-FI',
|
||||||
@ -205,7 +205,7 @@ var data = {
|
|||||||
symbol_right:'EUR',
|
symbol_right:'EUR',
|
||||||
label:'Suomi',
|
label:'Suomi',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbdd3f1.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbdd3f1.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'lv-LV',
|
lang:'lv-LV',
|
||||||
@ -214,7 +214,7 @@ var data = {
|
|||||||
symbol_right:'EUR',
|
symbol_right:'EUR',
|
||||||
label:'Latvijas',
|
label:'Latvijas',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbe29e1.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbe29e1.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'nl-NL',
|
lang:'nl-NL',
|
||||||
@ -223,7 +223,7 @@ var data = {
|
|||||||
symbol_right:'EUR',
|
symbol_right:'EUR',
|
||||||
label:'Nederlands',
|
label:'Nederlands',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbd7633.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbd7633.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'da-DK',
|
lang:'da-DK',
|
||||||
@ -232,7 +232,7 @@ var data = {
|
|||||||
symbol_right:'EUR',
|
symbol_right:'EUR',
|
||||||
label:'Denmark',
|
label:'Denmark',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbe9741.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbe9741.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'sr-RS',
|
lang:'sr-RS',
|
||||||
@ -241,7 +241,7 @@ var data = {
|
|||||||
symbol_right:'EUR',
|
symbol_right:'EUR',
|
||||||
label:'Република Србија',
|
label:'Република Србија',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affb99601.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affb99601.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'pl-PL',
|
lang:'pl-PL',
|
||||||
@ -250,7 +250,7 @@ var data = {
|
|||||||
symbol_right:'EUR',
|
symbol_right:'EUR',
|
||||||
label:'Polski',
|
label:'Polski',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbb5356.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbb5356.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'uk-UA',
|
lang:'uk-UA',
|
||||||
@ -259,7 +259,7 @@ var data = {
|
|||||||
symbol_right:'EUR',
|
symbol_right:'EUR',
|
||||||
label:'УкраїнськаName',
|
label:'УкраїнськаName',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbd5ec1.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbd5ec1.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'kk-KZ',
|
lang:'kk-KZ',
|
||||||
@ -268,7 +268,7 @@ var data = {
|
|||||||
symbol_right:'KZT',
|
symbol_right:'KZT',
|
||||||
label:'ҚазақстанName',
|
label:'ҚазақстанName',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbc2e0f.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbc2e0f.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'my-MM',
|
lang:'my-MM',
|
||||||
@ -277,7 +277,7 @@ var data = {
|
|||||||
symbol_right:'BUK',
|
symbol_right:'BUK',
|
||||||
label:'မြန်မာ',
|
label:'မြန်မာ',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affba323e.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affba323e.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'ko-KR',
|
lang:'ko-KR',
|
||||||
@ -286,7 +286,7 @@ var data = {
|
|||||||
symbol_right:'KRW',
|
symbol_right:'KRW',
|
||||||
label:'한국.',
|
label:'한국.',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/ko_KR.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/ko_KR.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'ms-MY',
|
lang:'ms-MY',
|
||||||
@ -295,7 +295,7 @@ var data = {
|
|||||||
symbol_right:'MYR',
|
symbol_right:'MYR',
|
||||||
label:'Malay',
|
label:'Malay',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/5322affbc939c.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/5322affbc939c.png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
lang:'lo-LA',
|
lang:'lo-LA',
|
||||||
@ -304,7 +304,7 @@ var data = {
|
|||||||
symbol_right:'LAK',
|
symbol_right:'LAK',
|
||||||
label:'ເມືອງລາວ',
|
label:'ເມືອງລາວ',
|
||||||
standard:false,
|
standard:false,
|
||||||
img:'https://static.lancerdt.com/lancerdt/flags/square/lo_LA.png'
|
img:'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/lancerdt/flags/square/lo_LA.png'
|
||||||
}*/
|
}*/
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
BIN
dist/assets/no-sele.ef212994.png
vendored
Normal file
|
After Width: | Height: | Size: 7.3 KiB |
BIN
dist/community/static/false.png
vendored
Normal file
|
After Width: | Height: | Size: 259 B |
BIN
dist/community/static/img/douyin/atuser-2.png
vendored
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
dist/community/static/img/douyin/atuser.png
vendored
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
dist/community/static/img/douyin/biaoqing-2.png
vendored
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
dist/community/static/img/douyin/biaoqing.png
vendored
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
dist/community/static/img/douyin/chacha-4.png
vendored
Normal file
|
After Width: | Height: | Size: 4.6 KiB |
BIN
dist/community/static/img/douyin/cuowu.png
vendored
Normal file
|
After Width: | Height: | Size: 5.9 KiB |
BIN
dist/community/static/img/douyin/dianzan-6.png
vendored
Normal file
|
After Width: | Height: | Size: 3.7 KiB |
BIN
dist/community/static/img/douyin/dianzan-7.png
vendored
Normal file
|
After Width: | Height: | Size: 6.1 KiB |
BIN
dist/community/static/img/douyin/gif-2.png
vendored
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
BIN
dist/community/static/img/douyin/jia-9.png
vendored
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
dist/community/static/img/douyin/jianpan.png
vendored
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
dist/community/static/img/douyin/shanchu-3.png
vendored
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
dist/community/static/img/douyin/shangyi.png
vendored
Normal file
|
After Width: | Height: | Size: 4.3 KiB |
BIN
dist/community/static/img/douyin/sousuo-7.png
vendored
Normal file
|
After Width: | Height: | Size: 4.1 KiB |
BIN
dist/community/static/img/douyin/time.png
vendored
Normal file
|
After Width: | Height: | Size: 4.2 KiB |
BIN
dist/community/static/img/douyin/xianxing.png
vendored
Normal file
|
After Width: | Height: | Size: 3.6 KiB |
BIN
dist/community/static/img/douyin/you-3.png
vendored
Normal file
|
After Width: | Height: | Size: 4.5 KiB |
BIN
dist/community/static/img/douyin/zfxsc.png
vendored
Normal file
|
After Width: | Height: | Size: 2.7 KiB |
BIN
dist/community/static/img/false.png
vendored
Normal file
|
After Width: | Height: | Size: 259 B |
BIN
dist/community/static/img/index/aixining.png
vendored
Normal file
|
After Width: | Height: | Size: 130 KiB |
BIN
dist/community/static/img/index/jubao.png
vendored
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
dist/community/static/img/index/liaotian-2.png
vendored
Normal file
|
After Width: | Height: | Size: 6.2 KiB |
BIN
dist/community/static/img/index/logins.gif
vendored
Normal file
|
After Width: | Height: | Size: 43 KiB |
BIN
dist/community/static/img/index/pause.png
vendored
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
dist/community/static/img/index/play.png
vendored
Normal file
|
After Width: | Height: | Size: 2.9 KiB |
BIN
dist/community/static/img/index/sc-2.png
vendored
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
dist/community/static/img/index/sc.png
vendored
Normal file
|
After Width: | Height: | Size: 876 B |
BIN
dist/community/static/img/index/share-fill.png
vendored
Normal file
|
After Width: | Height: | Size: 4.2 KiB |
BIN
dist/community/static/img/index/xin-2.png
vendored
Normal file
|
After Width: | Height: | Size: 4.7 KiB |
BIN
dist/community/static/img/index/xin-3.png
vendored
Normal file
|
After Width: | Height: | Size: 7.4 KiB |
BIN
dist/community/static/img/index/xin.png
vendored
Normal file
|
After Width: | Height: | Size: 7.4 KiB |
BIN
dist/community/static/jihao.png
vendored
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
dist/community/static/youjiantou.png
vendored
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
133
dist/hybrid/html/scanbox.html
vendored
Normal file
@ -0,0 +1,133 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html lang="zh-CN" >
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
|
<meta name="apple-touch-fullscreen" content="yes" />
|
||||||
|
<meta name="format-detection" content="telephone=no"/>
|
||||||
|
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
|
||||||
|
<meta name="format-detection" content="telephone=no" />
|
||||||
|
<meta name="msapplication-tap-highlight" content="no" />
|
||||||
|
<meta name="viewport" content="initial-scale=1,maximum-scale=1,minimum-scale=1" />
|
||||||
|
<title>扫码核销</title>
|
||||||
|
<style>
|
||||||
|
.jsbridge {
|
||||||
|
height: 200px;
|
||||||
|
width: 200px;
|
||||||
|
background-color: red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.upimg {
|
||||||
|
height: 200px;
|
||||||
|
width: 200px;
|
||||||
|
background-color: green;
|
||||||
|
margin-bottom: 50px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
input[node-type=jsbridge]{
|
||||||
|
visibility: hidden;
|
||||||
|
width: 1rem;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
|
||||||
|
<script type="text/javascript" src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/js/jquery.min.js"></script>
|
||||||
|
<script type="text/javascript" src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/js/qrcode.lib.min.js"></script>
|
||||||
|
<script type="text/javascript" src="https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/js/qrcode.js"></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="sstouch-main-layout" style="margin-bottom: 14rem!important">
|
||||||
|
<div class="sstouch-order-search" style="height: auto !important">
|
||||||
|
<form class="sstouch-inp-con">
|
||||||
|
<input type="text" autocomplete="on" maxlength="50" placeholder="请输入提货码/服务码进行核销" name="pickup_code" id="pickup_code" style="display:none;" >
|
||||||
|
<span class="input-del"></span>
|
||||||
|
<div id="scan_btn" class="zc" style="width: 100%;height: 100%;line-height: 500px;font-size: 1rem;/* float: right; */opacity: 0.6;display: inline-grid;text-align: center;vertical-align: middle;">点击扫码<input class="no-follow" node-type="jsbridge" type="file" name="myPhoto" id="myPhoto" value="扫描二维码1" /></div>
|
||||||
|
|
||||||
|
<div class="form-btn"><a class="btn J_search" href="javascript:;" style="display:none;">查询订单</a></div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- 微信 JS-SDK 如果不需要兼容微信小程序,则无需引用此 JS 文件。 -->
|
||||||
|
<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.4.0.js"></script>
|
||||||
|
<!-- 支付宝的 JS-SDK 防止 404 需要动态加载,如果不需要兼容支付宝小程序,则无需引用此 JS 文件。 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
if (navigator.userAgent.indexOf('AlipayClient') > -1) {
|
||||||
|
document.writeln('<script src="https://appx/web-view.min.js"' + '>' + '<' + '/' + 'script>');
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<!-- 百度 JS-SDK 如果不需要兼容百度小程序,则无需引用此 JS 文件。 -->
|
||||||
|
<script type="text/javascript" src="https://b.bdstatic.com/searchbox/icms/searchbox/js/swan-1.7.0.js"></script>
|
||||||
|
<!-- uni 的 SDK -->
|
||||||
|
<script type="text/javascript" src="https://js.cdn.aliyun.dcloud.net.cn/dev/uni-app/uni.webview.1.4.9.js"></script>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
|
||||||
|
|
||||||
|
function scanPickupCode(pickupcode)
|
||||||
|
{
|
||||||
|
console.info(pickupcode);
|
||||||
|
//$('#pickup_code').val(pickupcode);
|
||||||
|
//$('.form-btn').addClass('ok');
|
||||||
|
//$(".J_search").click()
|
||||||
|
|
||||||
|
if ('error decoding QR Code' == pickupcode)
|
||||||
|
{
|
||||||
|
alert('请重新扫描!');
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
uni.getEnv(function(res) {
|
||||||
|
/*
|
||||||
|
else if (res.miniprogram) {
|
||||||
|
console.log('当前环境为【微信小程序】');
|
||||||
|
}else if (res.plus) {
|
||||||
|
console.log('当前环境为【微信小程序】');
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
if (res.h5) {
|
||||||
|
window.parent.window.scan_code = pickupcode
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
uni.postMessage({ data: { action: pickupcode } });
|
||||||
|
uni.navigateBack()
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
document.addEventListener('UniAppJSBridgeReady', function() {
|
||||||
|
//初始化扫描二维码按钮
|
||||||
|
Qrcode.init($('#scan_btn'), scanPickupCode);
|
||||||
|
});
|
||||||
|
|
||||||
|
/*
|
||||||
|
document.addEventListener('UniAppJSBridgeReady', function() {
|
||||||
|
uni.postMessage({
|
||||||
|
data: {
|
||||||
|
action: 'postMessage'
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
document.addEventListener('UniAppJSBridgeReady', function() {
|
||||||
|
uni.getEnv(function(res) {
|
||||||
|
if (res.plus) {
|
||||||
|
console.log('当前环境为【5+App】');
|
||||||
|
} else if (res.miniprogram) {
|
||||||
|
console.log('当前环境为【微信小程序】');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
972
dist/im/static/emoji/emojiData.js
vendored
Normal file
@ -0,0 +1,972 @@
|
|||||||
|
//模拟数据
|
||||||
|
var emojiData = {
|
||||||
|
"imgArr" : [
|
||||||
|
{
|
||||||
|
emojiName:"",
|
||||||
|
emojiSort:0,
|
||||||
|
minEmoji:false,
|
||||||
|
emojiPath:"",
|
||||||
|
emojiList: [
|
||||||
|
[
|
||||||
|
{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },
|
||||||
|
{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },
|
||||||
|
{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },
|
||||||
|
{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
// QQ 表情
|
||||||
|
emojiName:"QQemoji",
|
||||||
|
emojiSort:1,
|
||||||
|
minEmoji:true,
|
||||||
|
emojiPath:"https://res.wx.qq.com/mpres/htmledition/images/icon/emotion/",
|
||||||
|
// emojiPath: "static/img/qq/",
|
||||||
|
emojiList: [
|
||||||
|
[
|
||||||
|
{ url: '0.gif', alt: '[微笑]' },
|
||||||
|
{ url: '1.gif', alt: '[撇嘴]' },
|
||||||
|
{ url: '2.gif', alt: '[色]' },
|
||||||
|
{ url: '3.gif', alt: '[发呆]' },
|
||||||
|
{ url: '4.gif', alt: '[得意]' },
|
||||||
|
{ url: '5.gif', alt: '[流泪]' },
|
||||||
|
{ url: '6.gif', alt: '[害羞]' },
|
||||||
|
{ url: '7.gif', alt: '[闭嘴]' },
|
||||||
|
{ url: '8.gif', alt: '[睡]' },
|
||||||
|
{ url: '9.gif', alt: '[大哭]' },
|
||||||
|
{ url: '10.gif', alt: '[尴尬]' },
|
||||||
|
{ url: '11.gif', alt: '[发怒]' },
|
||||||
|
{ url: '12.gif', alt: '[调皮]' },
|
||||||
|
{ url: '13.gif', alt: '[呲牙]' },
|
||||||
|
{ url: '14.gif', alt: '[惊讶]' },
|
||||||
|
{ url: '15.gif', alt: '[难过]' },
|
||||||
|
{ url: '16.gif', alt: '[酷]' },
|
||||||
|
{ url: '17.gif', alt: '[冷汗]' },
|
||||||
|
{ url: '18.gif', alt: '[抓狂]' },
|
||||||
|
{ url: '19.gif', alt: '[吐]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '20.gif', alt: '[偷笑]' },
|
||||||
|
{ url: '21.gif', alt: '[愉快]' },
|
||||||
|
{ url: '22.gif', alt: '[白眼]' },
|
||||||
|
{ url: '23.gif', alt: '[傲慢]' },
|
||||||
|
{ url: '24.gif', alt: '[饥饿]' },
|
||||||
|
{ url: '25.gif', alt: '[困]' },
|
||||||
|
{ url: '26.gif', alt: '[惊恐]' },
|
||||||
|
{ url: '27.gif', alt: '[流汗]' },
|
||||||
|
{ url: '28.gif', alt: '[憨笑]' },
|
||||||
|
{ url: '29.gif', alt: '[悠闲]' },
|
||||||
|
{ url: '30.gif', alt: '[奋斗]' },
|
||||||
|
{ url: '31.gif', alt: '[咒骂]' },
|
||||||
|
{ url: '32.gif', alt: '[疑问]' },
|
||||||
|
{ url: '33.gif', alt: '[嘘]' },
|
||||||
|
{ url: '34.gif', alt: '[晕]' },
|
||||||
|
{ url: '35.gif', alt: '[疯了]' },
|
||||||
|
{ url: '36.gif', alt: '[衰]' },
|
||||||
|
{ url: '37.gif', alt: '[骷髅]' },
|
||||||
|
{ url: '38.gif', alt: '[敲打]' },
|
||||||
|
{ url: '39.gif', alt: '[再见]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '40.gif', alt: '[擦汗]' },
|
||||||
|
{ url: '41.gif', alt: '[抠鼻]' },
|
||||||
|
{ url: '42.gif', alt: '[鼓掌]' },
|
||||||
|
{ url: '43.gif', alt: '[糗大了]' },
|
||||||
|
{ url: '44.gif', alt: '[坏笔]' },
|
||||||
|
{ url: '45.gif', alt: '[左哼哼]' },
|
||||||
|
{ url: '46.gif', alt: '[右哼哼]' },
|
||||||
|
{ url: '47.gif', alt: '[哈欠]' },
|
||||||
|
{ url: '48.gif', alt: '[鄙视]' },
|
||||||
|
{ url: '49.gif', alt: '[委屈]' },
|
||||||
|
{ url: '50.gif', alt: '[快哭了]' },
|
||||||
|
{ url: '51.gif', alt: '[阴险]' },
|
||||||
|
{ url: '52.gif', alt: '[亲亲]' },
|
||||||
|
{ url: '53.gif', alt: '[吓]' },
|
||||||
|
{ url: '54.gif', alt: '[可怜]' },
|
||||||
|
{ url: '55.gif', alt: '[菜刀]' },
|
||||||
|
{ url: '56.gif', alt: '[西瓜]' },
|
||||||
|
{ url: '57.gif', alt: '[啤酒]' },
|
||||||
|
{ url: '58.gif', alt: '[篮球]' },
|
||||||
|
{ url: '59.gif', alt: '[乒乓]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '60.gif', alt: '[咖啡]' },
|
||||||
|
{ url: '61.gif', alt: '[饭]' },
|
||||||
|
{ url: '62.gif', alt: '[猪头]' },
|
||||||
|
{ url: '63.gif', alt: '[玫瑰]' },
|
||||||
|
{ url: '64.gif', alt: '[凋谢]' },
|
||||||
|
{ url: '65.gif', alt: '[嘴唇]' },
|
||||||
|
{ url: '66.gif', alt: '[爱心]' },
|
||||||
|
{ url: '67.gif', alt: '[心碎]' },
|
||||||
|
{ url: '68.gif', alt: '[蛋糕]' },
|
||||||
|
{ url: '69.gif', alt: '[闪电]' },
|
||||||
|
{ url: '70.gif', alt: '[炸弹]' },
|
||||||
|
{ url: '71.gif', alt: '[刀]' },
|
||||||
|
{ url: '72.gif', alt: '[足球]' },
|
||||||
|
{ url: '73.gif', alt: '[瓢虫]' },
|
||||||
|
{ url: '74.gif', alt: '[便便]' },
|
||||||
|
{ url: '75.gif', alt: '[月亮]' },
|
||||||
|
{ url: '76.gif', alt: '[太阳]' },
|
||||||
|
{ url: '77.gif', alt: '[礼物]' },
|
||||||
|
{ url: '78.gif', alt: '[拥抱]' },
|
||||||
|
{ url: '79.gif', alt: '[强]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '80.gif', alt: '[弱]' },
|
||||||
|
{ url: '81.gif', alt: '[握手]' },
|
||||||
|
{ url: '82.gif', alt: '[胜利]' },
|
||||||
|
{ url: '83.gif', alt: '[抱拳]' },
|
||||||
|
{ url: '84.gif', alt: '[勾引]' },
|
||||||
|
{ url: '85.gif', alt: '[拳头]' },
|
||||||
|
{ url: '86.gif', alt: '[差劲]' },
|
||||||
|
{ url: '87.gif', alt: '[爱你]' },
|
||||||
|
{ url: '88.gif', alt: '[NO]' },
|
||||||
|
{ url: '89.gif', alt: '[OK]' },
|
||||||
|
{ url: '90.gif', alt: '[爱情]' },
|
||||||
|
{ url: '91.gif', alt: '[飞吻]' },
|
||||||
|
{ url: '92.gif', alt: '[跳跳]' },
|
||||||
|
{ url: '93.gif', alt: '[发抖]' },
|
||||||
|
{ url: '94.gif', alt: '[怄火]' },
|
||||||
|
{ url: '95.gif', alt: '[转圈]' },
|
||||||
|
{ url: '96.gif', alt: '[磕头]' },
|
||||||
|
{ url: '97.gif', alt: '[回头]' },
|
||||||
|
{ url: '98.gif', alt: '[跳绳]' },
|
||||||
|
{ url: '99.gif', alt: '[投降]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '100.gif', alt: '[激动]' },
|
||||||
|
{ url: '101.gif', alt: '[乱舞]' },
|
||||||
|
{ url: '102.gif', alt: '[献吻]' },
|
||||||
|
{ url: '103.gif', alt: '[左太极]' },
|
||||||
|
{ url: '104.gif', alt: '[右太极]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
// 火信表情
|
||||||
|
emojiName:"huoxinList",
|
||||||
|
emojiSort:2,
|
||||||
|
minEmoji:true,
|
||||||
|
emojiPath:"https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/huoxin/",
|
||||||
|
emojiList: [
|
||||||
|
[
|
||||||
|
{ url: 'q_000.png', alt: '[测试1]' },
|
||||||
|
{ url: 'q_001.png', alt: '[测试2]' },
|
||||||
|
{ url: 'q_002.png', alt: '[测试3]' },
|
||||||
|
{ url: 'q_003.png', alt: '[]' },
|
||||||
|
{ url: 'q_004.png', alt: '[]' },
|
||||||
|
{ url: 'q_005.png', alt: '[]' },
|
||||||
|
{ url: 'q_006.png', alt: '[]' },
|
||||||
|
{ url: 'q_007.png', alt: '[]' },
|
||||||
|
{ url: 'q_008.png', alt: '[]' },
|
||||||
|
{ url: 'q_009.png', alt: '[]' },
|
||||||
|
{ url: 'q_010.png', alt: '[]' },
|
||||||
|
{ url: 'q_011.png', alt: '[]' },
|
||||||
|
{ url: 'q_012.png', alt: '[]' },
|
||||||
|
{ url: 'q_013.png', alt: '[]' },
|
||||||
|
{ url: 'q_014.png', alt: '[]' },
|
||||||
|
{ url: 'q_015.png', alt: '[]' },
|
||||||
|
{ url: 'q_016.png', alt: '[]' },
|
||||||
|
{ url: 'q_017.png', alt: '[]' },
|
||||||
|
{ url: 'q_018.png', alt: '[]' },
|
||||||
|
{ url: 'q_019.png', alt: '[]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: 'q_020.png', alt: '[]' },
|
||||||
|
{ url: 'q_021.png', alt: '[]' },
|
||||||
|
{ url: 'q_022.png', alt: '[]' },
|
||||||
|
{ url: 'q_023.png', alt: '[]' },
|
||||||
|
{ url: 'q_024.png', alt: '[]' },
|
||||||
|
{ url: 'q_025.png', alt: '[]' },
|
||||||
|
{ url: 'q_026.png', alt: '[]' },
|
||||||
|
{ url: 'q_027.png', alt: '[]' },
|
||||||
|
{ url: 'q_028.png', alt: '[]' },
|
||||||
|
{ url: 'q_029.png', alt: '[]' },
|
||||||
|
{ url: 'q_030.png', alt: '[]' },
|
||||||
|
{ url: 'q_031.png', alt: '[]' },
|
||||||
|
{ url: 'q_032.png', alt: '[]' },
|
||||||
|
{ url: 'q_033.png', alt: '[]' },
|
||||||
|
{ url: 'q_034.png', alt: '[]' },
|
||||||
|
{ url: 'q_035.png', alt: '[]' },
|
||||||
|
{ url: 'q_036.png', alt: '[]' },
|
||||||
|
{ url: 'q_037.png', alt: '[]' },
|
||||||
|
{ url: 'q_038.png', alt: '[]' },
|
||||||
|
{ url: 'q_039.png', alt: '[]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: 'q_040.png', alt: '[]' },
|
||||||
|
{ url: 'q_041.png', alt: '[]' },
|
||||||
|
{ url: 'q_042.png', alt: '[]' },
|
||||||
|
{ url: 'q_043.png', alt: '[]' },
|
||||||
|
{ url: 'q_044.png', alt: '[]' },
|
||||||
|
{ url: 'q_045.png', alt: '[]' },
|
||||||
|
{ url: 'q_046.png', alt: '[]' },
|
||||||
|
{ url: 'q_047.png', alt: '[]' },
|
||||||
|
{ url: 'q_048.png', alt: '[]' },
|
||||||
|
{ url: 'q_049.png', alt: '[]' },
|
||||||
|
{ url: 'q_050.png', alt: '[]' },
|
||||||
|
{ url: 'q_051.png', alt: '[]' },
|
||||||
|
{ url: 'q_052.png', alt: '[]' },
|
||||||
|
{ url: 'q_053.png', alt: '[]' },
|
||||||
|
{ url: 'q_054.png', alt: '[]' },
|
||||||
|
{ url: 'q_055.png', alt: '[]' },
|
||||||
|
{ url: 'q_056.png', alt: '[]' },
|
||||||
|
{ url: 'q_057.png', alt: '[]' },
|
||||||
|
{ url: 'q_058.png', alt: '[]' },
|
||||||
|
{ url: 'q_059.png', alt: '[]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: 'q_060.png', alt: '[]' },
|
||||||
|
{ url: 'q_061.png', alt: '[]' },
|
||||||
|
{ url: 'q_062.png', alt: '[]' },
|
||||||
|
{ url: 'q_063.png', alt: '[]' },
|
||||||
|
{ url: 'q_064.png', alt: '[]' },
|
||||||
|
{ url: 'q_065.png', alt: '[]' },
|
||||||
|
{ url: 'q_066.png', alt: '[]' },
|
||||||
|
{ url: 'q_067.png', alt: '[]' },
|
||||||
|
{ url: 'q_068.png', alt: '[]' },
|
||||||
|
{ url: 'q_069.png', alt: '[]' },
|
||||||
|
{ url: 'q_070.png', alt: '[]' },
|
||||||
|
{ url: 'q_071.png', alt: '[]' },
|
||||||
|
{ url: 'q_072.png', alt: '[]' },
|
||||||
|
{ url: 'q_073.png', alt: '[]' },
|
||||||
|
{ url: 'q_074.png', alt: '[]' },
|
||||||
|
{ url: 'q_075.png', alt: '[]' },
|
||||||
|
{ url: 'q_076.png', alt: '[]' },
|
||||||
|
{ url: 'q_077.png', alt: '[]' },
|
||||||
|
{ url: 'q_078.png', alt: '[]' },
|
||||||
|
{ url: 'q_079.png', alt: '[]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: 'q_080.png', alt: '[]' },
|
||||||
|
{ url: 'q_081.png', alt: '[]' },
|
||||||
|
{ url: 'q_082.png', alt: '[]' },
|
||||||
|
{ url: 'q_083.png', alt: '[]' },
|
||||||
|
{ url: 'q_084.png', alt: '[]' },
|
||||||
|
{ url: 'q_085.png', alt: '[]' },
|
||||||
|
{ url: 'q_086.png', alt: '[]' },
|
||||||
|
{ url: 'q_087.png', alt: '[]' },
|
||||||
|
{ url: 'q_088.png', alt: '[]' },
|
||||||
|
{ url: 'q_089.png', alt: '[]' },
|
||||||
|
{ url: 'q_090.png', alt: '[]' },
|
||||||
|
{ url: 'q_091.png', alt: '[]' },
|
||||||
|
{ url: 'q_092.png', alt: '[]' },
|
||||||
|
{ url: 'q_093.png', alt: '[]' },
|
||||||
|
{ url: 'q_094.png', alt: '[]' },
|
||||||
|
{ url: 'q_095.png', alt: '[]' },
|
||||||
|
{ url: 'q_096.png', alt: '[]' },
|
||||||
|
{ url: 'q_097.png', alt: '[]' },
|
||||||
|
{ url: 'q_098.png', alt: '[]' },
|
||||||
|
{ url: 'q_099.png', alt: '[]' },
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: 'q_101.png', alt: '[]' },
|
||||||
|
{ url: 'q_102.png', alt: '[]' },
|
||||||
|
{ url: 'q_103.png', alt: '[]' },
|
||||||
|
{ url: 'q_104.png', alt: '[]' },
|
||||||
|
{ url: 'q_105.png', alt: '[]' },
|
||||||
|
{ url: 'q_106.png', alt: '[]' },
|
||||||
|
{ url: 'q_107.png', alt: '[]' },
|
||||||
|
{ url: 'q_108.png', alt: '[]' },
|
||||||
|
{ url: 'q_109.png', alt: '[]' },
|
||||||
|
{ url: 'q_110.png', alt: '[]' },
|
||||||
|
{ url: 'q_111.png', alt: '[]' },
|
||||||
|
{ url: 'q_112.png', alt: '[]' },
|
||||||
|
{ url: 'q_113.png', alt: '[]' },
|
||||||
|
{ url: 'q_114.png', alt: '[]' },
|
||||||
|
{ url: 'q_115.png', alt: '[]' },
|
||||||
|
{ url: 'q_116.png', alt: '[]' },
|
||||||
|
{ url: 'q_117.png', alt: '[]' },
|
||||||
|
{ url: 'q_118.png', alt: '[]' },
|
||||||
|
{ url: 'q_119.png', alt: '[]' },
|
||||||
|
{ url: 'q_120.png', alt: '[]' },
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: 'q_121.png', alt: '[]' },
|
||||||
|
{ url: 'q_122.png', alt: '[]' },
|
||||||
|
{ url: 'q_123.png', alt: '[]' },
|
||||||
|
{ url: 'q_124.png', alt: '[]' },
|
||||||
|
{ url: 'q_125.png', alt: '[]' },
|
||||||
|
{ url: 'q_126.png', alt: '[]' },
|
||||||
|
{ url: 'q_127.png', alt: '[]' },
|
||||||
|
{ url: 'q_128.png', alt: '[]' },
|
||||||
|
{ url: 'q_129.png', alt: '[]' },
|
||||||
|
{ url: 'q_130.png', alt: '[]' },
|
||||||
|
{ url: 'q_131.png', alt: '[]' },
|
||||||
|
{ url: 'q_132.png', alt: '[]' },
|
||||||
|
{ url: 'q_133.png', alt: '[]' },
|
||||||
|
{ url: 'q_134.png', alt: '[]' },
|
||||||
|
{ url: 'q_135.png', alt: '[]' },
|
||||||
|
{ url: 'q_136.png', alt: '[]' },
|
||||||
|
{ url: 'q_137.png', alt: '[]' },
|
||||||
|
{ url: 'q_138.png', alt: '[]' },
|
||||||
|
{ url: 'q_139.png', alt: '[]' },
|
||||||
|
{ url: 'q_140.png', alt: '[]' },
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: 'q_141.png', alt: '[]' },
|
||||||
|
{ url: 'q_142.png', alt: '[]' },
|
||||||
|
{ url: 'q_143.png', alt: '[]' },
|
||||||
|
{ url: 'q_144.png', alt: '[]' },
|
||||||
|
{ url: 'q_145.png', alt: '[]' },
|
||||||
|
{ url: 'q_146.png', alt: '[]' },
|
||||||
|
{ url: 'q_147.png', alt: '[]' },
|
||||||
|
{ url: 'q_148.png', alt: '[]' },
|
||||||
|
{ url: 'q_149.png', alt: '[]' },
|
||||||
|
{ url: 'q_150.png', alt: '[]' },
|
||||||
|
{ url: 'q_151.png', alt: '[]' },
|
||||||
|
{ url: 'q_152.png', alt: '[]' },
|
||||||
|
{ url: 'q_153.png', alt: '[]' },
|
||||||
|
{ url: 'q_154.png', alt: '[]' },
|
||||||
|
{ url: 'q_155.png', alt: '[]' },
|
||||||
|
{ url: 'q_156.png', alt: '[]' },
|
||||||
|
{ url: 'q_157.png', alt: '[]' },
|
||||||
|
{ url: 'q_158.png', alt: '[]' },
|
||||||
|
{ url: 'q_159.png', alt: '[]' },
|
||||||
|
{ url: 'q_160.png', alt: '[]' },
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: 'q_161.png', alt: '[]' },
|
||||||
|
{ url: 'q_162.png', alt: '[]' },
|
||||||
|
{ url: 'q_163.png', alt: '[]' },
|
||||||
|
{ url: 'q_164.png', alt: '[]' },
|
||||||
|
{ url: 'q_165.png', alt: '[]' },
|
||||||
|
{ url: 'q_166.png', alt: '[]' },
|
||||||
|
{ url: 'q_167.png', alt: '[]' },
|
||||||
|
{ url: 'q_168.png', alt: '[]' },
|
||||||
|
{ url: 'q_169.png', alt: '[]' },
|
||||||
|
{ url: 'q_170.png', alt: '[]' },
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
// 钉钉表情
|
||||||
|
emojiName:"dingdingList",
|
||||||
|
emojiSort:2,
|
||||||
|
minEmoji:true,
|
||||||
|
emojiPath:"https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/dingding/",
|
||||||
|
emojiList: [
|
||||||
|
[
|
||||||
|
{ url: 'emotion_001.png', alt: '[微笑]' },
|
||||||
|
{ url: 'emotion_002.png', alt: '[可爱]' },
|
||||||
|
{ url: 'emotion_003.png', alt: '[憨笑]' },
|
||||||
|
{ url: 'emotion_004.png', alt: '[色]' },
|
||||||
|
{ url: 'emotion_005.png', alt: '[发呆]' },
|
||||||
|
{ url: 'emotion_006.png', alt: '[老板]' },
|
||||||
|
{ url: 'emotion_007.png', alt: '[流泪]' },
|
||||||
|
{ url: 'emotion_008.png', alt: '[害羞]' },
|
||||||
|
{ url: 'emotion_009.png', alt: '[闭嘴]' },
|
||||||
|
{ url: 'emotion_010.png', alt: '[睡]' },
|
||||||
|
{ url: 'emotion_011.png', alt: '[大哭]' },
|
||||||
|
{ url: 'emotion_012.png', alt: '[尴尬]' },
|
||||||
|
{ url: 'emotion_013.png', alt: '[感谢]' },
|
||||||
|
{ url: 'emotion_014.png', alt: '[赞]' },
|
||||||
|
{ url: 'emotion_015.png', alt: '[鼓掌]' },
|
||||||
|
{ url: 'emotion_016.png', alt: '[打招呼]' },
|
||||||
|
{ url: 'emotion_017.png', alt: '[666]' },
|
||||||
|
{ url: 'emotion_018.png', alt: '[抱拳]' },
|
||||||
|
{ url: 'emotion_019.png', alt: '[握手]' },
|
||||||
|
{ url: 'emotion_020.png', alt: '[OK]' },
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: 'emotion_021.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_022.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_023.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_024.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_025.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_026.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_027.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_028.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_029.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_030.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_031.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_032.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_033.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_034.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_035.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_036.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_037.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_038.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_039.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_040.png', alt: '[]' },
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: 'emotion_041.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_042.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_043.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_044.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_045.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_046.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_047.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_048.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_049.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_050.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_051.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_052.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_053.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_054.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_055.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_056.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_057.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_058.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_059.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_060.png', alt: '[]' },
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: 'emotion_061.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_062.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_063.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_064.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_065.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_066.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_067.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_068.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_069.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_070.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_071.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_072.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_073.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_074.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_075.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_076.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_077.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_078.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_079.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_080.png', alt: '[]' },
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: 'emotion_081.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_082.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_083.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_084.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_085.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_086.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_087.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_088.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_089.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_090.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_091.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_092.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_093.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_094.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_095.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_096.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_097.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_098.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_099.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_100.png', alt: '[]' },
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: 'emotion_101.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_102.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_103.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_104.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_105.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_106.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_107.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_108.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_109.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_110.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_111.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_112.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_113.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_114.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_115.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_116.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_117.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_118.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_119.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_120.png', alt: '[]' },
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: 'emotion_121.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_122.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_123.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_124.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_125.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_126.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_127.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_128.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_129.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_130.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_131.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_132.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_133.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_134.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_135.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_136.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_137.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_138.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_139.png', alt: '[]' },
|
||||||
|
{ url: 'emotion_140.png', alt: '[]' },
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
// 抖音表情
|
||||||
|
emojiName:"douyinList",
|
||||||
|
emojiSort:3,
|
||||||
|
minEmoji:true,
|
||||||
|
emojiPath:"https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/douyin/",
|
||||||
|
emojiList: [
|
||||||
|
[
|
||||||
|
{ url: '0.png', alt: '[抖音1]' },
|
||||||
|
{ url: '1.png', alt: '[抖音2]' },
|
||||||
|
{ url: '2.png', alt: '[抖音3]' },
|
||||||
|
{ url: '3.png', alt: '[抖音4]' },
|
||||||
|
{ url: '4.png', alt: '[]' },
|
||||||
|
{ url: '5.png', alt: '[]' },
|
||||||
|
{ url: '6.png', alt: '[]' },
|
||||||
|
{ url: '7.png', alt: '[]' },
|
||||||
|
{ url: '8.png', alt: '[]' },
|
||||||
|
{ url: '9.png', alt: '[]' },
|
||||||
|
{ url: '10.png', alt: '[]' },
|
||||||
|
{ url: '11.png', alt: '[]' },
|
||||||
|
{ url: '12.png', alt: '[]' },
|
||||||
|
{ url: '13.png', alt: '[]' },
|
||||||
|
{ url: '14.png', alt: '[]' },
|
||||||
|
{ url: '15.png', alt: '[]' },
|
||||||
|
{ url: '16.png', alt: '[]' },
|
||||||
|
{ url: '17.png', alt: '[]' },
|
||||||
|
{ url: '18.png', alt: '[]' },
|
||||||
|
{ url: '19.png', alt: '[]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '20.png', alt: '[]' },
|
||||||
|
{ url: '21.png', alt: '[]' },
|
||||||
|
{ url: '22.png', alt: '[]' },
|
||||||
|
{ url: '23.png', alt: '[]' },
|
||||||
|
{ url: '24.png', alt: '[]' },
|
||||||
|
{ url: '25.png', alt: '[]' },
|
||||||
|
{ url: '26.png', alt: '[]' },
|
||||||
|
{ url: '27.png', alt: '[]' },
|
||||||
|
{ url: '28.png', alt: '[]' },
|
||||||
|
{ url: '29.png', alt: '[]' },
|
||||||
|
{ url: '30.png', alt: '[]' },
|
||||||
|
{ url: '31.png', alt: '[]' },
|
||||||
|
{ url: '32.png', alt: '[]' },
|
||||||
|
{ url: '33.png', alt: '[]' },
|
||||||
|
{ url: '34.png', alt: '[]' },
|
||||||
|
{ url: '35.png', alt: '[]' },
|
||||||
|
{ url: '36.png', alt: '[]' },
|
||||||
|
{ url: '37.png', alt: '[]' },
|
||||||
|
{ url: '38.png', alt: '[]' },
|
||||||
|
{ url: '39.png', alt: '[]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '40.png', alt: '[]' },
|
||||||
|
{ url: '41.png', alt: '[]' },
|
||||||
|
{ url: '42.png', alt: '[]' },
|
||||||
|
{ url: '43.png', alt: '[]' },
|
||||||
|
{ url: '44.png', alt: '[]' },
|
||||||
|
{ url: '25.png', alt: '[]' },
|
||||||
|
{ url: '46.png', alt: '[]' },
|
||||||
|
{ url: '47.png', alt: '[]' },
|
||||||
|
{ url: '48.png', alt: '[]' },
|
||||||
|
{ url: '49.png', alt: '[]' },
|
||||||
|
{ url: '50.png', alt: '[]' },
|
||||||
|
{ url: '51.png', alt: '[]' },
|
||||||
|
{ url: '52.png', alt: '[]' },
|
||||||
|
{ url: '53.png', alt: '[]' },
|
||||||
|
{ url: '54.png', alt: '[]' },
|
||||||
|
{ url: '55.png', alt: '[]' },
|
||||||
|
{ url: '56.png', alt: '[]' },
|
||||||
|
{ url: '57.png', alt: '[]' },
|
||||||
|
{ url: '58.png', alt: '[]' },
|
||||||
|
{ url: '59.png', alt: '[]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '60.png', alt: '[]' },
|
||||||
|
{ url: '61.png', alt: '[]' },
|
||||||
|
{ url: '62.png', alt: '[]' },
|
||||||
|
{ url: '63.png', alt: '[]' },
|
||||||
|
{ url: '64.png', alt: '[]' },
|
||||||
|
{ url: '65.png', alt: '[]' },
|
||||||
|
{ url: '66.png', alt: '[]' },
|
||||||
|
{ url: '67.png', alt: '[]' },
|
||||||
|
{ url: '68.png', alt: '[]' },
|
||||||
|
{ url: '69.png', alt: '[]' },
|
||||||
|
{ url: '70.png', alt: '[]' },
|
||||||
|
{ url: '71.png', alt: '[]' },
|
||||||
|
{ url: '72.png', alt: '[]' },
|
||||||
|
{ url: '73.png', alt: '[]' },
|
||||||
|
{ url: '74.png', alt: '[]' },
|
||||||
|
{ url: '75.png', alt: '[]' },
|
||||||
|
{ url: '76.png', alt: '[]' },
|
||||||
|
{ url: '77.png', alt: '[]' },
|
||||||
|
{ url: '78.png', alt: '[]' },
|
||||||
|
{ url: '79.png', alt: '[]' },
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '80.png', alt: '[]' },
|
||||||
|
{ url: '81.png', alt: '[]' },
|
||||||
|
{ url: '82.png', alt: '[]' },
|
||||||
|
{ url: '83.png', alt: '[]' },
|
||||||
|
{ url: '84.png', alt: '[]' },
|
||||||
|
{ url: '85.png', alt: '[]' },
|
||||||
|
{ url: '86.png', alt: '[]' },
|
||||||
|
{ url: '87.png', alt: '[]' },
|
||||||
|
{ url: '88.png', alt: '[]' },
|
||||||
|
{ url: '89.png', alt: '[]' },
|
||||||
|
{ url: '90.png', alt: '[]' },
|
||||||
|
{ url: '91.png', alt: '[]' },
|
||||||
|
{ url: '92.png', alt: '[]' },
|
||||||
|
{ url: '93.png', alt: '[]' },
|
||||||
|
{ url: '94.png', alt: '[]' },
|
||||||
|
{ url: '95.png', alt: '[]' },
|
||||||
|
{ url: '96.png', alt: '[]' },
|
||||||
|
{ url: '97.png', alt: '[]' },
|
||||||
|
{ url: '98.png', alt: '[]' },
|
||||||
|
{ url: '99.png', alt: '[]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '100.png', alt: '[]' },
|
||||||
|
{ url: '101.png', alt: '[]' },
|
||||||
|
{ url: '102.png', alt: '[]' },
|
||||||
|
{ url: '103.png', alt: '[]' },
|
||||||
|
{ url: '104.png', alt: '[]' },
|
||||||
|
{ url: '105.png', alt: '[]' },
|
||||||
|
{ url: '106.png', alt: '[]' },
|
||||||
|
{ url: '107.png', alt: '[]' },
|
||||||
|
{ url: '108.png', alt: '[]' },
|
||||||
|
{ url: '109.png', alt: '[]' },
|
||||||
|
{ url: '110.png', alt: '[]' },
|
||||||
|
{ url: '111.png', alt: '[]' },
|
||||||
|
{ url: '112.png', alt: '[]' },
|
||||||
|
{ url: '113.png', alt: '[]' },
|
||||||
|
{ url: '114.png', alt: '[]' },
|
||||||
|
{ url: '115.png', alt: '[]' },
|
||||||
|
{ url: '116.png', alt: '[]' },
|
||||||
|
{ url: '117.png', alt: '[]' },
|
||||||
|
{ url: '118.png', alt: '[]' },
|
||||||
|
{ url: '119.png', alt: '[]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '120.png', alt: '[]' },
|
||||||
|
{ url: '121.png', alt: '[]' },
|
||||||
|
{ url: '122.png', alt: '[]' },
|
||||||
|
{ url: '123.png', alt: '[]' },
|
||||||
|
{ url: '124.png', alt: '[]' },
|
||||||
|
{ url: '125.png', alt: '[]' },
|
||||||
|
{ url: '126.png', alt: '[]' },
|
||||||
|
{ url: '127.png', alt: '[]' },
|
||||||
|
{ url: '128.png', alt: '[]' },
|
||||||
|
{ url: '129.png', alt: '[]' },
|
||||||
|
{ url: '130.png', alt: '[]' },
|
||||||
|
{ url: '131.png', alt: '[]' },
|
||||||
|
{ url: '132.png', alt: '[]' },
|
||||||
|
{ url: '133.png', alt: '[]' },
|
||||||
|
{ url: '134.png', alt: '[]' },
|
||||||
|
{ url: '135.png', alt: '[]' },
|
||||||
|
{ url: '136.png', alt: '[]' },
|
||||||
|
{ url: '137.png', alt: '[]' },
|
||||||
|
{ url: '138.png', alt: '[]' },
|
||||||
|
{ url: '139.png', alt: '[]' },
|
||||||
|
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '140.png', alt: '[]' },
|
||||||
|
{ url: '141.png', alt: '[]' },
|
||||||
|
{ url: 'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/tab/delete2.png', alt: '[删除]' }
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
emojiName:"ajmdList",
|
||||||
|
emojiSort:4,
|
||||||
|
minEmoji:false,
|
||||||
|
emojiPath:"https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/ajmd/",
|
||||||
|
emojiList: [
|
||||||
|
[
|
||||||
|
{ url: '0.png', alt: '[ajmd1]' },
|
||||||
|
{ url: '1.png', alt: '[ajmd2]' },
|
||||||
|
{ url: '2.png', alt: '[ajmd3]' },
|
||||||
|
{ url: '3.png', alt: '[ajmd4]' },
|
||||||
|
{ url: '4.png', alt: '[]' },
|
||||||
|
{ url: '5.png', alt: '[]' },
|
||||||
|
{ url: '6.png', alt: '[]' },
|
||||||
|
{ url: '7.png', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '8.png', alt: '[]' },
|
||||||
|
{ url: '9.png', alt: '[]' },
|
||||||
|
{ url: '10.png', alt: '[]' },
|
||||||
|
{ url: '11.png', alt: '[]' },
|
||||||
|
{ url: '12.png', alt: '[]' },
|
||||||
|
{ url: '13.png', alt: '[]' },
|
||||||
|
{ url: '14.png', alt: '[]' },
|
||||||
|
{ url: '15.png', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '16.png', alt: '[]' },
|
||||||
|
{ url: '17.png', alt: '[]' },
|
||||||
|
{ url: '18.png', alt: '[]' },
|
||||||
|
{ url: '19.png', alt: '[]' },
|
||||||
|
{ url: '20.png', alt: '[]' },
|
||||||
|
{ url: '21.png', alt: '[]' },
|
||||||
|
{ url: '22.png', alt: '[]' },
|
||||||
|
{ url: '23.png', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '24.png', alt: '[]' },
|
||||||
|
{ url: '25.png', alt: '[]' },
|
||||||
|
{ url: '26.png', alt: '[]' },
|
||||||
|
{ url: '27.png', alt: '[]' },
|
||||||
|
{ url: '28.png', alt: '[]' },
|
||||||
|
{ url: '29.png', alt: '[]' },
|
||||||
|
{ url: '30.png', alt: '[]' },
|
||||||
|
{ url: '31.png', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '32.png', alt: '[]' },
|
||||||
|
{ url: '33.png', alt: '[]' },
|
||||||
|
{ url: '34.png', alt: '[]' },
|
||||||
|
{ url: '35.png', alt: '[]' },
|
||||||
|
{ url: '36.png', alt: '[]' },
|
||||||
|
{ url: '37.png', alt: '[]' },
|
||||||
|
{ url: '38.png', alt: '[]' },
|
||||||
|
{ url: '39.png', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '40.png', alt: '[]' },
|
||||||
|
{ url: '41.png', alt: '[]' },
|
||||||
|
{ url: '42.png', alt: '[]' },
|
||||||
|
{ url: '43.png', alt: '[]' },
|
||||||
|
{ url: '44.png', alt: '[]' },
|
||||||
|
{ url: '45.png', alt: '[]' },
|
||||||
|
{ url: '46.png', alt: '[]' },
|
||||||
|
{ url: '47.png', alt: '[]' },
|
||||||
|
],
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
emojiName:"gongfuhuList",
|
||||||
|
emojiSort:5,
|
||||||
|
minEmoji:false,
|
||||||
|
emojiPath:"https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/gongfuhu/",
|
||||||
|
emojiList: [
|
||||||
|
[
|
||||||
|
{ url: '0.gif', alt: '[]' },
|
||||||
|
{ url: '1.gif', alt: '[]' },
|
||||||
|
{ url: '2.gif', alt: '[]' },
|
||||||
|
{ url: '3.gif', alt: '[]' },
|
||||||
|
{ url: '4.gif', alt: '[]' },
|
||||||
|
{ url: '5.gif', alt: '[]' },
|
||||||
|
{ url: '6.gif', alt: '[]' },
|
||||||
|
{ url: '7.gif', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '8.gif', alt: '[]' },
|
||||||
|
{ url: '9.gif', alt: '[]' },
|
||||||
|
{ url: '10.gif', alt: '[]' },
|
||||||
|
{ url: '11.gif', alt: '[]' },
|
||||||
|
{ url: '12.gif', alt: '[]' },
|
||||||
|
{ url: '13.gif', alt: '[]' },
|
||||||
|
{ url: '14.gif', alt: '[]' },
|
||||||
|
{ url: '15.gif', alt: '[]' },
|
||||||
|
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '16.gif', alt: '[]' },
|
||||||
|
{ url: '17.gif', alt: '[]' },
|
||||||
|
{ url: '18.gif', alt: '[]' },
|
||||||
|
{ url: '19.gif', alt: '[]' },
|
||||||
|
{ url: '20.gif', alt: '[]' },
|
||||||
|
{ url: '21.gif', alt: '[]' },
|
||||||
|
{ url: '22.gif', alt: '[]' },
|
||||||
|
{ url: '23.gif', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '24.gif', alt: '[]' },
|
||||||
|
{ url: '25.gif', alt: '[]' },
|
||||||
|
{ url: '26.gif', alt: '[]' },
|
||||||
|
{ url: '27.gif', alt: '[]' },
|
||||||
|
{ url: '28.gif', alt: '[]' },
|
||||||
|
{ url: '29.gif', alt: '[]' },
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
emojiName:"xxyList",
|
||||||
|
emojiSort:6,
|
||||||
|
minEmoji: false,
|
||||||
|
emojiPath:"https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/xxy/",
|
||||||
|
emojiList: [
|
||||||
|
[
|
||||||
|
{ url: '0.png', alt: '[]' },
|
||||||
|
{ url: '1.png', alt: '[]' },
|
||||||
|
{ url: '2.png', alt: '[]' },
|
||||||
|
{ url: '3.png', alt: '[]' },
|
||||||
|
{ url: '4.png', alt: '[]' },
|
||||||
|
{ url: '5.png', alt: '[]' },
|
||||||
|
{ url: '6.png', alt: '[]' },
|
||||||
|
{ url: '7.png', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '8.png', alt: '[]' },
|
||||||
|
{ url: '9.png', alt: '[]' },
|
||||||
|
{ url: '10.png', alt: '[]' },
|
||||||
|
{ url: '11.png', alt: '[]' },
|
||||||
|
{ url: '12.png', alt: '[]' },
|
||||||
|
{ url: '13.png', alt: '[]' },
|
||||||
|
{ url: '14.png', alt: '[]' },
|
||||||
|
{ url: '15.png', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '16.png', alt: '[]' },
|
||||||
|
{ url: '17.png', alt: '[]' },
|
||||||
|
{ url: '18.png', alt: '[]' },
|
||||||
|
{ url: '19.png', alt: '[]' },
|
||||||
|
{ url: '20.png', alt: '[]' },
|
||||||
|
{ url: '21.png', alt: '[]' },
|
||||||
|
{ url: '22.png', alt: '[]' },
|
||||||
|
{ url: '23.png', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '24.png', alt: '[]' },
|
||||||
|
{ url: '25.png', alt: '[]' },
|
||||||
|
{ url: '26.png', alt: '[]' },
|
||||||
|
{ url: '27.png', alt: '[]' },
|
||||||
|
{ url: '28.png', alt: '[]' },
|
||||||
|
{ url: '29.png', alt: '[]' },
|
||||||
|
{ url: '30.png', alt: '[]' },
|
||||||
|
{ url: '31.png', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '32.png', alt: '[]' },
|
||||||
|
{ url: '33.png', alt: '[]' },
|
||||||
|
{ url: '34.png', alt: '[]' },
|
||||||
|
{ url: '35.png', alt: '[]' },
|
||||||
|
{ url: '36.png', alt: '[]' },
|
||||||
|
{ url: '37.png', alt: '[]' },
|
||||||
|
{ url: '38.png', alt: '[]' },
|
||||||
|
{ url: '39.png', alt: '[]' },
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
emojiName:"feineneList",
|
||||||
|
emojiSort:7,
|
||||||
|
minEmoji: false,
|
||||||
|
emojiPath:"https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/static/xcxfile/appicon/im/img/feinene/",
|
||||||
|
emojiList: [
|
||||||
|
[
|
||||||
|
{ url: '0.gif', alt: '[]' },
|
||||||
|
{ url: '1.gif', alt: '[]' },
|
||||||
|
{ url: '2.gif', alt: '[]' },
|
||||||
|
{ url: '3.gif', alt: '[]' },
|
||||||
|
{ url: '4.gif', alt: '[]' },
|
||||||
|
{ url: '5.gif', alt: '[]' },
|
||||||
|
{ url: '6.gif', alt: '[]' },
|
||||||
|
{ url: '7.gif', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '8.gif', alt: '[]' },
|
||||||
|
{ url: '9.gif', alt: '[]' },
|
||||||
|
{ url: '10.gif', alt: '[]' },
|
||||||
|
{ url: '11.gif', alt: '[]' },
|
||||||
|
{ url: '12.gif', alt: '[]' },
|
||||||
|
{ url: '13.gif', alt: '[]' },
|
||||||
|
{ url: '14.gif', alt: '[]' },
|
||||||
|
{ url: '15.gif', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '16.gif', alt: '[]' },
|
||||||
|
{ url: '17.gif', alt: '[]' },
|
||||||
|
{ url: '18.gif', alt: '[]' },
|
||||||
|
{ url: '19.gif', alt: '[]' },
|
||||||
|
{ url: '20.gif', alt: '[]' },
|
||||||
|
{ url: '21.gif', alt: '[]' },
|
||||||
|
{ url: '22.gif', alt: '[]' },
|
||||||
|
{ url: '23.gif', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '24.gif', alt: '[]' },
|
||||||
|
{ url: '25.gif', alt: '[]' },
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
emojiName:"",
|
||||||
|
emojiSort:8,
|
||||||
|
minEmoji:false,
|
||||||
|
emojiPath:"",
|
||||||
|
emojiList: [
|
||||||
|
[
|
||||||
|
{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },
|
||||||
|
{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },
|
||||||
|
{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },
|
||||||
|
{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },{ url: '', alt: '[]' },
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// export与export default均可用于导出常量、函数、文件、模块等
|
||||||
|
// 在一个文件或模块中,export、import可以有多个,export default仅有一个
|
||||||
|
// 通过export方式导出,在导入时要加{ },export default则不需要
|
||||||
|
// export能直接导出变量表达式,export default不行。
|
||||||
|
|
||||||
|
|
||||||
|
export default emojiData;
|
||||||
110
dist/index.html
vendored
Normal file
@ -0,0 +1,110 @@
|
|||||||
|
<!DOCTYPE html><html lang=zh-CN><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,user-scalable=no,initial-scale=1,maximum-scale=1,minimum-scale=1"><title>商城系统</title><script>var UA = window.navigator.userAgent.toLowerCase();
|
||||||
|
var isAndroid = UA.indexOf('android') > 0;
|
||||||
|
var isIOS = /iphone|ipad|ipod|ios/.test(UA);
|
||||||
|
if (!(isAndroid || isIOS)) {
|
||||||
|
// TODO 正式发布的时候使用,开发期间不启用。
|
||||||
|
//window.location.href = '/pcguide.html';
|
||||||
|
}
|
||||||
|
|
||||||
|
let SYS = {};
|
||||||
|
SYS.DEBUG = false;
|
||||||
|
SYS.SW_ENABLE = false;
|
||||||
|
SYS.VER = '1.0.6';
|
||||||
|
|
||||||
|
if (SYS.SW_ENABLE && !SYS.DEBUG && navigator.serviceWorker) {
|
||||||
|
// 注册Service Worker scope表示作用的页面的path
|
||||||
|
// register函数返回Promise
|
||||||
|
|
||||||
|
navigator.serviceWorker.register('/h5/../sw.js?ver=' + SYS.VER, {
|
||||||
|
scope: '/h5/../'
|
||||||
|
})
|
||||||
|
.then(function(registration) {
|
||||||
|
|
||||||
|
//像我之前说的,当页面刷新或者执行功能性事件时,浏览器会自动检查更新,其实我们也可以手动的来触发更新:
|
||||||
|
registration.update();
|
||||||
|
|
||||||
|
// 主页面监听 message 事件
|
||||||
|
navigator.serviceWorker.addEventListener('message', function(e) {
|
||||||
|
|
||||||
|
// Service Worker 如果更新成功会 postMessage 给页面,内容为 'sw.update'
|
||||||
|
if (e.data === 'sw.update') {
|
||||||
|
|
||||||
|
// 开发者这自定义处理函数,也可以使用默认提供的用户提示,引导用户刷新
|
||||||
|
// 这里建议引导用户 reload 处理,详细查看项目具体文件
|
||||||
|
// location.reload();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
console.log(registration);
|
||||||
|
})
|
||||||
|
.catch(function(e) {
|
||||||
|
console.error(e);
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
console.log('Service Worker is not supported in this browser.')
|
||||||
|
}</script><script>document.addEventListener('DOMContentLoaded', function() {
|
||||||
|
document.documentElement.style.fontSize = document.documentElement.clientWidth / 20 + 'px'
|
||||||
|
})</script><link rel=stylesheet href=/h5/static/index.css></head><body><noscript><strong>Please enable JavaScript to continue.</strong></noscript><div id=app></div><script>if (/uni-app/i.test(navigator.userAgent))
|
||||||
|
{
|
||||||
|
//读取状态栏高度
|
||||||
|
//document.querySelector("body").style.marginTop = "30px";
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// H5 plus事件处理
|
||||||
|
function plusReady(){
|
||||||
|
// 获取自身webview窗口
|
||||||
|
var ws=plus.webview.currentWebview();
|
||||||
|
console.log('窗口标识: '+ws.id);
|
||||||
|
|
||||||
|
|
||||||
|
console.info(JSON.stringify(plus))
|
||||||
|
uni.getSystemInfo({
|
||||||
|
success: (res) => {
|
||||||
|
console.info(JSON.stringify(res))
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
/*
|
||||||
|
//定义全局变量保存分享对象
|
||||||
|
var shareObj = null, wxShareObj = null;
|
||||||
|
//1. 初始化加载分享模块
|
||||||
|
plus.share.getServices(function(s){console.log(JSON.stringify(s)); shareObj = s;},function(e){
|
||||||
|
alert( "获取分享服务列表失败:"+e.message );
|
||||||
|
});
|
||||||
|
|
||||||
|
function share(){
|
||||||
|
if(shareObj == null){plus.nativeUI.toast('分享组件加载中,请稍候!'); return false;}
|
||||||
|
//微信分享
|
||||||
|
//1、判断微信分享模块是否存在
|
||||||
|
for(var k in shareObj){if(shareObj[k].id == 'weixin'){wxShareObj = shareObj[k];}}
|
||||||
|
if(wxShareObj == null){plus.nativeUI.toast('微信分享组件启动失败!'); return false;}
|
||||||
|
//2、分享
|
||||||
|
wxShareObj.send(
|
||||||
|
{
|
||||||
|
content : "hcoder.net 为了更好的开发!",
|
||||||
|
href : "http://www.hcoder.net/",
|
||||||
|
thumbs : ["_www/img/share.jpg"],
|
||||||
|
extra : {scene : "WXSceneTimeline"}
|
||||||
|
},
|
||||||
|
function(){plus.nativeUI.toast( "分享成功!" );},
|
||||||
|
function(e){plus.nativeUI.toast( "分享失败:"+e.message );}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
setTimeout(share, 5000)
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
if(window.plus){
|
||||||
|
plusReady();
|
||||||
|
}else{
|
||||||
|
document.addEventListener('plusready', plusReady, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
document.addEventListener('UniAppJSBridgeReady', function() {
|
||||||
|
console.info(plus)
|
||||||
|
uni.getEnv(function(res) {
|
||||||
|
console.log('当前环境:' + JSON.stringify(res));
|
||||||
|
});
|
||||||
|
});</script><script src=/h5/static/js/chunk-vendors.f8d1c5eb.js></script><script src=/h5/static/js/index.d441414c.js></script></body></html>
|
||||||
629
dist/static/HM-chat/css/style.scss
vendored
Normal file
@ -0,0 +1,629 @@
|
|||||||
|
page{
|
||||||
|
background-color: #e5e5e5;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {font-family:"HMfont-home";
|
||||||
|
src:url(
|
||||||
|
'data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAAAn8AAsAAAAAE1wAAAmvAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHEIGVgCFDAqWYJI9ATYCJANACyIABCAFhFUHgV8bThBRlFFWNdkXBXbDsSFQq221McNWrxUbYqGhiTju98MTeXqNh/9fo90388cEMe0bwSOJRIjavZIgESqnE5J5JqQVDZH/XdNfoHSAjqKqRsA+Tf/Ruya33E/bkdHsJtycY2XWAGbM5oenzf173A3lHrEilsmMbu74Y5VmYtxpgza9DMxkWL0gfjGbGRE54AL2f2ut3h2u8Q7RaZRCjDPLIv8cfAUR30MtEUWbSReVJkk0RB4lWWkNg7WVA1sBKmIUdr0uzibQOmxA4vrWwQXkJUweKHPfdwXkA+FSik2o1aVizyTegEKdvWINwGv59bEGY9GeTJFjW95pswIrzz3LYi//0O4JEaDrY3DZjxwXgUR8V3IfIeXARaloVRXT3mK/tsi3LubcJfese8l96Xbd1l1ve2z7eJp5lv3zB7URSdJNYd3Dfm7UUxxkGu0sLFcbVEa5pP3D6/QmokQw3OGzfJp/2kBkLJYQDYuziJbFJUSweIkoWXQRNYuEGFi0BLzFOhAjS4+InKUPRGI5I2a+kg7VSWUGoXoos2BNmGIWexwFroD8IUD6C1A9lYp8F3ClwsFgcgPdNpN08v1czkEOJ4aeieaC3QyVfb9PX2kbn9/0CwTeNAm79H1Kc2x3i9C7LcEZtMSLfE6T4aM+YWOm06dZ5cm9I+xoYw+rqGlScKKlHytu9h6Dw0E5nXK7nbTZknT1jFldR9cuzNMz9Srf7FydqpYW5mRr6Dq1OC9HqzYzoiw1cjohV2tX1Ji1K9bSdVkEbaxS1xQwpmpVpUFheyyzPyGdbXKHexkByib+vtgeK1X75xKqWl+grUNIbRZDXT31tBMiPZAyF0KmniCQhSgACkh5+gIxtvTS/si+VjbAuY6SMdCzbqInzwkjk5ENzMCkNv+ghQQ0qSSAUGmAMQoBozoAIrUe6qpzM+tma1T1jDgvVzdBWcIcLT170njGQU3cCpnUTSdkHH3ltwPHpKotTIP6HH12Lvd4czCWgbJYhY1U5ddlTCICSs1is0in8tXExk7VVRuMQhIQGgOtFcolPmMkIqDVduTGEOn1jI4gFERmSUsv3rGmoKUEQLITLUyzqpFukq8T6U+omVQsT8XHxsnipPEyBAlKNmkNMlMJgOT5Tpsoo2RGP3lOTQyk5GRBgJKw2WQsarWzSa1aLF/+UBk2PkA3wEkBM/RwOLJ0ORWiVCR3YYAAFyIlAdaNqEnmh0sTqOsAq97R85Jt+HGHrNKWgDHmxOPxumKmRGzudayPtogu9D2Zx688C3D6XJSgpgF6MJbomdtyOYBgcXOGSgMAPXqy+F11pMYHlFLCkkKM0S1T+U5SN0Ynh39SxcxmTPNHrTFIuieyxYgZXSDUAPpLLT2ZciVvihOh05k+JIAjoL7HtNsVFc5Rl+1hgAAIlNqGX3GEK0llMm0nZUdmhQzymg3Q9j6yO4FQsmqtQbXmZ+z+sOynUrt3nmbeXu3MYW9f8y38128LpWAVeyLMz4cTORbEDPYKHU19Oyx0OF12GIhfEx+/RRIm2RzPeIPE2yYRM7HBWBx+GvANWXAlMYcmWriz1/Tt2bk+jq7CdOzMu5zsn3zZXwg2Gu14YCBuh3NggN0DI8BbJpCXZb2I4xh+kdAmbU0IA6HYquya81nqYSk87Xgi35ur4HnxZWEvnoLrzbOEjHmJiY2JjV6I8c4ynSEsJTKcHxuWYPRFFleV2Sbi0Dsk4XmDSToXTMnUnW/PW9J9W4UCgP+h0rTi9tiJd6qQgk2lPI/KKeybAPx+c7vZHdimbruzyCP9iZvd0VuBuIniuXirHQ8oG2IThFIUI8QOhjfNMg86GH4Bv4ixLlr4BDi2wDDwXTYYTgfnBJur1nAw2yGngw96JhQo+48cMWVE8kWwcA55ZuzwkSP/mpp9D6wFm2e1Bc8cPVraL2Ng7y6KfSNHqQfTYByYMmbT73WNmwZs6m8sBR54XCndTHwvu6v+8N+Jze9/jeGd8bpoHePtMv0/9U6e78bTtf+aly55P40cNtJ3PH3U6xQ9DkRNos+Chp2TpNwX4lZOwkTa4nOLPxpMLc8Sm0srSwD6Y1KW7ftPZ68x3DWS8d4cJbAKE6QJEfRrhAafMLV0RoCRLhKdBaJzNtzPD7dxLIgZ7Al4006exyHEYXMewjqApFokPRIu9FvLiPf96uWlpuZmRZKiH1i0OCNj1ar7zSDqYiRbCQsMrKUXZswxBkQEbCmv2RJgKK82+UcGbpk+0woVSxekQrYCzp4Hk30E3oHhAh+4fLcOPCfzOVu3cvKkHAWzNAVyjAyOQsrJix47n0OZpbTUDKdJp8CZs+BkAKfMnDkF+kJmmrcN4OSZs8CRuwZ+N76gampCxtj83XWO5X1GYc7hIypq+N32eTe6Wr/GfXW5GukBLnvJ1gEPhlmsuUHzg3Osp/vJCZ4flGsFf27fjV18spjdTfQUuVANcgldRA3hKhSUutCGgGhDaMo0tXMHwiUq3gG5entO2xmnECa3H53AjRpKFFYIK7qrHjMJ75sEC91BPlGc0TlZY9qlsdcuZaXy0D3hfz4cmLd2WzbK3Xhhdw7c2VLCxtxsFCMEo8bArEww9ruOrc5joK9g1xp85MghQ4wyuPV71+/tMVxAMmzA1lSt+WmbjFkwL/lV6az7APzZ5qvVmmy7b1bJGrTDhmRfMBYbWMZmNOu3bJdPlLL/5WOR2XZCTJpmU4mx8lv9Fg76T8NagO4vUacJ+n/Sr0b/LYb8+1z5QCb935a0m6WWYXzwh4DO2Sa9g2jEnJ6tYwTU5jp7N2RmaHkn/gjEb/fXpmpXbkpAGaAv7pnKAfdc6bg4GZx1L3QuQ8lVC3BvXbC8f2eHQEqkBuc9aO6h9849M3oPucrgAyQY/HEv7PYJJQy23Ft3/R+xczqmsHWDgrDCyzfcl1o5ehKxnUOr5Bm6NhTGR4u1rtDEvlZ8dGgklLeNCk3ZbeKaO0bkcMfoKt+6ng/DUPPI6AAlDXlE0dzwsKPadkjqKjDXGEgg4b2CK7vx65M0xSlPmNsOA58/g1xWSDDKeq/KV5AR89+zc6OGjKSKtxUqR4NtF47VuMZemcTBDQxGqzqqrXIMCnm2xkXq1QJIIkO8EpmROcOkIyevYmhUqurWBmgCe4U5WJFHiiLKqKKOJtrooo8hxphihl6g5bGv3MAXkfBvPaFbVq6ga4Uq+wWdEfo6NVTmr1oVkYoye2NvfCWLmYQx0sjozFSxszhZ4Ctjb7QtavLQDNa0L5HRZQYJYxrNLbJR4QhZvOV46Fm/lqB428nsrJSx/OwbEgYA') format('woff2');}
|
||||||
|
.icon {
|
||||||
|
font-family:"HMfont-home" !important;
|
||||||
|
font-size:56upx;
|
||||||
|
font-style:normal;
|
||||||
|
color: #333;
|
||||||
|
&.biaoqing:before {
|
||||||
|
content: "\e797";
|
||||||
|
}
|
||||||
|
&.jianpan:before {
|
||||||
|
content: "\e7b2";
|
||||||
|
}
|
||||||
|
&.yuyin:before {
|
||||||
|
content: "\e805";
|
||||||
|
}
|
||||||
|
&.tupian:before {
|
||||||
|
content: "\e639";
|
||||||
|
}
|
||||||
|
&.chehui:before {
|
||||||
|
content: "\e904";
|
||||||
|
}
|
||||||
|
&.luyin:before {
|
||||||
|
content: "\e905";
|
||||||
|
}
|
||||||
|
&.luyin2:before {
|
||||||
|
content: "\e677";
|
||||||
|
}
|
||||||
|
&.other-voice:before {
|
||||||
|
content: "\e667";
|
||||||
|
}
|
||||||
|
&.my-voice:before {
|
||||||
|
content: "\e906";
|
||||||
|
}
|
||||||
|
&.hongbao:before {
|
||||||
|
content: "\e626";
|
||||||
|
}
|
||||||
|
&.tupian2:before {
|
||||||
|
content: "\e674";
|
||||||
|
}
|
||||||
|
&.paizhao:before {
|
||||||
|
content: "\e63e";
|
||||||
|
}
|
||||||
|
&.add:before {
|
||||||
|
content: "\e655";
|
||||||
|
}
|
||||||
|
&.close:before {
|
||||||
|
content: "\e607";
|
||||||
|
}
|
||||||
|
&.to:before {
|
||||||
|
content: "\e675";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.hidden{
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
.popup-layer{
|
||||||
|
&.showLayer{transform: translate3d(0,-64vw,0);}
|
||||||
|
transition: all .15s linear;
|
||||||
|
width: 100%;
|
||||||
|
height: 64vw;
|
||||||
|
// padding: 20upx 2%;
|
||||||
|
padding-bottom: 30upx;
|
||||||
|
background-color: #f3f3f3;
|
||||||
|
border-top: solid 1upx #ddd;
|
||||||
|
position: fixed;
|
||||||
|
z-index: 20;
|
||||||
|
top: 100%;
|
||||||
|
// .emoji-swiper{
|
||||||
|
// height: 40vw;
|
||||||
|
// swiper-item{
|
||||||
|
// display: flex;
|
||||||
|
// align-content: flex-start;
|
||||||
|
// flex-wrap: wrap;
|
||||||
|
// view{
|
||||||
|
// width: 12vw;
|
||||||
|
// height: 12vw;
|
||||||
|
// display: flex;
|
||||||
|
// justify-content: center;
|
||||||
|
// align-items: center;
|
||||||
|
// image{
|
||||||
|
// width: 8.4vw;
|
||||||
|
// height: 8.4vw;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
.more-layer{
|
||||||
|
width: 100%;
|
||||||
|
height: 64vw;
|
||||||
|
.list{
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
.box{
|
||||||
|
width: 18vw;
|
||||||
|
height: 18vw;
|
||||||
|
border-radius: 20upx;
|
||||||
|
background-color: #fff;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
// margin: 0 3vw 2vw 3vw;
|
||||||
|
margin: 5vw 3vw 5vw 4vw;
|
||||||
|
.icon{
|
||||||
|
font-size: 70upx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.input-box{
|
||||||
|
width: 100%;
|
||||||
|
min-height: 100upx;
|
||||||
|
padding: 0 1%;
|
||||||
|
background-color: #f2f2f2;
|
||||||
|
display: flex;
|
||||||
|
position: fixed;
|
||||||
|
z-index: 20;
|
||||||
|
bottom:-2upx;
|
||||||
|
&.showLayer{transform: translate3d(0,-64vw,0);}
|
||||||
|
transition: all .15s linear;
|
||||||
|
border-bottom: solid 1upx #ddd;
|
||||||
|
.voice,.more{
|
||||||
|
flex-shrink: 0;
|
||||||
|
width: 90upx;
|
||||||
|
height: 100upx;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.send{
|
||||||
|
//H5发送按钮左边距
|
||||||
|
/* #ifdef H5 */
|
||||||
|
margin-left: 20upx;
|
||||||
|
/* #endif */
|
||||||
|
flex-shrink: 0;
|
||||||
|
width: 100upx;
|
||||||
|
height: 100upx;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
.btn{
|
||||||
|
width: 90upx;
|
||||||
|
height: 56upx;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
background:linear-gradient(to right,#cf3c35,#cf3c35);
|
||||||
|
color: #fff;
|
||||||
|
border-radius: 6upx;
|
||||||
|
font-size: 24upx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.textbox{
|
||||||
|
width: 100%;
|
||||||
|
min-height: 70upx;
|
||||||
|
margin-top: 15upx;
|
||||||
|
.voice-mode{
|
||||||
|
width: calc(100% - 2upx);
|
||||||
|
height: 68upx;
|
||||||
|
border-radius: 70upx;
|
||||||
|
border:solid 1upx #cdcdcd;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 28upx;
|
||||||
|
background-color: #fff;
|
||||||
|
color: #555;
|
||||||
|
&.recording{
|
||||||
|
background-color: #e5e5e5;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.text-mode{
|
||||||
|
width: 100%;
|
||||||
|
min-height: 70upx;
|
||||||
|
display: flex;
|
||||||
|
background-color: #fff;
|
||||||
|
border-radius: 40upx;
|
||||||
|
.box{
|
||||||
|
width: 100%;
|
||||||
|
padding-left: 30upx;
|
||||||
|
min-height: 70upx;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
textarea{
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.em{
|
||||||
|
flex-shrink: 0;
|
||||||
|
width: 80upx;
|
||||||
|
padding-left: 10upx;
|
||||||
|
height: 70upx;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.record{
|
||||||
|
width: 40vw;
|
||||||
|
height: 40vw;
|
||||||
|
position: fixed;
|
||||||
|
top: 55%;
|
||||||
|
left: 30%;
|
||||||
|
background-color: rgba(0,0,0,.6);
|
||||||
|
border-radius: 20upx;
|
||||||
|
.ing{
|
||||||
|
width: 100%;
|
||||||
|
height: 30vw;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
// 模拟录音音效动画
|
||||||
|
@keyframes volatility {
|
||||||
|
0% {background-position: 0% 130%;}
|
||||||
|
20% {background-position: 0% 150%;}
|
||||||
|
30% {background-position: 0% 155%;}
|
||||||
|
40% {background-position: 0% 150%;}
|
||||||
|
50% {background-position: 0% 145%;}
|
||||||
|
70% {background-position: 0% 150%;}
|
||||||
|
80% {background-position: 0% 155%;}
|
||||||
|
90% {background-position: 0% 140%;}
|
||||||
|
100% {background-position: 0% 135%;}
|
||||||
|
}
|
||||||
|
.icon{
|
||||||
|
background-image:linear-gradient(to bottom,#f09b37,#fff 50%);
|
||||||
|
background-size:100% 200%;
|
||||||
|
animation: volatility 1.5s ease-in-out -1.5s infinite alternate;
|
||||||
|
-webkit-background-clip:text;
|
||||||
|
-webkit-text-fill-color:transparent;
|
||||||
|
font-size: 150upx;
|
||||||
|
color: #f09b37;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.cancel{
|
||||||
|
width: 100%;
|
||||||
|
height: 30vw;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
.icon{
|
||||||
|
color: #fff;
|
||||||
|
font-size: 150upx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.tis{
|
||||||
|
width: 100%;
|
||||||
|
height: 10vw;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
font-size: 28upx;
|
||||||
|
color: #fff;
|
||||||
|
&.change{
|
||||||
|
color: #f09b37;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.content{
|
||||||
|
width: 100%;
|
||||||
|
.msg-list{
|
||||||
|
width: 96%;
|
||||||
|
padding: 0 2%;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
bottom: 100upx;
|
||||||
|
.loading{
|
||||||
|
//loading动画
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
@keyframes stretchdelay {
|
||||||
|
0%, 40%, 100% {
|
||||||
|
transform: scaleY(0.6);
|
||||||
|
}
|
||||||
|
20% {
|
||||||
|
transform: scaleY(1.0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.spinner {
|
||||||
|
margin: 20upx 0;
|
||||||
|
width: 60upx;
|
||||||
|
height: 100upx;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
view {
|
||||||
|
background-color: #5FB878;
|
||||||
|
height: 50upx;
|
||||||
|
width: 6upx;
|
||||||
|
border-radius: 6upx;
|
||||||
|
animation: stretchdelay 1.2s infinite ease-in-out;
|
||||||
|
}
|
||||||
|
.rect2 {
|
||||||
|
animation-delay: -1.1s;
|
||||||
|
}
|
||||||
|
.rect3 {
|
||||||
|
animation-delay: -1.0s;
|
||||||
|
}
|
||||||
|
.rect4 {
|
||||||
|
animation-delay: -0.9s;
|
||||||
|
}
|
||||||
|
.rect5 {
|
||||||
|
animation-delay: -0.8s;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.row{
|
||||||
|
.system{
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
view{
|
||||||
|
padding: 0 30upx;
|
||||||
|
height: 50upx;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
background-color: #c9c9c9;
|
||||||
|
color: #fff;
|
||||||
|
font-size: 24upx;
|
||||||
|
border-radius: 40upx;
|
||||||
|
}
|
||||||
|
.red-envelope{
|
||||||
|
image{
|
||||||
|
margin-right: 5upx;
|
||||||
|
width: 30upx;
|
||||||
|
height: 30upx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&:first-child{
|
||||||
|
margin-top: 20upx;
|
||||||
|
}
|
||||||
|
padding: 20upx 0;
|
||||||
|
.my .left,.other .right{
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
.bubble{
|
||||||
|
max-width: 70%;
|
||||||
|
min-height: 50upx;
|
||||||
|
border-radius: 10upx;
|
||||||
|
padding: 15upx 20upx;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 32upx;
|
||||||
|
word-break: break-word;
|
||||||
|
&.img{
|
||||||
|
/*
|
||||||
|
background-color: transparent;
|
||||||
|
padding:0;
|
||||||
|
overflow: hidden;
|
||||||
|
*/
|
||||||
|
image{
|
||||||
|
flex:1;
|
||||||
|
max-width: 350upx;
|
||||||
|
max-height: 350upx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.red-envelope{
|
||||||
|
background-color: transparent;
|
||||||
|
padding:0;
|
||||||
|
overflow: hidden;
|
||||||
|
position: relative;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: flex-start;
|
||||||
|
image{
|
||||||
|
width: 250upx;
|
||||||
|
height: 313upx;
|
||||||
|
}
|
||||||
|
.tis{
|
||||||
|
position: absolute;
|
||||||
|
top: 6%;
|
||||||
|
font-size: 26upx;
|
||||||
|
color: #9c1712;
|
||||||
|
}
|
||||||
|
.blessing{
|
||||||
|
position: absolute;
|
||||||
|
bottom: 14%;
|
||||||
|
color: #e9b874;
|
||||||
|
width: 80%;
|
||||||
|
text-align: center;
|
||||||
|
overflow: hidden;
|
||||||
|
// 最多两行
|
||||||
|
display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.voice{
|
||||||
|
.icon{
|
||||||
|
font-size: 40upx;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.icon:after
|
||||||
|
{
|
||||||
|
content:" ";
|
||||||
|
width: 53upx;
|
||||||
|
height: 53upx;
|
||||||
|
border-radius: 100%;
|
||||||
|
position: absolute;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
.length{
|
||||||
|
font-size: 28upx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.my .right,.other .left{
|
||||||
|
flex-shrink: 0;
|
||||||
|
width: 80upx;
|
||||||
|
height: 80upx;
|
||||||
|
image{
|
||||||
|
width: 80upx;
|
||||||
|
height: 80upx;
|
||||||
|
border-radius: 10upx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.my{
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-end;
|
||||||
|
.left{
|
||||||
|
min-height: 80upx;
|
||||||
|
|
||||||
|
align-items: center;
|
||||||
|
justify-content: flex-end;
|
||||||
|
.bubble{
|
||||||
|
background-color: #fff;
|
||||||
|
color: #fff;
|
||||||
|
|
||||||
|
&.voice{
|
||||||
|
.icon{
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
.length{
|
||||||
|
margin-right: 20upx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.play{
|
||||||
|
@keyframes my-play {
|
||||||
|
0% {
|
||||||
|
transform: translateX(80%);
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
transform: translateX(0%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.icon:after
|
||||||
|
{
|
||||||
|
border-left: solid 10upx rgba(240,108,122,.5);
|
||||||
|
animation: my-play 1s linear infinite;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.right{
|
||||||
|
margin-left: 15upx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.other{
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
.left{
|
||||||
|
margin-right: 15upx;
|
||||||
|
}
|
||||||
|
.right{
|
||||||
|
flex-wrap: wrap;
|
||||||
|
.username{
|
||||||
|
width: 100%;
|
||||||
|
height: 45upx;
|
||||||
|
font-size: 24upx;
|
||||||
|
color: #999;
|
||||||
|
display: flex;
|
||||||
|
.name{
|
||||||
|
margin-right: 50upx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.bubble{
|
||||||
|
background-color: #fff;
|
||||||
|
color: #333;
|
||||||
|
&.voice{
|
||||||
|
.icon{
|
||||||
|
color: #333;
|
||||||
|
|
||||||
|
}
|
||||||
|
.length{
|
||||||
|
margin-left: 20upx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.play{
|
||||||
|
@keyframes other-play {
|
||||||
|
0% {
|
||||||
|
transform: translateX(-80%);
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
transform: translateX(0%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.icon:after
|
||||||
|
{
|
||||||
|
border-right: solid 10upx rgba(255,255,255,.8);
|
||||||
|
|
||||||
|
animation: other-play 1s linear infinite;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.windows{
|
||||||
|
|
||||||
|
.mask{
|
||||||
|
position: fixed;
|
||||||
|
top: 100%;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
z-index: 1000;
|
||||||
|
background-color: rgba(0,0,0,.6);
|
||||||
|
opacity: 0;
|
||||||
|
transition: opacity .2s ease-out;
|
||||||
|
}
|
||||||
|
.layer{
|
||||||
|
position: fixed;
|
||||||
|
width: 80%;
|
||||||
|
height: 70%;
|
||||||
|
left: 10%;
|
||||||
|
z-index: 1001;
|
||||||
|
border-radius: 20upx;
|
||||||
|
overflow: hidden;
|
||||||
|
top:100%;
|
||||||
|
transform: scale3d(.5,.5,1);
|
||||||
|
transition: all .2s ease-out;
|
||||||
|
}
|
||||||
|
&.show{
|
||||||
|
display: block;
|
||||||
|
.mask{
|
||||||
|
top: 0;
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
.layer{
|
||||||
|
transform: translate3d(0,-85vh,0) scale3d(1,1,1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.hide{
|
||||||
|
display: block;
|
||||||
|
.mask{
|
||||||
|
top: 0;
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
.layer{
|
||||||
|
//transform: translate3d(0,-85vh,0) scale3d(.5,.5,1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.open-redenvelope{
|
||||||
|
width: 100%;
|
||||||
|
height: 70vh;
|
||||||
|
background-color: #cf3c35;
|
||||||
|
position: relative;
|
||||||
|
.top{
|
||||||
|
width: 100%;
|
||||||
|
background-color: #fe5454;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
border-radius: 0 0 100% 100%;
|
||||||
|
box-shadow: inset 0 -20upx 0 #9c1712;
|
||||||
|
.close-btn{
|
||||||
|
width: 100%;
|
||||||
|
height: 80upx;
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-end;
|
||||||
|
margin-bottom: 30upx;
|
||||||
|
.icon{
|
||||||
|
color: #9c1712;
|
||||||
|
margin-top: 10upx;
|
||||||
|
margin-right: 10upx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
image{
|
||||||
|
width: 130upx;
|
||||||
|
height: 130upx;
|
||||||
|
border: solid 12upx #cf3c35;
|
||||||
|
border-radius: 100%;
|
||||||
|
|
||||||
|
margin-bottom: -65upx;
|
||||||
|
}
|
||||||
|
margin-bottom: 65upx;
|
||||||
|
}
|
||||||
|
.from,.blessing,.money,.showDetails{
|
||||||
|
width: 90%;
|
||||||
|
padding: 5upx 5%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
font-size: 32upx;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
.money{
|
||||||
|
font-size: 100upx;
|
||||||
|
color: #f8d757;
|
||||||
|
display: flex;
|
||||||
|
padding-top: 20upx;
|
||||||
|
}
|
||||||
|
.showDetails{
|
||||||
|
position: absolute;
|
||||||
|
bottom: 20upx;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 28upx;
|
||||||
|
color: #f8d757;
|
||||||
|
.icon{
|
||||||
|
font-size: 26upx;
|
||||||
|
color: #f8d757;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||