医生1.2
This commit is contained in:
@@ -35,9 +35,14 @@
|
||||
|
||||
<view class="bottom">
|
||||
<text class="bottom_txt">
|
||||
提示:服务开启后,您将有机会接收到平台自动分配的在线患者快速问诊订单
|
||||
1、快速问诊价格为平台统一设定
|
||||
2、快速问诊服务时间为{{config.duration}}分钟,期间不限制交流次数
|
||||
|
||||
提示:服务开通后,患者可以通过快速问诊找到您
|
||||
1、快速问诊价格为平台统一定价;
|
||||
2、优先分配给好评率高、响应时间快的医生;
|
||||
3、平台分配成功后,要求医生在<text style="color:#3CC7C0">5分钟内接诊 </text>,如5分钟内未接诊,将自动取消订单,消息列表中也将删除此订单;
|
||||
4、接诊后{{config.duration}}分钟内,患者可以和您<text style="color:#3CC7C0">不限制回合数沟通</text>;
|
||||
5、如果时间不允许请慎重开通快速问诊,出现两次漏接,平台将主动关闭您的此项服务。
|
||||
|
||||
</text>
|
||||
</view>
|
||||
|
||||
|
||||
@@ -11,16 +11,18 @@ Page({
|
||||
title: '在线问诊设置', //导航栏 中间的标题
|
||||
},
|
||||
height: app.globalData.height,
|
||||
open_note: "已开启,患者可以向您发起图文问诊",
|
||||
close_note: "已关闭,暂不接诊",
|
||||
// open_note: "已开启,患者可以向您发起图文问诊",
|
||||
// close_note: "已关闭,暂不接诊",
|
||||
note: "",
|
||||
inquiry_type: 1,
|
||||
inquiry_mode: 1,
|
||||
config_setting:{},
|
||||
info:{
|
||||
is_open: false,
|
||||
inquiry_price: 0,
|
||||
work_num_day: 0
|
||||
},
|
||||
active:0,
|
||||
myprice: "",
|
||||
config:{
|
||||
"max_work_num_day": 30,
|
||||
@@ -36,28 +38,35 @@ Page({
|
||||
]
|
||||
},
|
||||
sub_visible: false,
|
||||
showSetting:false
|
||||
},
|
||||
onLoad(){
|
||||
|
||||
|
||||
},
|
||||
onShow(){
|
||||
let params = {};
|
||||
params.inquiry_type = this.data.inquiry_type;//接诊类型(1:专家问诊 2:快速问诊 3:公益问诊 4:问诊购药)
|
||||
params.inquiry_mode = this.data.inquiry_mode;//接诊方式(1:图文 2:视频 3:语音 4:电话 5:会员)
|
||||
this.getDoctorconfig();
|
||||
},
|
||||
getDoctorconfig(){
|
||||
let {inquiry_type,inquiry_mode}=this.data;
|
||||
//接诊类型(1:专家问诊 2:快速问诊 3:公益问诊 4:问诊购药)
|
||||
//接诊方式(1:图文 2:视频 3:语音 4:电话 5:会员)
|
||||
//获取医生我的账户数据
|
||||
api.getDoctorInquiryConfig(params).then(response => {
|
||||
api.getDoctorInquiryConfig({
|
||||
inquiry_type,
|
||||
inquiry_mode
|
||||
}).then(response => {
|
||||
console.log(response);
|
||||
this.setData({
|
||||
info: response.data.info,
|
||||
config: response.data.config,
|
||||
note: response.data.info.is_open == 1? this.data.open_note : this.data.close_note
|
||||
note: response.data.info.is_open
|
||||
})
|
||||
}).catch(errors => {console.error(errors);})
|
||||
},
|
||||
changeON(){
|
||||
let is_open = this.data.info.is_open
|
||||
console.log("changeON:", is_open)
|
||||
let detail = false
|
||||
let detail = false;
|
||||
if(is_open == 0){
|
||||
detail = true
|
||||
}else{
|
||||
@@ -68,13 +77,42 @@ Page({
|
||||
onChange({ detail }) {
|
||||
this.doChange(detail)
|
||||
},
|
||||
getConfig(){
|
||||
let {inquiry_type,inquiry_mode}=this.data;
|
||||
api.getServiceConfig({
|
||||
inquiry_type,
|
||||
inquiry_mode
|
||||
}).then(response => {
|
||||
let result=response.data;
|
||||
if(result){
|
||||
this.setData({
|
||||
'config_setting.service_content':result.service_content,
|
||||
'config_setting.service_process':result.service_process,
|
||||
'config_setting.service_period':result.service_period,
|
||||
'config_setting.service_rounds':result.service_rounds,
|
||||
'config_setting.config_service_id':result.config_service_id
|
||||
})
|
||||
}
|
||||
}).catch(errors => {console.error(errors);})
|
||||
},
|
||||
doChange(detail){
|
||||
console.log("onChange: ", detail);
|
||||
let is_open = 0;
|
||||
if(detail){
|
||||
let inquiry_price = this.data.info.inquiry_price;
|
||||
let check = this.checkPrice(inquiry_price);
|
||||
if(!check) return;
|
||||
console.log(this.data.active);
|
||||
if(this.data.active==0){
|
||||
let check = this.checkPrice(inquiry_price);
|
||||
if(!check) return;
|
||||
}
|
||||
if(this.data.active==1 || this.data.active==2){
|
||||
if(!this.data.info.work_num_day || !this.data.info.inquiry_price){
|
||||
this.setData({
|
||||
showSetting:true
|
||||
})
|
||||
return false;
|
||||
}
|
||||
}
|
||||
this.setData({ note: this.data.open_note });
|
||||
wx.vibrateShort({
|
||||
"type": "heavy"
|
||||
@@ -130,6 +168,47 @@ Page({
|
||||
}
|
||||
})
|
||||
},
|
||||
settingcancelDialog(){
|
||||
this.setData({
|
||||
showSetting: false
|
||||
})
|
||||
},
|
||||
settingconfirmDialog(){
|
||||
let {active}=this.data;
|
||||
this.setData({
|
||||
showSetting: false
|
||||
})
|
||||
if(active==1){
|
||||
app.go("/Pages/yishi/onlinesetupprice/index?inquiry_mode=1")
|
||||
}else if(active==2){
|
||||
app.go("/Pages/yishi/onlinesetupprice/index?inquiry_mode=6")
|
||||
}
|
||||
|
||||
},
|
||||
onChangeInquiry(event) {
|
||||
let index=event.detail.name;
|
||||
this.setData({
|
||||
active:index
|
||||
})
|
||||
if(index==0){
|
||||
this.setData({
|
||||
inquiry_type:1,
|
||||
inquiry_mode:1,
|
||||
})
|
||||
}else if(index==1){
|
||||
this.setData({
|
||||
inquiry_type:1,
|
||||
inquiry_mode:2,
|
||||
})
|
||||
}else{
|
||||
this.setData({
|
||||
inquiry_type:1,
|
||||
inquiry_mode:6,
|
||||
})
|
||||
this.getConfig();
|
||||
}
|
||||
this.getDoctorconfig();
|
||||
},
|
||||
putDoctorInquiryConfig(){
|
||||
//修改医生问诊配置
|
||||
// let params = {};
|
||||
|
||||
@@ -8,6 +8,8 @@
|
||||
"van-switch": "@vant/weapp/switch/index",
|
||||
"van-button": "@vant/weapp/button/index",
|
||||
"t-toast": "tdesign-miniprogram/toast/toast",
|
||||
"van-tab": "@vant/weapp/tab/index",
|
||||
"van-tabs": "@vant/weapp/tabs/index",
|
||||
"t-dialog": "tdesign-miniprogram/dialog/dialog"
|
||||
}
|
||||
}
|
||||
@@ -1,67 +1,223 @@
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<te-nav-bar navbar-data='{{navbarData}}'></te-nav-bar>
|
||||
<view class="container">
|
||||
<view class="switch_box">
|
||||
<view class="switch_box_top">
|
||||
<view class="switch_box_item" bindtap="changeON">
|
||||
<view class="switch_box_item_name">接诊开关</view>
|
||||
<view class="switch_box_item_btn">
|
||||
<van-switch
|
||||
active-color="#3CC7C0"
|
||||
inactive-color="#E7E7E7"
|
||||
size="40rpx"
|
||||
checked="{{ info.is_open==1 }}" />
|
||||
<van-tabs active="{{ active }}" bind:change="onChangeInquiry" color="#3CC7C0">
|
||||
<van-tab title="图文问诊">
|
||||
|
||||
<view class="tabcon">
|
||||
<view class="switch_box">
|
||||
<view class="switch_box_top">
|
||||
<view class="switch_box_item" bindtap="changeON">
|
||||
<view class="switch_box_item_name">接诊开关</view>
|
||||
<view class="switch_box_item_btn">
|
||||
<van-switch active-color="#3CC7C0" inactive-color="#E7E7E7" size="40rpx" checked="{{ info.is_open==1 }}" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="switch_box_note">{{ note==1?'已开启,患者可以向您发起图文问诊':'已关闭,暂不接诊' }}</view>
|
||||
</view>
|
||||
<view class="help">
|
||||
<van-cell size="large" url="/Pages/yishi/manual_detail/index?manual_id=6" custom-style="font-size:32rpx;" title="图文问诊操作手册" is-link border="{{false}}" />
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="checked_box">
|
||||
<view class="price_title">价格设置</view>
|
||||
<view class="price_steup_box">
|
||||
<van-cell size="large" url="/Pages/yishi/onlinesetupprice/index?inquiry_mode=1" custom-style="font-size:32rpx;" title="每日接诊数量" is-link border="{{true}}">
|
||||
<view class="cell_value">
|
||||
{{info.work_num_day}}
|
||||
</view>
|
||||
</van-cell>
|
||||
<van-cell size="large" url="/Pages/yishi/onlinesetupprice/index?inquiry_mode=1" custom-style="font-size:32rpx;" title="问诊单价" is-link border="{{false}}">
|
||||
<view class="cell_value">
|
||||
<text style="color: red;">{{info.inquiry_price}}</text>
|
||||
<text style="color: #000;"> 元</text>
|
||||
</view>
|
||||
</van-cell>
|
||||
</view>
|
||||
</view>
|
||||
<view class="bottom">
|
||||
<text class="bottom_txt">
|
||||
提示:服务开启后,患者按照所设置的价格向您购买图文问诊服务
|
||||
1、接诊后,患者可与您在{{config.duration/60}}小时内进行{{config.times_number}}回合沟通
|
||||
2、若开启公益问诊,图文问诊价格以公益问诊价格为准
|
||||
3、每日接诊数量和问诊价格每日仅限调整1次,每月仅限调整5次
|
||||
4、价格修改后立即生效,不影响修改之前已生成的问诊订单
|
||||
</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="switch_box_note">{{ note }}</view>
|
||||
</view>
|
||||
<view class="help">
|
||||
<van-cell size="large" url="/Pages/yishi/manual_detail/index?manual_id=6" custom-style="font-size:32rpx;" title="图文问诊操作手册" is-link border="{{false}}" />
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
<view class="checked_box">
|
||||
<view class="price_title">价格设置</view>
|
||||
<view class="price_steup_box">
|
||||
<van-cell size="large" url="/Pages/yishi/onlinesetupprice/index" custom-style="font-size:32rpx;" title="每日接诊数量" is-link border="{{true}}" >
|
||||
<view class="cell_value">
|
||||
{{info.work_num_day}}
|
||||
<view class="go">
|
||||
<van-button disabled="{{info.is_open!=1}}" bind:click="putDoctorInquiryConfig" color="#3CC7C0" custom-style="border-radius: 20rpx;font-size:30rpx;" type="primary" block>去接诊</van-button>
|
||||
</view>
|
||||
</van-tab>
|
||||
<van-tab title="视频问诊">
|
||||
<view class="tabcon">
|
||||
<view class="switch_box">
|
||||
<view class="switch_box_top">
|
||||
<view class="switch_box_item" bindtap="changeON">
|
||||
<view class="switch_box_item_name">接诊开关</view>
|
||||
<view class="switch_box_item_btn">
|
||||
<van-switch active-color="#3CC7C0" inactive-color="#E7E7E7" size="40rpx" checked="{{ info.is_open==1 }}" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="switch_box_note">{{ note==1?'已开启,患者可以向您发起视频问诊':'已关闭,暂不接诊'}}</view>
|
||||
</view>
|
||||
<view class="help">
|
||||
<van-cell size="large" url="/Pages/yishi/manual_detail/index?manual_id=6" custom-style="font-size:32rpx;" title="视频问诊操作手册" is-link border="{{false}}" />
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="checked_box">
|
||||
<view class="price_title">价格设置</view>
|
||||
<view class="price_steup_box">
|
||||
<van-cell size="large" url="/Pages/yishi/onlinesetupprice/index?inquiry_mode=2" custom-style="font-size:32rpx;" title="每日接诊数量" is-link border="{{true}}">
|
||||
<view class="cell_value">
|
||||
{{info.work_num_day}}
|
||||
</view>
|
||||
</van-cell>
|
||||
<van-cell size="large" url="/Pages/yishi/onlinesetupprice/index?inquiry_mode=2" custom-style="font-size:32rpx;" title="问诊单价" is-link border="{{false}}">
|
||||
<view class="cell_value">
|
||||
<text style="color: red;">{{info.inquiry_price}}</text>
|
||||
<text style="color: #000;"> 元</text>
|
||||
</view>
|
||||
</van-cell>
|
||||
</view>
|
||||
</view>
|
||||
<view class="bottom" >
|
||||
<text class="bottom_txt">
|
||||
提示:服务开通后,患者可以向您购买视频问诊服务,接诊后<text class="green">需要您主动和患者预约视频时间并同步设置预约时间</text>
|
||||
1、视频问诊价格<text class="green">每日仅限调整1次,每自然月仅限调整5次</text>
|
||||
2、单价修改后立即生效,不影响当日已生成的问诊订单
|
||||
3、<text class="green">24小时不接诊,订单自动取消</text>,并不展示在您的接诊列表中
|
||||
4、接诊后,您与患者<text class="green">沟通有效期为48小时</text>,同时提供无回合限制图文、语音形式交流
|
||||
5、患者因服务不满意等原因要求退款时,平台会和您协商处理
|
||||
<!-- 1、接诊后,患者可与您在{{config.duration/60}}小时内进行{{config.times_number}}回合沟通
|
||||
2、若开启公益问诊,图文问诊价格以公益问诊价格为准
|
||||
3、每日接诊数量和问诊价格每日仅限调整1次,每月仅限调整5次
|
||||
4、价格修改后立即生效,不影响修改之前已生成的问诊订单 -->
|
||||
</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
|
||||
<view class="go">
|
||||
<van-button disabled="{{info.is_open!=1}}" bind:click="putDoctorInquiryConfig" color="#3CC7C0" custom-style="border-radius: 20rpx;font-size:30rpx;" type="primary" block>去接诊</van-button>
|
||||
</view>
|
||||
</van-tab>
|
||||
<van-tab title="疑难会诊">
|
||||
<view class="tabcon">
|
||||
<view class="switch_box">
|
||||
<view class="switch_box_top">
|
||||
<view class="switch_box_item" bindtap="changeON">
|
||||
<view class="switch_box_item_name">接诊开关</view>
|
||||
<view class="switch_box_item_btn">
|
||||
<van-switch active-color="#3CC7C0" inactive-color="#E7E7E7" size="40rpx" checked="{{ info.is_open==1 }}" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="switch_box_note">{{ note==1?'已开启,患者可以向您发起疑难会诊':'已关闭,暂不接诊'}}</view>
|
||||
</view>
|
||||
<view class="help">
|
||||
<van-cell size="large" url="/Pages/yishi/manual_detail/index?manual_id=6" custom-style="font-size:32rpx;" title="疑难会诊操作手册" is-link border="{{false}}" />
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="checked_box">
|
||||
<view class="price_title">价格设置</view>
|
||||
<view class="price_steup_box">
|
||||
<van-cell size="large" url="/Pages/yishi/onlinesetupprice/index?inquiry_mode=6" custom-style="font-size:32rpx;" title="每日接诊数量" is-link border="{{true}}">
|
||||
<view class="cell_value">
|
||||
{{info.work_num_day}}
|
||||
</view>
|
||||
</van-cell>
|
||||
<van-cell size="large" url="/Pages/yishi/onlinesetupprice/index?inquiry_mode=6" custom-style="font-size:32rpx;" title="问诊单价" is-link border="{{false}}">
|
||||
<view class="cell_value">
|
||||
<text style="color: red;">{{info.inquiry_price}}</text>
|
||||
<text style="color: #000;"> 元</text>
|
||||
</view>
|
||||
</van-cell>
|
||||
</view>
|
||||
</view>
|
||||
<view class="checked_box" style="margin-top: 10rpx;">
|
||||
<view class="price_title">服务设置</view>
|
||||
<view class="price_steup_box">
|
||||
<van-cell size="large" url="{{config_setting.config_service_id?'/Pages/yishi/service_setting/index?config_service_id='+config_setting.config_service_id:'/Pages/yishi/service_setting/index'}}" custom-style="font-size:32rpx;" title="服务内容" is-link border="{{true}}">
|
||||
<view class="cell_value" wx:if="{{config_setting.service_content}}">
|
||||
<!-- {{config_setting.service_content}} -->
|
||||
去查看
|
||||
</view>
|
||||
<view class="cell_value_seting" wx:else>
|
||||
去设置
|
||||
</view>
|
||||
</van-cell>
|
||||
<van-cell size="large" url="{{config_setting.config_service_id?'/Pages/yishi/service_setting/index?config_service_id='+config_setting.config_service_id:'/Pages/yishi/service_setting/index'}}" custom-style="font-size:32rpx;" title="服务流程" is-link border="{{true}}">
|
||||
|
||||
<view class="cell_value" wx:if="{{config_setting.service_process}}">
|
||||
<!-- {{config_setting.service_process}} -->
|
||||
去查看
|
||||
</view>
|
||||
<view class="cell_value_seting" wx:else>
|
||||
去设置
|
||||
</view>
|
||||
</van-cell>
|
||||
<van-cell size="large" url="{{config_setting.config_service_id?'/Pages/yishi/service_setting/index?config_service_id='+config_setting.config_service_id:'/Pages/yishi/service_setting/index'}}" custom-style="font-size:32rpx;" title="服务周期" is-link border="{{true}}">
|
||||
<view class="cell_value" wx:if="{{config_setting.service_period}}">
|
||||
{{config_setting.service_period}}
|
||||
</view>
|
||||
<view class="cell_value_seting" wx:else>
|
||||
去设置
|
||||
</view>
|
||||
</van-cell>
|
||||
<van-cell size="large" url="{{config_setting.config_service_id?'/Pages/yishi/service_setting/index?config_service_id='+config_setting.config_service_id:'/Pages/yishi/service_setting/index'}}" custom-style="font-size:32rpx;" title="服务回合数" is-link border="{{true}}">
|
||||
<view class="cell_value" wx:if="{{config_setting.service_rounds}}">
|
||||
{{config_setting.service_rounds}}
|
||||
</view>
|
||||
<view class="cell_value_seting" wx:else>
|
||||
去设置
|
||||
</view>
|
||||
</van-cell>
|
||||
</view>
|
||||
</view>
|
||||
<view class="bottom">
|
||||
<text class="bottom_txt">
|
||||
提示:服务开通后,患者可以向您购买疑难会诊服务,接诊后需要与患者进行图文沟通。
|
||||
1、问诊价格<text class="green">每日仅限调整1次,每自然月仅限调整5次</text>
|
||||
2、单价修改后立即生效,不影响当日已生成的问诊订单
|
||||
3、接诊后,患者根据您设定的服务周期和服务次数进行问诊沟通
|
||||
4、接诊后出现争议时,平台客服会根据实际问诊情况与您协商进行退款
|
||||
</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
<view class="go">
|
||||
<van-button disabled="{{info.is_open!=1}}" bind:click="putDoctorInquiryConfig" color="#3CC7C0" custom-style="border-radius: 20rpx;font-size:30rpx;" type="primary" block>去接诊</van-button>
|
||||
</view>
|
||||
</van-tab>
|
||||
</van-tabs>
|
||||
|
||||
|
||||
<t-toast id="t-toast" />
|
||||
|
||||
<t-dialog visible="{{ sub_visible }}" title="温馨提示" content="您已关闭订阅消息通知,请点击“确认”按钮在设置中打开订阅通知。">
|
||||
<view slot="cancel-btn" class="dialog dialog_cancel_btn" bindtap="subcancelDialog">
|
||||
取消
|
||||
</view>
|
||||
</van-cell>
|
||||
<van-cell size="large" url="/Pages/yishi/onlinesetupprice/index" custom-style="font-size:32rpx;" title="问诊单价" is-link border="{{false}}" >
|
||||
<view class="cell_value">
|
||||
<text style="color: red;">{{info.inquiry_price}}</text>
|
||||
<text style="color: #000;"> 元</text>
|
||||
<view slot="confirm-btn" class="dialog dialog_confirm_btn" bindtap="subconfirmDialog">
|
||||
确定
|
||||
</view>
|
||||
</van-cell>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="bottom">
|
||||
<text class="bottom_txt">
|
||||
提示:服务开启后,患者按照所设置的价格向您购买图文问诊服务
|
||||
1、接诊后,患者可与您在{{config.duration/60}}小时内进行{{config.times_number}}回合沟通
|
||||
2、若开启公益问诊,图文问诊价格以公益问诊价格为准
|
||||
3、每日接诊数量和问诊价格每日仅限调整1次,每月仅限调整5次
|
||||
4、价格修改后立即生效,不影响修改之前已生成的问诊订单
|
||||
</text>
|
||||
</view>
|
||||
|
||||
<view class="go">
|
||||
<van-button disabled="{{info.is_open!=1}}" bind:click="putDoctorInquiryConfig" color="#3CC7C0" custom-style="border-radius: 20rpx;font-size:30rpx;" type="primary" block>去接诊</van-button>
|
||||
</view>
|
||||
|
||||
<t-toast id="t-toast" />
|
||||
|
||||
<t-dialog
|
||||
visible="{{ sub_visible }}"
|
||||
title="温馨提示"
|
||||
content="您已关闭订阅消息通知,请点击“确认”按钮在设置中打开订阅通知。"
|
||||
</t-dialog>
|
||||
<t-dialog
|
||||
visible="{{ showSetting }}"
|
||||
title="提示"
|
||||
content="请先设置每日接诊数量和问诊单价"
|
||||
>
|
||||
<view slot="cancel-btn" class="dialog dialog_cancel_btn" bindtap="subcancelDialog">
|
||||
<view slot="cancel-btn" class="dialog dialog_cancel_btn" bindtap="settingcancelDialog">
|
||||
取消
|
||||
</view>
|
||||
<view slot="confirm-btn" class="dialog dialog_confirm_btn" bindtap="subconfirmDialog">
|
||||
确定
|
||||
<view slot="confirm-btn" class="dialog dialog_confirm_btn" bindtap="settingconfirmDialog">
|
||||
去设置
|
||||
</view>
|
||||
</t-dialog>
|
||||
</view>
|
||||
@@ -3,7 +3,7 @@ page{
|
||||
}
|
||||
.container{
|
||||
width: 100vw;
|
||||
padding-top: 30rpx;
|
||||
|
||||
}
|
||||
.switch_box{
|
||||
display: flex;
|
||||
@@ -13,6 +13,7 @@ page{
|
||||
border-radius: 20rpx;
|
||||
margin: 0 auto;
|
||||
background-color: rgb(255, 255, 255);
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
.switch_box_top{
|
||||
position: relative;
|
||||
@@ -64,7 +65,6 @@ page{
|
||||
padding-top: 10rpx;
|
||||
display: flex;
|
||||
width: 90vw;
|
||||
height: 180rpx;
|
||||
margin: 0 auto;
|
||||
border-radius: 20rpx;
|
||||
flex-direction: column;
|
||||
@@ -113,7 +113,7 @@ page{
|
||||
}
|
||||
.bottom{
|
||||
width: 90vw;
|
||||
margin: -20rpx auto;
|
||||
margin: 0rpx auto 20rpx;
|
||||
color: #999;
|
||||
letter-spacing: 2rpx;
|
||||
font-size: 28rpx;
|
||||
@@ -123,7 +123,7 @@ page{
|
||||
position: fixed;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
bottom: 100rpx;
|
||||
bottom: 80rpx;
|
||||
width: 90vw;
|
||||
}
|
||||
.weui-input{
|
||||
@@ -138,6 +138,9 @@ page{
|
||||
.cell_value{
|
||||
color: #000;
|
||||
}
|
||||
.cell_value_seting{
|
||||
color: rgba(0,0,0,0.45);
|
||||
}
|
||||
.dialog{
|
||||
width: 50%;
|
||||
text-align: center;
|
||||
@@ -151,4 +154,23 @@ page{
|
||||
.dialog_confirm_btn{
|
||||
border-top: 1px solid #E9E9E9;
|
||||
color: #3CC7C0;
|
||||
}
|
||||
}
|
||||
|
||||
.van-tab{
|
||||
color: rgba(0,0,0,0.45)!important;
|
||||
}
|
||||
.van-tab--active{
|
||||
font-weight: bold!important;
|
||||
color: rgba(0,0,0,0.85)!important;
|
||||
}
|
||||
.tabcon{
|
||||
overflow-y: scroll;
|
||||
-webkit-overflow-scrolling: touch;
|
||||
height: calc(100vh - 400rpx);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
}
|
||||
.green{
|
||||
color:#3CC7C0;
|
||||
}
|
||||
|
||||
@@ -31,6 +31,13 @@ Page({
|
||||
]
|
||||
}
|
||||
},
|
||||
onLoad(options){
|
||||
if(options.inquiry_mode){
|
||||
this.setData({
|
||||
inquiry_mode:options.inquiry_mode
|
||||
})
|
||||
}
|
||||
},
|
||||
onShow(){
|
||||
let params = {};
|
||||
params.inquiry_type = this.data.inquiry_type;//接诊类型(1:专家问诊 2:快速问诊 3:公益问诊 4:问诊购药)
|
||||
@@ -90,11 +97,15 @@ Page({
|
||||
}
|
||||
},
|
||||
async updateConfig(){
|
||||
let check = this.checkPrice(this.data.info.inquiry_price);
|
||||
console.log("checkcheckcheck:", check);
|
||||
if(!check){
|
||||
return;
|
||||
|
||||
if(this.data.inquiry_mode==1){
|
||||
let check = this.checkPrice(this.data.info.inquiry_price);
|
||||
console.log("checkcheckcheck:", check);
|
||||
if(!check){
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
//修改医生问诊配置
|
||||
let params = {};
|
||||
params.inquiry_type = this.data.inquiry_type;//接诊类型(1:专家问诊 2:快速问诊 3:公益问诊 4:问诊购药)
|
||||
|
||||
@@ -18,13 +18,28 @@
|
||||
</view>
|
||||
|
||||
<view class="bottom">
|
||||
<text class="bottom_txt">
|
||||
<text class="bottom_txt" wx:if="{{inquiry_mode==1}}">
|
||||
提示:服务开启后,患者按照所设置的价格向您购买图文问诊服务
|
||||
1、接诊后,患者可与您在{{config.duration/60}}小时内进行{{config.times_number}}回合沟通
|
||||
2、若开启公益问诊,图文问诊价格以公益问诊价格为准
|
||||
3、每日接诊数量和问诊价格每日仅限调整1次,每月仅限调整5次
|
||||
4、价格修改后立即生效,不影响修改之前已生成的问诊订单
|
||||
</text>
|
||||
<text wx:elif="{{inquiry_mode==2}}">
|
||||
提示:服务开通后,患者可以向您购买视频问诊服务,接诊后<text class="green">需要您主动和患者预约视频时间并同步设置预约时间</text>
|
||||
1、视频问诊价格<text class="green">每日仅限调整1次,每自然月仅限调整5次</text>
|
||||
2、单价修改后立即生效,不影响当日已生成的问诊订单
|
||||
3、<text class="green">24小时不接诊,订单自动取消</text>,并不展示在您的接诊列表中
|
||||
4、接诊后,您与患者<text class="green">沟通有效期为48小时</text>,同时提供无回合限制图文、语音形式交流
|
||||
5、患者因服务不满意等原因要求退款时,平台会和您协商处理
|
||||
</text>
|
||||
<text wx:else>
|
||||
提示:服务开通后,患者可以向您购买疑难会诊服务,接诊后需要与患者进行图文沟通。
|
||||
1、问诊价格<text style="color:#3CC7C0">每日仅限调整1次,每自然月仅限调整5次</text>
|
||||
2、单价修改后立即生效,不影响当日已生成的问诊订单
|
||||
3、接诊后,患者根据您设定的服务周期和服务次数进行问诊沟通
|
||||
4、接诊后出现争议时,平台客服会根据实际问诊情况与您协商进行退款
|
||||
</text>
|
||||
</view>
|
||||
|
||||
<view class="go">
|
||||
|
||||
@@ -85,4 +85,7 @@ page{
|
||||
.price{
|
||||
text-align: center;
|
||||
flex: 1;
|
||||
}
|
||||
.green{
|
||||
color:#3CC7C0;
|
||||
}
|
||||
@@ -0,0 +1,386 @@
|
||||
import { API } from './../../../utils/network/api'
|
||||
import Toast from 'tdesign-miniprogram/toast/index';
|
||||
let api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '服务设置', //导航栏 中间的标题
|
||||
},
|
||||
show:false,
|
||||
content_message:'',
|
||||
process_message:'',
|
||||
showCycle:false,
|
||||
customRounds:null,
|
||||
columnsRound:false,
|
||||
showProcess:false,
|
||||
showCustom:false,
|
||||
showSave:false,
|
||||
showDraft:false,
|
||||
showPreview:false,
|
||||
contentradio:'',
|
||||
processradio:'',
|
||||
columnsCycle:[],
|
||||
columnsRound:[50,100,200,'不限次','自定义'],
|
||||
autosize:{minHeight: 80},
|
||||
cycle:'',
|
||||
config_service_id:'',
|
||||
rounds:null
|
||||
},
|
||||
onChangeContent(event){
|
||||
this.setData({
|
||||
contentradio: event.detail,
|
||||
});
|
||||
},
|
||||
onChangeProcess(event){
|
||||
this.setData({
|
||||
processradio: event.detail,
|
||||
});
|
||||
},
|
||||
openDialog(e){
|
||||
let {id}=e.currentTarget.dataset;
|
||||
if(id==1){
|
||||
this.setData({
|
||||
show:true,
|
||||
})
|
||||
}else{
|
||||
this.setData({
|
||||
showProcess:true,
|
||||
})
|
||||
}
|
||||
},
|
||||
onClickHide(){
|
||||
this.setData({
|
||||
show:false
|
||||
});
|
||||
if(this.data.contentradio==1){
|
||||
this.setData({
|
||||
content_message:'1、服务包含肝脏病理切片解读,需患者邮寄肝脏切片;\n'+
|
||||
'2、针对病例切片多学科会诊,包含:临床、影像、肝脏病理等学科;\n'+
|
||||
'3、给出分析报告与治疗方案;\n'+
|
||||
'4、服务周期,大概7~15天,期间可以不限次(医生自己定义)沟通病情。'
|
||||
})
|
||||
}else{
|
||||
this.setData({
|
||||
content_message:'1、概述服务所包含内容,如报告解读(可包含超声报告、CT报告、肝脏病理报告及其他常规报告)或者病情解析;\n2、详细描述服务所包含的具体服务或者形\n3、请给出服务周期;\n4、描述该项所提供服务的特点。'
|
||||
})
|
||||
}
|
||||
},
|
||||
closeCustom(){
|
||||
console.log(this.data.customRounds);
|
||||
if(!this.data.customRounds && this.data.customRounds!==0){
|
||||
wx.showToast({
|
||||
title: '请输入回合数',
|
||||
icon:'none'
|
||||
})
|
||||
return false
|
||||
};
|
||||
if(!(this.data.customRounds>=1 && this.data.customRounds<=300) ){
|
||||
wx.showToast({
|
||||
title: '回合数需要在1~300之间',
|
||||
icon:'none'
|
||||
})
|
||||
return false
|
||||
}
|
||||
this.setData({
|
||||
showCustom:false,
|
||||
rounds:this.data.customRounds
|
||||
})
|
||||
},
|
||||
changeCustomIpt(event){
|
||||
let {value}= event.detail;
|
||||
console.log(value);
|
||||
this.setData({
|
||||
customRounds:value
|
||||
})
|
||||
},
|
||||
onClickHideshowProcess(){
|
||||
this.setData({
|
||||
showProcess:false
|
||||
})
|
||||
if(this.data.processradio==1){
|
||||
this.setData({
|
||||
process_message:'1、医生与患者线上沟通确定肝脏病理切片解读事项\n'+
|
||||
'2、患者按要求线下邮寄切片并线上提醒医生已寄出;\n'+
|
||||
'3、医生线下收到切片后阅片解读或组织多学科会诊;\n'+
|
||||
'4、医生线上给出分析报告和治疗方案。'
|
||||
})
|
||||
}else{
|
||||
this.setData({
|
||||
process_message:'1、针对本项目服务,医生与患者各自需要所作事情;\n'+
|
||||
'2、所做事情用1、2、3点按照时间顺序进行详细描述。'
|
||||
})
|
||||
}
|
||||
},
|
||||
openCycle(){
|
||||
this.setData({
|
||||
showCycle:true
|
||||
})
|
||||
},
|
||||
onCancelCycle(){
|
||||
this.setData({
|
||||
showCycle:false
|
||||
})
|
||||
},
|
||||
onConfirmCycle(event){
|
||||
const { value} = event.detail;
|
||||
this.setData({
|
||||
showCycle:false ,
|
||||
cycle: value
|
||||
});
|
||||
},
|
||||
openRound(){
|
||||
this.setData({
|
||||
showRound:true
|
||||
})
|
||||
},
|
||||
onCancelRound(){
|
||||
this.setData({
|
||||
showRound:false
|
||||
})
|
||||
},
|
||||
onConfirmRound(event){
|
||||
const { value} = event.detail;
|
||||
if(value=='自定义'){
|
||||
this.setData({
|
||||
showCustom:true,
|
||||
showRound:false
|
||||
})
|
||||
}else{
|
||||
this.setData({
|
||||
showRound:false,
|
||||
rounds:value
|
||||
})
|
||||
}
|
||||
|
||||
},
|
||||
savecancelDialog(){
|
||||
this.setData({
|
||||
showSave:false
|
||||
})
|
||||
|
||||
},
|
||||
saveconfirmDialog(){
|
||||
|
||||
let {cycle,rounds,content_message,process_message,config_service_id}=this.data;
|
||||
wx.setStorageSync('service_setting',{
|
||||
cycle,
|
||||
rounds,
|
||||
content_message,
|
||||
process_message,
|
||||
|
||||
})
|
||||
|
||||
this.setData({
|
||||
showSave:false
|
||||
})
|
||||
if(config_service_id){
|
||||
this.putConfig();
|
||||
}else{
|
||||
this.postConfig();
|
||||
}
|
||||
|
||||
},
|
||||
draftcancelDialog(){
|
||||
this.setData({
|
||||
showDraft:false
|
||||
})
|
||||
this.getConfig();
|
||||
},
|
||||
draftconfirmDialog(){
|
||||
const service_setting=wx.getStorageSync('service_setting');
|
||||
this.setData({
|
||||
cycle:service_setting.cycle,
|
||||
rounds:service_setting.rounds,
|
||||
content_message:service_setting.content_message,
|
||||
process_message:service_setting.process_message,
|
||||
showDraft:false
|
||||
})
|
||||
},
|
||||
previewcancelDialog(){
|
||||
this.setData({
|
||||
showPreview:false
|
||||
})
|
||||
},
|
||||
previewconfirmDialog(){
|
||||
this.setData({
|
||||
showPreview:false
|
||||
})
|
||||
},
|
||||
save(){
|
||||
let {cycle,rounds,content_message,process_message}=this.data;
|
||||
if(cycle || rounds || content_message || process_message){
|
||||
this.setData({
|
||||
showSave:true
|
||||
})
|
||||
|
||||
}
|
||||
},
|
||||
validate(){
|
||||
let {process_message,content_message,cycle,rounds}=this.data;
|
||||
if(content_message.length<10){
|
||||
wx.showToast({
|
||||
title: '服务内容不少于10个字符',
|
||||
icon:'none'
|
||||
})
|
||||
return false
|
||||
};
|
||||
if(process_message.length<10){
|
||||
wx.showToast({
|
||||
title: '服务流程不少于10个字符',
|
||||
icon:'none'
|
||||
})
|
||||
return false
|
||||
}
|
||||
if(!cycle){
|
||||
wx.showToast({
|
||||
title: '请设置服务周期',
|
||||
icon:'none'
|
||||
})
|
||||
return false
|
||||
}
|
||||
if(!rounds){
|
||||
wx.showToast({
|
||||
title: '请设置服务回合数',
|
||||
icon:'none'
|
||||
})
|
||||
return false
|
||||
}
|
||||
return true
|
||||
},
|
||||
postConfig(){//新增
|
||||
let {process_message,content_message,cycle,rounds}=this.data;
|
||||
if(this.validate()){
|
||||
api.postServiceConfig({
|
||||
service_content:content_message,
|
||||
service_process:process_message,
|
||||
service_period:cycle,
|
||||
service_rounds:rounds=='不限次'?0:rounds
|
||||
}).then(response => {
|
||||
if(response.data==200){
|
||||
wx.showToast({
|
||||
title: 'title',
|
||||
icon:'新增成功'
|
||||
})
|
||||
wx.navigateBack()
|
||||
}
|
||||
}).catch(errors => {console.error(errors);})
|
||||
}
|
||||
|
||||
},
|
||||
putConfig(){ //修改
|
||||
let {config_service_id,process_message,content_message,cycle,rounds}=this.data;
|
||||
if(this.validate()){
|
||||
api.putServiceConfig({
|
||||
service_content:content_message,
|
||||
service_process:process_message,
|
||||
service_period:cycle,
|
||||
service_rounds:rounds=='不限次'?0:rounds
|
||||
},config_service_id).then(response => {
|
||||
if(response.data==200){
|
||||
wx.showToast({
|
||||
title: 'title',
|
||||
icon:'修改成功'
|
||||
})
|
||||
wx.navigateBack()
|
||||
}
|
||||
}).catch(errors => {console.error(errors);})
|
||||
}
|
||||
|
||||
},
|
||||
getConfig(){
|
||||
let {inquiry_type,inquiry_mode}=this.data;
|
||||
api.getServiceConfig({
|
||||
inquiry_type:1,
|
||||
inquiry_mode:6
|
||||
}).then(response => {
|
||||
let result=response.data;
|
||||
if(result){
|
||||
this.setData({
|
||||
'content_message':result.service_content,
|
||||
'process_message':result.service_process,
|
||||
'cycle':result.service_period,
|
||||
'rounds':result.service_rounds
|
||||
})
|
||||
}
|
||||
}).catch(errors => {console.error(errors);})
|
||||
},
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
const service_setting=wx.getStorageSync('service_setting');
|
||||
let arr=[];
|
||||
for (let i =2; i < 31; i++) {
|
||||
arr.push(i)
|
||||
}
|
||||
this.setData({
|
||||
columnsCycle:arr
|
||||
})
|
||||
if(options.config_service_id){
|
||||
this.setData({
|
||||
config_service_id:options.config_service_id
|
||||
})
|
||||
}
|
||||
if(service_setting){
|
||||
this.setData({
|
||||
showDraft:true
|
||||
})
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage() {
|
||||
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "/commpents/te_navbar",
|
||||
"van-icon": "@vant/weapp/icon/index",
|
||||
"van-radio": "@vant/weapp/radio/index",
|
||||
"van-picker": "@vant/weapp/picker/index",
|
||||
"van-popup": "@vant/weapp/popup/index",
|
||||
"t-dialog": "tdesign-miniprogram/dialog/dialog",
|
||||
"van-radio-group": "@vant/weapp/radio-group/index",
|
||||
"van-overlay": "@vant/weapp/overlay/index",
|
||||
"van-field": "@vant/weapp/field/index"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,193 @@
|
||||
<!--Pages/service_setting/index.wxml-->
|
||||
<view class="page">
|
||||
<te-nav-bar navbar-data='{{navbarData}}'></te-nav-bar>
|
||||
<view class="container">
|
||||
<view class="brandbox">
|
||||
<view class="brand">
|
||||
<view class="titlebox">
|
||||
<view class="name">服务内容</view>
|
||||
<view class="moban" bindtap="openDialog" data-id="1">使用模板 ></view>
|
||||
</view>
|
||||
<van-field value="{{ content_message }}" label="" type="textarea" placeholder="请填写自定义的服务内容,内容简洁明了。(10-500)" autosize="{{autosize}}" maxlength="500" show-word-limit border="{{ false }}" />
|
||||
</view>
|
||||
<view class="brand">
|
||||
<view class="titlebox">
|
||||
<view class="name">服务流程</view>
|
||||
<view class="moban" bindtap="openDialog" data-id="2">使用模板 ></view>
|
||||
</view>
|
||||
<van-field value="{{ process_message }}" label="" type="textarea" placeholder="请填写自定义的服务流程,内容简洁明了。(10-500)" autosize="{{autosize}}" maxlength="500" show-word-limit border="{{ false }}" />
|
||||
</view>
|
||||
<view class="cell" bindtap="openCycle">
|
||||
<view class="name">服务周期</view>
|
||||
<view class="right">
|
||||
<view class="msg" wx:if="{{cycle}}">{{cycle}}天</view>
|
||||
<view class="msg" wx:else>去设置</view>
|
||||
<van-icon name="arrow" class="icon" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="cell" bindtap="openRound">
|
||||
<view class="name">服务回合数</view>
|
||||
<view class="right">
|
||||
<view class="msg" wx:if="{{rounds}}">{{rounds}}</view>
|
||||
<view class="msg" wx:else>去设置</view>
|
||||
<van-icon name="arrow" class="icon" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="eyebox">
|
||||
<image src="../../../static/images/yishi/tabbar_icon/eye.png" mode="" class="eye" />
|
||||
<view class="text">预览效果</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="btnbox">
|
||||
<view class="btn" bindtap="save">保存</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<van-overlay show="{{ show }}" z-index="9900">
|
||||
<view class="wrapper">
|
||||
<view class="configbox">
|
||||
<view class="title">服务内容</view>
|
||||
<view class="tipmsg">内容会展示给患者,请仔细编写并删除
|
||||
相关提示语</view>
|
||||
<van-radio-group value="{{ contentradio }}" bind:change="onChangeContent">
|
||||
<view class="listbox">
|
||||
<view class="list">
|
||||
<view class="titlebox">
|
||||
<view class="name">模板1</view>
|
||||
<van-radio name="1" checked-color="#3CC7C0">选择此模板</van-radio>
|
||||
</view>
|
||||
<view class="tipbox {{contentradio==1?'active':''}}">
|
||||
<view class="msg">1、服务包含肝脏病理切片解读,需患者邮寄肝脏切片</view>
|
||||
<view class="msg">2、针对病例切片多学科会诊,包含:临床、影像、肝脏病理等学科;</view>
|
||||
<view class="msg">3、给出分析报告与治疗方案;</view>
|
||||
<view class="msg">4、服务周期,大概7~15天,期间可以不限次(医生自己定义)沟通病情。</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="list">
|
||||
<view class="titlebox">
|
||||
<view class="name">模板2</view>
|
||||
<van-radio name="2" checked-color="#3CC7C0" >选择此模板</van-radio>
|
||||
</view>
|
||||
<view class="tipbox {{contentradio==2?'active':''}}">
|
||||
<view class="msg">1、概述服务所包含内容,如报告解读(可包含超声报告、CT报告、肝脏病理报告及其他常规报告)或者病情解析;</view>
|
||||
<view class="msg">2、详细描述服务所包含的具体服务或者形式;</view>
|
||||
<view class="msg">3、请给出服务周期;</view>
|
||||
<view class="msg">4、描述该项所提供服务的特点。</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</van-radio-group>
|
||||
<view class="confirm" bindtap="onClickHide" >确认选择</view>
|
||||
</view>
|
||||
</view>
|
||||
</van-overlay>
|
||||
|
||||
<van-overlay show="{{ showProcess }}" z-index="9900">
|
||||
<view class="wrapper">
|
||||
<view class="configbox">
|
||||
<view class="title">服务流程</view>
|
||||
<view class="tipmsg">内容会展示给患者,请仔细编写并删除
|
||||
相关提示语</view>
|
||||
<van-radio-group value="{{ processradio }}" bind:change="onChangeProcess">
|
||||
<view class="listbox">
|
||||
<view class="list">
|
||||
<view class="titlebox">
|
||||
<view class="name">模板1</view>
|
||||
<van-radio name="1" checked-color="#3CC7C0">选择此模板</van-radio>
|
||||
</view>
|
||||
<view class="tipbox {{processradio==1?'active':''}}">
|
||||
<view class="msg">1、医生与患者线上沟通确定肝脏病理切片解读事项</view>
|
||||
<view class="msg">2、患者按要求线下邮寄切片并线上提醒医生已寄出;</view>
|
||||
<view class="msg">3、医生线下收到切片后阅片解读或组织多学科会诊;</view>
|
||||
<view class="msg">4、医生线上给出分析报告和治疗方案。</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="list">
|
||||
<view class="titlebox">
|
||||
<view class="name">模板2</view>
|
||||
<van-radio name="2" checked-color="#3CC7C0" >选择此模板</van-radio>
|
||||
</view>
|
||||
<view class="tipbox {{processradio==2?'active':''}}">
|
||||
<view class="msg">1、针对本项目服务,医生与患者各自需要所作事情;</view>
|
||||
<view class="msg">2、所做事情用1、2、3点按照时间顺序进行详细描述。</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</van-radio-group>
|
||||
<view class="confirm" bindtap="onClickHideshowProcess">确认选择</view>
|
||||
</view>
|
||||
</view>
|
||||
</van-overlay>
|
||||
<van-popup
|
||||
show="{{ showCycle }}"
|
||||
round
|
||||
position="bottom"
|
||||
custom-style="height: 50%"
|
||||
>
|
||||
<van-picker columns="{{ columnsCycle }}" show-toolbar
|
||||
title="选择服务周期" bind:cancel="onCancelCycle"
|
||||
bind:confirm="onConfirmCycle" />
|
||||
</van-popup>
|
||||
<van-popup
|
||||
show="{{ showRound }}"
|
||||
round
|
||||
position="bottom"
|
||||
custom-style="height: 50%"
|
||||
>
|
||||
<van-picker columns="{{ columnsRound }}" show-toolbar
|
||||
title="选择服务回合数" bind:cancel="onCancelRound"
|
||||
bind:confirm="onConfirmRound" />
|
||||
</van-popup>
|
||||
<van-overlay show="{{ showCustom }}" z-index="9900">
|
||||
<view class="wrapper">
|
||||
<view class="custombox">
|
||||
<view class="title">自定义服务回合数</view>
|
||||
<view class="roundBox">
|
||||
<view class="name">回合数</view>
|
||||
<input type="number" placeholder="请输入" class="ipt" value="{{customRounds}}" bindinput="changeCustomIpt" placeholder-style="color: rgba(0,0,0,0.25);font-size:32rpx"/>
|
||||
</view>
|
||||
<view class="btnround" bindtap="closeCustom">确认</view>
|
||||
</view>
|
||||
</view>
|
||||
</van-overlay>
|
||||
<t-dialog
|
||||
visible="{{ showSave }}"
|
||||
title="提示"
|
||||
content="是否保存服务设置内容?"
|
||||
>
|
||||
<view slot="cancel-btn" class="dialog dialog_cancel_btn" bindtap="savecancelDialog">
|
||||
取消
|
||||
</view>
|
||||
<view slot="confirm-btn" class="dialog dialog_confirm_btn" bindtap="saveconfirmDialog">
|
||||
保存
|
||||
</view>
|
||||
</t-dialog>
|
||||
<t-dialog
|
||||
visible="{{ showDraft }}"
|
||||
title="提示"
|
||||
content="是否加载之前保存的草稿内容?"
|
||||
>
|
||||
<view slot="cancel-btn" class="dialog dialog_cancel_btn" bindtap="draftcancelDialog">
|
||||
取消
|
||||
</view>
|
||||
<view slot="confirm-btn" class="dialog dialog_confirm_btn" bindtap="draftconfirmDialog">
|
||||
加载
|
||||
</view>
|
||||
</t-dialog>
|
||||
<t-dialog
|
||||
visible="{{ showPreview }}"
|
||||
title="提示"
|
||||
content="可以预览患者端效果,是否查看?"
|
||||
>
|
||||
<view slot="cancel-btn" class="dialog dialog_cancel_btn" bindtap="previewcancelDialog">
|
||||
取消
|
||||
</view>
|
||||
<view slot="confirm-btn" class="dialog dialog_confirm_btn" bindtap="previewconfirmDialog">
|
||||
前往
|
||||
</view>
|
||||
</t-dialog>
|
||||
@@ -0,0 +1,292 @@
|
||||
/* Pages/service_setting/index.wxss */
|
||||
.page {
|
||||
height: 100vh;
|
||||
display: flex;
|
||||
overflow: hidden;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.container {
|
||||
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
height: calc(100vh - 138rpx);
|
||||
background-color: #F6F6F6;
|
||||
}
|
||||
|
||||
.brandbox {
|
||||
padding: 32rpx 30rpx 0;
|
||||
flex: 1;
|
||||
overflow-y: scroll;
|
||||
-webkit-overflow-scrolling: touch;
|
||||
}
|
||||
|
||||
.titlebox {
|
||||
margin-top: 20rpx;
|
||||
display: flex;
|
||||
align-items: flex-end;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.brand {
|
||||
margin-bottom: 24rpx;
|
||||
padding: 30rpx;
|
||||
background: #FFFFFF;
|
||||
border-radius: 14rpx;
|
||||
}
|
||||
|
||||
.titlebox .name {
|
||||
font-size: 32rpx;
|
||||
font-weight: 500;
|
||||
color: rgba(0, 0, 0, 0.85);
|
||||
}
|
||||
|
||||
.titlebox .moban {
|
||||
width: 151rpx;
|
||||
height: 48rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
background: #FFFFFF;
|
||||
border-radius: 50rpx;
|
||||
border: 1rpx solid #3CC7C0;
|
||||
font-size: 24rpx;
|
||||
font-weight: 500;
|
||||
color: #3CC7C0;
|
||||
}
|
||||
|
||||
.van-cell {
|
||||
padding: 13rpx 0 !important;
|
||||
}
|
||||
|
||||
.cell {
|
||||
margin-bottom: 24rpx;
|
||||
padding: 30rpx;
|
||||
background: #FFFFFF;
|
||||
border-radius: 14rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.right {
|
||||
display: flex;
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
color: rgba(0, 0, 0, 0.45);
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.icon {
|
||||
margin-top: 2rpx;
|
||||
}
|
||||
|
||||
.eyebox {
|
||||
padding-top: 20rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-bottom: 20rpx;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.eye {
|
||||
margin-top: 2rpx;
|
||||
width: 40rpx;
|
||||
height: 40rpx;
|
||||
}
|
||||
|
||||
.eyebox .text {
|
||||
font-size: 32rpx;
|
||||
margin-left: 5rpx;
|
||||
font-weight: 500;
|
||||
color: #3BB5FE;
|
||||
|
||||
}
|
||||
|
||||
.btnbox {
|
||||
margin-bottom: 20rpx;
|
||||
}
|
||||
|
||||
.btn {
|
||||
|
||||
margin: 0 30rpx;
|
||||
height: 88rpx;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
background: #3CC7C0;
|
||||
border-radius: 8rpx;
|
||||
font-size: 32rpx;
|
||||
font-weight: 500;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.wrapper {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
height:100vh;
|
||||
}
|
||||
|
||||
.configbox {
|
||||
box-sizing: border-box;
|
||||
padding: 24rpx 30rpx;
|
||||
background-color: #fff;
|
||||
width: 90%;
|
||||
border-radius: 16rpx;
|
||||
}
|
||||
|
||||
.configbox .title {
|
||||
font-size: 36rpx;
|
||||
font-weight: 500;
|
||||
color: rgba(0, 0, 0, 0.85);
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.tipmsg {
|
||||
margin-top: 12rpx;
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
color: #3BB5FE;
|
||||
line-height: 44rpx;
|
||||
text-align: center;
|
||||
padding: 10rpx 60rpx;
|
||||
background: #F2F8FF;
|
||||
}
|
||||
|
||||
.tipbox {
|
||||
margin-top: 20rpx;
|
||||
background: #EEEEF0;
|
||||
border-radius: 8rpx;
|
||||
padding:24rpx;
|
||||
box-sizing: border-box;
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
margin-bottom: 5rpx;
|
||||
color: rgba(0, 0, 0, 0.65);
|
||||
line-height: 44rpx;
|
||||
border: 1rpx solid #EEEEF0 ;
|
||||
}
|
||||
.tipbox.active{
|
||||
margin-top: 20rpx;
|
||||
background: #FFFFFF;
|
||||
border-radius: 8rpx;
|
||||
padding:24rpx;
|
||||
box-sizing: border-box;
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
margin-bottom: 5rpx;
|
||||
color: rgba(0, 0, 0, 0.65);
|
||||
line-height: 44rpx;
|
||||
border: 1rpx solid #3CC7C0;
|
||||
}
|
||||
.van-radio{
|
||||
display: flex;
|
||||
flex-direction: row-reverse;
|
||||
}
|
||||
.van-radio__icon{
|
||||
margin-left: 10rpx;
|
||||
}
|
||||
.van-radio__label{
|
||||
color: rgba(0,0,0,0.45)!important;
|
||||
font-size: 28rpx!important;
|
||||
}
|
||||
.confirm{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
height: 88rpx;
|
||||
background: linear-gradient(90deg, #3CC7C0 0%, #62EBE4 100%);
|
||||
border-radius: 8rpx;
|
||||
font-size: 32rpx;
|
||||
margin-top: 24rpx;
|
||||
font-weight: 500;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
.custom-class{
|
||||
position: absolute;
|
||||
bottom:0;
|
||||
}
|
||||
.van-picker__cancel{
|
||||
color: rgba(0,0,0,0.65)!important;
|
||||
}
|
||||
.van-picker__confirm{
|
||||
color: #3CC7C0!important;
|
||||
}
|
||||
.custombox{
|
||||
padding:32rpx;
|
||||
width:70%;
|
||||
border-radius: 16rpx;
|
||||
background-color: #fff;
|
||||
}
|
||||
.roundBox{
|
||||
margin: 56rpx 0;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.custombox .title{
|
||||
text-align: center;
|
||||
font-size: 36rpx;
|
||||
font-weight: 500;
|
||||
color: rgba(0,0,0,0.85)
|
||||
}
|
||||
.custombox .name{
|
||||
font-size: 32rpx;
|
||||
font-weight: 400;
|
||||
color: rgba(0,0,0,0.85);
|
||||
}
|
||||
.custombox .ipt{
|
||||
text-align: right;
|
||||
}
|
||||
.btnround{
|
||||
width:100%;
|
||||
height: 88rpx;
|
||||
background: #3CC7C0;
|
||||
border-radius: 8rpx;
|
||||
font-size: 32rpx;
|
||||
font-weight: 500;
|
||||
color: #FFFFFF;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
.dialog{
|
||||
width: 50%;
|
||||
text-align: center;
|
||||
height: 100rpx;
|
||||
line-height: 100rpx;
|
||||
}
|
||||
.dialog_cancel_btn{
|
||||
position: relative;
|
||||
}
|
||||
.dialog_cancel_btn::before {
|
||||
content: ' ';
|
||||
position: absolute;
|
||||
box-sizing: border-box;
|
||||
top: 0;
|
||||
left: 0;
|
||||
border-top: 2px solid var(--td-border-color, #e7e7e7);
|
||||
border-right: 2px solid var(--td-border-color, #e7e7e7);
|
||||
transform: scale(0.5);
|
||||
transform-origin: 0 0;
|
||||
width: 200%;
|
||||
height: 200%;
|
||||
border-radius: 0;
|
||||
border-top-left-radius: 0px;
|
||||
border-top-right-radius: 0px;
|
||||
border-bottom-right-radius: 0px;
|
||||
border-bottom-left-radius: 0px;
|
||||
}
|
||||
.dialog_confirm_btn{
|
||||
border-top: 1px solid #E9E9E9;
|
||||
color: #3CC7C0;
|
||||
}
|
||||
.t-button__content{
|
||||
color: #3CC7C0 !important;
|
||||
}
|
||||
.t-dialog__button--text:before {
|
||||
border-top: 2px solid #E9E9E9 !important;
|
||||
border-left: 2px solid var(--td-border-color, #E9E9E9);
|
||||
border-top-color: #E9E9E9 !important;
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "/commpents/te_navbar",
|
||||
|
||||
"van-radio": "@vant/weapp/radio/index",
|
||||
"van-radio-group": "@vant/weapp/radio-group/index"
|
||||
|
||||
|
||||
@@ -366,7 +366,7 @@ Page({
|
||||
conversationList: new_conversationList
|
||||
})
|
||||
}).then(() => {
|
||||
// console.log("开始格式化formatConversationList")
|
||||
console.log("开始格式化formatConversationList")
|
||||
this.formatConversationList();
|
||||
}).catch(errors => {console.error(errors);})
|
||||
},
|
||||
@@ -404,6 +404,7 @@ Page({
|
||||
let order_inquiry_id = cloudCustomDataJson.order_inquiry_id;
|
||||
if(!order_inquiry_id) return;
|
||||
let inquiry_type = cloudCustomDataJson.inquiry_type;
|
||||
let inquiry_mode=cloudCustomDataJson.inquiry_mode;
|
||||
if(!inquiry_type) return;
|
||||
if(inquiry_type > 5) return;
|
||||
if(inquiry_type < message_inquiry_type){
|
||||
@@ -441,6 +442,7 @@ Page({
|
||||
session_item.message_type = type;
|
||||
session_item.order_inquiry_id = order_inquiry_id;
|
||||
session_item.inquiry_type = inquiry_type;
|
||||
session_item.inquiry_mode = inquiry_mode;
|
||||
session_item.patient_age = patient_family_data.patient_age;
|
||||
session_item.patient_name = patient_family_data.patient_name;
|
||||
session_item.patient_sex = patient_family_data.patient_sex;
|
||||
@@ -465,6 +467,7 @@ Page({
|
||||
session_item.message_dot = false;
|
||||
}
|
||||
}
|
||||
|
||||
session_list[inquiry_type - 1].push(session_item);
|
||||
console.log("--------------------")
|
||||
console.log(session_list)
|
||||
|
||||
@@ -177,6 +177,7 @@
|
||||
<view class="content" wx:for="{{ data_list_1 }}" wx:key="order_inquiry_id">
|
||||
<view class="content_1">
|
||||
<view class="name">
|
||||
<view class="parallelogram {{item.inquiry_mode==1?'':item.inquiry_mode==2?'video':item.inquiry_mode==6?'yinan':'other'}}">{{item.inquiry_mode==1?'图文':item.inquiry_mode==2?'视频':item.inquiry_mode==6?'疑难问诊':'其他'}}</view>
|
||||
<text style="font-size: 34rpx;color: #333;">就诊人:</text>
|
||||
{{item.patient_name}} {{item.patient_sex==1?'男':'女'}}|{{item.patient_age}}<t-badge dot="{{item.message_dot || item.inquiry_status==3}}" offset="{{ [-4, 4] }}" content="岁" />
|
||||
</view>
|
||||
@@ -272,6 +273,7 @@
|
||||
|
||||
<view class="content" wx:for="{{ data_list_3 }}" wx:key="order_inquiry_id">
|
||||
<view class="content_1">
|
||||
|
||||
<view class="name">
|
||||
<text style="font-size: 34rpx;color: #333;">就诊人:</text>
|
||||
{{item.patient_name}} {{item.patient_sex==1?'男':'女'}}|{{item.patient_age}}<t-badge dot="{{item.message_dot || item.inquiry_status==3}}" offset="{{ [-4, 4] }}" content="岁" />
|
||||
|
||||
@@ -77,7 +77,7 @@ page{
|
||||
font-size: 30rpx;
|
||||
color: #666666;
|
||||
height: 50rpx;
|
||||
line-height: 50rpx;
|
||||
align-items: center;
|
||||
display: flex;
|
||||
}
|
||||
.date{
|
||||
@@ -142,3 +142,37 @@ page{
|
||||
align-items: center;
|
||||
flex-direction: column;
|
||||
}
|
||||
.parallelogram {
|
||||
margin-top: 4rpx;
|
||||
margin-left: 10rpx;
|
||||
margin-right:15rpx;
|
||||
padding:0 20rpx;
|
||||
height: 44rpx;
|
||||
z-index: 1;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 28rpx;
|
||||
position: relative;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/* 添加伪元素作为平行四边形的角点 */
|
||||
.parallelogram::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
z-index: -1;
|
||||
background:#007cff;
|
||||
transform: skewX(-20deg);
|
||||
}
|
||||
.parallelogram.video.parallelogram::before{
|
||||
background:#00c986;
|
||||
}
|
||||
.parallelogram.yinan.parallelogram::before{
|
||||
background:#ffb700;
|
||||
}
|
||||
@@ -52,7 +52,7 @@
|
||||
<text class="bottom_txt">
|
||||
提示:服务开启后,您将参与到平台爱心公益问诊活动中
|
||||
1、从平台统一设定的多种公益问诊价格中选择您的公益问诊价格
|
||||
2、接诊后,患者可与您在{{config.duration/60}}小时内进行{{config.times_number}}回合沟通
|
||||
2、接诊后,患者可与您在<text style="color:#3CC7C0">{{config.duration/60}}小时内进行{{config.times_number}}回合沟通</text>
|
||||
</text>
|
||||
</view>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user