Merge branch 'master' of http://47.115.223.229:8888/yangjun/sadjv3_user
This commit is contained in:
commit
2ab61d5296
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name" : "盛安到家",
|
||||
"appid" : "__UNI__0A81F4F",
|
||||
"appid" : "__UNI__807ED4C",
|
||||
"description" : "",
|
||||
"versionName" : "1.0.1",
|
||||
"versionCode" : 101,
|
||||
|
|
|
@ -262,7 +262,7 @@
|
|||
</uni-popup>
|
||||
<view>
|
||||
<!-- 提前结束 -->
|
||||
<uni-popup ref="popup" background-color="#fff">
|
||||
<uni-popup class="popup-view" ref="popup" background-color="#fff">
|
||||
<view class="popup-content">
|
||||
<view class="popup-close"><image @click="closePopup(type)" class="popup-close-img" src="../../static/close.png"></image></view>
|
||||
<!--<view class="popup-head">
|
||||
|
@ -401,7 +401,8 @@
|
|||
cuowu:'',
|
||||
type:'center',
|
||||
parType:'',
|
||||
contentVideo:''
|
||||
contentVideo:'',
|
||||
type:'center'
|
||||
}
|
||||
},
|
||||
onShareAppMessage(res) { //发送给朋友
|
||||
|
@ -695,7 +696,7 @@
|
|||
this.$refs.popup.close(type);
|
||||
},
|
||||
gangBtn(type){
|
||||
this.$refs.popup.open(type)
|
||||
this.$refs.popup.open('center')
|
||||
},
|
||||
qidai(){
|
||||
uni.showToast({
|
||||
|
@ -1171,6 +1172,11 @@
|
|||
</script>
|
||||
|
||||
<style scoped>
|
||||
.popup-view /deep/.uni-popup__wrapper-box{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
/deep/.uni-video-fullscreen {
|
||||
display: none;
|
||||
}
|
||||
|
|
|
@ -28,10 +28,10 @@
|
|||
|
||||
<!-- 注意注意注意!!字节跳动小程序中自定义下拉刷新不支持slot-scope,将导致custom-refresher无法显示 -->
|
||||
<!-- 如果是字节跳动小程序,请参照sticky-demo.vue中的写法,此处使用slot-scope是为了减少data中无关变量声明,降低依赖 -->
|
||||
<template #refresher="{refresherStatus}" >
|
||||
<!-- <template #refresher="{refresherStatus}" >-->
|
||||
<!-- 此处的custom-refresh为demo中自定义的组件,非z-paging的内置组件,请在实际项目中自行创建。这里插入什么view,下拉刷新就显示什么view -->
|
||||
<custom-refresher :status="refresherStatus" />
|
||||
</template>
|
||||
<!-- <custom-refresher :status="refresherStatus" />-->
|
||||
<!-- </template>-->
|
||||
<!-- 自定义没有更多数据view -->
|
||||
<template #loadingMoreNoMore >
|
||||
<!-- 此处的custom-nomore为demo中自定义的组件,非z-paging的内置组件,请在实际项目中自行创建。这里插入什么view,没有更多数据就显示什么view -->
|
||||
|
@ -100,12 +100,11 @@
|
|||
},
|
||||
onLoad(){
|
||||
this.myId = uni.getStorageSync('userId')
|
||||
this.getData()
|
||||
// this.getData()
|
||||
},
|
||||
methods: {
|
||||
input(res) {//搜索 输入框
|
||||
this.searchValue=res;
|
||||
console.log('----input:', res)
|
||||
},
|
||||
searchBtn(){//搜索按钮
|
||||
if(this.searchValue!=""){
|
||||
|
@ -113,21 +112,22 @@
|
|||
}
|
||||
},
|
||||
getData(){
|
||||
let data = {
|
||||
userId: this.myId,
|
||||
type: this.typeData,
|
||||
page: this.page,
|
||||
limit: this.limit,
|
||||
title:this.searchValue,
|
||||
}
|
||||
this.$Request.get('/app/user/package/findMyPackageList', data).then(res => {
|
||||
if (res.code == 0) {
|
||||
this.dataList=res.data.records;
|
||||
for(var i=0;i<this.dataList.length;i++){
|
||||
this.dataList[i].tagsData=this.dataList[i].labels.split(',');
|
||||
}
|
||||
}
|
||||
})
|
||||
// let data = {
|
||||
// userId: this.myId,
|
||||
// type: this.typeData,
|
||||
// page: this.page,
|
||||
// limit: this.limit,
|
||||
// title:this.searchValue,
|
||||
// }
|
||||
// this.$Request.get('/app/user/package/findMyPackageList', data).then(res => {
|
||||
// if (res.code == 0) {
|
||||
// this.dataList=res.data.records;
|
||||
// for(var i=0;i<this.dataList.length;i++){
|
||||
// this.dataList[i].tagsData=this.dataList[i].labels.split(',');
|
||||
// }
|
||||
// }
|
||||
// })
|
||||
this.$refs.paging.reload(true);
|
||||
},
|
||||
tabChange(index) {
|
||||
this.tabIndex = index;
|
||||
|
@ -145,10 +145,13 @@
|
|||
page: pageNo,
|
||||
limit: pageSize,
|
||||
type: this.typeData,
|
||||
title:''
|
||||
title:this.searchValue,
|
||||
}
|
||||
this.$Request.get('/app/user/package/findMyPackageList',params).then(res => {
|
||||
// 将请求的结果数组传递给z-paging
|
||||
for(var i=0;i<res.data.records.length;i++){
|
||||
res.data.records[i].tagsData=res.data.records[i].labels.split(',');
|
||||
}
|
||||
this.$refs.paging.complete(res.data.records);
|
||||
}).catch(res => {
|
||||
// 如果请求失败写this.$refs.paging.complete(false);
|
||||
|
@ -157,7 +160,6 @@
|
|||
this.$refs.paging.complete(false);
|
||||
})
|
||||
},
|
||||
|
||||
backImg(){//返回上一页
|
||||
uni.reLaunch({
|
||||
url:'/pages/my/index'
|
||||
|
|
|
@ -18,9 +18,9 @@
|
|||
</view>
|
||||
</view>
|
||||
</template>
|
||||
<template #refresher="{refresherStatus}" >
|
||||
<!-- <template #refresher="{refresherStatus}" >
|
||||
<custom-refresher :status="refresherStatus" />
|
||||
</template>
|
||||
</template> -->
|
||||
<template #loadingMoreNoMore >
|
||||
<custom-nomore />
|
||||
</template>
|
||||
|
|
|
@ -28,10 +28,10 @@
|
|||
|
||||
<!-- 注意注意注意!!字节跳动小程序中自定义下拉刷新不支持slot-scope,将导致custom-refresher无法显示 -->
|
||||
<!-- 如果是字节跳动小程序,请参照sticky-demo.vue中的写法,此处使用slot-scope是为了减少data中无关变量声明,降低依赖 -->
|
||||
<template #refresher="{refresherStatus}">
|
||||
<!-- <template #refresher="{refresherStatus}">-->
|
||||
<!-- 此处的custom-refresh为demo中自定义的组件,非z-paging的内置组件,请在实际项目中自行创建。这里插入什么view,下拉刷新就显示什么view -->
|
||||
<custom-refresher :status="refresherStatus" />
|
||||
</template>
|
||||
<!-- <custom-refresher :status="refresherStatus" />-->
|
||||
<!-- </template>-->
|
||||
<!-- 自定义没有更多数据view -->
|
||||
<template #loadingMoreNoMore>
|
||||
<!-- 此处的custom-nomore为demo中自定义的组件,非z-paging的内置组件,请在实际项目中自行创建。这里插入什么view,没有更多数据就显示什么view -->
|
||||
|
@ -112,21 +112,22 @@
|
|||
}
|
||||
},
|
||||
getData(){
|
||||
let data = {
|
||||
userId: this.myId,
|
||||
type: this.typeData,
|
||||
page: this.page,
|
||||
limit: this.limit,
|
||||
title:this.searchValue,
|
||||
}
|
||||
this.$Request.get('/app/user/package/findMyPackageList', data).then(res => {
|
||||
if (res.code == 0) {
|
||||
this.dataList=res.data.records;
|
||||
for(var i=0;i<this.dataList.length;i++){
|
||||
this.dataList[i].tagsData=this.dataList[i].labels.split(',');
|
||||
}
|
||||
}
|
||||
})
|
||||
// let data = {
|
||||
// userId: this.myId,
|
||||
// type: this.typeData,
|
||||
// page: this.page,
|
||||
// limit: this.limit,
|
||||
// title:this.searchValue,
|
||||
// }
|
||||
// this.$Request.get('/app/user/package/findMyPackageList', data).then(res => {
|
||||
// if (res.code == 0) {
|
||||
// this.dataList=res.data.records;
|
||||
// for(var i=0;i<this.dataList.length;i++){
|
||||
// this.dataList[i].tagsData=this.dataList[i].labels.split(',');
|
||||
// }
|
||||
// }
|
||||
// })
|
||||
this.$refs.paging.reload(true);
|
||||
},
|
||||
tabChange(index) {
|
||||
this.tabIndex = index;
|
||||
|
@ -144,10 +145,13 @@
|
|||
page: pageNo,
|
||||
limit: pageSize,
|
||||
type: this.typeData,
|
||||
title:''
|
||||
title:this.searchValue,
|
||||
}
|
||||
this.$Request.get('/app/user/package/findMyPackageList',params).then(res => {
|
||||
// 将请求的结果数组传递给z-paging
|
||||
for(var i=0;i<res.data.records.length;i++){
|
||||
res.data.records[i].tagsData=res.data.records[i].labels.split(',');
|
||||
}
|
||||
this.$refs.paging.complete(res.data.records);
|
||||
}).catch(res => {
|
||||
// 如果请求失败写this.$refs.paging.complete(false);
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
<!-- 自定义下拉刷新与上拉加载演示(vue) -->
|
||||
<template>
|
||||
<view class="content-view">
|
||||
<view class="tab-view">
|
||||
<z-paging ref="paging" v-model="dataList" @query="queryList">
|
||||
<template #top>
|
||||
<view class="service-head-top">
|
||||
<view class="service-head-top-left">
|
||||
<image @click="backImg" src="../../static/fanhui.png" mode="widthFix"></image>
|
||||
|
@ -19,9 +20,10 @@
|
|||
<view class="fenlei">
|
||||
<z-tabs class="z-tabs-fenlei" :list="tabList" @change="tabChange" @changeClick="changeClick"/>
|
||||
</view>
|
||||
</view>
|
||||
<t-refresh ref="refresh" v-if="dataList.length>0" @refresh="refresh" @loadMore="loadMore" :loadingType="loadingType" :tPadding="0">
|
||||
<template slot="content">
|
||||
</template>
|
||||
<template #loadingMoreNoMore >
|
||||
<custom-nomore />
|
||||
</template>
|
||||
<view class="item" v-for="(item,index) in dataList" :key="index" @click="itemClick(item)">
|
||||
<view class="item-img">
|
||||
<image :src="item.massageImg" mode=""></image>
|
||||
|
@ -57,18 +59,12 @@
|
|||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
</t-refresh>
|
||||
<empty v-if="dataList.length==0"></empty>
|
||||
|
||||
</z-paging>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import empty from '@/components/empty.vue'
|
||||
import tRefresh from "@/components/t-refresh/t-refresh.vue"
|
||||
export default {
|
||||
components:{tRefresh,empty},
|
||||
data() {
|
||||
return {
|
||||
loadingType:0,
|
||||
|
@ -91,24 +87,24 @@
|
|||
this.myId = uni.getStorageSync('userId')
|
||||
this.tabNav()
|
||||
},
|
||||
onPullDownRefresh: function() {
|
||||
this.page = 1;
|
||||
this.getData()
|
||||
},
|
||||
// onPullDownRefresh: function() {
|
||||
// this.page = 1;
|
||||
// this.getData()
|
||||
// },
|
||||
methods: {
|
||||
// 加载更多
|
||||
loadMore: async function() {
|
||||
//loadingType: 0.数据未加载完 1.数据全部加载完了 2.数据加载中
|
||||
if(this.loadingType==0){
|
||||
this.loadingType=2
|
||||
//模拟数据请求
|
||||
setTimeout(()=>{
|
||||
this.page++;
|
||||
this.loadingType=0;
|
||||
this.getData()
|
||||
},1000)
|
||||
}
|
||||
},
|
||||
// loadMore: async function() {
|
||||
// //loadingType: 0.数据未加载完 1.数据全部加载完了 2.数据加载中
|
||||
// if(this.loadingType==0){
|
||||
// this.loadingType=2
|
||||
// //模拟数据请求
|
||||
// setTimeout(()=>{
|
||||
// this.page++;
|
||||
// this.loadingType=0;
|
||||
// this.getData()
|
||||
// },1000)
|
||||
// }
|
||||
// },
|
||||
tabNav(){
|
||||
let data = {
|
||||
type: "服务类型",
|
||||
|
@ -125,7 +121,6 @@
|
|||
},
|
||||
input(res) {//搜索 输入框
|
||||
this.searchValue=res;
|
||||
console.log('----input:', res)
|
||||
},
|
||||
searchBtn(){//搜索按钮
|
||||
if(this.searchValue!=""){
|
||||
|
@ -133,25 +128,44 @@
|
|||
}
|
||||
},
|
||||
getData(){
|
||||
this.$Request.get("/app/artificer/selectMassageTypePage", {
|
||||
// this.$Request.get("/app/artificer/selectMassageTypePage", {
|
||||
// by: '3',
|
||||
// status:'1',
|
||||
// classifyId:this.classifyId,
|
||||
// page:this.page,
|
||||
// limit:this.limit,
|
||||
// title:this.searchValue
|
||||
// }).then(res => {
|
||||
// if (res.code == 0) {
|
||||
// if (res.data) {
|
||||
// if (this.page == 1) this.dataList = []; //如果是第一页需手动制空列表
|
||||
// this.dataList = [...this.dataList, ...res.data.list]; //追加新数据
|
||||
// for(var i=0;i<this.dataList.length;i++){
|
||||
// this.dataList[i].tagsData=this.dataList[i].labels.split(',');
|
||||
// }
|
||||
// uni.stopPullDownRefresh()
|
||||
// }
|
||||
// }
|
||||
// });
|
||||
this.$refs.paging.reload(true);
|
||||
},
|
||||
queryList(pageNo, pageSize) {
|
||||
const params = {
|
||||
page: pageNo,
|
||||
limit: pageSize,
|
||||
by: '3',
|
||||
status:'1',
|
||||
classifyId:this.classifyId,
|
||||
page:this.page,
|
||||
limit:this.limit,
|
||||
title:this.searchValue
|
||||
}).then(res => {
|
||||
if (res.code == 0) {
|
||||
if (res.data) {
|
||||
if (this.page == 1) this.dataList = []; //如果是第一页需手动制空列表
|
||||
this.dataList = [...this.dataList, ...res.data.list]; //追加新数据
|
||||
for(var i=0;i<this.dataList.length;i++){
|
||||
this.dataList[i].tagsData=this.dataList[i].labels.split(',');
|
||||
}
|
||||
uni.stopPullDownRefresh()
|
||||
this.$Request.get('/app/artificer/selectMassageTypePage',params).then(res => {
|
||||
for(var i=0;i<res.data.list.length;i++){
|
||||
res.data.list[i].tagsData=res.data.list[i].labels.split(',');
|
||||
}
|
||||
}
|
||||
});
|
||||
this.$refs.paging.complete(res.data.list);
|
||||
}).catch(res => {
|
||||
this.$refs.paging.complete(false);
|
||||
})
|
||||
},
|
||||
changeClick(index,item){
|
||||
this.classifyId=item.id
|
||||
|
|
|
@ -106,11 +106,11 @@
|
|||
</view>
|
||||
<view class="my-serve-list" @click="tuangou()">
|
||||
<image src="../../static/my-liaocheng2.png" mode=""></image>
|
||||
<span class="my-serve-list-text">新人拼团</span>
|
||||
<span class="my-serve-list-text">拼团</span>
|
||||
</view>
|
||||
<view class="my-serve-list" @click="miaoshao()">
|
||||
<image src="../../static/my-liaocheng3.png" mode=""></image>
|
||||
<span class="my-serve-list-text">秒杀</span>
|
||||
<span class="my-serve-list-text">限时秒杀</span>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -167,7 +167,6 @@
|
|||
<view class="prompt-text">-当你累了 想起盛安到家-</view>
|
||||
<view class="kefu" @click="goMsg">
|
||||
<image src="../../static/kefu.png" mode=""></image>
|
||||
<span>联系客服</span>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
@ -703,9 +702,8 @@
|
|||
position: fixed;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
margin-bottom: 20%;
|
||||
margin-bottom:100rpx;
|
||||
margin-right: 20px;
|
||||
background-color: #fff;
|
||||
border-radius: 5px;
|
||||
}
|
||||
.shop_label{
|
||||
|
@ -869,6 +867,7 @@
|
|||
height: 170rpx;
|
||||
text-align: top;
|
||||
text-align: center;
|
||||
padding: 20rpx 0;
|
||||
}
|
||||
.my-use-list-text{
|
||||
color: #6C6C6C;
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
<!-- 自定义下拉刷新与上拉加载演示(vue) -->
|
||||
<template>
|
||||
<view class="content-view">
|
||||
<view class="tab-view">
|
||||
<z-paging ref="paging" v-model="dataList" @query="queryList">
|
||||
<template #top>
|
||||
<view class="service-head-top">
|
||||
<view class="service-head-top-left">
|
||||
<image @click="backImg" src="../../static/fanhui.png" mode="widthFix"></image>
|
||||
|
@ -20,12 +21,11 @@
|
|||
<view class="fenlei">
|
||||
<z-tabs class="z-tabs-fenlei":list="tabList" @change="tabChange" @changeClick="changeClick"/>
|
||||
</view>
|
||||
</view>
|
||||
<t-refresh ref="refresh" v-if="dataList.length>0" @refresh="refresh" @loadMore="loadMore" :loadingType="loadingType" :tPadding="0" style="padding-bottom: 100px;">
|
||||
<template slot="content">
|
||||
<view style="height: 10rpx;"></view>
|
||||
</template>
|
||||
<template #loadingMoreNoMore >
|
||||
<custom-nomore />
|
||||
</template>
|
||||
<view class="item" v-for="(item,index) in dataList" :key="index" @click="itemClick(item)">
|
||||
|
||||
<image :src="item.packageImg" mode="" class="item-img"></image>
|
||||
<view class="item-view">
|
||||
<view class="view-cata">
|
||||
|
@ -55,17 +55,11 @@
|
|||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
</t-refresh>
|
||||
<empty v-if="dataList.length==0"></empty>
|
||||
</z-paging>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import empty from '@/components/empty.vue'
|
||||
import tRefresh from "@/components/t-refresh/t-refresh.vue"
|
||||
export default {
|
||||
components:{tRefresh,empty},
|
||||
data() {
|
||||
return {
|
||||
loadingType:0,
|
||||
|
@ -88,16 +82,16 @@
|
|||
this.typeData=e.type
|
||||
this.getName=e.name;
|
||||
this.myId = uni.getStorageSync('userId')
|
||||
this.getData();
|
||||
// this.getData();
|
||||
uni.setNavigationBarTitle({
|
||||
title: this.typeData=='104'?'服务套餐':this.typeData=='105'?'项目次卡':'服务疗程',
|
||||
})
|
||||
this.tabNav()
|
||||
},
|
||||
onPullDownRefresh: function() {
|
||||
this.page = 1;
|
||||
this.getData()
|
||||
},
|
||||
// onPullDownRefresh: function() {
|
||||
// this.page = 1;
|
||||
// this.getData()
|
||||
// },
|
||||
methods: {
|
||||
tabNav(){
|
||||
let data = {
|
||||
|
@ -113,30 +107,21 @@
|
|||
}
|
||||
})
|
||||
},
|
||||
changeClick(index,item){
|
||||
this.classifyId=item.id
|
||||
this.searchValue=''
|
||||
this.page = 1;
|
||||
this.dataList = []
|
||||
this.getData()
|
||||
},
|
||||
// 加载更多
|
||||
loadMore: async function() {
|
||||
//loadingType: 0.数据未加载完 1.数据全部加载完了 2.数据加载中
|
||||
if(this.loadingType==0){
|
||||
this.loadingType=2
|
||||
//模拟数据请求
|
||||
setTimeout(()=>{
|
||||
this.page++;
|
||||
this.loadingType=0;
|
||||
this.getData()
|
||||
},1000)
|
||||
}
|
||||
},
|
||||
|
||||
// loadMore: async function() {
|
||||
// //loadingType: 0.数据未加载完 1.数据全部加载完了 2.数据加载中
|
||||
// if(this.loadingType==0){
|
||||
// this.loadingType=2
|
||||
// //模拟数据请求
|
||||
// setTimeout(()=>{
|
||||
// this.page++;
|
||||
// this.loadingType=0;
|
||||
// this.getData()
|
||||
// },1000)
|
||||
// }
|
||||
// },
|
||||
input(res) {//搜索 输入框
|
||||
this.searchValue=res;
|
||||
console.log('----input:', res)
|
||||
},
|
||||
searchBtn(){//搜索按钮
|
||||
if(this.searchValue!=""){
|
||||
|
@ -145,26 +130,51 @@
|
|||
}
|
||||
},
|
||||
getData(){
|
||||
var that=this;
|
||||
that.$Request.get("/app/massage/package/findPage", {
|
||||
type:that.typeData,
|
||||
page:that.page,
|
||||
limit:that.limit,
|
||||
title:that.searchValue,
|
||||
classifyId:that.classifyId
|
||||
}).then(res => {
|
||||
if (res.code == 0) {
|
||||
if (res.data) {
|
||||
if (this.page == 1) this.dataList = []; //如果是第一页需手动制空列表
|
||||
this.dataList = [...this.dataList, ...res.data.list]; //追加新数据
|
||||
for(var i=0;i<this.dataList.length;i++){
|
||||
var tagsData=this.dataList[i].labels.split(',');
|
||||
this.dataList[i].tagsData = tagsData;
|
||||
// var that=this;
|
||||
// that.$Request.get("/app/massage/package/findPage", {
|
||||
// type:that.typeData,
|
||||
// page:that.page,
|
||||
// limit:that.limit,
|
||||
// title:that.searchValue,
|
||||
// classifyId:that.classifyId
|
||||
// }).then(res => {
|
||||
// if (res.code == 0) {
|
||||
// if (res.data) {
|
||||
// if (this.page == 1) this.dataList = []; //如果是第一页需手动制空列表
|
||||
// this.dataList = [...this.dataList, ...res.data.list]; //追加新数据
|
||||
// for(var i=0;i<this.dataList.length;i++){
|
||||
// var tagsData=this.dataList[i].labels.split(',');
|
||||
// this.dataList[i].tagsData = tagsData;
|
||||
// }
|
||||
// uni.stopPullDownRefresh()
|
||||
// }
|
||||
// }
|
||||
// });
|
||||
this.$refs.paging.reload(true);
|
||||
},
|
||||
queryList(pageNo, pageSize) {
|
||||
const params = {
|
||||
page: pageNo,
|
||||
limit: pageSize,
|
||||
type:this.typeData,
|
||||
title:this.searchValue,
|
||||
classifyId:this.classifyId
|
||||
}
|
||||
uni.stopPullDownRefresh()
|
||||
this.$Request.get('/app/massage/package/findPage',params).then(res => {
|
||||
for(var i=0;i<res.data.list.length;i++){
|
||||
res.data.list[i].tagsData=res.data.list[i].labels.split(',');
|
||||
}
|
||||
}
|
||||
});
|
||||
this.$refs.paging.complete(res.data.list);
|
||||
}).catch(res => {
|
||||
this.$refs.paging.complete(false);
|
||||
})
|
||||
},
|
||||
changeClick(index,item){
|
||||
this.classifyId=item.id
|
||||
this.searchValue=''
|
||||
this.page = 1;
|
||||
this.dataList = []
|
||||
this.getData()
|
||||
},
|
||||
backImg(){//返回上一页
|
||||
uni.reLaunch({
|
||||
|
@ -188,8 +198,6 @@
|
|||
url:'/pages/my/fuwuliaochengDetail?id='+item.id+'&limit='+this.limit+'&page='+this.page+'&name='+this.getName+'&isCanCoupon='+item.isCanCoupon
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -208,8 +216,8 @@
|
|||
flex-direction: column;
|
||||
position: fixed;
|
||||
z-index: 999;
|
||||
background:#fff linear-gradient(60deg,rgba(115, 212, 183, 0.2),rgba(227, 251, 244, 0.1),rgba(193, 236, 223, 0.35));
|
||||
border-bottom:1rpx solid #c4ede1;
|
||||
/*background:#fff linear-gradient(60deg,rgba(115, 212, 183, 0.2),rgba(227, 251, 244, 0.1),rgba(193, 236, 223, 0.35));
|
||||
border-bottom:1rpx solid #c4ede1;*/
|
||||
padding-top: 6rpx;
|
||||
}
|
||||
.shop_label{
|
||||
|
@ -285,7 +293,7 @@
|
|||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: space-between;
|
||||
justify-content: center;
|
||||
}
|
||||
.item-view-jianjie{
|
||||
font-weight: 400;
|
||||
|
@ -347,17 +355,17 @@
|
|||
white-space: nowrap;
|
||||
}
|
||||
.item-view{
|
||||
width: 55%;
|
||||
width:59%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
justify-content: space-between;
|
||||
padding: 26rpx 0;
|
||||
padding:5rpx 0;
|
||||
}
|
||||
.item-img{
|
||||
width: 285rpx;
|
||||
height: 120px;
|
||||
width: 246rpx;
|
||||
height: 206rpx;
|
||||
border-radius: 14rpx;
|
||||
position: relative;
|
||||
}
|
||||
|
@ -382,17 +390,17 @@
|
|||
height: 100%;
|
||||
}
|
||||
.item {
|
||||
width: 96%;
|
||||
margin: 0 2% ;
|
||||
width: 100%;
|
||||
margin:0 auto;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: space-between;
|
||||
height: 140px;
|
||||
/*height: 140px;*/
|
||||
background: #FFFFFF;
|
||||
border-radius: 21rpx;
|
||||
margin-top:10px;
|
||||
align-items: center;
|
||||
padding: 0px 10px;
|
||||
padding:16rpx;
|
||||
}
|
||||
|
||||
.item-detail {
|
||||
|
@ -461,14 +469,15 @@
|
|||
/deep/.uni-searchbar{
|
||||
width:240px;
|
||||
border-radius: 31rpx;
|
||||
padding-right: 24rpx;
|
||||
}
|
||||
.search-btn{
|
||||
text-align: center;
|
||||
color: #111;
|
||||
font-weight: bold;
|
||||
position: absolute;
|
||||
right:50rpx;
|
||||
top: 26rpx;
|
||||
right:40rpx;
|
||||
top: 19rpx;
|
||||
font-size: 30rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
|
|
@ -90,7 +90,7 @@
|
|||
</view>
|
||||
|
||||
<view class="detail-foot-title">
|
||||
服务项目{{index+1}}
|
||||
服务项目
|
||||
</view>
|
||||
</view>
|
||||
<view style="height: 70rpx;"></view>
|
||||
|
@ -239,6 +239,7 @@
|
|||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-around;
|
||||
|
||||
}
|
||||
.detail-view-img{
|
||||
width: 80px;
|
||||
|
@ -251,6 +252,8 @@
|
|||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
margin-top: 5px;
|
||||
height: 100px;
|
||||
}
|
||||
/deep/uni-checkbox .uni-checkbox-input{
|
||||
width: 26px;
|
||||
|
@ -594,7 +597,7 @@
|
|||
margin-left: 5px;
|
||||
}
|
||||
.header-bottom-money-zhen span{
|
||||
color: #F95900;
|
||||
color: #FF1200;
|
||||
}
|
||||
.header-bottom-money-zhen span:nth-child(1){
|
||||
font-size: 26rpx;
|
||||
|
|
|
@ -28,10 +28,10 @@
|
|||
|
||||
<!-- 注意注意注意!!字节跳动小程序中自定义下拉刷新不支持slot-scope,将导致custom-refresher无法显示 -->
|
||||
<!-- 如果是字节跳动小程序,请参照sticky-demo.vue中的写法,此处使用slot-scope是为了减少data中无关变量声明,降低依赖 -->
|
||||
<template #refresher="{refresherStatus}" >
|
||||
<!-- <template #refresher="{refresherStatus}" >-->
|
||||
<!-- 此处的custom-refresh为demo中自定义的组件,非z-paging的内置组件,请在实际项目中自行创建。这里插入什么view,下拉刷新就显示什么view -->
|
||||
<custom-refresher :status="refresherStatus" />
|
||||
</template>
|
||||
<!-- <custom-refresher :status="refresherStatus" />-->
|
||||
<!-- </template>-->
|
||||
<!-- 自定义没有更多数据view -->
|
||||
<template #loadingMoreNoMore >
|
||||
<!-- 此处的custom-nomore为demo中自定义的组件,非z-paging的内置组件,请在实际项目中自行创建。这里插入什么view,没有更多数据就显示什么view -->
|
||||
|
@ -49,7 +49,7 @@
|
|||
</view>
|
||||
<view class="item-view" v-if="text=='index'">
|
||||
<view class="view-cata">
|
||||
<view class="item-view-title">{{item.title}}</view>
|
||||
<view class="item-view-title">{{item.title}}1111</view>
|
||||
</view>
|
||||
<view class="shop_label" v-if="item.tagsData!=''">
|
||||
<span v-for="tag in item.tagsData" :key="tag">{{tag}}</span>
|
||||
|
@ -83,9 +83,12 @@
|
|||
<span>¥</span>
|
||||
<span>{{item.oldPrice}}</span>
|
||||
</view>
|
||||
<view class="shop_label" v-if="item.tagsData">
|
||||
<view class="shop_label" v-if="item.tagsData!=''">
|
||||
<span v-for="tag in item.tagsData" :key="tag">{{tag}}</span>
|
||||
</view>
|
||||
<view class="shop_label" v-else>
|
||||
<span>助眠解压</span>
|
||||
</view>
|
||||
<view class="item-view-bottom">
|
||||
<view class="item-view-xiangmu">
|
||||
<span>已售</span><span>{{item.sales}} <!-- | 好评{{item.esteemRate}}% --></span>
|
||||
|
@ -184,8 +187,7 @@
|
|||
if(this.text=='index'){//首页进来的秒杀列表接口
|
||||
this.$Request.get('/app/massage/package/findAppActivityPage',params).then(res => {
|
||||
for(var i=0;i<res.data.list.length;i++){
|
||||
var tagsData=res.data.list[i].labels.split(',');
|
||||
res.data.list[i].tagsData = tagsData;
|
||||
res.data.list[i].tagsData=res.data.list[i].labels.split(',');
|
||||
}
|
||||
this.$refs.paging.complete(res.data.list);
|
||||
}).catch(res => {
|
||||
|
@ -193,6 +195,9 @@
|
|||
})
|
||||
}else{
|
||||
this.$Request.get('/app/user/package/findMyPackageList',params).then(res => {
|
||||
for(var i=0;i<res.data.records.length;i++){
|
||||
res.data.records[i].tagsData=res.data.records[i].labels.split(',');
|
||||
}
|
||||
this.$refs.paging.complete(res.data.records);
|
||||
}).catch(res => {
|
||||
this.$refs.paging.complete(false);
|
||||
|
|
|
@ -28,10 +28,10 @@
|
|||
|
||||
<!-- 注意注意注意!!字节跳动小程序中自定义下拉刷新不支持slot-scope,将导致custom-refresher无法显示 -->
|
||||
<!-- 如果是字节跳动小程序,请参照sticky-demo.vue中的写法,此处使用slot-scope是为了减少data中无关变量声明,降低依赖 -->
|
||||
<template #refresher="{refresherStatus}" >
|
||||
<!-- <template #refresher="{refresherStatus}" > -->
|
||||
<!-- 此处的custom-refresh为demo中自定义的组件,非z-paging的内置组件,请在实际项目中自行创建。这里插入什么view,下拉刷新就显示什么view -->
|
||||
<custom-refresher :status="refresherStatus" />
|
||||
</template>
|
||||
<!-- <custom-refresher :status="refresherStatus" />
|
||||
</template> -->
|
||||
<!-- 自定义没有更多数据view -->
|
||||
<template #loadingMoreNoMore >
|
||||
<!-- 此处的custom-nomore为demo中自定义的组件,非z-paging的内置组件,请在实际项目中自行创建。这里插入什么view,没有更多数据就显示什么view -->
|
||||
|
@ -66,8 +66,7 @@
|
|||
<!-- <span>/{{item.serviceCount}}次</span> -->
|
||||
<span>¥{{item.oldPrice}}</span>
|
||||
</view>
|
||||
|
||||
<view class="item-view-bottom">
|
||||
<view class="item-view-bottom" v-if="text=='index'">
|
||||
<view class="item-view-xiangmu">
|
||||
<span>已售</span><span>{{item.sales}} <!-- | 好评{{item.esteemRate}}% --></span>
|
||||
</view>
|
||||
|
@ -78,6 +77,14 @@
|
|||
开抢
|
||||
</view>
|
||||
</view>
|
||||
<view class="item-view-bottom" v-if="text=='my'">
|
||||
<view class="item-view-xiangmu">
|
||||
<span>已售</span><span>{{item.sales}} <!-- | 好评{{item.esteemRate}}% --></span>
|
||||
</view>
|
||||
<view class="item-view-bottom-btn">
|
||||
预约
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</z-paging>
|
||||
|
@ -182,6 +189,10 @@
|
|||
})
|
||||
}else{
|
||||
this.$Request.get('/app/user/package/findMyPackageList',params).then(res => {
|
||||
console.log(res.data.records);
|
||||
for(var i=0;i<res.data.records.length;i++){
|
||||
res.data.records[i].tagsData=res.data.records[i].labels.split(',');
|
||||
}
|
||||
this.$refs.paging.complete(res.data.records);
|
||||
}).catch(res => {
|
||||
this.$refs.paging.complete(false);
|
||||
|
@ -384,12 +395,15 @@
|
|||
}
|
||||
.item-view-xiangmu span:nth-child(2){
|
||||
font-weight: normal;
|
||||
color: #666666;
|
||||
color: #333333;
|
||||
font-size: 30rpx;
|
||||
|
||||
}
|
||||
.item-view-xiangmu span:nth-child(1){
|
||||
font-weight: normal;
|
||||
color: #999;
|
||||
color: #666666;
|
||||
margin-right: 5rpx;
|
||||
font-size: 30rpx;
|
||||
}
|
||||
.shop_label{
|
||||
display: flex;
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
<!-- 自定义下拉刷新与上拉加载演示(vue) -->
|
||||
<template>
|
||||
<view class="content-view">
|
||||
<z-paging ref="paging" v-model="dataList" @query="queryList">
|
||||
<template #top>
|
||||
<view class="service-head-top">
|
||||
<view class="service-head-top-left">
|
||||
<image @click="backImg" src="../../static/fanhui.png" mode="widthFix"></image>
|
||||
|
@ -15,85 +17,74 @@
|
|||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<t-refresh ref="refresh" v-if="dataList.length>0" @refresh="refresh" @loadMore="loadMore" :loadingType="loadingType" :tPadding="0">
|
||||
<template slot="content">
|
||||
<!-- 升级订单 -->
|
||||
<view class="item" v-for="(item,index) in dataList" :key="index" @click="itemClick(item)">
|
||||
<view class="flex justify-between st-title">
|
||||
</template>
|
||||
<template #loadingMoreNoMore>
|
||||
<custom-nomore />
|
||||
</template>
|
||||
<view class="pay-margin bg ding-view" v-for="(item,index) in dataList" :key="index" @click="itemClick(item)" style="border-radius: 20rpx;padding: 36rpx;">
|
||||
<view class="flex justify-between">
|
||||
<view class="flex align-center profile-img">
|
||||
|
||||
<image src="../../static/logo.png" style="width: 55rpx;height: 55rpx;border: 1px solid#d7f2ee;border-radius: 50%;">
|
||||
</image>
|
||||
<view class="margin-left-xs ">{{item.artificerName}}</view>
|
||||
</view>
|
||||
<view class="text-green"><span>{{item.ordersNo}}</span></view>
|
||||
<!-- <view class="text-green" v-if="item.status ==2"><span>{{item.ordersNo}}</span><span>待服务</span></view>
|
||||
<view class="text-green" v-if="item.status ==3"><span>{{item.ordersNo}}</span><span>待评价</span></view>
|
||||
<view class="text-green" v-if="item.status ==4"><span>{{item.ordersNo}}</span><span>已取消</span></view>
|
||||
<view class="text-green" v-if="item.status ==5"><span>{{item.ordersNo}}</span><span>已完成</span></view>
|
||||
<view class="text-green" v-if="item.status ==6"><span>{{item.ordersNo}}</span><span>服务中</span></view>
|
||||
<view class="text-green" v-if="item.status ==7"><span>{{item.ordersNo}}</span><span>技师出发</span></view>
|
||||
<view class="text-green" v-if="item.status ==8"><span>{{item.ordersNo}}</span><span>技师到达</span></view>
|
||||
<view class="text-green" v-if="item.status ==9"><span>{{item.ordersNo}}</span><span>待确认</span></view>
|
||||
<view class="text-green" v-if="item.status ==10"><span>{{item.ordersNo}}</span><span>待补单</span></view> -->
|
||||
|
||||
<!-- <view class="u-tips-color">{{item.createTime}}</view> -->
|
||||
<view v-if="item.status ==1"><span class="status-num">{{item.ordersNo}}</span><span class="status-button-a">待支付</span></view>
|
||||
<view v-if="item.status ==2"><span class="status-num">{{item.ordersNo}}</span><span class="status-button-b">待服务</span></view>
|
||||
<view v-if="item.status ==3"><span class="status-num">{{item.ordersNo}}</span><span class="status-button-c">待评价</span></view>
|
||||
<view v-if="item.status ==4"><span class="status-num">{{item.ordersNo}}</span><span class="status-button-d">已取消</span></view>
|
||||
<view v-if="item.status ==5"><span class="status-num">{{item.ordersNo}}</span><span class="status-button-e">已完成</span></view>
|
||||
<view v-if="item.status ==6"><span class="status-num">{{item.ordersNo}}</span><span class="status-button-f">服务中</span></view>
|
||||
<view v-if="item.status ==7"><span class="status-num">{{item.ordersNo}}</span><span class="status-button-h">技师出发</span></view>
|
||||
<view v-if="item.status ==8"><span class="status-num">{{item.ordersNo}}</span><span class="status-button-i">技师到达</span></view>
|
||||
<view v-if="item.status ==9"><span class="status-num">{{item.ordersNo}}</span><span class="status-button-g">待确认</span></view>
|
||||
<view v-if="item.status ==10"><span class="status-num">{{item.ordersNo}}</span><span class="status-button-h">待补单</span></view>
|
||||
</view>
|
||||
<view class="margin-top-sm"></view>
|
||||
<view class=" u-flex" v-if="item.ordersMassageList[0].userPackageDetail==null">
|
||||
<view class="margin-top-sm" style="width: 100%;height: 1rpx;background: #f7f7f7;"></view>
|
||||
<view class="u-flex u-p-t-30" v-if="item.ordersMassageList[0].userPackageDetail==null">
|
||||
<view class="u-m-r-10">
|
||||
<image :src="item.ordersMassageList[0].massageType.massageImg" mode="" style="height: 155rpx;width: 155rpx;flex: 0 0 155rpx;"></image>
|
||||
<image :src="item.ordersMassageList[0].massageType.massageImg" mode="square" style="height: 155rpx;width: 155rpx;flex: 0 0 155rpx;"></image>
|
||||
</view>
|
||||
|
||||
<view class="u-flex-1" style="margin-left: 20rpx;">
|
||||
<view class="text-bold u-line-1" style="width: 560rpx;">
|
||||
<view class="text-bold u-line-1">
|
||||
<view class="text-lg"
|
||||
style="font-size: 32rpx;margin-top: 0rpx;display: inline-block;width: 470rpx; overflow: hidden;white-space: nowrap;text-overflow: ellipsis;">
|
||||
{{item.entryName}}
|
||||
</view>
|
||||
</view>
|
||||
<view class="u-font-12 u-tips-color flex justify-between" style="margin-top: 6rpx;">
|
||||
预约时间:{{item.serveTime}}
|
||||
<view class="u-font-13 u-tips-color justify-between title-font" style="margin-top: 14rpx;">
|
||||
<text class="title-font">预约时间:</text><text class="value-font">{{item.serveTime}}</text>
|
||||
</view>
|
||||
<view class="flex-sub u-font-12 margin-top-xs" style="color: #999999;">
|
||||
实付:<text class="text-df" style="color: #FF1200;">¥</text><text class="text-xl text-bold" style="color: #FF1200;">{{item.payMoneyTotal}}</text>
|
||||
<view class="flex-sub u-font-13">
|
||||
<text class="title-font">实付金额:</text><text class="text-xl text-bold" style="color: #FF1200;">¥{{item.payMoneyTotal}}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class=" u-flex" v-else>
|
||||
<view class="u-flex u-p-t-30" v-else>
|
||||
<view class="u-m-r-10">
|
||||
<image :src="item.ordersMassageList[0].userPackageDetail.massageImg" mode="" style="height: 155rpx;width: 155rpx;flex: 0 0 155rpx;"></image>
|
||||
<image :src="item.ordersMassageList[0].userPackageDetail.massageImg" mode="square" style="height: 155rpx;width: 155rpx;flex: 0 0 155rpx;"></image>
|
||||
</view>
|
||||
<view class="u-flex-1" style="margin-left: 20rpx;">
|
||||
<view class="text-bold u-line-1" style="width: 560rpx;">
|
||||
<view class="text-bold u-line-1">
|
||||
<view class="text-lg"
|
||||
style="font-size: 32rpx;margin-top: 0rpx;display: inline-block;width: 470rpx; overflow: hidden;white-space: nowrap;text-overflow: ellipsis;">
|
||||
{{item.entryName}}
|
||||
</view>
|
||||
</view>
|
||||
<view class="u-font-12 u-tips-color flex justify-between" style="margin-top: 6rpx;">
|
||||
预约时间:{{item.serveTime}}
|
||||
<view class="u-font-13 u-tips-color justify-between title-font" style="margin-top: 14rpx;">
|
||||
<text class="title-font">预约时间:</text><text class="value-font">{{item.serveTime}}</text>
|
||||
</view>
|
||||
<view class="flex-sub u-font-12 margin-top-xs" style="color: #999999;">
|
||||
实付:<text class="text-df" style="color: #FF1200;">¥</text><text class="text-xl text-bold" style="color: #FF1200;">{{item.payMoneyTotal}}</text>
|
||||
<view class="flex-sub u-font-13">
|
||||
<text class="title-font">实付金额:</text><text class="text-xl text-bold" style="color: #FF1200;">¥{{item.payMoneyTotal}}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
</template>
|
||||
</t-refresh>
|
||||
<empty v-if="dataList.length==0"></empty>
|
||||
|
||||
</z-paging>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import empty from '@/components/empty.vue'
|
||||
import tRefresh from "@/components/t-refresh/t-refresh.vue"
|
||||
export default {
|
||||
components:{tRefresh,empty},
|
||||
data() {
|
||||
return {
|
||||
loadingType:0,
|
||||
|
@ -117,26 +108,26 @@
|
|||
that.previousPage=e;
|
||||
that.isVIP=this.$queue.getData('isVIP');
|
||||
that.myId = uni.getStorageSync('userId');
|
||||
that.getData()
|
||||
},
|
||||
onPullDownRefresh: function() {
|
||||
this.page = 1;
|
||||
this.getData();
|
||||
// that.getData()
|
||||
},
|
||||
// onPullDownRefresh: function() {
|
||||
// this.page = 1;
|
||||
// this.getData();
|
||||
// },
|
||||
methods: {
|
||||
// 加载更多
|
||||
loadMore: async function() {
|
||||
//loadingType: 0.数据未加载完 1.数据全部加载完了 2.数据加载中
|
||||
if(this.loadingType==0){
|
||||
this.loadingType=2
|
||||
//模拟数据请求
|
||||
setTimeout(()=>{
|
||||
this.page++;
|
||||
this.loadingType=0;
|
||||
this.getData()
|
||||
},1000)
|
||||
}
|
||||
},
|
||||
// loadMore: async function() {
|
||||
// //loadingType: 0.数据未加载完 1.数据全部加载完了 2.数据加载中
|
||||
// if(this.loadingType==0){
|
||||
// this.loadingType=2
|
||||
// //模拟数据请求
|
||||
// setTimeout(()=>{
|
||||
// this.page++;
|
||||
// this.loadingType=0;
|
||||
// this.getData()
|
||||
// },1000)
|
||||
// }
|
||||
// },
|
||||
input(res) {//搜索 输入框
|
||||
this.searchValue=res;
|
||||
},
|
||||
|
@ -146,20 +137,34 @@
|
|||
}
|
||||
},
|
||||
getData(){
|
||||
this.$Request.get("/app/artificer/selectAppOrdersList", {
|
||||
page:this.page,
|
||||
limit:this.limit,
|
||||
title:this.searchValue,
|
||||
userPackageId:this.previousPage.id
|
||||
}).then(res => {
|
||||
if (res.code == 0) {
|
||||
if (res.data) {
|
||||
if (this.page == 1) this.dataList = []; //如果是第一页需手动制空列表
|
||||
this.dataList = [...this.dataList, ...res.data.list]; //追加新数据
|
||||
uni.stopPullDownRefresh()
|
||||
// this.$Request.get("/app/artificer/selectAppOrdersList", {
|
||||
// page:this.page,
|
||||
// limit:this.limit,
|
||||
// title:this.searchValue,
|
||||
// userPackageId:this.previousPage.id
|
||||
// }).then(res => {
|
||||
// if (res.code == 0) {
|
||||
// if (res.data) {
|
||||
// if (this.page == 1) this.dataList = []; //如果是第一页需手动制空列表
|
||||
// this.dataList = [...this.dataList, ...res.data.list]; //追加新数据
|
||||
// uni.stopPullDownRefresh()
|
||||
// }
|
||||
// }
|
||||
// });
|
||||
this.$refs.paging.reload(true);
|
||||
},
|
||||
queryList(pageNo, pageSize) {
|
||||
const params = {
|
||||
page: pageNo,
|
||||
limit: pageSize,
|
||||
userPackageId:this.previousPage.id,
|
||||
title:this.searchValue
|
||||
}
|
||||
}
|
||||
});
|
||||
this.$Request.get('/app/artificer/selectAppOrdersList',params).then(res => {
|
||||
this.$refs.paging.complete(res.data.list);
|
||||
}).catch(res => {
|
||||
this.$refs.paging.complete(false);
|
||||
})
|
||||
},
|
||||
backImg(){//返回上一页
|
||||
if(this.previousPage.name=='次卡'){
|
||||
|
@ -171,7 +176,6 @@
|
|||
url:'/pages/my/fuwuliaochengDetail?id='+this.previousPage.id+'&limit='+10+'&page='+1+'&name='+'my'
|
||||
})
|
||||
}
|
||||
|
||||
},
|
||||
clear(res) {
|
||||
this.getData()
|
||||
|
@ -186,7 +190,16 @@
|
|||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
<style lang="scss" scoped>
|
||||
.pay-margin{
|
||||
margin: 20rpx 20rpx;
|
||||
}
|
||||
.bg {
|
||||
background-color: #FFFFFF;
|
||||
}
|
||||
.profile-img{
|
||||
margin-top: -20rpx;
|
||||
}
|
||||
.st-title{
|
||||
padding-top:20rpx;
|
||||
}
|
||||
|
@ -197,21 +210,19 @@
|
|||
align-items: center;
|
||||
}
|
||||
/deep/.justify-between{
|
||||
align-items: center;
|
||||
height: 54rpx;
|
||||
}
|
||||
.ding-view{
|
||||
position: relative;
|
||||
}
|
||||
.text-green span:nth-child(1){
|
||||
font-weight: 400;
|
||||
font-size: 25rpx;
|
||||
color: #7D7D7D;
|
||||
font-size: 30rpx;
|
||||
color: #333333;
|
||||
margin-right: 10px;
|
||||
}
|
||||
.text-green span:nth-child(2){
|
||||
font-weight: 400;
|
||||
font-size: 25rpx;
|
||||
color: #7D7D7D;
|
||||
font-size: 30rpx;
|
||||
color: #333333;
|
||||
margin-right: 10px;
|
||||
}
|
||||
.header-bottom-title-liao{
|
||||
|
@ -377,9 +388,9 @@
|
|||
width: 95%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
height: 140px;
|
||||
height: 200px;
|
||||
background: #FFFFFF;
|
||||
border-radius: 21rpx;
|
||||
border-radius: 20rpx;
|
||||
padding: 0px 12px;
|
||||
margin: 20rpx auto 0px auto;
|
||||
}
|
||||
|
@ -405,7 +416,7 @@
|
|||
width:100%;
|
||||
}
|
||||
/deep/.zp-paging-container-content{
|
||||
width: 95%;
|
||||
width: 100%;
|
||||
margin: 0 auto;
|
||||
}
|
||||
.fenlei{
|
||||
|
@ -500,5 +511,73 @@
|
|||
background: linear-gradient(60deg,rgba(115, 212, 183, 0.2),rgba(227, 251, 244, 0.1),rgba(193, 236, 223, 0.35));
|
||||
border-bottom:1rpx solid #c4ede1;
|
||||
}
|
||||
|
||||
.head-title{
|
||||
font-weight: bold;
|
||||
font-size: 32rpx;
|
||||
color: #333333;
|
||||
}
|
||||
.title-font{
|
||||
font-size: 30rpx;
|
||||
color: #666666;
|
||||
}
|
||||
.value-font{
|
||||
font-size: 30rpx;
|
||||
color: #333333;
|
||||
}
|
||||
.margin-left-xs{
|
||||
font-size: 32rpx;
|
||||
font-weight: bold;
|
||||
color: #111111;
|
||||
}
|
||||
/deep/.margin-top-sm{
|
||||
margin-top: 3px;
|
||||
}
|
||||
.status-button{
|
||||
font-weight: bold;
|
||||
color: #019c88;
|
||||
font-size: 31rpx;
|
||||
}
|
||||
.status-button-a{
|
||||
font-weight: bold;
|
||||
color: #ff932a;
|
||||
}
|
||||
.status-button-b{
|
||||
font-weight: bold;
|
||||
color: #7446fc;
|
||||
}
|
||||
.status-button-d{
|
||||
font-weight: bold;
|
||||
color: #888888;
|
||||
}
|
||||
.status-button-e{
|
||||
font-weight: bold;
|
||||
color: #999999;
|
||||
}
|
||||
.status-button-f{
|
||||
font-weight: bold;
|
||||
color: #019c88;
|
||||
}
|
||||
.status-button-g{
|
||||
font-weight: bold;
|
||||
color: #e04f3c;
|
||||
}
|
||||
.status-button-h{
|
||||
font-weight: bold;
|
||||
color: #965fb9;
|
||||
}
|
||||
.status-button-i{
|
||||
font-weight: bold;
|
||||
color: #002ea4;
|
||||
}
|
||||
.status-button-g{
|
||||
font-weight: bold;
|
||||
color: #43b943;
|
||||
}
|
||||
.status-button-h{
|
||||
font-weight: bold;
|
||||
color: #1bcada;
|
||||
}
|
||||
.status-num{
|
||||
margin-right: 15rpx;
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -90,7 +90,7 @@
|
|||
</view>
|
||||
|
||||
<view class="detail-foot-title">
|
||||
服务项目{{index+1}}
|
||||
服务项目
|
||||
</view>
|
||||
</view>
|
||||
<view style="height: 70rpx;"></view>
|
||||
|
@ -251,6 +251,8 @@
|
|||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
margin-top: 5px;
|
||||
height: 100px;
|
||||
}
|
||||
/deep/uni-checkbox .uni-checkbox-input{
|
||||
width: 26px;
|
||||
|
@ -594,7 +596,7 @@
|
|||
margin-left: 5px;
|
||||
}
|
||||
.header-bottom-money-zhen span{
|
||||
color: #F95900;
|
||||
color: #FF1200;
|
||||
}
|
||||
.header-bottom-money-zhen span:nth-child(1){
|
||||
font-size: 26rpx;
|
||||
|
|
|
@ -30,13 +30,14 @@
|
|||
</view>
|
||||
</view>
|
||||
<view class="header-bottom-mian">
|
||||
<view class="header-bottom-mian-title">
|
||||
<!--<view class="header-bottom-mian-title">
|
||||
<image src="../../static/servicePackage/jianjie.png" mode=""></image>
|
||||
<span>套餐简介</span>
|
||||
</view>
|
||||
</view>-->
|
||||
<view class="jianjie">
|
||||
{{mainData.content}}
|
||||
</view>
|
||||
<span class="jianjie-more">更多</span>
|
||||
</view>
|
||||
<view class="header-bottom-foot">
|
||||
<view><image class="header-bottom-foot-title" src="../../static/dituzhaoren1.png" ></image></view>
|
||||
|
@ -698,6 +699,8 @@
|
|||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
margin-top: 5px;
|
||||
height: 100px;
|
||||
}
|
||||
/deep/uni-checkbox .uni-checkbox-input{
|
||||
width: 26px;
|
||||
|
@ -876,16 +879,18 @@
|
|||
position: relative;
|
||||
}
|
||||
.detail-foot-title{
|
||||
width: 115px;
|
||||
height: 32px;
|
||||
background-image: url(../../static/servicePackage/horn.png);
|
||||
width: 100px;
|
||||
height:28px;
|
||||
/*background-image: url(../../static/servicePackage/horn.png);
|
||||
background-repeat: no-repeat;
|
||||
background-size: 100% 100%;
|
||||
background-size: 100% 100%;*/
|
||||
background: linear-gradient(90deg, #ffdf96, #feca76);
|
||||
border-radius: 0 15rpx 0 30rpx;
|
||||
font-weight: 400;
|
||||
font-size: 13px;
|
||||
color: #FFFFFF;
|
||||
font-size: 14px;
|
||||
color: #a13504;
|
||||
text-align: right;
|
||||
line-height: 32px;
|
||||
line-height: 28px;
|
||||
padding-right: 15px;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
|
@ -973,6 +978,10 @@
|
|||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
.jianjie-more{
|
||||
color: #029d88;
|
||||
font-size: 24rpx;
|
||||
}
|
||||
.header-bottom-mian{
|
||||
margin: 3px 0px;
|
||||
}
|
||||
|
|
|
@ -28,10 +28,10 @@
|
|||
|
||||
<!-- 注意注意注意!!字节跳动小程序中自定义下拉刷新不支持slot-scope,将导致custom-refresher无法显示 -->
|
||||
<!-- 如果是字节跳动小程序,请参照sticky-demo.vue中的写法,此处使用slot-scope是为了减少data中无关变量声明,降低依赖 -->
|
||||
<template #refresher="{refresherStatus}">
|
||||
<!-- <template #refresher="{refresherStatus}">-->
|
||||
<!-- 此处的custom-refresh为demo中自定义的组件,非z-paging的内置组件,请在实际项目中自行创建。这里插入什么view,下拉刷新就显示什么view -->
|
||||
<custom-refresher :status="refresherStatus" />
|
||||
</template>
|
||||
<!-- <custom-refresher :status="refresherStatus" />-->
|
||||
<!-- </template>-->
|
||||
<!-- 自定义没有更多数据view -->
|
||||
<template #loadingMoreNoMore>
|
||||
<!-- 此处的custom-nomore为demo中自定义的组件,非z-paging的内置组件,请在实际项目中自行创建。这里插入什么view,没有更多数据就显示什么view -->
|
||||
|
@ -100,7 +100,7 @@
|
|||
},
|
||||
onLoad(){
|
||||
this.myId = uni.getStorageSync('userId')
|
||||
this.getData()
|
||||
// this.getData()
|
||||
},
|
||||
methods: {
|
||||
input(res) {//搜索 输入框
|
||||
|
@ -112,21 +112,22 @@
|
|||
}
|
||||
},
|
||||
getData(){
|
||||
let data = {
|
||||
userId: this.myId,
|
||||
type: this.typeData,
|
||||
page: this.page,
|
||||
limit: this.limit,
|
||||
title:this.searchValue,
|
||||
}
|
||||
this.$Request.get('/app/user/package/findMyPackageList', data).then(res => {
|
||||
if (res.code == 0) {
|
||||
this.dataList=res.data.records;
|
||||
for(var i=0;i<this.dataList.length;i++){
|
||||
this.dataList[i].tagsData=this.dataList[i].labels.split(',');
|
||||
}
|
||||
}
|
||||
})
|
||||
// let data = {
|
||||
// userId: this.myId,
|
||||
// type: this.typeData,
|
||||
// page: this.page,
|
||||
// limit: this.limit,
|
||||
// title:this.searchValue,
|
||||
// }
|
||||
// this.$Request.get('/app/user/package/findMyPackageList', data).then(res => {
|
||||
// if (res.code == 0) {
|
||||
// this.dataList=res.data.records;
|
||||
// for(var i=0;i<this.dataList.length;i++){
|
||||
// this.dataList[i].tagsData=this.dataList[i].labels.split(',');
|
||||
// }
|
||||
// }
|
||||
// })
|
||||
this.$refs.paging.reload(true);
|
||||
},
|
||||
tabChange(index) {
|
||||
this.tabIndex = index;
|
||||
|
@ -144,10 +145,13 @@
|
|||
page: pageNo,
|
||||
limit: pageSize,
|
||||
type: this.typeData,
|
||||
title:''
|
||||
title:this.searchValue,
|
||||
}
|
||||
this.$Request.get('/app/user/package/findMyPackageList',params).then(res => {
|
||||
// 将请求的结果数组传递给z-paging
|
||||
for(var i=0;i<res.data.records.length;i++){
|
||||
res.data.records[i].tagsData=res.data.records[i].labels.split(',');
|
||||
}
|
||||
this.$refs.paging.complete(res.data.records);
|
||||
}).catch(res => {
|
||||
// 如果请求失败写this.$refs.paging.complete(false);
|
||||
|
@ -182,7 +186,7 @@
|
|||
margin-top: 10rpx;
|
||||
}
|
||||
.shop_label span{
|
||||
background: #f3f3f3;
|
||||
background: linear-gradient(90deg, #ffefde, #fff7ef);
|
||||
height: 34rpx;
|
||||
line-height: 34rpx;
|
||||
border-radius: 8rpx;
|
||||
|
@ -190,6 +194,7 @@
|
|||
font-size: 22rpx;
|
||||
margin-right: 8rpx;
|
||||
margin-bottom: 8rpx;
|
||||
color: #f68607;
|
||||
}
|
||||
.img-span{
|
||||
padding: 2px 5px;
|
||||
|
|
|
@ -29,7 +29,6 @@
|
|||
<view v-if="item.status ==8"><span class="status-num">{{item.ordersNo}}</span><span class="status-button-i">技师到达</span></view>
|
||||
<view v-if="item.status ==9"><span class="status-num">{{item.ordersNo}}</span><span class="status-button-g">待确认</span></view>
|
||||
<view v-if="item.status ==10"><span class="status-num">{{item.ordersNo}}</span><span class="status-button-h">待补单</span></view>
|
||||
|
||||
<!-- <view class="u-tips-color">{{item.createTime}}</view> -->
|
||||
</view>
|
||||
<view class="margin-top-sm" style="width: 100%;height: 1rpx;background: #f7f7f7;"></view>
|
||||
|
|
|
@ -18,9 +18,9 @@
|
|||
</view>
|
||||
</view>
|
||||
</template>
|
||||
<template #refresher="{refresherStatus}" >
|
||||
<!-- <template #refresher="{refresherStatus}" >
|
||||
<custom-refresher :status="refresherStatus" />
|
||||
</template>
|
||||
</template> -->
|
||||
<template #loadingMoreNoMore >
|
||||
<custom-nomore />
|
||||
</template>
|
||||
|
|
BIN
static/kefu.png
BIN
static/kefu.png
Binary file not shown.
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 22 KiB |
Loading…
Reference in New Issue