This commit is contained in:
haomingming 2023-04-06 11:20:01 +08:00
parent a1d691367e
commit 6fa2a5eaa9
40 changed files with 987 additions and 186 deletions

View File

@ -18,6 +18,11 @@ Page({
goCheck(e){
console.log(e);
let usertype = e.currentTarget.dataset.usertype;
if(usertype == 2){
app.imInit();
}else{
app.imLogout();
}
let url = e.currentTarget.dataset.url;
wx.setStorageSync('usertype', usertype);
wx.setStorageSync('next_url', url);

View File

@ -1,6 +1,6 @@
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
<view class="container">
<view class="img_box">
<view class="img_box" wx:if="{{false}}">
<view class="img_content">
<image class="case_img"
src="{{prescription_img}}"
@ -12,6 +12,10 @@
/>
</view>
</view>
<view class="imgbox">
<image src="{{prescription_img}}" mode="widthFix" class="prescription"></image>
<image src="{{doctor_sign_image}}" mode="widthFix" class="doctorSign"></image>
</view>
<view class="button_group">
<view class="button_item">
<van-button round plain type="danger" bind:click="showPopup">

View File

@ -1,5 +1,4 @@
page{
background-color: #F3F5F7;
}
@ -12,7 +11,7 @@ page{
width: 100%;
}
.img_content{
background-color: #F1F1F3;
background-color: #F3F5F7;
padding: 20rpx;
border-radius: 10rpx;
}
@ -35,4 +34,24 @@ page{
}
.pop_button_txt{
color: red;
}
}
.imgbox{
width:100%;
height:0;
position:relative;
padding-bottom:141%;
}
.prescription{
position:absolute;
top:0px;
height:100%;
bottom:0px;
width:100%;
}
.doctorSign{
position:absolute;
width:100rpx;
height:53rpx;
left:125rpx;
bottom:126rpx;
}

View File

@ -16,7 +16,8 @@ Page({
bank_card_code_mask: "888 xxxx xxxx 888",
withdrawal_amount: "xxxx",
income_tax: "xx",
contactKeFu: false
contactKeFu: false,
skeleton_loading: true
},
onLoad(options){
//获取提现数据
@ -30,6 +31,7 @@ Page({
bank_card_code_mask: response.data.bank_card_code_mask,
withdrawal_amount: response.data.withdrawal_amount,
income_tax: response.data.income_tax,
skeleton_loading: false
})
}
}).catch(errors => {

View File

@ -5,6 +5,7 @@
"van-image": "@vant/weapp/image/index",
"van-icon": "@vant/weapp/icon/index",
"van-button": "@vant/weapp/button/index",
"van-dialog": "@vant/weapp/dialog/index"
"van-dialog": "@vant/weapp/dialog/index",
"t-skeleton": "tdesign-miniprogram/skeleton/skeleton"
}
}

View File

@ -5,7 +5,7 @@
<view class="txt_title">结算银行卡</view>
<view class="rule">提现规则<van-icon name="warning-o" color="#FF9800" /></view>
</view>
<view class="bankcard">
<view class="bankcard" wx:if="{{!skeleton_loading}}">
<view class="bankcard_icon">
<van-image custom-style="" src="{{bank_icon_path}}" fit="heightFix" height="50rpx" aria-label="role" />
</view>
@ -14,8 +14,11 @@
<view class="bankcard_info_bottom">{{bank_card_code_mask}}</view>
</view>
</view>
<view class="bankcard_loading" wx:if="{{skeleton_loading}}">
<t-skeleton theme="text" row-col="{{[{width: '30%'},{width: '80%'}]}}" animation="gradient" loading="{{skeleton_loading}}" />
</view>
<view class="cash">
<view class="cash" wx:if="{{!skeleton_loading}}">
<view class="cash_top">
<view class="cash_left">
<view class="cash_left_title">提现金额(元)</view>
@ -24,7 +27,9 @@
<text style="font-size: 42rpx;">¥</text>{{withdrawal_amount}}
</view>
</view>
<view class="shui">扣除个人所得税: <text style="color: red;">{{income_tax}}元</text> </view>
<view class="shui">扣除个人所得税:
<text style="color: red;">{{income_tax}}元</text>
</view>
</view>
<view class="cash_right">
<navigator url="/Pages/yishi/wenzhenorder/index" open-type="navigate" hover-class="other-navigator-hover">
@ -40,6 +45,9 @@
</navigator>
</view>
</view>
<view class="cash_loading" wx:if="{{skeleton_loading}}">
<t-skeleton theme="text" row-col="{{[{width: '30%'},{width: '80%'},{width: '50%'},{width: '30%'}]}}" animation="gradient" loading="{{skeleton_loading}}" />
</view>
<!-- <view class="note">
<text>

View File

@ -18,6 +18,13 @@ page{
font-size: 30rpx;
color: #333333;
}
.bankcard_loading{
width: calc(92vw - 40rpx);
margin: 0 auto;
background-color: #fff;
border-radius: 20rpx;
padding: 20rpx 20rpx;
}
.bankcard{
width: 92vw;
margin: 0 auto;
@ -48,6 +55,15 @@ page{
color: #333333;
margin-top: 10rpx;
}
.cash_loading{
padding: 20rpx 20rpx;
width: calc(92vw - 40rpx);
margin: 20rpx auto;
background-color: #fff;
border-radius: 20rpx;
display: flex;
flex-direction: column;
}
.cash{
width: 92vw;
height: 300rpx;

View File

@ -14,13 +14,13 @@ Page({
this.setData({
order_inquiry_id: order_inquiry_id,
})
this.getInquiryMessageBasic();
},
onUnload() {
console.log("chat onUnload");
},
onShow(){
console.log("chat onShow");
this.getInquiryMessageBasic();
console.log("app.globalData.scene from chat: ", app.globalData.scene);
},
$onMessageReceived(value) {

View File

@ -53,9 +53,6 @@ Page({
},
onChange({ detail }) {
console.log("onChange: ", detail);
if(detail){
let inquiry_price = this.data.info.inquiry_price;
let check = this.checkPrice(inquiry_price);
@ -105,39 +102,12 @@ Page({
})
},
onStepperChange(event) {
console.log(event.detail);
this.setData({
"info.work_num_day": event.detail
});
let price = this.data.info.inquiry_price;
this.updateConfig(price);
},
onPriceChange(e){
console.log(e.detail);
let price = e.detail.value;
let check = this.checkPrice(price);
if(!check){
price = this.data.info.inquiry_price
return
}
let result = this.updateConfig(price);
console.log("result result result:", result);
result.then((res)=>{
console.log(res)
if(!res) price = this.data.info.inquiry_price
this.setData({
"info.inquiry_price": price
})
})
},
myToast(message){
Toast({
context: this,
selector: '#t-toast',
message: message,
theme: 'success',
theme: 'error',
direction: 'column',
});
},
@ -159,23 +129,4 @@ Page({
return false;
}
},
async updateConfig(price){
//修改医生问诊配置
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:会员)
params.inquiry_price = price;
params.work_num_day = this.data.info.work_num_day;
const result = await api.putDoctorInquiryConfig(params).then(response => {
console.log(response);
this.myToast("修改成功");
return true;
}).catch(errors => {
console.error(errors);
return false;
})
console.log("updateConfig result result: ", result);
return result;
}
})

View File

@ -1,5 +1,5 @@
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
<view class="container" style="height: calc(100vh - 96rpx - 30rpx - {{height}}px);">
<view class="container">
<view class="switch_box">
<view class="switch_box_top">
<view class="switch_box_item">
@ -23,19 +23,16 @@
<view class="checked_box">
<view class="price_title">价格设置</view>
<view class="price_steup_box">
<view class="price_steup_box_top">
<view class="price_steup_box_top_title">每日接诊数量</view>
<view class="price_steup_box_top_stepper">
<van-stepper value="{{ info.work_num_day }}" min="1" max="{{config.max_work_num_day}}" integer bind:change="onStepperChange" />
<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>
</view>
<view class="price_steup_box_bottom">
<view class="price_steup_box_bottom_title">问诊单价(元)</view>
<view class="price_steup_box_bottom_num">
<input class="weui-input" bindblur="onPriceChange" type="digit" value="{{ info.inquiry_price }}" placeholder="请输入问诊单价" />
<text class="price">元</text>
</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">
{{info.inquiry_price}}元
</view>
</view>
</van-cell>
</view>
</view>

View File

@ -1,6 +1,8 @@
page{
background-color: #F6F6F6;
}
.container{
width: 100vw;
background-color: #F6F6F6;
padding-top: 30rpx;
}
.switch_box{
@ -59,6 +61,7 @@
color: #333333;
}
.price_steup_box{
padding-top: 10rpx;
display: flex;
width: 90vw;
height: 180rpx;
@ -131,4 +134,7 @@
.price{
text-align: center;
flex: 1;
}
.cell_value{
color: #000;
}

View File

@ -0,0 +1,118 @@
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: '价格设置', //导航栏 中间的标题
},
inquiry_type: 1,
inquiry_mode: 1,
info:{
is_open: false,
inquiry_price: 0,
work_num_day: 0
},
myprice: "",
config:{
"max_work_num_day": 30,
"min_inquiry_price": 0,
"max_inquiry_price": 0,
"default_inquiry_price": 0,
"times_number": 10,
"duration": 1440,
"system_inquiry_price": [
"0",
"5",
"10"
]
}
},
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:会员)
//获取医生我的账户数据
api.getDoctorInquiryConfig(params).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
})
}).catch(errors => {console.error(errors);})
},
onStepperChange(event) {
console.log(event.detail);
this.setData({
"info.work_num_day": event.detail
});
},
onPriceChange(e){
console.log(e.detail);
let price = e.detail.value;
this.setData({
"info.inquiry_price": price
})
},
myToast(message){
Toast({
context: this,
selector: '#t-toast',
message: message,
theme: 'error',
direction: 'column',
});
},
checkPrice(price){
let value = Number(price);
let min = Number(this.data.config.min_inquiry_price);
let max = Number(this.data.config.max_inquiry_price);
if(value < min){
value = min;
let message = '价格不能低于' + min + '元';
this.myToast(message);
return false;
}else if(value >= min && value <=max ){
return true;
}else{
value = max;
let message = '价格不能高于' + max + '元';
this.myToast(message);
return false;
}
},
async updateConfig(){
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:问诊购药)
params.inquiry_mode = this.data.inquiry_mode;//接诊方式1:图文 2:视频 3:语音 4:电话 5:会员)
params.inquiry_price = this.data.info.inquiry_price;
params.work_num_day = this.data.info.work_num_day;
const result = await api.putDoctorInquiryConfig(params).then(response => {
console.log(response);
this.myToast("修改成功");
return true;
}).then(res => {
setTimeout(() => {
wx.navigateBack();
}, 1000);
}).catch(errors => {
console.error(errors);
return false;
})
console.log("updateConfig result result: ", result);
return result;
}
})

