154 lines
3.2 KiB
Vue
154 lines
3.2 KiB
Vue
|
|
<template>
|
|||
|
|
<view class="order">
|
|||
|
|
<view class="order-icon">
|
|||
|
|
<up-icon name="checkmark-circle-fill" :color="Color" size="25" />
|
|||
|
|
<text>晒单已提交</text>
|
|||
|
|
</view>
|
|||
|
|
<view v-if="isReward == 1" style="margin-top: 30rpx;">
|
|||
|
|
您已获得<text :style="{color: Color}">{{couponData.amount}}元</text>优惠券
|
|||
|
|
</view>
|
|||
|
|
<view v-if="score_comment" style="margin-top: 30rpx;">
|
|||
|
|
您的晒单积分奖励已到账,积分<text :style="{color: Color}">+{{score_comment}}</text>
|
|||
|
|
</view>
|
|||
|
|
<view class="order-btn">
|
|||
|
|
<button @click="handleShare()" class="green">分享到群聊</button>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</template>
|
|||
|
|
|
|||
|
|
<script>
|
|||
|
|
import { post } from '@/api/request.js'
|
|||
|
|
import { ref, reactive, toRefs } from 'vue'
|
|||
|
|
import { uniShare } from '@/components/common.js'
|
|||
|
|
|
|||
|
|
export default {
|
|||
|
|
setup() {
|
|||
|
|
const data = reactive({
|
|||
|
|
imageUrl: '',
|
|||
|
|
shareUrl: '',
|
|||
|
|
ids: '',
|
|||
|
|
id: '',
|
|||
|
|
isReward: '',
|
|||
|
|
couponData: {},
|
|||
|
|
score_comment: '',
|
|||
|
|
Color: uni.getStorageSync('theme_color')
|
|||
|
|
})
|
|||
|
|
|
|||
|
|
function toHome() {
|
|||
|
|
uni.switchTab({
|
|||
|
|
url: '/pages/index/index'
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function toOrder() {
|
|||
|
|
uni.redirectTo({
|
|||
|
|
url: '/pages/order/info/index?id=' + id.value
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 获取是否设置优惠券
|
|||
|
|
const getShopBaskSetting = () => {
|
|||
|
|
post('/api/v1/Shop/getShopBaskSetting').then((res) => {
|
|||
|
|
data.isReward = res.data.is_reward
|
|||
|
|
data.couponData = res.data.shop_coupon
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 获取分享图
|
|||
|
|
const getShareTemplate = () => {
|
|||
|
|
post('/api/v1/sales/share', { shop_goods_id: data.ids }).then((res) => {
|
|||
|
|
res.data.forEach((item) => {
|
|||
|
|
if (item.type === 4) {
|
|||
|
|
data.imageUrl = item.image
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 分享路径
|
|||
|
|
const getShareUrl = () => {
|
|||
|
|
post('/api/v1/user/share', {
|
|||
|
|
page: 'pages/share/index',
|
|||
|
|
query: `id=${data.id}`
|
|||
|
|
}).then((res) => {
|
|||
|
|
data.shareUrl = res.data.path
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function handleShare() {
|
|||
|
|
let title = '本团已收到多个好评,快来看看吧!'
|
|||
|
|
let imageUrl = data.imageUrl
|
|||
|
|
let path = data.shareUrl
|
|||
|
|
uniShare(title, imageUrl, path)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
return {
|
|||
|
|
uniShare,
|
|||
|
|
...toRefs(data),
|
|||
|
|
toHome,
|
|||
|
|
toOrder,
|
|||
|
|
getShareTemplate,
|
|||
|
|
getShareUrl,
|
|||
|
|
getShopBaskSetting,
|
|||
|
|
handleShare
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
async onLoad(options) {
|
|||
|
|
this.id = options.id
|
|||
|
|
this.score_comment = options.score_comment || ''
|
|||
|
|
this.ids = parseInt(options.ids)
|
|||
|
|
await this.$onLaunched
|
|||
|
|
this.getShareTemplate()
|
|||
|
|
this.getShareUrl()
|
|||
|
|
this.getShopBaskSetting()
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
</script>
|
|||
|
|
|
|||
|
|
<style lang="scss" scoped>
|
|||
|
|
.green {
|
|||
|
|
background: v-bind('Color');
|
|||
|
|
color: #ffff;
|
|||
|
|
font-size: 32rpx;
|
|||
|
|
width: 80%;
|
|||
|
|
height: 80rpx;
|
|||
|
|
text-align: center;
|
|||
|
|
line-height: 80rpx;
|
|||
|
|
}
|
|||
|
|
.order {
|
|||
|
|
text-align: center;
|
|||
|
|
padding: 50rpx 0;
|
|||
|
|
background-color: #fff;
|
|||
|
|
&-icon {
|
|||
|
|
display: flex;
|
|||
|
|
justify-content: center;
|
|||
|
|
font-size: 34rpx;
|
|||
|
|
text {
|
|||
|
|
margin-left: 10rpx;
|
|||
|
|
font-weight: bold;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
&-btn {
|
|||
|
|
display: flex;
|
|||
|
|
justify-content: center;
|
|||
|
|
margin-top: 60rpx;
|
|||
|
|
.btn1,
|
|||
|
|
.btn2 {
|
|||
|
|
font-size: 30rpx;
|
|||
|
|
width: 38%;
|
|||
|
|
height: 77rpx;
|
|||
|
|
line-height: 77rpx;
|
|||
|
|
border-radius: 49rpx;
|
|||
|
|
}
|
|||
|
|
.btn1 {
|
|||
|
|
border: 1px solid #98989f;
|
|||
|
|
margin-right: 40rpx;
|
|||
|
|
}
|
|||
|
|
.btn2 {
|
|||
|
|
color: #fff;
|
|||
|
|
background: $Color3;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
</style>
|