zhaoxw 4 سال پیش
والد
کامیت
894914b7c8

+ 5 - 2
config/api.js

@@ -1,5 +1,5 @@
-const WX_API_BASE = 'https://www.qianjiadi.com/'
-// const WX_API_BASE = 'http://ch.jihengcc.cn:17080/'
+// const WX_API_BASE = 'https://www.qianjiadi.com/'
+const WX_API_BASE = 'http://ch.jihengcc.cn:17080/'
 // const WX_API_BASE = 'https://test.jihengcc.cn/'
    // const WX_API_BASE = 'https://www.qianjiadi.com/'
 
@@ -112,6 +112,9 @@ module.exports = {
 	submitEvaluate: WX_API_BASE + 'app/order/user/my/sharePlantProductList/productDetail/releaseEntrust',
 	//  连接自助采摘视频
 	linkPickVideo: WX_API_BASE + 'app/liveAndVideo/user/getLiveStatus',
+	// 获取委托金额
+	getShareTaskPric: WX_API_BASE + 'app/order/user/my/getShareTaskPrice',
+	
 	
 	
 	//  上传文件

+ 3 - 3
pages/index/index.vue

@@ -6,7 +6,7 @@
 		<view>
 			<swiper class="swiper" :indicator-dots="false" :autoplay="true" :interval="3000" :duration="500">
 				<swiper-item v-for="(item,index) in advertList" :key="index">
-					<image :src="item.imgPath"></image>
+					<image :src="item.imgPath" mode="aspectFill"></image>
 				</swiper-item>
 			</swiper>
 		</view>
@@ -51,7 +51,7 @@
 		</view>
 		<view class="content-box" style="width: calc(100% - 24px);margin-left: 12px; display: flex;justify-content: space-between;">
 			<view class="discount-col" v-for="(item,index) in discountList" :key="index" @click="goToGoodDetails(item)">
-				<image class="discount-img" :src="item.imgPath"></image>
+				<image class="discount-img" :src="item.imgPath" mode="aspectFill" style="width: 100%;"></image>
 				<view class="discount-name">{{item.productName}}</view>
 				<view class="discount-price">
 					<text class="sale-icon">¥</text>
@@ -63,7 +63,7 @@
 		<view class="index-title" style="margin-bottom: 4px;">
 			<view class="title-text">猜你喜欢</view>
 		</view>
-		<scroll-view class="content-box" scroll-y="true">
+		<scroll-view class="content-box" scroll-y="false">
 			<view class="goods-row" v-for="(item,index) in goodsList" :key="index" @click="goToGoodDetails(item)">
 				<image class="goods-img" :src="item.imgPath"></image>
 				<view class="goods-info">

+ 6 - 0
pages/shop/index.vue

@@ -12,10 +12,16 @@
 		</scroll-view>
 		<view class="sort-right-box">
 			<scroll-view show-scrollbar="true" scroll-x="true" class="sort-right-row">
+				<!-- <view style="padding-top: 20px;background-color: #909399;" v-if="sortSecondList.length<=0">
+					<u-divider color="#909399" border-color="#909399">没有更多了</u-divider>
+				</view> -->
 				<view class="sort-right-col" :class="sortSecondCode == item.cateCode ? 'sort-right-col-active' : ''" v-for="(item,index) in sortSecondList"
 				 :key="index" @click="checkSecondSort(item)">{{item.cateValue}}</view>
 			</scroll-view>
 			<scroll-view class="goods-box" scroll-y="true" @scrolltolower="handleLoadMore()">
+				<view style="padding-top: 20px;background-color: #FFFFFF;" v-if="goodsList.length<=0">
+					<u-divider color="#909399" border-color="#909399">没有更多了</u-divider>
+				</view>
 				<view class="goods-row" v-for="(item, index) in goodsList" :key="index" @click="goToGoodDetails(item)">
 					<image class="goods-img" :src="item.imgPath"></image>
 					<view class="goods-info">

+ 3 - 0
pagesGood/evaluateList.vue

@@ -1,6 +1,9 @@
 <template>
 	<view class="container">
 		<scroll-view class="message-list-box" scroll-y="true" @scrolltolower="handleLoadMore()">
+			<view style="padding-top: 20px;" v-if="assessList.length<=0">
+				<u-divider color="#909399" border-color="#909399">没有更多了</u-divider>
+			</view>
 			<view class="assess-row" v-for="(item, index1) in assessList" :key="index1">
 				<image class="assess-head" :src="item.headimg"></image>
 				<view class="assess-info">

+ 10 - 3
pagesGood/goodDetails.vue

@@ -3,7 +3,7 @@
 		<swiper class="swiper" :indicator-dots="true" indicator-color="#9A9A9A" indicator-active-color="#52A63A" :autoplay="true"
 		 :interval="3000" :duration="500">
 			<swiper-item v-for="(item,index) in goodData.imgs" :key="index">
-				<image :src="item.imgPath" style="background-size: contain; background-position: center center;"></image>
+				<image :src="item.imgPath" mode="aspectFill" style="width: 100%;height: 100%;"></image>
 			</swiper-item>
 		</swiper>
 		<view class="good-info">
@@ -57,7 +57,7 @@
 		<view class="good-recommend">
 			<view class="recommend-title">为您推荐</view>
 			<scroll-view class="recommend-box" scroll-x="true">
-				<view class="good-col" v-for="(item, index) in goodsList" :key="index">
+				<view class="good-col" v-for="(item, index) in goodsList" :key="index" @click="goToGoodDetails(item)">
 					<image class="good-img" :src="item.imgPath"></image>
 					<view class="good-name">{{item.productName}}</view>
 					<view class="good-price">¥{{item.bizPrice}}</view>
@@ -219,6 +219,12 @@
 					})
 				})
 			},
