Compare commits

..

No commits in common. '29520d0daaa1dd54eeec29ea0e5ab6c2791cd6ac' and '589eec1d80288027278d8deceb5c96c0b56d3b9b' have entirely different histories.

  1. 20
      src/pages/index/components/ggl/index.vue
  2. 462
      src/pages/me/help.vue

@ -48,9 +48,7 @@
actiNum: 0, actiNum: 0,
total: 0, total: 0,
winningList: [], winningList: [],
activityRule: undefined, activityRule: undefined
startTime: undefined,
endTime: undefined
} }
}, },
onLoad(op) { onLoad(op) {
@ -117,9 +115,6 @@
}) })
}, },
handleComplete() { handleComplete() {
if(){
}
saveWinner({ saveWinner({
phone: useUserStore().userInfo?.phone || '', phone: useUserStore().userInfo?.phone || '',
detailId: this.detailId, detailId: this.detailId,
@ -128,14 +123,11 @@
this.btnText = '再刮一次!' this.btnText = '再刮一次!'
if(resp.code == 200) { if(resp.code == 200) {
this.getActivityNum() this.getActivityNum()
if(this.result != '谢谢惠顾'){ let help = ",完成助力即可领取奖品!"
let help = ",完成助力即可领取奖品!" uni.showToast({
uni.showToast({ icon: 'none',
icon: 'none', title: `恭喜获得${this.result}` + help
title: `恭喜获得${this.result}` + help })
})
}
this.showBtn = true this.showBtn = true
} }
}) })

@ -1,258 +1,304 @@
<template> <template>
<view style="padding-bottom: 50px;background-color: #C5121B;"> <view style="padding-bottom: 50px;background-color: #C5121B;">
<image class="wp100 img" mode="widthFix" <image class="wp100 img" mode="widthFix" src="https://oss-bq.ahduima.com/%E5%B0%8F%E7%A8%8B%E5%BA%8F/%E5%9B%BE%E7%89%87/%E5%8A%A9%E5%8A%9B%E4%B8%BB%E5%9B%BE.jpg"></image>
src="https://oss-bq.ahduima.com/%E5%B0%8F%E7%A8%8B%E5%BA%8F/%E5%9B%BE%E7%89%87/%E5%8A%A9%E5%8A%9B%E4%B8%BB%E5%9B%BE.jpg">
</image>
<view class="relative tip">邀请好友帮助你进行助力即可有机会领取奖品</view> <view class="relative tip">邀请好友帮助你进行助力即可有机会领取奖品</view>
<view class="relative help_div"> <view class="relative help_div">
<!-- --> <!-- -->
<view v-if="type == 1" class="relative help_card"> <view v-if="type == 1" class="relative help_card">
<view class="relative help_tip"> <view class="relative help_tip">
还差{{diffNum}}位好友助力即可领取奖品: 还差{{diffNum}}位好友助力即可领取奖品:
</view> </view>
<view v-if="winnerInfo.awards != undefined" class="relative help_tip" style="font-size: 40rpx;"> <view v-if="winnerInfo.awards != undefined" class="relative help_tip" style="font-size: 40rpx;">
{{winnerInfo.awards}} {{winnerInfo.awards}}
</view> </view>
<view class="p20"> <view class="help_list">
<u-grid :border="false" col="3"> <view v-for="item in helpUserList" class="help_item">
<u-grid-item v-for="(item, index) in helpUserList" :key="index"> <u-avatar class="help_item_avatar" :src="item.avatarUrl"></u-avatar>
<u-avatar v-if="item.id" class="p10tb border" size="120rpx" :src="item.avatarUrl"></u-avatar>
<view v-else class="p10tb">
<view class="avatar-text">
<u-avatar bg-color="#fff" color="#ccc" size="120rpx" text="邀"></u-avatar>
</view>
</view>
</u-grid-item>
</u-grid>
</view>
<view class="help_btn">
<button open-type="share" class="help_btn_font"> 邀请好友助力</button>
</view>
</view>
<view v-if="type == 2" class="relative help_card"> <!-- <view class="help_item_2_yao">
<view class="relative help_list" style="top: 200rpx;"> <image :src="item.avatarUrl"></image>
<view v-if="winnerInfo?.activityName" class="help_tip" </view> -->
style="font-size: 40rpx; margin: 25rpx 0rpx;"> </view>
{{winnerInfo?.activityName}} <view v-for="item in diffNum" class="help_item_2">
</view> <view class="help_item_2_yao"></view>
<view v-if="winnerInfo.schoolName != undefined" class="help_tip"> </view>
举办单位{{winnerInfo.schoolName}} </view>
</view> <view class="help_btn" >
<view v-if="winnerInfo.awards != undefined" class="help_tip" style="font-size: 45rpx;margin: 25rpx 0rpx;"> <button open-type="share" class="help_btn_font"> 邀请好友助力</button>
奖品{{winnerInfo.awards}} </view>
</view> </view>
</view>
<view class="help_btn"> <view v-if="type == 2" class="relative help_card">
<button class="help_btn_font" open-type="chooseAvatar" @chooseavatar="handleHelp" <view class="relative help_list" style="top: 200rpx;">
:disabled="disBtn">帮好友助力</button> <view v-if="winnerInfo.activityName != undefined" class="help_tip" style="font-size: 40rpx; margin: 25rpx 0rpx;">
</view> {{winnerInfo.activityName}}
</view> </view>
</view> <view v-if="winnerInfo.schoolName != undefined" class="help_tip">
举办单位{{winnerInfo.schoolName}}
</view>
<view v-if="winnerInfo.awards != undefined" class="help_tip" style="font-size: 45rpx;margin: 25rpx 0rpx;">
奖品{{winnerInfo.awards}}
</view>
</view>
<view class="help_btn" >
<button class="help_btn_font" open-type="chooseAvatar" @chooseavatar="handleHelp" :disabled="disBtn">帮好友助力</button>
</view>
</view>
</view>
</view> </view>
</template> </template>
<script> <script>
import useUserStore from '@/jtools/store/user' import useUserStore from '@/jtools/store/user'
import { import { queryActivityDetail,queryHelpInfo, saveHelpInfo, queryWinnerInfo } from '@/jtools/api/activity'
queryActivityDetail,
queryHelpInfo,
saveHelpInfo,
queryWinnerInfo
} from '@/jtools/api/activity'
export default { export default {
data() { data() {
return { return {
winnerId: undefined, winnerId: undefined,
helpUserList: [], btnText: '点我刮奖',
drawNum: 0, showBtn: true,
phone: undefined, helpUserList: [],
type: 2, drawNum: 0,
winnerInfo: undefined, diffNum: 3,
disBtn: false phone: undefined,
type: 2,
winnerInfo: undefined,
disBtn: false
} }
}, },
onLoad(op) { onLoad(op) {
this.winnerId = op.id
this.winnerId = op.id
// this.type = op.type ? Number(op.type) : 1 // this.type = op.type ? Number(op.type) : 1
this.phone = useUserStore().userInfo?.phone || undefined this.phone = useUserStore().userInfo?.phone || undefined
console.log(this.phone) console.log(this.phone)
this.getWinnerInfo() this.getWinnerInfo()
this.getHelpInfo() this.getHelpInfo()
this.disBtn = false this.disBtn = false
}, },
onShareAppMessage(res) { onShareAppMessage(res) {
if (res.from === 'button') { // if (res.from === 'button') {//
console.log(res.target) console.log(res.target)
} }
return { return {
title: '我正在参与领奖活动柜,请帮我助力', title: '我正在参与领奖活动柜,请帮我助力',
path: '/pages/me/help?id=' + this.winnerId + '&type=2' path: '/pages/me/help?id='+this.winnerId + '&type=2'
} }
}, },
onPullDownRefresh() {
if(this.type == 1){
this.getWinnerInfo()
this.getHelpInfo()
}
}
methods: { methods: {
// //
getWinnerInfo() { getWinnerInfo(){
queryWinnerInfo({ // uni.request({
winnerId: this.winnerId // url: 'http://192.168.1.6:8089/applet/activity/winner/info?winnerId='+this.winnerId
}).then(resp => { // }).then(resp => {
if (resp.code == 200) { // if(resp.data.code == 200) {
console.log(resp) // console.log(resp)
this.winnerInfo = resp.data; // this.winnerInfo = resp.data.data;
if (this.phone && this.winnerInfo.phone == this.phone) { // if(this.phone && this.winnerInfo.phone == this.phone){
this.type = 1 // this.type == 1
} else { // }
this.type = 2 // }
} // })
} queryWinnerInfo({winnerId : this.winnerId}).then(resp => {
}) if(resp.code == 200){
console.log(resp)
this.winnerInfo = resp.data;
if(this.phone && this.winnerInfo.phone == this.phone){
this.type = 1
} else {
this.type = 2
}
}
})
}, },
// //
getHelpInfo() { getHelpInfo(){
queryHelpInfo({ // uni.request({
winnerId: this.winnerId // url: 'http://192.168.1.6:8089/applet/activity/help/info?winnerId='+this.winnerId
}).then(resp => { // }).then(resp => {
if (resp.code == 200) { // if(resp.data.code == 200) {
this.drawNum = resp.data.helpNum; // console.log(resp)
const list = resp.data.helpUsers.map(item => ({ // this.drawNum = resp.data.data.helpNum;
...item, // this.helpUserList = resp.data.data.helpUsers
avatarUrl: 'https://jwl.ahduima.com' + item.avatarUrl // this.diffNum = (this.drawNum - this.helpUserList.length) < 0 ? 0 : (this.drawNum - this.helpUserList.length);
})); // console.log(this.drawNum)
this.diffNum = (this.drawNum - list.length) < 0 ? 0 : (this.drawNum - list.length); // console.log(this.diffNum)
const arr = new Array(this.diffNum).fill({}) // }
this.helpUserList = [...list,...arr] // })
} queryHelpInfo({winnerId : this.winnerId}).then(resp => {
}) if(resp.code == 200){
}, console.log(resp)
// this.drawNum = resp.data.helpNum;
handleHelp(e) { this.helpUserList = resp.data.helpUsers.map(item => ({
this.disBtn = false ...item,
uni.login({ avatarUrl: 'https://jwl.ahduima.com' + item.avatarUrl
provider: 'weixin', //使 }));
success: (loginRes) => { this.diffNum = (this.drawNum - this.helpUserList.length) < 0 ? 0 : (this.drawNum - this.helpUserList.length);
console.log(loginRes); }
uni.uploadFile({ })
url: 'https://jwl.ahduima.com/activity/applet/activity/help/save', },
// url: 'http://192.168.1.6:8089/applet/activity/help/save', //
filePath: e.detail.avatarUrl, handleHelp(e){
name: 'file', this.disBtn = false
formData: { console.log(e)
'code': loginRes.code, uni.login({
'winnerId': this.winnerId, provider: 'weixin', //使
}, success: (loginRes) => {
success: (uploadFileRes) => { console.log(loginRes);
console.log(uploadFileRes.data); uni.uploadFile({
let resp = JSON.parse(uploadFileRes.data); url: 'https://jwl.ahduima.com/activity/applet/activity/help/save',
console.log(resp); // url: 'http://192.168.1.6:8089/applet/activity/help/save',
filePath: e.detail.avatarUrl,
name: 'file',
formData: {
'code': loginRes.code,
'winnerId': this.winnerId,
},
success: (uploadFileRes) => {
console.log(uploadFileRes.data);
let resp = JSON.parse(uploadFileRes.data);
console.log(resp);
if (resp.code == 200) { if(resp.code == 200){
uni.showToast({ uni.showToast({
icon: 'none', icon: 'none',
title: `助力成功` title: `助力成功`
}) })
this.disBtn = true this.disBtn = true
} else { } else {
uni.showToast({ uni.showToast({
icon: 'error', icon: 'error',
title: resp.msg title: resp.msg
}) })
this.disBtn = true this.disBtn = true
} }
} }
}); });
} }
}); });
}, },
}, },
} }
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
.img { .img{
top: -130rpx !important; top: -130rpx !important;
} }
.tip { .tip {
height: 75px; height: 75px;
font-family: PingFang SC; font-family: PingFang SC;
font-weight: 400; font-weight: 400;
color: #FEFEFE; color: #FEFEFE;
line-height: 48px; line-height: 48px;
top: -520rpx; top: -520rpx;
text-align: center; text-align: center;
font-size: 35rpx; font-size: 35rpx;
} }
.help_div{
width: 710rpx;
height: 996rpx;
top: -560rpx;
margin-left: 20rpx;
margin-right: 20rpx;
background: linear-gradient(0deg, #F33D2F 100%, rgba(197,18,27,0.01) 0%);
border-radius: 40rpx;
.avatar-text {
border-radius: 50%;
border: 1px dashed #ccc;
}
.help_card{
width: 630rpx;
height: 886rpx;
margin: 0rpx 39rpx;
top: 55rpx;
background: #FFFFFF;
border-radius: 24rpx;
.help_div { .help_tip{
width: 710rpx; text-align: center;
height: 996rpx; font-size: 32rpx;
top: -560rpx; font-family: PingFang SC;
margin-left: 20rpx; font-weight: 400;
margin-right: 20rpx; color: #010101;
background: linear-gradient(0deg, #F33D2F 100%, rgba(197, 18, 27, 0.01) 0%); line-height: 55rpx;
border-radius: 40rpx; top: 15rpx;
}
.help_list{
margin: 68rpx 25rpx 25rpx 20rpx;
height: 580rpx;
.help_card { .help_item{
width: 630rpx; display: inline-block;
height: 886rpx; padding: 35rpx;
margin: 0rpx 39rpx; width: 194rpx;
top: 55rpx; height: 194rpx;
background: #FFFFFF;
border-radius: 24rpx;
.help_tip { border-radius: 50%;
text-align: center;
font-size: 32rpx;
font-family: PingFang SC;
font-weight: 400;
color: #010101;
line-height: 55rpx;
top: 15rpx;
}
.help_list { .help_item_avatar{
margin: 68rpx 25rpx 25rpx 20rpx; margin: auto;
height: 580rpx; width: 56rpx;
height: 56rpx;
color: #CCCCCC;
background: #C42E13;
border: 4px solid #C42E13;
} image{
height: 45px;
width: 45px;
}
}
}
.help_btn { .help_item_2{
text-align: center; display: inline-block;
margin: 0 75rpx; margin: 35rpx;
margin-bottom: 30rpx; width: 124rpx;
width: 500rpx; height: 124rpx;
height: 86rpx; border: 2px dotted #CCCCCC;
background: linear-gradient(0deg, #DE4224 0%, #B81706 100%); border-radius: 50%;
border-radius: 43rpx;
.help_btn_font { .help_item_2_yao{
font-size: 32rpx; margin: 34rpx 33rpx;
font-family: PingFang SC; width: 56rpx;
font-weight: 400; height: 56rpx;
color: #FFFFFF; font-size: 60rpx;
line-height: 86rpx; font-family: PingFang SC;
background: center; font-weight: 400;
} color: #CCCCCC;
} line-height: 48rpx;
} }
}
}
.help_btn{
text-align: center;
margin: 0 75rpx;
margin-bottom: 30rpx;
width: 500rpx;
height: 86rpx;
background: linear-gradient(0deg, #DE4224 0%, #B81706 100%);
border-radius: 43rpx;
.help_btn_font{
font-size: 32rpx;
font-family: PingFang SC;
font-weight: 400;
color: #FFFFFF;
line-height: 86rpx;
background: center;
}
}
}
} }

Loading…
Cancel
Save