修改消息 首页 和 核销 添加封装二次弹窗组件
@ -171,11 +171,11 @@
|
|||||||
this.videoIndex = null
|
this.videoIndex = null
|
||||||
this.videoId = null
|
this.videoId = null
|
||||||
this.autoplaySwiper = true
|
this.autoplaySwiper = true
|
||||||
if (!type) {
|
// if (!type) {
|
||||||
setTimeout(v => {
|
// setTimeout(v => {
|
||||||
this.swiperCurrent++
|
// this.swiperCurrent++
|
||||||
}, 500)
|
// }, 500)
|
||||||
}
|
// }
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
</view> -->
|
</view> -->
|
||||||
<view class="centerBox flex justify-start align-items flex-column">
|
<view class="centerBox flex justify-start align-items flex-column">
|
||||||
<view class="flex w-100 center flex-column" style="align-items: center;" v-for="(item,index) in list"
|
<view class="flex w-100 center flex-column" style="align-items: center;" v-for="(item,index) in list"
|
||||||
:key="index" @click.stop="openUrl('/pages/afterSales/info?id='+item.id)">
|
:key="index" @click.stop="openUrl('/packageA/afterSales/info?id='+item.id)">
|
||||||
<view class="flex" style="width: 690rpx;">
|
<view class="flex" style="width: 690rpx;">
|
||||||
<image :src="item.detail.headimage" mode="" style="width: 280rpx; height: 200rpx;"></image>
|
<image :src="item.detail.headimage" mode="" style="width: 280rpx; height: 200rpx;"></image>
|
||||||
<view class="flex flex-column rightBox">
|
<view class="flex flex-column rightBox">
|
||||||
@ -120,7 +120,7 @@
|
|||||||
// 售后
|
// 售后
|
||||||
service(id) {
|
service(id) {
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: "/pages/afterSales/index?id=" + id
|
url: "/packageA/afterSales/index?id=" + id
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 获取列表
|
// 获取列表
|
@ -67,7 +67,7 @@
|
|||||||
<view class="footer flex align-items flex-column" style="justify-content: space-between;">
|
<view class="footer flex align-items flex-column" style="justify-content: space-between;">
|
||||||
|
|
||||||
<view class="footer-right flex justify-center align-items">
|
<view class="footer-right flex justify-center align-items">
|
||||||
<span @click="hexiaohd()"> 核销订单 </span>
|
<span @click="hexiaohd()"> 确认核销 </span>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
@ -313,7 +313,7 @@
|
|||||||
// 售后
|
// 售后
|
||||||
service(id) {
|
service(id) {
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: "/pages/afterSales/index?id=" + id
|
url: "/packageA/afterSales/index?id=" + id
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 核销码
|
// 核销码
|
||||||
|
@ -342,7 +342,7 @@
|
|||||||
// 售后
|
// 售后
|
||||||
service(id) {
|
service(id) {
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: "/pages/afterSales/index?id=" + id
|
url: "/packageA/afterSales/index?id=" + id
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
headerSelected(status) {
|
headerSelected(status) {
|
||||||
|
@ -454,7 +454,7 @@ export default {
|
|||||||
// 售后
|
// 售后
|
||||||
service(id) {
|
service(id) {
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: "/pages/afterSales/index?id=" + id,
|
url: "/packageA/afterSales/index?id=" + id,
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
// 核销码
|
// 核销码
|
||||||
|
@ -712,7 +712,7 @@
|
|||||||
//申请售后
|
//申请售后
|
||||||
service(id) {
|
service(id) {
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: `/pages/afterSales/index?id=${id}`
|
url: `/packageA/afterSales/index?id=${id}`
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 取消选择
|
// 取消选择
|
||||||
|
92
pages.json
@ -52,7 +52,19 @@
|
|||||||
"navigationStyle": "custom" //单个页面设置
|
"navigationStyle": "custom" //单个页面设置
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"path": "pages/center/detailSys",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "", // 发布活动详情
|
||||||
|
"navigationStyle": "custom"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "pages/center/signDetail",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "报名信息"
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"path": "pages/center/MechanismDetail",
|
"path": "pages/center/MechanismDetail",
|
||||||
"style": {
|
"style": {
|
||||||
@ -77,65 +89,55 @@
|
|||||||
"navigationBarTitleText": "支付参加"
|
"navigationBarTitleText": "支付参加"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"path": "pages/index/group",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": "一键进群"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "pages/index/previousList",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": "往期课程"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "pages/afterSales/index",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": "售后订单"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
"path": "pages/afterSales/list",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": "售后订单"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "pages/afterSales/info",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": "售后订单"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "pages/Negotiate/agreement",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": "用户协议"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "pages/Negotiate/privacy",
|
|
||||||
"style": {
|
|
||||||
"navigationBarTitleText": "隐私政策"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"path": "pages/activity/stationStemys",
|
"path": "pages/activity/stationStemys",
|
||||||
"style": {
|
"style": {
|
||||||
"navigationBarTitleText": "系统消息"
|
"navigationBarTitleText": "系统消息",
|
||||||
|
"navigationStyle": "custom"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"subPackages": [{
|
"subPackages": [{
|
||||||
"root": "packageA",
|
"root": "packageA",
|
||||||
"pages": [
|
"pages": [
|
||||||
|
{
|
||||||
|
"path": "afterSales/index",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "售后订单"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"path": "afterSales/list",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "售后订单"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "afterSales/info",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "售后订单"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "Negotiate/agreement",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "用户协议"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "Negotiate/privacy",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "隐私政策"
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"path": "my/person-detail",
|
"path": "my/person-detail",
|
||||||
"style": {
|
"style": {
|
||||||
"navigationBarTitleText": "个人中心"
|
"navigationBarTitleText": "个人中心"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "my/makeList",
|
"path": "my/makeList",
|
||||||
"style": {
|
"style": {
|
||||||
|
@ -69,7 +69,7 @@
|
|||||||
unread_activity_number: '',
|
unread_activity_number: '',
|
||||||
keywords: '',
|
keywords: '',
|
||||||
page: 1,
|
page: 1,
|
||||||
limit: 10,
|
limit: 20,
|
||||||
loadStatus: 'loading',
|
loadStatus: 'loading',
|
||||||
status: '',
|
status: '',
|
||||||
mini_type: '',
|
mini_type: '',
|
||||||
@ -339,10 +339,10 @@
|
|||||||
}
|
}
|
||||||
.center {
|
.center {
|
||||||
width: 690rpx;
|
width: 690rpx;
|
||||||
margin-bottom: 200rpx;
|
// margin-bottom: 200rpx;
|
||||||
position: fixed;
|
position: fixed;
|
||||||
margin-top: 130rpx;
|
margin-top: 130rpx;
|
||||||
height: 100%;
|
height: 1120rpx;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
.list {
|
.list {
|
||||||
width: 690rpx;
|
width: 690rpx;
|
||||||
|
@ -1,17 +1,43 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="box flex justify-center flex-column">
|
<view class="box flex justify-center flex-column">
|
||||||
<view class="center flex flex-column flex-start" v-for="detail,index in list" :key="index">
|
<view class="nav">
|
||||||
<span class="title">{{detail.title}}</span>
|
<u-navbar :is-back="true" :autoBack='true' leftIconColor="#323232" bgColor="#FFFFFF">
|
||||||
<span class="span" style="margin-top: 20rpx;">
|
<view
|
||||||
<!-- <u-parse :content="detail.desc" :selectable="true"></u-parse> -->
|
class="u-nav-slot"
|
||||||
<rich-text :nodes="detail.desc" selectable user-select></rich-text>
|
slot="left"
|
||||||
</span>
|
>
|
||||||
<span class="span" style="margin-top: 20rpx; color: #999999 ;">{{detail.createtime_text}}</span>
|
<u-icon
|
||||||
<span class="jiao">
|
name="arrow-left"
|
||||||
<u-badge :isDot="true" type="error"></u-badge>
|
size="22"
|
||||||
</span>
|
></u-icon>
|
||||||
|
</view>
|
||||||
|
<view
|
||||||
|
class="nav_txt"
|
||||||
|
slot="center"
|
||||||
|
@click="one"
|
||||||
|
>
|
||||||
|
<span style="padding-right: 20rpx;">系统消息</span>
|
||||||
|
<u-icon
|
||||||
|
size="19"
|
||||||
|
name="/static/clearicon.png"
|
||||||
|
></u-icon>
|
||||||
|
</view>
|
||||||
|
</u-navbar>
|
||||||
</view>
|
</view>
|
||||||
<u-loadmore :status="loadStatus" />
|
<view style="margin-top: 180rpx;">
|
||||||
|
<view class="center flex flex-column flex-start" v-for="detail,index in list" :key="index" @click="only(detail.id,detail.type)">
|
||||||
|
<span class="title">{{detail.title}}</span>
|
||||||
|
<span class="span" style="margin-top: 20rpx;">
|
||||||
|
<!-- <u-parse :content="detail.desc" :selectable="true"></u-parse> -->
|
||||||
|
<rich-text :nodes="detail.desc" selectable user-select></rich-text>
|
||||||
|
</span>
|
||||||
|
<span class="span" style="margin-top: 20rpx; color: #999999 ;">{{detail.createtime_text}}</span>
|
||||||
|
<span class="jiao" v-if="detail.type == 1">
|
||||||
|
<u-badge :isDot="true" type="error"></u-badge>
|
||||||
|
</span>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<u-loadmore :status="loadStatus" nomoreText="已经到底啦~"/>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -22,8 +48,7 @@
|
|||||||
page: 1,
|
page: 1,
|
||||||
limit: 10,
|
limit: 10,
|
||||||
list:[],
|
list:[],
|
||||||
loadStatus:'',
|
loadStatus: 'loading',
|
||||||
loadStatus: 'loading'
|
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
onLoad(option) {
|
onLoad(option) {
|
||||||
@ -36,13 +61,39 @@
|
|||||||
this.getDetail();
|
this.getDetail();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// 单独已读
|
||||||
|
only(id,type){
|
||||||
|
if (type == 1) {
|
||||||
|
uni.$u.http.get('/api/school/message/detail', {
|
||||||
|
params: {
|
||||||
|
id: id,
|
||||||
|
}
|
||||||
|
}).then(res => {
|
||||||
|
if (res.code == 1) {
|
||||||
|
uni.showToast({
|
||||||
|
title: '确认已读',
|
||||||
|
icon: 'none',
|
||||||
|
duration: 2000
|
||||||
|
});
|
||||||
|
this.getDetail();
|
||||||
|
} else {
|
||||||
|
uni.showToast({
|
||||||
|
title: res.msg,
|
||||||
|
icon: 'none',
|
||||||
|
duration: 2000
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}).catch(error => {});
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
getDetail() {
|
getDetail() {
|
||||||
uni.$u.http.get('/api/school/message/message_list', {
|
uni.$u.http.get('/api/school/message/message_list', {
|
||||||
params: {
|
params: {
|
||||||
page: this.page,
|
page: this.page,
|
||||||
limit: this.limit,
|
limit: this.limit,
|
||||||
status: 'system,activity',
|
status: 'system,activity',
|
||||||
type: "1",
|
type: "1,2",
|
||||||
}
|
}
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
if (res.code == 1) {
|
if (res.code == 1) {
|
||||||
@ -57,6 +108,33 @@
|
|||||||
}
|
}
|
||||||
}).catch(error => {});
|
}).catch(error => {});
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// 一键已读
|
||||||
|
one() {
|
||||||
|
uni.$u.http.get('/api/school/message/batch', {
|
||||||
|
params: {
|
||||||
|
id: '*',
|
||||||
|
status: 'system,activity',
|
||||||
|
mini_type: '',
|
||||||
|
event: ''
|
||||||
|
}
|
||||||
|
}).then(res => {
|
||||||
|
if (res.code == 1) {
|
||||||
|
uni.showToast({
|
||||||
|
title: '全部已读',
|
||||||
|
icon: 'none',
|
||||||
|
duration: 2000
|
||||||
|
});
|
||||||
|
this.getDetail();
|
||||||
|
} else {
|
||||||
|
uni.showToast({
|
||||||
|
title: res.msg,
|
||||||
|
icon: 'none',
|
||||||
|
duration: 2000
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}).catch(error => {});
|
||||||
|
},
|
||||||
// 重置列表
|
// 重置列表
|
||||||
resetLists() {
|
resetLists() {
|
||||||
this.page = 1;
|
this.page = 1;
|
||||||
@ -71,8 +149,23 @@
|
|||||||
.box {
|
.box {
|
||||||
background: #F1F2F8;
|
background: #F1F2F8;
|
||||||
width: 750rpx;
|
width: 750rpx;
|
||||||
height: 100vh;
|
height: 100%;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
|
|
||||||
|
.nav_txt{
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.u-nav-slot{
|
||||||
|
width: 64rpx;
|
||||||
|
height: 64rpx;
|
||||||
|
border-radius: 32rpx 32rpx 32rpx 32rpx;
|
||||||
|
border: 1rpx solid #EBEBEB;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.w-100 {
|
.w-100 {
|
||||||
|
@ -114,9 +114,9 @@
|
|||||||
<span>已收藏</span>
|
<span>已收藏</span>
|
||||||
</view> -->
|
</view> -->
|
||||||
</view>
|
</view>
|
||||||
<view class="footer-right flex justify-center align-items">
|
<view class="footer-right flex justify-center align-items" @click="sign()">
|
||||||
<span v-if="type == 0 && detail.feel == 0" @click="sign()"> 支付并参加 </span>
|
<span v-if="type == 0 && detail.feel == 0" > 支付并参加 </span>
|
||||||
<span v-if="type == 0 && detail.feel == 1" @click="sign()"> 免费参加 </span>
|
<span v-if="type == 0 && detail.feel == 1" > 免费参加 </span>
|
||||||
<!-- <span v-if="type == 1 && detail.feel == 0" @click="buy()"> 立即支付 </span>
|
<!-- <span v-if="type == 1 && detail.feel == 0" @click="buy()"> 立即支付 </span>
|
||||||
<span v-if="type == 1 && detail.feel == 1" @click="buy()"> 确认报名 </span>
|
<span v-if="type == 1 && detail.feel == 1" @click="buy()"> 确认报名 </span>
|
||||||
<span v-if="type == 2" @click="open()"> 我要预约 </span>
|
<span v-if="type == 2" @click="open()"> 我要预约 </span>
|
||||||
@ -231,12 +231,12 @@
|
|||||||
<l-painter
|
<l-painter
|
||||||
isCanvasToTempFilePath
|
isCanvasToTempFilePath
|
||||||
@success="sunccessimg"
|
@success="sunccessimg"
|
||||||
custom-style="width:661rpx;height: 1072rpx;position:absolute;left:45rpx;right:44rpx;top:200rpx;background-image: url(https://naweigetetest2.hschool.com.cn/dyqc/fenxiang.png);background-size: 100%;"
|
css="width:661rpx;height: 1072rpx;background-image:url(https://naweigetetest2.hschool.com.cn/dyqc/fenxiang.png);"
|
||||||
css=""
|
custom-style="position:absolute;left:45rpx;right:44rpx;top:200rpx;"
|
||||||
>
|
>
|
||||||
<l-painter-image
|
<l-painter-image
|
||||||
:src="detail.user.avatar"
|
:src="detail.user.avatar"
|
||||||
css="margin-left: 30rpx; margin-top: 120rpx;border: 2rpx solid #FFFFFF; width: 60rpx; height: 60rpx; border-radius: 50%;"
|
css="margin-left: 15rpx; margin-top: 120rpx;border: 2rpx solid #FFFFFF; width: 60rpx; height: 60rpx; border-radius: 50%;"
|
||||||
/>
|
/>
|
||||||
<l-painter-view
|
<l-painter-view
|
||||||
css="margin-top: 130rpx; padding-left: 20rpx; display: inline-block"
|
css="margin-top: 130rpx; padding-left: 20rpx; display: inline-block"
|
||||||
@ -251,25 +251,25 @@
|
|||||||
>
|
>
|
||||||
<l-painter-image
|
<l-painter-image
|
||||||
:src="detail.images[0]"
|
:src="detail.images[0]"
|
||||||
css="width: 620rpx; height: 620rpx; border-radius: 24rpx;margin: 0 auto;display: block;object-fit: cover;"
|
css="width: 620rpx; height: 620rpx; border-radius: 24rpx;object-fit: cover;"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<l-painter-view css="margin-top: 30rpx;display: flex;justify-content: space-between;width:100%;">
|
<l-painter-view css="margin-top: 30rpx;display: flex;justify-content: space-between;width:100%;">
|
||||||
<l-painter-view css="display: flex;flex-direction: column;width: 420rpx;">
|
<l-painter-view css="display: flex;flex-direction: column;width: 420rpx;">
|
||||||
<l-painter-text
|
<l-painter-text
|
||||||
css="line-clamp: 1; color: #202020;font-size: 36rpx; width: 320rpx; box-sizing: border-box;line-height: 42rpx;"
|
css="line-clamp: 1;font-weight: bold;color:#202020;font-size: 32rpx;width:400rpx;box-sizing:border-box;line-height: 42rpx;"
|
||||||
:text="detail.title"
|
:text="detail.title"
|
||||||
></l-painter-text>
|
></l-painter-text>
|
||||||
<l-painter-text
|
<l-painter-text
|
||||||
css="line-clamp: 1; color:#FF4810;font-size: 28rpx;width: 220rpx;margin-top: 20rpx;line-height: 38rpx;"
|
css="line-clamp: 1; color:#FF4810;font-size: 28rpx;width:220rpx;margin-top: 20rpx;line-height: 38rpx;"
|
||||||
:text="'¥'+detail.price"
|
:text="'¥'+detail.price"
|
||||||
></l-painter-text>
|
></l-painter-text>
|
||||||
<l-painter-text
|
<l-painter-text
|
||||||
css="line-clamp: 1; color: #9C9C9C;font-size: 26rpx;margin-top: 20rpx;line-height: 36rpx;width: 340rpx;"
|
css="line-clamp: 2; color:#9C9C9C;font-size: 26rpx;margin-top: 20rpx;line-height: 36rpx;width: 360rpx;"
|
||||||
:text="'地址:'+detail.address"
|
:text="'地址:'+detail.address"
|
||||||
></l-painter-text>
|
></l-painter-text>
|
||||||
</l-painter-view>
|
</l-painter-view>
|
||||||
<l-painter-view css="background: #ffffff;border-radius: 18rpx;width: 200rpx; height: 200rpx;">
|
<l-painter-view css="background: #ffffff;border-radius: 18rpx;width: 200rpx; height: 200rpx;margin-right: 50rpx;">
|
||||||
<l-painter-qrcode
|
<l-painter-qrcode
|
||||||
css="width: 160rpx; height: 160rpx;margin:20rpx;"
|
css="width: 160rpx; height: 160rpx;margin:20rpx;"
|
||||||
:text="qrUrl"
|
:text="qrUrl"
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="detail_all">
|
<view class="detail_all">
|
||||||
<view class="nav">
|
<view class="nav">
|
||||||
<u-navbar :is-back="true" leftIconColor="#FFFFFF" :autoBack='true' title="" :bgColor="background"
|
<u-navbar :is-back="true" leftIconColor="#FFFFFF" :autoBack='true' :bgColor="background"
|
||||||
:titleStyle='titleStyle'> </u-navbar>
|
:titleStyle='titleStyle'> </u-navbar>
|
||||||
</view>
|
</view>
|
||||||
<view class="box flex justify-start flex-column align-items" :class="overlay ? 'no-scroll' : ''">
|
<view class="box flex justify-start flex-column align-items" :class="overlay ? 'no-scroll' : ''">
|
||||||
@ -15,14 +15,14 @@
|
|||||||
<image src="/static/detail/rmb.png" class="topimgs_rmb"></image>
|
<image src="/static/detail/rmb.png" class="topimgs_rmb"></image>
|
||||||
|
|
||||||
<view class="top_texts flex align-items" v-if="detail.feel == 0">
|
<view class="top_texts flex align-items" v-if="detail.feel == 0">
|
||||||
<span style="font-weight: 900;font-size: 60rpx;">{{ detail.price.split('.')[0] }}</span>
|
<span style="font-weight: 900;font-size: 56rpx;">{{ detail.price.split('.')[0] }}</span>
|
||||||
<view class="flex flex-column xiao">
|
<view class="flex flex-column xiao">
|
||||||
<span>.{{ detail.price.split('.')[1] }}</span>
|
<span>.{{ detail.price.split('.')[1] }}</span>
|
||||||
<span>元/人</span>
|
<span>元/人</span>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="top_texts flex align-items" v-else>
|
<view class="top_texts flex align-items" v-else style="top:-140rpx;right: 88rpx;">
|
||||||
<span style="font-weight: 900;font-size: 60rpx;">免费</span>
|
<span style="font-weight: 900;font-size: 44rpx;">免费</span>
|
||||||
</view>
|
</view>
|
||||||
<view class="first-box flex flex-start flex-column justify-start">
|
<view class="first-box flex flex-start flex-column justify-start">
|
||||||
<view class="flex align-items">
|
<view class="flex align-items">
|
||||||
@ -32,10 +32,11 @@
|
|||||||
|
|
||||||
|
|
||||||
<span class="first-image flex align-items" style="margin-top: 25rpx;width: 100%;">
|
<span class="first-image flex align-items" style="margin-top: 25rpx;width: 100%;">
|
||||||
<image :src="detail.user.avatar" mode="" class="icon-size" style="width: 36rpx;height: 36rpx;"></image>
|
<image :src="detail.user.avatar" mode="" class="icon-size" style="width: 36rpx;height: 36rpx;margin-right: 12rpx;border-radius: 80rpx;"></image>
|
||||||
<span style="color: #9C9C9C ;width: 32%;">{{ detail.user.nickname }}</span>
|
<span style="color: #9C9C9C ;width: 32%;">{{ detail.user.nickname }}</span>
|
||||||
<span class="flex justify-center align-items xieyi">
|
<span class="flex justify-center align-items xieyi">
|
||||||
<image src="/static/detail/baohu.png" mode="" style="width: 28rpx;height: 28rpx;margin-right: 0;" ></image>
|
<image src="/static/detail/baohu.png" mode=""
|
||||||
|
style="width: 28rpx;height: 28rpx;margin-right: 0;" ></image>
|
||||||
<span class="white-space" style="width: 90rpx;text-align: center;">{{ detail.refund_info.title }}</span>
|
<span class="white-space" style="width: 90rpx;text-align: center;">{{ detail.refund_info.title }}</span>
|
||||||
<image src="/static/detail/zidong.png" mode="" style="width: 20rpx;height: 20rpx;margin-right: 0;" ></image>
|
<image src="/static/detail/zidong.png" mode="" style="width: 20rpx;height: 20rpx;margin-right: 0;" ></image>
|
||||||
</span>
|
</span>
|
||||||
@ -55,13 +56,13 @@
|
|||||||
<span class="line"></span>
|
<span class="line"></span>
|
||||||
<view class="second-box flex align-items space-between">
|
<view class="second-box flex align-items space-between">
|
||||||
<view class="flex align-items">
|
<view class="flex align-items">
|
||||||
<u-avatar-group :urls="detail.join_info.users"
|
<u-avatar-group :urls="join_info.users"
|
||||||
keyName="avatar" size="24" gap="0.3" :maxCount="3"></u-avatar-group>
|
keyName="avatar" size="30" gap="0.3" :maxCount="3"></u-avatar-group>
|
||||||
<span class="flex justify-center align-items">
|
<image src="/static/index/dian.png"
|
||||||
<image src="/static/center/right_.png" mode="" style="width: 20rpx;height: 20rpx;"></image>
|
:class="join_info.users && join_info.users.length > 0 ? '' : 'smalld'"
|
||||||
</span>
|
style="width: 58rpx;height: 58rpx;margin-left:-20rpx;z-index: 1;"></image>
|
||||||
</view>
|
</view>
|
||||||
<span class="number">{{detail.join_info.people_number}}/{{detail.join_info.stock >= 10000 ? '9999+' : detail.join_info.stock}}
|
<span class="number">{{join_info.people_number}}/{{join_info.stock >= 10000 ? '9999+' : join_info.stock}}
|
||||||
人数</span>
|
人数</span>
|
||||||
<view class="value_slide">
|
<view class="value_slide">
|
||||||
<u-slider
|
<u-slider
|
||||||
@ -82,22 +83,28 @@
|
|||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 报名成功 -->
|
<!-- 报名成功 -->
|
||||||
<view class="third flex flex-column" style="justify-content: flex-start;">
|
<view class="third flex flex-column" style="justify-content: flex-start;margin-bottom: 0rpx;">
|
||||||
<view class="third-center flex " style="justify-content: space-between;">
|
<view class="third-top flex align-items" style="justify-content: space-between;">
|
||||||
<view class="scroll-container ">
|
<span>报名信息
|
||||||
<view v-for="(item, index) in detail.paid_user_data" :key="index" class="item">
|
<image class="icons" src="/static/detail/xiangqing.png"></image>
|
||||||
<view class="flex align-items" style="justify-content: space-between;">
|
</span>
|
||||||
<image :src="item.head_image" mode="" style="width: 40rpx; height: 40rpx;">
|
<view style="margin-right: 35rpx;" @click="toSgindetail()">
|
||||||
</image>
|
<span style="font-family: PingFang SC, PingFang SC;font-weight: 400;font-size: 26rpx;color: #3D3D3D;">查看全部</span>
|
||||||
<span
|
<image src="/static/detail/zidong.png" style="margin-left: 20rpx;width: 20rpx;height: 20rpx;"> </image>
|
||||||
style="width: 72rpx; overflow: hidden; white-space: nowrap;">{{item.nickname}}</span>
|
|
||||||
<span class="line-colum"></span>
|
|
||||||
<span>报名成功</span>
|
|
||||||
</view>
|
|
||||||
<span>{{ item.createTime }}</span>
|
|
||||||
</view>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
<view class="flex third-center-gro" style="justify-content: space-between; position: relative;">
|
||||||
|
<scroll-view scroll-y="true" class="scroll-container">
|
||||||
|
<view v-for="(item, index) in mysignList" :key="index" >
|
||||||
|
<view class="flex align-items" style="justify-content: space-between;height: 50rpx;line-height: 50rpx;">
|
||||||
|
<view class="t1_name">{{item.user.nickname}}</view>
|
||||||
|
<view class="t1_order">订单编号:{{item.order_no}}</view>
|
||||||
|
<view class="t1_num">数量:{{item.num}}</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
||||||
|
</view>
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="third flex flex-column" style="justify-content: flex-start;">
|
<view class="third flex flex-column" style="justify-content: flex-start;">
|
||||||
@ -110,41 +117,19 @@
|
|||||||
<view class="v_html">
|
<view class="v_html">
|
||||||
<rich-text :nodes="detail.content"></rich-text>
|
<rich-text :nodes="detail.content"></rich-text>
|
||||||
</view>
|
</view>
|
||||||
<image class="imgs" v-for="(item,index) in detail.images" :key="index" :src="item"></image>
|
<image mode="widthFix" class="imgs" v-for="(item,index) in detail.images" :key="index" :src="item"></image>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
|
||||||
<view class="footer flex align-items" style="justify-content: space-between;">
|
<view class="footer flex align-items" style="justify-content: space-between;">
|
||||||
<view class="footer-left">
|
<view class="footer-left">
|
||||||
<!-- <view @click="callPhone(detail.user.mobile)">
|
|
||||||
<image src="../../static/center/phone.png" mode=""></image>
|
|
||||||
<span>电话</span>
|
|
||||||
</view> -->
|
|
||||||
<view @click="overlayShow()">
|
|
||||||
<!-- <view @click="Share()"> -->
|
|
||||||
<image src="@/static/detail/fenxiang.png" mode=""></image>
|
|
||||||
<!-- <span>分享</span> -->
|
|
||||||
</view>
|
|
||||||
<!-- <view v-if="is_collect == 0" @click="Collect(1)">
|
|
||||||
<image src="../../static/center/Collect.png" mode=""></image>
|
|
||||||
<span>收藏</span>
|
|
||||||
</view>
|
|
||||||
<view v-if="is_collect != 0" @click="Collect(0)">
|
|
||||||
<image src="../../static/center/Collected.png" mode=""></image>
|
|
||||||
<span>已收藏</span>
|
|
||||||
</view> -->
|
|
||||||
</view>
|
</view>
|
||||||
<view class="footer-right flex justify-center align-items">
|
<view class="bottom_fot">
|
||||||
<span v-if="type == 0 && detail.feel == 0" @click="sign()"> 支付并参加 </span>
|
<view class="footer-right flex justify-center align-items">
|
||||||
<span v-if="type == 0 && detail.feel == 1" @click="sign()"> 免费参加 </span>
|
<span @click="cancelsOpen"> 取消活动 </span>
|
||||||
<span v-if="type == 1 && detail.feel == 0" @click="buy()"> 立即支付 </span>
|
</view>
|
||||||
<span v-if="type == 1 && detail.feel == 1" @click="buy()"> 确认报名 </span>
|
|
||||||
<span v-if="type == 2" @click="open()"> 我要预约 </span>
|
|
||||||
<span v-if="type == 3" @click="confimTime()"> 确认时间 </span>
|
|
||||||
<!-- <image src="../../static/center/signUp.png" mode="" v-if="type == 0" @click="sign()"></image>
|
|
||||||
<image src="../../static/center/appointment.png" mode="" v-else-if="type == 1" @click="open()"></image>
|
|
||||||
<image src="../../static/center/Confirm.png" mode="" v-else="type == 2" @click="confimTime()"></image> -->
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
@ -152,114 +137,31 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- 购买弹窗 -->
|
<!-- 二次确认弹窗 -->
|
||||||
<u-popup :show="buyShow" mode="center" :round="10" :zIndex="99999" :custom-style="popupStyle" @close="buyClose"
|
<u-popup :show="cancelsShow" mode="center" :round="10" :zIndex="99999" :custom-style="popupStyle" @close="cancelsClose"
|
||||||
@open="buyOpen" :safeAreaInsetBottom="false" :closeable="true">
|
@open="cancelsOpen" :safeAreaInsetBottom="false" :closeable="false">
|
||||||
<view class="popupBox flex justify-start align-items flex-column">
|
<view class="popupBox flex justify-start align-items flex-column">
|
||||||
<view class="pop-header flex align-items flex-column flex-start">
|
<view class="pop-header flex align-items flex-column flex-start">
|
||||||
<span class="name white-space">{{detail.title}}</span>
|
<span class="name white-space">是否确认取消活动</span>
|
||||||
<span class="price">
|
<span class="price">
|
||||||
<span v-if="detail.feel == 0">¥{{detail.price}}</span>
|
取消活动后,如果再次举办活动需重新设置并提交信息审核
|
||||||
<span v-if="detail.feel == 1">公益</span>
|
|
||||||
</span>
|
</span>
|
||||||
<!-- <image src="../../static/center/buy.png" mode="" style="width: 168rpx; height: 48rpx;">
|
<!-- <image src="../../static/center/buy.png" mode="" style="width: 168rpx; height: 48rpx;">
|
||||||
</image> -->
|
</image> -->
|
||||||
</view>
|
</view>
|
||||||
<view class="popup flex-column">
|
|
||||||
<span class="first-image flex align-items" style="margin: 16rpx 0;">
|
<view class="popup-footer flex ">
|
||||||
<image src="../../static/center/Alarm.png" mode="" class="icon-size"></image>
|
<span @click="cancelsClose" class="span1">关闭</span>
|
||||||
<span>{{formattedTime.formattedTime}} (共计{{formattedTimeList.length}}节)</span>
|
<span @click="cancels">确认取消</span>
|
||||||
</span>
|
|
||||||
<span class="first-image flex align-items">
|
|
||||||
<image src="../../static/center/address.png" mode="" class="icon-size"></image>
|
|
||||||
<span>{{detail.address_detail}}</span>
|
|
||||||
</span>
|
|
||||||
<!-- <image :src="detail.headimage" mode="" style="width: 200rpx; height: 140rpx;"></image>
|
|
||||||
<view class="popur-right flex flex-column">
|
|
||||||
<span class="name white-space">{{detail.title}}</span>
|
|
||||||
<span class="address">地址:{{detail.address_detail}}</span>
|
|
||||||
<span class="date">开始时间:{{detail.start_time_text}}</span>
|
|
||||||
<span class="time">结束时间:{{detail.end_time_text}}</span>
|
|
||||||
<span class="line-row"></span>
|
|
||||||
<span class="price">
|
|
||||||
课程价格:
|
|
||||||
<span v-if="detail.feel == 0">¥{{detail.price}}</span>
|
|
||||||
<span v-if="detail.feel == 1">免费</span>
|
|
||||||
</span>
|
|
||||||
</view> -->
|
|
||||||
</view>
|
|
||||||
<view class="popup-footer flex " @click="buy()">
|
|
||||||
<span v-if="type == 1 && detail.feel == 0">立 即 支 付</span>
|
|
||||||
<span v-if="type == 1 && detail.feel == 1">确 认 报 名</span>
|
|
||||||
<!-- <image src="../../static/center/price.png" mode="" style="width: 642rpx;height: 80rpx;"></image> -->
|
<!-- <image src="../../static/center/price.png" mode="" style="width: 642rpx;height: 80rpx;"></image> -->
|
||||||
<u-loading-icon :vertical="true" v-if="uloadingShow"></u-loading-icon>
|
<!-- <u-loading-icon :vertical="true" v-if="uloadingShow"></u-loading-icon> -->
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</u-popup>
|
</u-popup>
|
||||||
|
|
||||||
<!-- 分享海报 -->
|
|
||||||
<u-overlay :show="overlay" class="pos">
|
|
||||||
<view class="btnList">
|
|
||||||
<span class="save" @click.stop="save()">保 存 海 报</span>
|
|
||||||
<!-- <span class="sharePoster" @click.stop="sharePoster()">
|
|
||||||
分 享
|
|
||||||
</span> -->
|
|
||||||
<button open-type="share" class="no-border-button" plain="true">
|
|
||||||
<span>分 享 发 布</span>
|
|
||||||
</button>
|
|
||||||
</view>
|
|
||||||
<!-- <view class="Poster" style="z-index: 9999;height: 1230rpx;">
|
|
||||||
<span class="posterClose" @click.stop="overlay = false">
|
|
||||||
<image src="../../static/center/close.png" mode="" style="width: 64rpx;height: 64rpx;"></image>
|
|
||||||
</span>
|
|
||||||
|
|
||||||
<image :src="path" mode="widthFix" style="width: 690rpx;height: 1230rpx;"></image>
|
|
||||||
<l-painter isCanvasToTempFilePath ref="painter" @success="path = $event" hidden
|
|
||||||
css="width: 750rpx;height:1230rpx; padding-bottom: 40rpx; background-image: url('https://testy.hschool.com.cn//uploads/20241219/6f46474364fe7ae36295cb8d96854b52.png')">
|
|
||||||
<l-painter-image :src="userInfo.avatar"
|
|
||||||
css="margin-left: 40rpx; margin-top: 100rpx; width: 90rpx; height: 90rpx; border-radius: 50%;" />
|
|
||||||
<l-painter-view css="margin-top: 100rpx; padding-left: 20rpx; display: inline-block">
|
|
||||||
<l-painter-text :text="userInfo.realname || userInfo.nickname"
|
|
||||||
css="display: block; padding-bottom: 10rpx; color: #181818; font-size: 34rpx; fontWeight: bold" />
|
|
||||||
<l-painter-text text="邀请您一起上课" css="color: #7A7A7A; font-size: 24rpx" />
|
|
||||||
</l-painter-view>
|
|
||||||
<l-painter-view
|
|
||||||
css="margin-left: 35rpx; margin-top: 24rpx; padding: 32rpx; box-sizing: border-box; background: #fff; border-radius: 16rpx; width: 690rpx; box-shadow: 0 20rpx 58rpx rgba(0,0,0,.15)">
|
|
||||||
<l-painter-image :src="detail.headimage"
|
|
||||||
css="object-fit: cover; object-position: 50% 50%; width: 626rpx; height: 448rpx; border-radius: 12rpx;" />
|
|
||||||
|
|
||||||
<l-painter-view css=" width: 626rpx;display: flex;alignItems: center;">
|
</view>
|
||||||
<l-painter-view>
|
|
||||||
<l-painter-view
|
|
||||||
css="margin-top: 32rpx; color: #FF0000; font-weight: bold; font-size: 28rpx; line-height: 1em;">
|
|
||||||
<l-painter-text text="¥" css="vertical-align: bottom;font-size: 42rpx"
|
|
||||||
v-if="detail.feel == 0" />
|
|
||||||
<l-painter-text :text="detail.price" css="vertical-align: bottom; font-size: 58rpx"
|
|
||||||
v-if="detail.feel == 0" />
|
|
||||||
<l-painter-text text="免费" css="vertical-align: bottom;font-size: 42rpx"
|
|
||||||
v-if="detail.feel == 1" />
|
|
||||||
</l-painter-view>
|
|
||||||
<l-painter-view css="margin-top: 24rpx;">
|
|
||||||
<l-painter-text :text="formattedTitle" css="color: #343434;font-size: 36rpx;" />
|
|
||||||
</l-painter-view>
|
|
||||||
<l-painter-text
|
|
||||||
css="line-clamp: 2; color: #333333; line-height: 1.8em; font-size: 26rpx;display: block; width: 380rpx; padding-right:32rpx; box-sizing: border-box"
|
|
||||||
:text="'讲师:' + detail.teacher.name"></l-painter-text>
|
|
||||||
<l-painter-text
|
|
||||||
css="line-clamp: 2; color: #333333; line-height: 1.8em; font-size: 26rpx;display: block;margin-bottom:30rpx; width: 380rpx; padding-right:32rpx; box-sizing: border-box"
|
|
||||||
:text="detail.address_detail"></l-painter-text>
|
|
||||||
</l-painter-view>
|
|
||||||
<l-painter-view css="margin-top: 24rpx;">
|
|
||||||
<l-painter-qrcode css="width: 200rpx; height: 200rpx;" :text="qrUrl"></l-painter-qrcode>
|
|
||||||
</l-painter-view>
|
|
||||||
</l-painter-view>
|
|
||||||
|
|
||||||
</l-painter-view>
|
|
||||||
</l-painter>
|
|
||||||
</view> -->
|
|
||||||
</u-overlay>
|
|
||||||
|
|
||||||
</view>
|
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -270,12 +172,7 @@
|
|||||||
} from '../../utils/dateFormat'
|
} from '../../utils/dateFormat'
|
||||||
export default {
|
export default {
|
||||||
computed: {
|
computed: {
|
||||||
// formattedTitle() {
|
|
||||||
// if (this.detail.title.length > 9) {
|
|
||||||
// return this.detail.title.slice(0, 9) + '..';
|
|
||||||
// }
|
|
||||||
// return this.detail.title;
|
|
||||||
// },
|
|
||||||
formattedTimeList() {
|
formattedTimeList() {
|
||||||
return this.timeList.map(item => {
|
return this.timeList.map(item => {
|
||||||
const startTime = dayjs.unix(item.start_time).format('YYYY-MM-DD HH:mm:ss');
|
const startTime = dayjs.unix(item.start_time).format('YYYY-MM-DD HH:mm:ss');
|
||||||
@ -303,6 +200,8 @@
|
|||||||
img: 'width: 100%'
|
img: 'width: 100%'
|
||||||
|
|
||||||
},
|
},
|
||||||
|
mysignList:[],
|
||||||
|
join_info:{},
|
||||||
value_slide:0,
|
value_slide:0,
|
||||||
scrollTop: 0,
|
scrollTop: 0,
|
||||||
overlay: false,
|
overlay: false,
|
||||||
@ -310,7 +209,7 @@
|
|||||||
path: 'https://testy.hschool.com.cn//uploads/20241219/3406baf51fcc28c63c31ebcee5c9c75e.jpg',
|
path: 'https://testy.hschool.com.cn//uploads/20241219/3406baf51fcc28c63c31ebcee5c9c75e.jpg',
|
||||||
uloadingShow: false,
|
uloadingShow: false,
|
||||||
show: false,
|
show: false,
|
||||||
buyShow: false,
|
cancelsShow: false,
|
||||||
type: 0, // 0 支付 1 立即购买 2 预约 3确认时间
|
type: 0, // 0 支付 1 立即购买 2 预约 3确认时间
|
||||||
id: 1,
|
id: 1,
|
||||||
count: 5,
|
count: 5,
|
||||||
@ -322,12 +221,13 @@
|
|||||||
qrUrl: '',
|
qrUrl: '',
|
||||||
is_collect: 0,
|
is_collect: 0,
|
||||||
popupStyle: {
|
popupStyle: {
|
||||||
width: '690rpx',
|
width: '640rpx',
|
||||||
height: '716rpx',
|
height: '414rpx',
|
||||||
margin: '0 auto', // 水平居中
|
margin: '0 auto', // 水平居中
|
||||||
display: 'flex',
|
display: 'flex',
|
||||||
justifyContent: 'flex-start',
|
justifyContent: 'flex-start',
|
||||||
alignItems: 'center'
|
alignItems: 'center',
|
||||||
|
borderRadius: '50rpx'
|
||||||
},
|
},
|
||||||
timeList: [],
|
timeList: [],
|
||||||
selectedTime: null,
|
selectedTime: null,
|
||||||
@ -367,9 +267,8 @@
|
|||||||
}
|
}
|
||||||
console.log(options.id)
|
console.log(options.id)
|
||||||
this.getDetail()
|
this.getDetail()
|
||||||
// this.getPeople()
|
this.getPeople()
|
||||||
// this.getTime()
|
|
||||||
this.getShare()
|
|
||||||
},
|
},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
@ -393,28 +292,6 @@
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
getShare() {
|
|
||||||
uni.$u.http.post('/api/wechat_util/link', {
|
|
||||||
path: 'pages/center/detail',
|
|
||||||
query: `id=${this.id}`,
|
|
||||||
}).then(res => {
|
|
||||||
if (res.code == 1) {
|
|
||||||
this.qrUrl = res.data.url_link
|
|
||||||
} else {
|
|
||||||
uni.showToast({
|
|
||||||
title: res.msg,
|
|
||||||
icon: 'none',
|
|
||||||
duration: 2000
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
uni.showToast({
|
|
||||||
title: '请求失败,请稍后再试',
|
|
||||||
icon: 'none',
|
|
||||||
duration: 2000
|
|
||||||
});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 时间转换函数
|
// 时间转换函数
|
||||||
timeago(timestamp) {
|
timeago(timestamp) {
|
||||||
const now = new Date().getTime(); // 当前时间(毫秒)
|
const now = new Date().getTime(); // 当前时间(毫秒)
|
||||||
@ -433,12 +310,6 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
// sharePoster() {
|
|
||||||
// //获取带参数二维码并传递
|
|
||||||
// this.is_show_model = false
|
|
||||||
// this.$refs.poster.showCanvas()
|
|
||||||
// },
|
|
||||||
|
|
||||||
// 获取课时规格
|
// 获取课时规格
|
||||||
getTime() {
|
getTime() {
|
||||||
uni.$u.http.get('/api/school/classes/spec', {
|
uni.$u.http.get('/api/school/classes/spec', {
|
||||||
@ -464,20 +335,23 @@
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
toSgindetail(){
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages/center/signDetail?id=' + this.id
|
||||||
|
});
|
||||||
|
},
|
||||||
// 获取报名详情
|
// 获取报名详情
|
||||||
getPeople() {
|
getPeople() {
|
||||||
const that = this
|
const that = this
|
||||||
uni.$u.http.get('/api/school/classes/people', {
|
uni.$u.http.get('/api/school.newworker.activity.order/order_list', {
|
||||||
params: {
|
params: {
|
||||||
id: that.id,
|
activity_id: that.id,
|
||||||
}
|
page: 1,
|
||||||
|
limit: 1000,
|
||||||
|
},
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
if (res.code == 1) {
|
if (res.code == 1) {
|
||||||
that.processPeopleData(res.data).then(processedData => {
|
this.mysignList = res.data.list;
|
||||||
that.people = processedData;
|
|
||||||
console.log('that.people', that.people)
|
|
||||||
});
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
that.showErrorToast(res.msg);
|
that.showErrorToast(res.msg);
|
||||||
}
|
}
|
||||||
@ -486,21 +360,6 @@
|
|||||||
|
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
// 数据转换
|
|
||||||
processPeopleData(data) {
|
|
||||||
return new Promise((resolve) => {
|
|
||||||
const paidUserData = data.paid_user_data.map(item => {
|
|
||||||
item.createTime = this.timeago(item.time);
|
|
||||||
return item;
|
|
||||||
}).reverse();
|
|
||||||
const unpaidUserData = data.unpaid_user_data
|
|
||||||
const processedData = {
|
|
||||||
unpaid_user_data: unpaidUserData,
|
|
||||||
paid_user_data: paidUserData
|
|
||||||
}
|
|
||||||
resolve(processedData);
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 提示
|
// 提示
|
||||||
showErrorToast(msg) {
|
showErrorToast(msg) {
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
@ -509,6 +368,29 @@
|
|||||||
duration: 2000
|
duration: 2000
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
//取消活动
|
||||||
|
cancels(){
|
||||||
|
uni.$u.http.post('/api/school.new_activity/cancel', {
|
||||||
|
id: this.id,
|
||||||
|
}).then(res => {
|
||||||
|
if (res.code == 1) {
|
||||||
|
uni.showToast({
|
||||||
|
title: '取消成功',
|
||||||
|
icon: 'success',
|
||||||
|
duration: 2000
|
||||||
|
})
|
||||||
|
uni.redirectTo({
|
||||||
|
url: "/packageA/my/orderList?status=-1"
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
uni.showToast({
|
||||||
|
title: res.msg,
|
||||||
|
icon: 'none',
|
||||||
|
duration: 2000
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}).catch(error => {});
|
||||||
|
},
|
||||||
// 获取详情
|
// 获取详情
|
||||||
getDetail() {
|
getDetail() {
|
||||||
uni.$u.http.get('/api/school.new_activity/detail', {
|
uni.$u.http.get('/api/school.new_activity/detail', {
|
||||||
@ -517,7 +399,8 @@
|
|||||||
}
|
}
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
if (res.code == 1) {
|
if (res.code == 1) {
|
||||||
this.detail = res.data.detail
|
this.detail = res.data.detail;
|
||||||
|
this.join_info = res.data.detail.join_info;
|
||||||
this.value_slide = res.data.detail.join_info.percent;
|
this.value_slide = res.data.detail.join_info.percent;
|
||||||
if (res.data.detail.is_collect != 0) {
|
if (res.data.detail.is_collect != 0) {
|
||||||
this.is_collect = 1
|
this.is_collect = 1
|
||||||
@ -538,11 +421,10 @@
|
|||||||
}
|
}
|
||||||
}).catch(error => {});
|
}).catch(error => {});
|
||||||
},
|
},
|
||||||
// 报名 0 支付 1 立即购买 2 预约 3确认时间
|
|
||||||
|
|
||||||
sign() {
|
sign() {
|
||||||
|
|
||||||
// this.buyShow = true
|
// this.cancelsShow = true
|
||||||
// this.type = 3;
|
// this.type = 3;
|
||||||
|
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
@ -554,10 +436,9 @@
|
|||||||
this.uloadingShow = true
|
this.uloadingShow = true
|
||||||
this.getMoney()
|
this.getMoney()
|
||||||
},
|
},
|
||||||
// 购买弹窗 type = 0 支付 1 立即购买 2 预约 3确认时间
|
// 取消弹窗
|
||||||
buyOpen() {
|
cancelsOpen() {
|
||||||
this.buyShow = true
|
this.cancelsShow = true
|
||||||
this.type = 1
|
|
||||||
},
|
},
|
||||||
// 预约弹窗 type = 2 0 支付 1 立即购买 2 预约 3确认时间
|
// 预约弹窗 type = 2 0 支付 1 立即购买 2 预约 3确认时间
|
||||||
open() {
|
open() {
|
||||||
@ -647,10 +528,8 @@
|
|||||||
this.selectedTime = null
|
this.selectedTime = null
|
||||||
this.show = false
|
this.show = false
|
||||||
},
|
},
|
||||||
buyClose() {
|
cancelsClose() {
|
||||||
this.type = 0
|
this.cancelsShow = false
|
||||||
this.selectedTime = null
|
|
||||||
this.buyShow = false
|
|
||||||
},
|
},
|
||||||
// 返回首页
|
// 返回首页
|
||||||
toIndex() {
|
toIndex() {
|
||||||
@ -709,29 +588,6 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
base64ToFilePath(base64data, callback) {
|
|
||||||
const time = new Date().getTime();
|
|
||||||
const imgPath = `${wx.env.USER_DATA_PATH}/addFriends${time}share_qrcode.png`;
|
|
||||||
const imageData = base64data.replace(/^data:image\/\w+;base64,/, "");
|
|
||||||
const fileSystemManager = uni.getFileSystemManager();
|
|
||||||
|
|
||||||
fileSystemManager.writeFile({
|
|
||||||
filePath: imgPath,
|
|
||||||
data: imageData,
|
|
||||||
encoding: 'base64',
|
|
||||||
success: () => {
|
|
||||||
callback(imgPath);
|
|
||||||
},
|
|
||||||
fail: (err) => {
|
|
||||||
console.error('Write file failed:', err);
|
|
||||||
uni.showToast({
|
|
||||||
title: '写入文件失败',
|
|
||||||
icon: 'none'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
// 收藏和取消
|
// 收藏和取消
|
||||||
Collect(number) {
|
Collect(number) {
|
||||||
uni.$u.http.post('/api/school/classes/collect', {
|
uni.$u.http.post('/api/school/classes/collect', {
|
||||||
@ -796,7 +652,6 @@
|
|||||||
if (res.code == 1) {
|
if (res.code == 1) {
|
||||||
this.PayPirce = res.data.order_data.totalprice
|
this.PayPirce = res.data.order_data.totalprice
|
||||||
this.order_no = res.data.order_no
|
this.order_no = res.data.order_no
|
||||||
this.create(this.order_no, this.PayPirce)
|
|
||||||
} else {
|
} else {
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: res.msg,
|
title: res.msg,
|
||||||
@ -808,88 +663,6 @@
|
|||||||
this.uloadingShow = false
|
this.uloadingShow = false
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 创建订单
|
|
||||||
create(order_no, PayPirce) {
|
|
||||||
uni.$u.http.post('/api/school.newactivity.order/create', {
|
|
||||||
order_no: order_no,
|
|
||||||
}).then(res => {
|
|
||||||
if (res.code == 1) {
|
|
||||||
if (PayPirce != 0) {
|
|
||||||
this.pament()
|
|
||||||
} else {
|
|
||||||
this.uloadingShow = false
|
|
||||||
uni.showToast({
|
|
||||||
title: '创建成功',
|
|
||||||
icon: 'success',
|
|
||||||
duration: 2000,
|
|
||||||
complete: function() {
|
|
||||||
setTimeout(function() {
|
|
||||||
uni.redirectTo({
|
|
||||||
url: "/packageA/my/orderList?status=" + 3
|
|
||||||
})
|
|
||||||
}, 2000);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
uni.showToast({
|
|
||||||
title: res.msg,
|
|
||||||
icon: 'none',
|
|
||||||
duration: 2000
|
|
||||||
})
|
|
||||||
that.uloadingShow = false
|
|
||||||
|
|
||||||
// _this.$api.toast(res.msg);
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 支付
|
|
||||||
pament() {
|
|
||||||
let that = this
|
|
||||||
that.uloadingShow = false
|
|
||||||
uni.$u.http.post('/api/school.newactivity.pay/payment', {
|
|
||||||
type: 'wechat',
|
|
||||||
order_no: that.order_no,
|
|
||||||
platform: 'miniapp'
|
|
||||||
}).then(res => {
|
|
||||||
if (res.code == 1) {
|
|
||||||
wx.requestPayment({
|
|
||||||
timeStamp: res.data.paydata.timeStamp, //时间戳
|
|
||||||
nonceStr: res.data.paydata.nonceStr, //随机字符串
|
|
||||||
package: res.data.paydata.package, //prepay_id
|
|
||||||
signType: res.data.paydata.signType, //签名算法MD5
|
|
||||||
paySign: res.data.paydata.paySign, //签名
|
|
||||||
success(res) {
|
|
||||||
if (res.errMsg == "requestPayment:ok") {
|
|
||||||
that.order_no = ''
|
|
||||||
uni.redirectTo({
|
|
||||||
url: "/packageA/my/orderList?status=" + 3
|
|
||||||
})
|
|
||||||
console.log('支付成功', res)
|
|
||||||
} else {
|
|
||||||
that.uloadingShow = false
|
|
||||||
console.log('支付失败')
|
|
||||||
}
|
|
||||||
},
|
|
||||||
fail(res) {
|
|
||||||
that.uloadingShow = false
|
|
||||||
console.log('支付失败', res)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
uni.showToast({
|
|
||||||
title: res.msg,
|
|
||||||
icon: 'none',
|
|
||||||
duration: 2000
|
|
||||||
})
|
|
||||||
// _this.$api.toast(res.msg);
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
|
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -1061,7 +834,9 @@
|
|||||||
height: 64rpx;
|
height: 64rpx;
|
||||||
border-radius: 16rpx 16rpx 16rpx 16rpx;
|
border-radius: 16rpx 16rpx 16rpx 16rpx;
|
||||||
margin: 20rpx 0 16rpx 0;
|
margin: 20rpx 0 16rpx 0;
|
||||||
|
.smalld {
|
||||||
|
margin-left: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
.number {
|
.number {
|
||||||
height: 40rpx;
|
height: 40rpx;
|
||||||
@ -1081,23 +856,23 @@
|
|||||||
margin: 0 22rpx 0 4rpx;
|
margin: 0 22rpx 0 4rpx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.value_slide{
|
// .value_slide{
|
||||||
width: 50%;
|
// width: 50%;
|
||||||
::v-deep .uni-slider-handle-wrapper{
|
// ::v-deep .uni-slider-handle-wrapper{
|
||||||
height: 10rpx;
|
// height: 10rpx;
|
||||||
}
|
// }
|
||||||
::v-deep .uni-slider-handle{
|
// ::v-deep .uni-slider-handle{
|
||||||
background: url('@/static/detail/qiu.png') !important;
|
// background: url('@/static/detail/qiu.png') !important;
|
||||||
border-radius: 0;
|
// border-radius: 0;
|
||||||
background-size: 52rpx 52rpx !important;
|
// background-size: 52rpx 52rpx !important;
|
||||||
}
|
// }
|
||||||
::v-deep .uni-slider-value{
|
// ::v-deep .uni-slider-value{
|
||||||
color: #323232;
|
// color: #323232;
|
||||||
&::after{
|
// &::after{
|
||||||
content: '%';
|
// content: '%';
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1106,9 +881,10 @@
|
|||||||
background: #ffffff;
|
background: #ffffff;
|
||||||
margin-top:20rpx;
|
margin-top:20rpx;
|
||||||
border-radius: 44rpx;
|
border-radius: 44rpx;
|
||||||
|
margin-bottom: 150rpx;
|
||||||
.third-top{
|
.third-top{
|
||||||
font-family: PingFang SC, PingFang SC;
|
font-family: PingFang SC, PingFang SC;
|
||||||
font-weight: 400;
|
font-weight: bold;
|
||||||
font-size: 36rpx;
|
font-size: 36rpx;
|
||||||
color: #323232;
|
color: #323232;
|
||||||
line-height: 50rpx;
|
line-height: 50rpx;
|
||||||
@ -1139,6 +915,74 @@
|
|||||||
width: 690rpx;
|
width: 690rpx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.third-center-gro {
|
||||||
|
margin-top: 28rpx;
|
||||||
|
width: auto;
|
||||||
|
height: 160rpx;
|
||||||
|
overflow: hidden;
|
||||||
|
position: relative;
|
||||||
|
margin-left: 30rpx;
|
||||||
|
margin-right: 30rpx;
|
||||||
|
margin-bottom: 30rpx;
|
||||||
|
.scroll-container {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
// animation: scroll 12s linear infinite;
|
||||||
|
// @keyframes scroll {
|
||||||
|
// 0% {
|
||||||
|
// transform: translateY(0);
|
||||||
|
// }
|
||||||
|
|
||||||
|
// 100% {
|
||||||
|
// transform: translateY(calc(-100% + 8 * 100px));
|
||||||
|
// /* 8 * 100px 是假设每个项目的宽度为 100px */
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
.t1_name{
|
||||||
|
width: 240rpx;
|
||||||
|
height: 36rpx;
|
||||||
|
font-family: PingFang SC, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 26rpx;
|
||||||
|
color: #3D3D3D;
|
||||||
|
line-height: 36rpx;
|
||||||
|
text-align: left;
|
||||||
|
font-style: normal;
|
||||||
|
text-transform: none;
|
||||||
|
}
|
||||||
|
.t1_order{
|
||||||
|
width: 310rpx;
|
||||||
|
height: 36rpx;
|
||||||
|
font-family: PingFang SC, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 26rpx;
|
||||||
|
color: #3D3D3D;
|
||||||
|
line-height: 36rpx;
|
||||||
|
text-align: left;
|
||||||
|
font-style: normal;
|
||||||
|
text-transform: none;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
}
|
||||||
|
.t1_num{
|
||||||
|
width: 103rpx;
|
||||||
|
height: 36rpx;
|
||||||
|
|
||||||
|
font-family: PingFang SC, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 26rpx;
|
||||||
|
color: #3D3D3D;
|
||||||
|
line-height: 36rpx;
|
||||||
|
text-align: left;
|
||||||
|
font-style: normal;
|
||||||
|
text-transform: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -1200,16 +1044,20 @@
|
|||||||
height: 118rpx;
|
height: 118rpx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.bottom_fot{
|
||||||
|
width: 100%;
|
||||||
|
height: 147rpx;
|
||||||
|
background: #FFFFFF;
|
||||||
|
position: fixed;
|
||||||
|
bottom: 0;
|
||||||
|
}
|
||||||
.footer-right {
|
.footer-right {
|
||||||
position: absolute;
|
margin: 0 auto;
|
||||||
right: 30rpx;
|
width: 690rpx;
|
||||||
width: 487rpx;
|
height: 90rpx;
|
||||||
height: 102rpx;
|
background: #323232;
|
||||||
background: url('@/static/detail/shangche.png');
|
|
||||||
background-size: 487rpx 102rpx;
|
|
||||||
border-radius: 200rpx;
|
border-radius: 200rpx;
|
||||||
|
margin-top: 30rpx;
|
||||||
span {
|
span {
|
||||||
font-family: YouSheBiaoTiHei, YouSheBiaoTiHei;
|
font-family: YouSheBiaoTiHei, YouSheBiaoTiHei;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
@ -1221,16 +1069,19 @@
|
|||||||
|
|
||||||
|
|
||||||
.popupBox {
|
.popupBox {
|
||||||
width: 690rpx;
|
width: 640rpx;
|
||||||
height: 716rpx;
|
height: 414rpx;
|
||||||
|
background-image: url("https://naweigetetest2.hschool.com.cn/dyqc/confirm2.png");
|
||||||
|
background-size: 100%;
|
||||||
|
background-repeat:no-repeat;
|
||||||
|
border-radius: 44rpx;
|
||||||
.pop-header {
|
.pop-header {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
background-image: url("/static/center/bg.png");
|
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
background-position: left bottom;
|
background-position: left bottom;
|
||||||
height: 265rpx;
|
height: 414rpx;
|
||||||
|
margin-top: 80rpx;
|
||||||
span {
|
span {
|
||||||
font-family: PingFang SC, PingFang SC;
|
font-family: PingFang SC, PingFang SC;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
@ -1239,31 +1090,30 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.name {
|
.name {
|
||||||
width: 594rpx;
|
width: 288rpx;
|
||||||
height: 66rpx;
|
height: 36rpx;
|
||||||
font-family: Source Han Sans CN, Source Han Sans CN;
|
font-family: PingFang SC Bold, PingFang SC Bold;
|
||||||
font-weight: bold;
|
font-weight: 400;
|
||||||
font-size: 44rpx;
|
font-size: 36rpx;
|
||||||
color: #222222;
|
color: #202020;
|
||||||
margin-top: 80rpx;
|
line-height: 36rpx;
|
||||||
|
text-align: center;
|
||||||
|
font-style: normal;
|
||||||
|
text-transform: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.price {
|
.price {
|
||||||
width: 594rpx;
|
width: 520rpx;
|
||||||
height: 66rpx;
|
height: 68rpx;
|
||||||
font-family: Source Han Sans CN, Source Han Sans CN;
|
margin-top: 30rpx;
|
||||||
font-weight: bold;
|
font-family: PingFang SC, PingFang SC;
|
||||||
font-size: 44rpx;
|
font-weight: 400;
|
||||||
color: #FF4810;
|
font-size: 24rpx;
|
||||||
margin-top: 16rpx;
|
color: #202020;
|
||||||
|
line-height: 34rpx;
|
||||||
span {
|
text-align: center;
|
||||||
font-family: PingFang SC, PingFang SC;
|
font-style: normal;
|
||||||
font-weight: 800;
|
text-transform: none;
|
||||||
font-size: 36rpx;
|
|
||||||
color: #FF2323;
|
|
||||||
line-height: 32rpx;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1276,22 +1126,28 @@
|
|||||||
|
|
||||||
.popup-footer {
|
.popup-footer {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 48rpx;
|
left: 75rpx;
|
||||||
bottom: 48rpx;
|
bottom: 60rpx;
|
||||||
|
|
||||||
span {
|
span {
|
||||||
width: 594rpx;
|
width: 230rpx;
|
||||||
height: 100rpx;
|
height: 90rpx;
|
||||||
background: #222222;
|
background: #323232;
|
||||||
border-radius: 200rpx 200rpx 200rpx 200rpx;
|
border-radius: 200rpx 200rpx 200rpx 200rpx;
|
||||||
font-family: Source Han Sans CN, Source Han Sans CN;
|
font-family: PingFang SC Regular, PingFang SC Regular;
|
||||||
font-weight: bold;
|
font-weight: 400;
|
||||||
font-size: 32rpx;
|
font-size: 32rpx;
|
||||||
color: #BEEE03;
|
color: #BBFC5B;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
.span1{
|
||||||
|
background: rgba(193, 193, 193, 0.22);
|
||||||
|
color: #202020;
|
||||||
|
margin-right: 30rpx;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1303,39 +1159,7 @@
|
|||||||
border-radius: 0rpx 0rpx 0rpx 0rpx;
|
border-radius: 0rpx 0rpx 0rpx 0rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.times {
|
|
||||||
width: 93%;
|
|
||||||
|
|
||||||
.selectTime {
|
|
||||||
width: 288rpx;
|
|
||||||
height: 50rpx;
|
|
||||||
background: #FFFFFF;
|
|
||||||
border-radius: 12rpx 12rpx 12rpx 12rpx;
|
|
||||||
border: 1rpx solid #D9D9D9;
|
|
||||||
color: #4B4B4B;
|
|
||||||
font-family: 'PingFang SC', 'PingFang SC';
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 24rpx;
|
|
||||||
padding-left: 15rpx;
|
|
||||||
cursor: pointer;
|
|
||||||
margin: 24rpx 32rpx 0 0;
|
|
||||||
white-space: nowrap;
|
|
||||||
/* 防止文本换行 */
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
/* 超出部分显示省略号 */
|
|
||||||
overflow: hidden;
|
|
||||||
/* 隐藏超出部分 */
|
|
||||||
text-align: left;
|
|
||||||
/* 文字靠左对齐 */
|
|
||||||
line-height: 50rpx;
|
|
||||||
/* 垂直居中对齐 */
|
|
||||||
box-sizing: border-box;
|
|
||||||
/* 确保 padding 和 border 不影响宽度和高度 */
|
|
||||||
display: inline-block;
|
|
||||||
/* 确保容器内文字正确对齐 */
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.selectTime.selected {
|
.selectTime.selected {
|
||||||
width: 288rpx;
|
width: 288rpx;
|
||||||
@ -1575,4 +1399,57 @@
|
|||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<style lang="scss">
|
||||||
|
.value_slide {
|
||||||
|
width: 50%;
|
||||||
|
|
||||||
|
::v-deep .uni-slider-handle-wrapper {
|
||||||
|
height: 10rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
::v-deep .uni-slider-handle {
|
||||||
|
background: url('@/static/detail/qiu.png') !important;
|
||||||
|
border-radius: 0;
|
||||||
|
background-size: 36rpx 36rpx !important;
|
||||||
|
width: 36rpx;
|
||||||
|
height: 36rpx;
|
||||||
|
top: 14rpx;
|
||||||
|
margin-left: -18rpx !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
::v-deep .uni-slider-value {
|
||||||
|
color: #323232;
|
||||||
|
|
||||||
|
&::after {
|
||||||
|
content: '%';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// #ifdef MP-WEIXIN
|
||||||
|
.wx-slider-handle-wrapper {
|
||||||
|
height: 8rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wx-slider-handle {
|
||||||
|
background: url('@/static/detail/qiu.png') !important;
|
||||||
|
border-radius: 0;
|
||||||
|
background-size: 30rpx 30rpx !important;
|
||||||
|
width: 28rpx;
|
||||||
|
height: 28rpx;
|
||||||
|
top: 14rpx;
|
||||||
|
margin-left: -14rpx !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wx-slider-value {
|
||||||
|
display: flex;
|
||||||
|
width: 30rpx;
|
||||||
|
color: #323232;
|
||||||
|
|
||||||
|
&::after { content: '%';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// #endif
|
||||||
|
}
|
||||||
</style>
|
</style>
|
@ -6,7 +6,7 @@
|
|||||||
<image src="/static/fabu/fabuhd.png" style="width: 237rpx; height: 57rpx"></image>
|
<image src="/static/fabu/fabuhd.png" style="width: 237rpx; height: 57rpx"></image>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="box flex flex-column align-items">
|
<scroll-view scroll-y="true" :show-scrollbar="true" class="box flex flex-column align-items">
|
||||||
<view class="first flex flex-column align-items justify-start">
|
<view class="first flex flex-column align-items justify-start">
|
||||||
<view class="row flex align-items" style="margin-top: 25rpx;">
|
<view class="row flex align-items" style="margin-top: 25rpx;">
|
||||||
<span>
|
<span>
|
||||||
@ -134,11 +134,12 @@
|
|||||||
</view>
|
</view>
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
|
||||||
<span style="margin: 30rpx 0 320rpx 0; width: 750rpx;" v-if="status == -1 || status == 2">
|
<span style="margin:30rpx 0 0 0; width: 750rpx;" v-if="status == -1 || status == 2">
|
||||||
<cc-protocolBox :agree="agree" :protocolArr="protocolArr" @click="agree = false"
|
<cc-protocolBox :agree="agree" :protocolArr="protocolArr" @click="agree = false"
|
||||||
@protocolClick="protocolClick"></cc-protocolBox>
|
@protocolClick="protocolClick"></cc-protocolBox>
|
||||||
</span>
|
</span>
|
||||||
|
</scroll-view>
|
||||||
<view class="bottom flex align-items justify-center" v-if="status == -1 || status == 2">
|
<view class="bottom flex align-items justify-center" v-if="status == -1 || status == 2">
|
||||||
<span class="flex align-items justify-center" @click="apply()" v-if="agree == true">确认发布</span>
|
<span class="flex align-items justify-center" @click="apply()" v-if="agree == true">确认发布</span>
|
||||||
<span class="flex align-items justify-center" v-if="agree == false"
|
<span class="flex align-items justify-center" v-if="agree == false"
|
||||||
@ -1028,7 +1029,8 @@ export default {
|
|||||||
.box {
|
.box {
|
||||||
width: 690rpx;
|
width: 690rpx;
|
||||||
margin-top: 40rpx;
|
margin-top: 40rpx;
|
||||||
|
height: 1100rpx;
|
||||||
|
margin-bottom:320rpx ;
|
||||||
.title {
|
.title {
|
||||||
font-family: PingFang SC, PingFang SC;
|
font-family: PingFang SC, PingFang SC;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
@ -1263,29 +1265,29 @@ export default {
|
|||||||
|
|
||||||
|
|
||||||
// 滚动条样式
|
// 滚动条样式
|
||||||
::v-deep ::-webkit-scrollbar {
|
// ::v-deep ::-webkit-scrollbar {
|
||||||
/*滚动条整体样式*/
|
// /*滚动条整体样式*/
|
||||||
width: 4px !important;
|
// width: 4px !important;
|
||||||
height: 1px !important;
|
// height: 1px !important;
|
||||||
overflow: auto !important;
|
// overflow: auto !important;
|
||||||
background: #ccc !important;
|
// background: #ccc !important;
|
||||||
-webkit-appearance: auto !important;
|
// -webkit-appearance: auto !important;
|
||||||
display: block;
|
// display: block;
|
||||||
}
|
// }
|
||||||
|
|
||||||
::v-deep ::-webkit-scrollbar-thumb {
|
// ::v-deep ::-webkit-scrollbar-thumb {
|
||||||
/*滚动条里面小方块*/
|
// /*滚动条里面小方块*/
|
||||||
border-radius: 10px !important;
|
// border-radius: 10px !important;
|
||||||
box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2) !important;
|
// box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2) !important;
|
||||||
background: #7b7979 !important;
|
// background: #7b7979 !important;
|
||||||
}
|
// }
|
||||||
|
|
||||||
::v-deep ::-webkit-scrollbar-track {
|
// ::v-deep ::-webkit-scrollbar-track {
|
||||||
/*滚动条里面轨道*/
|
// /*滚动条里面轨道*/
|
||||||
// box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2) !important;
|
// // box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2) !important;
|
||||||
// border-radius: 10px !important;
|
// // border-radius: 10px !important;
|
||||||
background: #FFFFFF !important;
|
// background: #FFFFFF !important;
|
||||||
}
|
// }
|
||||||
|
|
||||||
.textarea_mph {
|
.textarea_mph {
|
||||||
::v-deep .u-textarea {
|
::v-deep .u-textarea {
|
||||||
|
176
pages/center/signDetail.vue
Normal file
@ -0,0 +1,176 @@
|
|||||||
|
<template>
|
||||||
|
<view class="box flex flex-column align-items">
|
||||||
|
<view v-for="(item, index) in mysignList" :key="index" style="margin: 0 30rpx;">
|
||||||
|
<view class="flex align-items" style="justify-content: space-between;height: 70rpx;line-height: 70rpx;">
|
||||||
|
<view class="t1_name">
|
||||||
|
{{item.user.realname ? item.user.realname : item.user.nickname.slice(0,5)}}
|
||||||
|
<image v-if="item.status == 2" class="imgs" src="/static/detail/hxslice.png"> </image>
|
||||||
|
<image v-if="item.status == 9" class="imgs" src="/static/detail/hxall.png"> </image>
|
||||||
|
</view>
|
||||||
|
<view class="t1_order">订单编号:{{item.order_no}}</view>
|
||||||
|
<view class="t1_num">数量:{{item.num}}</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
mysignList:[],
|
||||||
|
};
|
||||||
|
},
|
||||||
|
onLoad(option) {
|
||||||
|
this.id = option.id;
|
||||||
|
},
|
||||||
|
onShow() {
|
||||||
|
this.getPeople();
|
||||||
|
},
|
||||||
|
methods:{
|
||||||
|
// 获取报名详情
|
||||||
|
getPeople() {
|
||||||
|
const that = this
|
||||||
|
uni.$u.http.get('/api/school.newworker.activity.order/order_list', {
|
||||||
|
params: {
|
||||||
|
activity_id: that.id,
|
||||||
|
page: 1,
|
||||||
|
limit: 1000,
|
||||||
|
},
|
||||||
|
}).then(res => {
|
||||||
|
if (res.code == 1) {
|
||||||
|
this.mysignList = res.data.list;
|
||||||
|
} else {
|
||||||
|
|
||||||
|
uni.showToast({
|
||||||
|
title: res.msg,
|
||||||
|
icon: 'none',
|
||||||
|
duration: 2000
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}).catch(error => {
|
||||||
|
uni.showToast({
|
||||||
|
title: '请求失败,请稍后再试',
|
||||||
|
icon: 'none',
|
||||||
|
duration: 2000
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
},
|
||||||
|
// 跳转订单
|
||||||
|
toDetail(status){
|
||||||
|
uni.navigateTo({
|
||||||
|
url: "/packageA/my/exercise?status=" + status
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 返回首页
|
||||||
|
goHome() {
|
||||||
|
uni.switchTab({
|
||||||
|
url: "/pages/index/index"
|
||||||
|
})
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.w-100 {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.w-400{
|
||||||
|
width: 400rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flex {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
.justify-center {
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.space-between {
|
||||||
|
justify-content: space-between;
|
||||||
|
}
|
||||||
|
|
||||||
|
.align-items {
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flex-column {
|
||||||
|
flex-flow: column;
|
||||||
|
}
|
||||||
|
|
||||||
|
.justify-start {
|
||||||
|
justify-content: start;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mar-top-30 {
|
||||||
|
margin-top: 30rpx;
|
||||||
|
}
|
||||||
|
.hui{
|
||||||
|
font-family: PingFang SC, PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
font-size: 24rpx;
|
||||||
|
color: #7A7A7A;
|
||||||
|
}
|
||||||
|
.white-space {
|
||||||
|
overflow: hidden;
|
||||||
|
/* 确保超出容器的文本被隐藏 */
|
||||||
|
white-space: nowrap;
|
||||||
|
/* 确保文本在一行内显示 */
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
}
|
||||||
|
.box{
|
||||||
|
width: 750rpx;
|
||||||
|
height: 100vh;
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
.t1_name{
|
||||||
|
width: 140rpx;
|
||||||
|
height: 36rpx;
|
||||||
|
font-family: PingFang SC, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 26rpx;
|
||||||
|
color: #3D3D3D;
|
||||||
|
line-height: 36rpx;
|
||||||
|
text-align: left;
|
||||||
|
font-style: normal;
|
||||||
|
text-transform: none;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
.imgs{
|
||||||
|
margin-left: 10rpx;
|
||||||
|
width: 26rpx;
|
||||||
|
height: 26rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.t1_order{
|
||||||
|
width: 430rpx;
|
||||||
|
height: 36rpx;
|
||||||
|
font-family: PingFang SC, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 26rpx;
|
||||||
|
color: #3D3D3D;
|
||||||
|
line-height: 36rpx;
|
||||||
|
text-align: left;
|
||||||
|
font-style: normal;
|
||||||
|
text-transform: none;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
}
|
||||||
|
.t1_num{
|
||||||
|
width: 103rpx;
|
||||||
|
height: 36rpx;
|
||||||
|
|
||||||
|
font-family: PingFang SC, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 26rpx;
|
||||||
|
color: #3D3D3D;
|
||||||
|
line-height: 36rpx;
|
||||||
|
text-align: left;
|
||||||
|
font-style: normal;
|
||||||
|
text-transform: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
@ -1,77 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="box">
|
|
||||||
<u--image :showLoading="true"
|
|
||||||
:src="init.image" showMenuByLongpress
|
|
||||||
width="690rpx" height="600rpx"></u--image>
|
|
||||||
|
|
||||||
<view class=" service flex justify-center align-items" @click="callPhone(init.mobile)">
|
|
||||||
<image src="../../static/my/server.png" mode="" style="width: 64rpx;height: 64rpx;"></image>
|
|
||||||
<span class="flex justify-center align-items">联系客服:{{init.mobile}}</span>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
init:{}
|
|
||||||
};
|
|
||||||
},
|
|
||||||
onShow() {
|
|
||||||
this.getinit()
|
|
||||||
},
|
|
||||||
methods:{
|
|
||||||
callPhone(phone) {
|
|
||||||
uni.makePhoneCall({
|
|
||||||
phoneNumber: phone
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getinit() {
|
|
||||||
uni.$u.http.get('/api/index/init', {}).then(res => {
|
|
||||||
if (res.code == 1) {
|
|
||||||
this.init = res.data.customer_service
|
|
||||||
} else {
|
|
||||||
uni.showToast({
|
|
||||||
title: res.msg,
|
|
||||||
icon: 'none',
|
|
||||||
duration: 2000
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
uni.showToast({
|
|
||||||
title: '请求失败,请稍后再试',
|
|
||||||
icon: 'none',
|
|
||||||
duration: 2000
|
|
||||||
});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
.box{
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
flex-flow: column;
|
|
||||||
}
|
|
||||||
.service{
|
|
||||||
margin-top: 42rpx;
|
|
||||||
margin-bottom: 120rpx;
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 30rpx;
|
|
||||||
color: #008CFF;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
span{
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
</style>
|
|
@ -33,121 +33,121 @@
|
|||||||
<image src="/static/index/schoolNight.png" alt="" class="imgstop_ye" @click="toshool"></image>
|
<image src="/static/index/schoolNight.png" alt="" class="imgstop_ye" @click="toshool"></image>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
<!-- <scroll-view scroll-y="true" class="flex align-items" style="height: 1250rpx;box-sizing: border-box;"> -->
|
||||||
|
<view class="swiper-box">
|
||||||
|
<MySwiper :list="swiperList"></MySwiper>
|
||||||
|
</view>
|
||||||
|
|
||||||
<view class="swiper-box">
|
<!-- 标签 -->
|
||||||
<MySwiper :list="swiperList"></MySwiper>
|
<view class="tab_all">
|
||||||
</view>
|
<view class="tabs">
|
||||||
|
<view
|
||||||
<!-- 标签 -->
|
v-for="(tab, index) in list"
|
||||||
<view class="tab_all">
|
:key="index"
|
||||||
<view class="tabs">
|
:class="['tab-item', { active: current === index }]"
|
||||||
<view
|
@click="handleClick(index,tab.id)"
|
||||||
v-for="(tab, index) in list"
|
>
|
||||||
:key="index"
|
<image
|
||||||
:class="['tab-item', { active: current === index }]"
|
v-if="index != 0 && index != 1 && tab.image"
|
||||||
@click="handleClick(index,tab.id)"
|
:src="tab.image"
|
||||||
>
|
mode=""
|
||||||
<image
|
class="imgs_bq"
|
||||||
v-if="index != 0 && index != 1 && tab.image"
|
></image>
|
||||||
:src="tab.image"
|
<image
|
||||||
mode=""
|
v-if="index === 1"
|
||||||
class="imgs_bq"
|
src="/static/index/schoolye.png"
|
||||||
></image>
|
mode=""
|
||||||
<image
|
class="imgs_bq"
|
||||||
v-if="index === 1"
|
></image>
|
||||||
src="/static/index/schoolye.png"
|
<span>{{ tab.name }}</span>
|
||||||
mode=""
|
</view>
|
||||||
class="imgs_bq"
|
</view>
|
||||||
></image>
|
<view class="allbq" @click="openBq">
|
||||||
<span>{{ tab.name }}</span>
|
<image src="/static/index/qbbqfl.png" mode="" class="imgs_all"></image>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="allbq" @click="openBq">
|
<!-- 热门活动 -->
|
||||||
<image src="/static/index/qbbqfl.png" mode="" class="imgs_all"></image>
|
<view class="hot flex flex-column">
|
||||||
</view>
|
<view class="content flex align-items flex-column">
|
||||||
</view>
|
<view
|
||||||
<!-- 热门活动 -->
|
class="flex flex-column w-100 bbb"
|
||||||
<view class="hot flex flex-column">
|
v-for="(item, index) in hotList"
|
||||||
<view class="content flex align-items flex-column">
|
:key="index"
|
||||||
<view
|
@click="detail(item.id)"
|
||||||
class="flex flex-column w-100 bbb"
|
>
|
||||||
v-for="(item, index) in hotList"
|
|
||||||
:key="index"
|
|
||||||
@click="detail(item.id)"
|
|
||||||
>
|
|
||||||
|
|
||||||
|
|
||||||
<view
|
<view
|
||||||
class="flex"
|
class="flex"
|
||||||
style="margin-top: 30rpx"
|
style="margin-top: 30rpx"
|
||||||
>
|
|
||||||
<view
|
|
||||||
class="right flex flex-column"
|
|
||||||
style="align-items: self-start"
|
|
||||||
>
|
>
|
||||||
<span class="title white-space">{{ item.title }}</span>
|
<view
|
||||||
<view class="first-image flex align-items" style="margin-top: 20rpx;width: 100%;">
|
class="right flex flex-column"
|
||||||
<image v-if="cate_ids != 1" :src="item.user.avatar" style="width: 36rpx;height: 36rpx;border-radius: 80rpx;"></image>
|
style="align-items: self-start"
|
||||||
<image v-else :src="item.headimage" style="width: 36rpx;height: 36rpx;border-radius: 80rpx;"></image>
|
>
|
||||||
<span v-if="cate_ids != 1" style="color: #9C9C9C;margin-left: 10rpx;">{{ item.user.nickname }}</span>
|
<span class="title white-space">{{ item.title }}</span>
|
||||||
<span v-else class="white-space" style="color: #9C9C9C;margin-left: 10rpx;width: 220rpx;">{{ item.teacher.name }}</span>
|
<view class="first-image flex align-items" style="margin-top: 20rpx;width: 100%;">
|
||||||
<view class="white-space" style="width: 60%;">
|
<image v-if="cate_ids != 1" :src="item.user.avatar" style="width: 36rpx;height: 36rpx;border-radius: 80rpx;"></image>
|
||||||
<span style="color:#0CA013;margin-left: 20rpx;" v-for="items_t in item.classes_cate">#{{ items_t }}</span>
|
<image v-else :src="item.headimage" style="width: 36rpx;height: 36rpx;border-radius: 80rpx;"></image>
|
||||||
</view>
|
<span v-if="cate_ids != 1" style="color: #9C9C9C;margin-left: 10rpx;">{{ item.user.nickname }}</span>
|
||||||
</view>
|
<span v-else class="white-space" style="color: #9C9C9C;margin-left: 10rpx;width: 220rpx;">{{ item.teacher.name }}</span>
|
||||||
|
<view class="white-space" style="width: 60%;">
|
||||||
<view class="flex flex-column" style="margin-top: 20rpx;">
|
<span style="color:#0CA013;margin-left: 20rpx;" v-for="items_t in item.classes_cate">#{{ items_t }}</span>
|
||||||
<view class="time flex align-items white-space">
|
</view>
|
||||||
<span class="time_tex" v-if="item.status == 2">{{ '报名中' }}</span>
|
|
||||||
<!-- <span class="time_tex time_texs" v-if="item.status == 4">{{ '进行中' }}</span> -->
|
|
||||||
<span style="margin:0 20rpx;">{{ dateWeeks(item.start_time) }}</span><span style="width: 1rpx;height: 22rpx;background: #323232;"></span>
|
|
||||||
<span class="white-space" style="margin-left: 20rpx;width: 260rpx;">{{ item.address_detail }}</span>
|
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</view>
|
<view class="flex flex-column" style="margin-top: 20rpx;">
|
||||||
|
<view class="time flex align-items white-space">
|
||||||
|
<span class="time_tex" v-if="item.status == 2">{{ '报名中' }}</span>
|
||||||
|
<!-- <span class="time_tex time_texs" v-if="item.status == 4">{{ '进行中' }}</span> -->
|
||||||
|
<span style="margin:0 20rpx;">{{ dateWeeks(item.start_time) }}</span><span style="width: 1rpx;height: 22rpx;background: #323232;"></span>
|
||||||
|
<span class="white-space" style="margin-left: 20rpx;width: 260rpx;">{{ item.address_detail }}</span>
|
||||||
|
</view>
|
||||||
|
|
||||||
<view class="flex align-items justify-center" style="margin-top: 20rpx;margin-bottom: 32rpx;" >
|
</view>
|
||||||
<view class="imgs_con_div" v-for="(items_img,index) in item.images.slice(0,3)" :key="index">
|
|
||||||
<image class="imgs_con" mode="widthFix" :src="items_img"></image>
|
<view class="flex align-items justify-center" style="margin-top: 20rpx;margin-bottom: 32rpx;" >
|
||||||
|
<view class="imgs_con_div" v-for="(items_img,index) in item.images.slice(0,3)" :key="index">
|
||||||
|
<image class="imgs_con" mode="widthFix" :src="items_img"></image>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
|
||||||
|
|
||||||
<view class="bottom flex align-items" v-if="cate_ids != 1">
|
<view class="bottom flex align-items" v-if="cate_ids != 1">
|
||||||
<view class="flex align-items toptext">
|
<view class="flex align-items toptext">
|
||||||
<span class="flex align-items" >
|
<span class="flex align-items" >
|
||||||
<u-avatar-group
|
<u-avatar-group
|
||||||
:urls="item.join_info.users"
|
:urls="item.join_info.users"
|
||||||
keyName="avatar"
|
keyName="avatar"
|
||||||
size="30"
|
size="30"
|
||||||
maxCount="5"
|
maxCount="5"
|
||||||
gap="0.4"
|
gap="0.4"
|
||||||
></u-avatar-group>
|
></u-avatar-group>
|
||||||
<image
|
<image
|
||||||
src="/static/index/dian.png"
|
src="/static/index/dian.png"
|
||||||
:class="item.join_info.users.length > 0 ? '' :'smalld'"
|
:class="item.join_info.users.length > 0 ? '' :'smalld'"
|
||||||
style="width: 58rpx;height: 58rpx;margin-left:-20rpx;z-index: 1;"
|
style="width: 58rpx;height: 58rpx;margin-left:-20rpx;z-index: 1;"
|
||||||
></image>
|
></image>
|
||||||
|
</span>
|
||||||
|
<view class="number flex align-items" >
|
||||||
|
{{ Number(item.join_info.people_number)+"人已上车" }}
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<span v-if="item.status == 5" class="part1 flex justify-center align-items">
|
||||||
|
已结束
|
||||||
</span>
|
</span>
|
||||||
<view class="number flex align-items" >
|
<span v-if="item.status == 2" class="part flex justify-center align-items">
|
||||||
{{ Number(item.join_info.people_number)+"人已上车" }}
|
上车
|
||||||
</view>
|
</span>
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
<span v-if="item.status == 5" class="part1 flex justify-center align-items">
|
|
||||||
已结束
|
|
||||||
</span>
|
|
||||||
<span v-if="item.status == 2" class="part flex justify-center align-items">
|
|
||||||
上车
|
|
||||||
</span>
|
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
<!-- </scroll-view> -->
|
||||||
|
|
||||||
<!-- 全部标签 -->
|
<!-- 全部标签 -->
|
||||||
<u-popup :show="showPopbq" mode="bottom" round="20" :customStyle="{'width':'750rpx','height':'1040rpx'}"
|
<u-popup :show="showPopbq" mode="bottom" round="20" :customStyle="{'width':'750rpx','height':'1040rpx'}"
|
||||||
@close="closebq">
|
@close="closebq">
|
||||||
@ -250,7 +250,9 @@ export default {
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
onLoad() {
|
onLoad() {
|
||||||
uni.hideTabBar();
|
|
||||||
|
// uni.hideTabBar();
|
||||||
|
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.videoContext = uni.createVideoContext("myVideo"); //创建视频实例指向video
|
this.videoContext = uni.createVideoContext("myVideo"); //创建视频实例指向video
|
||||||
|
@ -1,508 +0,0 @@
|
|||||||
<template>
|
|
||||||
<view class="box flex justify-center align-items flex-column">
|
|
||||||
<view class="search flex align-items">
|
|
||||||
<span class="dashed">
|
|
||||||
<image src="../../static/center/search.png" mode=""></image>
|
|
||||||
</span>
|
|
||||||
<span class="line-search"></span>
|
|
||||||
<input type="text" placeholder="搜索往期课程" v-model="keywords" class="input" placeholder-class="plasty" />
|
|
||||||
<span class="searchBtn" @click.stop="search()">搜索</span>
|
|
||||||
</view>
|
|
||||||
<view class="con-center flex flex-column justify-center align-items">
|
|
||||||
<view class="centerBox flex justify-start align-items flex-column" v-if="list.length != 0">
|
|
||||||
<view class="flex w-100 center flex-column" style="align-items: center;" v-for="(item,index) in list"
|
|
||||||
:key="index" @click.stop="openUrl('/packageA/index/previousDetail?id='+item.id)" >
|
|
||||||
<view class="flex" style="width: 690rpx;">
|
|
||||||
<image :src="item.headimage" mode="" style="width: 280rpx; height: 200rpx;border-radius: 12rpx;"></image>
|
|
||||||
<view class="flex flex-column rightBox">
|
|
||||||
<span class="name">{{item.title}}</span>
|
|
||||||
<!-- <span class="line-row"></span> -->
|
|
||||||
<span class="minge">{{'开始时间 ' + item.start_time_text}}</span>
|
|
||||||
<span class="minge">{{'结束时间 ' + item.end_time_text}}</span>
|
|
||||||
<span class="money" v-if="item.feel == 0">
|
|
||||||
<span>课程价格:</span>
|
|
||||||
{{'¥' + item.price}}</span>
|
|
||||||
<span class="charge" v-if="item.feel == 1" >
|
|
||||||
免费
|
|
||||||
</span>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<!-- <span class="error" v-if="item.auth_status == 2">审核失败:{{item.reason}}</span> -->
|
|
||||||
<span class="box-line"></span>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="" v-else>
|
|
||||||
<u-empty
|
|
||||||
mode="list"
|
|
||||||
icon="http://cdn.uviewui.com/uview/empty/list.png"
|
|
||||||
>
|
|
||||||
</u-empty>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<u-loadmore :status="loadStatus" />
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
size: 13,
|
|
||||||
page: 1,
|
|
||||||
limit: 10,
|
|
||||||
loadStatus: 'loading',
|
|
||||||
list: [],
|
|
||||||
last_page:0,
|
|
||||||
keywords:''
|
|
||||||
};
|
|
||||||
},
|
|
||||||
// onLoad() {
|
|
||||||
// this.getList();
|
|
||||||
// },
|
|
||||||
onShow() {
|
|
||||||
this.page = 1
|
|
||||||
this.list = []
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
onReachBottom() {
|
|
||||||
if (this.page < this.last_page) {
|
|
||||||
this.page++;
|
|
||||||
this.getList();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
openUrl(url) {
|
|
||||||
uni.navigateTo({
|
|
||||||
url: url
|
|
||||||
})
|
|
||||||
},
|
|
||||||
search(){
|
|
||||||
this.resetLists()
|
|
||||||
this.getList()
|
|
||||||
},
|
|
||||||
resetLists(){
|
|
||||||
this.page = 1;
|
|
||||||
this.list = [];
|
|
||||||
this.loadStatus = 'loading'
|
|
||||||
},
|
|
||||||
// 获取课程列表
|
|
||||||
getList() {
|
|
||||||
// if (this.loadStatus === 'nomore') return;
|
|
||||||
uni.$u.http.get('/api/school/classes/classes_list', {
|
|
||||||
params: {
|
|
||||||
page: this.page,
|
|
||||||
limit: this.limit,
|
|
||||||
order: 'normal',
|
|
||||||
keywords:this.keywords,
|
|
||||||
is_expire: 1
|
|
||||||
}
|
|
||||||
}).then(res => {
|
|
||||||
if (res.code == 1) {
|
|
||||||
this.last_page = res.data.list.last_page
|
|
||||||
this.list = [...this.list, ...res.data.list.data];
|
|
||||||
if (this.list.length >= res.data.list.total) {
|
|
||||||
this.loadStatus = 'nomore';
|
|
||||||
} else {
|
|
||||||
this.loadStatus = 'loading';
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
uni.showToast({
|
|
||||||
title: res.msg,
|
|
||||||
icon: 'none',
|
|
||||||
duration: 2000
|
|
||||||
});
|
|
||||||
this.loadStatus = 'loading';
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
console.error('请求失败', error);
|
|
||||||
this.loadStatus = 'loading';
|
|
||||||
});
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
.box {
|
|
||||||
background: linear-gradient(to bottom, #F1F2F8 0%, #FFFFFF 5%, #FFFFFF 100%);
|
|
||||||
|
|
||||||
.con-center {
|
|
||||||
width: 690rpx;
|
|
||||||
margin-top: 25rpx;
|
|
||||||
|
|
||||||
.centerBack {
|
|
||||||
position: fixed;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
top: 25rpx;
|
|
||||||
left: 0;
|
|
||||||
z-index: -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.header {
|
|
||||||
height: 50rpx;
|
|
||||||
margin-top: 37rpx;
|
|
||||||
|
|
||||||
.s-header {
|
|
||||||
width: 104rpx;
|
|
||||||
height: 50rpx;
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 28rpx;
|
|
||||||
color: #9E9E9E;
|
|
||||||
line-height: 26rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.s-header.selected {
|
|
||||||
width: 104rpx;
|
|
||||||
height: 50rpx;
|
|
||||||
background: #008CFF;
|
|
||||||
border-radius: 12rpx 12rpx 12rpx 12rpx;
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 800;
|
|
||||||
font-size: 28rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
line-height: 26rpx;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.w-100 {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.flex {
|
|
||||||
display: flex;
|
|
||||||
}
|
|
||||||
|
|
||||||
.flex-start {
|
|
||||||
align-items: flex-start;
|
|
||||||
}
|
|
||||||
|
|
||||||
.justify-center {
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.align-items {
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.flex-column {
|
|
||||||
flex-flow: column;
|
|
||||||
}
|
|
||||||
|
|
||||||
.justify-start {
|
|
||||||
justify-content: start;
|
|
||||||
}
|
|
||||||
|
|
||||||
.line {
|
|
||||||
margin-top: 12rpx;
|
|
||||||
width: 690rpx;
|
|
||||||
height: 1rpx;
|
|
||||||
background: #008CFF;
|
|
||||||
border-radius: 0rpx 0rpx 0rpx 0rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.centerBox {
|
|
||||||
width: 690rpx;
|
|
||||||
|
|
||||||
.error {
|
|
||||||
width: 100%;
|
|
||||||
word-break: break-all;
|
|
||||||
}
|
|
||||||
|
|
||||||
.box-line {
|
|
||||||
width: 400rpx;
|
|
||||||
height: 1rpx;
|
|
||||||
background: #D9D9D9;
|
|
||||||
border-radius: 0rpx 0rpx 0rpx 0rpx;
|
|
||||||
margin-top: 52rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.center {
|
|
||||||
margin: 32rpx 0 32rpx 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.rightBox {
|
|
||||||
margin-left: 24rpx;
|
|
||||||
width: 378rpx;
|
|
||||||
|
|
||||||
.line-row {
|
|
||||||
width: 382rpx;
|
|
||||||
height: 1rpx;
|
|
||||||
background: #D9D9D9;
|
|
||||||
box-shadow: 1rpx 1rpx 0rpx 0rpx rgba(102, 102, 102, 0.25);
|
|
||||||
margin: 14rpx 0 6rpx 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.name {
|
|
||||||
font-weight: 800;
|
|
||||||
font-size: 36rpx;
|
|
||||||
color: #343434;
|
|
||||||
margin-bottom: 24rpx;
|
|
||||||
display: -webkit-box;
|
|
||||||
-webkit-box-orient: vertical;
|
|
||||||
-webkit-line-clamp: 1;
|
|
||||||
/* 设置行数 */
|
|
||||||
overflow: hidden;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
word-break: break-all;
|
|
||||||
/* 防止单词被截断 */
|
|
||||||
}
|
|
||||||
|
|
||||||
.minge {
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #7A7A7A;
|
|
||||||
margin-bottom: 14rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.pass {
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #34DC12;
|
|
||||||
}
|
|
||||||
|
|
||||||
.full {
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #FF2323;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.money {
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #FF2323;
|
|
||||||
|
|
||||||
span {
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #7A7A7A;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.Cancel {
|
|
||||||
width: 138rpx;
|
|
||||||
height: 48rpx;
|
|
||||||
border-radius: 12rpx 12rpx 12rpx 12rpx;
|
|
||||||
background: #008CFF;
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 800;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
line-height: 32rpx;
|
|
||||||
letter-spacing: 4px;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
align-self: flex-end;
|
|
||||||
}
|
|
||||||
|
|
||||||
.make {
|
|
||||||
width: 138rpx;
|
|
||||||
height: 48rpx;
|
|
||||||
background: #008CFF;
|
|
||||||
border-radius: 12rpx 12rpx 12rpx 12rpx;
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 800;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
line-height: 32rpx;
|
|
||||||
letter-spacing: 4px;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
align-self: flex-end;
|
|
||||||
margin-left: 16rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.QR {
|
|
||||||
width: 138rpx;
|
|
||||||
height: 48rpx;
|
|
||||||
background: #4974FF;
|
|
||||||
box-shadow: 2rpx 2rpx 0rpx 0rpx rgba(0, 0, 0, 0.4);
|
|
||||||
border-radius: 8rpx 8rpx 8rpx 8rpx;
|
|
||||||
font-weight: 400;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #EAEAEA;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
align-self: flex-end;
|
|
||||||
margin-top: 50rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.charge {
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 800;
|
|
||||||
font-size: 28rpx;
|
|
||||||
color: #FF2323;
|
|
||||||
line-height: 32rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.search {
|
|
||||||
margin-top: 24rpx;
|
|
||||||
width: 690rpx;
|
|
||||||
height: 64rpx;
|
|
||||||
background: #FFFFFF;
|
|
||||||
box-shadow: 2rpx 2rpx 0rpx 0rpx rgba(0, 0, 0, 0.4);
|
|
||||||
border-radius: 8rpx 8rpx 8rpx 8rpx;
|
|
||||||
border: 2rpx solid #008CFF;
|
|
||||||
|
|
||||||
.dashed {
|
|
||||||
image {
|
|
||||||
width: 52rpx;
|
|
||||||
height: 52rpx;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.line-search {
|
|
||||||
width: 2rpx;
|
|
||||||
height: 42rpx;
|
|
||||||
background: #008CFF;
|
|
||||||
border-radius: 0rpx 0rpx 0rpx 0rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.input {
|
|
||||||
// border: 4rpx solid #EAEAEA;
|
|
||||||
padding-left: 12rpx;
|
|
||||||
height: 100%;
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
::v-deep .input-placeholder {
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 32rpx;
|
|
||||||
color: #C0C0C0;
|
|
||||||
line-height: 32rpx;
|
|
||||||
text-align: left;
|
|
||||||
font-style: normal;
|
|
||||||
text-transform: none;
|
|
||||||
|
|
||||||
}
|
|
||||||
.searchBtn{
|
|
||||||
width: 128rpx;
|
|
||||||
height: 64rpx;
|
|
||||||
background: #008CFF;
|
|
||||||
border-radius: 5rpx;
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 32rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.popup {
|
|
||||||
.header {
|
|
||||||
margin-left: 24rpx;
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 800;
|
|
||||||
font-size: 42rpx;
|
|
||||||
color: #008CFF;
|
|
||||||
margin-top: 34rpx;
|
|
||||||
width: 690rpx;
|
|
||||||
}
|
|
||||||
|
|
||||||
.line-row {
|
|
||||||
width: 690rpx;
|
|
||||||
height: 1rpx;
|
|
||||||
background: #D9D9D9;
|
|
||||||
margin: 11rpx 0 31rpx 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.pop-center {
|
|
||||||
.left {}
|
|
||||||
|
|
||||||
.right {
|
|
||||||
margin-left: 30rpx;
|
|
||||||
|
|
||||||
.title {
|
|
||||||
width: 340rpx;
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 800;
|
|
||||||
font-size: 34rpx;
|
|
||||||
color: #343434;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.line-short {
|
|
||||||
width: 400rpx;
|
|
||||||
height: 1rpx;
|
|
||||||
background: #D9D9D9;
|
|
||||||
}
|
|
||||||
|
|
||||||
.popList {
|
|
||||||
justify-content: space-between;
|
|
||||||
width: 600rpx;
|
|
||||||
margin-top: 32rpx;
|
|
||||||
|
|
||||||
.hei {
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 26rpx;
|
|
||||||
color: #343434;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.pop-btn {
|
|
||||||
width: 690rpx;
|
|
||||||
margin-top: 62rpx;
|
|
||||||
justify-content: space-around;
|
|
||||||
|
|
||||||
.Cancel {
|
|
||||||
width: 306rpx;
|
|
||||||
height: 80rpx;
|
|
||||||
border-radius: 401rpx 401rpx 401rpx 401rpx;
|
|
||||||
border: 2rpx solid #008CFF;
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 800;
|
|
||||||
font-size: 34rpx;
|
|
||||||
color: #008CFF;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Confirm {
|
|
||||||
width: 306rpx;
|
|
||||||
height: 80rpx;
|
|
||||||
background: #008CFF;
|
|
||||||
border-radius: 401rpx 401rpx 401rpx 401rpx;
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 800;
|
|
||||||
font-size: 34rpx;
|
|
||||||
color: #FFFFFF;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.hui {
|
|
||||||
font-family: PingFang SC, PingFang SC;
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 24rpx;
|
|
||||||
color: #7A7A7A;
|
|
||||||
}
|
|
||||||
|
|
||||||
.white-space {
|
|
||||||
overflow: hidden;
|
|
||||||
/* 确保超出容器的文本被隐藏 */
|
|
||||||
white-space: nowrap;
|
|
||||||
/* 确保文本在一行内显示 */
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
/* 使用省略号表示被截断的文本 */
|
|
||||||
}
|
|
||||||
</style>
|
|
@ -42,16 +42,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- <view class="first flex flex-column flex-start justify-center" style="margin-top: 42rpx;">
|
|
||||||
<view class="centerBox flex justify-start align-items" style="margin-left: 60rpx;">
|
|
||||||
<view class="flex flex-column align-items justify-center" v-for="(item,index) in list2"
|
|
||||||
:key="index" @click="jump(item.url,item.auth_status)" v-if="item.auth_status == 1">
|
|
||||||
<image :src="item.image" mode="" style="width: 64rpx; height: 64rpx;margin-bottom: 24rpx;">
|
|
||||||
</image>
|
|
||||||
<span class="text">{{item.text}}</span>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view> -->
|
|
||||||
|
|
||||||
<!-- 提现 -->
|
<!-- 提现 -->
|
||||||
<!-- <view class="first mymoney flex flex-column" @click="callPhone(init.mobile)">
|
<!-- <view class="first mymoney flex flex-column" @click="callPhone(init.mobile)">
|
||||||
@ -129,7 +120,7 @@
|
|||||||
maxCount="5" gap="0.4"></u-avatar-group>
|
maxCount="5" gap="0.4"></u-avatar-group>
|
||||||
<image :class="item.join_info.users.length > 0 ? '' : 'smalld'"
|
<image :class="item.join_info.users.length > 0 ? '' : 'smalld'"
|
||||||
src="/static/index/dian.png"
|
src="/static/index/dian.png"
|
||||||
style="width: 60rpx;height: 60rpx;margin-left:-20rpx;z-index: 1;"></image>
|
style="width: 58rpx;height: 58rpx;margin-left:-20rpx;z-index: 1;"></image>
|
||||||
</span>
|
</span>
|
||||||
<view class="number flex align-items">
|
<view class="number flex align-items">
|
||||||
{{ Number(item.join_info.people_number) + "人已上车" }}
|
{{ Number(item.join_info.people_number) + "人已上车" }}
|
||||||
@ -152,8 +143,8 @@
|
|||||||
|
|
||||||
|
|
||||||
<!-- 授权登录 -->
|
<!-- 授权登录 -->
|
||||||
<u-popup :show="showPopup" mode="center" round="20" :customStyle="{ 'width': '644rpx', 'height': '486rpx'}"
|
<u-popup :show="showPopup" mode="center" round="20" :customStyle="{ 'width': '644rpx', 'height': '426rpx','position': 'relative'}"
|
||||||
:closeable="true" @close="close">
|
:closeable="false" @close="close">
|
||||||
<!-- 隐私协议 -->
|
<!-- 隐私协议 -->
|
||||||
<lsl-protocol-popup title="用户协议和隐私政策提示" predesc="感谢您使用洛阳多样青春搭+。为保护您的个人信息安全,在您洛阳多样青春搭+的服务前,请务必仔细阅读"
|
<lsl-protocol-popup title="用户协议和隐私政策提示" predesc="感谢您使用洛阳多样青春搭+。为保护您的个人信息安全,在您洛阳多样青春搭+的服务前,请务必仔细阅读"
|
||||||
subdesc='以了解详细内容。如您同意,请点击“同意并继续”并开始使用我们的服务。'
|
subdesc='以了解详细内容。如您同意,请点击“同意并继续”并开始使用我们的服务。'
|
||||||
@ -203,12 +194,12 @@ export default {
|
|||||||
other: [{
|
other: [{
|
||||||
tit: '《用户协议》',
|
tit: '《用户协议》',
|
||||||
type: 'page', // doc自行下载打开文档 page跳转页面
|
type: 'page', // doc自行下载打开文档 page跳转页面
|
||||||
content: '/pages/Negotiate/agreement', // 文档地址/页面跳转地址
|
content: '/packageA/Negotiate/agreement', // 文档地址/页面跳转地址
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
tit: '《隐私政策》',
|
tit: '《隐私政策》',
|
||||||
type: 'page', // doc自行下载打开文档 page跳转页面
|
type: 'page', // doc自行下载打开文档 page跳转页面
|
||||||
content: '/pages/Negotiate/privacy', // 文档地址/页面跳转地址
|
content: '/packageA/Negotiate/privacy', // 文档地址/页面跳转地址
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
protocolArr: ["<隐私协议>"],
|
protocolArr: ["<隐私协议>"],
|
||||||
@ -280,65 +271,7 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
],
|
],
|
||||||
list2: [{
|
|
||||||
image: '../../static/my/Platform.png',
|
|
||||||
text: '申请入驻',
|
|
||||||
url: "/pages/index/Apply",
|
|
||||||
auth_status: 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: '../../static/my/Check.png',
|
|
||||||
text: '报名审核',
|
|
||||||
url: "/packageA/my/classCheck",
|
|
||||||
auth_status: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: '../../static/my/Manage.png',
|
|
||||||
text: '课程管理',
|
|
||||||
auth_status: 0,
|
|
||||||
url: '/packageA/my/management',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: '../../static/my/activity.png',
|
|
||||||
text: '活动管理',
|
|
||||||
auth_status: 0,
|
|
||||||
url: '/packageA/my/ac-management',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: '../../static/my/verification.png',
|
|
||||||
text: '核销课程',
|
|
||||||
url: '/packageA/my/cancel',
|
|
||||||
auth_status: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: '../../static/my/cancal.png',
|
|
||||||
text: '核销活动',
|
|
||||||
url: '/packageA/my/cancelActivity',
|
|
||||||
auth_status: 0
|
|
||||||
},
|
|
||||||
// {
|
|
||||||
// image: '../../static/my/list.png',
|
|
||||||
// text: '订单管理',
|
|
||||||
// auth_status: 0
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// image: '../../static/my/phone.png',
|
|
||||||
// text: '学员管理',
|
|
||||||
// auth_status: 0
|
|
||||||
// },
|
|
||||||
{
|
|
||||||
image: '../../static/my/organization.png',
|
|
||||||
text: '我的机构',
|
|
||||||
auth_status: 0,
|
|
||||||
url: '/pages/center/MechanismDetail',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
image: '../../static/my/addClass.png',
|
|
||||||
text: '创建课程',
|
|
||||||
auth_status: 0,
|
|
||||||
url: '/packageA/my/addManagement',
|
|
||||||
}
|
|
||||||
]
|
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
// watch: {
|
// watch: {
|
||||||
@ -375,7 +308,6 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
onShow() {
|
onShow() {
|
||||||
this.getStatus()
|
|
||||||
this.token = uni.getStorageSync('token');
|
this.token = uni.getStorageSync('token');
|
||||||
if (this.token) {
|
if (this.token) {
|
||||||
this.getUserInfo();
|
this.getUserInfo();
|
||||||
@ -507,49 +439,6 @@ export default {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
// 查看自己的状态
|
|
||||||
getStatus() {
|
|
||||||
uni.$u.http.get('/api/school/shop/auth_info', {}).then(res => {
|
|
||||||
console.log(this.list2.length, 'this.list2.length')
|
|
||||||
if (res.code == 1) {
|
|
||||||
let have_auth = false;
|
|
||||||
let have_shop = false;
|
|
||||||
|
|
||||||
if (res.data.verification_auth.verification) {
|
|
||||||
have_auth = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (res.data.auth_status == 1 && res.data.shop_id) {
|
|
||||||
have_shop = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (have_auth) {
|
|
||||||
for (let i = 1; i < this.list2.length; i++) {
|
|
||||||
this.list2[i].auth_status = 1;
|
|
||||||
}
|
|
||||||
this.list2[this.list2.length - 1].auth_status = 0;
|
|
||||||
this.list2[this.list2.length - 2].auth_status = 0;
|
|
||||||
}
|
|
||||||
if (have_shop) {
|
|
||||||
this.list2[0].auth_status = 0;
|
|
||||||
for (let i = 1; i < this.list2.length; i++) {
|
|
||||||
this.list2[i].auth_status = 1;
|
|
||||||
}
|
|
||||||
this.shop_id = res.data.shop_id
|
|
||||||
uni.setStorageSync('shop_id', res.data.shop_id)
|
|
||||||
uni.setStorageSync('apply_info', res.data.apply_info)
|
|
||||||
this.list2[this.list2.length - 2].url = `/pages/center/MechanismDetail?id=${res.data.shop_id}`;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
uni.showToast({
|
|
||||||
title: res.msg,
|
|
||||||
icon: 'none',
|
|
||||||
duration: 2000
|
|
||||||
})
|
|
||||||
})
|
|
||||||
},
|
|
||||||
toMycy() {
|
toMycy() {
|
||||||
// if (!this.token) {
|
// if (!this.token) {
|
||||||
// this.miniLogin()
|
// this.miniLogin()
|
||||||
@ -599,71 +488,72 @@ export default {
|
|||||||
url: url
|
url: url
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
jump(url, type) {
|
//扫码逻辑
|
||||||
console.log(url)
|
// jump(url, type) {
|
||||||
if (url == '/packageA/my/cancel') {
|
// console.log(url)
|
||||||
uni.scanCode({
|
// if (url == '/packageA/my/cancel') {
|
||||||
success: (res) => {
|
// uni.scanCode({
|
||||||
console.log('扫码结果:' + res.result);
|
// success: (res) => {
|
||||||
uni.navigateTo({
|
// console.log('扫码结果:' + res.result);
|
||||||
url: url + '?res=' + encodeURIComponent(res.result)
|
// uni.navigateTo({
|
||||||
});
|
// url: url + '?res=' + encodeURIComponent(res.result)
|
||||||
},
|
// });
|
||||||
fail: (err) => {
|
// },
|
||||||
console.error('扫码失败:' + err);
|
// fail: (err) => {
|
||||||
uni.showToast({
|
// console.error('扫码失败:' + err);
|
||||||
title: '扫码已取消',
|
// uni.showToast({
|
||||||
icon: 'none'
|
// title: '扫码已取消',
|
||||||
});
|
// icon: 'none'
|
||||||
}
|
// });
|
||||||
});
|
// }
|
||||||
} else if (url == '/packageA/my/addManagement') {
|
// });
|
||||||
uni.$u.http.get('/api/school/shop/auth_info',).then(res => {
|
// } else if (url == '/packageA/my/addManagement') {
|
||||||
if (res.code == 1) {
|
// uni.$u.http.get('/api/school/shop/auth_info',).then(res => {
|
||||||
if (res.data.check_full) {
|
// if (res.code == 1) {
|
||||||
uni.navigateTo({
|
// if (res.data.check_full) {
|
||||||
url: "/packageA/my/addManagement?shop_id=" + this.shop_id
|
// uni.navigateTo({
|
||||||
})
|
// url: "/packageA/my/addManagement?shop_id=" + this.shop_id
|
||||||
} else {
|
// })
|
||||||
uni.showToast({
|
// } else {
|
||||||
title: '必要展示信息未完善,请先在机构完善展示信息',
|
// uni.showToast({
|
||||||
icon: 'none',
|
// title: '必要展示信息未完善,请先在机构完善展示信息',
|
||||||
duration: 2000
|
// icon: 'none',
|
||||||
});
|
// duration: 2000
|
||||||
}
|
// });
|
||||||
|
// }
|
||||||
|
|
||||||
} else {
|
// } else {
|
||||||
uni.showToast({
|
// uni.showToast({
|
||||||
title: res.msg,
|
// title: res.msg,
|
||||||
icon: 'none',
|
// icon: 'none',
|
||||||
duration: 2000
|
// duration: 2000
|
||||||
});
|
// });
|
||||||
}
|
// }
|
||||||
}).catch(error => {
|
// }).catch(error => {
|
||||||
console.error('请求失败', error);
|
// console.error('请求失败', error);
|
||||||
});
|
// });
|
||||||
} else if (url == '/packageA/my/cancelActivity') {
|
// } else if (url == '/packageA/my/cancelActivity') {
|
||||||
uni.scanCode({
|
// uni.scanCode({
|
||||||
success: (res) => {
|
// success: (res) => {
|
||||||
console.log('扫码结果:' + res.result);
|
// console.log('扫码结果:' + res.result);
|
||||||
uni.navigateTo({
|
// uni.navigateTo({
|
||||||
url: url + '?res=' + encodeURIComponent(res.result)
|
// url: url + '?res=' + encodeURIComponent(res.result)
|
||||||
});
|
// });
|
||||||
},
|
// },
|
||||||
fail: (err) => {
|
// fail: (err) => {
|
||||||
console.error('扫码失败:' + err);
|
// console.error('扫码失败:' + err);
|
||||||
uni.showToast({
|
// uni.showToast({
|
||||||
title: '扫码已取消',
|
// title: '扫码已取消',
|
||||||
icon: 'none'
|
// icon: 'none'
|
||||||
});
|
// });
|
||||||
}
|
// }
|
||||||
});
|
// });
|
||||||
} else {
|
// } else {
|
||||||
uni.navigateTo({
|
// uni.navigateTo({
|
||||||
url: url
|
// url: url
|
||||||
});
|
// });
|
||||||
}
|
// }
|
||||||
},
|
// },
|
||||||
close() {
|
close() {
|
||||||
this.showPopup = false
|
this.showPopup = false
|
||||||
},
|
},
|
||||||
@ -1159,6 +1049,7 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.popup {
|
.popup {
|
||||||
|
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
@ -1168,16 +1059,16 @@ export default {
|
|||||||
|
|
||||||
.img_shouquan {
|
.img_shouquan {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 675rpx;
|
width: 680rpx;
|
||||||
height: 857rpx;
|
height: 857rpx;
|
||||||
left: -24rpx;
|
left: -25rpx;
|
||||||
top: -185px;
|
top: -390rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#txt2 {
|
#txt2 {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
margin-top: 220rpx;
|
margin-top: 200rpx;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
color: #525252;
|
color: #525252;
|
||||||
margin-bottom: 60rpx;
|
margin-bottom: 60rpx;
|
||||||
|
Before Width: | Height: | Size: 7.9 KiB |
Before Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 988 B |
BIN
static/clearicon.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
static/detail/bg.png
Normal file
After Width: | Height: | Size: 59 KiB |
BIN
static/detail/hxall.png
Normal file
After Width: | Height: | Size: 666 B |
BIN
static/detail/hxslice.png
Normal file
After Width: | Height: | Size: 620 B |
Before Width: | Height: | Size: 2.3 KiB |
@ -67,8 +67,8 @@
|
|||||||
justify-content: flex-start;
|
justify-content: flex-start;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
||||||
// margin-top: 40rpx;
|
margin-top: 20rpx;
|
||||||
margin-left: 40rpx;
|
// margin-left: 40rpx;
|
||||||
width: 90%;
|
width: 90%;
|
||||||
font-size: 28rpx;
|
font-size: 28rpx;
|
||||||
color: $themeColor;
|
color: $themeColor;
|
||||||
|