View File

@ -0,0 +1,8 @@
{
"usingComponents": {
"te-nav-bar": "/commpents/te_navbar",
"van-stepper": "@vant/weapp/stepper/index",
"van-button": "@vant/weapp/button/index",
"t-toast": "tdesign-miniprogram/toast/toast"
}
}

View File

@ -0,0 +1,34 @@
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
<view class="checked_box">
<view class="price_steup_box">
<view class="price_steup_box_top">
<view class="price_steup_box_top_title">每日接诊数量</view>
<view class="price_steup_box_top_stepper">
<van-stepper value="{{ info.work_num_day }}" min="1" max="{{config.max_work_num_day}}" integer bind:change="onStepperChange" />
</view>
</view>
<view class="price_steup_box_bottom">
<view class="price_steup_box_bottom_title">问诊单价(元)</view>
<view class="price_steup_box_bottom_num">
<input class="weui-input" bindblur="onPriceChange" type="digit" value="{{ info.inquiry_price }}" placeholder="请输入问诊单价" />
<text class="price">元</text>
</view>
</view>
</view>
</view>
<view class="bottom">
<text class="bottom_txt">
提示:服务开通后,患者可以向您购买图文问诊进行问诊,接诊后需要与患者进行图文沟通
1、问诊价格每日仅限调整1次每自然月仅限调整5次
2、单价修改后立即生效不影响当日已生成的问诊订单
3、接诊后患者可与您在{{config.duration/60}}小时内进行{{config.times_number}}个回合沟通
4、如有参加公益问诊活动患者问诊订单价格以参加的公益问诊单价为准
</text>
</view>
<view class="go">
<van-button bind:click="updateConfig" color="#3CC7C0" custom-style="border-radius: 20rpx;font-size:30rpx;" type="primary" block>确定</van-button>
</view>
<t-toast id="t-toast" />

View File

