From f60f913aa69d37ac9d8fa720e6149768329c30b0 Mon Sep 17 00:00:00 2001 From: whyneedname <542399163@qq.com> Date: Fri, 14 Oct 2022 18:38:11 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=84=E8=AF=A6=E6=83=85;=E4=B8=93?= =?UTF-8?q?=E5=AE=B6;=E9=A6=96=E9=A1=B5=E5=95=86=E5=93=81=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E5=88=87=E6=8D=A2=E5=BD=A2=E5=BC=8F=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/public.js | 8 + api/store.js | 2 +- components/PromotionGood.vue | 14 +- components/colorui/components/cu-custom.vue | 3 + pages.json | 8 + pages/expert/index.vue | 157 ++++++++ pages/home/components/HotCommodity.vue | 2 +- pages/home/index.vue | 302 ++++++++++++-- .../Evaluations/EvaluationDetail/index.vue | 373 +++++++++++++++++- pages/shop/Evaluations/index.vue | 13 +- pages/shop/GoodsCon/index.vue | 10 +- static/images/evaluation-icon.png | Bin 0 -> 3188 bytes static/images/left-bg.png | Bin 0 -> 1331 bytes static/images/right-bg.png | Bin 0 -> 1354 bytes static/images/share-icon.png | Bin 0 -> 500 bytes 15 files changed, 837 insertions(+), 55 deletions(-) create mode 100644 pages/expert/index.vue create mode 100644 static/images/evaluation-icon.png create mode 100644 static/images/left-bg.png create mode 100644 static/images/right-bg.png create mode 100644 static/images/share-icon.png diff --git a/api/public.js b/api/public.js index 8fcae88..fe8d4b1 100644 --- a/api/public.js +++ b/api/public.js @@ -115,3 +115,11 @@ export function imageBase64(image, code) { { login: false } ); } + +/** + * 获取专家列表 + * @returns {*} + */ +export function getExpert() { + return request.get("/expert", {}, { login: false }); +} \ No newline at end of file diff --git a/api/store.js b/api/store.js index cb70b76..43bb0ae 100644 --- a/api/store.js +++ b/api/store.js @@ -196,7 +196,7 @@ export function getEvaluation() { * 测评详情 */ export function getEvaluationDetail(id) { - return request.get("/evaluation"+id, {}, { + return request.get("/evaluation/"+id, {}, { login: false }); } diff --git a/components/PromotionGood.vue b/components/PromotionGood.vue index 7f0ea40..00a11db 100644 --- a/components/PromotionGood.vue +++ b/components/PromotionGood.vue @@ -183,18 +183,18 @@ export default { // &:before { // content: '¥'; // font-size: 26rpx; - // } - + // } + text { padding-left: 10rpx; font-size: 20rpx; color: #999999; line-height: 26rpx; - font-weight: 500; - // color: #000000; - text-decoration: line-through; - // font-size: 28rpx; - // font-style: italic; + font-weight: 500; + // color: #000000; + text-decoration: line-through; + // font-size: 28rpx; + // font-style: italic; } } diff --git a/components/colorui/components/cu-custom.vue b/components/colorui/components/cu-custom.vue index c0ba596..6ebfce2 100644 --- a/components/colorui/components/cu-custom.vue +++ b/components/colorui/components/cu-custom.vue @@ -71,6 +71,9 @@ BackPage() { uni.navigateBack({ delta: 1, + success(res) { + // console.log('navigateBack') + }, fail: (err) => { uni.switchTab({ url: '/pages/home/index', diff --git a/pages.json b/pages.json index f9b69a8..4dd5658 100644 --- a/pages.json +++ b/pages.json @@ -503,6 +503,14 @@ "style": { "navigationBarTitleText": "甄选测评", "enablePullDownRefresh": false, + "navigationStyle": "custom" + } + }, + { + "path": "pages/expert/index", + "style": { + "navigationBarTitleText": "专家专栏", + "enablePullDownRefresh": false, "navigationStyle": "custom" } } diff --git a/pages/expert/index.vue b/pages/expert/index.vue new file mode 100644 index 0000000..02d7893 --- /dev/null +++ b/pages/expert/index.vue @@ -0,0 +1,157 @@ + + + + + diff --git a/pages/home/components/HotCommodity.vue b/pages/home/components/HotCommodity.vue index 12fb96a..6bd751c 100644 --- a/pages/home/components/HotCommodity.vue +++ b/pages/home/components/HotCommodity.vue @@ -72,7 +72,7 @@ }, data() { return { - classifyList: ['护理榜', '清洗榜', '美妆榜', '热卖榜'], + classifyList: [], classifyType: 0, topList: [], goodsList: [], diff --git a/pages/home/index.vue b/pages/home/index.vue index 3478884..9b59de1 100644 --- a/pages/home/index.vue +++ b/pages/home/index.vue @@ -83,11 +83,62 @@ - - - - - + + + + + + + + + + + + {{ item.storeName }} + + ¥{{ item.price }}¥{{item.otPrice}} + + + + + + + + + + {{item.listName}} + + + + + {{index+1}} + {{index===0?'ST':index===1?'ND':index===2?'RD':'TH'}} + + + + {{item.storeName}} + ¥{{ item.price }}¥{{item.otPrice}} + {{ item.sales }}+人购买 + + + + + + + + + {{ item.storeName }} + + ¥{{ item.price }}¥{{item.otPrice}} + + + + + + + + + + + + + + + + + + + + + {{info.productInfo.storeName}} + {{info.productInfo.storeInfo}} + + + ¥{{info.productInfo.price}} + ¥{{info.productInfo.otPrice}} + + 查看详情 + + + + + + + + 1 + 眼界甄选评测员总结 + + {{info.summary}} + + + + {{info.summary?'2':'1'}} + 实用体验感受 + + {{info.feelSynopsis}} + + + + + + + + + + + + + + {{info.summary?(info.feelSynopsis || info.feelImage?'3':'2'):(info.feelSynopsis || info.feelImage?'2':'1')}} + 易用性体验 + + {{info.accessibilitySynopsis}} + + + + + + + + + + + + + + + + + + + + 立即购买 + @@ -26,23 +117,52 @@ import { getEvaluationDetail } from '@/api/store' export default { data() { - return { - id: 0, + return { + addBottom: this.addBottom, + id: 0, + info: {}, + feelCurrent: 0, + accessibilityCurrent: 0, }; }, onLoad() { this.id = this._route.query.id this.getInfo(this.id); }, + onShareAppMessage() { + return { + title: '甄选测评', + path: '/pages/shop/Evaluations/EvaluationDetail/index?id='+this.id + } + }, methods: { getInfo(id) { uni.showLoading({ title: '' }) getEvaluationDetail(id).then(res => { + this.info = res.data; uni.hideLoading(); }) - } + }, + videoErrorCallback(e) { + console.log('视频错误信息:') + console.log(e.detail.errMsg) + }, + goGoodsDetail() { + this.$yrouter.push({ + path: '/pages/shop/GoodsCon/index', + query: { + id: this.info.productInfo.id, + }, + }) + }, + feelCurrentChange(e) { + this.feelCurrent = e.detail.current; + }, + accessibilityCurrentChange(e) { + this.accessibilityCurrent = e.detail.current; + }, } } @@ -68,17 +188,238 @@ } .synopsis-box { - margin: 20rpx 32rpx 20rpx 90rpx; - padding: 20rpx 20rpx 20rpx 70rpx; - width: 626rpx; - min-height: 146rpx; - background: radial-gradient(circle at 24rpx 54rpx, transparent 98rpx, #F5F6F8) top left; - // background: #F5F6F8; + margin: 20rpx 32rpx 0rpx 90rpx; + padding: 20rpx 0rpx 20rpx 50rpx; + width: 628rpx; + height: 146rpx; + background: #F5F6F8; + box-shadow: 0rpx 10rpx 16rpx 0rpx rgba(0,0,0,0.15); + border-radius: 16rpx; + position: relative; + .left-circle { + height: 98rpx; + width: 98rpx; + background: #F1F1F1; + border-radius: 50%; + position: absolute; + top: 22rpx; + left: -50rpx; + // box-shadow: 0rpx 10rpx 8rpx 0rpx rgba(0,0,0,0.15); + } + image { + width: 120rpx; + height: 120rpx; + position: absolute; + top: 24rpx; + left: -66rpx; + } + .info { + height: 100%; + overflow: hidden; + font-size: 20rpx; + font-family: PingFang SC; + font-weight: 500; + color: #2DB5AE; + line-height: 26rpx; + padding: 0rpx 8rpx; + text { + font-weight: 600; + // padding-right: 6rpx; + } + } + } + + .video-box { + margin: 20rpx 32rpx 0rpx; + width: 686rpx; + height: 384rpx; box-shadow: 0rpx 10rpx 16rpx 0rpx rgba(0,0,0,0.15); border-radius: 16rpx; - // background-size: 17px 100px, 116px 100px, 17px 100px; - // background-repeat: no-repeat; - // background-position: 10px 0px,26px 0px,142px 0px; + #myVideo { + width: 686rpx; + height: 384rpx; + border-radius: 16rpx; + } + } + + .productInfo-box { + margin: 20rpx 32rpx 0rpx; + width: 686rpx; + height: 178rpx; + background: #F5F6F8; + box-shadow: 0rpx 10rpx 16rpx 0rpx rgba(0,0,0,0.15); + border-radius: 16rpx; + padding: 8rpx; + image { + width: 164rpx; + height: 164rpx; + border-radius: 16rpx; + } + .right-text { + width: 478rpx; + margin-right: 8rpx; + padding-top: 8rpx; + font-size: 20rpx; + font-family: SourceHanSansSCVF; + font-weight: 600; + color: #999999; + line-height: 28rpx; + .name { + font-size: 26rpx; + font-family: PingFang SC; + font-weight: 500; + color: #3A3A3C; + line-height: 38rpx; + } + .info { + padding-bottom: 14rpx; + } + .price-box { + font-family: Futura; + .price { + color: #3A3A3C; + line-height: 36rpx; + font-size: 30rpx; + } + .otPrice { + text-decoration: line-through; + } + } + .btn { + margin-top: 18rpx; + width: 138rpx; + height: 42rpx; + background: #2DB5AE; + border-radius: 16rpx; + font-size: 24rpx; + font-family: PingFang SC; + color: #FFFFFF; + line-height: 42rpx; + text-align: center; + } + } + } + + .wrapper { + margin: 20rpx 32rpx; + padding: 16rpx 24rpx; + width: 686rpx; + background: #F5F6F8; + box-shadow: 0rpx 10rpx 16rpx 0rpx rgba(0,0,0,0.15); + border-radius: 16rpx; + .item { + padding-bottom: 22rpx; + .title-box { + font-size: 30rpx; + font-family: SourceHanSansSCVF; + font-weight: 600; + color: #3A3A3C; + line-height: 23px; + .num { + width: 34rpx; + height: 34rpx; + border-radius: 50%; + background: #2DB5AE; + font-size: 20rpx; + font-family: PingFang SC; + font-weight: 600; + color: #FFFFFF; + line-height: 34rpx; + text-align: center; + margin-right: 8rpx; + } + } + .info-text { + margin-bottom: 24rpx; + font-size: 24rpx; + font-family: PingFang SC; + font-weight: 500; + color: #3A3A3C; + line-height: 32rpx; + text-indent: 42rpx; + } + .images-box { + padding-bottom: 24rpx; + position: relative; + swiper { + width: 638rpx; + height: 360rpx; + border-radius: 16rpx; + overflow: hidden; + swiper-item { + border-radius: 16rpx; + image { + width: 638rpx; + height: 360rpx; + border-radius: 16rpx; + } + } + } + .dot-box { + position: absolute; + bottom: 40rpx; + left: 50%; + transform: translateX(-50%); + .dot { + width: 8rpx; + height: 8rpx; + background: #FFFFFF; + border-radius: 6rpx; + margin: 0rpx 8rpx; + transition: width .5s cubic-bezier(.18,.89,.17,.88); + } + .on { + width: 36rpx; + background: #2DB5AE; + transition: width .5s cubic-bezier(.18,.89,.17,.88); + } + } + } + } + } + + .footer { + position: fixed; + bottom: 0; + left: 0; + width: 750rpx; + background: #F1F1F1; + box-shadow: 0rpx -4rpx 38rpx 0rpx rgba(0,0,0,0.2); + border-radius: 28rpx 28rpx 0rpx 0rpx; + padding: 12rpx 32rpx 0rpx; + .contacButton { + height: 80rpx; + padding: 0; + background-color: #F1F1F1; + } + .contacButton::after { + border: 0; + } + .item { + text-align: center; + font-size: 20rpx; + font-family: PingFang SC; + font-weight: 500; + color: #3A3A3C; + line-height: 22rpx; + image { + width: 50rpx; + height: 50rpx; + } + } + .btn { + margin-top: 6rpx; + width: 386rpx; + height: 66rpx; + background: #2DB5AE; + border-radius: 16rpx; + font-size: 26rpx; + font-family: PingFang SC; + font-weight: 600; + color: #FFFFFF; + line-height: 66rpx; + text-align: center; + } } diff --git a/pages/shop/Evaluations/index.vue b/pages/shop/Evaluations/index.vue index 9fb851d..def6674 100644 --- a/pages/shop/Evaluations/index.vue +++ b/pages/shop/Evaluations/index.vue @@ -49,12 +49,15 @@ }) }, goDetail(item) { - this.$yrouter.push({ - path: '/pages/shop/Evaluations/EvaluationDetail/index', - query: { - id: item.id - }, + uni.navigateTo({ + url: '/pages/shop/Evaluations/EvaluationDetail/index?id=' + item.id }) + // this.$yrouter.push({ + // path: '/pages/shop/Evaluations/EvaluationDetail/index', + // query: { + // id: item.id + // }, + // }) } } } diff --git a/pages/shop/GoodsCon/index.vue b/pages/shop/GoodsCon/index.vue index 96b2004..37ccd87 100644 --- a/pages/shop/GoodsCon/index.vue +++ b/pages/shop/GoodsCon/index.vue @@ -19,7 +19,7 @@ - + @@ -446,6 +446,14 @@ export default { goHome() { this.$yrouter.switchTab('/pages/home/index') }, + goBrand() { + this.$yrouter.push({ + path: '/pages/shop/brands/brandDetail/index', + query: { + id: this.brandInfo.id, + }, + }) + }, goShoppingCart() { this.$yrouter.switchTab('/pages/shop/ShoppingCart/index') }, diff --git a/static/images/evaluation-icon.png b/static/images/evaluation-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..86fce4d2c614187fcc275325965559d01144096c GIT binary patch literal 3188 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 literal 0 HcmV?d00001 diff --git a/static/images/right-bg.png b/static/images/right-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..313f7281c15806e74c3dd26acf8d7647358bc12a GIT binary patch literal 1354 zcmeAS@N?(olHy`uVBq!ia0y~yU^>CTz-Yt43>0}aZ~HYMWftHQ;tHg{egFCG+pq6G zet{U@e|-P```fp_5H^?u3jT!3e*5|L`;V{ResHevt^n#3ED7=pX85I*`Qg3<_pE0} zwqFYAD0B95s%BweVA&+eSO>+zcTpc-&%wKl)pZV*B%Rks`s8KHFRoA+* z$opyk)6MUq_x>z@RkrSN%n$CvxALk2`r}*Wqx2T{2e^Il&JN(*gyIk*w8;_Px$df#&Uz1mrs$w0P zVlZib@%L*RSALk%uW0*u=`X|S`L@N=|J?9B-;<)~euLY|?}7g}r@jJ_mN^IJKWLFT z=pk0brW|=f@LJOZ<`57Aq;5srPJyD9)e27-&I09GK*F=;sw=wx5NnY+Ahl|OafGvI zQOik~+#Vi23$+UJJ#n17pw&p(H*w;Lv)1X#daq@y*C$&R%+%s7&E2Ied zY@Xn`fqN#$;t8G?#1tn#&;|+trGYX%PHG3WQiNoHlxB)hj+2_Buo35~37!fmMjSKm zzq!=N155x16zX4B*BrgjbV8@&%&;S5c9$rC@{7TV`@iJk4UY^v4}zlXh@LF4WME+6 z`LuoC@o=6_szu|KeRG#8h#YYcSv&6@kMFnrk&dpeF%6>cA`k!d*yYL9(j&qlsVQI- zq>!@2;ei0=Yw7Agty3ufSd`%t;=+_cmc!TMVc+7^0t?BsW7 zW?*29@N{tu@i_i=%I%`V3Op`?=EcXK{kPvXZNbsUyVluE-jh1NOo&e-O7qd;?_62a ze1Cpu;oMXjc{VNP_rxBbWm}p>J}7jz_ljMdoM@H{&IOK5PTHChWhD@gWx19d2xjBCC zDtmUbuiw>g35x7kq8Gk6Aoh2tROTb?0;e-~)0||KU36CWxZiB<+|JMa#PU!;g43kE z*?I4_$Ly?D)@0YM)_7RYQDv}HBIVqSIOm;Q3${&8yWjlwvgrEBQbrf$4L&XTHM^)t z=Ex?sw#fSd4{FZY^*s7|Y1yXZLXx-rZpgeB<@TJjzwS^pT^dV75iU<@#Ly85}Sb4q9e01q?Nm;e9( literal 0 HcmV?d00001