main
15004070936 3 weeks ago
parent 1d05c2d08a
commit 00eafbd444

@ -230,10 +230,10 @@
this.reconnecting = true; this.reconnecting = true;
// token // token
uni.$http.get('/api/getInfo').then((res) => { uni.$http.get('/api/getInfo').then((res) => {
uni.showToast({ // uni.showToast({
title: '连接已断开,尝试重新连接...', // title: '...',
icon: 'none' // icon: 'none'
}) // })
// //
let token = uni.getStorageSync("token"); let token = uni.getStorageSync("token");
wsApi.reconnect(this.$wsUrl, token); wsApi.reconnect(this.$wsUrl, token);
@ -416,10 +416,10 @@
this.$store.dispatch('friendStore/loadFriend'), this.$store.dispatch('friendStore/loadFriend'),
this.$store.dispatch('groupStore/loadGroup') this.$store.dispatch('groupStore/loadGroup')
]).then(() => { ]).then(() => {
uni.showToast({ // uni.showToast({
title: "已重新连接", // title: "",
icon: 'none' // icon: 'none'
}); // });
// 线 // 线
const chatState = this.$store.state.chatStore; const chatState = this.$store.state.chatStore;
this.pullPrivateOfflineMessage(chatState.privateMsgMaxId); this.pullPrivateOfflineMessage(chatState.privateMsgMaxId);
@ -431,6 +431,10 @@
}, },
loadFriendInfo(id, callback) { loadFriendInfo(id, callback) {
let friend = this.$store.getters['friendStore/findFriend'](id) let friend = this.$store.getters['friendStore/findFriend'](id)
if (!friend) {
this.$store.dispatch('friendStore/loadFriend')
friend = this.$store.getters['friendStore/findFriend'](id)
}
if (!friend) { if (!friend) {
console.log("未知用户:", id) console.log("未知用户:", id)
friend = { friend = {

@ -67,7 +67,7 @@
<view class="voice-bg" :class="{displaynone:!voicebg}"> <view class="voice-bg" :class="{displaynone:!voicebg}">
<view class="voice-bg-len"> <view class="voice-bg-len">
<view class="voice-bg-time" :style="{width:vlength/0.6+'%'}"> <view class="voice-bg-time" :style="{width:vlength/0.6+'%'}">
{{vlength}} {{vlength<=50?60-vlength:60-vlength+'秒后自动发送'}}
</view> </view>
<view class="voice-del">上滑取消录音</view> <view class="voice-del">上滑取消录音</view>
</view> </view>
@ -340,8 +340,7 @@ export default {
this.vlength = i; this.vlength = i;
i++; i++;
// //
if (i > 60) { if (i >= 60) {
clearInterval(this.timer);
this.touchend(); this.touchend();
} }
}, 1000) }, 1000)

@ -404,7 +404,7 @@
"path": "pages/book/bookshop", "path": "pages/book/bookshop",
"style" : "style" :
{ {
"navigationBarTitleText": "预约学员", "navigationBarTitleText": "全店预约学员",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, },

@ -11,15 +11,15 @@
{{item.courseName}} {{item.courseName}}
</view> </view>
<view class="hright"> <view class="hright">
{{item.startTime+'-'+item.endTime}} {{formatTime(item.startTime)+' - '+formatTime(item.endTime)}}
</view> </view>
</view> </view>
<view class="oscon"> <view class="oscon">
<view class="osimg imgload"> <view class="osname" >
<image class="osimg" v-if="item.pic" :src="getimgRemoteFile(item.pic)" mode="aspectFill"></image> <view class="osimg imgload" >
<image v-if="item.pic" :src="getimgRemoteFile(item.pic)" mode="aspectFill"></image>
</view> </view>
<view class="osname">
<view class="oscell"> <view class="oscell">
<!-- <view v-if="item.claName=='团课'" class="txtbg">{{item.claName}}</view> <!-- <view v-if="item.claName=='团课'" class="txtbg">{{item.claName}}</view>
<view v-else class="txtbg1">{{item.claName?item.claName:'--'}}</view> --> <view v-else class="txtbg1">{{item.claName?item.claName:'--'}}</view> -->
@ -157,6 +157,10 @@
} }
}, },
methods: { methods: {
formatTime(timeStr) {
// timeStr "HH:MM:SS"
return timeStr.slice(0, 5); // 5 "HH:MM"
},
getimgRemoteFile(img){ getimgRemoteFile(img){
if(img){ if(img){
img=img.split(',')[0]; img=img.split(',')[0];
@ -322,9 +326,15 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
.osimg{ .osimg{
width: 120rpx; margin-left: 24%;
height: 120rpx; width: 300rpx;
height: 300rpx;
margin-right: 10rpx;
>image {
width: 300rpx;
height: 300rpx;
border-radius: 10rpx; border-radius: 10rpx;
}
} }
.osrcon{ .osrcon{
display: flex; display: flex;
@ -341,6 +351,7 @@
padding-bottom: 15rpx; padding-bottom: 15rpx;
} }
.oscell{ .oscell{
display: flex; display: flex;
flex-direction: row; flex-direction: row;
align-items: center; align-items: center;
@ -473,9 +484,15 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
.osimg{ .osimg{
width: 160rpx; margin-left: 24%;
height: 260rpx; width: 300rpx;
height: 300rpx;
margin-right: 10rpx;
>image {
width: 300rpx;
height: 300rpx;
border-radius: 10rpx; border-radius: 10rpx;
}
} }
.osname{ .osname{
display: flex; display: flex;

@ -39,7 +39,7 @@
</view> </view>
<view class="oscell"> <view class="oscell">
上课时间 上课时间
<text class="txt">{{ (info.claDate?info.claDate:'')+' '+ (info.startTime?info.startTime:'') + (info.endTime?'-'+info.endTime:'') }}</text> <text class="txt">{{ (info.claDate?info.claDate:'')+' '+ (info.startTime?formatTime(info.startTime):'') + (info.endTime?'-'+formatTime(info.endTime):'') }}</text>
</view> </view>
<view class="oscell" v-if="info.claTimeStatus"> <view class="oscell" v-if="info.claTimeStatus">
课程状态 课程状态
@ -181,6 +181,10 @@
} }
}, },
methods: { methods: {
formatTime(timeStr) {
// timeStr "HH:MM:SS"
return timeStr.slice(0, 5); // 5 "HH:MM"
},
copydo(text){ copydo(text){
if (!text) { if (!text) {
uni.showToast({ uni.showToast({

@ -44,21 +44,21 @@
<view class="srcon"> <view class="srcon">
<uni-easyinput type="textarea" v-model="value" placeholder="对于本次课程是否满意?请输入评价内容!"></uni-easyinput> <uni-easyinput type="textarea" v-model="value" placeholder="对于本次课程是否满意?请输入评价内容!"></uni-easyinput>
</view> </view>
<!-- -->
<view class="fcon"> <!-- <view class="fcon">-->
<view class="pfcon"> <!-- <view class="pfcon">-->
<view class="pftxt">课程评价</view> <!-- <view class="pftxt">课程评价</view>-->
<uni-rate v-model="rateValue1" @change="onChange1" /> <!-- <uni-rate v-model="rateValue1" @change="onChange1" />-->
</view> <!-- </view>-->
<view class="pfcon"> <!-- <view class="pfcon">-->
<view class="pftxt">教练评价</view> <!-- <view class="pftxt">教练评价</view>-->
<uni-rate v-model="rateValue2" @change="onChange2" /> <!-- <uni-rate v-model="rateValue2" @change="onChange2" />-->
</view> <!-- </view>-->
<view class="pfcon"> <!-- <view class="pfcon">-->
<view class="pftxt">教室评价</view> <!-- <view class="pftxt">教室评价</view>-->
<uni-rate v-model="rateValue3" @change="onChange3" /> <!-- <uni-rate v-model="rateValue3" @change="onChange3" />-->
</view> <!-- </view>-->
</view> <!-- </view>-->
<view class="submitcon"> <view class="submitcon">
<button type="primary" class="bbtn" @click="submit('valiForm')"></button> <button type="primary" class="bbtn" @click="submit('valiForm')"></button>

@ -21,6 +21,7 @@
<view v-else-if="item.bookStatus==2" class="htip">待上课</view> <view v-else-if="item.bookStatus==2" class="htip">待上课</view>
<view v-else-if="item.bookStatus==4" class="wtip">已完成</view> <view v-else-if="item.bookStatus==4" class="wtip">已完成</view>
<view v-else-if="item.bookStatus==3" class="ctip">已取消</view> <view v-else-if="item.bookStatus==3" class="ctip">已取消</view>
<view v-else-if="item.bookStatus==5" class="ctip">预约失败</view>
</view> </view>
</view> </view>
@ -199,7 +200,7 @@
async stopdodo(item){ async stopdodo(item){
var param={ var param={
"bookId": item.bookId, "bookId": item.bookId,
"bookStatus": 2 "bookStatus": 5
}; };
uni.showLoading({ uni.showLoading({
title: '禁止预约中...' title: '禁止预约中...'
@ -251,7 +252,7 @@
async checkdodo(item){ async checkdodo(item){
var param={ var param={
"bookId": item.bookId, "bookId": item.bookId,
"bookStatus": 1 "bookStatus": 2
}; };
uni.showLoading({ uni.showLoading({
title: '确认预约中...' title: '确认预约中...'

@ -21,6 +21,7 @@
<view v-else-if="item.bookStatus==2" class="htip">待上课</view> <view v-else-if="item.bookStatus==2" class="htip">待上课</view>
<view v-else-if="item.bookStatus==4" class="wtip">已完成</view> <view v-else-if="item.bookStatus==4" class="wtip">已完成</view>
<view v-else-if="item.bookStatus==3" class="ctip">已取消</view> <view v-else-if="item.bookStatus==3" class="ctip">已取消</view>
<view v-else-if="item.bookStatus==5" class="ctip">预约失败</view>
</view> </view>
</view> </view>
@ -28,13 +29,13 @@
<view class="osname"> <view class="osname">
<view> <view>
<text class="txt">课程{{item.courseName}}</text> <text class="txt">课程{{item.courseName}}</text>
<text class="txt" style="margin-left: 30rpx;">班级{{item.claName}} </text> <!-- <text class="txt" style="margin-left: 30rpx;">班级{{item.claName}} </text>-->
</view> </view>
<view> <view>
<text class="txt">教练{{item.teacherName }}</text> <text class="txt">教练{{item.teacherName }}</text>
<text class="txt" style="margin-left: 30rpx;">教室{{item.roomName}}</text> <text class="txt" style="margin-left: 30rpx;">教室{{item.roomName}}</text>
</view> </view>
<text class="txt">上课时间{{ item.claDate+' '+item.startTime+(item.endTime?'-'+item.endTime:'')}}</text> <text class="txt">上课时间{{ item.claDate+' '+formatTime(item.startTime)+(item.endTime?'-'+formatTime(item.endTime):'')}}</text>
<view> <view>
<text class="txt">预约人数{{item.bookAttendCnt}}</text> <text class="txt">预约人数{{item.bookAttendCnt}}</text>
<text class="txt" style="margin-left: 30rpx;">可容纳人数{{item.atClassCnt}} </text> <text class="txt" style="margin-left: 30rpx;">可容纳人数{{item.atClassCnt}} </text>
@ -106,6 +107,10 @@
},100); },100);
}, },
methods: { methods: {
formatTime(timeStr) {
// timeStr "HH:MM:SS"
return timeStr.slice(0, 5); // 5 "HH:MM"
},
getimgRemoteFile(img){ getimgRemoteFile(img){
if(img){ if(img){
img=img.split(',')[0]; img=img.split(',')[0];
@ -199,7 +204,7 @@
async stopdodo(item){ async stopdodo(item){
var param={ var param={
"bookId": item.bookId, "bookId": item.bookId,
"bookStatus": 2 "bookStatus": 5
}; };
uni.showLoading({ uni.showLoading({
title: '禁止预约中...' title: '禁止预约中...'

@ -2,7 +2,7 @@
<view class="page"> <view class="page">
<view class="fixhead" :style="{ marginTop: geStatusBarHeight() + 'px'}"> <view class="fixhead" :style="{ marginTop: geStatusBarHeight() + 'px'}">
<selShop :showName="false" :showQR="true" :shopid="shopid" :shop="shop" @changeArea="changeArea"></selShop> <selShop :showName="true" :showQR="false" :shopid="shopid" :shop="shop" @changeArea="changeArea"></selShop>
</view> </view>
<scroll-view class="scrolllist" scroll-x="true" scroll-with-animation :scroll-left="scrollLeft"> <scroll-view class="scrolllist" scroll-x="true" scroll-with-animation :scroll-left="scrollLeft">
@ -99,7 +99,6 @@
<button type="primary" class="btn" @click="submit('valiForm')"></button> <button type="primary" class="btn" @click="submit('valiForm')"></button>
</view> </view>
</scroll-view> </scroll-view>
<!-- 体质测评 --> <!-- 体质测评 -->
<scroll-view v-else-if="list[index].id==10" scroll-y style="height: 100%;width: 100%;"> <scroll-view v-else-if="list[index].id==10" scroll-y style="height: 100%;width: 100%;">
<view class="tzcontent"> <view class="tzcontent">

@ -380,7 +380,7 @@ export default {
const that = this; const that = this;
if (this.isConnected) return; if (this.isConnected) return;
uni.connectSocket({ uni.connectSocket({
url: 'ws://192.168.13.9:8528/im', url: 'wss://www.sanduolantoyoga.com/yoga-imserver',
header: { Authorization: uni.getStorageSync('token') }, header: { Authorization: uni.getStorageSync('token') },
success: (res) => { success: (res) => {
console.log('socket连接成功', res); console.log('socket连接成功', res);

@ -111,7 +111,7 @@ export default {
}, 500) }, 500)
}, },
methods: { methods: {
...mapActions('chatStore', ['removeChat', 'moveTop']), ...mapActions('chatStore', ['removeChat', 'moveTop','loadFriend']),
// //
setBadge(count) { setBadge(count) {

@ -52,24 +52,24 @@
{{product.remarks}} {{product.remarks}}
</view> </view>
</view> </view>
<view class="pjcon"> <!-- <view class="pjcon">-->
<view class="pjitem"> <!-- <view class="pjitem">-->
<view class="pjyg">评价{{product.pjnum}}</view> <!-- <view class="pjyg">评价{{product.pjnum}}</view>-->
<view class="srpj" v-if="product.pjnum>0"> <!-- <view class="srpj" v-if="product.pjnum>0">-->
查看全部评价<uni-icons type="forward" color="#b3b3b3" size="20"></uni-icons> <!-- 查看全部评价<uni-icons type="forward" color="#b3b3b3" size="20"></uni-icons>-->
</view> <!-- </view>-->
</view> <!-- </view>-->
<view class="pjitem" v-if="product.pjnum>0"> <!-- <view class="pjitem" v-if="product.pjnum>0">-->
<view class="pjr"> <!-- <view class="pjr">-->
<image class="img" :src="product.pjrimg"></image> <!-- <image class="img" :src="product.pjrimg"></image>-->
<text class="ptxt">{{product.pjname}}</text> <!-- <text class="ptxt">{{product.pjname}}</text>-->
<text class="ptxt">{{product.pjdate}}</text> <!-- <text class="ptxt">{{product.pjdate}}</text>-->
</view> <!-- </view>-->
</view> <!-- </view>-->
<view class="pjitem"> <!-- <view class="pjitem">-->
{{product.pjcontent}} <!-- {{product.pjcontent}}-->
</view> <!-- </view>-->
</view> <!-- </view>-->
<view> <view>
<button type="primary" class="cbtn" @tap="gotoCourse()"></button> <button type="primary" class="cbtn" @tap="gotoCourse()"></button>
</view> </view>

@ -6,7 +6,7 @@
<view class="leftarr"> <view class="leftarr">
<uni-icons type="back" size="24" color="#fff" @tap="gotoBack"></uni-icons> <uni-icons type="back" size="24" color="#fff" @tap="gotoBack"></uni-icons>
</view> </view>
<selShop :showName="false" :showQR="true" :shopid="shopid" :shop="shop" @changeArea="changeArea"></selShop> <selShop :showName="true" :showQR="false" :shopid="shopid" :shop="shop" @changeArea="changeArea"></selShop>
</view> </view>
<view class="hcon"> <view class="hcon">
<uni-search-bar @confirm="search" @input="input" :focus="false" @focus="focus" v-model="searchValue" <uni-search-bar @confirm="search" @input="input" :focus="false" @focus="focus" v-model="searchValue"

@ -24,16 +24,16 @@
</view> </view>
<!-- 标签信息 --> <!-- 标签信息 -->
<view class="tips"> <!-- <view class="tips">-->
<view class="tip"> <!-- <view class="tip">-->
<image class="tip-img" src="/static/image/bz.png" mode="aspectFill"></image> <!-- <image class="tip-img" src="/static/image/bz.png" mode="aspectFill"></image>-->
<text class="tip-txt">商家24H发货,第三方物流配送,免运费</text> <!-- <text class="tip-txt">商家24H发货,第三方物流配送,免运费</text>-->
</view> <!-- </view>-->
<view class="tip"> <!-- <view class="tip">-->
<image class="tip-img" src="/static/image/thh.png" mode="aspectFill"></image> <!-- <image class="tip-img" src="/static/image/thh.png" mode="aspectFill"></image>-->
<text class="tip-txt">不支持7天无理由退换货</text> <!-- <text class="tip-txt">不支持7天无理由退换货</text>-->
</view> <!-- </view>-->
</view> <!-- </view>-->
<!-- 商品信息 --> <!-- 商品信息 -->
<view class="s-list"> <view class="s-list">
@ -67,24 +67,24 @@
<uni-icons type="forward" color="#b3b3b3" size="20"></uni-icons> <uni-icons type="forward" color="#b3b3b3" size="20"></uni-icons>
</view> </view>
<view class="pjcon"> <!-- <view class="pjcon">-->
<view class="pjitem"> <!-- <view class="pjitem">-->
<view class="pjyg">评价{{product.pjnum}}</view> <!-- <view class="pjyg">评价{{product.pjnum}}</view>-->
<view class="srpj" v-if="product.pjnum>0"> <!-- <view class="srpj" v-if="product.pjnum>0">-->
查看全部评价<uni-icons type="forward" color="#b3b3b3" size="20"></uni-icons> <!-- 查看全部评价<uni-icons type="forward" color="#b3b3b3" size="20"></uni-icons>-->
</view> <!-- </view>-->
</view> <!-- </view>-->
<view class="pjitem" v-if="product.pjnum>0"> <!-- <view class="pjitem" v-if="product.pjnum>0">-->
<view class="pjr"> <!-- <view class="pjr">-->
<image class="img" :src="product.pjrimg"></image> <!-- <image class="img" :src="product.pjrimg"></image>-->
<text class="ptxt">{{product.pjname}}</text> <!-- <text class="ptxt">{{product.pjname}}</text>-->
<text class="ptxt">{{product.pjdate}}</text> <!-- <text class="ptxt">{{product.pjdate}}</text>-->
</view> <!-- </view>-->
</view> <!-- </view>-->
<view class="pjitem"> <!-- <view class="pjitem">-->
{{product.pjcontent}} <!-- {{product.pjcontent}}-->
</view> <!-- </view>-->
</view> <!-- </view>-->
<view class="ocen"> <view class="ocen">
<view class="title">商品参数</view> <view class="title">商品参数</view>

@ -2,7 +2,7 @@
<view class="page"> <view class="page">
<view class="fixhead" :style="{ marginTop: geStatusBarHeight() + 'px'}"> <view class="fixhead" :style="{ marginTop: geStatusBarHeight() + 'px'}">
<selShop :showName="false" :showQR="true" :shopid="shopid" :shop="shop" @changeArea="changeArea"></selShop> <selShop :showName="true" :showQR="false" :shopid="shopid" :shop="shop" @changeArea="changeArea"></selShop>
<view @tap="gotoSearch" > <view @tap="gotoSearch" >
<uni-search-bar v-model="searchValue" placeholder="请输入关键字" bg-color="#FFFFFF" :readonly="true"></uni-search-bar> <uni-search-bar v-model="searchValue" placeholder="请输入关键字" bg-color="#FFFFFF" :readonly="true"></uni-search-bar>
</view> </view>

@ -36,7 +36,7 @@
<view class="olist"> <view class="olist">
<view class="tip"> <view class="tip">
<text style="color:#000;font-weight: 600;">包裹{{index+1}}快递发货</text> <text style="color:#000;font-weight: 600;">包裹{{index+1}}快递发货</text>
<text style="margin-left: 10rpx;">商家24H发货第三方物流配送 免运费</text> <!-- <text style="margin-left: 10rpx;">商家24H发货第三方物流配送 免运费</text>-->
</view> </view>
<view class="oscon"> <view class="oscon">
<view class="osimg imgload"> <view class="osimg imgload">

@ -33,30 +33,29 @@
<scroll-view scroll-y style="height: 100%;width: 100%;"> <scroll-view scroll-y style="height: 100%;width: 100%;">
<view class="scell" v-if="tabItem.slist.length>0"> <view class="scell" v-if="tabItem.slist.length>0">
<view v-for="(item, index) in tabItem.slist" :key="index" class="oitem"> <view v-for="(item, index) in tabItem.slist" :key="index" class="oitem">
<view class="otop"> <view class="otop">
<view class="hleft"> <view class="hleft">
{{item.courseName||'-'}} {{item.storeName||'-'}}
</view> </view>
<view class="hright"> <view class="hright">
{{item.startTime+'-'+item.endTime}} {{formatTime(item.startTime)+' - '+formatTime(item.endTime)}}
</view> </view>
</view> </view>
<view class="oscon"> <view class="oscon">
<view class="osimg imgload"> <view class="osimg imgload">
<image class="osimg" v-if="item.pic" :src="getimgRemoteFile(item.pic)" mode="aspectFill"></image> <image v-if="item.pic" :src="getimgRemoteFile(item.pic)" mode="aspectFill"></image>
</view> </view>
<view class="osname"> <view class="osname">
<view class="oscell"> <view class="oscell">
<!-- <view v-if="item.claName=='团课'" class="txtbg">{{item.claName}}</view> <!-- <view v-if="item.claName=='团课'" class="txtbg">{{item.claName}}</view>
<view v-else class="txtbg1">{{item.claName}}</view> --> <view v-else class="txtbg1">{{item.claName}}</view> -->
<view v-if="item.claName" class="txtbg1">{{item.claName}}</view> <!-- <view v-if="item.claName" class="txtbg1">{{item.claName}}</view>-->
<uni-rate :size="15" :readonly="true" :value="item.star?item.star:5" :max="5"/> <uni-rate :size="15" :readonly="true" :value="item.star?item.star:0" :max="5"/>
</view> </view>
<view class="oscell" v-if="item.storeName"> <view class="oscell" v-if="item.storeName">
<uni-icons type="paperclip" size="18" color="#00A99A"></uni-icons> <uni-icons type="paperclip" size="18" color="#00A99A"></uni-icons>
<view class="ntip">{{item.storeName}}</view> <view class="ntip">{{item.courseName}}</view>
</view> </view>
<view class="oscell"> <view class="oscell">
<uni-icons type="calendar" size="18" color="#00A99A"></uni-icons> <uni-icons type="calendar" size="18" color="#00A99A"></uni-icons>
@ -82,7 +81,7 @@
</view> </view>
<view class="rcpm"> <view class="rcpm">
<button type="primary" class="orderbtn" @click="gotoorder(item)"></button> <button type="primary" class="orderbtn" @click="gotoorder(item)"></button>
<button type="primary" class="sharebtn" @click="gotoshare(item)"></button> <!-- <button type="primary" class="sharebtn" @click="gotoshare(item)"></button>-->
</view> </view>
</view> </view>
@ -141,8 +140,8 @@
<view class="ctxt">{{dd.claName}}</view> <view class="ctxt">{{dd.claName}}</view>
<view class="ctxt" v-if="dd.staffName">{{dd.staffName}}</view> <view class="ctxt" v-if="dd.staffName">{{dd.staffName}}</view>
<view class="ctxt" v-if="dd.roomName">{{dd.roomName}}</view> <view class="ctxt" v-if="dd.roomName">{{dd.roomName}}</view>
<button v-if="dd.claTimeStatus=='1'" type="primary" class="orderbtn" @click="gotoorder(dd)"></button> <button v-if="dd.claTimeStatus=='1'" type="primary" class="orderbtn" style="width: 80%;" @click="gotoorder(dd)"></button>
<view v-else class="noorderbtn">不可预约</view> <!-- <view v-else class="noorderbtn">不可预约</view>-->
</view> </view>
</block> </block>
</block> </block>
@ -679,6 +678,10 @@
},100); },100);
}, },
methods: { methods: {
formatTime(timeStr) {
// timeStr "HH:MM:SS"
return timeStr.slice(0, 5); // 5 "HH:MM"
},
closeDialog(){ closeDialog(){
this.$refs.pfDialog.close(); this.$refs.pfDialog.close();
}, },
@ -1067,9 +1070,14 @@
align-items: center; align-items: center;
width: 100%; width: 100%;
.osimg{ .osimg{
width: 160rpx; width: 200rpx;
height: 260rpx; height: 200rpx;
margin-right: 10rpx;
>image {
width: 200rpx;
height: 200rpx;
border-radius: 10rpx; border-radius: 10rpx;
}
} }
.osname{ .osname{
display: flex; display: flex;

@ -528,14 +528,14 @@
return { intPart, decimalPart }; return { intPart, decimalPart };
}, },
navToList(item){ navToList(item){
if(item.type==1){ if(item.isCourse==1){
uni.navigateTo({ uni.navigateTo({
url: `/pages/product/detail?id=${item.id}` url: `/pages/product/cdetail?id=${item.id}`
}) })
} }
else if(item.type==2){ else {
uni.navigateTo({ uni.navigateTo({
url: `/pages/product/cdetail?id=${item.id}` url: `/pages/product/detail?id=${item.id}`
}) })
} }
}, },

@ -1,10 +1,10 @@
<template> <template>
<view class="page"> <view class="page">
<view class="swiper-bg"> <!-- <view class="swiper-bg">-->
<uni-search-bar @confirm="search" :focus="false" v-model="searchValue" placeholder="请输入关键字" <!-- <uni-search-bar @confirm="search" :focus="false" v-model="searchValue" placeholder="请输入关键字" -->
bg-color="#FFFFFF" @cancel="cancel" @clear="clear"> <!-- bg-color="#FFFFFF" @cancel="cancel" @clear="clear">-->
</uni-search-bar> <!-- </uni-search-bar>-->
</view> <!-- </view>-->
<!-- 列表 --> <!-- 列表 -->
<view class="f-list"> <view class="f-list">
<view class="guess-section" v-if="goodsList.length>0"> <view class="guess-section" v-if="goodsList.length>0">
@ -29,34 +29,54 @@
</view> </view>
</view> </view>
<view class="pcon"> <view class="pcon">
<view class="ptxt" style="width: 280rpx;"> <view class="ptxt" style="width: 350rpx;">
课程{{item.courseName}} 卡号{{item.cardNo}}
</view> </view>
</view>
<view class="pcon">
<view class="ptxt"> <view class="ptxt">
收费模式{{ item.chargeType?retStr(item.chargeType):'其他' }} 收费模式{{ item.chargeType?retStr(item.chargeType):'其他' }}
</view> </view>
</view> </view>
<view class="pcon"> <view class="pcon">
<view class="ptxt"> <view v-if="item.chargeType == 'count'">
次数{{item.count}} <view class="ptxt" >
总次数{{item.count}}
</view> </view>
<view class="ptxt" >
剩余次数{{item.remainingCount}}
</view> </view>
<view class="pcon">
<view class="ptxt">
时间{{item.days}}
</view> </view>
<view v-if="item.chargeType == 'count'" >
<view class="ptxt" >
总天数{{item.days}}
</view>
<view class="ptxt" >
剩余天数{{item.remainingDays}}
</view>
</view>
<view v-if="item.chargeType == 'total_fee'">
<view class="ptxt" >
储值金额{{item.totalFee}}
</view>
<view class="ptxt" >
剩余金额{{item.remainingTotalFee}}
</view>
</view>
</view> </view>
<view class="pcon"> <view class="pcon">
<view class="ptxt" style="width: 280rpx;"> <view class="ptxt" >
收费{{item.receiptFee}} 收费{{item.receiptFee}}
</view> </view>
<view class="ptxt">
储值{{item.totalFee}}
</view> </view>
<view class="pcon" v-if="item.expireDate">
<view class="ptxt" style="width: 300rpx;">
激活日期{{item.beginDate? item.beginDate:'未激活'}}
</view> </view>
<view class="pcon">
<view class="ptxt"> <view class="ptxt">
有限期限{{(item.beginDate?item.beginDate:' — ')+'至'+(item.expireDate?item.expireDate:' — ')}} 到期日期{{item.expireDate}}
</view> </view>
</view> </view>
</view> </view>
@ -228,7 +248,7 @@
} }
if (res1.data&&res1.data.length>0) { if (res1.data&&res1.data.length>0) {
this.loadStatus="noMore"; this.loadStatus="noMore";
this.contentText.contentnomore="没有数据了..."; this.contentText.contentnomore="";
this.goodsList=res1.data; this.goodsList=res1.data;
this.$forceUpdate(); this.$forceUpdate();
} }

@ -59,12 +59,12 @@
<view class="title">{{servers[5].name}}</view> <view class="title">{{servers[5].name}}</view>
</view> </view>
<!-- 设置 --> <!-- 设置 -->
<view class="product-item" @click="gotoServe(0)"> <!-- <view class="product-item" @click="gotoServe(0)">-->
<view class="image-wrapper"> <!-- <view class="image-wrapper">-->
<image class="imgicon" :src="servers[0].img" mode="aspectFill" lazy-load></image> <!-- <image class="imgicon" :src="servers[0].img" mode="aspectFill" lazy-load></image>-->
</view> <!-- </view>-->
<view class="title">{{servers[0].name}}</view> <!-- <view class="title">{{servers[0].name}}</view>-->
</view> <!-- </view>-->
<!-- 收货地址 --> <!-- 收货地址 -->
<view class="product-item" @click="gotoServe(1)"> <view class="product-item" @click="gotoServe(1)">
<view class="image-wrapper"> <view class="image-wrapper">
@ -290,8 +290,8 @@
}, },
{ {
key:13, key:13,
img:'../../static/image/yyjl.png', img:'../../static/image/sj.png',
name:'预约学员',// name:'全店预约学员',//
}, },
{ {
key:14, key:14,

Loading…
Cancel
Save