@ -0,0 +1,88 @@
page{
background-color: #F6F6F6;
}
.checked_box{
margin-top: 30rpx;
}
.price_title{
width: 90vw;
margin: 20rpx auto 0 auto;
font-size: 32rpx;
margin-bottom: 20rpx;
/* font-family: "AlibabaPuHuiTi-2-55-Regular"; */
color: #333333;
}
.price_steup_box{
display: flex;
width: 90vw;
height: 180rpx;
margin: 0 auto;
border-radius: 20rpx;
flex-direction: column;
background-color: rgb(255, 255, 255);
}
.price_steup_box_top{
position: relative;
display: flex;
justify-content: space-between;
margin: 20rpx 20rpx 20rpx 30rpx;
align-items: center;
padding-bottom: 20rpx;
}
.price_steup_box_bottom{
position: relative;
display: flex;
justify-content: space-between;
margin: 0rpx 20rpx 0rpx 30rpx;
align-items: center;
}
.price_steup_box_top_title, .price_steup_box_bottom_title{
flex: 1;
font-size: 32rpx;
color: #333;
}
.price_steup_box_bottom_num{
flex: 1.5;
display: flex;
align-items: center;
}
.price_steup_box_top::after{
position: absolute;
box-sizing: border-box;
content: ' ';
pointer-events: none;
right: 0;
left: 0;
bottom: 0;
border-bottom: 1px solid var(--td-cell-border-color, var(--td-gray-color-3, #e7e7e7));
transform: scaleY(0.5);
}
.price_steup_box_top_stepper{
flex: 1;
text-align: right;
align-items: center;
}
.bottom{
width: 90vw;
margin: -20rpx auto;
color: #999;
letter-spacing: 2rpx;
font-size: 28rpx;
line-height: 40rpx;
}
.go{
position: fixed;
left: 50%;
transform: translateX(-50%);
bottom: 100rpx;
width: 90vw;
}
.weui-input{
color: red;
display: inline-block;
text-align: right;
}
.price{
text-align: center;
flex: 1;
}

View File

@ -291,6 +291,9 @@ Page({
if(inquiry_type < message_inquiry_type){
message_inquiry_type = inquiry_type;
}
//去重order_inquiry_id
let index = this.checkOrderInquiryId(session_list[inquiry_type - 1], order_inquiry_id);
if(index > -1) return;
let patient_family_data = cloudCustomDataJson.patient_family_data;
if(patient_family_data == undefined) return;
console.log("patient_family_data: ", patient_family_data);
@ -335,6 +338,12 @@ Page({
this.setData({has_data: true})
}
},
checkOrderInquiryId(list, order_inquiry_id){
let index = list.findIndex(item => {
return item.order_inquiry_id == order_inquiry_id;
})
return index;
},
onTabsChange(e){
console.log(e);
}

View File

@ -8,6 +8,8 @@
"t-badge": "tdesign-miniprogram/badge/badge",
"van-button": "@vant/weapp/button/index",
"van-empty": "@vant/weapp/empty/index",
"van-image": "@vant/weapp/image/index"
"van-image": "@vant/weapp/image/index",
"van-tab": "@vant/weapp/tab/index",
"van-tabs": "@vant/weapp/tabs/index"
}
}

View File

@ -26,7 +26,7 @@
</view>
<!-- <van-button color="#3CC7C0" custom-style="width: 92vw;margin: 0 auto;border-radius: 10rpx;" block wx:if="{{ !has_data }}">开通图文问诊</van-button> -->
<view class="tabs" wx:if="{{ has_data }}" >
<!-- <view class="tabs" wx:if="{{ has_data }}" >
<t-tabs
default-value="{{ message_inquiry_type }}"
sticky
@ -59,7 +59,7 @@
</t-tab-panel>
<t-tab-panel label="快速问诊" value="2" wx:if="{{data_list_2.length > 0}}">
<!-- 1:待支付 2:待分配 3:待接诊 4:接诊中 5:已完成 6:已结束 7:已取消 -->
<wenzhen-data
name="{{ item.patient_name }}"
sex="{{ item.patient_sex==1?'男':'女' }}"
@ -81,15 +81,6 @@
</t-tab-panel>
<t-tab-panel label="公益问诊" value="3" wx:if="{{data_list_3.length > 0}}">
<!-- <wenzhen-data
name="王五"
sex="女"
age="19"
desc="VVVVVVVV"
status="0"
status_text="待接诊"
note="xxx"
/> -->
<wenzhen-data
name="{{ item.patient_name }}"
@ -148,8 +139,84 @@
<van-empty description="暂无数据" wx:if="{{data_list_5.length == 0}}" />
</t-tab-panel>
</t-tabs>
</view>
</view> -->
<view class="tabs" wx:if="{{ has_data }}" >
<van-tabs active="{{ message_inquiry_type }}"
color="#3CC7C0"
title-active-color="#3CC7C0"
border="{{true}}"
>
<van-tab title="在线问诊" name="1" wx:if="{{data_list_1.length > 0}}">
<wenzhen-data
name="{{ item.patient_name }}"
sex="{{ item.patient_sex==1?'男':'女' }}"
age="{{ item.patient_age }}"
date="{{ item.message_send_time }}"
desc="{{ item.last_message_content.Text }}"
status="{{ item.inquiry_status }}"
order_inquiry_id="{{ item.order_inquiry_id }}"
inquiry_type="{{item.inquiry_type}}"
from_account="{{item.from_account}}"
status_text="{{ item.inquiry_status==1?'待支付':item.inquiry_status==2?'待分配':item.inquiry_status==3?'待接诊':item.inquiry_status==4?'接诊中':item.inquiry_status==5?'已完成':item.inquiry_status==6?'已结束':item.inquiry_status==7?'已取消':'其他' }}"
note="{{ item.inquiry_status==3?'不接诊24小时后自动取消':'' }}"
message_dot="{{item.message_dot}}"
wx:for="{{ data_list_1 }}"
/>
</van-tab>
<van-tab title="快速问诊" name="2" wx:if="{{data_list_2.length > 0}}">
<wenzhen-data
name="{{ item.patient_name }}"
sex="{{ item.patient_sex==1?'男':'女' }}"
age="{{ item.patient_age }}"
date="{{ item.message_send_time }}"
desc="{{ item.last_message_content.Text }}"
status="{{ item.inquiry_status }}"
order_inquiry_id="{{ item.order_inquiry_id }}"
inquiry_type="{{item.inquiry_type}}"
from_account="{{item.from_account}}"
status_text="{{ item.inquiry_status==1?'待支付':item.inquiry_status==2?'待分配':item.inquiry_status==3?'待接诊':item.inquiry_status==4?'接诊中':item.inquiry_status==5?'已完成':item.inquiry_status==6?'已结束':item.inquiry_status==7?'已取消':'其他' }}"
note="{{ item.inquiry_status==3?'不接诊24小时后自动取消':'' }}"
message_dot="{{item.message_dot}}"
wx:for="{{ data_list_2 }}"
/>
</van-tab>
<van-tab title="公益问诊" name="3" wx:if="{{data_list_3.length > 0}}">
<wenzhen-data
name="{{ item.patient_name }}"
sex="{{ item.patient_sex==1?'男':'女' }}"
age="{{ item.patient_age }}"
date="{{ item.message_send_time }}"
desc="{{ item.last_message_content.Text }}"
status="{{ item.inquiry_status }}"
order_inquiry_id="{{ item.order_inquiry_id }}"
inquiry_type="{{item.inquiry_type}}"
from_account="{{item.from_account}}"
status_text="{{ item.inquiry_status==1?'待支付':item.inquiry_status==2?'待分配':item.inquiry_status==3?'待接诊':item.inquiry_status==4?'接诊中':item.inquiry_status==5?'已完成':item.inquiry_status==6?'已结束':item.inquiry_status==7?'已取消':'其他' }}"
note="{{ item.inquiry_status==3?'不接诊24小时后自动取消':'' }}"
message_dot="{{item.message_dot}}"
wx:for="{{ data_list_3 }}"
/>
</van-tab>
<van-tab title="问诊购药" name="4" wx:if="{{data_list_4.length > 0}}">
<wenzhen-data
name="{{ item.patient_name }}"
sex="{{ item.patient_sex==1?'男':'女' }}"
age="{{ item.patient_age }}"
date="{{ item.message_send_time }}"
desc="{{ item.last_message_content.Text }}"
status="{{ item.inquiry_status }}"
order_inquiry_id="{{ item.order_inquiry_id }}"
inquiry_type="{{item.inquiry_type}}"
from_account="{{item.from_account}}"
status_text="{{ item.inquiry_status==1?'待支付':item.inquiry_status==2?'待分配':item.inquiry_status==3?'待接诊':item.inquiry_status==4?'接诊中':item.inquiry_status==5?'已完成':item.inquiry_status==6?'已结束':item.inquiry_status==7?'已取消':'其他' }}"
note="{{ item.inquiry_status==3?'不接诊24小时后自动取消':'' }}"
message_dot="{{item.message_dot}}"
wx:for="{{ data_list_4 }}"
/>
</van-tab>
</van-tabs>
</view>
<view style="height: 200rpx;"></view>

View File

@ -48,4 +48,8 @@ page{
font-size: 24rpx;
color: #999999;
margin-top: 30rpx;
}
}
.badge--t-badge {
vertical-align: baseline !important;
}

View File

@ -9,22 +9,70 @@ Page({
title: '问诊订单', //导航栏 中间的标题
},
height: app.globalData.height,
result: ['a'],
page: 1,
result: [],
order_list:[],
current_page: 0,
total: 0,
per_page: 10,
order_list: [],
total: 0
last_page: 0,
allchecked: false,
select_order_length: 0,
select_order_amount: 0,
select_order_inquiry_id: []
},
onChange(event) {
console.log("onChange: ",event)
this.setData({
result: event.detail,
});
this.resetSelectOrder();
this.setData({
allchecked: this.data.result.length == this.data.order_list.length
})
},
onLoad(){
onAllChange(event) {
console.log("onAllChange: ",event)
this.setData({
allchecked: event.detail
})
if(event.detail == true){
this.data.order_list.forEach((item,index) => {
this.data.result.push(""+index);
})
this.setData({
result: this.data.result
})
}
if(event.detail == false){
this.setData({
result: []
})
}
this.resetSelectOrder();
},
resetSelectOrder(e){
let result = this.data.result;
let select_order_amount = 0;
let select_order_inquiry_id = [];
result.forEach(item => {
select_order_amount = Number(select_order_amount) + Number(this.data.order_list[item].payment_amount_total);
select_order_inquiry_id.push(this.data.order_list[item].order_inquiry_id);
})
this.setData({
select_order_length: result.length,
select_order_amount: select_order_amount,
select_order_inquiry_id: select_order_inquiry_id
})
},
selectOrder(e){
const { index } = e.currentTarget.dataset;
const checkbox = this.selectComponent(`.checkboxes-${index}`);
checkbox.toggle();
},
getDoctorWithdrawalOrder(){
//可提现问诊订单列表
let params = {};
params.page = this.data.page;
params.page = this.data.current_page + 1;
params.per_page = this.data.per_page;
api.getDoctorWithdrawalOrder(params).then(response => {
console.log(response);
@ -37,6 +85,27 @@ Page({
})
}
}).catch(errors => {console.error(errors);})
},
onShow(){
this.getDoctorWithdrawalOrder();
this.resetSelectOrder();
},
onReachBottom() {
console.log('===触底了!!===');
if(this.data.current_page < this.data.last_page){//最后一页时停止分页
this.getDoctorWithdrawalOrder()
}
},
confirmOrder(){
const select_order_inquiry_id = this.data.select_order_inquiry_id;
console.log(select_order_inquiry_id);
wx.showToast({
title: '缺少接口',
icon: "error",
duration: 1500
})
setTimeout(() => {
wx.navigateBack();
}, 2000);
}
})

