修改新增
parent
81626ff788
commit
161fd11009
3
App.vue
3
App.vue
|
@ -1,6 +1,5 @@
|
|||
<script>
|
||||
import toolAll from '@/jsFile/tools.js';
|
||||
// import {checkSwip} from '@/jsFile/publicAPI.js'
|
||||
export default {
|
||||
onLaunch: function() {
|
||||
toolAll.tools.clearClog();//去除体验版和正式版的所有输出日志
|
||||
|
@ -16,7 +15,7 @@
|
|||
setTimeout(()=>{
|
||||
toolAll.tools.overdue();//查询是否第一次授权
|
||||
},3000)
|
||||
// checkSwip()//查询轮播图位置
|
||||
toolAll.tools.isVedio();
|
||||
toolAll.tools.checkQuan();
|
||||
},
|
||||
onHide: function() {
|
||||
|
|
|
@ -102,7 +102,7 @@
|
|||
}
|
||||
/* .zhuan{transition: all 1s;transform: rotate(90deg);} */
|
||||
.nozhuan{transition: all 1s;transform: rotate(0deg);}
|
||||
.xial-box{top: 100rpx;left: 0;right: 0;z-index: 4;border: 2rpx solid #E0E0E0;}
|
||||
.xial-box{top: 80rpx;left: 0;right: 0;z-index: 4;border: 2rpx solid #E0E0E0;}
|
||||
.xial-item-box{max-height: 400rpx;overflow-y: scroll; overflow-x: hidden;}
|
||||
.doctorx{margin: 0 15rpx;height: 18rpx;border: 2rpx solid #E6E6E6;}
|
||||
.doctorImg{width: 345rpx;height: 285rpx;border-top-left-radius: 10rpx;border-top-right-radius: 10rpx;}
|
||||
|
@ -296,6 +296,9 @@ swiper-item view:last-child .duan-xian{border-bottom: none;}
|
|||
@media screen and (height:896px){
|
||||
.blue-img{height: 486rpx;}
|
||||
}
|
||||
@media screen and (min-height:926px){
|
||||
.blue-img{height: 490rpx;}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,229 @@
|
|||
<template>
|
||||
<view v-if="visible">
|
||||
<!-- 用户信息授权 -->
|
||||
<view v-if="userInfo_mobile" @touchmove.stop.prevent="moveHandle" :class="isAnimation==2?'card-box-userinfo':''" class="auth-box">
|
||||
<view :class="isAnimation==1?'card-box-userinfo':''">
|
||||
<view class="auth-top">
|
||||
<image :src="appletImg" mode=""></image>
|
||||
<view class="auth-top-content">
|
||||
<view>恒美植发客服代表提醒您:</view>
|
||||
<view>您当前是游客身份</view>
|
||||
<view>是否选择授权登录</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="auth-center">申请 获取你的昵称、头像、地区及性别</view>
|
||||
<view class="auth-bottom">
|
||||
<view @tap="chooseBtn(0)" :class="isNo?'isNyin':'noyin'" class="btn btn-no">暂不授权</view>
|
||||
<view @tap="chooseBtn(1)" :class="isOk?'isOyin':'noyin'" class="btn btn-yes">
|
||||
<text>立即授权</text>
|
||||
<button open-type="getUserInfo" @tap="shouq" class="auth-btn">立即授权</button>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 手机号授权 -->
|
||||
<view v-if="!userInfo_mobile" @touchmove.stop.prevent="moveHandle" class="disjcac posAll">
|
||||
<view class="bacf radius20 width100 tank-box">
|
||||
<view class="tc tank-box-itemone">请授权绑定手机号</view>
|
||||
<view class="fon28 colf pad-x30 pad-zy30 tc disjb">
|
||||
<view class="pad-sx10 radius10 tank-btn" style="background-color: rgba(230, 230, 230,1);color: #000000;">暂不绑定</view>
|
||||
<view class="pad-sx10 radius10 tank-btn posir pbackc">
|
||||
立即绑定
|
||||
<button open-type="getPhoneNumber" @getphonenumber="getphonenumber" class="posia syxzo">立即绑定</button>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name:"empower",
|
||||
props:{
|
||||
optionObj:{
|
||||
type:Object,
|
||||
default:()=>{
|
||||
return {}
|
||||
}
|
||||
},
|
||||
appletImg:{//小程序头像
|
||||
type:String,
|
||||
default:'/static/public/like.png'
|
||||
},
|
||||
appletName:{//小程序名称
|
||||
type:String,
|
||||
default:''
|
||||
},
|
||||
url:{
|
||||
type:String,
|
||||
default:''
|
||||
},
|
||||
isWhere:{
|
||||
type:Number,
|
||||
default:0
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
isOk:false,
|
||||
isNo:false,
|
||||
isAnimation:0,
|
||||
visible:false,
|
||||
userInfo_mobile:true,
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
console.log(this.optionObj);
|
||||
if(uni.getStorageSync('is_active')!=1){this.visible = true;}
|
||||
if(this.optionObj.invite_code!='' && this.optionObj.invite_code!=undefined){
|
||||
this.loginEv(this.optionObj.invite_code);
|
||||
} else if(this.optionObj.source_code!='' && this.optionObj.source_code!=undefined){
|
||||
this.loginEv('',this.optionObj.source_code,this.optionObj.channel);
|
||||
}
|
||||
},
|
||||
methods:{
|
||||
loginEv(invite_code='',source='',channel=''){
|
||||
uni.login({
|
||||
provider: 'weixin',
|
||||
success: (res)=> {
|
||||
if (res.code) {
|
||||
var params = {
|
||||
code:res.code,
|
||||
invite_code:invite_code,//用户邀请码
|
||||
source_code:source,
|
||||
channel:channel
|
||||
}
|
||||
this.$requst.post('user/login',params).then(res => {
|
||||
if(res.data.token!=''){
|
||||
if(res.data.is_active==0) {
|
||||
this.visible = true;
|
||||
}
|
||||
}
|
||||
},error => {})
|
||||
}
|
||||
},
|
||||
});
|
||||
},
|
||||
moveHandle(){
|
||||
return false
|
||||
},
|
||||
tiaoZ(){//跳转方式
|
||||
if(this.isWhere==0) uni.navigateBack({delta:1}) //返回上一页
|
||||
if(this.isWhere==1) uni.navigateTo({url:this.url})//跳转到指定页面
|
||||
if(this.isWhere!=0 && this.isWhere!=1) return//不跳转
|
||||
this.isOk = false;
|
||||
},
|
||||
chooseBtn(index){//暂不授权、立即授权
|
||||
this.$emit('cancleEv',index)//继承事件
|
||||
if(index==0){//暂不授权
|
||||
// this.tiaoZ()
|
||||
uni.navigateTo({
|
||||
url:'/pages/tabbar/pagehome/pagehome'
|
||||
})
|
||||
this.isOk = false
|
||||
} else {
|
||||
this.isOk = !this.isOk
|
||||
this.isNo = false
|
||||
}
|
||||
},
|
||||
shouq(){//立即授权事件
|
||||
let ya = this;
|
||||
this.$toolAll.tools.showToast('正在调起授权...')
|
||||
let code = ''//声明code
|
||||
uni.login({// 获取登录用户code
|
||||
provider: 'weixin',
|
||||
success: function(result) {
|
||||
uni.hideToast()
|
||||
code = result.code
|
||||
},
|
||||
});
|
||||
uni.getUserProfile({//调起微信授权弹框
|
||||
desc: '登录',
|
||||
lang: 'zh_CN',
|
||||
success: (res) => {
|
||||
ya.updateUserInfo(code,res.userInfo);
|
||||
},
|
||||
fail: (res) => {
|
||||
console.log('用户拒绝授权');
|
||||
this.tiaoZ()
|
||||
this.$emit('cancleEv',0)
|
||||
this.isOk = false;
|
||||
}
|
||||
});
|
||||
},
|
||||
//调用登录接口
|
||||
updateUserInfo(code,userInfo) {
|
||||
let ya = this;
|
||||
uni.showToast({title: '授权中...',icon:'loading',})
|
||||
var params = {
|
||||
code:code,
|
||||
nickname: userInfo.nickName,//用户昵称
|
||||
headimgurl: userInfo.avatarUrl,//用户头像
|
||||
country: userInfo.country,//用户所在国家
|
||||
province: userInfo.province,//用户所在省份
|
||||
city: userInfo.city,//用户所在城市
|
||||
gender: userInfo.gender,//用户性别
|
||||
language:userInfo.language,//语言
|
||||
is_active:1
|
||||
}
|
||||
this.$requst.post('user/login',params).then(res => {
|
||||
if(res.data.token!=''){
|
||||
uni.setStorageSync('params',params);
|
||||
uni.setStorageSync('userId',res.data.account_id);
|
||||
uni.setStorageSync('token',res.data.token);//缓存token
|
||||
uni.setStorageSync('expire',res.data.expire);//缓存失效时间(时间戳格式)
|
||||
uni.setStorageSync('is_active',res.data.is_active);//是否第一次授权
|
||||
uni.setStorageSync('invite_code',res.data.invite_code);
|
||||
ya.successAfterEv(userInfo);
|
||||
ya.isAnimation++;
|
||||
ya.userInfo_mobile = false;
|
||||
}
|
||||
},error => {})
|
||||
},
|
||||
successAfterEv(userInfo){//缓存信息
|
||||
let ya = this
|
||||
uni.hideToast();
|
||||
// console.log(uni.getStorageSync('headImg'));
|
||||
ya.$toolAll.tools.showToast('授权成功','success')
|
||||
ya.$emit('cancleEv',0)
|
||||
ya.$emit('buttonH',true)
|
||||
if(ya.url!=''){
|
||||
setTimeout(()=>{uni.navigateTo({url:ya.url})},1000)
|
||||
}
|
||||
},
|
||||
getphonenumber(e){//授权绑定手机号
|
||||
if(e.detail.errMsg=="getPhoneNumber:ok"){
|
||||
this.$requst.post('user/bind-phone',{iv:e.detail.iv,encryptedData:e.detail.encryptedData}).then(res=>{
|
||||
// console.log('手机号信息:',res);
|
||||
if(res.code==0){
|
||||
this.$toolAll.tools.showToast('手机号绑定成功','success');
|
||||
this.visible = false;
|
||||
}
|
||||
},error=>{})
|
||||
} else {
|
||||
console.log('用户拒绝');
|
||||
}
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.auth-box {position: fixed;top: 0;right: 0;left: 0;bottom: 0;display: flex;justify-content: center;align-items: center;z-index: 3;}
|
||||
.auth-box > view {background-color: #FFFFFF;border-radius: 10rpx;padding: 30rpx;box-shadow: 0rpx 0rpx 20rpx rgba(0,0,0,.5);margin: 0 100rpx;}
|
||||
.auth-top {display: flex;}
|
||||
.auth-top image {width: 96rpx;height: 96rpx;flex-shrink: 0;}
|
||||
.auth-top-content {margin-left: 20rpx;}
|
||||
.auth-top-content view {font-size: 28rpx;margin-top: 20rpx;color: #999999;}
|
||||
.auth-top-content view:nth-child(1) {font-size: 30rpx;font-weight: bold;margin-top: 0;}
|
||||
.auth-center {font-size: 28rpx;margin: 30rpx 0;border-bottom: 1rpx solid #F5F5F5;border-top: 1rpx solid #F5F5F5;padding: 20rpx 0;}
|
||||
.auth-bottom {display: flex;justify-content: center;align-items: center;font-size: 24rpx;}
|
||||
.btn {padding: 12rpx 40rpx;border-radius: 4rpx;}
|
||||
.btn-no {color: #07ad60;background-color: #FFFFFF;border: 1rpx solid #CCCCCC;}
|
||||
.btn-yes {color: #FFFFFF;background-color: #07ad60;border: 1rpx solid #07ad60;position: relative;margin-left: 20rpx;}
|
||||
.auth-btn {position: absolute;top: 0;left: 0;right: 0;bottom: 0;opacity: 0;}
|
||||
.isNyin{box-shadow: 0rpx 3rpx 6rpx rgba(0,0,0,.5);}
|
||||
.isOyin{box-shadow: 0rpx 3rpx 6rpx rgba(0,0,0,1);}
|
||||
.card-box-userinfo {transform: rotate(360deg) scale(0);transition: all 1s ease-in-out;}
|
||||
</style>
|
|
@ -2,7 +2,7 @@
|
|||
<view>
|
||||
<scroll-view scroll-x >
|
||||
<view class="" :class="isCenter?'disac':'disjb'">
|
||||
<view @tap="choosecate(index)"
|
||||
<view @tap="choosecate(index)" v-if="item.title!='日记分享' && item.title!='效果模拟'"
|
||||
:style="{
|
||||
background : newCurrent==index ? activeb:newbmo,
|
||||
fontSize:newfmo+'px',
|
||||
|
|
|
@ -1,22 +1,20 @@
|
|||
<template>
|
||||
<view @touchmove.stop.prevent="moveHandle" v-if="vision" class="auth-box">
|
||||
<view>
|
||||
<view @touchmove.stop.prevent="moveHandle" v-if="vision" style="position: fixed;top: 0;right: 0;left: 0;bottom: 0;display: flex;justify-content: center;align-items: center;z-index: 3;">
|
||||
<view style="background-color: #FFFFFF;border-radius: 10rpx;padding: 30rpx;box-shadow: 0rpx 0rpx 20rpx rgba(0,0,0,.5);margin: 0 100rpx;">
|
||||
<view style="display: flex;">
|
||||
<image :src="appletImg" style="width: 96rpx;height: 96rpx;flex-shrink: 0;" mode=""></image>
|
||||
<view style="margin-left: 20rpx;">
|
||||
<view style="font-size: 30rpx;font-weight: bold;">恒美植发客服代表提醒您:</view>
|
||||
<view style="font-size: 28rpx;margin-top: 20rpx;color: #999999;">您当前是游客身份</view>
|
||||
<view style="font-size: 28rpx;margin-top: 20rpx;color: #999999;">是否选择授权登录</view>
|
||||
<view class="auth-top">
|
||||
<image :src="appletImg" mode=""></image>
|
||||
<view class="auth-top-content">
|
||||
<view>恒美植发客服代表提醒您:</view>
|
||||
<view>您当前是游客身份</view>
|
||||
<view>是否选择授权登录</view>
|
||||
</view>
|
||||
</view>
|
||||
<view style="font-size: 28rpx;margin: 30rpx 0;border-bottom: 1rpx solid #F5F5F5;border-top: 1rpx solid #F5F5F5;padding: 20rpx 0;">申请 获取你的昵称、头像、地区及性别</view>
|
||||
<view style="display: flex;justify-content: center;align-items: center;font-size: 24rpx;">
|
||||
<view @tap="chooseBtn(0)" :class="isNo?'isNyin':'noyin'" style="color: #07ad60;background-color: #FFFFFF;padding: 12rpx 40rpx;border-radius: 4rpx;border: 1rpx solid #CCCCCC;">暂不授权</view>
|
||||
<view @tap="chooseBtn(1)" :class="isOk?'isOyin':'noyin'" style="background-color: #07ad60;padding: 12rpx 40rpx;color: #FFFFFF;margin-left: 20rpx;border: 1rpx solid #07ad60;position: relative;">
|
||||
<view class="auth-center">申请 获取你的昵称、头像、地区及性别</view>
|
||||
<view class="auth-bottom">
|
||||
<view @tap="chooseBtn(0)" :class="isNo?'isNyin':'noyin'" class="btn btn-no">暂不授权</view>
|
||||
<view @tap="chooseBtn(1)" :class="isOk?'isOyin':'noyin'" class="btn btn-yes">
|
||||
<text>立即授权</text>
|
||||
<button open-type="getUserInfo" @tap="shouq" style="position: absolute;top: 0;left: 0;right: 0;bottom: 0;opacity: 0;">立即授权</button>
|
||||
</view>
|
||||
<button open-type="getUserInfo" @tap="shouq" class="auth-btn">立即授权</button>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -146,6 +144,19 @@
|
|||
</script>
|
||||
|
||||
<style>
|
||||
.auth-box {position: fixed;top: 0;right: 0;left: 0;bottom: 0;display: flex;justify-content: center;align-items: center;z-index: 3;}
|
||||
.auth-box > view {background-color: #FFFFFF;border-radius: 10rpx;padding: 30rpx;box-shadow: 0rpx 0rpx 20rpx rgba(0,0,0,.5);margin: 0 100rpx;}
|
||||
.auth-top {display: flex;}
|
||||
.auth-top image {width: 96rpx;height: 96rpx;flex-shrink: 0;}
|
||||
.auth-top-content {margin-left: 20rpx;}
|
||||
.auth-top-content view {font-size: 28rpx;margin-top: 20rpx;color: #999999;}
|
||||
.auth-top-content view:nth-child(1) {font-size: 30rpx;font-weight: bold;margin-top: 0;}
|
||||
.auth-center {font-size: 28rpx;margin: 30rpx 0;border-bottom: 1rpx solid #F5F5F5;border-top: 1rpx solid #F5F5F5;padding: 20rpx 0;}
|
||||
.auth-bottom {display: flex;justify-content: center;align-items: center;font-size: 24rpx;}
|
||||
.btn {padding: 12rpx 40rpx;border-radius: 4rpx;}
|
||||
.btn-no {color: #07ad60;background-color: #FFFFFF;border: 1rpx solid #CCCCCC;}
|
||||
.btn-yes {color: #FFFFFF;background-color: #07ad60;border: 1rpx solid #07ad60;position: relative;margin-left: 20rpx;}
|
||||
.auth-btn {position: absolute;top: 0;left: 0;right: 0;bottom: 0;opacity: 0;}
|
||||
.isNyin{box-shadow: 0rpx 3rpx 6rpx rgba(0,0,0,.5);}
|
||||
.isOyin{box-shadow: 0rpx 3rpx 6rpx rgba(0,0,0,1);}
|
||||
</style>
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
<!-- 视频标题 -->
|
||||
<view class="fon30 bold mar-x10 disac" :style="{fontSize:nFon+'px'}">
|
||||
<view class="clips1">{{item.title}}</view>
|
||||
<text v-if="item.isVideo" :style="{fontSize:(nFon-2)+'px',marginLeft:nmarz+'px'}" style="border-radius: 5rpx;padding: 0 6rpx;text-align: center;" class="pbackc flexs">视频</text></view>
|
||||
<text v-if="item.isVideo && isVedio" :style="{fontSize:(nFon-2)+'px',marginLeft:nmarz+'px'}" style="border-radius: 5rpx;padding: 0 6rpx;text-align: center;" class="pbackc flexs">视频</text></view>
|
||||
<!-- 视频描述 -->
|
||||
<view class="mar-x10 clips1 opc">{{item.content}}</view>
|
||||
<view class="disac">
|
||||
|
@ -26,7 +26,7 @@
|
|||
<view class="clips1 opc">{{item.name}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<image v-if="item.isVideo" :style="{width:nWidth+'rpx',height:nHeight+'rpx'}" class="posia" style="top: 50%;left: 50%;transform: translate(-50%,-50%);" src="/static/public/video.png" mode=""></image>
|
||||
<image v-if="item.isVideo && isVedio" :style="{width:nWidth+'rpx',height:nHeight+'rpx'}" class="posia" style="top: 50%;left: 50%;transform: translate(-50%,-50%);" src="/static/public/video.png" mode=""></image>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 右侧列表 -->
|
||||
|
@ -44,7 +44,7 @@
|
|||
<!-- 视频标题 -->
|
||||
<view class="fon30 bold mar-x10 disac" :style="{fontSize:nFon+'px'}">
|
||||
<view class="clips1">{{item.title}}</view>
|
||||
<text v-if="item.isVideo" :style="{fontSize:(nFon-2)+'px',marginLeft:nmarz+'px'}" style="border-radius: 5rpx;padding: 0 6rpx;text-align: center;" class="pbackc flexs">视频</text>
|
||||
<text v-if="item.isVideo && isVedio" :style="{fontSize:(nFon-2)+'px',marginLeft:nmarz+'px'}" style="border-radius: 5rpx;padding: 0 6rpx;text-align: center;" class="pbackc flexs">视频</text>
|
||||
</view>
|
||||
<!-- 视频描述 -->
|
||||
<view class="mar-x10 clips1 opc">{{item.content}}</view>
|
||||
|
@ -55,13 +55,13 @@
|
|||
<view class="clips1 opc">{{item.name}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<image v-if="item.isVideo" :style="{width:nWidth+'rpx',height:nHeight+'rpx'}" class="posia" style="top: 50%;left: 50%;transform: translate(-50%,-50%);" src="/static/public/video.png" mode=""></image>
|
||||
<image v-if="item.isVideo && isVedio" :style="{width:nWidth+'rpx',height:nHeight+'rpx'}" class="posia" style="top: 50%;left: 50%;transform: translate(-50%,-50%);" src="/static/public/video.png" mode=""></image>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-else class="" style="display: flex;flex-direction: column;align-items: center;">
|
||||
<image src="/static/public/nothing.png" style="width: 474rpx;height: 273rpx;" mode="aspectFill"></image>
|
||||
<view class="fon24 col3" style="margin-bottom: 60rpx;">暂无内容</view>
|
||||
<!-- <view class="fon24 col3" style="margin-bottom: 60rpx;">暂无内容</view> -->
|
||||
</view>
|
||||
<!-- 弹框 -->
|
||||
<pu-po :isShowT="isShowT" :contentVal="pu_content" @comfirmev="comfirmev" @cancleev="cancleev"></pu-po>
|
||||
|
@ -111,7 +111,8 @@
|
|||
isShowT:false,
|
||||
pu_content:'是否需要取消收藏?',
|
||||
current:'-1',
|
||||
jieDuan:false
|
||||
jieDuan:false,
|
||||
isVedio:uni.getStorageSync('isVedio')
|
||||
};
|
||||
},
|
||||
methods:{
|
||||
|
@ -123,7 +124,6 @@
|
|||
let isAuth = this.$toolAll.tools.returnAuth()
|
||||
if(!isAuth){
|
||||
uni.navigateTo({
|
||||
// url:'/pagesB/problemDetail/problemDetail?isCate='+this.list[index].isCate
|
||||
url:'/pagesB/problemDetail/problemDetail?id='+this.list[index].id+'&category_id='+this.list[index].category_id
|
||||
})
|
||||
} else this.jieDuan = true
|
||||
|
@ -134,7 +134,6 @@
|
|||
if(this.jieDuan==false){
|
||||
let isAuth = this.$toolAll.tools.returnAuth()
|
||||
if(!isAuth){
|
||||
// this.$emit('chooseLike',this.list[index].id)
|
||||
this.$emit('chooseLike',index)
|
||||
this.current = index
|
||||
if(this.list[index].is_collected==1) {
|
||||
|
@ -152,7 +151,6 @@
|
|||
},
|
||||
comfirmev(){
|
||||
// console.log('取消收藏成功');
|
||||
// this.$emit('comfirmev',this.list[this.current].id)
|
||||
this.$emit('comfirmev',this.current)
|
||||
this.isShowT = false
|
||||
},
|
||||
|
|
|
@ -86,20 +86,7 @@
|
|||
dataList:{
|
||||
type:Array,
|
||||
default:function(){
|
||||
return [
|
||||
{
|
||||
imgSrc:'/static/public/wen-one.png',//商品图片
|
||||
title:'【99皮皮节】【种植发际 线】1000单位FUE技术...',//标题
|
||||
zhePrice:'3888',//折扣价
|
||||
yuanPrice:'4205',//原价
|
||||
integral:'2888',//积分
|
||||
isTuan:false,//是否团购
|
||||
isPing:false,//是否拼团
|
||||
isXian:false,//是否限时促销
|
||||
isIntegral:false,//是否是积分
|
||||
grade:0,//等级
|
||||
}
|
||||
]
|
||||
return []
|
||||
}
|
||||
},
|
||||
iswhere:{
|
||||
|
@ -155,12 +142,19 @@
|
|||
methods:{
|
||||
destroyev(){
|
||||
uni.clearInterval(this.timer);
|
||||
console.log(12);
|
||||
this.$emit('destroyEv')
|
||||
},
|
||||
goPage(id,index){//进入商品详情事件
|
||||
let is_activity = 0;
|
||||
let shopId = 0;
|
||||
if(this.dataList[index].isTuan==true || this.dataList[index].isPing==true || this.dataList[index].isXian==true) {
|
||||
is_activity = 1;
|
||||
shopId = this.dataList[index].activity_id;
|
||||
} else {
|
||||
shopId = id;
|
||||
}
|
||||
uni.navigateTo({
|
||||
url:`/pagesB/shopDetail/shopDetail?id=${id}&isIntegral=${this.dataList[index].isIntegral}`
|
||||
url:`/pagesB/shopDetail/shopDetail?id=${shopId}&isIntegral=${this.dataList[index].isIntegral}&is_activity=${is_activity}`
|
||||
})
|
||||
},
|
||||
}
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<swiper-item v-for="(item,index) in bannerList" :key="index">
|
||||
<view @tap="chooseImg(index)" class="posir">
|
||||
<image :style="{borderRadius:newRadius+'px',height:newHeight+'px'}" class="img" :src="item.imgSrc" mode="aspectFill"></image>
|
||||
<image @tap.stop="playVideo(index)" v-if="item.isVideo" class="posia" style="top: 50%;left: 50%;transform: translate(-50%,-50%);width: 126rpx;height: 126rpx;z-index: 1;" src="/static/public/video.png" mode=""></image>
|
||||
<image @tap.stop="playVideo(index)" v-if="item.isVideo && isVedio" class="posia" style="top: 50%;left: 50%;transform: translate(-50%,-50%);width: 126rpx;height: 126rpx;z-index: 1;" src="/static/public/video.png" mode=""></image>
|
||||
</view>
|
||||
</swiper-item>
|
||||
</swiper>
|
||||
|
@ -60,6 +60,7 @@
|
|||
bcurrent:0,
|
||||
isShowVideo:false,
|
||||
autoplay:false,
|
||||
isVedio:uni.getStorageSync('isVedio')
|
||||
};
|
||||
},
|
||||
methods:{
|
||||
|
@ -70,12 +71,22 @@
|
|||
let imgList = []
|
||||
this.bannerList.forEach(item=>{
|
||||
let nurl = ''
|
||||
let obj = {}
|
||||
if(this.isVedio) {
|
||||
item.url=='' ? nurl = item.imgSrc : nurl = item.url
|
||||
let obj = {
|
||||
obj = {
|
||||
url:nurl,
|
||||
type:item.isVideo?'video':'image',
|
||||
poster:item.poster
|
||||
}
|
||||
} else {
|
||||
nurl = item.imgSrc
|
||||
obj = {
|
||||
url:nurl,
|
||||
type:'image',
|
||||
poster:item.poster
|
||||
}
|
||||
}
|
||||
imgList.push(obj)
|
||||
})
|
||||
uni.previewMedia({
|
||||
|
|
|
@ -4,7 +4,7 @@ console.log('当前环境', process.env.NODE_ENV)
|
|||
const apiHub = {
|
||||
//开发环境
|
||||
development: {
|
||||
BASE_URL: "https://hengmei.scdxtc.cn/api/",
|
||||
BASE_URL: this.$hostapi,
|
||||
// BASE_URL: "https://hm.hmzfyy.cn/api/",
|
||||
IMG_URL: "https://xx",
|
||||
BASE_UPLOAD_URL: "",
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
const domainName = 'https://hengmei.scdxtc.cn/api/'//域名配置
|
||||
// const domainName = 'https://hengmei.scdxtc.cn/api/'//域名配置
|
||||
const domainName = 'https://hm.hmzfyy.cn/api/'//域名配置
|
||||
// 统一给参数
|
||||
const dataObj = (url, params) => {
|
||||
let options = params
|
||||
|
|
|
@ -202,7 +202,7 @@ const tools = {
|
|||
},
|
||||
escape2Html(str) {//富文本
|
||||
var arrEntities = { 'lt': '<', 'gt': '>', 'nbsp': ' ', 'amp': '&', 'quot': '"' };
|
||||
return str.replace(/&(lt|gt|nbsp|amp|quot|src);/ig, function (all, t) { return arrEntities[t]; }).replace('<section', '<div').replace(/\<img/g, '<img @tap="pre" style="max-width:100%;height:auto" ').replace(/src=\"/g,'src="https://oss.hmzfyy.cn');
|
||||
return str.replace(/&(lt|gt|nbsp|amp|quot|src);/ig, function (all, t) { return arrEntities[t]; }).replace('<section', '<div').replace(/\<img/g, '<img @tap="pre" style="max-width:100%!important;height:auto" ').replace(/src=\"/g,'src="https://oss.hmzfyy.cn');
|
||||
},
|
||||
setTime(url,title,time){
|
||||
// console.log(url,title,time);
|
||||
|
@ -272,6 +272,7 @@ const tools = {
|
|||
}
|
||||
},
|
||||
loginEv(){//执行登录事件
|
||||
let that = this;
|
||||
uni.login({
|
||||
provider: 'weixin',
|
||||
success: function(res) {
|
||||
|
@ -290,7 +291,7 @@ const tools = {
|
|||
language:obj.language
|
||||
}
|
||||
uni.request({
|
||||
url: `https://hengmei.scdxtc.cn/api/user/login`,
|
||||
url: `${that.$hostapi}user/login`,
|
||||
method: 'post',
|
||||
data: params,
|
||||
header: {
|
||||
|
@ -381,6 +382,27 @@ const tools = {
|
|||
}
|
||||
return newTime;
|
||||
},
|
||||
isVedio(){//是否显示视频内容
|
||||
uni.request({
|
||||
url: `https://hm.hmzfyy.cn/api/index/base-config`,
|
||||
method: 'get',
|
||||
header: {
|
||||
'Content-Type': 'application/json; charset=UTF-8',
|
||||
// "content-type": "application/x-www-form-urlencoded;charset=UTF-8",
|
||||
'Authorization': 'Bearer '+uni.getStorageSync('token') || ''
|
||||
},
|
||||
success: res => {
|
||||
if(res.data.code==0){
|
||||
if(res.data.data.v==0) {
|
||||
uni.setStorageSync('isVedio',false);
|
||||
} else {
|
||||
uni.setStorageSync('isVedio',true);
|
||||
}
|
||||
// console.log(uni.getStorageSync('isVedio/'));
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
6
main.js
6
main.js
|
@ -20,6 +20,8 @@ import authPhone from './components/auth-phone.vue'//引入手机授权组件
|
|||
Vue.component('auth-phone',authPhone)//全局注册手机授权组件
|
||||
import empower from './components/empower.vue'//引入用户授权组件
|
||||
Vue.component('empower',empower)//全局注册用户授权组件
|
||||
import authUserInfoMobile from './components/auth-userInfo-mobile.vue'//引入授权用户信息,授权手机号组件
|
||||
Vue.component('auth-userInfo-mobile',authUserInfoMobile)//全局注册授权用户信息,授权手机号组件
|
||||
|
||||
|
||||
// 常用工具
|
||||
|
@ -30,7 +32,9 @@ import requst from '@/jsFile/requst.js'
|
|||
Vue.prototype.$requst = requst;
|
||||
// 域名,专治后台仔没有返回http/https的图片
|
||||
// Vue.prototype.$http = 'https://hm.hmzfyy.cn'
|
||||
Vue.prototype.$http = 'https://oss.hmzfyy.cn'
|
||||
Vue.prototype.$http = 'https://oss.hmzfyy.cn';
|
||||
// Vue.prototype.$newUrl = 'https://hengmei.scdxtc.cn/api/';
|
||||
Vue.prototype.$hostapi = 'https://hm.hmzfyy.cn/api/';
|
||||
|
||||
const {log} = console;
|
||||
Vue.prototype.$log = log
|
||||
|
|
|
@ -312,7 +312,13 @@
|
|||
}
|
||||
}
|
||||
// 获取列表
|
||||
if(this.page==1) this.dataList = []
|
||||
if(this.page==1) {
|
||||
this.dataList = [];
|
||||
uni.pageScrollTo({
|
||||
scrollTop:0,
|
||||
duration:0
|
||||
})
|
||||
}
|
||||
if(res.data.list.list.length!=0){
|
||||
this.total = res.data.list.total
|
||||
res.data.list.list.forEach(item=>{
|
||||
|
@ -332,10 +338,7 @@
|
|||
name:item.published_by || '恒美植发',//发布者昵称
|
||||
isVideo:item.video.includes(".mp4")//是否是视频
|
||||
}
|
||||
if(this.newCurrent==0 && item.category_id==32) this.dataList.push(tObj)
|
||||
if(this.newCurrent==1 && item.category_id==33) this.dataList.push(tObj)
|
||||
if(this.newCurrent==2 && item.category_id==34) this.dataList.push(tObj)
|
||||
if(this.newCurrent==3 && item.category_id==38) this.dataList.push(tObj)
|
||||
this.dataList.push(tObj);
|
||||
})
|
||||
}
|
||||
}
|
||||
|
@ -409,7 +412,7 @@
|
|||
is_hot:1
|
||||
}
|
||||
uni.request({
|
||||
url:'https://hengmei.scdxtc.cn/api/spu/list',
|
||||
url:`${this.$hostapi}spu/list`,
|
||||
data:params,
|
||||
method:'post',
|
||||
header:{
|
||||
|
|
|
@ -28,7 +28,8 @@
|
|||
<image @tap="tuneUpqr" src="/static/public/staff-qro.png" class="gao-m" mode=""></image>
|
||||
<!-- 前进键 -->
|
||||
<view @tap="goNodifyData" class="disac gao-next-box">
|
||||
<image class="" src="/static/public/next-white.png" mode="aspectFill"></image>
|
||||
<!-- <image class="" src="/static/public/next-white.png" mode="aspectFill"></image> -->
|
||||
<image class="" src="/static/public/set-icon.png" mode="aspectFill"></image>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -146,10 +147,10 @@
|
|||
<!-- 底部tab -->
|
||||
<foot-tab :titleList="titleList" :imgList="imgList" :newcurrent='4'></foot-tab>
|
||||
<!-- 弹框授权 -->
|
||||
<empower :vision="vision" @cancleEv="cancleEv"></empower>
|
||||
<view v-if="isQian" class="sigin-box">
|
||||
<view>{{contentVal}}</view>
|
||||
</view>
|
||||
<auth-userInfo-mobile :optionObj="optionObj"></auth-userInfo-mobile>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
|
@ -161,7 +162,6 @@
|
|||
components:{empower},
|
||||
data() {
|
||||
return {
|
||||
vision:false,
|
||||
statusHNH:uni.getStorageSync('statusHNH'),
|
||||
publicColor:uni.getStorageSync('publicColor'),
|
||||
tongList:[
|
||||
|
@ -215,7 +215,6 @@
|
|||
isQian:false,
|
||||
bannerList:[],
|
||||
guangImg:'',
|
||||
isAuth:'',
|
||||
guanggao:'',
|
||||
userToken:'',
|
||||
contentVal:'',//扫码后的提示内容
|
||||
|
@ -227,6 +226,7 @@
|
|||
customerInfo:'',
|
||||
times:0,
|
||||
openSettingBtnHidden: true,//是否授权
|
||||
optionObj:{}
|
||||
}
|
||||
},
|
||||
onUnload: function() {
|
||||
|
@ -283,7 +283,8 @@
|
|||
onUnload() {
|
||||
this.closeqr();
|
||||
},
|
||||
onLoad() {
|
||||
onLoad(options) {
|
||||
this.optionObj = options;
|
||||
if(uni.getStorageSync('gao')==''){
|
||||
const query = wx.createSelectorQuery()
|
||||
query.select('.gao').boundingClientRect((rect) => {
|
||||
|
@ -472,9 +473,6 @@
|
|||
}
|
||||
})
|
||||
},
|
||||
cancleEv(e){
|
||||
if(e==0) this.vision = false
|
||||
},
|
||||
checkGM(){//查询个人二维码事件
|
||||
uni.showToast({
|
||||
title:'正在生成二维码',
|
||||
|
@ -499,6 +497,7 @@
|
|||
if(res.code==0 && res.data.length!=0) {
|
||||
this.userInfo = res.data;
|
||||
uni.setStorageSync('userId',res.data.id);
|
||||
uni.setStorageSync('phone',this.userInfo.mobile);
|
||||
this.userPhone = this.$toolAll.tools.hideMPhone(this.userInfo.mobile)
|
||||
this.tongList[0].num = res.data.score;//个人积分
|
||||
this.tongList[1].num = res.data.coin;//个人孔雀币
|
||||
|
|
|
@ -158,7 +158,6 @@
|
|||
onShow() {
|
||||
log('输出的解构')
|
||||
this.checkNet()
|
||||
this.$toolAll.tools.overdue()
|
||||
this.$toolAll.tools.isLogin()
|
||||
let maiOjb = {
|
||||
e:6,//进入首页
|
||||
|
@ -173,7 +172,6 @@
|
|||
this.isAutoPlay = true;
|
||||
},
|
||||
onShareAppMessage(res) {
|
||||
console.log(uni.getStorageSync('invite_code'));
|
||||
var ya = this;
|
||||
let maiOjb = {
|
||||
e:6,//内容分享
|
||||
|
@ -182,16 +180,30 @@
|
|||
this.$toolAll.tools.maiDian(maiOjb)
|
||||
var shareObj = {
|
||||
title: '成都恒美毛发', // 默认是小程序的名称(可以写slogan等)
|
||||
path: `/pages/tabbar/pagehome/pagehome?invite_code=${uni.getStorageSync('invite_code')}}` // 默认是当前页面,必须是以‘/’开头的完整路径
|
||||
path: `/pages/tabbar/pagehome/pagehome?invite_code=${uni.getStorageSync('invite_code')}` // 默认是当前页面,必须是以‘/’开头的完整路径
|
||||
};
|
||||
return shareObj;
|
||||
},
|
||||
onLoad(options) {
|
||||
if(options.source_code!='' && options.source_code!=undefined){
|
||||
this.loginEv(options);
|
||||
} else if(options.q!=undefined){
|
||||
let newInvite = options.q.slice(options.q.indexOf('invite_code%')+14);
|
||||
uni.login({
|
||||
provider: 'weixin',
|
||||
success: (res)=> {
|
||||
var params = {
|
||||
code:res.code,
|
||||
invite_code:newInvite,//用户邀请码
|
||||
}
|
||||
if(options.invite_code!='' && options.invite_code!=undefined){
|
||||
console.log(newInvite,'邀请码');
|
||||
this.$requst.post('user/login',params).then(res => {console.log('调用成功');},error => {})
|
||||
},
|
||||
});
|
||||
} else if(options.invite_code!='' && options.invite_code!=undefined){
|
||||
this.loginEv(options);
|
||||
} else {
|
||||
this.$toolAll.tools.overdue()
|
||||
}
|
||||
const query = wx.createSelectorQuery()
|
||||
query.select('.statusHNH').boundingClientRect((rect) => {
|
||||
|
@ -213,6 +225,7 @@
|
|||
},
|
||||
methods: {
|
||||
loginEv(option){
|
||||
console.log(option,'option');
|
||||
uni.login({
|
||||
provider: 'weixin',
|
||||
success: (res)=> {
|
||||
|
@ -222,6 +235,7 @@
|
|||
source_code:option.source_code || '',
|
||||
channel:option.channel || ''
|
||||
}
|
||||
console.log(option.invite_code);
|
||||
this.$requst.post('user/login',params).then(res => {console.log('调用成功');},error => {})
|
||||
},
|
||||
});
|
||||
|
|
|
@ -304,7 +304,7 @@
|
|||
disease_id:this.disease_id//病种ID
|
||||
}
|
||||
uni.request({
|
||||
url:'https://hengmei.scdxtc.cn/api/spu/list',
|
||||
url:`${this.$hostapi}spu/list`,
|
||||
data:params,
|
||||
method:'post',
|
||||
header:{
|
||||
|
@ -349,6 +349,7 @@
|
|||
activity_end_at:item.activity_end_at,//限时结束时间
|
||||
activity_group_cover:group_cover,//参团人的头像
|
||||
activity_group_num:item.activity_group_num,//已经参团人数
|
||||
activity_id:item.activity_id
|
||||
}
|
||||
this.zanArr.push(obj)
|
||||
})
|
||||
|
@ -399,8 +400,16 @@
|
|||
})
|
||||
},
|
||||
goPage(id,index){//进入商品详情事件
|
||||
let is_activity = 0;
|
||||
let shopId = 0;
|
||||
if(this.dataList[index].isTuan==true || this.dataList[index].isPing==true || this.dataList[index].isXian==true) {
|
||||
is_activity = 1;
|
||||
shopId = this.dataList[index].activity_id;
|
||||
} else {
|
||||
shopId = id;
|
||||
}
|
||||
uni.navigateTo({
|
||||
url:`/pagesB/shopDetail/shopDetail?id=${id}&isIntegral=${this.dataList[index].isIntegral}`
|
||||
url:`/pagesB/shopDetail/shopDetail?id=${shopId}&isIntegral=${this.dataList[index].isIntegral}&is_activity=${is_activity}`
|
||||
})
|
||||
},
|
||||
chooseBing(index){//小分类选择事件
|
||||
|
|
|
@ -16,6 +16,7 @@
|
|||
<view class="mar-s30">活动要求:{{item.description}}</view>
|
||||
<view class="mar-s20">获得奖励:{{item.amount}} <span v-if="item.isIcon!=1">积分</span><span v-else>孔雀币</span></view>
|
||||
<view class="mar-s20">会员:暂无</view>
|
||||
<view class="mar-s20">开始时间:{{item.startTime}}</view>
|
||||
<view class="mar-s20">结束时间:{{item.endTime}}</view>
|
||||
</view>
|
||||
<view class="disjcac">
|
||||
|
@ -213,6 +214,7 @@
|
|||
account_status:item.account_status,
|
||||
member:'',//会员
|
||||
isStatus:item.status,
|
||||
startTime:item.start_at,//开始时间
|
||||
endTime:item.end_at,//结束时间
|
||||
isIcon:nIcon,//什么类型的任务 0签到 1孔雀币 2积分 3分享截图
|
||||
ntype:item.type//签到类型
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
}
|
||||
})
|
||||
}
|
||||
if(this.dataList[index].isTiyan==false && this.dataList[index].statusNum==0) {
|
||||
uni.navigateTo({url:'/pages/tabbar/shop/shop'})
|
||||
}
|
||||
if(this.dataList[index].isTiyan==true && this.dataList[index].statusNum==0){
|
||||
this.tyImg = this.dataList[index].cover;
|
||||
this.$requst.post('user/exhibition-experience-coupon',{coupon_id:this.dataList[index].id}).then(res=>{
|
||||
|
@ -172,6 +175,7 @@
|
|||
})
|
||||
},3000)
|
||||
}
|
||||
|
||||
},
|
||||
closeQuanEv(){
|
||||
this.isTY = false;
|
||||
|
|
|
@ -161,6 +161,18 @@
|
|||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 分享弹框 -->
|
||||
<view v-if="isfen" class="posAll disjcac" style="background-color: rgba(0,0,0,.25);z-index: 8;">
|
||||
<view class="bacf width100 radius20 posir" style="padding: 60rpx 50rpx;margin: 0 70rpx;text-align: center;">
|
||||
<image @tap="isfen=false" src="../../static/public/closequan.png" class="posia heyan-close" mode=""></image>
|
||||
<view style="color: #f55255;font-size: 36rpx;">立即完成拼单?</view>
|
||||
<view style="margin: 50rpx 0;font-size: 26rpx;">点击下方分享给朋友,完成拼单</view>
|
||||
<view class="posir radius15 disjcac pad-sx20" style="background-color: #22cc3e;color: #FFFFFF;font-size: 36rpx;">
|
||||
分享给朋友
|
||||
<button open-type="share" class="posia-op">分享给朋友</button>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 弹框授权 -->
|
||||
<empower @buttonH="buttonH" :vision="vision" :isWhere="2"></empower>
|
||||
<!-- 弹框 -->
|
||||
|
@ -213,10 +225,29 @@
|
|||
ntype:'money',//默认money孔雀币转钱 coin钱转孔雀币
|
||||
times:0,//点击次数
|
||||
isCurrent:2,
|
||||
vision:true,
|
||||
vision:false,
|
||||
isShowP:false,
|
||||
isfen:false,
|
||||
checkGrounpId:0,
|
||||
}
|
||||
},
|
||||
onShareAppMessage(res) {
|
||||
var ya = this;
|
||||
this.$requst.post('user/record',{type:'content',action:'share',id:this.orderList[0].id}).then(res=>{console.log('分享成功:',res);},error=>{})
|
||||
let maiOjb = {
|
||||
e:4,//内容分享
|
||||
c:this.orderList[0].id*1,
|
||||
t:new Date().getTime()//当前时间戳
|
||||
}
|
||||
this.$toolAll.tools.maiDian(maiOjb);
|
||||
if(ya.addressInfo.share_img==null) ya.addressInfo.share_img = ya.addressInfo.cover;
|
||||
var shareObj = {
|
||||
title: `${ya.orderList[0].title}`, // 默认是小程序的名称(可以写slogan等)
|
||||
path: `/pagesB/shopDetail/shopDetail?id=${this.orderList[0].id}&category_id=${this.orderList[0].category_id}&share_id=${this.checkGrounpId}&invite_code=${uni.getStorageSync('invite_code')}&shareCate=${this.orderList[0].cateNum}&checkGrounpId=${this.orderList[0].checkGrounpId}`, // 默认是当前页面,必须是以‘/’开头的完整路径
|
||||
imageUrl: ya.orderList[0].imgSrc//自定义图片路径,可以是本地文件路径、代码包文件路径或者网络图片路径,支持PNG及JPG,不传入 imageUrl 则使用默认截图。显示图片长宽比是 5:4
|
||||
};
|
||||
return shareObj;
|
||||
},
|
||||
onShow() {
|
||||
this.$toolAll.tools.isLogin();
|
||||
this.checkChoose();//检测地址
|
||||
|
@ -480,7 +511,7 @@
|
|||
this.$toolAll.tools.showToast('正在调起支付','loading',1500);
|
||||
}
|
||||
uni.request({
|
||||
url:'https://hengmei.scdxtc.cn/api/order/create',
|
||||
url:`${this.$hostapi}order/create`,
|
||||
data:parmas,
|
||||
method:'post',
|
||||
header:{
|
||||
|
@ -518,8 +549,7 @@
|
|||
success:(res)=> {
|
||||
this.$requst.post('order/paid',{order_coding:info.coding}).then(res=>{
|
||||
if(res.code==0){
|
||||
uni.removeStorageSync('chooseAddress')
|
||||
this.isSuccess = true;
|
||||
this.suseeceEv(info.coding);
|
||||
} else this.$toolAll.tools.showToast(res.msg);
|
||||
|
||||
})
|
||||
|
@ -534,10 +564,20 @@
|
|||
} else {
|
||||
this.$requst.post('order/paid',{order_coding:info.coding}).then(res=>{
|
||||
if(res.code==0){
|
||||
this.suseeceEv(info.coding);
|
||||
} else this.$toolAll.tools.showToast(res.msg);
|
||||
})
|
||||
}
|
||||
},
|
||||
suseeceEv(coding){
|
||||
uni.removeStorageSync('chooseAddress')
|
||||
this.isSuccess = true;
|
||||
} else this.$toolAll.tools.showToast(res.msg);
|
||||
|
||||
if(this.orderList[0].cateNum==1 && this.orderList.pin_user_id!=0){
|
||||
this.isfen = true;
|
||||
this.$requst.post('order/get-group-id',{order_coding:coding}).then(res=>{
|
||||
if(res.code==0){
|
||||
this.checkGrounpId = res.data.group_id;
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
|
|
|
@ -77,7 +77,7 @@
|
|||
isZanw:true,
|
||||
ntype:'in',
|
||||
isHave:false,
|
||||
vision:true,
|
||||
vision:false,
|
||||
isShowP:false,
|
||||
}
|
||||
},
|
||||
|
|
|
@ -48,6 +48,12 @@
|
|||
</view> -->
|
||||
<view class="fon28 col3">
|
||||
<view class="mar-sx20 disje"><span v-if="item.isShop==0">合计:<span v-if="item.is_only!=1">{{item.total}}</span><span v-if="item.is_only==1">{{item.total}}</span> <span v-if="item.coin!=0">+{{item.coin}}孔雀币</span></span><span v-else>合计积分:{{item.total}}</span></view>
|
||||
<view class="disjbac">
|
||||
<view v-if="item.is_only==0 && item.open_one==1 && item.is_group_make==1 && item.open_one_success==0" class="posir disjcac flexs" style="color: #010101;font-size: 24rpx;">
|
||||
<image src="../../static/public/weix.png" mode="" class="flexs" style="width: 50rpx;height: 50rpx;"></image>
|
||||
分享给朋友
|
||||
<button open-type="share" :data-id="index" class="posia-op">分享给朋友</button>
|
||||
</view>
|
||||
<view class="width100 disje">
|
||||
<view @tap="comeing(item.orderNum)" v-if="item.is_only==0 && item.open_one==1 && item.is_group_make==1 && item.open_one_success==0" class="order-btn mar-y20">直接免拼</view>
|
||||
<view @tap="transferFrame(index)" v-if="item.orderStatus != 0 && item.orderStatus != 5 && item.virtual_check==0 && item.orderStatus!=5" class="order-cancle">取消订单</view>
|
||||
|
@ -57,6 +63,7 @@
|
|||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<nothing-page v-if="orderList.length==0" :content="`暂无更多订单列表`"></nothing-page>
|
||||
</view>
|
||||
<!-- 待核验弹框 -->
|
||||
|
@ -139,9 +146,29 @@
|
|||
colorLight: '#ffffff',
|
||||
timer:null,
|
||||
zanArr:[],
|
||||
timeList:[]
|
||||
timeList:[],
|
||||
orderInfo:{},
|
||||
checkGrounpId:0
|
||||
}
|
||||
},
|
||||
onShareAppMessage(res) {
|
||||
var ya = this;
|
||||
let orderIndex = res.target.dataset.id;
|
||||
this.orderInfo = this.orderList[orderIndex];
|
||||
this.$requst.post('user/record',{type:'content',action:'share',id:this.orderInfo.childrenList[0].spu_id}).then(res=>{console.log('分享成功:',res);},error=>{})
|
||||
let maiOjb = {
|
||||
e:4,//内容分享
|
||||
c:this.orderInfo.childrenList[0].spu_id*1,
|
||||
t:new Date().getTime()//当前时间戳
|
||||
}
|
||||
this.$toolAll.tools.maiDian(maiOjb);
|
||||
var shareObj = {
|
||||
title: `${ya.orderInfo.childrenList[0].title}`, // 默认是小程序的名称(可以写slogan等)
|
||||
path: `/pagesB/shopDetail/shopDetail?id=${ya.orderInfo.childrenList[0].spu_activity_id}&category_id=0&share_id=${ya.orderInfo.group_id}&invite_code=${uni.getStorageSync('invite_code')}&shareCate=1&checkGrounpId=${ya.orderInfo.childrenList[0].spu_activity_id}&is_activity=1`, // 默认是当前页面,必须是以‘/’开头的完整路径
|
||||
imageUrl: ya.orderInfo.childrenList[0].imgSrc//自定义图片路径,可以是本地文件路径、代码包文件路径或者网络图片路径,支持PNG及JPG,不传入 imageUrl 则使用默认截图。显示图片长宽比是 5:4
|
||||
};
|
||||
return shareObj;
|
||||
},
|
||||
onReachBottom() {
|
||||
if(this.total!=this.orderList.length){
|
||||
this.page++
|
||||
|
@ -264,7 +291,9 @@
|
|||
not_check_num:items.not_check_num,
|
||||
check_type:items.check_type,
|
||||
is_virtual:items.is_virtual,
|
||||
activity_type:items.activity_type
|
||||
activity_type:items.activity_type,
|
||||
spu_id:items.spu_id,
|
||||
spu_activity_id:items.spu_activity_id
|
||||
}
|
||||
nchildren.push(objs);
|
||||
})
|
||||
|
@ -282,7 +311,8 @@
|
|||
open_one:item.open_one,
|
||||
is_group_make:item.is_group_make,
|
||||
open_one_success:item.open_one_success,
|
||||
group_make_end_at:item.group_make_end_at
|
||||
group_make_end_at:item.group_make_end_at,
|
||||
group_id:item.group_id
|
||||
}
|
||||
this.zanArr.push(obj);
|
||||
})
|
||||
|
|
|
@ -87,7 +87,7 @@
|
|||
size:10,
|
||||
total:'',//总数
|
||||
isZanw:true,
|
||||
vision:true,
|
||||
vision:false,
|
||||
isShowP:false,
|
||||
}
|
||||
},
|
||||
|
|
|
@ -66,7 +66,7 @@
|
|||
sort_value:'asc',//排序值 asc=升序 desc=降序
|
||||
cishu:0,
|
||||
cartNum:0,
|
||||
vision:true,
|
||||
vision:false,
|
||||
isShowP:false,
|
||||
}
|
||||
},
|
||||
|
|
|
@ -115,7 +115,8 @@
|
|||
onLoad() {
|
||||
this.category = this.xialone[0]
|
||||
this.categoryT = this.xialTwo[0]
|
||||
this.checkZParmas()
|
||||
this.checkZParmas();
|
||||
this.lphone = uni.getStorageSync('phone');
|
||||
// this.$toolAll.tools.weekDate()
|
||||
},
|
||||
methods: {
|
||||
|
|
|
@ -80,7 +80,7 @@
|
|||
page:1,
|
||||
size:10,
|
||||
isScore:'',
|
||||
vision:true,
|
||||
vision:false,
|
||||
isShowP:false,
|
||||
}
|
||||
},
|
||||
|
|
|
@ -67,7 +67,7 @@
|
|||
isZanw:true,
|
||||
isSigin:0,
|
||||
loading:false,
|
||||
vision:true,
|
||||
vision:false,
|
||||
isShowP:false,
|
||||
}
|
||||
},
|
||||
|
|
|
@ -9,16 +9,29 @@
|
|||
<!-- 问题类型 -->
|
||||
<view class="disac pad-s32">
|
||||
<view class="flexs mar-y20 titlel">问题类型</view>
|
||||
<view @tap="openXial" class="disjbac width100 radius10 pad-zy20 xiala posir">
|
||||
<radio-group @change="changeCate" class="width100 disac">
|
||||
<label class="radio disac">
|
||||
<radio style="transform: scale(.7);" :value="2" checked color="#3875f6"/><text>改进意见/建议</text>
|
||||
</label>
|
||||
<label class="radio disac">
|
||||
<radio style="transform: scale(.7);" :value="1" color="#3875f6"/><text>投诉</text>
|
||||
</label>
|
||||
</radio-group>
|
||||
<!-- <radio-group @change="changeCate" class="width100 disac">
|
||||
<label class="radio disac" v-for="(iteml,indexl) in xialone" :key="indexl">
|
||||
<radio style="transform: scale(.7);" :value="iteml.id" :checked="indexl==0" color="#3875f6"/><text>{{iteml.title}}</text>
|
||||
</label>
|
||||
</radio-group> -->
|
||||
<!-- 下拉列表 -->
|
||||
<!-- <view @tap="openXial" class="disjbac width100 radius10 pad-zy20 xiala posir">
|
||||
<view>{{category}}</view>
|
||||
<image :class="isZhuan?'zhuan':'nozhuan'" src="/static/public/sanj.png" mode="aspectFill"></image>
|
||||
<!-- 下拉列表 -->
|
||||
<view v-if="isZhuan" class="posia bacf radius10 xial-box">
|
||||
<view class="pad-zy20 xial-item-box">
|
||||
<view @tap="chooseXia(indexl)" :class="xialCurrent==indexl?'pcol':''" v-for="(iteml,indexl) in xialone" :key="indexl">{{iteml.title}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view> -->
|
||||
</view>
|
||||
<!-- 建议意见 -->
|
||||
<view class="dis mar-s20">
|
||||
|
@ -70,16 +83,21 @@
|
|||
isZhuan:false,
|
||||
xialCurrent:0,
|
||||
xialone:[],
|
||||
btnCon:'立即提交'
|
||||
btnCon:'立即提交',
|
||||
}
|
||||
},
|
||||
onShow() {
|
||||
this.$toolAll.tools.isLogin()
|
||||
},
|
||||
onLoad() {
|
||||
this.checkCate()
|
||||
this.checkCate();
|
||||
this.tphone = uni.getStorageSync('phone');
|
||||
},
|
||||
methods: {
|
||||
changeCate(e){
|
||||
console.log(e.detail.value);
|
||||
this.touId = e.detail.value;
|
||||
},
|
||||
checkCate(){
|
||||
this.$requst.post('user/feedback-types').then(res=>{
|
||||
// console.log('问题类型列表:',res);
|
||||
|
@ -101,16 +119,10 @@
|
|||
submit(){
|
||||
if(!this.tmsg){
|
||||
this.$toolAll.tools.showToast('请输入意见及建议')
|
||||
} else {
|
||||
if(this.tphone!=''){
|
||||
if(this.$toolAll.tools.isPhone(this.tphone)){
|
||||
} else if(this.$toolAll.tools.isPhone(this.tphone)){
|
||||
this.$toolAll.tools.showToast('请输入正确的手机号')
|
||||
} else {
|
||||
this.eventEv()
|
||||
}
|
||||
} else {
|
||||
this.eventEv()
|
||||
}
|
||||
this.eventEv();
|
||||
}
|
||||
},
|
||||
eventEv(){
|
||||
|
|
|
@ -89,7 +89,7 @@
|
|||
page:1,
|
||||
total:'',//总数
|
||||
isZanw:true,
|
||||
vision:true,
|
||||
vision:false,
|
||||
isShowP:false,
|
||||
}
|
||||
},
|
||||
|
|
|
@ -17,18 +17,18 @@
|
|||
<view class="bacf radius10 pad20 mar-x20 fon28" v-for="(item,index) in dataList" :key="index">
|
||||
<view class="col3 bold">客户信息</view>
|
||||
<view class="mar-sx20 fon24 disjbac col6">
|
||||
<text>昵称:{{item.customer_name}}</text>
|
||||
<text><text v-if="item.customer_phone!=''">手机号:{{item.customer_phone}}</text><text v-else>暂未绑定手机号</text></text>
|
||||
<text class="clips1">昵称:{{item.customer_name}}</text>
|
||||
<text class="flexs mar-z20"><text v-if="item.customer_phone!=''">手机号:{{item.customer_phone}}</text><text v-else>暂未绑定手机号</text></text>
|
||||
</view>
|
||||
<view class="col3 bold">绑定的客服</view>
|
||||
<view v-if="item.staff!=null" class="mar-s20 fon24 disjbac col6">
|
||||
<text>昵称:{{item.staff.name}}</text>
|
||||
<text v-if="item.staff.phone!=''">手机号:{{item.staff.phone}}</text>
|
||||
<view v-if="item.service!=null" class="mar-s20 fon24 disjbac col6">
|
||||
<text class="clips1">昵称:{{item.service.name}}</text>
|
||||
<text class="flexs mar-z20" v-if="item.service.phone!=''">手机号:{{item.service.phone}}</text>
|
||||
</view>
|
||||
<view v-else class="mar-s20 fon24 disjbac col6">
|
||||
<!-- <view v-else class="mar-s20 fon24 disjbac col6">
|
||||
<text>昵称:{{item.account.nickname}}</text>
|
||||
<text><text v-if="item.account.mobile!=''">手机号:{{item.account.mobile}}</text><text v-else>暂未绑定手机号</text></text>
|
||||
</view>
|
||||
</view> -->
|
||||
</view>
|
||||
<view v-if="dataList.length==0" class="disjcac fc" style="margin-top: 50%;">
|
||||
<image class="zanw-img" src="/static/public/nothing.png" mode="aspectFill"></image>
|
||||
|
@ -39,6 +39,10 @@
|
|||
</view>
|
||||
<!-- 底部客服 -->
|
||||
<public-customer :nbottom="100"></public-customer>
|
||||
<!-- 弹框授权 -->
|
||||
<empower @buttonH="buttonH" :vision="vision" :isWhere="2"></empower>
|
||||
<!-- 弹框 -->
|
||||
<auth-phone v-if="isShowP"></auth-phone>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
|
@ -55,7 +59,9 @@
|
|||
size:10,
|
||||
total:'',//总数
|
||||
isZanw:true,
|
||||
ntype:''//类型 mine=自己绑定的客户 否则是全部
|
||||
ntype:'',//类型 mine=自己绑定的客户 否则是全部
|
||||
vision:false,
|
||||
isShowP:false,
|
||||
}
|
||||
},
|
||||
onPageScroll(e) {
|
||||
|
@ -73,10 +79,44 @@
|
|||
onShow() {
|
||||
this.$toolAll.tools.isLogin()
|
||||
},
|
||||
onLoad() {
|
||||
onLoad(options) {
|
||||
if(uni.getStorageSync('is_active')!=1){this.vision = true;}
|
||||
if(options.invite_code!='' && options.invite_code!=undefined){
|
||||
this.loginEv(options.invite_code);
|
||||
} else if(options.source_code!='' && options.source_code!=undefined){
|
||||
this.loginEv('',options.source_code,options.channel);
|
||||
}
|
||||
this.checkList()
|
||||
},
|
||||
methods: {
|
||||
loginEv(invite_code='',source='',channel=''){
|
||||
uni.login({
|
||||
provider: 'weixin',
|
||||
success: (res)=> {
|
||||
if (res.code) {
|
||||
var params = {
|
||||
code:res.code,
|
||||
invite_code:invite_code,//用户邀请码
|
||||
source_code:source,
|
||||
channel:channel
|
||||
}
|
||||
this.$requst.post('user/login',params).then(res => {
|
||||
if(res.data.token!=''){
|
||||
if(res.data.is_active==0) {
|
||||
this.vision = true;
|
||||
}
|
||||
}
|
||||
},error => {})
|
||||
}
|
||||
},
|
||||
});
|
||||
},
|
||||
buttonH(e){//授权成功
|
||||
if(e) {
|
||||
this.vision = false
|
||||
this.isShowP = true
|
||||
}
|
||||
},
|
||||
searchEv(){//搜索事件
|
||||
if(this.keyword!='') this.ntype = ''
|
||||
this.page = 1
|
||||
|
@ -99,10 +139,11 @@
|
|||
res.data.list.forEach(item=>{
|
||||
let obj = {
|
||||
id:item.account_id,
|
||||
customer_name:item.customer.nickname,
|
||||
customer_phone:item.customer.mobile,
|
||||
staff:item.staff,//绑定的客服
|
||||
account:item.account//备用:当staff不存在时调用,
|
||||
customer_name:item.nickname,
|
||||
customer_phone:item.mobile,
|
||||
service:item.service,
|
||||
// staff:item.staff,//绑定的客服
|
||||
// account:item.account//备用:当staff不存在时调用,
|
||||
}
|
||||
this.dataList.push(obj)
|
||||
})
|
||||
|
|
|
@ -7,7 +7,8 @@
|
|||
<view :style="{paddingTop: statusHNH+'px'}">
|
||||
<view v-if="isLoading" class="bacf mar-s20 pad-s20 pad-y32 pad-x40">
|
||||
<view class="disjb">
|
||||
<view class="pad-z40">
|
||||
<image class="radius10 flexs mar-z30" :src="doctorObj.doctor_extra.headimg || moImg" style="width: 300rpx;height: 300rpx;" mode="aspectFill"></image>
|
||||
<view class="pad-z20 width100">
|
||||
<view class="fon28 bold col3">{{doctorObj.doctor_extra.name}}</view>
|
||||
<view class="disac col80 fon24" style="margin: 6rpx 0;">
|
||||
<view>{{['未知','男','女'][doctorObj.gender]}}</view>
|
||||
|
@ -25,12 +26,16 @@
|
|||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<image class="radius10 flexs" :src="doctorObj.doctor_extra.headimg || moImg" style="width: 246rpx;height: 188rpx;" mode="aspectFill"></image>
|
||||
</view>
|
||||
<view class="mar-z32">
|
||||
<view class="bbot mar-s30"></view>
|
||||
<view class="fon28 bold col3 mar-sx20">个人简介</view>
|
||||
<view class="fon26 col3" style="line-height: 37rpx;">{{doctorObj.doctor_extra.summary}}</view>
|
||||
<view class="fon28 bold col3 mar-sx20">医生简介</view>
|
||||
<rich-text class="fon26 col3" :nodes="peopleJian"></rich-text>
|
||||
</view>
|
||||
<view class="mar-z32">
|
||||
<view class="bbot mar-s30"></view>
|
||||
<view class="fon28 bold col3 mar-sx20">医生详情</view>
|
||||
<rich-text class="fon26 col3" :nodes="detailInfo"></rich-text>
|
||||
</view>
|
||||
</view>
|
||||
<view id="daoh" :class="isTop?'isTop':''" class="isTops" :style="{top:(statusHNH-10)+'px'}">
|
||||
|
@ -39,7 +44,7 @@
|
|||
</view>
|
||||
</view>
|
||||
<view class="mar-zy32 mar-s20" v-if="dataList.length!=0"><list-pu @chooseLike="chooseLike" @comfirmev="comfirmev" :list="dataList"></list-pu></view>
|
||||
<view style="margin-top: 30%;" v-if="dataList.length==0"><list-pu :list="dataList"></list-pu></view>
|
||||
<view style="margin-top: 8%;" v-if="dataList.length==0"><list-pu :list="dataList"></list-pu></view>
|
||||
</view>
|
||||
<view class="pad-zy20 mar-sx30">
|
||||
<!-- 返回顶部 -->
|
||||
|
@ -82,6 +87,8 @@
|
|||
chuTop:'',
|
||||
isTop:false,
|
||||
isLoading:false,
|
||||
detailInfo:'',
|
||||
peopleJian:'',
|
||||
vision:false,
|
||||
isShowP:false,
|
||||
}
|
||||
|
@ -134,7 +141,6 @@
|
|||
this.$requst.post('user/login',params).then(res => {
|
||||
if(res.data.token!=''){
|
||||
if(res.data.is_active==0) {
|
||||
this.haveImg = false;
|
||||
this.vision = true;
|
||||
}
|
||||
}
|
||||
|
@ -144,7 +150,6 @@
|
|||
});
|
||||
},
|
||||
buttonH(e){//授权成功
|
||||
this.haveImg = e
|
||||
if(e) {
|
||||
this.vision = false
|
||||
this.isShowP = true
|
||||
|
@ -168,8 +173,11 @@
|
|||
this.$requst.post('user/doctor-info',{doctor_id:doctor_id}).then(res=>{
|
||||
// console.log('医生详情:',res);
|
||||
if(res.code==0){
|
||||
this.doctorObj = res.data
|
||||
this.isLoading = true
|
||||
this.doctorObj = res.data;
|
||||
// 富文本
|
||||
this.peopleJian = this.$toolAll.tools.escape2Html(this.doctorObj.doctor_extra.summary);
|
||||
this.detailInfo = this.$toolAll.tools.escape2Html(this.doctorObj.doctor_extra.content);
|
||||
this.isLoading = true;
|
||||
}
|
||||
},error=>{})
|
||||
},
|
||||
|
@ -203,12 +211,18 @@
|
|||
this.cateList = uni.getStorageSync('cateList')
|
||||
}
|
||||
// 获取列表
|
||||
if(this.page==1) this.dataList = []
|
||||
if(this.page==1) {
|
||||
this.dataList = [];
|
||||
// uni.pageScrollTo({
|
||||
// scrollTop:0,
|
||||
// duration:0
|
||||
// })
|
||||
}
|
||||
this.total = res.data.list.total
|
||||
if(res.data.list.list.length!=0){
|
||||
res.data.list.list.forEach(item=>{
|
||||
let fabImg = '';
|
||||
if(item.published_headimgurl!='' && item.published_headimgurl!=null) fabImg = this.$http + item.published_headimgurl;
|
||||
if(item.published_headimgurl!='' && item.published_headimgurl!=null) fabImg = this.$http + item.published_headimgurl
|
||||
let tObj = {
|
||||
category_id:item.category_id,//栏目ID
|
||||
id:item.id,
|
||||
|
@ -223,10 +237,7 @@
|
|||
name:item.published_by || '恒美植发',//发布者昵称
|
||||
isVideo:item.video.includes(".mp4")//是否是视频
|
||||
}
|
||||
if(this.newCurrent==0 && item.category_id==32) this.dataList.push(tObj)
|
||||
if(this.newCurrent==1 && item.category_id==33) this.dataList.push(tObj)
|
||||
if(this.newCurrent==2 && item.category_id==34) this.dataList.push(tObj)
|
||||
if(this.newCurrent==3 && item.category_id==38) this.dataList.push(tObj)
|
||||
this.dataList.push(tObj);
|
||||
})
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
<view v-if="dataList.length!=0">
|
||||
<view v-for="(item,index) in dataList" :key="index">
|
||||
<view class="fon24 col6 tc mar-sx50">{{item.time}}</view>
|
||||
<view class="radius10 bacf pad20 mar-x20" v-for="(iteml,indexl) in item.list" :key="indexl">
|
||||
<view @tap="readMsg(index,indexl)" class="radius10 bacf pad20 mar-x20" v-for="(iteml,indexl) in item.list" :key="indexl">
|
||||
<view class="disac">
|
||||
<image v-if="iteml.is_read==0" class="message-img" src="/static/public/unread.png" mode=""></image>
|
||||
<image v-if="iteml.is_read==1" class="message-img" src="/static/public/read.png" mode=""></image>
|
||||
|
@ -94,6 +94,9 @@
|
|||
this.checkMsg();
|
||||
},
|
||||
methods: {
|
||||
readMsg(index1,index2){
|
||||
this.dataList[index1].list[index2].is_read = 1;
|
||||
},
|
||||
checkMsg(){
|
||||
this.$requst.post('user/messages',{page:this.page,size:this.size,type:this.ntype}).then(res=>{
|
||||
// console.log('消息列表:',res);
|
||||
|
@ -102,9 +105,9 @@
|
|||
this.total = res.data.total;
|
||||
if(res.data.list.length!=0){
|
||||
res.data.list.forEach(item=>{
|
||||
let titleMsg = ''
|
||||
if(item.type=='notice') titleMsg = "通知"
|
||||
if(item.type=='system') titleMsg = "系统消息"
|
||||
let titleMsg = '';
|
||||
if(item.type=='notice') titleMsg = "通知";
|
||||
if(item.type=='system') titleMsg = "系统消息";
|
||||
let msgObj = {
|
||||
time:item.send_at,
|
||||
list:[
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
<!-- 列表 -->
|
||||
<view>
|
||||
<view id="daoh" class="bacf pad-zy30 pad-sx20 isTopf fon28 col3 disja" :style="{top:statusHNH+'px'}">
|
||||
<view @tap="isWen=true" :class="isWen?'isWen':''" class="posir">文章收藏</view>
|
||||
<view @tap="shopCollection" :class="!isWen?'isWen':''" class="posir">商品收藏</view>
|
||||
<view @tap="shopCollection(0)" :class="isWen?'isWen':''" class="posir">文章收藏</view>
|
||||
<view @tap="shopCollection(1)" :class="!isWen?'isWen':''" class="posir">商品收藏</view>
|
||||
</view>
|
||||
<view :style="{paddingTop:(statusHNH+chuTop+15)+'px'}">
|
||||
<view v-if="isWen">
|
||||
|
@ -62,7 +62,7 @@
|
|||
<image v-for="(itemm,indexm) in item1.activity_group_cover" :key="indexm" :src="itemm" mode="" style="width: 40rpx;height: 40rpx;border-radius: 100%;margin-left: -20rpx;"></image>
|
||||
</view>
|
||||
</view>
|
||||
<view v-if="item1.isXian" class="fon24 col80 mar-s20">结束时间:{{item1.activity_end_at}}</view>
|
||||
<view v-if="item1.isXian || item1.isPing || item1.isTuan" class="fon24 col80 mar-s20">结束时间:{{item1.activity_end_at}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -162,6 +162,7 @@
|
|||
timeList:[],//时间列表
|
||||
vision:false,
|
||||
isShowP:false,
|
||||
collectionTime:null
|
||||
}
|
||||
},
|
||||
onPageScroll(e) {
|
||||
|
@ -177,11 +178,16 @@
|
|||
}
|
||||
},
|
||||
onUnload() {
|
||||
uni.removeStorageSync('cateList')
|
||||
uni.removeStorageSync('cateList');
|
||||
clearInterval(this.collectionTime);
|
||||
},
|
||||
onHide() {
|
||||
clearInterval(this.collectionTime);
|
||||
},
|
||||
onShow() {
|
||||
this.$toolAll.tools.isLogin()
|
||||
this.checkConList(this.category_id)
|
||||
this.checkConList(this.category_id);
|
||||
this.shopCollection();
|
||||
},
|
||||
onLoad(options) {
|
||||
if(uni.getStorageSync('is_active')!=1){this.vision = true;}
|
||||
|
@ -227,10 +233,12 @@
|
|||
this.isShowP = true
|
||||
}
|
||||
},
|
||||
shopCollection(){//查询商品的收藏列表
|
||||
shopCollection(index){//查询商品的收藏列表
|
||||
clearInterval(this.collectionTime);
|
||||
if(index==1){
|
||||
this.isWen = false;
|
||||
uni.request({
|
||||
url:'https://hengmei.scdxtc.cn/api/spu/collection',
|
||||
url:`${this.$hostapi}spu/collection`,
|
||||
data:{page:this.page,size:this.size},
|
||||
method:'post',
|
||||
header:{
|
||||
|
@ -289,9 +297,10 @@
|
|||
})
|
||||
if(this.timeList!=0){
|
||||
this.$toolAll.tools.showToast('加载中...')
|
||||
let timer = setInterval(()=>{//定时器
|
||||
this.collectionTime = setInterval(()=>{//定时器
|
||||
if(this.timeList.length!=0){
|
||||
this.timeList.forEach((item,index)=>{
|
||||
console.log(item.id,nArr[item.nIndex].id);
|
||||
if(item.id==nArr[item.nIndex].id){
|
||||
let endTime = new Date(this.timeList[index].time).getTime();//把结束时间转时间戳
|
||||
this.timeList[index].reponseTime = new Date(this.timeList[index].reponseTime).getTime() + 1000;//请求接口的时间递增,即:开始时间
|
||||
|
@ -314,6 +323,9 @@
|
|||
}
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.isWen = true;
|
||||
}
|
||||
},
|
||||
checkConList(category_id){//查询收藏列表
|
||||
// this.$toolAll.tools.showToast('加载中...')
|
||||
|
@ -368,10 +380,7 @@
|
|||
name:item.published_by || '恒美植发',//发布者昵称
|
||||
isVideo:item.video.includes(".mp4")//是否是视频
|
||||
}
|
||||
if(this.newCurrent==0 && item.category_id==32) this.dataList.push(tObj)
|
||||
if(this.newCurrent==1 && item.category_id==33) this.dataList.push(tObj)
|
||||
if(this.newCurrent==2 && item.category_id==34) this.dataList.push(tObj)
|
||||
if(this.newCurrent==3 && item.category_id==38) this.dataList.push(tObj)
|
||||
this.dataList.push(tObj);
|
||||
})
|
||||
}
|
||||
}
|
||||
|
|
|
@ -146,7 +146,7 @@
|
|||
timer:null,
|
||||
daoTime:'',
|
||||
timerDao:null,
|
||||
vision:true,
|
||||
vision:false,
|
||||
isShowP:false,
|
||||
}
|
||||
},
|
||||
|
@ -321,7 +321,6 @@
|
|||
this.orderInfo = narr;
|
||||
if(this.orderInfo.group_make_end_at!=null){
|
||||
this.daoTime = this.$toolAll.tools.dayTime(this.orderInfo.group_make_end_at,new Date().getTime());
|
||||
console.log(daoTime);
|
||||
this.timerDao = setInterval(()=>{
|
||||
if(new Date().getTime()-new Date().getTime(this.orderInfo.group_make_end_at)>0){
|
||||
this.checkInfo(this.orderInfo.id);
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
<!-- 自定义二级分类 -->
|
||||
<!-- 列表 -->
|
||||
<view :style="{paddingTop: statusHNH+'px'}" class="pad-zy20">
|
||||
<view class="tc mar-s20 col6 fon28">请选择海报背景后分享</view>
|
||||
<view v-if="imgList.length!=0">
|
||||
<view class="mar-s20 disjbac fw">
|
||||
<image @tap="chooseImg(index)" v-for="(item,index) in imgList" :key="index" class="width100 radius20 mar-x20" :src="item" style="width: 48.5%;max-height: 474rpx" mode="aspectFill" lazy-load></image>
|
||||
|
|
|
@ -12,7 +12,8 @@
|
|||
<!-- 列表 -->
|
||||
<view :style="{top: statusHNH+'px'}" class="posiszy" style="height: 50px;">
|
||||
<view class="bacf pad-zy32 pad-sx20">
|
||||
<cate-pu @choosecateEv="choosecateEv" :activeb="invite_code!=''?'#3875F6':publicColor" :newCurrent="cateCurrent*1" :newbmo="'#F2F2F2'" :isCenter="false" :newcateList="cateList"></cate-pu>
|
||||
<cate-pu @choosecateEv="choosecateEv" :activeb="invite_code!=''?'#3875F6':publicColor"
|
||||
:newCurrent="cateCurrent*1" :newbmo="'#F2F2F2'" :isCenter="false" :newcateList="cateList"></cate-pu>
|
||||
</view>
|
||||
</view>
|
||||
<view class="pad-x180" :style="{paddingTop: (statusHNH+50)+'px'}">
|
||||
|
@ -20,35 +21,44 @@
|
|||
<view v-show="cateCurrent==isNum">
|
||||
<view class="pad-zy32">
|
||||
<!-- 自定义轮播 -->
|
||||
<swiper-pu :browseP="true" :isplay="isAutoPlay" :bannerList="bannerList" :newHeight="'450'" :newRadius="'10'" :newBottom="'5'"></swiper-pu>
|
||||
<swiper-pu :browseP="true" :isplay="isAutoPlay" :bannerList="bannerList" :newHeight="newHeight"
|
||||
:newRadius="'10'" :newBottom="'5'"></swiper-pu>
|
||||
<!-- 标题 -->
|
||||
<view class="fon36 col3 bold mar-sx20 clips2" style="line-height: 50rpx;">{{detailObj.title}}</view>
|
||||
<view class="fon36 col3 bold mar-sx20 clips2" style="line-height: 50rpx;">{{detailObj.title}}
|
||||
</view>
|
||||
<view class="disjbac">
|
||||
<view class="disac">
|
||||
<!-- 发布者头像 -->
|
||||
<image class="flexs" :src="fabImg || '/static/public/logo.png'" style="width: 60rpx;height: 60rpx;border-radius: 100%;" mode="aspectFill"></image>
|
||||
<image class="flexs" :src="fabImg || '/static/public/logo.png'"
|
||||
style="width: 60rpx;height: 60rpx;border-radius: 100%;" mode="aspectFill"></image>
|
||||
<view class="mar-z10">
|
||||
<!-- 发布者昵称 -->
|
||||
<view class="fon28 col3 clips1">{{detailObj.published_by || '恒美植发'}}</view>
|
||||
<!-- 发布时间 -->
|
||||
<view class="fon20 col9" style="margin-top: 6rpx;">{{detailObj.published_at}}发布</view>
|
||||
<view class="fon20 col9" style="margin-top: 6rpx;">{{detailObj.published_at}}发布
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="disac flexs">
|
||||
<view class="disac fc" @tap="tapLike" style="width: 60rpx;">
|
||||
<image v-if="isDetailLike" src="/static/public/detail-like.png" style="width: 42rpx;height: 42rpx;" mode=""></image>
|
||||
<image v-else src="/static/public/detail-nlike.png" style="width: 42rpx;height: 42rpx;" mode=""></image>
|
||||
<image v-if="isDetailLike" src="/static/public/detail-like.png"
|
||||
style="width: 42rpx;height: 42rpx;" mode=""></image>
|
||||
<image v-else src="/static/public/detail-nlike.png"
|
||||
style="width: 42rpx;height: 42rpx;" mode=""></image>
|
||||
<view class="fon24 col9 tc">{{likeCon}}</view>
|
||||
</view>
|
||||
<view @tap="shareEv" class="disac fc mar-zy36 posir">
|
||||
<image src="/static/public/weix.png" style="width: 42rpx;height: 42rpx;" mode=""></image>
|
||||
<view class="fon24 col9">分享</view>
|
||||
<button class="posia-op" open-type="share">分享</button>
|
||||
<button class="posia" open-type="share"
|
||||
style="top: 0;right: 0;left: 0;bottom: 0;opacity: 0;">分享</button>
|
||||
<!-- <button v-if="haveImg" class="posia" open-type="share" style="top: 0;right: 0;left: 0;bottom: 0;opacity: 0;">分享</button> -->
|
||||
</view>
|
||||
<view class="disac fc" @tap="tapConllection">
|
||||
<image v-if="isDetailConllection" src="/static/public/yconllection.png" style="width: 44rpx;height: 44rpx;" mode=""></image>
|
||||
<image v-else src="/static/public/conllection.png" style="width: 44rpx;height: 44rpx;" mode=""></image>
|
||||
<image v-if="isDetailConllection" src="/static/public/yconllection.png"
|
||||
style="width: 44rpx;height: 44rpx;" mode=""></image>
|
||||
<image v-else src="/static/public/conllection.png"
|
||||
style="width: 44rpx;height: 44rpx;" mode=""></image>
|
||||
<view class="fon24 col9">收藏</view>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -58,159 +68,64 @@
|
|||
<rich-text :nodes="detailInfo"></rich-text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="pad-zy20" v-show="cateCurrent==1">
|
||||
<!-- <view class="pad-zy20" v-show="cateCurrent==1"> -->
|
||||
<view class="pad-zy20">
|
||||
<view class="fon30 bold tc mar-sx40" :style="{color:publicColor}">相关推荐</view>
|
||||
<!-- 相关推荐列表 -->
|
||||
<list-pu @chooseLike="chooseLikex" @comfirmev="comfirmevx" :list="xgList"></list-pu>
|
||||
</view>
|
||||
<view class="tc fon28 bold" style="color: #fff;background-color: #3875f6;padding: 20rpx;" @tap="backEv">更多{{contentVal}}>></view>
|
||||
<!-- <view class="tc fon28 bold" style="color: #3875f6;background-color: #CCCCCC;padding: 20rpx;" @tap="backEv">更多{{cateList[cateCurrent].title}}>></view> -->
|
||||
<view class="pad-zy20">
|
||||
<view class="fon30 bold tc mar-sx40" :style="{color:publicColor}">推荐医生</view>
|
||||
<!-- 推荐医生列表 -->
|
||||
<list-doctor v-if="dataList.length!=0" :list="dataList"></list-doctor>
|
||||
<view v-if="dataList.length==0" class="disjcac fc" style="margin-top: 10%;">
|
||||
<image class="zanw-img" src="/static/public/nothing.png" mode="aspectFill"></image>
|
||||
<view class="fon24 col3">暂无推荐医生</view>
|
||||
<!-- <view class="fon24 col3">暂无推荐医生</view> -->
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 案例日记 -->
|
||||
<view v-show="cateCurrent==0 && isNum!=0" class="pad-zy20">
|
||||
<view v-if="listArrone.length!=0">
|
||||
<list-pu @chooseLike="chooseLike" @comfirmev="comfirmev" :list="listArrone"></list-pu>
|
||||
<!-- <view v-show="cateCurrent==index && isNum!=index" v-for="(item,index) in allArr" :key="index" class="pad-zy20">
|
||||
<view v-if="item.length!=0">
|
||||
<list-pu @chooseLike="chooseLike" @comfirmev="comfirmev" :list="item"></list-pu>
|
||||
</view>
|
||||
<view v-else class="disjcac fc" style="margin-top: 40%;">
|
||||
<image class="zanw-img" src="/static/public/nothing.png" mode="aspectFill"></image>
|
||||
<view class="fon24 col3">暂无内容</view>
|
||||
</view>
|
||||
</view> -->
|
||||
<view v-if="cateCurrent!=isNum">
|
||||
<view v-if="allList.length!=0" class="pad-zy20">
|
||||
<list-pu @chooseLike="chooseLike" @comfirmev="comfirmev" :list="allList"></list-pu>
|
||||
</view>
|
||||
<view v-else class="disjcac fc" style="margin-top: 40%;">
|
||||
<image class="zanw-img" src="/static/public/nothing.png" mode="aspectFill"></image>
|
||||
<view class="fon24 col3">暂无内容</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 案例日记 -->
|
||||
<view v-show="cateCurrent==1 && isNum!=1" class="pad-zy20">
|
||||
<view v-if="listArrtwo.length!=0">
|
||||
<list-pu @chooseLike="chooseLike" @comfirmev="comfirmev" :list="listArrtwo"></list-pu>
|
||||
</view>
|
||||
<view v-else class="disjcac fc" style="margin-top: 40%;">
|
||||
<image class="zanw-img" src="/static/public/nothing.png" mode="aspectFill"></image>
|
||||
<view class="fon24 col3">暂无内容</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 效果模拟 -->
|
||||
<view v-show="cateCurrent==2 && isNum!=2" class="pad-zy20">
|
||||
<view v-if="listArrthree.length!=0">
|
||||
<list-pu @chooseLike="chooseLike" @comfirmev="comfirmev" :list="listArrthree"></list-pu>
|
||||
</view>
|
||||
<view v-else class="disjcac fc" style="margin-top: 40%;">
|
||||
<image class="zanw-img" src="/static/public/nothing.png" mode="aspectFill"></image>
|
||||
<view class="fon24 col3">暂无内容</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 科普视频 -->
|
||||
<view v-show="cateCurrent==3 && isNum!=3" class="pad-zy20">
|
||||
<view v-if="listArrfour.length!=0">
|
||||
<list-pu @chooseLike="chooseLike" @comfirmev="comfirmev" :list="listArrfour"></list-pu>
|
||||
</view>
|
||||
<view v-else class="disjcac fc" style="margin-top: 40%;">
|
||||
<image class="zanw-img" src="/static/public/nothing.png" mode="aspectFill"></image>
|
||||
<view class="fon24 col3">暂无内容</view>
|
||||
</view>
|
||||
</view>
|
||||
<block v-if="isHot">
|
||||
<view v-if="dataShopList.length!=0" style="margin-top: -20rpx;">
|
||||
<view class="pad20">
|
||||
<view style="width: 48.6%;float: left;">
|
||||
<view v-if="index1%2==0" v-for="(item1,index1) in dataShopList" :key="index1" class="bacf radius15 mar-x20 animated fadeIn posir" @tap="goPage(item1.id,index1)">
|
||||
<image :src="item1.imgSrc" mode="aspectFill" style="width: 100%;border-top-left-radius: 15rpx;border-top-right-radius: 15rpx;height: 325rpx;"></image>
|
||||
<view class="pad-zy20 pad-s10 pad-x30">
|
||||
<view class="fon28 bold col3 clips2">{{item1.title}}</view>
|
||||
<view class="disac fon20 mar-sx20" v-if="!item1.isIntegral">
|
||||
<view class="radius10 colf mar-y10" style="padding: 6rpx 10rpx;" :style="{background:publicColor}">{{item1.disease_name}}</view>
|
||||
<view class="radius10 colf" v-if="item1.isTuan" style="padding: 6rpx 10rpx;background: #F85050;">团购</view>
|
||||
<view class="radius10 colf" v-if="item1.isPing" style="padding: 6rpx 10rpx;background: #F85050;">拼团活动</view>
|
||||
<view class="radius10 colf" v-if="item1.isXian" style="padding: 6rpx 10rpx;background: #F85050;">限时促销</view>
|
||||
</view>
|
||||
<view class="disac">
|
||||
<view class="fon28 bold" style="color: #F85050;margin-right: 8rpx;">
|
||||
<view v-if="item1.isIntegral" class="mar-s20">
|
||||
<view>积分:{{item1.integral}}</view>
|
||||
<view class="disac mar-s20" v-if="item1.grade!=0">
|
||||
<image src="/static/public/huiy.png" style="width: 40rpx;height: 33rpx;" mode=""></image>
|
||||
<view class="fon24 col3 mar-z10">{{item1.level_text}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-else>
|
||||
<span v-if="item1.isPing">拼团价</span>
|
||||
<span v-if="item1.isXian">促销价</span>
|
||||
¥{{item1.zhePrice}}
|
||||
</view>
|
||||
</view>
|
||||
<view v-if="item1.isXian || item1.isPing || item1.isTuan" class="fon24" style="text-decoration: line-through;color: #C7C7C7;">¥{{item1.yuanPrice}}</view>
|
||||
</view>
|
||||
<view v-if="item1.isPing" class="disjbac mar-s20">
|
||||
<view class="fon24 col80">已拼团{{item1.activity_group_num}}组</view>
|
||||
<view class="disac">
|
||||
<image v-for="(itemm,indexm) in item1.activity_group_cover" :key="indexm" :src="itemm" mode="" style="width: 40rpx;height: 40rpx;border-radius: 100%;margin-left: -20rpx;"></image>
|
||||
</view>
|
||||
</view>
|
||||
<view v-if="item1.isXian || item1.isPing || item1.isTuan" class="fon24 col80 mar-s20">结束时间:{{item1.activity_end_at}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view style="width: 48.6%;float: right;">
|
||||
<view v-if="index1%2!=0" v-for="(item1,index1) in dataShopList" :key="index1" class="bacf radius15 mar-x20 animated fadeIn posir" @tap="goPage(item1.id,index1)">
|
||||
<image :src="item1.imgSrc" mode="aspectFill" style="width: 100%;border-top-left-radius: 15rpx;border-top-right-radius: 15rpx;height: 325rpx;"></image>
|
||||
<view class="pad-zy20 pad-s10 pad-x30">
|
||||
<view class="fon28 bold col3 clips2">{{item1.title}}</view>
|
||||
<view class="disac fon20 mar-sx20" v-if="!item1.isIntegral">
|
||||
<view class="radius10 colf mar-y10" style="padding: 6rpx 10rpx;" :style="{background:publicColor}">{{item1.disease_name}}</view>
|
||||
<view class="radius10 colf" v-if="item1.isTuan" style="padding: 6rpx 10rpx;background: #F85050;">团购</view>
|
||||
<view class="radius10 colf" v-if="item1.isPing" style="padding: 6rpx 10rpx;background: #F85050;">拼团活动</view>
|
||||
<view class="radius10 colf" v-if="item1.isXian" style="padding: 6rpx 10rpx;background: #F85050;">限时促销</view>
|
||||
</view>
|
||||
<view class="disac">
|
||||
<view class="fon28 bold" style="color: #F85050;margin-right: 8rpx;">
|
||||
<view v-if="item1.isIntegral" class="mar-s20">
|
||||
<view>积分:{{item1.integral}}</view>
|
||||
<view class="disac mar-s20" v-if="item1.grade!=0">
|
||||
<image src="/static/public/huiy.png" style="width: 40rpx;height: 33rpx;" mode=""></image>
|
||||
<view class="fon24 col3 mar-z10">{{item1.level_text}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-else>
|
||||
<span v-if="item1.isPing">拼团价</span>
|
||||
<span v-if="item1.isXian">促销价</span>
|
||||
¥{{item1.zhePrice}}
|
||||
</view>
|
||||
</view>
|
||||
<view v-if="item1.isTuan || item1.isPing || item1.isXian" class="fon24" style="text-decoration: line-through;color: #C7C7C7;">¥{{item1.yuanPrice}}</view>
|
||||
</view>
|
||||
<view v-if="item1.isPing" class="disjbac mar-s20">
|
||||
<view class="fon24 col80">已拼团{{item1.activity_group_num}}组</view>
|
||||
<view class="disac">
|
||||
<image v-for="(itemm,indexm) in item1.activity_group_cover" :key="indexm" :src="itemm" mode="" style="width: 40rpx;height: 40rpx;border-radius: 100%;margin-left: -20rpx;"></image>
|
||||
</view>
|
||||
</view>
|
||||
<view v-if="item1.isXian || item1.isPing || item1.isTuan" class="fon24 col80 mar-s20">结束时间:{{item1.activity_end_at}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- <nothing-page v-if="dataShopList.length==0" :content="`暂无更多商品列表`"></nothing-page> -->
|
||||
</block>
|
||||
</view>
|
||||
<view class="posixzy disjbac bacf pad-zy32 btnBKS">
|
||||
<view class="posir">
|
||||
<image @tap="backHome" class="posia backH" src="/static/public/back-home.png" mode="aspectFill"></image>
|
||||
<image @tap="backHome" class="posia backH" src="/static/public/back-home-02.png" mode="aspectFill"></image>
|
||||
</view>
|
||||
<view class="disac fon26 colf">
|
||||
<view @tap="lianK" class="disac posir lianShare" style="background-color: #3875F6; border-top-left-radius: 51rpx;border-bottom-left-radius: 51rpx;">
|
||||
<image src="/static/public/bottom-customer.png" class="mar-zy20" style="width: 47rpx;height: 47rpx;" mode="aspectFill"></image>
|
||||
<view @tap="lianK" class="disac posir lianShare"
|
||||
style="background-color: #3875F6; border-top-left-radius: 51rpx;border-bottom-left-radius: 51rpx;">
|
||||
<image src="/static/public/bottom-customer.png" class="mar-zy20"
|
||||
style="width: 47rpx;height: 47rpx;" mode="aspectFill"></image>
|
||||
<view>联系客服</view>
|
||||
<button v-if="haveImg" class="fon24 posia" style="opacity: 0;top: 0;left: 0;right: 0;bottom: 0;" open-type="contact">客服</button>
|
||||
<button v-if="haveImg" class="fon24 posia" style="opacity: 0;top: 0;left: 0;right: 0;bottom: 0;"
|
||||
open-type="contact">客服</button>
|
||||
</view>
|
||||
<view @tap="shareEv" class="disac posir lianShare" style="background-color: #38CE51;border-top-right-radius: 51rpx;border-bottom-right-radius: 51rpx;">
|
||||
<image src="/static/public/bottom-shear.png" style="width: 47rpx;height: 47rpx;margin-left: 15rpx;margin-right: 8rpx;" mode="aspectFill"></image>
|
||||
<view @tap="shareEv" class="disac posir lianShare"
|
||||
style="background-color: #38CE51;border-top-right-radius: 51rpx;border-bottom-right-radius: 51rpx;">
|
||||
<image src="/static/public/bottom-shear.png"
|
||||
style="width: 47rpx;height: 47rpx;margin-left: 15rpx;margin-right: 8rpx;" mode="aspectFill">
|
||||
</image>
|
||||
<view>分享给好友</view>
|
||||
<button v-if="haveImg" class="posia-op" open-type="share">分享</button>
|
||||
<button v-if="haveImg" class="posia" open-type="share"
|
||||
style="top: 0;right: 0;left: 0;bottom: 0;opacity: 0;">分享</button>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -219,18 +134,7 @@
|
|||
<!-- 弹框授权 -->
|
||||
<empower @buttonH="buttonH" :vision="vision" :isWhere="2" @cancleEv="cancleEv"></empower>
|
||||
<!-- 弹框 -->
|
||||
<view v-if="isShowP" @touchmove.stop.prevent="moveHandle" class="disjcac posAll">
|
||||
<view class="bacf radius20 width100 tank-box">
|
||||
<view class="tc tank-box-itemone">请授权绑定手机号</view>
|
||||
<view class="fon28 colf pad-x30 pad-zy30 tc disjb">
|
||||
<view @tap="isShowP=false" class="pad-sx10 radius10 tank-btn" style="background-color: rgba(230, 230, 230,1);color: #000000;">暂不绑定</view>
|
||||
<view class="pad-sx10 radius10 tank-btn posir pbackc">
|
||||
立即绑定
|
||||
<button open-type="getPhoneNumber" @getphonenumber="getphonenumber" class="posia syxzo">立即绑定</button>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<auth-phone v-if="isShowP"></auth-phone>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
@ -238,18 +142,20 @@
|
|||
<script>
|
||||
import listDoctor from '@/components/list-doctor.vue';
|
||||
import swiperPu from '@/components/swiper-pu.vue';
|
||||
import {collectionEV,cancleCollectionEV} from '@/jsFile/publicAPI.js';
|
||||
import empower from '@/components/empower.vue';
|
||||
import {
|
||||
collectionEV,
|
||||
cancleCollectionEV
|
||||
} from '@/jsFile/publicAPI.js';
|
||||
export default {
|
||||
components: {
|
||||
listDoctor,
|
||||
swiperPu,
|
||||
empower
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
statusBarHeight: uni.getSystemInfoSync().statusBarHeight,
|
||||
isLoading: false,
|
||||
vision: false,
|
||||
statusHNH: uni.getStorageSync('statusHNH'),
|
||||
publicColor: uni.getStorageSync('publicColor') || '#3875F6', //主题颜色
|
||||
cateCurrent: 0,
|
||||
|
@ -279,43 +185,44 @@
|
|||
// jieDuan:false,
|
||||
share_id: 0,
|
||||
invite_code: '',
|
||||
zanArr:[],
|
||||
dataShopList:[],
|
||||
timeList:[],
|
||||
isHot:false,
|
||||
isAutoPlay:false,
|
||||
fabImg:'',
|
||||
vision:false,
|
||||
isShowP: false,
|
||||
bcurrent: 0,
|
||||
isAutoPlay: false,
|
||||
fabImg: '' ,//发布者头像
|
||||
allArr:[],
|
||||
page:1,
|
||||
size:20,
|
||||
total:0,
|
||||
isZanw:true,
|
||||
allList:[],
|
||||
contentVal:'',
|
||||
newHeight:'450'
|
||||
}
|
||||
},
|
||||
onPageScroll(e) {
|
||||
e.scrollTop > 360 ? this.showTop = true : this.showTop = false
|
||||
},
|
||||
onReachBottom() { //触底事件
|
||||
// for (let i = 0; i < 4; i++) {
|
||||
// if(this.cateCurrent==0) {
|
||||
// let obj = {status:false,main_img:'',title:'恒美小课堂',content:'饺子会吃肉?',head_img:'/static/public/like.png',name:'吃肉的饺子',isCate:0}
|
||||
// this.listArrone.push(obj)
|
||||
// }
|
||||
// if(this.cateCurrent==1) {
|
||||
// let obj = {status:false,main_img:'',title:'恒美小课堂',content:'饺子会吃肉?',head_img:'/static/public/like.png',name:'吃肉的饺子',isCate:1}
|
||||
// this.listArrtwo.push(obj)
|
||||
// }
|
||||
// if(this.cateCurrent==2) {
|
||||
// let obj = {status:false,main_img:'',title:'恒美小课堂',content:'饺子会吃肉?',head_img:'/static/public/like.png',name:'吃肉的饺子',isCate:2}
|
||||
// this.listArrthree.push(obj)
|
||||
// }
|
||||
// if(this.cateCurrent==3) {
|
||||
// let obj = {status:false,main_img:'',title:'恒美小课堂',content:'饺子会吃肉?',head_img:'/static/public/like.png',name:'吃肉的饺子',isCate:3}
|
||||
// this.listArrfour.push(obj)
|
||||
// }
|
||||
// }
|
||||
if(this.cateCurrent!=this.isNum){
|
||||
if(this.total!=this.allList.length){
|
||||
this.page++
|
||||
this.checkList(this.cateCurrent)//调用自主预约列表事件
|
||||
} else {
|
||||
if(this.isZanw) this.$toolAll.tools.showToast('暂无更多列表','none',1000)
|
||||
this.isZanw = false
|
||||
}
|
||||
}
|
||||
},
|
||||
onShareTimeline() {},
|
||||
onShareAppMessage(res) {
|
||||
var ya = this;
|
||||
this.$requst.post('user/record',{type:'content',action:'share',id:this.detailObj.id}).then(res=>{console.log('分享成功:',res);},error=>{})
|
||||
this.$requst.post('user/record', {
|
||||
type: 'content',
|
||||
action: 'share',
|
||||
id: this.detailObj.id
|
||||
}).then(res => {
|
||||
console.log('分享成功:', res);
|
||||
}, error => {})
|
||||
let maiOjb = {
|
||||
e: 4, //内容分享
|
||||
c: this.detailObj.id * 1,
|
||||
|
@ -323,23 +230,23 @@
|
|||
}
|
||||
this.$toolAll.tools.maiDian(maiOjb)
|
||||
var shareObj = {
|
||||
title: `${ya.detailObj.title}`, // 默认是小程序的名称(可以写slogan等)
|
||||
path: `/pagesB/problemDetail/problemDetail?id=${this.detailObj.id}&category_id=${this.category_id}&share_id=${uni.getStorageSync('userId')}&invite_code=${uni.getStorageSync('invite_code')}`, // 默认是当前页面,必须是以‘/’开头的完整路径
|
||||
imageUrl: ya.$http + ya.detailObj.share_img//自定义图片路径,可以是本地文件路径、代码包文件路径或者网络图片路径,支持PNG及JPG,不传入 imageUrl 则使用默认截图。显示图片长宽比是 5:4
|
||||
};
|
||||
return shareObj;
|
||||
title: `${ya.detailObj.title}`, // 默认是小程序的名称(可以写slogan等)
|
||||
path: `/pagesB/problemDetail/problemDetail?id=${this.detailObj.id}&category_id=${this.category_id}&share_id=${uni.getStorageSync('userId')}&invite_code=${uni.getStorageSync('invite_code')}`, // 默认是当前页面,必须是以‘/’开头的完整路径
|
||||
imageUrl: ya.$http + ya.detailObj
|
||||
.share_img //自定义图片路径,可以是本地文件路径、代码包文件路径或者网络图片路径,支持PNG及JPG,不传入 imageUrl 则使用默认截图。显示图片长宽比是 5:4
|
||||
};
|
||||
return shareObj;
|
||||
},
|
||||
onShow() {
|
||||
this.isAutoPlay = true;
|
||||
},
|
||||
onUnload() {
|
||||
this.isAutoPlay = false;
|
||||
},
|
||||
onHide() {
|
||||
this.isAutoPlay = false;
|
||||
},
|
||||
onUnload() {
|
||||
this.isAutoPlay = false;
|
||||
},
|
||||
onLoad(options) {
|
||||
if(uni.getStorageSync('is_active')!=1){this.vision = true;}
|
||||
if (options.category_id != undefined) {
|
||||
this.category_id = options.category_id
|
||||
this.conid = options.id
|
||||
|
@ -387,6 +294,45 @@
|
|||
},
|
||||
});
|
||||
},
|
||||
chooseLike(e) { //收藏事件
|
||||
// console.log(this.dataList[e].is_collected);
|
||||
if (this.allList[e].is_collected == 0) {
|
||||
this.allList[e].is_collected = 1
|
||||
// 调用收藏事件
|
||||
collectionEV({
|
||||
action: 'collect',
|
||||
archive_id: this.allList[e].id
|
||||
})
|
||||
}
|
||||
},
|
||||
comfirmev(e) { //确认取消收藏事件
|
||||
this.allList[e].is_collected = 0;
|
||||
this.$toolAll.tools.showToast('正在取消...', 'loading')
|
||||
// 调用取消收藏事件
|
||||
cancleCollectionEV({
|
||||
action: 'collect',
|
||||
archive_id: this.allList[e].id
|
||||
})
|
||||
},
|
||||
chooseLikex(e) { //收藏事件
|
||||
if (this.xgList[e].is_collected == 0) {
|
||||
this.xgList[e].is_collected = 1
|
||||
// 调用收藏事件
|
||||
collectionEV({
|
||||
action: 'collect',
|
||||
archive_id: this.xgList[e].id
|
||||
})
|
||||
}
|
||||
},
|
||||
comfirmevx(e) { //确认取消收藏事件
|
||||
this.xgList[e].is_collected = 0
|
||||
this.$toolAll.tools.showToast('正在取消...', 'loading')
|
||||
// 调用取消收藏事件
|
||||
cancleCollectionEV({
|
||||
action: 'collect',
|
||||
archive_id: this.xgList[e].id
|
||||
})
|
||||
},
|
||||
buttonH(e) { //授权成功
|
||||
this.haveImg = e
|
||||
if (e) {
|
||||
|
@ -394,66 +340,8 @@
|
|||
this.isShowP = true
|
||||
}
|
||||
},
|
||||
chooseLike(e){//收藏事件
|
||||
// console.log(this.dataList[e].is_collected);
|
||||
let cateId = ''
|
||||
let newArr = []
|
||||
if(this.cateCurrent==0) {
|
||||
newArr = this.listArrone
|
||||
cateId = newArr[e].id
|
||||
}
|
||||
if(this.cateCurrent==1) {
|
||||
newArr = this.listArrtwo
|
||||
cateId = newArr[e].id
|
||||
}
|
||||
if(this.cateCurrent==2) {
|
||||
newArr = this.listArrthree
|
||||
cateId = newArr[e].id
|
||||
}
|
||||
if(this.cateCurrent==3) {
|
||||
newArr = this.listArrfour
|
||||
cateId = newArr[e].id
|
||||
}
|
||||
if(newArr[e].is_collected==0){
|
||||
newArr[e].is_collected = 1
|
||||
// 调用收藏事件
|
||||
collectionEV({action:'collect',archive_id:cateId})
|
||||
}
|
||||
},
|
||||
comfirmev(e){//确认取消收藏事件
|
||||
let cateId = ''
|
||||
if(this.cateCurrent==0) {
|
||||
this.listArrone[e].is_collected = 0
|
||||
cateId = this.listArrone[e].id
|
||||
}
|
||||
if(this.cateCurrent==1) {
|
||||
this.listArrtwo[e].is_collected = 0
|
||||
cateId = this.listArrtwo[e].id
|
||||
}
|
||||
if(this.cateCurrent==2) {
|
||||
this.listArrthree[e].is_collected = 0
|
||||
cateId = this.listArrthree[e].id
|
||||
}
|
||||
if(this.cateCurrent==3) {
|
||||
this.listArrfour[e].is_collected = 0
|
||||
cateId = this.listArrfour[e].id
|
||||
}
|
||||
this.$toolAll.tools.showToast('正在取消...','loading')
|
||||
// 调用取消收藏事件
|
||||
cancleCollectionEV({action:'collect',archive_id:cateId})
|
||||
},
|
||||
chooseLikex(e){//收藏事件
|
||||
if(this.xgList[e].is_collected==0){
|
||||
this.xgList[e].is_collected = 1
|
||||
// 调用收藏事件
|
||||
collectionEV({action:'collect',archive_id:this.xgList[e].id})
|
||||
}
|
||||
},
|
||||
comfirmevx(e){//确认取消收藏事件
|
||||
this.xgList[e].is_collected = 0
|
||||
this.$toolAll.tools.showToast('正在取消...','loading')
|
||||
// 调用取消收藏事件
|
||||
cancleCollectionEV({action:'collect',archive_id:this.xgList[e].id})
|
||||
cancleEv(e) { //取消授权
|
||||
if (e == 0) this.vision = false
|
||||
},
|
||||
backHome() {
|
||||
uni.navigateTo({
|
||||
|
@ -469,7 +357,11 @@
|
|||
} else {
|
||||
this.$requst.post('user/rand-bind-service').then(res => {})
|
||||
this.$toolAll.tools.closeTimer() //清空埋点倒计时
|
||||
this.$requst.post('user/record',{type:'other',action:'ask',id:0}).then(res=>{},error=>{})
|
||||
this.$requst.post('user/record', {
|
||||
type: 'other',
|
||||
action: 'ask',
|
||||
id: 0
|
||||
}).then(res => {}, error => {})
|
||||
let maiOjb = {
|
||||
e: 5, //内容咨询
|
||||
t: new Date().getTime() //当前时间戳
|
||||
|
@ -485,7 +377,10 @@
|
|||
}
|
||||
},
|
||||
checkDetail(newId) {
|
||||
this.$requst.post('archives/detail',{id:newId,share_id:this.share_id}).then(res=>{
|
||||
this.$requst.post('archives/detail', {
|
||||
id: newId,
|
||||
share_id: this.share_id
|
||||
}).then(res => {
|
||||
// console.log('详情数据:',res);
|
||||
if (res.code == 0) {
|
||||
this.isLoading = true
|
||||
|
@ -501,12 +396,16 @@
|
|||
sort: item.sort
|
||||
}
|
||||
this.cateList.push(cateObj)
|
||||
this.allArr.push([]);
|
||||
// 默认选中的栏目
|
||||
if (item.active == 1) this.active = this.cateCurrent = index
|
||||
// 默认展示栏目详情
|
||||
if (this.category_id == item.id) this.isNum = index
|
||||
})
|
||||
this.cateList.push({title:'热门商品'})
|
||||
this.contentVal = this.cateList[this.cateCurrent].title.slice(2);
|
||||
if(this.cateList[this.cateCurrent].title== '毛发百科' || this.cateList[this.cateCurrent].title== '科普视频') {
|
||||
this.newHeight = '200';
|
||||
}
|
||||
}
|
||||
if (this.invite_code != '' && this.invite_code != undefined) {
|
||||
const query = wx.createSelectorQuery()
|
||||
|
@ -561,10 +460,12 @@
|
|||
// 富文本
|
||||
this.detailInfo = this.$toolAll.tools.escape2Html(this.detailObj.content)
|
||||
// 相关推荐xgList
|
||||
if(this.cateList[this.cateCurrent].title=='日记分享') {
|
||||
if (res.data.diary.length != 0) {
|
||||
res.data.diary.forEach(item => {
|
||||
let fabImg = '';
|
||||
if(item.published_headimgurl!='' && item.published_headimgurl!=null) fabImg = this.$http + item.published_headimgurl;
|
||||
if (item.published_headimgurl != '' && item.published_headimgurl != null)
|
||||
fabImg = this.$http + item.published_headimgurl
|
||||
let tObj = {
|
||||
category_id: item.category_id, //栏目ID
|
||||
id: item.id,
|
||||
|
@ -584,6 +485,9 @@
|
|||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
this.relevant();
|
||||
}
|
||||
// 推荐医生
|
||||
if (res.data.doctor.length != 0) {
|
||||
res.data.doctor.forEach(item => {
|
||||
|
@ -604,19 +508,63 @@
|
|||
}
|
||||
}, error => {})
|
||||
},
|
||||
relevant(){
|
||||
this.$requst.post('archives/category', {
|
||||
category_id: this.cateList[this.cateCurrent].id,
|
||||
keyword: '',
|
||||
page:this.page,
|
||||
size:this.size
|
||||
}).then(res => {
|
||||
if(res.code==0){
|
||||
if (res.data.list.list.length != 0) {
|
||||
res.data.list.list.forEach(item => {
|
||||
let fabImg = '';
|
||||
if (item.published_headimgurl != '' && item.published_headimgurl != null)
|
||||
fabImg = this.$http + item.published_headimgurl
|
||||
let tObj = {
|
||||
category_id: item.category_id, //栏目ID
|
||||
id: item.id,
|
||||
is_collected: item.is_collected, //是否已收藏
|
||||
collects: item.collects, //收藏量
|
||||
views: item.views, //查看量
|
||||
main_img: this.$http + item.cover, //封面图
|
||||
video: this.$http + item.video, //视频地址
|
||||
title: item.title, //标题
|
||||
content: item.subtitle, //副标题
|
||||
head_img: fabImg || '/static/public/logo.png', //发布者头像
|
||||
name: item.published_by || '恒美植发', //发布者昵称
|
||||
isVideo: item.video.includes(".mp4") //是否是视频
|
||||
}
|
||||
if (item.cover != '' && item.video == '') {
|
||||
this.xgList.push(tObj)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
choosecateEv(e) {
|
||||
this.cateCurrent = e
|
||||
this.isHot = false;
|
||||
if(this.cateList[e].title=='热门商品'){
|
||||
this.checkSotList();
|
||||
} else {
|
||||
this.$requst.post('archives/category',{category_id:this.cateList[e].id,keyword:''}).then(res=>{
|
||||
this.page = 1;
|
||||
this.isZanw = true;
|
||||
this.checkList(e);
|
||||
},
|
||||
checkList(e){
|
||||
this.$requst.post('archives/category', {
|
||||
category_id: this.cateList[e].id,
|
||||
keyword: '',
|
||||
page:this.page,
|
||||
size:this.size
|
||||
}).then(res => {
|
||||
// console.log('该分类下的列表:',res);
|
||||
if (res.code == 0) {
|
||||
if(e==0 && this.active!=e) this.listArrone = []
|
||||
if(e==1 && this.active!=e) this.listArrtwo = []
|
||||
if(e==2 && this.active!=e) this.listArrthree = []
|
||||
if(e==3 && this.active!=e) this.listArrfour = []
|
||||
if(this.page==1) {
|
||||
if(this.active != e) this.allList = [];
|
||||
uni.pageScrollTo({
|
||||
scrollTop:0,
|
||||
duration:0
|
||||
})
|
||||
}
|
||||
this.total = res.data.list.total;
|
||||
if (res.data.list.list.length != 0) {
|
||||
res.data.list.list.forEach(item => {
|
||||
let num = item.video.search(".mp4")
|
||||
|
@ -637,16 +585,13 @@
|
|||
isVideo: isVideo //是否是视频
|
||||
}
|
||||
if (item.cover != '') {
|
||||
if(e==0 && this.active!=e) this.listArrone.push(arrObj)
|
||||
if(e==1 && this.active!=e) this.listArrtwo.push(arrObj)
|
||||
if(e==2 && this.active!=e) this.listArrthree.push(arrObj)
|
||||
if(e==3 && this.active!=e) this.listArrfour.push(arrObj)
|
||||
this.allList.push(arrObj);
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
this.cateCurrent = e;
|
||||
} else this.$toolAll.tools.showToast(res.msg);
|
||||
}, error => {})
|
||||
}
|
||||
},
|
||||
tapLike() { //喜欢、不喜欢事件
|
||||
// if(!this.jieDuan){
|
||||
|
@ -663,9 +608,15 @@
|
|||
}
|
||||
let isLikeCon = 'like'
|
||||
//调用点赞事件
|
||||
if(this.isDetailLike) collectionEV({action:isLikeCon,archive_id:this.detailObj.id})
|
||||
if (this.isDetailLike) collectionEV({
|
||||
action: isLikeCon,
|
||||
archive_id: this.detailObj.id
|
||||
})
|
||||
//调用取消点赞事件
|
||||
else cancleCollectionEV({action:isLikeCon,archive_id:this.detailObj.id})
|
||||
else cancleCollectionEV({
|
||||
action: isLikeCon,
|
||||
archive_id: this.detailObj.id
|
||||
})
|
||||
// } else this.jieDuan = true
|
||||
// }
|
||||
},
|
||||
|
@ -675,123 +626,32 @@
|
|||
// let isAuth = this.$toolAll.tools.returnAuth()
|
||||
// if(!isAuth){
|
||||
// 调用收藏事件
|
||||
if(!this.isDetailConllection) collectionEV({action:isLikeCon,archive_id:this.detailObj.id})
|
||||
if (!this.isDetailConllection) collectionEV({
|
||||
action: isLikeCon,
|
||||
archive_id: this.detailObj.id
|
||||
})
|
||||
// 调用取消收藏事件
|
||||
else cancleCollectionEV({action:isLikeCon,archive_id:this.detailObj.id})
|
||||
else cancleCollectionEV({
|
||||
action: isLikeCon,
|
||||
archive_id: this.detailObj.id
|
||||
})
|
||||
this.isDetailConllection = !this.isDetailConllection
|
||||
// } else this.jieDuan = true
|
||||
// }
|
||||
},
|
||||
checkSotList(){//查询热门商品
|
||||
this.isHot = true;
|
||||
let params = {
|
||||
page:1,
|
||||
size:2000,
|
||||
is_hot:1
|
||||
}
|
||||
uni.request({
|
||||
url:'https://hengmei.scdxtc.cn/api/spu/list',
|
||||
data:params,
|
||||
method:'post',
|
||||
header:{
|
||||
'Content-Type': 'application/json; charset=UTF-8',
|
||||
'Authorization': 'Bearer '+uni.getStorageSync('token') || ''
|
||||
},
|
||||
success: (res) => {
|
||||
if(res.data.code==0){
|
||||
clearInterval(this.timer);
|
||||
// if(this.page==1) {
|
||||
this.zanArr = [];
|
||||
this.dataShopList = [];
|
||||
this.timeList = [];
|
||||
// }
|
||||
this.total = res.data.total;
|
||||
if(res.data.data.list.length!=0){
|
||||
res.data.data.list.forEach(item=>{
|
||||
let tuan = false,ping = false,xian = false,integral = false;
|
||||
if(item.activity_type=='group_make') ping = true;
|
||||
if(item.activity_type=='group_buy') tuan = true;
|
||||
if(item.activity_type=='limit_time') xian = true;
|
||||
let group_cover = [];
|
||||
if(item.activity_group_cover.length!=0) {
|
||||
item.activity_group_cover.forEach(item=>{
|
||||
group_cover.push(this.$http + item)
|
||||
})
|
||||
}
|
||||
let obj = {
|
||||
id:item.id,
|
||||
imgSrc: this.$http + item.cover,
|
||||
title: item.name,
|
||||
zhePrice:item.price/100,
|
||||
yuanPrice:item.original_price/100,
|
||||
integral:'',
|
||||
isTuan:tuan,//是否是团购
|
||||
isPing:ping,//是否是拼团活动
|
||||
isXian:xian,//是否是限时活动
|
||||
isIntegral:integral,//是否是积分
|
||||
grade:'',
|
||||
disease_name:item.disease_name,//病种名称
|
||||
reponseTime:res.header.Date,//接口响应时间
|
||||
activity_end_at:item.activity_end_at,//限时结束时间
|
||||
activity_group_cover:group_cover,//参团人的头像
|
||||
activity_group_num:item.activity_group_num,//已经参团人数
|
||||
}
|
||||
this.zanArr.push(obj)
|
||||
})
|
||||
this.zanArr.forEach((item,index)=>{
|
||||
if(item.activity_end_at!='') {
|
||||
let obj = {
|
||||
id:item.id,
|
||||
reponseTime:item.reponseTime,
|
||||
time:item.activity_end_at,
|
||||
nIndex:index
|
||||
}
|
||||
this.timeList.push(obj);
|
||||
}
|
||||
})
|
||||
if(this.timeList!=0){
|
||||
this.$toolAll.tools.showToast('加载中...')
|
||||
this.timer = setInterval(()=>{//定时器
|
||||
if(this.timeList.length!=0){
|
||||
this.timeList.forEach((item,index)=>{
|
||||
if(item.id==this.zanArr[item.nIndex].id){
|
||||
let endTime = new Date(this.timeList[index].time).getTime();//把结束时间转时间戳
|
||||
this.timeList[index].reponseTime = new Date(this.timeList[index].reponseTime).getTime() + 1000;//请求接口的时间递增,即:开始时间
|
||||
if(this.timeList[index].reponseTime - endTime >=0) {//如果开始时间的时间戳 - 结束时间的时间戳 >= 0 活动结束
|
||||
this.zanArr[item.nIndex].activity_end_at = "活动已结束";
|
||||
} else {
|
||||
// 继续进行倒计时
|
||||
this.zanArr[item.nIndex].activity_end_at = this.$toolAll.tools.dayTime(this.timeList[index].time,this.timeList[index].reponseTime);
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
},1000)
|
||||
setTimeout(()=>{
|
||||
this.dataShopList = this.zanArr;
|
||||
},1000)
|
||||
} else {
|
||||
this.dataShopList = this.zanArr;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
goPage(id,index){//进入商品详情事件
|
||||
uni.navigateTo({
|
||||
url:`/pagesB/shopDetail/shopDetail?id=${id}&isIntegral=${this.dataShopList[index].isIntegral}`
|
||||
})
|
||||
},
|
||||
backTop() { //回到顶部事件
|
||||
uni.pageScrollTo({
|
||||
scrollTop: 0,
|
||||
duration: 300
|
||||
});
|
||||
},
|
||||
backEv(){
|
||||
uni.navigateBack({delta:1})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
|
||||
</style>
|
||||
|
|
|
@ -248,10 +248,11 @@
|
|||
name:item.published_by || '恒美植发',//发布者昵称
|
||||
isVideo:item.video.includes(".mp4")//是否是视频
|
||||
}
|
||||
if(this.newCurrent==0 && item.category_id==32) this.dataList.push(tObj)
|
||||
if(this.newCurrent==1 && item.category_id==33) this.dataList.push(tObj)
|
||||
if(this.newCurrent==2 && item.category_id==34) this.dataList.push(tObj)
|
||||
if(this.newCurrent==3 && item.category_id==38) this.dataList.push(tObj)
|
||||
this.dataList.push(tObj);
|
||||
// if(this.newCurrent==0 && item.category_id==32) this.dataList.push(tObj)
|
||||
// if(this.newCurrent==1 && item.category_id==33) this.dataList.push(tObj)
|
||||
// if(this.newCurrent==2 && item.category_id==34) this.dataList.push(tObj)
|
||||
// if(this.newCurrent==3 && item.category_id==38) this.dataList.push(tObj)
|
||||
})
|
||||
}
|
||||
let obj = {
|
||||
|
|
|
@ -2,6 +2,13 @@
|
|||
<view>
|
||||
<!-- 状态栏 -->
|
||||
<status-nav v-if="invite_code==''" :titleVal="'商品详情'" :statusTitle="true"></status-nav>
|
||||
<view v-if="invite_code!=''" class="status-box statusHNH" style="background-color: #FFFFFF;">
|
||||
<view :style="{height:statusBarHeight+'px'}"></view>
|
||||
<view class="status-nav">
|
||||
<!-- 标题 -->
|
||||
<view class="tab-title tcenter" style="color: #000000;">商品详情</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 列表 -->
|
||||
<view :style="{top: statusHNH+'px'}" v-if="isNei!=3" class="posiszy" style="height: 50px;">
|
||||
<view class="bacf pad-zy32 pad-sx20">
|
||||
|
@ -155,44 +162,9 @@
|
|||
<view v-if="dataList.length!=0" class="fon30 bold mar-s40 mar-x10 pad-zy50 pcol">产品推荐</view>
|
||||
<shopList :dataList="dataList" v-if="dataList.length!=0"></shopList>
|
||||
</view>
|
||||
<!-- 案例日记 -->
|
||||
<view v-show="cateCurrent==1" class="pad-zy20">
|
||||
<view v-if="listArrone.length!=0">
|
||||
<list-pu @chooseLike="chooseLike" @comfirmev="comfirmev" :list="listArrone"></list-pu>
|
||||
<view class="fon24 col3 tc">暂无更多内容</view>
|
||||
</view>
|
||||
<view v-else class="disjcac fc" style="margin-top: 40%;">
|
||||
<image class="zanw-img" src="/static/public/nothing.png" mode="aspectFill"></image>
|
||||
<view class="fon24 col3">暂无内容</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 案例日记 -->
|
||||
<view v-show="cateCurrent==2" class="pad-zy20">
|
||||
<view v-if="listArrtwo.length!=0">
|
||||
<list-pu @chooseLike="chooseLike" @comfirmev="comfirmev" :list="listArrtwo"></list-pu>
|
||||
<view class="fon24 col3 tc">暂无更多内容</view>
|
||||
</view>
|
||||
<view v-else class="disjcac fc" style="margin-top: 40%;">
|
||||
<image class="zanw-img" src="/static/public/nothing.png" mode="aspectFill"></image>
|
||||
<view class="fon24 col3">暂无内容</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 效果模拟 -->
|
||||
<view v-show="cateCurrent==3" class="pad-zy20">
|
||||
<view v-if="listArrthree.length!=0">
|
||||
<list-pu @chooseLike="chooseLike" @comfirmev="comfirmev" :list="listArrthree"></list-pu>
|
||||
<view class="fon24 col3 tc">暂无更多内容</view>
|
||||
</view>
|
||||
<view v-else class="disjcac fc" style="margin-top: 40%;">
|
||||
<image class="zanw-img" src="/static/public/nothing.png" mode="aspectFill"></image>
|
||||
<view class="fon24 col3">暂无内容</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 科普视频 -->
|
||||
<view v-show="cateCurrent==4" class="pad-zy20">
|
||||
<view v-if="listArrfour.length!=0">
|
||||
<list-pu @chooseLike="chooseLike" @comfirmev="comfirmev" :list="listArrfour"></list-pu>
|
||||
<view class="fon24 col3 tc">暂无更多内容</view>
|
||||
<view v-if="cateCurrent!=isNum">
|
||||
<view v-if="allList.length!=0" class="pad-zy20">
|
||||
<list-pu @chooseLike="chooseLike" @comfirmev="comfirmev" :list="allList"></list-pu>
|
||||
</view>
|
||||
<view v-else class="disjcac fc" style="margin-top: 40%;">
|
||||
<image class="zanw-img" src="/static/public/nothing.png" mode="aspectFill"></image>
|
||||
|
@ -203,7 +175,7 @@
|
|||
<!-- 底部导航 -->
|
||||
<view class="posixzy disjbac bacf pad-zy32 btnBKS">
|
||||
<view class="posir">
|
||||
<image @tap="backHome" class="posia backH" src="/static/public/back-home.png" mode="aspectFill"></image>
|
||||
<image @tap="backHome" class="posia backH" src="/static/public/back-home-02.png" mode="aspectFit"></image>
|
||||
</view>
|
||||
<view class="disac fon26 colf">
|
||||
<view @tap="showTK = true" class="disjcac lianShare addCart-btn"><span v-if="isNei!=1">加入购物车</span><span v-else>单独购买</span></view>
|
||||
|
@ -364,6 +336,22 @@
|
|||
isAutoPlay:false,
|
||||
vision:false,
|
||||
isShowP:false,
|
||||
page:1,
|
||||
size:20,
|
||||
total:0,
|
||||
isZanw:true,
|
||||
allList:[]
|
||||
}
|
||||
},
|
||||
onReachBottom() { //触底事件
|
||||
if(this.cateCurrent!=this.isNum){
|
||||
if(this.total!=this.allList.length){
|
||||
this.page++
|
||||
this.checkList(this.cateCurrent)//调用自主预约列表事件
|
||||
} else {
|
||||
if(this.isZanw) this.$toolAll.tools.showToast('暂无更多列表','none',1000)
|
||||
this.isZanw = false
|
||||
}
|
||||
}
|
||||
},
|
||||
onPageScroll(e) {
|
||||
|
@ -415,7 +403,6 @@
|
|||
this.$toolAll.tools.isLogin()
|
||||
}
|
||||
}
|
||||
// this.checkDetail(this.conid)
|
||||
if(options.share_id!=undefined) this.share_id = options.share_id
|
||||
let maiOjb = {
|
||||
e:4,//内容分享
|
||||
|
@ -424,10 +411,39 @@
|
|||
}
|
||||
this.$toolAll.tools.maiDian(maiOjb);
|
||||
if(options.isIntegral=="true"){this.isScore = 3;}
|
||||
console.log(options.id,options.is_activity,'123');
|
||||
this.checkDetail(options.id,options.is_activity);
|
||||
this.cartNumEv();
|
||||
// 如果链接是拼团链接,则调起发起拼团人的商品
|
||||
if(options.shareCate==1) {
|
||||
// options.checkGrounpI商品id
|
||||
// options.share_id:拼团人id
|
||||
this.sharePin(options.checkGrounpId,options.share_id);
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
sharePin(id,u_id){
|
||||
// id:商品id
|
||||
this.$requst.post('spu/group-list',{id:id}).then(res=>{
|
||||
if(res.code==0){
|
||||
if(res.data.length){
|
||||
res.data.forEach(item=>{
|
||||
console.log(item.id,u_id);
|
||||
if(item.id==u_id){
|
||||
this.pinInfo = {
|
||||
id:item.id,
|
||||
imgSrc:item.cover,
|
||||
name:item.name,
|
||||
num:item.num
|
||||
}
|
||||
this.showPD = true;
|
||||
this.detailPTime(item.time);
|
||||
}
|
||||
})
|
||||
}
|
||||
} else this.$toolAll.tools.showToast(res.msg);
|
||||
})
|
||||
},
|
||||
loginEv(invite_code='',source='',channel=''){
|
||||
uni.login({
|
||||
provider: 'weixin',
|
||||
|
@ -469,7 +485,7 @@
|
|||
},
|
||||
checkPTList(id){//查询正在拼团的人数
|
||||
uni.request({
|
||||
url:'https://hengmei.scdxtc.cn/api/spu/group-list',
|
||||
url:`${this.$hostapi}spu/group-list`,
|
||||
data:{id:id},
|
||||
method:'post',
|
||||
header:{
|
||||
|
@ -529,7 +545,11 @@
|
|||
is_score:this.detailObj.is_score,
|
||||
group_id:this.ispt,//0发起拼团 1参与拼团 2单独购买
|
||||
is_only:this.ispt,
|
||||
pin_user_id:this.pinUserId//发起拼单人ID
|
||||
pin_user_id:this.pinUserId,//发起拼单人ID
|
||||
category_id:this.category_id,//病种ID
|
||||
cateNum:this.isNei,
|
||||
checkGrounpId:this.detailObj.id,//查询拼团列表ID
|
||||
|
||||
}
|
||||
let newList = [params];
|
||||
uni.setStorageSync('orderList',newList);
|
||||
|
@ -566,6 +586,19 @@
|
|||
}
|
||||
},1000)
|
||||
},
|
||||
detailPTime(endtime){
|
||||
this.pinDao = this.$toolAll.tools.dayTime(endtime,new Date());
|
||||
this.timerp = setInterval(()=>{
|
||||
if((new Date(endtime).getTime()) - (new Date().getTime())<=0){
|
||||
this.pinDao = '已结束';
|
||||
this.checkPTList(this.detailObj.id);
|
||||
this.showPD = false;
|
||||
clearInterval(this.timerp);
|
||||
} else {
|
||||
this.pinDao = this.$toolAll.tools.dayTime(endtime,new Date());
|
||||
}
|
||||
},1000)
|
||||
},
|
||||
atOnceSpellOrder(index){//参与拼单
|
||||
if(index==1){
|
||||
this.showTK = true;
|
||||
|
@ -599,51 +632,24 @@
|
|||
// }
|
||||
},
|
||||
chooseLike(e) { //收藏事件
|
||||
let cateId = ''
|
||||
let newArr = []
|
||||
if(this.cateCurrent==1) {
|
||||
newArr = this.listArrone
|
||||
cateId = newArr[e].id
|
||||
}
|
||||
if(this.cateCurrent==2) {
|
||||
newArr = this.listArrtwo
|
||||
cateId = newArr[e].id
|
||||
}
|
||||
if(this.cateCurrent==3) {
|
||||
newArr = this.listArrthree
|
||||
cateId = newArr[e].id
|
||||
}
|
||||
if(this.cateCurrent==4) {
|
||||
newArr = this.listArrfour
|
||||
cateId = newArr[e].id
|
||||
}
|
||||
if(newArr[e].is_collected==0){
|
||||
newArr[e].is_collected = 1
|
||||
// console.log(this.dataList[e].is_collected);
|
||||
if (this.allList[e].is_collected == 0) {
|
||||
this.allList[e].is_collected = 1
|
||||
// 调用收藏事件
|
||||
collectionShopEV({action:'collect',id:cateId})
|
||||
collectionEV({
|
||||
action: 'collect',
|
||||
archive_id: this.allList[e].id
|
||||
})
|
||||
}
|
||||
},
|
||||
comfirmev(e) { //确认取消收藏事件
|
||||
let cateId = ''
|
||||
if(this.cateCurrent==1) {
|
||||
this.listArrone[e].is_collected = 0
|
||||
cateId = this.listArrone[e].id
|
||||
}
|
||||
if(this.cateCurrent==2) {
|
||||
this.listArrtwo[e].is_collected = 0
|
||||
cateId = this.listArrtwo[e].id
|
||||
}
|
||||
if(this.cateCurrent==3) {
|
||||
this.listArrthree[e].is_collected = 0
|
||||
cateId = this.listArrthree[e].id
|
||||
}
|
||||
if(this.cateCurrent==4) {
|
||||
this.listArrfour[e].is_collected = 0
|
||||
cateId = this.listArrfour[e].id
|
||||
}
|
||||
this.allList[e].is_collected = 0;
|
||||
this.$toolAll.tools.showToast('正在取消...', 'loading')
|
||||
// 调用取消收藏事件
|
||||
cancleCollectionShopEV({action:'collect',id:cateId})
|
||||
cancleCollectionEV({
|
||||
action: 'collect',
|
||||
archive_id: this.allList[e].id
|
||||
})
|
||||
},
|
||||
backHome(){
|
||||
uni.navigateTo({
|
||||
|
@ -657,7 +663,7 @@
|
|||
},
|
||||
checkDetail(newId,is_activity){
|
||||
uni.request({
|
||||
url:'https://hengmei.scdxtc.cn/api/spu/detail',
|
||||
url:`${this.$hostapi}spu/detail`,
|
||||
data:{id:newId,is_activity:is_activity},
|
||||
method:'post',
|
||||
header:{
|
||||
|
@ -795,7 +801,7 @@
|
|||
disease_id:''//病种ID
|
||||
}
|
||||
uni.request({
|
||||
url:'https://hengmei.scdxtc.cn/api/spu/list',
|
||||
url:`${this.$hostapi}spu/list`,
|
||||
data:params,
|
||||
method:'post',
|
||||
header:{
|
||||
|
@ -835,6 +841,7 @@
|
|||
activity_end_at:item.activity_end_at,//限时结束时间
|
||||
activity_group_cover:group_cover,//参团人的头像
|
||||
activity_group_num:item.activity_group_num,//已经参团人数
|
||||
activity_id:item.activity_id
|
||||
}
|
||||
this.dataList.push(obj)
|
||||
})
|
||||
|
@ -856,18 +863,24 @@
|
|||
})
|
||||
},
|
||||
choosecateEv(e){//分类列表事件
|
||||
this.cateCurrent = e
|
||||
this.$requst.post('archives/category',{category_id:this.cateList[e].id,page:1,size:2000}).then(res=>{
|
||||
this.$requst.post('archives/category', {
|
||||
category_id: this.cateList[e].id,
|
||||
keyword: '',
|
||||
page:this.page,
|
||||
size:this.size
|
||||
}).then(res => {
|
||||
// console.log('该分类下的列表:',res);
|
||||
if (res.code == 0) {
|
||||
if(e==1 && this.active!=e) this.listArrone = []
|
||||
if(e==2 && this.active!=e) this.listArrtwo = []
|
||||
if(e==3 && this.active!=e) this.listArrthree = []
|
||||
if(e==4 && this.active!=e) this.listArrfour = []
|
||||
if(this.page==1) {
|
||||
if(this.active != e) this.allList = [];
|
||||
uni.pageScrollTo({
|
||||
scrollTop:0,
|
||||
duration:0
|
||||
})
|
||||
}
|
||||
this.total = res.data.list.total;
|
||||
if (res.data.list.list.length != 0) {
|
||||
res.data.list.list.forEach(item => {
|
||||
let fabImg = '';
|
||||
if(item.published_headimgurl!='' && item.published_headimgurl!=null) fabImg = this.$http + item.published_headimgurl;
|
||||
let num = item.video.search(".mp4")
|
||||
let isVideo = false
|
||||
if (num != '-1') isVideo = true
|
||||
|
@ -881,19 +894,17 @@
|
|||
video: this.$http + item.video, //视频地址
|
||||
title: item.title, //标题
|
||||
content: item.subtitle, //副标题
|
||||
head_img: fabImg || '/static/public/logo.png',//发布者头像
|
||||
name:item.published_by || '恒美植发',//发布者昵称
|
||||
head_img: '/static/public/logo.png', //发布者头像
|
||||
name: '恒美植发', //发布者昵称
|
||||
isVideo: isVideo //是否是视频
|
||||
}
|
||||
if (item.cover != '') {
|
||||
if(e==1 && this.active!=e) this.listArrone.push(arrObj)
|
||||
if(e==2 && this.active!=e) this.listArrtwo.push(arrObj)
|
||||
if(e==3 && this.active!=e) this.listArrthree.push(arrObj)
|
||||
if(e==4 && this.active!=e) this.listArrfour.push(arrObj)
|
||||
this.allList.push(arrObj);
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
this.cateCurrent = e;
|
||||
} else this.$toolAll.tools.showToast(res.msg);
|
||||
}, error => {})
|
||||
},
|
||||
tapConllection(){//收藏、取消收藏事件
|
||||
|
|
|
@ -180,7 +180,7 @@
|
|||
timeList:[],
|
||||
zanArr:[],
|
||||
timer:'',
|
||||
vision:true,
|
||||
vision:false,
|
||||
isShowP:false,
|
||||
}
|
||||
},
|
||||
|
@ -274,7 +274,7 @@
|
|||
size:this.size,
|
||||
}
|
||||
uni.request({
|
||||
url:'https://hengmei.scdxtc.cn/api/spu/list',
|
||||
url:`${this.$hostapi}spu/list`,
|
||||
data:params,
|
||||
method:'post',
|
||||
header:{
|
||||
|
|
|
@ -53,7 +53,7 @@
|
|||
size:10,
|
||||
total:'',//总数
|
||||
isZanw:true,
|
||||
vision:true,
|
||||
vision:false,
|
||||
isShowP:false,
|
||||
}
|
||||
},
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
<template>
|
||||
<div class="">
|
||||
<image class="" @tap="backEv" :style="{top:statusHNH/2+'px'}" src="/static/public/videoBack.png" style="width: 33rpx;height: 33rpx;position: fixed;z-index: 10;left: 20rpx;" mode="aspectFill"></image>
|
||||
<video id="myVideo" style="width: 100%;" :style="{height:newHeight+'px'}"
|
||||
<video id="myVideo" style="width: 100%;" :style="{height:newHeight+'px'}" autoplay="true"
|
||||
:src="videoSrc" :enable-play-gesture="dans" :poster="posterSrc"
|
||||
:controls="isControls" :show-center-play-btn="isCenterImg" :show-play-btn="isBottomImg" :show-fullscreen-btn="isFull"
|
||||
@play="comePlay" @pause="comePause"></video>
|
||||
<!-- 封面图 -->
|
||||
<image v-if="isPlayImg" @tap="playEv" src="/static/public/video.png" style="position: fixed;top: 50%;left: 50%;
|
||||
width: 126rpx;height: 126rpx;transform: translate(-50%, -50%);" mode="aspectFill"></image>
|
||||
<!-- <image v-if="isPlayImg" @tap="playEv" src="/static/public/video.png" style="position: fixed;top: 50%;left: 50%;
|
||||
width: 126rpx;height: 126rpx;transform: translate(-50%, -50%);" mode="aspectFill"></image> -->
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 21 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue