oil-station/gasStation-uni/pagesMy/invite/invite.vue
2024-03-12 15:52:45 +08:00

426 lines
8.4 KiB
Vue

<template>
<view class="content">
<view class="container">
<view class="my-header">
<view class="my-icons" @click="goback"> <uni-icons type="left" color="#ffffff" size="16"></uni-icons>
</view>
<view class="my-text">邀请有礼</view>
<view class="my-icons"></view>
</view>
<view class="faimg">
<view class="box-img">
<image src="../../static/imgs/fmbj.png" mode="aspectFit"></image>
</view>
<view class="hbbox">
<view class="h-box">
<view class="or-box">
<view class="max-size">{{allAmount}}</view>
<view class="min-size">优惠券总额</view>
</view>
<view class="or-box">
<view class="max-size">{{this.activeRecommendRecordsList.length || 0}}</view>
<view class="min-size">邀请人数</view>
</view>
</view>
<view class="x-box">
<view class="l-naniu" @click="open">
<u-icon name="grid" color="#FCDB5A" size="18"></u-icon>
<text>面对面邀请</text>
</view>
<view class="r-naniu">
<u-icon name="share-fill" color="#E9312F" size="18"></u-icon>
<button class="qiangzhi" open-type="share">
<text>分享给好友</text>
</button>
</view>
</view>
</view>
</view>
<!-- 顶部区域 -->
<view class="bai-box">
<view class="bai-top">
邀请记录
</view>
<view class="t-box" v-for="(item,index) in activeRecommendRecordsList" :key="index">
<view class="diss">
<view class="touxiang">
<image src="../../static/imgs/myx.png" mode="aspectFit"></image>
</view>
<view class="">
<view class="name-t">{{item.inviteeUserName}}</view>
<!-- <view class="h-size"></view> -->
</view>
</view>
<!-- <view class="hong-size">
+100
</view> -->
<view class="hong-size">
{{item.createTime}}
</view>
</view>
</view>
<u-popup :show="show" mode="center" :round="10" @close="close" @open="open">
<view class="popup_box">
<w-qrcode :options="options"></w-qrcode>
</view>
</u-popup>
</view>
</view>
</template>
<script>
import wx from 'weixin-js-sdk' // 引入微信js-sdk
import request from "../../utils/request";
export default {
data() {
return {
query: {
storeId: ''
},
allAmount: 0.0,
activeRecommendRecordsList: [],
title: '',
userId: '',
storeId: '',
show: false,
options: {
code: 'https://www.tuofeng.cc/oily?storeId=' + uni.getStorageSync('storeId') + '&userId=' + uni
.getStorageSync('userId') + '&type=yaoqingyouli',
// code: 'https://www.tuofeng.cc/oily?storeId=' + uni.getStorageSync('storeId') + ' &userId=' + uni
// .getStorageSync('userId'), // 生成二维码的值
size: 500, // 460代表生成的二维码的宽高均为460rpx
},
}
},
onLoad() {
let codes = 'https://www.tuofeng.cc/oily?storeId=' + uni.getStorageSync('storeId') +
'&userId=' + uni.getStorageSync('userId') + '&type=yaoqingyouli'
console.log(codes);
this.query.storeId = uni.getStorageSync("storeId");
},
onShareAppMessage(res) {
if (res.from === 'button') { // 来自页面内分享按钮
console.log(res.target)
}
return {
title: this.titles,
path: '/pages/index/index'
}
},
onShareTimeline(res) {
return {
title: this.titles,
path: '/pages/index/index'
}
},
components: {
},
onShare() {
wx.showShareMenu({
withShareTicket: true,
success: function() {
console.log('成功开启分享菜单')
},
fail: function(res) {
console.log('开启分享菜单失败', res)
}
})
wx.onShareAppMessage(function() {
return {
title: '来个油惠',
path: '/pages/index/index',
imageUrl: 'https://example.com/share.jpg',
success: function(res) {
console.log('分享成功', res)
},
fail: function(res) {
console.log('分享失败', res)
}
}
})
},
onShareAppMessage(res) {
if (res.from === 'button') { // 来自页面内分享按钮
console.log(res.target)
}
return {
title: '来个油惠',
path: '/pages/index/index?storeId=' + uni.getStorageSync('storeId') + '&userId=' + uni
.getStorageSync('userId') + '&type=yaoqingyouli'
}
},
onShow() {
this.getAllAmount();
this.getActiveRecommendRecords();
},
methods: {
// https://www.tuofeng.cc/oilStation?storeId=19&staffId=45
close() {
this.show = false
},
open() {
this.show = true
// uni.navigateTo({
// url: '/pagesMy/invite/inviteCode' ,
// })
},
getAllAmount() {
request({
url: 'business/marketingActivity/activeRecommendRecords/selectAllAmount',
method: 'get',
params: this.query
}).then(res => {
console.log(res)
if (res.code == 200) {
this.allAmount = res.data
}
})
},
getActiveRecommendRecords() {
request({
url: 'business/marketingActivity/activeRecommendRecords',
method: 'get',
params: this.query
}).then(res => {
console.log(res)
if (res.code == 200) {
this.activeRecommendRecordsList = res.data.records
}
})
},
goback() {
uni.navigateBack()
}
}
}
</script>
<style scoped lang="scss">
.content {
background: #2F72F7;
}
.container {
width: 100%;
height: 100vh;
box-sizing: border-box;
padding-top: 88px;
}
.my-header {
width: 100%;
height: 88px;
background: #2F72F7;
display: flex;
align-items: center;
justify-content: space-between;
color: #ffffff;
box-sizing: border-box;
padding: 0px 15px;
padding-top: 40px;
.my-icons {
width: 20px;
}
position: fixed;
top: 0px;
}
.box-img {
width: 100%;
height: 400px;
image {
width: 100%;
height: 100%;
}
}
.hbbox {
width: 90%;
margin: 0px auto;
height: 200px;
background: url('http://47.95.206.185:83/axb.png')center no-repeat;
background-size: 100% 100%;
position: absolute;
left: 50%;
transform: translate(-50%, -50%);
bottom: -172px;
}
.faimg {
position: relative;
}
.or-box {
width: 142px;
height: 72px;
background: #FFF4E4;
border-radius: 8px;
margin: 5px;
text-align: center;
box-sizing: border-box;
padding-top: 14px;
}
.h-box {
width: 100%;
padding: 10px;
box-sizing: border-box;
display: flex;
align-items: center;
justify-content: center;
padding-top: 5px;
}
.max-size {
font-size: 18px;
font-weight: bold;
color: #D23735;
}
.min-size {
font-size: 14px;
color: #333333;
}
.x-box {
display: flex;
align-items: center;
justify-content: center;
box-sizing: border-box;
padding-top: 30px;
}
.l-naniu {
width: 147px;
height: 32px;
border-radius: 23px 23px 23px 23px;
opacity: 1;
border: 1px solid #FCDB5A;
display: flex;
align-items: center;
justify-content: center;
color: #FCDB5A;
margin: 10px;
}
.r-naniu {
width: 147px;
height: 32px;
border-radius: 23px 23px 23px 23px;
opacity: 1;
border: 1px solid #FCDB5A;
background: #FCDB5A;
display: flex;
align-items: center;
justify-content: center;
color: #E9312F;
margin: 10px;
}
.bai-box {
width: 90%;
background: #ffffff;
border-radius: 8px;
margin: 0px auto;
box-sizing: border-box;
// padding: 15px;
margin-top: 90px;
overflow: hidden;
}
.bai-top {
width: 144px;
height: 32px;
background: linear-gradient(90deg, #F1DAB2 0%, #FBE5C5 50%, #F5DBB4 100%);
border-radius: 0px 0px 12px 12px;
display: flex;
align-items: center;
justify-content: center;
font-size: 16px;
font-weight: bold;
color: #552304;
margin: 0px auto;
}
.t-box {
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
padding: 5px 15px;
margin: 5px auto;
}
.touxiang {
width: 40px;
height: 40px;
border-radius: 50%;
overflow: hidden;
margin-right: 10px;
image {
width: 100%;
height: 100%;
}
}
.hong-size {
font-size: 16px;
font-weight: bold;
color: #D23735;
}
.name-t {
font-size: 16px;
font-weight: bold;
color: #333333;
}
.diss {
display: flex;
align-items: center;
}
.h-size {
font-size: 14px;
font-weight: 400;
color: #999999;
}
.qiangzhi {
background: transparent;
border: none;
box-shadow: 0px
}
.popup_box {
box-sizing: border-box;
padding: 15px;
}
button {
/* 清除默认边框 */
border: 0;
outline: none;
/*清除默认背景 */
margin: 0px;
padding: 0px !important;
background-color: transparent;
}
</style>