View File

@ -6,5 +6,6 @@
"van-checkbox-group": "@vant/weapp/checkbox-group/index",
"van-button": "@vant/weapp/button/index",
"van-empty": "@vant/weapp/empty/index"
}
},
"onReachBottomDistance": 100
}

View File

@ -1,35 +1,18 @@
<!-- 问诊订单 -->
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
<view class="container" style="height: calc(100vh - 96rpx - {{height}}px);">
<view class="container">
<van-checkbox-group value="{{ result }}" bind:change="onChange">
<view class="order_list">
<!-- <view class="order_item">
<view class="order_item" wx:for="{{order_list}}">
<view class="order_item_checkbox">
<van-checkbox name="a"></van-checkbox>
<van-checkbox name="{{index}}" class="checkboxes-{{index}}" checked-color="#3CC7C0"></van-checkbox>
</view>
<view class="order_item_content">
<view class="order_item_content_top">快速问诊</view>
<view class="order_item_content_data">
<view class="order_id">订单编号:<text style="font-size: 30rpx;color: #666666;">2131231xxxx</text></view>
<view class="order_id">就诊患者:<text style="font-size: 30rpx;color: #666666;">张三三25岁</text></view>
<view class="order_id">接诊时间:<text style="font-size: 30rpx;color: #666666;">2022-12-30 112323</text></view>
<view class="order_id">结束时间:<text style="font-size: 30rpx;color: #666666;">2022-12-12 112323</text></view>
<view class="order_id">订单金额:<text style="font-size: 30rpx;color: #666666;">¥1212.00元</text></view>
<view class="order_id">预计收入:<text style="font-size: 30rpx;color: #666666;">¥112.00元</text></view>
</view>
</view>
</view> -->
<view class="order_item" wx:for="{{order_list}}" wx:for-index="idx">
<view class="order_item_checkbox">
<van-checkbox name="a{{idx}}"></van-checkbox>
</view>
<view class="order_item_content">
<view class="order_item_content" data-index="{{index}}" bindtap="selectOrder">
<!-- 1:专家问诊 2:快速问诊 3:公益问诊 4:问诊购药) -->
<view class="order_item_content_top">{{item.inquiry_type}}</view>
<view class="order_item_content_top">{{item.inquiry_type==1?'专家问诊':item.inquiry_type==2?'快速问诊':item.inquiry_type==3?'公益问诊':item.inquiry_type==4?'问诊购药':'未知'}}</view>
<view class="order_item_content_data">
<view class="order_id">订单编号:<text style="font-size: 30rpx;color: #666666;">{{item.inquiry_no }}</text></view>
<view class="order_id">就诊患者:<text style="font-size: 30rpx;color: #666666;">{{item.patient_name}}{{item.patient_sex}}{{item.patient_age}}岁)</text></view>
<view class="order_id">订单编号:<text style="font-size: 30rpx;color: #666666;">{{item.order_inquiry_id }}</text></view>
<view class="order_id">就诊患者:<text style="font-size: 30rpx;color: #666666;">{{item.patient_name}}{{item.patient_sex==1?'男':'女'}}{{item.patient_age}}岁)</text></view>
<view class="order_id">接诊时间:<text style="font-size: 30rpx;color: #666666;">{{item.reception_time}}</text></view>
<view class="order_id">结束时间:<text style="font-size: 30rpx;color: #666666;">{{item.finish_time}}</text></view>
<view class="order_id">订单金额:<text style="font-size: 30rpx;color: #666666;">¥{{item.amount_total}}元</text></view>
@ -37,19 +20,21 @@
</view>
</view>
</view>
<van-empty description="暂无数据" wx:if="{{order_list.length == 0}}" />
</view>
</van-checkbox-group>
<van-empty description="暂无数据" wx:if="{{order_list.length == 0}}" />
<view class="bottom">
<view class="bottom_checkbox">
<van-checkbox value="{{ checked }}" bind:change="onChange">全选</van-checkbox>
<van-checkbox value="{{ allchecked }}" checked-color="#3CC7C0" bind:change="onAllChange">全{{allchecked?'不':''}}选</van-checkbox>
</view>
<view class="bottom_content">共10个订单金额 <text style="color: red;font-size: 30rpx;">¥302元 </text> </view>
<view class="bottom_content">共{{select_order_length}}个订单,金额: <text style="color: red;font-size: 30rpx;">¥{{select_order_amount}}元 </text> </view>
<view class="bottom_btn">
<van-button block color="linear-gradient(310deg, #FF931A 0%, #FF931A 0%, #FCB75D 100%);">
<van-button
bind:click="confirmOrder"
disabled="{{result.length == 0}}"
block
color="{{result.length == 0?'#999':'linear-gradient(310deg, #FF931A 0%, #FF931A 0%, #FCB75D 100%)'}};">
确定
</van-button>
</view>

