Browse Source

Merge branch 'sxx' into landong

# Conflicts:
#	pages/shop/Evaluations/EvaluationDetail/index.vue
home_hotList
ld0104 2 years ago
parent
commit
0bb30cba08
  1. 14
      assets/css/style.css
  2. 20
      assets/css/style.less
  3. 2
      components/UserEvaluation.vue
  4. 6
      pages.json
  5. 10
      pages/activity/DargainDetails/index.vue
  6. 4
      pages/activity/GroupRule/index.vue
  7. 61
      pages/home/index.vue
  8. 7
      pages/shop/Evaluations/EvaluationDetail/index.vue
  9. 16
      pages/shop/GoodsCon/index.vue
  10. 6
      pages/shop/GoodsFoot/index.vue
  11. 121
      pages/shop/IntegralGoodsCon/index.vue
  12. 2
      pages/shop/brands/brandDetail/index.vue
  13. 42
      pages/user/PersonalData/index.vue
  14. 13
      pages/user/signIn/Sign/index.vue

14
assets/css/style.css

@ -257,18 +257,18 @@ page {
line-height: 32rpx;
padding: 16rpx 0rpx;
}
.evaluateWtapper .evaluateItem .imgList {
padding: 0 30rpx 0 15rpx;
margin-top: 25rpx;
}
.evaluateWtapper .evaluateItem .imgList .pictrue {
width: 156rpx;
height: 156rpx;
margin: 0 0 15rpx 15rpx;
width: 204rpx;
height: 204rpx;
padding-right: 13rpx;
}
.evaluateWtapper .evaluateItem .imgList .pictrue:last-child {
padding-right: 0rpx;
}
.evaluateWtapper .evaluateItem .imgList .pictrue .image {
width: 100%;
height: 100%;
border-radius: 8rpx;
}
/*优惠券列表公共*/
.coupon-list {

20
assets/css/style.less

@ -394,20 +394,26 @@ page {
padding: 16rpx 0rpx;
}
.evaluateWtapper .evaluateItem .imgList {
padding: 0 0.3 * 100rpx 0 0.15 * 100rpx;
margin-top: 0.25 * 100rpx;
}
// .evaluateWtapper .evaluateItem .imgList {
// padding: 0 0.3 * 100rpx 0 0.15 * 100rpx;
// margin-top: 0.25 * 100rpx;
// }
.evaluateWtapper .evaluateItem .imgList .pictrue {
width: 1.56 * 100rpx;
height: 1.56 * 100rpx;
margin: 0 0 0.15 * 100rpx 0.15 * 100rpx;
width: 204rpx;
height: 204rpx;
padding-right: 13rpx;
// margin: 0 0 0.15 * 100rpx 0.15 * 100rpx;
}
.evaluateWtapper .evaluateItem .imgList .pictrue:last-child {
padding-right: 0rpx;
}
.evaluateWtapper .evaluateItem .imgList .pictrue .image {
width: 100%;
height: 100%;
border-radius: 8rpx;
}
// .evaluateWtapper .evaluateItem .reply {

2
components/UserEvaluation.vue

@ -23,7 +23,7 @@
<!-- <view class="time">{{ item.createTime }} {{ item.sku||'' }}</view> -->
<view class="evaluate-infor">{{ item.comment }}</view>
<view class="imgList acea-row" v-if="item.picturesArr.length">
<view class="pictrue" v-for="(itemn, eq) in item.picturesArr" :key="eq">
<view class="pictrue" v-for="(itemn, eq) in item.picturesArr" :key="eq" v-if="eq < 3">
<image :src="itemn" class="image" />
</view>
</view>

6
pages.json

@ -414,7 +414,8 @@
"path": "pages/activity/DargainDetails/index",
"style": {
"navigationBarTitleText": "砍价详情",
"navigationStyle": "custom"
"navigationStyle": "custom",
"enablePullDownRefresh": true
}
},
{
@ -446,7 +447,8 @@
"path": "pages/activity/GroupRule/index",
"style": {
"navigationBarTitleText": "拼团详情",
"navigationStyle": "custom"
"navigationStyle": "custom",
"enablePullDownRefresh": true
}
},
{

10
pages/activity/DargainDetails/index.vue

@ -261,7 +261,7 @@
<view class="help font-color-red" v-text="'成功帮砍' + bargainHelpPrice + '元'"></view>
您也可以砍价低价拿哦快去挑选心仪的商品吧~
</view>
<button class="tipBnt" open-type="share" v-if="bargainUid === userInfo.uid">邀请好友帮砍价</button>
<button class="tipBnt" open-type="share" v-if="bargainUid === userInfo.uid" @click="close">邀请好友帮砍价</button>
<!-- <view class="tipBnt" @click="goPoster" v-if="bargainUid === userInfo.uid">邀请好友帮砍价</view> -->
<view class="tipBnt" @click="getBargainStart" v-else>我也要参与</view>
</view>
@ -325,6 +325,14 @@ export default {
mounted: function () {
this.mountedStart()
},
onPullDownRefresh() {
this.getBargainShare(0);
if (this.bargainUid !== this.userInfo.uid) {
this.getBargainStartUser();
}
this.getBargainHelpList();
uni.stopPullDownRefresh();
},
methods: {
//
mountedStart: function () {

4
pages/activity/GroupRule/index.vue

@ -209,6 +209,10 @@ export default {
imageUrl: this.storeCombination.image
}
},
onPullDownRefresh() {
this.getCombinationPink();
uni.stopPullDownRefresh();
},
methods: {
swiperChange(e) {
this.swiperCurrent = e.detail.current;

61
pages/home/index.vue

@ -48,17 +48,13 @@
</view>
</view>
<view class="selections">
<scroll-view scroll-x="true" class="scroll">
<view class="item-box">
<view class="" v-for="(item,index) in info.evaluationList" :key="index"
@click="goEvaluationDetail(item)">
<view class="item">
<!-- <view :class="'item ' + (index%2 == 0?'':'black')"> -->
<image :src="item.homeImage" mode="aspectFill"></image>
</view>
<swiper previous-margin="32rpx">
<swiper-item v-for="(item,index) in info.evaluationList" :key="index" @click="goEvaluationDetail(item)">
<view class="item">
<image :src="item.homeImage" mode="aspectFill"></image>
</view>
</view>
</scroll-view>
</swiper-item>
</swiper>
</view>
</view>
@ -815,37 +811,26 @@
.selections {
padding-top: 6rpx;
.scroll {
swiper {
width: 100%;
overflow: hidden;
white-space: nowrap;
}
.item-box {
display: flex;
flex-wrap: nowrap;
// width: 2144rpx;
padding: 10rpx 0rpx 24rpx 32rpx;
.item {
width: 684rpx;
height: 240rpx;
// background: #F5F6F8;
box-shadow: 0rpx 10rpx 16rpx 0rpx rgba(0, 0, 0, 0.06);
border-radius: 16rpx;
margin-right: 20rpx;
overflow: hidden;
image {
width: 100%;
height: 100%;
height: 274rpx;
swiper-item {
width: 704rpx !important;
.item {
margin-left: ;
width: 684rpx;
height: 240rpx;
box-shadow: 0rpx 10rpx 16rpx 0rpx rgba(0, 0, 0, 0.06);
border-radius: 16rpx;
overflow: hidden;
image {
width: 100%;
height: 100%;
}
}
}
// .black {
// background: #4F4E53;
// }
}
}
}

7
pages/shop/Evaluations/EvaluationDetail/index.vue

@ -16,7 +16,12 @@
<view class="synopsis-box acea-row" v-if="info.synopsis">
<view class="left-circle"></view>
<view class="info">
<<<<<<< HEAD
<!-- <text>甄选评测介绍</text> -->{{' ' + info.synopsis}}
=======
{{' ' + info.synopsis}}
<!-- <text>甄选评测介绍</text>{{' ' + info.synopsis}} -->
>>>>>>> sxx
</view>
<image src="../../../../static/images/evaluation-icon.png" mode=""></image>
</view>
@ -227,7 +232,7 @@
margin: 20rpx 32rpx 0rpx 90rpx;
padding: 20rpx 0rpx 20rpx 50rpx;
width: 628rpx;
height: 146rpx;
// height: 146rpx;
background: #F5F6F8;
box-shadow: 0rpx 10rpx 16rpx 0rpx rgba(0, 0, 0, 0.06);
border-radius: 16rpx;

16
pages/shop/GoodsCon/index.vue

@ -156,20 +156,20 @@
<user-evaluation :reply="reply"></user-evaluation>
</view>
<!-- <view class="product-parameter">
<view class="product-parameter" v-if="storeInfo.parameter.length > 0">
<view class="title">商品参数</view>
<view :class="'parameter-list ' + (isUnfold?'unfold':'')" :style="isUnfold?'height: auto;':'max-height: 184rpx;'">
<view class="parameter-item acea-row" v-for="(item,index) in 5" :key="index">
<view class="parameter-name one-t">品牌</view>
<view class="parameter">LA PRAIRIE</view>
<view class="parameter-item acea-row" v-for="(item,index) in storeInfo.parameter" :key="index">
<view class="parameter-name one-t">{{item.name}}</view>
<view class="parameter">{{item.details}}</view>
</view>
</view>
<view class="more-box acea-row row-center-wrapper" @click="unfold" :style="isUnfold?'height: 50rpx;padding-top: 0rpx;':''">
<view v-if="storeInfo.parameter.length > 4" class="more-box acea-row row-center-wrapper" @click="unfold" :style="isUnfold?'height: 50rpx;padding-top: 0rpx;':''">
<view>{{isUnfold?'收起':'展开'}}</view>
<view v-if="isUnfold" class="jiantou-up"></view>
<view v-else class="jiantou-down"></view>
</view>
</view> -->
</view>
<!-- 商品推荐 -->
<!-- <view class="superior">
@ -1036,8 +1036,8 @@
border-radius: 50%;
.img {
width: 84rpx;
height: 84rpx;
width: 100%;
height: 100%;
background-color: #FFFFFF;
border-radius: 50%;
}

6
pages/shop/GoodsFoot/index.vue

@ -58,12 +58,12 @@
</view>
</view>
</view>
<Recommend></Recommend>
<!-- <Recommend></Recommend> -->
</view>
</template>
<script>
import Loading from '@/components/Loading'
import Recommend from '@/components/Recommend'
// import Recommend from '@/components/Recommend'
import {
getCollectUser,
getCollectDel
@ -71,7 +71,7 @@
export default {
name: 'GoodsFoot',
components: {
Recommend,
// Recommend,
Loading,
},
props: {},

121
pages/shop/IntegralGoodsCon/index.vue

@ -34,7 +34,7 @@
<!-- 规格 -->
<view class="attribute acea-row row-between-wrapper" @click="selecAttrTap">
<view>选规格</view>
<view class="acea-row attr-content">
<view class="acea-row attr-content">
<image v-if="item.image" :src="item.image" v-for="(item,index) in attrImages" :key="index" mode="aspectFill"></image>
<view class="attrs">{{attr.productAttr[0].attrValueArr.length}}{{attr.productAttr.length == 1?attr.productAttr[0].attrName:attr.productAttr[0].attrValueArr.length == 1?attr.productAttr[1].attrName:attr.productAttr[0].attrName}}可选</view>
<!-- <text>{{ attrTxt }}</text>
@ -45,16 +45,34 @@
</view>
<!-- 用户评价 -->
<!-- <view class="userEvaluation" v-if="replyCount">
<view class="userEvaluation" v-if="replyCount">
<view class="title acea-row row-between-wrapper">
<view>用户评价({{ replyCount }})</view>
<text @click="goEvaluateList(id)" class="praise">
<text class="font-color-red">{{ replyChance }}%</text>好评率
<text class="iconfont icon-jiantou"></text>
</text>
<view class="acea-row row-middle">
<text>评价</text>
<text class="replyCount">{{ replyCount }}</text>
</view>
<view @click="goEvaluateList(id)" class="praise acea-row row-middle">
<view>好评率{{ replyChance }}%</view>
<view class="jiantou-right"></view>
</view>
</view>
<user-evaluation :reply="reply"></user-evaluation>
</view> -->
</view>
<view class="product-parameter" v-if="storeInfo.parameter.length > 0">
<view class="title">商品参数</view>
<view :class="'parameter-list ' + (isUnfold?'unfold':'')" :style="isUnfold?'height: auto;':'max-height: 184rpx;'">
<view class="parameter-item acea-row" v-for="(item,index) in storeInfo.parameter" :key="index">
<view class="parameter-name one-t">{{item.name}}</view>
<view class="parameter">{{item.details}}</view>
</view>
</view>
<view v-if="storeInfo.parameter.length > 4" class="more-box acea-row row-center-wrapper" @click="unfold" :style="isUnfold?'height: 50rpx;padding-top: 0rpx;':''">
<view>{{isUnfold?'收起':'展开'}}</view>
<view v-if="isUnfold" class="jiantou-up"></view>
<view v-else class="jiantou-down"></view>
</view>
</view>
<!-- 商品详情 -->
<view class="product-intro">
@ -150,7 +168,7 @@ export default {
productSelect: {},
},
isOpen: false, //
productValue: [],
productValue: [],
attrImages: [],
id: 0,
storeInfo: {},
@ -347,10 +365,10 @@ export default {
that.$set(that, 'goodList', goodArray)
that.updateTitle()
that.DefaultSelect()
that.getCartCount()
for(let i in that.productValue) {
that.attrImages.push(that.productValue[i]);
if(that.attrImages.length == 2) return
that.getCartCount()
for(let i in that.productValue) {
that.attrImages.push(that.productValue[i]);
if(that.attrImages.length == 2) return
}
})
.catch(err => {
@ -748,6 +766,83 @@ export default {
margin-left: 8rpx;
}
.userEvaluation .title .replyCount {
font-size: 20rpx;
font-family: PingFang SC;
font-weight: 500;
color: #3A3A3C;
padding-left: 8rpx;
}
.product-parameter {
margin: 0rpx 32rpx 20rpx;
padding: 16rpx 24rpx;
background: #F5F6F8;
box-shadow: 0rpx 10rpx 16rpx 0rpx rgba(0, 0, 0, 0.06);
border-radius: 16rpx;
position: relative;
transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
.title {
font-size: 30rpx;
font-family: SourceHanSansSCVF;
font-weight: 600;
color: #3A3A3C;
line-height: 46rpx;
padding-bottom: 22rpx;
}
.parameter-list {
overflow: hidden;
.parameter-item {
font-size: 24rpx;
font-family: PingFang SC;
font-weight: 500;
color: #3A3A3C;
line-height: 40rpx;
padding-bottom: 6rpx;
.parameter-name {
padding: 0rpx 20rpx;
width: 172rpx;
height: 40rpx;
background: #E3E3E3;
margin-right: 6rpx;
}
.parameter {
padding: 0rpx 20rpx;
width: 460rpx;
height: 40rpx;
background: #E3E3E3;
}
}
}
.unfold {
overflow: visible;
padding-bottom: 26rpx;
transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
}
.more-box {
width: 686rpx;
height: 76rpx;
border-radius: 0rpx 0rpx 16rpx 16rpx;
padding-top: 10rpx;
position: absolute;
left: 0;
bottom: 0;
// z-index: 1;
background: linear-gradient(180deg, rgba(243, 243, 243, 0.4) 0%, #FFFFFF 100%);
font-size: 20rpx;
font-family: PingFang SC;
font-weight: 500;
color: #999999;
line-height: 26rpx;
}
}
.geoPage {
position: fixed;
width: 100%;

2
pages/shop/brands/brandDetail/index.vue

@ -217,7 +217,7 @@
width: 100%;
height: 100%;
background: #F5F6F8;
border-radius: 16rpx;
border-radius: 14rpx;
}
}
.info-box {

42
pages/user/PersonalData/index.vue

@ -83,7 +83,8 @@
chooseImage
} from "@/utils";
import {
VUE_APP_API_URL
VUE_APP_API_URL,
BXG_TENANT_ID
} from "@/config";
import {
postUserEdit,
@ -192,7 +193,44 @@
});
},
onChooseAvatar(e) {
this.avatar = e.detail.avatarUrl;
uni.getImageInfo({
src: e.detail.avatarUrl,
success: image => {
// console.log(image)
uni.showLoading({ title: '图片上传中', mask: true })
uni.uploadFile({
url: `${VUE_APP_API_URL}/api/upload`,
file: image,
filePath: image.path,
header: {
Authorization: 'Bearer ' + store.getters.token,
'tenant-id': BXG_TENANT_ID
},
name: 'file',
success: res => {
this.avatar = JSON.parse(res.data).data;
console.log('this.avatar', this.avatar)
},
fail: err => {
uni.showToast({
title: '上传图片失败',
icon: 'none',
duration: 2000,
})
},
complete: res => {
uni.hideLoading()
},
})
},
fail: err => {
uni.showToast({
title: '获取图片信息失败',
icon: 'none',
duration: 2000,
})
},
})
},
chooseImage() {
chooseImage((img) => {

13
pages/user/signIn/Sign/index.vue

@ -47,6 +47,11 @@
<view class="wrapper acea-row row-column row-middle">
<view class="tip">已累计签到</view>
<view class="num-box acea-row row-center row-bottom">
<view class="item" v-if="signCount.length < 4">
<view class="top"></view>
<view class="bottom"></view>
<view class="num">{{ 0 }}</view>
</view>
<view class="item" v-for="(item, signCountIndex) in signCount.length" :key="signCountIndex">
<view class="top"></view>
<view class="bottom"></view>
@ -493,7 +498,7 @@
goSign: function() {
let that = this,
sumSginDay = that.userInfo.sumSignDay;
if (that.userInfo.is_day_sgin) {
if (that.userInfo.is_day_sgin || that.userInfo.isDaySign) {
uni.showToast({
title: "您今日已签到!",
icon: "none",
@ -510,6 +515,12 @@
// that.signCount = that.PrefixInteger(sumSginDay + 1, 4);
that.signCount = String(sumSginDay + 1);
that.userInfo.is_day_sgin = true;
that.userInfo.isDaySign = true;
uni.showModal({
title:'签到成功!',
showCancel: false,
confirmColor: '#2DB5AE',
})
that.userInfo.integral = add(that.userInfo.integral, res.data.integral);
that.getSignList();
});

Loading…
Cancel
Save