lyqu 4 лет назад
Родитель
Сommit
9ac7ec7d4a

+ 15 - 3
common/http/http.api.js

@@ -33,12 +33,14 @@ let pointsUrl = {
 }
 
 let boostUrl = {
-	listUrl: '/cyzh-helpRecord/helprecord/list2'
+	listUrl: '/cyzh-helpRecord/helprecord/list2',
+	doHitUrl: '/cyzh-helpRecord/helprecord/doHit',
 }
 
 let productionUrl = {
 	listUrl: 'cyzh-production/production/list',
-	detailUrl: 'cyzh-production/production/detail'
+	detailUrl: 'cyzh-production/production/detail',
+	helpRecordListUrl: 'cyzh-helpRecord/helprecord/selectHelpRecordVoPage',
 }
 
 let goodsUrl = {
@@ -63,6 +65,10 @@ let pointsGoodsUrl={
 	getUsableHotAndPoints:'cyzh-userActivityStatistical/useractivitystatistical/getUsableHotAndPoints'
 }
 
+let musicBoostUrl = {
+	detailUrl: '/cyzh-production/production/getProductDetail'
+}
+
 // 此处第二个参数vm,就是我们在页面使用的this,你可以通过vm获取vuex等操作,更多内容详见uView对拦截器的介绍部分:
 // https://uviewui.com/js/http.html#%E4%BD%95%E8%B0%93%E8%AF%B7%E6%B1%82%E6%8B%A6%E6%88%AA%EF%BC%9F
 const install = (Vue, vm) => {
@@ -96,11 +102,13 @@ const install = (Vue, vm) => {
 	
 	let boost = {
 		list:(params = {}) => vm.$u.get(boostUrl.listUrl, params),
+		doHit:(params = {}) => vm.$u.post(boostUrl.doHitUrl, params),
 	}
 	
 	let production = {
 		list:(params = {}) => vm.$u.get(productionUrl.listUrl, params),
 		detail:(params = {}) => vm.$u.get(productionUrl.detailUrl, params),
+		helpRecord:(params = {}) => vm.$u.get(productionUrl.helpRecordListUrl, params),
 	}
 	let goods = {
 		getMineGoods:(params = {}) => vm.$u.get(goodsUrl.getMineGoods, params),
@@ -122,9 +130,13 @@ const install = (Vue, vm) => {
 		getUsableHotAndPoints:(params = {}) => vm.$u.get(pointsGoodsUrl.getUsableHotAndPoints, params),
 		exchange:(params = {}) => vm.$u.post(pointsGoodsUrl.exchange, params),
 	}
+	
+	let musicBoost = {
+		detail:(params = {}) => vm.$u.get(musicBoostUrl.detailUrl, params),
+	}
 
 	// 将各个定义的接口名称,统一放进对象挂载到vm.$u.api(因为vm就是this,也即this.$u.api)下
-	vm.$u.api = {wxInfo,uploadFile, activity, user, points, boost,production,goods,medal,pointsGoods};
+	vm.$u.api = {wxInfo,uploadFile, activity, user, points, boost,production,goods,medal,pointsGoods, musicBoost};
 }
 
 export default {

+ 1 - 1
components/homeViews/activity-view.vue

@@ -156,7 +156,7 @@
 			//跳转需要带惨方法
 			navWithParm(id) {
 				uni.navigateTo({
-					url: "/pages/activityList/activity/boost?activityId=" + this.activityId + "&receiverId=" + id,
+					url: "/pages/activityList/activity/authorBoost?activityId=" + this.activityId + "&receiverId=" + id,
 				})
 			},
 		}

+ 9 - 1
pages.json

@@ -58,7 +58,7 @@
 		    
 		}
         ,{
-            "path" : "pages/activityList/activity/boost",
+            "path" : "pages/activityList/activity/authorBoost",
             "style" :                                                                                    
             {
                 "navigationBarTitleText": "打榜助力"
@@ -244,6 +244,14 @@
             }
             
         }
+        ,{
+            "path" : "pages/activityList/activity/musicBoost",
+            "style" :                                                                                    
+            {
+                "navigationBarTitleText": "歌曲打榜"
+            }
+            
+        }
     ],
 	"globalStyle": {
 		"navigationStyle": "custom",

+ 18 - 21
pages/activityList/activity/boost.vue → pages/activityList/activity/authorBoost.vue

@@ -1,10 +1,9 @@
 <template>
 	<view>
 		<view v-if="boostDetail.cover"  class="bg-img" style="height: 563upx;" :style="{'backgroundImage':'url('+ boostDetail.cover +')'}"></view>
-		<view v-else class="flex justify-center align-center"  style="height: 563upx;background-color: #5a3ee8;">
-			<view class="text-white" @click="uploadCover">
-				<text class="cuIcon-add " style="font-size: 120rpx;"></text>
-				<view>上传封面</view>
+		<view v-else class="flex justify-center align-center"  style="height: 563upx;background-color: #e5e5e5;">
+			<view class="text-white" >
+				
 			</view>
 		</view>
 		
@@ -77,7 +76,7 @@
 			</view>
 		</view>
 		<u-popup v-model="dialogShow" mode="center" width="500rpx" height="600rpx" border-radius="30">
-			<view class="bg-img text-center" style="background-image: url('/static/dialogBgImg.png');height: 600rpx;">
+			<view class="bg-img text-center" style="background-image: url('https://upload-file-data.obs.cn-south-1.myhuaweicloud.com/e914f556be414767aca011a30961560a-dialogBgImg.png');height: 600rpx;">
 				<view style="height: 120upx;"></view>
 				<u-avatar src="/static/avatar.png" size="160"></u-avatar>
 				<view class="margin-top" style="font-size: 24upx;font-family: PingFang SC;font-weight: bold;color: #323035;">你将为{{boostDetail.nickName}}增加50热力值</view>
@@ -116,31 +115,29 @@
 			this.authorization();
 		},
 		methods: {
-			uploadCover(){
-				this.$mpi.uploadFile().then(res=>{
-					let obj= JSON.parse(res)
-					let params={
-						id:this.receiverId,
-						cover:obj.data
-					}
-					this.$u.api.user.submit(params).then(res=>{
-						this.getBoostDetail(this.activityId, this.receiverId);
-					})
-				})
-			},
 			//打榜助力
 			userBoost() {
 				if (this.$u.test.isEmpty(this.senderId)) {
-					let path = 'pages/activityList/activity/boost?activityId=' + this.activityId + '&receiverId=' + this.receiverId;
+					let path = 'pages/activityList/activity/authorBoost?activityId=' + this.activityId + '&receiverId=' + this.receiverId;
 					window.location.href = authUrl(path);
 				} else {
-					
+					this.$u.api.boost.doHit({activityId: this.activityId, senderId: this.senderId, receiverId: this.receiverId, type: 2}).then(res => {
+						console.log(res);
+						if (res.code == 400) {
+							uni.showToast({
+								icon: "none",
+								title: res.msg
+							})
+						} else {
+							this.getBoostDetail(this.activityId, this.receiverId);
+						}
+					})
 				}
 			},
 			//礼物支付
 			pay() {
 				if (this.$u.test.isEmpty(this.senderId)) {
-					let path = 'pages/activityList/activity/boost?activityId=' + this.activityId + '&receiverId=' + this.receiverId;
+					let path = 'pages/activityList/activity/authorBoost?activityId=' + this.activityId + '&receiverId=' + this.receiverId;
 					window.location.href = authUrl(path);
 				} else {
 					
@@ -157,7 +154,7 @@
 				this.currentPresentSum = 0;
 				this.count = 1;
 				this.current = index;
-				this.currentPresentSum = this.present[index].price;
+				this.currentPresentSum = this.boostDetail.presentList[index].price;
 			},
 			//礼物+
 			plus() {

+ 1 - 1
pages/activityList/activity/awards.vue

@@ -1,6 +1,6 @@
 <template>
 	<view>
-		<view class="bg-img" style="background-image: url('/static/bgimg.png');height: 310upx;"></view>
+		<view class="bg-img" style="background-image: url('https://upload-file-data.obs.cn-south-1.myhuaweicloud.com/5f263a5a6e7c4f2493e0325f28ab659a-bgimg.png');height: 310upx;"></view>
 		<view class="container" style="margin: -80upx 30upx 30upx 30upx;">
 			<view class="padding">
 				<text class="text-bold text-black padding-right-sm">账户热力值</text>

+ 1 - 1
pages/activityList/activity/hot.vue

@@ -66,7 +66,7 @@
 			//跳转需要带惨方法
 			navWithParm(id) {
 				uni.navigateTo({
-					url: "/pages/activityList/activity/boost?activityId=" + this.activityId + "&receiverId=" + id,
+					url: "/pages/activityList/activity/authorBoost?activityId=" + this.activityId + "&receiverId=" + id,
 				})
 			},
 			onSearch(value) {

+ 242 - 0
pages/activityList/activity/musicBoost.vue

@@ -0,0 +1,242 @@
+<template>
+	<view>
+		<view v-if="boostDetail.urlsType == 1"  class="bg-img" style="height: 563upx;" :style="{'backgroundImage':'url('+ boostDetail.cover +')'}"></view>
+		<view v-else  class="bg-img" style="height: 563upx;" :style="{'backgroundImage':'url('+ boostDetail.urls +')'}"></view>
+		<view class="head">
+			<view class="title">为{{boostDetail.title}}打榜</view>
+			<view class="flex justify-between align-center padding-lr">
+				<view class="flex align-center">
+					<u-avatar :src="boostDetail.avatar" size="120"></u-avatar>
+					<view class="padding-left">
+						<view class="number">{{+boostDetail.hotValue}}</view>
+						<view class="tag">
+							<image src="/static/crown.png" style="width: 22upx;height: 19upx;margin-right: 10upx;"></image>
+							<view class="text-sm text-white">热力榜第{{boostDetail.rank}}</view>
+						</view>
+					</view>
+				</view>
+				<view class="text-center">
+					<button class="cu-btn round theme-bg-color text-white text-bold" @click="userBoost">
+						<text>打榜</text>
+						<text class="cuIcon-hot padding-lr-xs"></text>
+						<text>X{{boostDetail.ticketHotValue}}</text>
+					</button>
+					<view class="text-sm text-gray margin-top-xs">今日可打榜次数: {{boostDetail.allowHitNum}}</view>
+				</view>
+			</view>
+		</view>
+		<view class="flex justify-between align-center bg-white" style="padding: 40upx 30upx 30upx 30upx;">
+			<view class="flex align-center">
+				<image src="/static/icon-person.png" style="width: 82upx;height: 82upx;"></image>
+				<view class="padding-left-sm">
+					<view class="text-lg text-bold text-black">转发邀请打榜</view>
+					<view class="text-sm text-gray padding-top-xs">成功邀请一位好友打榜,热力值+5</view>
+				</view>
+			</view>
+			<button style="height: 56upx;" class="cu-btn round theme-bg-color text-white text-sm">去邀请</button>
+		</view>
+		<view class="container">
+			<view class="title">打call助力</view>
+		</view>
+		<view class="bg-white padding-sm">
+			<view class="flex justify-around">
+				<block v-for="(item,index) in boostDetail.presentList" :key="index">
+					<view class="text-center padding-top-xs" :class="current == index ? 'boder':''" @click="change(index)">
+						<image :src="item.icon" style="width: 80upx;height: 80upx;"></image>
+						<view class="text-sm margin-tb-xs">金额: {{+item.price}}</view>
+						<view style="margin-bottom: 10upx;">
+							<text class="cuIcon-hotfill theme-color"></text>
+							<text style="font-size: 20upx;">{{+item.hotValue}}热力值/{{+item.pointsValue}}</text>
+						</view>
+					</view>
+				</block>
+			</view>
+		</view>
+		<view class="bg-white padding-sm">
+			<view class="text-sm text-gray">所有的打call助力均会由本平台发起公益捐赠</view>
+		</view>
+		<view style="height: 100upx;"></view>
+		<view class="footer-fixed bg-white padding-sm flex justify-between align-center">
+			<view>
+				<text style="font-size: 36upx;color: #FF4200">¥</text>
+				<text style="font-size: 46upx;font-family: PingFang SC;font-weight: bold;color: #FF4200">{{count * currentPresentSum}}</text>
+			</view>
+			<view  class="flex align-center">
+				<view class="flex align-center">
+					<view class="padding-right-sm" @click="minus"> <u-icon name="minus-circle-fill" color="#5a3ee8" size="36"></u-icon> </view>
+					<input type="number" class="text-center input" v-model="count" />
+					<view class="padding-left-sm" @click="plus"> <u-icon name="plus-circle-fill" color="#5a3ee8" size="36"></u-icon> </view>
+				</view>
+				<button style="width: 150upx;" class="margin-left cu-btn round theme-bg-color text-white text-sm" @click="dialogShow = true">助力</button>
+			</view>
+		</view>
+		<u-popup v-model="dialogShow" mode="center" width="500rpx" height="600rpx" border-radius="30">
+			<view class="bg-img text-center" style="background-image: url('https://upload-file-data.obs.cn-south-1.myhuaweicloud.com/e914f556be414767aca011a30961560a-dialogBgImg.png');height: 600rpx;">
+				<view style="height: 120upx;"></view>
+				<u-avatar src="/static/avatar.png" size="160"></u-avatar>
+				<view class="margin-top" style="font-size: 24upx;font-family: PingFang SC;font-weight: bold;color: #323035;">你将为{{boostDetail.title}}增加50热力值</view>
+				<view class="text-gray text-sm">公益勋章X1</view>
+				<view class="text-gray text-sm">立白助力礼包A</view>
+				<view class="text-gray text-sm">可得300积分,可用于国信商城兑换</view>
+				<view class="padding">
+					<u-button class="custom-style" shape="circle" @click="pay">去支付</u-button>
+				</view>
+			</view>
+		</u-popup>
+	</view>
+</template>
+
+<script>
+	import {authUrl} from '@/common/conf/config.js';
+	import {getUrlParams} from '@/common/utils/utils.js';
+	export default {
+		data() {
+			return {
+				current: 0,
+				boostDetail: {},
+				dialogShow: false,
+				count: 1,
+				currentPresentSum: 0,
+				productId: '',
+				userId: '',
+			}
+		},
+		onLoad(options) {
+			this.productId = options.id;
+			this.userId = uni.getStorageSync("userId");
+			this.getBoostDetail(options.id, this.userId);
+			this.authorization();
+		},
+		methods: {
+			//打榜助力
+			userBoost() {
+				if (this.$u.test.isEmpty(this.userId)) {
+					let path = 'pages/activityList/activity/musicBoost?id=' + this.productId;
+					window.location.href = authUrl(path);
+				} else {
+					this.$u.api.boost.doHit({
+						activityId: this.boostDetail.activityId, 
+						productId: this.productId, 
+						senderId: this.userId,
+						receiverId: this.boostDetail.userId, 
+						type: 0,
+					}).then(res => {
+						console.log(res);
+						if (res.code == 400) {
+							uni.showToast({
+								icon: "none",
+								title: res.msg
+							})
+						} else {
+							this.getBoostDetail(this.productId, this.userId);
+						}
+						
+					})
+				}
+			},
+			//礼物支付
+			pay() {
+				if (this.$u.test.isEmpty(this.userId)) {
+					let path = 'pages/activityList/activity/musicBoost?id=' + this.productId;
+					window.location.href = authUrl(path);
+				} else {
+					
+				}
+			},
+			//获取助力详情
+			getBoostDetail(productId, userId) {
+				this.$u.api.musicBoost.detail({id: productId, userId: this.userId}).then(res => {
+					this.boostDetail = res;
+					this.currentPresentSum = res.presentList[this.current].price;
+				})
+			},
+			change(index) {
+				this.currentPresentSum = 0;
+				this.count = 1;
+				this.current = index;
+				this.currentPresentSum = this.boostDetail.presentList[index].price;
+			},
+			//礼物+
+			plus() {
+				this.count++
+			}, 
+			//礼物 -
+			minus() {
+				if (this.count > 1) {
+					this.count--
+				}
+			},
+			async authorization() {
+				let params = getUrlParams(window.location.search);
+				if (!this.$u.test.isEmpty(params.code)) {
+					let res = await this.$u.api.wxInfo.getUserInfo({userCode: params.code});
+					let datas = {
+						nickName: res.nickname,
+						avatar: res.headimgurl,
+						gender: res.sex,
+						openid: res.openid,
+						unionid: res.unionid
+					}
+					let result = await this.$u.api.user.login(datas);
+					if (result) {
+						this.userId = result.id;
+						uni.setStorageSync("userId", result.id);
+					}
+				}
+			},
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.head {
+		background-color: #ffffff;
+		margin-top: -26upx;
+		border-radius: 26upx 26upx 0 0;
+		.number {
+			font-size: 38upx;
+			font-family: PingFang SC;
+			font-weight: 800;
+			color: #222222;
+		}
+		.tag {
+			padding: 0 10upx;
+			line-height: 40upx;
+			display: flex;
+			align-items: center;
+			justify-content: center;
+			background: linear-gradient(90deg, #7355F4 0%, #573BE5 100%);
+			margin-top: 8upx;
+			border-radius: 30upx;
+		}
+	}
+	.title {
+		line-height: 50px;
+		padding-left: 30upx;
+		font-size: 30upx;
+		font-family: PingFang SC;
+		font-weight: 800;
+		color: #201F1F;
+	}
+	.container {
+		background-color: #FFFFFF;
+		margin-top: 30upx;
+	}
+	.boder {
+		box-shadow: -1upx -1upx 60upx #d8d8d8;
+		border-radius: 16upx;
+	}
+	.input {
+		width: 80upx;
+		background-color: #ffffff;
+		text-align: center;
+		border: none;
+		height: 60rpx;
+		min-height: 1.8rem;
+	}
+	.custom-style {
+		background-color: #5b3ee7;
+		width: 250upx;
+		color: #ffffff;
+	}
+</style>

+ 1 - 0
pages/activityList/activity/signUp.vue

@@ -120,6 +120,7 @@
 				this.$u.api.activity.detail({id: id}).then(res => {
 					this.detail = res
 					this.classification = res.classification.split(',');
+					this.data.personType = this.classification[0];
 				})
 			},
 			preViewImg(url){

+ 10 - 5
pages/activityList/activity/songRank.vue

@@ -1,6 +1,6 @@
 <template>
 	<view>
-		<view class="bg-img flex justify-center align-center" style="background-image: url('/static/songRank/songRankBgImg.png');height: 402upx;">
+		<view class="bg-img flex justify-center align-center" style="background-image: url('https://upload-file-data.obs.cn-south-1.myhuaweicloud.com/97d63ec49f544a33a6a8cc3c0b64b17a-songRankBgImg.png');height: 402upx;">
 			<view class="title">歌曲排行榜</view>
 		</view>
 		<view class="flex justify-center align-center padding-bottom">
@@ -18,9 +18,9 @@
 		</view>
 		<block v-for="(item, index) in rankList" :key="index">
 			<block v-if="index == 0 || index == 1 || index == 2">
-				<view class="margin-sm flex align-center" :class="index == 0 ? 'first' : index == 1 ? 'second' : index == 2 ? 'third' : '' ">
-					<u-image width="200" height="200" :src="item.cover" v-if="item.urlsType==1"></u-image>
-					<u-image width="200" height="200" :src="item.urls" v-else></u-image>
+				<view class="margin-sm flex align-center" :class="index == 0 ? 'first' : index == 1 ? 'second' : index == 2 ? 'third' : '' " @click="musicBoost(item.id)">
+					<u-image width="200" height="200" border-radius="16" :src="item.cover" v-if="item.urlsType==1"></u-image>
+					<u-image width="200" height="200" border-radius="16" :src="item.urls" v-else></u-image>
 					<view class="flex justify-between container" :style="{width: (index == 0 ? '70%': index == 1 ? '69%' : index == 2 ? '68%' : '60%')}">
 						<view class="left"  style="width: 65%;">
 							<view class="name text-cut">{{item.title}}</view>
@@ -42,7 +42,7 @@
 				</view>
 			</block>
 			<block v-else>
-				<view class="flex" style="padding: 10upx 30upx 30upx 40upx;">
+				<view class="flex" style="padding: 10upx 30upx 30upx 40upx;"  @click="musicBoost(item.id)">
 					<view class="flex justify-center align-center text-bold text-lg padding-right">{{index + 1}}</view>
 					<image v-if="item.urlsType==1" :src="item.cover" style="width: 120upx;height: 120upx;margin-right: 20upx;"></image>
 					<image v-else :src="item.urls" style="width: 120upx;height: 120upx;margin-right: 20upx;"></image>
@@ -114,6 +114,11 @@
 					this.rankList=res.records
 					console.log(res.records);
 				})
+			},
+			musicBoost(id) {
+				uni.navigateTo({
+					url: "/pages/activityList/activity/musicBoost?id=" + id
+				})
 			}
 		}
 	}

+ 21 - 16
pages/activityList/mine/boostDetail.vue

@@ -1,23 +1,28 @@
 <template>
 	<view>
-		<block v-for="(item, index) in boostList" :key="index">
-			<view class="flex align-center justify-between boder">
-				<view class="flex align-center" style="width: 50%;">
-					<view class="padding-sm">
-						<u-avatar :src="item.avatar" size="82"></u-avatar>
-					</view>
-					<view>
-						<view class="name">{{item.nickName}}</view>
-						<view class="time padding-top-xs">{{item.createTime}}</view>
+		<block v-if="$u.test.isEmpty(boostList)">
+			<u-empty margin-top="300" text="暂无数据" mode="list"></u-empty>
+		</block>
+		<block v-else>
+			<block v-for="(item, index) in boostList" :key="index">
+				<view class="flex align-center justify-between boder">
+					<view class="flex align-center" style="width: 55%;">
+						<view class="padding-sm">
+							<u-avatar :src="item.avatar" size="82"></u-avatar>
+						</view>
+						<view>
+							<view class="name">{{item.nickName}}</view>
+							<view class="time padding-top-xs">{{item.createTime}}</view>
+						</view>
 					</view>
+					<view class="text-sm" style="color: #757575;">{{item.typeSub == 1 ? '打榜' : '打赏'}}</view>
+					<view class="name padding-right flex justify-end" style="width: 180upx;">{{+item.totalHotValue}}热力值</view>
 				</view>
-				<view class="text-sm" style="color: #757575;">{{item.type}}</view>
-				<view class="name padding-right flex justify-end" style="width: 180upx;">{{item.totalHotValue}}热力值</view>
+			</block>
+			<view style="height: 80rpx;" v-if="status">
+				<u-divider bgColor="#f1f1f1;"  height="80">到底了</u-divider>
 			</view>
 		</block>
-		<view style="height: 80rpx;" v-if="status">
-			<u-divider bgColor="#f1f1f1;"  height="80">到底了</u-divider>
-		</view>
 	</view>
 </template>
 
@@ -32,7 +37,7 @@
 			}
 		},
 		onLoad() {
-			this.userId = uni.getStorageSync("userId");
+			this.userId = uni.getStorageSync("userId") || -1;
 			this.getBoostDetail();
 		},
 		onReachBottom() {
@@ -45,7 +50,7 @@
 		},
 		methods: {
 			getBoostDetail() {
-				this.$u.api.boost.list({id: this.userId, current: this.current, size: this.size}).then(res => {
+				this.$u.api.boost.list({receiverId: this.userId, current: this.current, size: this.size}).then(res => {
 					this.boostList = [...this.boostList,...res.records];
 				})
 			}

+ 25 - 14
pages/activityList/mine/introduction.vue

@@ -31,15 +31,18 @@
 				<view class="flex align-center justify-between padding-lr-sm">
 					<view class="flex align-center" style="width: 40%;">
 						<view class="padding-sm">
-							<u-avatar :src="item.image" size="82"></u-avatar>
+							<u-avatar :src="item.avatar" size="82"></u-avatar>
 						</view>
-						<view class="name">{{item.name}}</view>
+						<view class="name">{{item.nickName}}</view>
 					</view>
-					<view class="text-sm" style="color: #757575;">{{item.type}}</view>
-					<view class="name padding-right flex justify-end" style="width: 180upx;">{{item.hotValue}}热力值</view>
+					<view class="text-sm" style="color: #757575;">{{item.typeSub == 1 ? '打榜' : '打赏'}}</view>
+					<view class="name padding-right flex justify-end" style="width: 180upx;">{{+item.totalHotValue}}热力值</view>
 				</view>
 			</block>
 		</view>
+		<view style="height: 80rpx;" v-if="status">
+			<u-divider bgColor="#f1f1f1;"  height="80">到底了</u-divider>
+		</view>
 	</view>
 </template>
 
@@ -49,25 +52,33 @@
 			return {
 				productId: '',
 				detail: {},
-				boostList: [
-					{image: '/static/avatar.png', name: '易烊千玺', time: '2021-6-7 10:28:46', type: '打榜', hotValue: '12'},
-					{image: '/static/avatar2.png', name: '许嵩', time: '2021-6-7 10:28:46', type: '礼物', hotValue: '13'},
-					{image: '/static/avatar.png', name: '林俊杰', time: '2021-6-7 10:28:46', type: '打榜', hotValue: '188'},
-					{image: '/static/avatar2.png', name: '沈以诚', time: '2021-6-7 10:28:46', type: '打榜', hotValue: '88'},
-					{image: '/static/avatar.png', name: '颜人中', time: '2021-6-7 10:28:46', type: '礼物', hotValue: '13'},
-					{image: '/static/avatar.png', name: '毛不易', time: '2021-6-7 10:28:46', type: '转发', hotValue: '1'},
-					{image: '/static/avatar2.png', name: '陈奕迅', time: '2021-6-7 10:28:46', type: '打榜', hotValue: '5'}
-				],
+				boostList: [],
+				current: 1,
+				size: 30,
+				status: false,
 			}
 		},
 		onLoad(options) {
 			this.productId = options.id;
 			this.getProductInfo();
+			this.getHelpRecord();
+		},
+		onReachBottom() {
+			if (this.boostList.length < this.current * this.size) {
+				this.status = true;
+			} else {
+				this.current += 1;
+				this.getHelpRecord();
+			}
 		},
 		methods: {
+			getHelpRecord() {
+				this.$u.api.production.helpRecord({productId: this.productId, current: this.current, size: this.size}).then(res => {
+					this.boostList = [...this.boostList,...res.records];
+				})
+			},
 			getProductInfo() {
 				this.$u.api.production.detail({id: this.productId}).then(res => {
-					console.log(res);
 					this.detail = res;
 				})
 			}

+ 1 - 1
pages/activityList/mine/myBoost.vue

@@ -1,6 +1,6 @@
 <template>
 	<view>
-		<view class="bg-img" style="background-image: url('/static/bgimg.png');height: 310upx;"></view>
+		<view class="bg-img" style="background-image: url('https://upload-file-data.obs.cn-south-1.myhuaweicloud.com/5f263a5a6e7c4f2493e0325f28ab659a-bgimg.png');height: 310upx;"></view>
 		<block v-for="(item, index) in boostList" :key="index">
 			<view class="flex align-center justify-between boder">
 				<view class="flex align-center">

+ 6 - 1
pages/activityList/mine/myMusic.vue

@@ -39,7 +39,7 @@
 			</view>
 		</view>
 		<block v-for="(item, index) in list" :key="index">
-			<view class="flex bg-white" style="padding: 10upx 70upx 30upx 70upx;">
+			<view class="flex bg-white" style="padding: 10upx 70upx 30upx 70upx;" @click="detail(item.id)">
 				<image v-if="item.urlsType==0" :src="item.urls" style="width: 120upx;height: 120upx;margin-right: 20upx;"></image>
 				<image v-if="item.urlsType==1" :src="item.cover" style="width: 120upx;height: 120upx;margin-right: 20upx;"></image>
 				<view style="width: 75%;">
@@ -104,6 +104,11 @@
 				uni.navigateTo({
 					url: "/pages/activityList/activity/signUp",
 				})
+			},
+			detail(id) {
+				uni.navigateTo({
+					url: "/pages/activityList/mine/introduction?id=" + id 
+				})
 			}
 		}
 	}

+ 1 - 1
pages/activityList/mine/pointsDetail.vue

@@ -1,6 +1,6 @@
 <template>
 	<view>
-		<view class="bg-img flex justify-center align-center" style="background-image: url('/static/bgimg.png');height: 310upx;">
+		<view class="bg-img flex justify-center align-center" style="background-image: url('https://upload-file-data.obs.cn-south-1.myhuaweicloud.com/5f263a5a6e7c4f2493e0325f28ab659a-bgimg.png');height: 310upx;">
 			<view class="text-center" style="margin-top: 80upx;">
 				<view style="font-size: 24upx;font-family: PingFang SC;font-weight: 400;color: #cfc8f9;">可用积分</view>
 				<view style="font-size: 54upx;font-family: PingFang SC;font-weight: 800;color: #ffffff;">{{+usablePoints}}</view>