View File

@ -1,13 +1,15 @@
.container{
page{
background-color: #F4F4F4;
}
.container{
width: 100vw;
height: 100vh;
}
.order_list{
display: flex;
width: 92vw;
margin: 0 auto;
flex-direction: column;
padding-bottom: 180rpx;
}
.order_item{
display: flex;
@ -50,16 +52,18 @@
bottom: 0;
width: 100vw;
display: flex;
background-color: #fff;
background-color: rgb(255, 255, 255);
align-items: center;
z-index: 99;
padding-bottom: 50rpx;
height: 100rpx;
}
.bottom_checkbox{
flex: 2;
flex: 2.2;
font-size: 30rpx;
display: flex;
justify-content: center;
justify-content: left;
padding-left: 4vw;
}
.bottom_content{
flex: 6;
@ -71,7 +75,6 @@
flex: 2;
justify-content: flex-end;
font-size: 34rpx;
background-color: limegreen;
}

View File

@ -23,19 +23,25 @@
<view class="checked_box">
<view class="price_title">价格设置</view>
<view class="price_steup_box">
<view class="price_steup_box_top">
<view class="price_steup_box_top_title">每日接诊数量</view>
<view class="price_steup_box_top_stepper">
<van-stepper value="{{ info.work_num_day }}" max="{{config.max_work_num_day}}" integer bind:change="onStepperChange" />
<van-cell size="large" custom-style="font-size:32rpx;border-radius: 20rpx;"
title="每日接诊数量" is-link
border="{{true}}"
url="/Pages/yishi/yizhensetupprice/index"
>
<view class="num">
{{ info.work_num_day }}
</view>
</view>
</van-cell>
<view class="price_steup_box_bottom">
<van-cell size="large" custom-style="font-size:32rpx;border-radius: 20rpx;"
title="问诊单价(元)" is-link
border="{{false}}"
value="{{ amountText }}"
bindtap="onAmountPicker"
/>
url="/Pages/yishi/yizhensetupprice/index"
>
<view class="price">
{{ amountText }}
</view>
</van-cell>
</view>
</view>
</view>

View File

@ -116,7 +116,9 @@ page{
.t-picker__confirm,.t-class-confirm{
color: #49B9AD !important;
}
.van-cell__value{
font-size: 32rpx !important;
color: red !important;
.num{
color: #000;
}
.price{
color: red;
}

View File

@ -0,0 +1,169 @@
import { API } from './../../../utils/network/api'
import Toast from '@vant/weapp/toast/toast';
let api = new API()
const app = getApp()
Page({
data: {
navbarData: {
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
title: '设置价格', //导航栏 中间的标题
},
height: app.globalData.height,
checked: true,
open_note: "已开启,患者可以向您发起图文问诊",
close_note: "已关闭,暂不接收义诊订单",
note: "",
amountText: "选择金额(元)",
amountValue: "",
inquiry_type: 3,
inquiry_mode: 1,
amounts: [],
info:{
is_open: false,
inquiry_price: 0,
work_num_day: 0
},
config:{
"max_work_num_day": 30,
"min_inquiry_price": 0,
"max_inquiry_price": 0,
"default_inquiry_price": 0,
"times_number": 10,
"duration": 1440,
"system_inquiry_price": [
"0",
"5",
"10"
]
}
},
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:会员)
//获取医生我的账户数据
api.getDoctorInquiryConfig(params).then(response => {
console.log(response);
this.setData({
info: response.data.info,
config: response.data.config,
})
this.formatAmounts();
this.formatAmountValue();
}).then(re =>{
let is_open = this.data.info.is_open;
let note = this.data.note;
if(is_open == 1) note = this.data.open_note;
if(is_open == 0) note = this.data.close_note;
this.setData({
note: note
})
}).catch(errors => {console.error(errors);})
},
formatAmounts(){
let list = this.data.config.system_inquiry_price.map(item => {
let it = {};
it.label = item+" 元";
it.value = item;
return it;
});
this.setData({
amounts: list
})
},
formatAmountValue(){
let val = Math.trunc(this.data.info.inquiry_price);
let valarr = [''+val+'']
this.setData({
amountValue: valarr,
amountText: val+" 元"
})
},
onChange({ detail }) {
console.log("onChange: ", detail);
if(detail){
this.setData({ note: this.data.open_note });
}else{
this.setData({ note: this.data.close_note });
}
this.setData({ "info.is_open": detail });
//修改开关
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:会员)
params.is_open = detail?1:0;
api.putDoctorInquiryOpen(params).then(response => {
console.log(response);
}).then(()=>{
if(detail){
wx.requestSubscribeMessage({
tmplIds: ['G1RIs0RYqsTQ2CuPQWalIGVet9sd_d371YtDVhfBsFg'],
success (res) {
console.log(res);//同意授权
}
})
}
}).catch(errors => {console.error(errors);})
},
putDoctorInquiryConfig(){
//修改医生问诊配置
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:会员)
params.inquiry_price = this.data.info.inquiry_price;
params.work_num_day = this.data.info.work_num_day;
api.putDoctorInquiryConfig(params).then(response => {
console.log(response);
Toast.success("修改成功");
setTimeout(() => {
wx.navigateBack();
}, 1000);
}).catch(errors => {console.error(errors);})
},
onStepperChange(event) {
console.log(event.detail);
this.setData({
"info.work_num_day": event.detail
});
},
onAmountPicker() {
this.setData({ amountVisible: true });
},
onColumnChange(e) {
console.log('picker pick:', e);
},
onPickerChange(e) {
console.log(e);
const { key } = e.currentTarget.dataset;
const { value } = e.detail;
console.log('picker change:', e.detail);
this.setData({
[`${key}Visible`]: false,
[`${key}Value`]: value,
[`${key}Text`]: value+' 元',
"info.inquiry_price": value[0]
});
},
onPickerCancel(e) {
const { key } = e.currentTarget.dataset;
console.log(e, '取消');
console.log('picker1 cancel:');
this.setData({
[`${key}Visible`]: false,
});
},
go(e){
let url = e.currentTarget.dataset.url;
wx.switchTab({
url: url
})
}
})

