This commit is contained in:
zoujiandong 2024-04-18 09:57:18 +08:00
parent f1f2f3a821
commit 89afe588b7
12 changed files with 351 additions and 111 deletions

View File

@ -14,7 +14,7 @@ import {
import { import {
chatMsg chatMsg,serviceChatMsg
} from "../../../../api/common" } from "../../../../api/common"
import {throttle} from "../../../../utils/util" import {throttle} from "../../../../utils/util"
@ -117,6 +117,7 @@ Component({
}) })
console.log(this.data.order_inquiry_id); console.log(this.data.order_inquiry_id);
this.handleChatMsg(this.data.order_inquiry_id); this.handleChatMsg(this.data.order_inquiry_id);
}, },
hide: function() { hide: function() {
@ -134,6 +135,7 @@ Component({
*/ */
data: { data: {
img_host:'https://oss.prod.applets.igandanyiyuan.com/applet/patient/static', img_host:'https://oss.prod.applets.igandanyiyuan.com/applet/patient/static',
serviceInfo:{},
conversationName: '', conversationName: '',
isEvaluation:false, isEvaluation:false,
conversation: {}, conversation: {},
@ -164,6 +166,7 @@ Component({
duration: 0, duration: 0,
reception_time: null, reception_time: null,
rest_time: 0, rest_time: 0,
inquiry_mode:'',
doctor_id: '', doctor_id: '',
doctor_user_id:'', doctor_user_id:'',
timeData: {}, timeData: {},
@ -437,8 +440,17 @@ Component({
this.handelfllowDoctor() this.handelfllowDoctor()
} }
}, },
handleServiceChatMsg(id){
serviceChatMsg(id).then(res=> {
console.log(res)
this.setData({
serviceInfo:res
})
})
},
handleChatMsg(id) { handleChatMsg(id) {
chatMsg(id).then(data => { chatMsg(id).then(data => {
this.handleServiceChatMsg(id);
// console.log("接口请求收到时间66666"+dayjs().format("YYYY-MM-DD HH:mm:ss:SSS")); // console.log("接口请求收到时间66666"+dayjs().format("YYYY-MM-DD HH:mm:ss:SSS"));
// console.log(data); // console.log(data);
let promise=wx.$TUIKit.getUserProfile({ let promise=wx.$TUIKit.getUserProfile({

View File

@ -37,7 +37,7 @@
<view class="circle"></view> <view class="circle"></view>
<view>问诊中</view> <view>问诊中</view>
<view class="bar" wx:if="{{doctorChatData.rest_time!==0 && !isEnd}}">|</view> <view class="bar" wx:if="{{doctorChatData.rest_time!==0 && !isEnd}}">|</view>
<view class="desc" wx:if="{{doctorChatData.rest_time!==0 && !isEnd}}"> <view class="desc" wx:if="{{doctorChatData.rest_time!==0 && !isEnd && !(doctorChatData.inquiry_mode==8 || doctorChatData.inquiry_mode==9)}}">
<view class="desc"wx:if="{{doctorChatData.rest_time==-2}}">不限时间</view> <view class="desc"wx:if="{{doctorChatData.rest_time==-2}}">不限时间</view>
<view class="desc" wx:elif="{{doctorChatData.rest_time>0}}"> <view class="desc" wx:elif="{{doctorChatData.rest_time>0}}">
剩余<van-count-down use-slot time="{{doctorChatData.rest_time}}" bind:change="onChangeTime" format="HH:mm:ss"> 剩余<van-count-down use-slot time="{{doctorChatData.rest_time}}" bind:change="onChangeTime" format="HH:mm:ss">
@ -51,6 +51,10 @@
<text class="red" decode="true" wx:else>&nbsp;{{rest_rounds>=0?rest_rounds:0}}个</text> <text class="red" decode="true" wx:else>&nbsp;{{rest_rounds>=0?rest_rounds:0}}个</text>
<text>沟通回合</text> <text>沟通回合</text>
</view> </view>
<view class="count_time" wx:if="{{doctorChatData.rest_time!==0 && !isEnd && (doctorChatData.inquiry_mode==8 || doctorChatData.inquiry_mode==9)}}">
<text class="red" wx:if="{{serviceInfo.monthly_frequency==0}}">不限问诊次数,{{serviceInfo.finish_time}}后结束</text>
<text wx:else >当月剩余:<text class="red">{{serviceInfo.monthly_frequency-serviceInfo.month_inquiry_count}}</text>次</text>
</view>
</view> </view>
</view> </view>
<view class="statusbox" wx:elif="{{doctorChatData.inquiry_status==7}}"> <view class="statusbox" wx:elif="{{doctorChatData.inquiry_status==7}}">

View File

@ -634,3 +634,6 @@ border-radius: 30rpx;
width:80rpx; width:80rpx;
height:80rpx; height:80rpx;
} }
.count_time .red{
color:#E34D59;
}

View File

@ -28,6 +28,9 @@ function job(){//获取职业数据
function chatMsg(id){//获取问诊订单消息内页基础数据 function chatMsg(id){//获取问诊订单消息内页基础数据
return request('/im/inquiry/basic/'+id,'GET') return request('/im/inquiry/basic/'+id,'GET')
}; };
function serviceChatMsg(id){
return request('/im/inquiry/basic/service/'+id,'GET')
}
function hotSearch(data){//热门搜索 function hotSearch(data){//热门搜索
return request('/basic/keyword/search','GET',data) return request('/basic/keyword/search','GET',data)
}; };
@ -39,6 +42,7 @@ function agreement(id){
} }
module.exports={ module.exports={
serviceChatMsg,
sickType, sickType,
sickList, sickList,
getSign, getSign,

View File

@ -33,10 +33,13 @@ function serviceEquityDetail(id){ //获取患者服务包订单服务权益详
function serviceSickInfo(id){ //获取服务包订单病例详情-基础益详情 function serviceSickInfo(id){ //获取服务包订单病例详情-基础益详情
return request('/case/service/'+id,'GET',{}) return request('/case/service/'+id,'GET',{})
}; };
function checkService(id){ //检测是否可创建服务包问诊订单
return request('/patient/service/check/'+id,'GET',{})
};
module.exports={ module.exports={
checkService,
serviceSickInfo, serviceSickInfo,
serviceEquityDetail, serviceEquityDetail,
createServiceChatOrder, createServiceChatOrder,

View File

@ -11,6 +11,7 @@ Page({
*/ */
data: { data: {
order_no:'', order_no:'',
confirmNext:'确定',
order_inquiry_id:'', order_inquiry_id:'',
chat_id:'', chat_id:'',
showWarn:false, showWarn:false,
@ -42,8 +43,7 @@ Page({
chat_id:'', chat_id:'',
}, },
goHasOrder(){ goHasOrder(){
let {status,doctor_id,order_no}=this.data;
let status=this.data.status;
if(status==4){ if(status==4){
let id=this.data.order_inquiry_id; let id=this.data.order_inquiry_id;
app.method.navigateTo({ app.method.navigateTo({
@ -55,9 +55,13 @@ Page({
url: '/healthyService/pages/healthyOrderDetail/healthyOrderDetail?order_service_id='+id, url: '/healthyService/pages/healthyOrderDetail/healthyOrderDetail?order_service_id='+id,
}) })
}else if(status==3){
app.method.navigateTo({
url:'/patient/pages/expertDetail/expertDetail?doctor_id='+doctor_id
})
}else if(status==5){
this.handleCreateServiceChatOrder(order_no)
} }
}, },
inputChange(e) { inputChange(e) {
this.setData({ this.setData({
@ -257,46 +261,57 @@ Page({
}) })
}, },
handleGetServiceDetail(){ handleGetServiceDetail(){
let {doctor_id,currentFamilyId,service_type,follow_package_item_id,chat_id,sex,inquiry_mode,inquiry_type}=this.data; let {doctor_id,currentFamilyId,service_type,follow_package_item_id,chat_id,sex,inquiry_mode,inquiry_type}=this.data;
getServiceDetail({ getServiceDetail({
doctor_id, doctor_id,
family_id:currentFamilyId, family_id:currentFamilyId,
service_type, service_type,
follow_package_item_id follow_package_item_id
}).then((res)=>{ }).then((res)=>{
if(res.status==1){ if(res.status==1){
app.method.navigateTo({ app.method.navigateTo({
url:'/healthyService/pages/writeSick/writeSick?doctor_id='+doctor_id+"&family_id="+currentFamilyId+"&chat_id="+chat_id+"&inquiry_type="+inquiry_type+"&sex="+sex+"&inquiry_mode="+inquiry_mode url:'/healthyService/pages/writeSick/writeSick?doctor_id='+doctor_id+"&family_id="+currentFamilyId+"&chat_id="+chat_id+"&inquiry_type="+inquiry_type+"&sex="+sex+"&inquiry_mode="+inquiry_mode+"&package_id="+follow_package_item_id
}) })
}else if(res.status==2){ }else if(res.status==2){
this.setData({ this.setData({
showWarn:true, showWarn:true,
order_no:res.data.order_no, order_no:res.data.order_no,
status:2, status:2,
message:res.message confirmNext:'确定',
}) message:res.message
})
}else if(res.status==3){
app.method.navigateTo({ }else if(res.status==3){
url:'/patient/pages/expertDetail/expertDetail?doctor_id='+doctor_id this.setData({
}) showWarn:true,
status:3,
}else if(res.status==4){ confirmNext:'前往',
this.setData({ message:'本月问诊次数已用完,您可选择医生其他服'
showWarn:true, })
order_no:res.data.order_no, }else if(res.status==4){
order_inquiry_id:res.data.order_inquiry_id, this.setData({
status:4, showWarn:true,
message:res.message order_no:res.data.order_no,
}) order_inquiry_id:res.data.order_inquiry_id,
}else if(res.status==5){ status:4,
this.handleCreateServiceChatOrder(res.data.order_no) confirmNext:'确定',
message:res.message
} })
}else if(res.status==5){
this.setData({
showWarn:true,
status:5,
confirmNext:'前往',
order_no:res.data.order_no,
message:'是否使用剩余问诊次数?'
})
}
}) })
}, },
handleCreateServiceChatOrder(id){ handleCreateServiceChatOrder(id){
createServiceChatOrder(id).then(res=>{ createServiceChatOrder(id).then(res=>{
let order_inquiry_id=res.order_inquiry_id; let order_inquiry_id=res.order_inquiry_id;

View File

@ -1,11 +1,11 @@
// pages/medinceOrderDetail/medinceOrderDetail.js // pages/medinceOrderDetail/medinceOrderDetail.js
const app = getApp() const app = getApp()
import {serviceDetail,cancelCheckPay,delCheckOrder,cancelCheckOrder,checkInquiry,serviceEquityDetail} from "../../../api/health" import {serviceDetail,cancelCheckPay,delCheckOrder,cancelCheckOrder,checkInquiry,serviceEquityDetail,createServiceChatOrder,checkService} from "../../../api/health"
import {cancelPay} from "../../../api/consultOrder" import {cancelPay} from "../../../api/consultOrder"
import {cancelOrder} from "../../../api/consultOrder" import {cancelOrder} from "../../../api/consultOrder"
import {fllowDoctor,notfllowDoctor} from "../../../api/consultExpert" import {fllowDoctor,notfllowDoctor} from "../../../api/consultExpert"
import {throttle} from "../../../utils/util" import {throttle} from "../../../utils/util"
import {getSign} from "../../../api/common"
import Dialog from '@vant/weapp/dialog/dialog'; import Dialog from '@vant/weapp/dialog/dialog';
Page({ Page({
@ -13,7 +13,14 @@ Page({
* 页面的初始数据 * 页面的初始数据
*/ */
data: { data: {
showJuan:true, confirmText:'确定',
restProduct:0,
status:'',
order_no:'',
showWarn:false,
order_inquiry_id:'',
messageWarn:'',
showJuan:true,
time: 30 * 60 * 60 * 1000, time: 30 * 60 * 60 * 1000,
showCover:true, showCover:true,
showExpand:true, showExpand:true,
@ -98,7 +105,7 @@ Page({
showExpand:!this.data.showExpand showExpand:!this.data.showExpand
}) })
let list=this.data.toggleList; let list=this.data.toggleList;
if(!this.data.showJuan){ if(!this.data.showExpand){
this.setData({ this.setData({
inquriyList:list.slice(0,1) inquriyList:list.slice(0,1)
}) })
@ -124,11 +131,100 @@ Page({
} }
}, },
goInquiry:throttle(function(e){ goInquiry:throttle(function(e){
let {id}=e.currentTarget.data.dataset; let {id}=e.currentTarget.dataset;
app.method.navigateTo({ app.method.navigateTo({
url:'/patient/pages/orderDetail/orderDetail?order_inquiry_id='+id url:'/patient/pages/orderDetail/orderDetail?order_inquiry_id='+id
}) })
}), }),
goProduct:throttle(function(e){
let {id}=e.currentTarget.dataset;
app.method.navigateTo({
url:'/patient/pages/medinceOrderDetail/medinceOrderDetail?order_product_id='+id
})
}),
goHasOrder(){
let status=this.data.status;
let {order_service_type,user_doctor,order_service_no}=this.data.order;
if(status==4){
let id=this.data.order_inquiry_id;
app.method.navigateTo({
url: '/patient/pages/orderDetail/orderDetail?order_inquiry_id='+id,
})
}else if(status==2){
let id=this.data.order_no;
app.method.navigateTo({
url: '/healthyService/pages/healthyOrderDetail/healthyOrderDetail?order_service_id='+id,
})
}else if(status==1){
let id=this.data.order_no;
this.handleCreateServiceChatOrder(id)
}else if(status==3){
let doctor_id=this.data.order.user_doctor.doctor_id;
app.method.navigateTo({
url:'/patient/pages/expertDetail/expertDetail?doctor_id='+doctor_id
})
}
},
handleCheckService(){
let {order_service_no}=this.data.order;
checkService(order_service_no).then((res)=>{
if(res.status==1){
this.setData({
showWarn:true,
status:5,
confirmNext:'前往',
order_no:res.data.order_no,
messageWarn:'是否使用剩余问诊次数?'
})
}else if(res.status==2){
this.setData({
showWarn:true,
order_no:res.data.order_no,
status:2,
confirmText:'确定',
messageWarn:res.message
})
}else if(res.status==3){
this.setData({
showWarn:true,
status:3,
confirmNext:'前往',
messageWarn:'本月问诊次数已用完,您可选择医生其他服'
})
}else if(res.status==4){
this.setData({
showWarn:true,
order_no:res.data.order_no,
order_inquiry_id:res.data.order_inquiry_id,
status:4,
confirmText:'确定',
messageWarn:res.message
})
}
})
},
goXuFei:throttle(function(){
let {order_service_type,user_doctor,amount_total}=this.data.order;
let url=order_service_type==2?'/healthyService/pages/visitDetail/visitDetail?doctor_id='+user_doctor.doctor_id:'/healthyService/pages/healthyDetail/healthyDetail?doctor_id='+user_doctor.doctor_id+"&price="+amount_total
app.method.navigateTo({
url:url
})
}),
handleCreateServiceChatOrder(id){
createServiceChatOrder(id).then(res=>{
let order_inquiry_id=res.order_inquiry_id;
let chat_id=this.data.chat_id;
app.method.navigateTo({
url: '/TUIService/pages/index?currentConversationID=' + chat_id + "&order_inquiry_id=" + order_inquiry_id + "&inquiry_type=1&fromType=chat"
})
})
},
goBack(){ goBack(){
let {fromType}=this.data; let {fromType}=this.data;
@ -177,13 +273,14 @@ Page({
}, },
handelServiceEquityDetail(id){ handelServiceEquityDetail(id){
serviceEquityDetail(id).then(res=>{ serviceEquityDetail(id).then(res=>{
let package_product=res.order_service_package_product;
this.setData({ this.setData({
equity:res, equity:res,
inquiryList:res.order_inquiry, inquriyList:res.order_inquiry,
toggleList:res.order_inquiry, toggleList:res.order_inquiry,
productList:res.order_product, productList:res.order_product,
yaoList:res.order_product yaoList:res.order_product,
restProduct:package_product>0?package_product[0].quantity-package_product[0].used_quantity:0
}) })
}) })
}, },
@ -398,6 +495,12 @@ confirmCancelOrder(){
message:"是否确定要取消订单?" message:"是否确定要取消订单?"
}) })
}, },
goChat:throttle(function(){
let user_id=this.data.order.user_id;
app.method.navigateTo({
url: '/TUIService/pages/index?currentConversationID=' + user_id + "&order_inquiry_id=" + id+ "&inquiry_type=1"
})
}),
goSickInfo(event){ goSickInfo(event){
let order_no=this.data.order_service_id; let order_no=this.data.order_service_id;
app.method.navigateTo({ app.method.navigateTo({

View File

@ -153,7 +153,7 @@
</view> </view>
<view class="quanyibox rowbox "> <view class="quanyibox rowbox " wx:if="{{(order.order_service_status==3 || order.order_service_status==4 || (order.order_service_status==5 && order.pay_status!=5))}}">
<view class="topbox"> <view class="topbox">
<view class="title">服务权益</view> <view class="title">服务权益</view>
<view class="row" wx:if="{{order.order_service_status==2 || order.order_service_status==3 || order.order_service_status==4}}"> <view class="row" wx:if="{{order.order_service_status==2 || order.order_service_status==3 || order.order_service_status==4}}">
@ -174,7 +174,7 @@
</view> </view>
<view class="medbox" wx:if="{{equity.order_service_package.order_service_type==2}}"> <view class="medbox" wx:if="{{equity.order_service_package.order_service_type==2}}">
<view class="title">问诊服务</view> <view class="title">问诊服务</view>
<view class="row" style="position: relative;margin-bottom: 22rpx;" wx:if="{{order.order.order_service_status==1 || order.order.order_service_status==2 || (order.order_service_status==5 && order.pay_status==5)}}"> <view class="row" style="position: relative;margin-bottom: 22rpx;" wx:if="{{order.order.order_service_status==1 || order.order.order_service_status==2 || (order.order_service_status==5)}}">
<view class="namebox"> <view class="namebox">
<view class="name"><text decode>内&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;容</text></view> <view class="name"><text decode>内&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;容</text></view>
<view class="dot"></view> <view class="dot"></view>
@ -182,13 +182,13 @@
<view class="desc"><text class="red">{{equity.order_service_package_detail.service_period/30}}个</text>月内,每月<text class="red">{{equity.order_service_package_detail.monthly_frequency==0?'不限':equity.order_service_package_detail.monthly_frequency}}次</text>问诊</view> <view class="desc"><text class="red">{{equity.order_service_package_detail.service_period/30}}个</text>月内,每月<text class="red">{{equity.order_service_package_detail.monthly_frequency==0?'不限':equity.order_service_package_detail.monthly_frequency}}次</text>问诊</view>
</view> </view>
<view class="row" style="position: relative;margin-bottom: 22rpx;" wx:if="{{order.order_service_status==3}}"> <view class="row" style="position: relative;margin-bottom: 22rpx;" wx:if="{{order.order_service_status==3 || order.order_service_status==4 }}">
<view class="namebox"> <view class="namebox" wx:if="{{!(equity.order_inquiry.length==0 && equity.product.length==0)}}">
<view class="name">当月剩余</view> <view class="name">当月剩余</view>
<view class="dot"></view> <view class="dot"></view>
</view> </view>
<view class="desc"><text class="red">{{equity.order_service_package_detail.monthly_frequency==0?'不限':(equity.order_service_package_detail.monthly_frequency-equity.order_service_package.month_inquiry_count)}}次</text>图文</view> <view class="desc" wx:if="{{!(equity.order_inquiry.length==0 && equity.product.length==0)}}"><text class="red">{{equity.order_service_package_detail.monthly_frequency==0?'不限':(equity.order_service_package_detail.monthly_frequency-equity.order_service_package.month_inquiry_count)}}次</text>图文</view>
<view class="expand" wx:if="{{ equity.order_inquiry.length>0}}" bind:tap="toggleExpand">{{showExpand?'收起':'展开'}} <van-icon name="{{showExpand?'arrow-up':'arrow-down'}}" /></view> <view class="expand" wx:if="{{ equity.order_inquiry.length>0 && (order.order_service_status==3 || order.order_service_status==4 || (order.order_service_status==5 && order.pay_status!=5))}}" bind:tap="toggleExpand">{{showExpand?'收起':'展开'}} <van-icon name="{{showExpand?'arrow-up':'arrow-down'}}" /></view>
</view> </view>
<view class="usebox" wx:for="{{inquriyList}}" wx:key="order_inquiry_id" bind:tap="goInquiry" data-id="{{item.order_inquiry_id}}"> <view class="usebox" wx:for="{{inquriyList}}" wx:key="order_inquiry_id" bind:tap="goInquiry" data-id="{{item.order_inquiry_id}}">
<view class="time">问诊时间:{{item.created_at}}</view> <view class="time">问诊时间:{{item.created_at}}</view>
@ -207,12 +207,12 @@
</view> </view>
<view class="row" style="position: relative;margin-bottom: 22rpx;" wx:if="{{order.order_service_status==3}}"> <view class="row" style="position: relative;margin-bottom: 22rpx;" wx:if="{{order.order_service_status==3}}">
<view class="namebox"> <view class="namebox" wx:if="{{!(equity.order_inquiry.length==0 && equity.product.length==0)}}">
<view class="name">当月剩余</view> <view class="name">当月剩余</view>
<view class="dot"></view> <view class="dot"></view>
</view> </view>
<view class="desc"><text class="red">{{equity.order_service_package_detail.monthly_frequency==0?'不限':(equity.order_service_package_detail.monthly_frequency-equity.order_service_package.month_inquiry_count)}}次</text>图文</view> <view class="desc" wx:if="{{!(equity.order_inquiry.length==0 && equity.product.length==0)}}"><text class="red">{{equity.order_service_package_detail.monthly_frequency==0?'不限':(equity.order_service_package_detail.monthly_frequency-equity.order_service_package.month_inquiry_count)}}次</text>图文</view>
<view class="expand" wx:if="{{ equity.order_inquiry.length>0}}" bind:tap="toggleExpand">{{showExpand?'收起':'展开'}} <van-icon name="{{showExpand?'arrow-up':'arrow-down'}}" /></view> <view class="expand" wx:if="{{ equity.order_inquiry.length>1 && (order.order_service_status==3 || order.order_service_status==4 || (order.order_service_status==5 && order.pay_status!=5))}}" bind:tap="toggleExpand">{{showExpand?'收起':'展开'}} <van-icon name="{{showExpand?'arrow-up':'arrow-down'}}" /></view>
</view> </view>
<view class="usebox" wx:for="{{inquriyList}}" wx:key="order_inquiry_id" bind:tap="goInquiry" data-id="{{item.order_inquiry_id}}"> <view class="usebox" wx:for="{{inquriyList}}" wx:key="order_inquiry_id" bind:tap="goInquiry" data-id="{{item.order_inquiry_id}}">
<view class="time">问诊时间:{{item.created_at}}</view> <view class="time">问诊时间:{{item.created_at}}</view>
@ -222,7 +222,7 @@
</view> </view>
<view class="medbox" wx:if="{{equity.order_service_package.order_service_type==1}}"> <view class="medbox" wx:if="{{equity.order_service_package.order_service_type==1}}">
<view class="title">药品服务</view> <view class="title">药品服务</view>
<view class="row" style="position: relative;margin-bottom: 22rpx;" wx:if="{{order.order.order_service_status==1 || order.order.order_service_status==2 || (order.order_service_status==5 && order.pay_status==5)}}"> <view class="row" style="position: relative;margin-bottom: 22rpx;" wx:if="{{order.order_service_status==1 || order.order_service_status==2 || (order.order_service_status==5 && order.pay_status==5)}}">
<view class="namebox"> <view class="namebox">
<view class="name"><text decode>内&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;容</text></view> <view class="name"><text decode>内&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;容</text></view>
<view class="dot"></view> <view class="dot"></view>
@ -230,14 +230,14 @@
<view class="desc"><text class="red">30盒</text>干爽颗粒(步长)</view> <view class="desc"><text class="red">30盒</text>干爽颗粒(步长)</view>
</view> </view>
<view class="row" wx:if="{{order.order_service_status==3}}"> <view class="row" wx:if="{{order.order_service_status==3}}">
<view class="namebox"> <view class="namebox" wx:if="{{!(equity.order_inquiry.length==0 && equity.product.length==0)}}">
<view class="name">药品剩余</view> <view class="name">药品剩余</view>
<view class="dot"></view> <view class="dot"></view>
</view> </view>
<view class="desc"><text class="red">{{30}}盒</text>干爽颗粒</view> <view class="desc" wx:if="{{!(equity.order_inquiry.length==0 && equity.product.length==0)}}"><text class="red">{{restProduct}}盒</text>干爽颗粒</view>
<view class="expand" bind:tap="toggleProduct">{{showProduct?'收起':'展开'}} <van-icon name="{{showProduct?'arrow-up':'arrow-down'}}" /></view> <view class="expand" bind:tap="toggleProduct" wx:if="{{productList.length>1 && (order.order_service_status==3 || order.order_service_status==4 || (order.order_service_status==5 && order.pay_status!=5))}}">{{showProduct?'收起':'展开'}} <van-icon name="{{showProduct?'arrow-up':'arrow-down'}}" /></view>
</view> </view>
<view class="usebox" wx:for="{{productList}}" wx:key="order_product_id" > <view class="usebox" wx:for="{{productList}}" wx:key="order_product_id" bind:tap="goProduct" data-id="{{item.order_product_id}}">
<view class="time">下单时间:{{item.created_at}}</view> <view class="time">下单时间:{{item.created_at}}</view>
<view class="detail">{{item.order_product_status==1?'待支付':item.order_product_status==2?'待发货':item.order_product_status==3?'已发货':item.order_product_status==42?'已签收':'已取消'}}</view> <view class="detail">{{item.order_product_status==1?'待支付':item.order_product_status==2?'待发货':item.order_product_status==3?'已发货':item.order_product_status==42?'已签收':'已取消'}}</view>
</view> </view>
@ -251,15 +251,16 @@
<view class="dot"></view> <view class="dot"></view>
</view> </view>
<view class="desc"> <view class="desc">
<view wx:for="{{juanList}}" wx:key="id">{{item.name}}</view> <view wx:for="{{juanList}}" wx:key="id">{{item.name}}</view>
</view> </view>
<view class="expand" bind:tap="toggleJuan">{{showJuan?'收起':'展开'}} <van-icon name="{{showJuan?'arrow-up':'arrow-down'}}" /></view> <view class="expand" bind:tap="toggleJuan" wx:if="{{juanList.length>0 && (order.order_service_status==3 || order.order_service_status==4 || (order.order_service_status==5 && order.pay_status!=5))}}">{{showJuan?'收起':'展开'}} <van-icon name="{{showJuan?'arrow-up':'arrow-down'}}" /></view>
</view> </view>
<view class="usebox" wx:if="{{order.order_service_status!=1 && !(order.order_service_status==5 && order.pay_status==5)}}"> <view wx:if="{{order.order_service_status!=1 && !(order.order_service_status==5 && order.pay_status==5)}}" wx:for="{{equity.order_service_package_coupo}}" wx:key="coupon_name">
<view class="time">10元的全品类药品优惠劵</view> <view class="time">{{item.coupon_name}}</view>
<view class="detail">未使用</view> <view class="detail">{{item.user_coupon_status==0?'未使用':item.user_coupon_status==1?'已使用':'已过期'}}</view>
</view> </view>
<view class="usebox" wx:if="{{order.order_service_status!=1 && !(order.order_service_status==5 && order.pay_status==5)}}"> 100元的肝胆商城优惠劵</view>
</view> </view>
</view> </view>
@ -322,10 +323,10 @@
</view> </view>
</view> </view>
<view class="paybox" style="background-color: transparent;" wx:if="{{order.order_service_status==3 }}"> <view class="paybox" style="background-color: transparent;" wx:if="{{order.order_service_status==3 }}">
<view class="submitbtn" bindtap="handleBindCheck">去使用</view> <view class="submitbtn" bindtap="goChat">去使用</view>
</view> </view>
<view class="paybox" style="background-color: transparent;" wx:if="{{order.order_service_status==4 }}"> <view class="paybox" style="background-color: transparent;" wx:if="{{order.order_service_status==4 || (equity.order_service_package_detail.monthly_frequency!=0 && equity.order_service_package_detail.monthly_frequency-equity.order_service_package.month_inquiry_count==0)}}">
<view class="submitbtn" bindtap="handleBindCheck">去续费</view> <view class="submitbtn" bindtap="goXuFei">去续费</view>
</view> </view>
@ -333,4 +334,20 @@
<dialog bind:confirm="confirm" cancelBtn="{{cancelBtn}}" showDialog="{{showDialog}}" message="{{message}}"></dialog> <dialog bind:confirm="confirm" cancelBtn="{{cancelBtn}}" showDialog="{{showDialog}}" message="{{message}}"></dialog>
<van-dialog id="van-dialog" confirm-button-color="#3CC7C0" /> <van-dialog id="van-dialog" confirm-button-color="#3CC7C0" />
<van-dialog id="van-dialog" confirm-button-color="#3CC7C0" /> <van-dialog id="van-dialog" confirm-button-color="#3CC7C0" />
<dialog bind:confirm="confirmCheck" cancelBtn="{{true}}" showDialog="{{showCheckDialog}}" message="{{checkmessage}}" confirmtext="继续"></dialog> <dialog bind:confirm="confirmCheck" cancelBtn="{{true}}" showDialog="{{showCheckDialog}}" message="{{checkmessage}}" confirmtext="继续"></dialog>
<van-dialog
show-cancel-button
class="mydailog"
bind:confirm="goHasOrder"
title="温馨提示"
message="{{messageWarn}}"
z-index="9999"
theme='green'
show="{{showWarn}}"
confirm-button-color="#3CC7C0"
cancel-button-text="取消"
confirm-button-text="{{confirmText}}"
>
</van-dialog>

View File

@ -1,8 +1,7 @@
// healthyService/pages/healthyDetail/healthyDetail.js // healthyService/pages/healthyDetail/healthyDetail.js
import {doctorDetail} from "../../../api/consultExpert" import {doctorDetail} from "../../../api/consultExpert"
import {getItems,createServiceChatOrder} from "../../../api/health" import {getItems,createServiceChatOrder,getServiceDetail} from "../../../api/health"
import {family,addfamily} from "../../../api/familyDoc"; import {family,addfamily} from "../../../api/familyDoc";
import {getServiceDetail} from "../../../api/health"
import {throttle} from "../../../utils/util" import {throttle} from "../../../utils/util"
const app = getApp() const app = getApp()
Page({ Page({
@ -14,6 +13,7 @@ Page({
order_no:'', order_no:'',
order_inquiry_id:'', order_inquiry_id:'',
chat_id:'', chat_id:'',
confirmText:'确定',
status:'', status:'',
follow_package_item_id:'', follow_package_item_id:'',
message:'', message:'',
@ -27,7 +27,6 @@ Page({
avatar: '', avatar: '',
user_name: '', user_name: '',
doctor_title: '', doctor_title: '',
doctor_id: '',
doctor_title_name:'', doctor_title_name:'',
user_id:'', user_id:'',
is_online:'0', is_online:'0',
@ -83,8 +82,7 @@ Page({
}) })
}, },
goHasOrder(){ goHasOrder(){
let {status,doctor_id,order_no}=this.data;
let status=this.data.status;
if(status==4){ if(status==4){
let id=this.data.order_inquiry_id; let id=this.data.order_inquiry_id;
app.method.navigateTo({ app.method.navigateTo({
@ -96,6 +94,12 @@ Page({
url: '/healthyService/pages/healthyOrderDetail/healthyOrderDetail?order_service_id='+id, url: '/healthyService/pages/healthyOrderDetail/healthyOrderDetail?order_service_id='+id,
}) })
}else if(status==3){
app.method.navigateTo({
url:'/patient/pages/expertDetail/expertDetail?doctor_id='+doctor_id
})
}else if(status==5){
this.handleCreateServiceChatOrder(order_no)
} }
@ -289,24 +293,35 @@ Page({
showWarn:true, showWarn:true,
order_no:res.data.order_no, order_no:res.data.order_no,
status:2, status:2,
confirmNext:'确定',
message:res.message message:res.message
}) })
}else if(res.status==3){ }else if(res.status==3){
app.method.navigateTo({ this.setData({
url:'/patient/pages/expertDetail/expertDetail?doctor_id='+doctor_id showWarn:true,
status:3,
confirmNext:'前往',
message:'本月问诊次数已用完,您可选择医生其他服'
}) })
}else if(res.status==4){ }else if(res.status==4){
this.setData({ this.setData({
showWarn:true, showWarn:true,
order_no:res.data.order_no, order_no:res.data.order_no,
order_inquiry_id:res.data.order_inquiry_id, order_inquiry_id:res.data.order_inquiry_id,
status:4, status:4,
confirmNext:'确定',
message:res.message message:res.message
}) })
}else if(res.status==5){ }else if(res.status==5){
this.handleCreateServiceChatOrder(res.data.order_no) this.setData({
showWarn:true,
status:5,
confirmNext:'前往',
order_no:res.data.order_no,
message:'是否使用剩余问诊次数?'
})
} }

View File

@ -168,6 +168,7 @@
show="{{showWarn}}" show="{{showWarn}}"
confirm-button-color="#3CC7C0" confirm-button-color="#3CC7C0"
cancel-button-text="取消" cancel-button-text="取消"
confirm-button-text="{{confirmText}}"
> >
</van-dialog> </van-dialog>

View File

@ -35,6 +35,10 @@ Page({
canTuwen:false, canTuwen:false,
canVideo:false, canVideo:false,
canDiffcult:false, canDiffcult:false,
canHealthy:false,
canVisit:false,
healthyPrice:'',
visitPrice:'',
brief_introduction:'', brief_introduction:'',
multi_point_status: 0, multi_point_status: 0,
multi_point_enable:0, multi_point_enable:0,
@ -130,6 +134,7 @@ bindchange(e){
}, },
switchTab(e){ switchTab(e){
let {id}=e. currentTarget.dataset; let {id}=e. currentTarget.dataset;
console.log(id);
this.setData({ this.setData({
currentData:Number(id) currentData:Number(id)
}) })
@ -141,18 +146,29 @@ bindchange(e){
}) })
}else if(id==1){ }else if(id==1){
this.getHeight(2); this.setData({
inquiry_type:1,
inquiry_mode:9,
tab3Height:0
})
}else if(id==2){
this.setData({
inquiry_type:1,
inquiry_mode:8,
tab3Height:0
})
}else if(id==3){
this.getHeight(4);
let {hasVideoList,canVideo}=this.data; let {hasVideoList,canVideo}=this.data;
this.setData({ this.setData({
inquiry_type:1, inquiry_type:1,
inquiry_mode:2 inquiry_mode:2,
}) })
if(hasVideoList && !canVideo){ if(hasVideoList && !canVideo){
this.goVideo(); this.goVideo();
} }
}else { }else {
this.getHeight(3) this.getHeight(5)
this.setData({ this.setData({
inquiry_type:1, inquiry_type:1,
inquiry_mode:6 inquiry_mode:6
@ -333,6 +349,26 @@ bindchange(e){
yinanPrice:arr[i].inquiry_price yinanPrice:arr[i].inquiry_price
}) })
} }
if(arr[i].inquiry_type==1 && arr[i].inquiry_mode==8){
if(arr[i].is_enable==1){
this.setData({
canHealthy:true
})
}
this.setData({
healthyPrice: arr[i].inquiry_price
})
}
if(arr[i].inquiry_type==1 && arr[i].inquiry_mode==9){
if(arr[i].is_enable==1){
this.setData({
canVisit:true
})
}
this.setData({
visitPrice: arr[i].inquiry_price
})
}
} }
} }
@ -367,6 +403,26 @@ bindchange(e){
cycle:arr[i].duration cycle:arr[i].duration
}) })
}; };
if(arr[i].inquiry_type==1 && arr[i].inquiry_mode==8){
if(arr[i].is_enable==1){
this.setData({
canHealthy:true
})
}
this.setData({
healthyPrice: arr[i].inquiry_price
})
}
if(arr[i].inquiry_type==1 && arr[i].inquiry_mode==9){
if(arr[i].is_enable==1){
this.setData({
canVisit:true
})
}
this.setData({
visitPrice: arr[i].inquiry_price
})
}
if(arr[i].inquiry_type==1 && arr[i].inquiry_mode==2){ if(arr[i].inquiry_type==1 && arr[i].inquiry_mode==2){
if(arr[i].is_enable==1){ if(arr[i].is_enable==1){
this.setData({ this.setData({

View File

@ -75,7 +75,7 @@
<view class="tabbox"> <view class="tabbox">
<view class="tabs"> <view class="tabs">
<view class="tab " bindtap="switchTab" data-id="0"> <view class="tab " bindtap="switchTab" data-id="0">
<image wx:if="{{currentData==0 && canTuwen}}" src="{{img_host+'/tuwen_on.png'}}" alt="" class="tabbg on" ></image> <image wx:if="{{currentData==0 && canTuwen}}" src="{{img_host+'/tuwen_on.png'}}" alt="" class="tabbg on" ></image>
<image wx:elif="{{currentData==0 && !canTuwen}}" src="{{img_host+'/tuwen_disable_on.png'}}" alt="" class="tabbg on" ></image> <image wx:elif="{{currentData==0 && !canTuwen}}" src="{{img_host+'/tuwen_disable_on.png'}}" alt="" class="tabbg on" ></image>
<image wx:elif="{{currentData!=0 && canTuwen}}" src="{{img_host+'/tuwen.png'}}" alt="" class="tabbg" ></image> <image wx:elif="{{currentData!=0 && canTuwen}}" src="{{img_host+'/tuwen.png'}}" alt="" class="tabbg" ></image>
<image wx:else src="{{img_host+'/tuwen_disable.png'}}" alt="" class="tabbg" ></image> <image wx:else src="{{img_host+'/tuwen_disable.png'}}" alt="" class="tabbg" ></image>
@ -105,28 +105,33 @@
<view class="price" wx:if="{{!(expertInquiry_price && freePrice)}}">暂未开通</view> <view class="price" wx:if="{{!(expertInquiry_price && freePrice)}}">暂未开通</view>
</view> </view>
</view> </view>
<view class="tab add" bindtap="switchTab" data-id="3"> <view class="tab add" bindtap="switchTab" data-id="1">
<image src="../../static/images/suifang_on.png" alt="" class="tabbg" ></image>
<image src="../../static/images/suifang_on.png" alt="" class="tabbg" wx:if="{{canVisit}}"></image>
<image src="../../static/images/suifang_disable.png" alt="" class="tabbg" wx:else></image>
<view class="typebox" > <view class="typebox" >
<view class="name">随访包</view> <view class="name">随访包</view>
<view class="price">¥150起</view> <view class="price" wx:if="{{visitPrice}}">¥{{visitPrice}}起</view>
<view class="price" wx:else>暂未开通</view>
</view> </view>
<!-- <view class="typebox disable" wx:else > <!-- <view class="typebox disable" wx:else >
<view class="name">视频问诊</view> <view class="name">视频问诊</view>
<view class="price">{{videoPrice?'¥'+videoPrice+'/次':'暂未开通'}}</view> <view class="price">{{videoPrice?'¥'+videoPrice+'/次':'暂未开通'}}</view>
</view> --> </view> -->
</view> </view>
<view class="tab add" bindtap="switchTab" data-id="4"> <view class="tab add" bindtap="switchTab" data-id="2">
<image src="../../static/images/healthy_on.png" alt="" class="tabbg" ></image> <image src="../../static/images/healthy_on.png" alt="" class="tabbg" wx:if="{{canHealthy}}"></image>
<image src="../../static/images/healthy_disable.png" alt="" class="tabbg" wx:else></image>
<view class="typebox" > <view class="typebox" >
<view class="name">随访包</view> <view class="name">健康包</view>
<view class="price">¥1260/次</view> <view class="price" wx:if="{{healthyPrice}}">¥{{healthyPrice}}/次</view>
<view class="price" wx:else>暂未开通</view>
</view> </view>
</view> </view>
<view class="tab " bindtap="switchTab" data-id="1"> <view class="tab " bindtap="switchTab" data-id="3">
<image src="{{img_host+'/video_on.png'}}" wx:if="{{currentData==1 && canVideo}}" alt="" class="tabbg on" ></image> <image src="{{img_host+'/video_on.png'}}" wx:if="{{currentData==3 && canVideo}}" alt="" class="tabbg on" ></image>
<image wx:elif="{{currentData==1 && !canVideo}}" src="{{img_host+'/video_disable_on.png'}}" alt="" class="tabbg on" ></image> <image wx:elif="{{currentData==3 && !canVideo}}" src="{{img_host+'/video_disable_on.png'}}" alt="" class="tabbg on" ></image>
<image wx:elif="{{currentData!=1 && canVideo}}" src="{{img_host+'/video.png'}}" alt="" class="tabbg" ></image> <image wx:elif="{{currentData!=3 && canVideo}}" src="{{img_host+'/video.png'}}" alt="" class="tabbg" ></image>
<image wx:else src="{{img_host+'/video_disable.png'}}" alt="" class="tabbg" ></image> <image wx:else src="{{img_host+'/video_disable.png'}}" alt="" class="tabbg" ></image>
<view class="typebox" wx:if="{{canVideo}}"> <view class="typebox" wx:if="{{canVideo}}">
<view class="name">视频问诊</view> <view class="name">视频问诊</view>
@ -138,10 +143,10 @@
</view> </view>
</view> </view>
<view class="tab " bindtap="switchTab" data-id="2"> <view class="tab " bindtap="switchTab" data-id="4">
<image wx:if="{{currentData==2 && canDiffcult}}" src="{{img_host+'/yinan_on.png'}}" alt="" class="tabbg on" ></image> <image wx:if="{{currentData==4 && canDiffcult}}" src="{{img_host+'/yinan_on.png'}}" alt="" class="tabbg on" ></image>
<image wx:elif="{{currentData==2 && !canDiffcult}}" src="{{img_host+'/yinan_disable_on.png'}}" alt="" class="tabbg on" ></image> <image wx:elif="{{currentData==4 && !canDiffcult}}" src="{{img_host+'/yinan_disable_on.png'}}" alt="" class="tabbg on" ></image>
<image wx:elif="{{currentData!=2 && canDiffcult}}" src="{{img_host+'/yinan.png'}}" alt="" class="tabbg" ></image> <image wx:elif="{{currentData!=4 && canDiffcult}}" src="{{img_host+'/yinan.png'}}" alt="" class="tabbg" ></image>
<image wx:else src="{{img_host+'/yinan_disable.png'}}" alt="" class="tabbg" ></image> <image wx:else src="{{img_host+'/yinan_disable.png'}}" alt="" class="tabbg" ></image>
<view class="typebox" wx:if="{{canDiffcult}}"> <view class="typebox" wx:if="{{canDiffcult}}">
<view class="name">疑难问诊</view> <view class="name">疑难问诊</view>
@ -184,8 +189,10 @@
</view> </view>
</view> </view>
</swiper-item> </swiper-item>
<swiper-item class="swiper-item" id="swiperitem2"> </swiper-item>
<swiper-item class="swiper-item" id="swiperitem3"> </swiper-item>
<swiper-item> <swiper-item>
<view class="swiper-item" id="swiperitem2"> <view class="swiper-item" id="swiperitem4">
<image src="{{img_host+'/video_bg.png'}}" class="itembg" style="height:auto;" mode="widthFix" wx:if="{{canVideo}}"></image> <image src="{{img_host+'/video_bg.png'}}" class="itembg" style="height:auto;" mode="widthFix" wx:if="{{canVideo}}"></image>
<image src="{{img_host+'/video_bg_disable.png'}}" style="height:auto;" mode="widthFix" class="itembg" wx:else></image> <image src="{{img_host+'/video_bg_disable.png'}}" style="height:auto;" mode="widthFix" class="itembg" wx:else></image>
<view class="itembox"> <view class="itembox">
@ -228,7 +235,7 @@
</view> </view>
</swiper-item> </swiper-item>
<swiper-item > <swiper-item >
<view class="swiper-item" id="swiperitem3"> <view class="swiper-item" id="swiperitem5">
<image src="{{img_host+'/yinan_bg.png'}}" class="itembg" wx:if="{{canDiffcult}}" style="height:auto;" mode="widthFix"></image> <image src="{{img_host+'/yinan_bg.png'}}" class="itembg" wx:if="{{canDiffcult}}" style="height:auto;" mode="widthFix"></image>
<image src="{{img_host+'/video_bg_disable.png'}}" class="itembg" style="height:auto;" mode="widthFix" wx:else></image> <image src="{{img_host+'/video_bg_disable.png'}}" class="itembg" style="height:auto;" mode="widthFix" wx:else></image>
<view class="itembox"> <view class="itembox">
@ -338,10 +345,10 @@
</view> </view>
<!-- <view></view> --> <!-- <view></view> -->
<view class="ask" wx:if="{{(current_inquiry_config && current_inquiry_config.recieveStatus>0) && currentData==0}}" bindtap="handleThrottle" hidden="{{!isFinished}}" data-type="{{currentData}}">立即咨询</view> <view class="ask" wx:if="{{(current_inquiry_config && current_inquiry_config.recieveStatus>0) && currentData==0}}" bindtap="handleThrottle" hidden="{{!isFinished}}" data-type="{{currentData}}">立即咨询</view>
<view class="ask" wx:elif="{{canVideo && currentData==1}}" bindtap="handleThrottle" hidden="{{!isFinished}}" data-type="{{currentData}}">立即咨询</view> <view class="ask" wx:elif="{{canVideo && currentData==3}}" bindtap="handleThrottle" hidden="{{!isFinished}}" data-type="{{currentData}}">立即咨询</view>
<view class="noask" wx:elif="{{!canVideo && currentData==1 && !hasVideoList}}" hidden="{{!isFinished}}" data-type="{{currentData}}">暂不接诊</view> <view class="noask" wx:elif="{{!canVideo && currentData==3 && !hasVideoList}}" hidden="{{!isFinished}}" data-type="{{currentData}}">暂不接诊</view>
<view class="noask" wx:elif="{{!canVideo && currentData==1 && hasVideoList}}" hidden="{{!isFinished}}" data-type="{{currentData}}">{{videoPrice?'暂不接诊':'暂未开通'}}</view> <view class="noask" wx:elif="{{!canVideo && currentData==3 && hasVideoList}}" hidden="{{!isFinished}}" data-type="{{currentData}}">{{videoPrice?'暂不接诊':'暂未开通'}}</view>
<view class="ask" wx:elif="{{canDiffcult && currentData==2}}" bindtap="handleThrottle" hidden="{{!isFinished}}" data-type="{{currentData}}">立即咨询</view> <view class="ask" wx:elif="{{canDiffcult && currentData==4}}" bindtap="handleThrottle" hidden="{{!isFinished}}" data-type="{{currentData}}">立即咨询</view>
<view class="noask" wx:elif="{{!canDiffcult && currentData==2}}" hidden="{{!isFinished}}" data-type="{{currentData}}">{{yinanPrice?'暂不接诊':'暂未开通'}}</view> <view class="noask" wx:elif="{{!canDiffcult && currentData==2}}" hidden="{{!isFinished}}" data-type="{{currentData}}">{{yinanPrice?'暂不接诊':'暂未开通'}}</view>
<view class="noask" bindtap="notAsk" data-type="{{currentData}}" wx:else hidden="{{!isFinished}}">{{(!current_inquiry_config.inquiry_price && !expertInquiry_price)?'暂未开通':'暂不接诊'}}</view> <view class="noask" bindtap="notAsk" data-type="{{currentData}}" wx:else hidden="{{!isFinished}}">{{(!current_inquiry_config.inquiry_price && !expertInquiry_price)?'暂未开通':'暂不接诊'}}</view>
</view> </view>