+			// 跳转为你推荐商品详情
+			goToGoodDetails(item) {
+				uni.navigateTo({
+					url: '/pagesGood/goodDetails?goodId=' + item.productId + '&goodType=' + item.productType
+				});
+			},
 			//  弹出购物弹窗
 			showPopup(e) {
 				uni.removeStorageSync('defaultAddress');
@@ -602,7 +608,7 @@
 
 				.good-col {
 					width: 108px;
-					height: 148px;
+					height: 158px;
 					margin: 10px 12px 10px 0px;
 					border-radius: 5px;
 					overflow: hidden;
@@ -642,6 +648,7 @@
 						font-family: PingFang SC;
 						color: #6CA63A;
 						line-height: 16px;
+						margin-bottom: 10px
 					}
 				}
 

+ 1 - 1
pagesGood/liveDetail.vue

@@ -97,7 +97,7 @@
 			closeGoods() {
 				this.$refs.popup.close()
 			},
-			goToGoodDetails() {
+			goToGoodDetails(item) {
 				uni.navigateTo({
 					url: '/pagesGood/goodDetails?goodId=' + item.productId
 				});

+ 1 - 1
pagesGood/videoList.vue

@@ -6,7 +6,7 @@
 		</view>
 		<scroll-view class="video-box" scroll-y="true" @scrolltolower="handleLoadMore()">
 			<view class="video-col" v-for="(item, index) in videoList" :key="index" @click="goToVideoDetail(item)">
-				<image class="video-img" :src="videoType == 1 ? item.imgUrl : item.coverUrl"></image>
+				<image class="video-img" :src="videoType == 1 ? item.imgUrl : item.coverUrl" mode="aspectFill"></image>
 				<view class="video-title">{{videoType == 1 ? item.liveName : item.videoName}}</view>
 				<view class="video-date" v-if="videoType == 1">直播时间:{{item.liveStartTime}}-{{item.liveEndTime}}</view>
 				<view class="video-mask" v-if="videoType == 1 && item.liveStatus == 2">

+ 170 - 19
pagesMain/orderDetail.vue

@@ -80,14 +80,43 @@
 				<view class="order-info-row">订单编号:{{orderData.orderCode}}</view>
 				<view class="order-info-row">创建时间:{{orderData.addOrderTime}}</view>
 				<view class="order-info-row" v-if="orderData.orderStatus > 1 && orderData.orderStatus != 6">支付时间:{{orderData.payTime ? orderData.payTime : orderData.addOrderTime}}</view>
-				<view class="order-info-row" v-if="orderData.orderStatus > 2 && orderData.orderStatus != 6">发货时间:{{orderData.sendTime}}</view>
-				<view class="order-info-row" v-if="orderData.orderStatus > 3 && orderData.orderStatus != 6">收货时间:{{orderData.confirmTime}}</view>
+				<view class="order-info-row" v-if="orderData.orderStatus > 2 && orderData.orderStatus != 6 && orderData.orderStatus != 4">发货时间:{{orderData.sendTime}}</view>
+				<view class="order-info-row" v-if="orderData.orderStatus > 3 && orderData.orderStatus != 6 && orderData.orderStatus != 4">收货时间:{{orderData.confirmTime}}</view>
 				<view class="order-info-row" v-if="orderData.orderStatus == 6">取消时间:{{orderData.cancelTime}}</view>
 			</view>
 		</view>
-		<uni-goods-nav :fill="true" :options="[]" @click="" @buttonClick="orderHandle" class="order-handle" :buttonGroup="buttonGroup" />
-		<u-modal v-model="modalShow" :content="modalContent" @confirm="submitHandle" :async-close="true" :show-cancel-button="true"></u-modal>
-		<u-top-tips ref="uTips"></u-top-tips>
+		<view class="order-info-box">
+			<view class="info-title-box">
+				<view class="info-title">评价信息</view>
+			</view>
+			<view class="info-content-box">
+				<view class="assess-row">
+					<image class="assess-head" :src="orderData.merchantInfoResVO.headImg"></image>
+					<view class="assess-info">
+						<view class="assess-name">{{orderData.nickname}}</view>
+						<view class="assess-date">{{orderData.evaluateResVO.evaluateTime ? orderData.evaluateResVO.evaluateTime : ''}}</view>
+						<view class="assess-sore-box">
+							<u-rate v-model="orderData.evaluateResVO.score" active-color="#FFAE21" disabled></u-rate>
+						</view>
+						<view class="assess-text">{{orderData.evaluateResVO.evaluateContent ? orderData.evaluateResVO.evaluateContent : '暂无评价'}}</view>
+						<view class="assess-img-box">
+							<image class="img-col" :src="item.imgUrl" v-for="(item,i) in orderData.evaluateResVO.evaluateImgs" :key="i"></image>
+						</view>
+					</view>
+					<view class="shop-reply-box" v-if="orderData.evaluateResVO.replyContent">
+						<view class="shop-head">
+							<view class="iconfont icondianpu"></view>
+							<view class="shop-name">店家回复</view>
+						</view>
+						<view class="shop-reply">{{orderData.evaluateResVO.replyContent}}</view>
+					</view>
+				</view>
+			</view>
+		</view>
+	<!-- </view> -->
+	<uni-goods-nav :fill="true" :options="[]" @click="" @buttonClick="orderHandle" class="order-handle" :buttonGroup="buttonGroup" />
+	<u-modal v-model="modalShow" :content="modalContent" @confirm="submitHandle" :async-close="true" :show-cancel-button="true"></u-modal>
+	<u-top-tips ref="uTips"></u-top-tips>
 	</view>
 </template>
 
@@ -159,20 +188,20 @@
 						}]
 						break;
 					case '2':
-					    var someVaule = this.orderData.merchantInfoResVO.products.some(v => {
+						var someVaule = this.orderData.merchantInfoResVO.products.some(v => {
 							Number(v.productType)
 							return v.productType == 1
 						})
-					    if (!someVaule) {
-						    this.buttonGroup = [{
-						    	text: '申请售后',
-						    	backgroundColor: '#75BD60',
-						    	color: '#fff'
-						    }, {
-						    	text: '自助采摘',
-						    	backgroundColor: '#52A63A',
-						    	color: '#fff'
-						    }]
+						if (!someVaule) {
+							this.buttonGroup = [{
+								text: '申请售后',
+								backgroundColor: '#75BD60',
+								color: '#fff'
+							}, {
+								text: '自助采摘',
+								backgroundColor: '#52A63A',
+								color: '#fff'
+							}]
 						} else {
 							this.buttonGroup = [{
 								text: '申请售后',
@@ -217,7 +246,7 @@
 						color: '#fff'
 					})
 				}
-			this.getOrderType()
+				this.getOrderType()
 			}).catch(error => {
 				this.$refs.uTips.show({
 					title: error.data.msg,
@@ -230,7 +259,7 @@
 		methods: {
 			//  获取订单类型
 			getOrderType() {
-				switch (this.orderData.orderStatus) {					
+				switch (this.orderData.orderStatus) {
 					case 1:
 						this.orderType = {
 							title: '等待买家付款',
@@ -794,7 +823,129 @@
 					font-family: PingFang SC;
 					color: #333333;
 					line-height: 26px;
-					word-break:break-all; 
+					word-break: break-all;
+				}
+			}
+
+			.assess-row {
+				width: calc(100% - 30px);
+				margin: 0 15px;
+				float: left;
+				// border-top: 1px solid #F6F6F6;
+				padding: 12px 0;
+
+				.assess-head {
+					width: 50px;
+					height: 50px;
+					float: left;
+					object-fit: cover;
+					border-radius: 50%;
+				}
+
+				.assess-info {
+					width: calc(100% - 62px);
+					margin-left: 12px;
+                    float: left;
+					.assess-name {
+						height: 18px;
+						float: left;
+						line-height: 18px;
+						font-size: 15px;
+						font-family: PingFang SC;
+						font-weight: bold;
+						color: #343434;
+					}
+
+					.assess-date {
+						height: 18px;
+						float: right;
+						line-height: 18px;
+						font-size: 12px;
+						font-family: PingFang SC;
+						font-weight: bold;
+						color: #666666;
+					}
+
+					.assess-sore-box {
+						width: 100%;
+						height: 16px;
+						float: left;
+						margin: 6px 0;
+					}
+
+					.assess-text {
+						width: 100%;
+						float: left;
+						font-size: 12px;
+						font-family: PingFang SC;
+						font-weight: bold;
+						color: #666666;
+						line-height: 16px;
+						margin: 8px 0 10px 0;
+						overflow: hidden;
+						text-overflow: ellipsis;
+						display: -webkit-box;
+						-webkit-line-clamp: 2;
+						-webkit-box-orient: vertical;
+						word-wrap: break-word;
+					}
+
+					.assess-img-box {
+						width: 100%;
+						float: left;
+						display: flex;
+
+						.img-col {
+							height: 60px;
+							width: 60px;
+							object-fit: cover;
+							margin: 0 10px 10px 0;
+						}
+					}
+				}
+				.shop-reply-box {
+					width: 100%;
+					float: left;
+					background: #F5F5F5;
+					border-radius: 5px;
+					margin-top: 10px;
+				
+					.shop-head {
+						width: 100%;
+						height: 36px;
+						float: left;
+						box-sizing: border-box;
+						padding: 10px 12px;
+				
+						.icondianpu {
+							width: 16px;
+							height: 16px;
+							float: left;
+							color: #52A63A;
+							font-size: 20px;
+							margin-right: 8px;
+						}
+				
+						.shop-name {
+							height: 16px;
+							float: left;
+							font-size: 15px;
+							font-family: PingFang SC;
+							color: #52A63A;
+							line-height: 16px;
+						}
+					}
+				
+					.shop-reply {
+						width: 100%;
+						float: left;
+						box-sizing: border-box;
+						padding: 0 12px 12px 12px;
+						font-size: 12px;
+						font-family: PingFang SC;
+						color: #666666;
+						line-height: 16px;
+					}
 				}
 			}
 		}

+ 3 - 1
pagesMain/paySuccess.vue

@@ -17,7 +17,9 @@
 	const API = require('@/config/api')
 	export default {
 		data() {
-			return {}
+			return {
+			    orderId: ''
+			}
 		},
 		onLoad(options) {
 			this.orderId = options.orderId

+ 1 - 1
pagesMain/plantList.vue

@@ -62,7 +62,7 @@
 						uni.stopPullDownRefresh();
 					}
 					if (res.isSuccess) {
-						if (res.data.list.length) {
+						if (res.data.list && res.data.list.length) {
 							this.isOver = res.data.list.length != 10
 							this.plantList = this.plantList.concat(res.data.list)
 						}