View File

@ -0,0 +1,13 @@
{
"component": true,
"usingComponents": {
"te-nav-bar": "/commpents/te_navbar",
"t-picker": "tdesign-miniprogram/picker/picker",
"t-picker-item": "tdesign-miniprogram/picker-item/picker-item",
"van-cell": "@vant/weapp/cell/index",
"van-cell-group": "@vant/weapp/cell-group/index",
"van-stepper": "@vant/weapp/stepper/index",
"van-button": "@vant/weapp/button/index",
"van-toast": "@vant/weapp/toast/index"
}
}

View File

@ -0,0 +1,49 @@
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
<view class="container">
<view class="checked_box">
<view class="price_steup_box">
<view class="price_steup_box_top">
<view class="price_steup_box_top_title">每日接诊数量</view>
<view class="price_steup_box_top_stepper">
<van-stepper value="{{ info.work_num_day }}" max="{{config.max_work_num_day}}" integer bind:change="onStepperChange" />
</view>
</view>
<view class="price_steup_box_bottom">
<van-cell size="large" custom-style="font-size:32rpx;border-radius: 20rpx;"
title="问诊单价(元)" is-link
border="{{false}}"
value="{{ amountText }}"
bindtap="onAmountPicker"
/>
</view>
</view>
</view>
<view class="bottom">
<text class="bottom_txt">
提示:服务开通后,患者可以通过公益问诊找到您,增加您的接诊量。
1、公益问诊价格为平台统一设定的几个需要您自己选择单价
2、接诊后{{config.duration/60}}小时内和患者{{config.times_number}}个回合沟通。
</text>
</view>
<view class="go">
<van-button color="#3CC7C0" bind:click="putDoctorInquiryConfig" custom-style="border-radius: 20rpx;font-size:30rpx;" type="primary" block>确定</van-button>
</view>
<t-picker
visible="{{amountVisible}}"
value="{{amountValue}}"
data-key="amount"
title="选择金额"
cancelBtn="取消"
confirmBtn="确认"
bindchange="onPickerChange"
bindpick="onColumnChange"
bindcancel="onPickerCancel"
>
<t-picker-item options="{{amounts}}"></t-picker-item>
</t-picker>
<van-toast id="van-toast" />
</view>

View File

@ -0,0 +1,123 @@
page{
background-color: #F6F6F6;
}
.container{
width: 100vw;
padding-top: 30rpx;
}
.switch_box{
display: flex;
flex-direction: column;
width: 90vw;
/* height: 500rpx; */
border-radius: 20rpx;
margin: 30rpx auto;
background-color: rgb(255, 255, 255);
}
.switch_box_top{
position: relative;
display: flex;
/* height: 300rpx; */
flex-direction: column;
padding: 30rpx 30rpx 20rpx 30rpx;
}
.switch_box_top::after{
position: absolute;
box-sizing: border-box;
content: ' ';
pointer-events: none;
right: 0;
left: 32rpx;
bottom: 0;
border-bottom: 1px solid var(--td-cell-border-color, var(--td-gray-color-3, #e7e7e7));
transform: scaleY(0.5);
}
.switch_box_item{
display: flex;
justify-content: space-between;
align-items: center;
}
.switch_box_item_name{
flex: 1;
font-size: 32rpx;
}
.switch_box_item_btn{
flex: 1;
text-align: right;
}
.switch_box_note{
color: #999999;
font-size: 24rpx;
}
.help{
margin-bottom: 20rpx;
}
.price_title{
width: 90vw;
margin: 0 auto;
font-size: 32rpx;
margin-bottom: 20rpx;
/* font-family: "AlibabaPuHuiTi-2-55-Regular"; */
color: #333333;
}
.price_steup_box{
display: flex;
width: 90vw;
margin: 0 auto;
border-radius: 20rpx;
flex-direction: column;
background-color: rgb(255, 255, 255);
}
.price_steup_box_top{
position: relative;
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--cell-vertical-padding,20rpx) var(--cell-horizontal-padding,32rpx);
}
.price_steup_box_top_title, .price_steup_box_bottom_title{
flex: 1;
font-size: 32rpx;
color: #333;
}
.price_steup_box_top::after{
position: absolute;
box-sizing: border-box;
content: ' ';
pointer-events: none;
right: 0;
left: 0;
bottom: 0;
border-bottom: 1px solid var(--td-cell-border-color, var(--td-gray-color-3, #e7e7e7));
transform: scaleY(0.5);
}
.price_steup_box_top_stepper{
flex: 1;
text-align: right;
align-items: center;
}
.bottom{
width: 90vw;
margin: -20rpx auto;
color: #999;
letter-spacing: 2rpx;
font-size: 28rpx;
line-height: 40rpx;
}
.go{
position: fixed;
left: 50%;
transform: translateX(-50%);
bottom: 100rpx;
width: 90vw;
}
.t-picker__confirm,.t-class-confirm{
color: #49B9AD !important;
}
.van-cell__value{
font-size: 32rpx !important;
color: red !important;
}

View File

@ -40,6 +40,10 @@ Component({
has_emoji:{
type: Boolean,
value: false,
},
baseInfo: {
type: Object,
value: {}
}
},
@ -317,10 +321,12 @@ Component({
cloudCustomDataJson = JSON.parse(cloudCustomData);
}
let message_rounds = 0;
let patient_family_data = "";
let patient_family_data = {};
patient_family_data.patient_name = this.data.baseInfo.patient_family_name;
patient_family_data.patient_sex = this.data.baseInfo.patient_family_sex;
patient_family_data.patient_age = this.data.baseInfo.patient_family_age;
if(cloudCustomDataJson){
message_rounds = cloudCustomDataJson.message_rounds;
patient_family_data = cloudCustomDataJson.patient_family_data
}
const mycloudCustomData = JSON.stringify({
@ -577,10 +583,12 @@ Component({
cloudCustomDataJson = JSON.parse(cloudCustomData);
}
let message_rounds = 0;
let patient_family_data = "";
let patient_family_data = {};
patient_family_data.patient_name = this.data.baseInfo.patient_family_name;
patient_family_data.patient_sex = this.data.baseInfo.patient_family_sex;
patient_family_data.patient_age = this.data.baseInfo.patient_family_age;
if(cloudCustomDataJson){
message_rounds = cloudCustomDataJson.message_rounds;
patient_family_data = cloudCustomDataJson.patient_family_data
}
const to = this.getToAccount();

View File

@ -82,7 +82,7 @@
display: flex;
flex-wrap: wrap;
width: 100vw;
/* height: 450rpx; */
height: 100px;
margin-left: 14rpx;
margin-right: 14rpx;
}

View File

@ -149,7 +149,6 @@ Component({
},
// 获取消息列表
getMessageList(conversation) {
console.log("getMessageListgetMessageListgetMessageList")
if (!this.data.isCompleted) {
wx.$TUIKit.getMessageList({
@ -166,8 +165,9 @@ Component({
// console.log(item)
//去除自定义消息
// if(HMM_type == "TIMCustomElem") return;
let show_avatar = this.checkShowAvatar(item);
item.show_avatar = show_avatar;
if(!this.checkShowAvatar(item)){
item.no_avatar = true;
}
HMM_messageList_del.push(item);
})
@ -182,6 +182,7 @@ Component({
this.getMessageList(conversation);
}
this.$handleMessageRender(this.data.messageList, messageList);
}).then(res => {
});
}
},
@ -247,7 +248,9 @@ Component({
// 收到的消息
$onMessageReceived(value) {
const message = value.data[0];
message.show_avatar = this.checkShowAvatar(message);
if(!this.checkShowAvatar(message)){
message.no_avatar = true;
}
wx.$TUIKit.setMessageRead({ conversationID: this.data.conversation.conversationID }).then(() => {
logger.log('| MessageList | setMessageRead | ok');
});
@ -271,7 +274,7 @@ Component({
});
} catch (error) {
}
if ((item.type === MESSAGE_TYPE_TEXT.TIM_CUSTOM_ELEM && this.data.typingMessage.businessID !== BUSINESS_ID_TEXT.USER_TYPING)) {
if ((item.type === MESSAGE_TYPE_TEXT.TIM_CUSTOM_ELEM && this.data.typingMessage.businessID !== BUSINESS_ID_TEXT.USER_TYPING) || item.type !== MESSAGE_TYPE_TEXT.TIM_CUSTOM_ELEM) {
this.data.showNewMessageCount.push(message);
this.setData({
showNewMessageCount: this.data.showNewMessageCount,
@ -325,9 +328,9 @@ Component({
console.log("自己的消息上屏 updateMessageList: ", message);
console.log(message);
//自己的消息有头像
message.show_avatar = this.checkShowAvatar(message);
console.log(message.show_avatar)
console.log(message.flow)
if(!this.checkShowAvatar(message)){
message.no_avatar = true;
}
if (message.conversationID !== this.data.conversation.conversationID) return;
wx.$TUIKit.setMessageRead({ conversationID: this.data.conversation.conversationID }).then(() => {
logger.log('| MessageList | setMessageRead | ok');

View File

@ -34,7 +34,7 @@
</view>
<TipMessage wx:if="{{item.type === 'TIMGroupTipElem'}}" message="{{item}}"/>
<view wx:if="{{item.type !== 'TIMGroupTipElem'}}" class="{{item.flow === 'out' ? 't-self-message':'t-recieve-message'}}" >
<image class="t-message-avatar" wx:if="{{item.flow === 'in' && item.show_avatar }}" src="{{item.avatar || 'https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/default_photo.png'}}" data-value="{{item}}" bindtap="getMemberProfile" />
<image class="t-message-avatar" wx:if="{{item.flow === 'in' && !item.no_avatar }}" src="{{item.avatar || 'https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/default_photo.png'}}" data-value="{{item}}" bindtap="getMemberProfile" />
<view class="read-receipts" wx:if="{{conversation.type === 'C2C' && item.flow==='out' }}">
<!-- <view wx:if="{{item.isPeerRead}}" >已读</view>
<view wx:else>未读</view> -->
@ -53,7 +53,7 @@
<MergerMessage wx:if="{{item.type === 'TIMRelayElem'}}" message="{{item}}" isMine="{{item.flow === 'out'}}"/>
</view>
<image class="t-message-avatar" wx:if="{{item.flow === 'out' && item.show_avatar }}" src="{{item.avatar || 'https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/default_photo.png'}}" data-value="{{item}}" bindtap="getMemberProfile"/>
<image class="t-message-avatar" wx:if="{{item.flow === 'out' && !item.no_avatar }}" src="{{item.avatar || 'https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/default_photo.png'}}" data-value="{{item}}" bindtap="getMemberProfile"/>
</view>
</view>
</view>

View File

@ -78,28 +78,9 @@ Component({
showTips: true,
});
}
let rect = null;
if (wx.getMenuButtonBoundingClientRect) {
rect = wx.getMenuButtonBoundingClientRect();
}
console.log("rect: ", rect)
wx.getSystemInfo({
success: (res) => {
const { statusBarHeight } = wx.getSystemInfoSync();
console.log("statusBarHeight: ", statusBarHeight);
console.log("${rect.height}px: ", `${rect.height}`);
let height = Number.parseInt(statusBarHeight) + Number.parseInt(`${rect.height}`) + 50;
this.setData({
navbar_height: height
})
},
fail: (err) => {
console.error('navbar 获取系统信息失败', err);
},
});
this.getNavbarHeight()
},
ready() {
//修改为组件传值
// this.getInquiryMessageBasic()
@ -157,6 +138,30 @@ Component({
* 组件的方法列表
*/
methods: {
getNavbarHeight(addHeight){
let rect = null;
if (wx.getMenuButtonBoundingClientRect) {
rect = wx.getMenuButtonBoundingClientRect();
}
console.log("rect: ", rect)
wx.getSystemInfo({
success: (res) => {
const { statusBarHeight } = wx.getSystemInfoSync();
console.log("statusBarHeight: ", statusBarHeight);
console.log("${rect.height}px: ", `${rect.height}`);
let height = Number.parseInt(statusBarHeight) + Number.parseInt(`${rect.height}`) + 50;
if(addHeight){
height = height + addHeight
}
this.setData({
navbar_height: height
})
},
fail: (err) => {
console.error('navbar 获取系统信息失败', err);
},
});
},
//结束问诊
putDoctorInquiryFinish() {
this.setData({
@ -230,6 +235,7 @@ Component({
sendMessage(event) {
// 将自己发送的消息写进消息列表里面
this.selectComponent('#MessageList').updateMessageList(event.detail.message);
this.getNavbarHeight();
},
showMessageErrorImage(event) {
this.selectComponent('#MessageList').sendMessageError(event);
@ -273,10 +279,13 @@ Component({
this.setData({
input_area_style: "position: absolute; bottom: 30px;"
})
this.getNavbarHeight(100);
this.selectComponent('#MessageList').handleJumpNewMessage();
}else{
this.setData({
input_area_style: ""
input_area_style: "",
})
this.getNavbarHeight();
}
},
// 监听键盘,获取焦点时将输入框推到键盘上方

View File

@ -32,7 +32,7 @@
</view>
<view class="input-area" style="{{input_area_style}}" wx:if="{{baseInfo.inquiry_status == 4}}">
<view class="message-input" style="{{viewData.style}}" wx:if="{{showChat}}">
<MessageInput bind:myhandleExtensions="myhandleExtensions" id="MessageInput" inquiry_type="{{inquiry_type}}" order_inquiry_id="{{order_inquiry_id}}" conversation="{{conversation}}" hasCallKit="{{hasCallKit}}" bind:sendMessage="sendMessage" bind:downKeysBoards="downKeysBoards" bind:pullKeysBoards="pullKeysBoards" bind:showMessageErrorImage="showMessageErrorImage"
<MessageInput bind:myhandleExtensions="myhandleExtensions" id="MessageInput" inquiry_type="{{inquiry_type}}" baseInfo="{{baseInfo}}" order_inquiry_id="{{order_inquiry_id}}" conversation="{{conversation}}" hasCallKit="{{hasCallKit}}" bind:sendMessage="sendMessage" bind:downKeysBoards="downKeysBoards" bind:pullKeysBoards="pullKeysBoards" bind:showMessageErrorImage="showMessageErrorImage"
bind:handleCall="handleCall" ></MessageInput>
</view>
</view>

8
app.js
View File

@ -105,6 +105,7 @@ App({
});
wx.$TUIKit.off(wx.$TUIKitTIM.EVENT.SDK_READY, this.onSDKReady);
wx.$TUIKit.setLogLevel(3);//设置日志级别
wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.SDK_READY, this.onSDKReady, this);
}).then(()=>{
@ -116,8 +117,11 @@ App({
if(!wenzhen_info) wx.setStorageSync(userID+'_wenzhen_info', "");
if(!my_info) wx.setStorageSync(userID+'_my_info', "");
}).catch(errors => {console.error(errors);})
},
imLogout(){
if(wx.$TUIKit){
wx.$TUIKit.logout();
}
},
onSDKReady(){
console.log("onSDKReady from app.js");

View File

@ -51,7 +51,9 @@
"Pages/yishi/addzhenduan/index",
"Pages/yishi/wenzhen_v2/wenzhen",
"Pages/webpage/index",
"Pages/kickedout/index"
"Pages/kickedout/index",
"Pages/yishi/onlinesetupprice/index",
"Pages/yishi/yizhensetupprice/index"
],
"window": {
"navigationBarBackgroundColor": "#ffffff",

View File

@ -605,9 +605,13 @@ Component({
this.triggerEvent('showPageMeta');
},
onZhuanChangVisibleChange(e) {
console.log("onZhuanChangVisibleChange:", e.detail.visible)
this.setData({
zhuanchang_show: e.detail.visible,
});
if(e.detail.visible == false){
this.triggerEvent('hidePageMeta');
}
},
onshowJianJieNote(e){
e.detail // 自定义组件触发事件时提供的 detail 对象

View File

@ -2,7 +2,7 @@
background-color: #fff;
display: flex;
flex-direction: column;
margin-top: 20rpx;
margin-bottom: 20rpx;
}
.content_1,.content_3,.content_2{
display: flex;
@ -16,6 +16,8 @@
.name{
font-size: 30rpx;
color: #666666;
height: 50rpx;
line-height: 50rpx;
}
.date{
font-size: 30rpx;
@ -72,4 +74,14 @@
.dialog_confirm_btn{
border-top: 1px solid #E9E9E9;
color: #3CC7C0;
}
.t-badge__content-text {
line-height: 70rpx !important;
background-color: #E34D59 !important;
}
.t-badge{
background-color: burlywood !important;
}
.t-badge__content,.t-class-content{
background-color: crimson !important;
}

View File

@ -10,7 +10,7 @@
"list": [
{
"name": "",
"pathName": "Pages/kickedout/index",
"pathName": "Pages/index/index",
"query": "",
"launchMode": "default",
"scene": null