This commit is contained in:
haomingming 2023-03-28 20:52:22 +08:00
parent 69df3bf6b3
commit 5ba50e4e61
58 changed files with 1122 additions and 347 deletions

View File

@ -21,11 +21,19 @@ Page({
}); });
}, },
phone_change(e){ phone_change(e){
let phone = this.data.phone; let phone = e.detail.value;
if(phone != ""){ this.setData({
phone: e.detail.value
})
let phone_reg = /^1[3-9]\d{9}$/;
if(phone_reg.test(phone)){
this.setData({ this.setData({
btn_color: "#3CC7C0" btn_color: "#3CC7C0"
}) })
}else{
this.setData({
btn_color: "#ccc"
})
} }
}, },
getCodePhone(e){ getCodePhone(e){
@ -139,7 +147,7 @@ Page({
}) })
}else{ }else{
_this.setData({ _this.setData({
btn_msg: "获取验证码", btn_msg: "重新获取验证码",
btn_disabled: false btn_disabled: false
}) })
clearInterval(time_index); clearInterval(time_index);

View File

@ -3,22 +3,21 @@
<van-image height="196rpx" src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/logo2.png" fit="heightFix" /> <van-image height="196rpx" src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/logo2.png" fit="heightFix" />
</view> </view>
<view class="fields"> <view class="fields">
<van-field <view class="phone_box">
model:value="{{ phone }}" <view class="country">+86</view>
label="+86" <view class="phone">
placeholder="请输入手机号" <input placeholder-style="color:#c8c9cc;font-size:34rpx;" type="number" confirm-type="next" bindinput="phone_change" auto-focus placeholder="请输入手机号"/>
type="number" </view>
bind:input="phone_change" </view>
input-align="left"
/>
<van-field <van-field
model:value="{{ sms }}" model:value="{{ sms }}"
center center
clearable clearable
type="number" type="number"
label="短信验证码" label=""
placeholder="请输入短信验证码" placeholder="请输入短信验证码"
use-button-slot use-button-slot
placeholder-style="color:#c8c9cc;font-size:30rpx;"
> >
<van-button disabled="{{btn_disabled}}" color="{{btn_color}}" slot="button" size="small" round plain type="primary" bind:click="getCodePhone"> <van-button disabled="{{btn_disabled}}" color="{{btn_color}}" slot="button" size="small" round plain type="primary" bind:click="getCodePhone">
{{btn_msg}} {{btn_msg}}

View File

@ -10,4 +10,44 @@
.btn{ .btn{
font-size: 28rpx; font-size: 28rpx;
color: #666666; color: #666666;
}
.van-cell {
padding: 32rpx !important;
font-size: 34rpx !important;
}
.mylabel{
background-color: red;
width: 100rpx !important;
}
.label-class{
background-color: royalblue !important;
}
.phone_box{
display: flex;
padding: 32rpx;
position: relative;
}
.country{
flex: 1;
height: 24px;
line-height: 24px;
}
.phone{
flex: 7;
height: 24px;
}
.phone_box:after {
border-bottom: 1px solid #ebedf0;
bottom: 0;
box-sizing: border-box;
content: " ";
left: 16px;
pointer-events: none;
position: absolute;
right: 16px;
transform: scaleY(.5);
transform-origin: center;
border-bottom-width: 1px;
border-bottom-style: solid;
border-bottom-color: rgb(235, 237, 240);
} }

View File

@ -9,20 +9,38 @@ Page({
}, },
height: app.globalData.height, height: app.globalData.height,
order_inquiry_id: "", order_inquiry_id: "",
case_detail: {} case_detail: {},
imglist: []
}, },
onLoad(options){ onLoad(options){
this.setData({ this.setData({
order_inquiry_id: options.order_inquiry_id order_inquiry_id: options.order_inquiry_id
}) })
},
onShow(){
//获取患者问诊病例 //获取患者问诊病例
api.getDoctorInquiryCase({order_inquiry_id: this.data.order_inquiry_id}).then(response => { api.getDoctorInquiryCase({order_inquiry_id: this.data.order_inquiry_id}).then(response => {
console.log(response); console.log(response);
this.setData({ this.setData({
case_detail: response.data case_detail: response.data
}) })
}).then(res => {
this.formatImgList();
}).catch(errors => {console.error(errors);}) }).catch(errors => {console.error(errors);})
} },
formatImgList(){
let diagnose_images = this.data.case_detail.diagnose_images;
let img_list = [];
diagnose_images.forEach(item => {
let img = {};
img.isImage = true;
img.url = item;
img_list.push(img);
})
this.setData({
imglist: img_list
})
},
onShow(){
},
}) })

View File

@ -2,6 +2,6 @@
"component": true, "component": true,
"usingComponents": { "usingComponents": {
"te-nav-bar": "/commpents/te_navbar", "te-nav-bar": "/commpents/te_navbar",
"t-image": "tdesign-miniprogram/image/image" "van-uploader": "@vant/weapp/uploader/index"
} }
} }

View File

@ -48,46 +48,47 @@
</view> </view>
</view> </view>
<view class="disease_box_item"> <view class="disease_box_item">
<view class="title">问诊本人复诊凭证(病例/处方单/检查报告/住院单可任选其一)</view> <view class="title">复诊凭证(病例/处方单/检查报告/住院单)</view>
<view class="conent">无</view> <view class="conent" wx:if="{{case_detail.diagnose_images.length == 0}}">无</view>
</view> </view>
<view class="img_box"> <view class="img_box">
<t-image id="loading-img" shape="round" src="{{item.url}}" width="72" height="72" wx:for="{{case_detail.diagnose_images}}"/> <van-uploader image-fit="aspectFit" file-list="{{ imglist }}" show-upload="{{false}}" deletable="{{false}}" />
</view> </view>
</view> </view>
</view> </view>
<view class="main_title">其他信息</view> <view class="main_title">其他信息</view>
<view class="data_box orther"> <view class="data_box orther">
<view class="disease_box"> <view class="disease_box">
<view class="disease_box_item"> <view class="disease_box_item" wx:if="{{case_detail.is_allergy_history != 0}}">
<view class="title">过敏史:</view> <view class="title">过敏史:</view>
<view class="conent">{{case_detail.is_allergy_history==0?'否':case_detail.allergy_history}}</view> <view class="conent">{{case_detail.is_allergy_history==0?'否':case_detail.allergy_history}}</view>
</view> </view>
<view class="disease_box_item"> <view class="disease_box_item" wx:if="{{case_detail.is_family_history != 0}}">
<view class="title">家族史:</view> <view class="title">家族史:</view>
<view class="conent">{{case_detail.is_family_history==0?'否':case_detail.family_history}}</view> <view class="conent">{{case_detail.is_family_history==0?'否':case_detail.family_history}}</view>
</view> </view>
<view class="disease_box_item"> <view class="disease_box_item" wx:if="{{case_detail.is_pregnant != 0}}">
<view class="title">是否备孕、妊娠或者哺乳期:</view> <view class="title">是否备孕、妊娠或者哺乳期:</view>
<view class="conent">{{case_detail.is_pregnant==0?'否':case_detail.pregnant}}</view> <view class="conent">{{case_detail.is_pregnant==0?'否':case_detail.pregnant}}</view>
</view> </view>
<view class="disease_box_item"> <view class="disease_box_item" wx:if="{{case_detail.drink_wine_status != 0}}">
<view class="title">饮酒史:</view> <view class="title">饮酒史:</view>
<view class="conent">{{case_detail.drink_wine_status==1?'从不':case_detail.drink_wine_status==2?'偶尔':case_detail.drink_wine_status==3?'经常':case_detail.drink_wine_status==4?'每天':case_detail.drink_wine_status==5?'已戒酒':'其他'}}</view> <view class="conent">{{case_detail.drink_wine_status==1?'从不':case_detail.drink_wine_status==2?'偶尔':case_detail.drink_wine_status==3?'经常':case_detail.drink_wine_status==4?'每天':case_detail.drink_wine_status==5?'已戒酒':'其他'}}</view>
</view> </view>
<view class="disease_box_item"> <view class="disease_box_item" wx:if="{{case_detail.smoke_status != 0}}">
<view class="title">吸烟史:</view> <view class="title">吸烟史:</view>
<view class="conent">{{case_detail.smoke_status==1?'从不':case_detail.smoke_status==2?'偶尔':case_detail.smoke_status==3?'经常':case_detail.smoke_status==4?'每天':case_detail.smoke_status==5?'已戒烟':'其他'}}</view> <view class="conent">{{case_detail.smoke_status==1?'从不':case_detail.smoke_status==2?'偶尔':case_detail.smoke_status==3?'经常':case_detail.smoke_status==4?'每天':case_detail.smoke_status==5?'已戒烟':'其他'}}</view>
</view> </view>
<view class="disease_box_item"> <view class="disease_box_item" wx:if="{{case_detail.is_operation != 0}}">
<view class="title">手术史:</view> <view class="title">手术史:</view>
<view class="conent">{{case_detail.is_operation==0?'否':case_detail.operation}}</view> <view class="conent">{{case_detail.is_operation==0?'否':case_detail.operation}}</view>
</view> </view>
<view class="disease_box_item"> <view class="disease_box_item" wx:if="{{case_detail.chemical_compound_status != 0}}">
<view class="title">接触化学物:</view> <view class="title">接触化学物:</view>
<view class="conent">{{case_detail.chemical_compound_status==1?'从不':case_detail.chemical_compound_status==2?'偶尔':case_detail.chemical_compound_status==3?'经常':case_detail.chemical_compound_status==4?'每天':'其他'}}</view> <view class="conent">{{case_detail.chemical_compound_status==1?'从不':case_detail.chemical_compound_status==2?'偶尔':case_detail.chemical_compound_status==3?'经常':case_detail.chemical_compound_status==4?'每天':'其他'}}</view>
</view> </view>
<view class="disease_info" wx:if="{{case_detail.chemical_compound_status > 1}}"> <view class="disease_info" wx:if="{{case_detail.chemical_compound_status != 1}}">
详细描述:{{case_detail.chemical_compound_describe}} 详细描述:{{case_detail.chemical_compound_describe}}
</view> </view>
</view> </view>

View File

@ -2,7 +2,7 @@ page{
background-color: #F6F6F6; background-color: #F6F6F6;
} }
.container{ .container{
width: 100vw; /* width: 100vw; */
padding: 0 4vw; padding: 0 4vw;
} }
.main_title{ .main_title{
@ -38,14 +38,14 @@ page{
} }
.info_item{ .info_item{
text-align: center; text-align: center;
width: 180rpx; /* width: 180rpx; */
height: 60rpx; height: 60rpx;
display: flex; display: flex;
align-items: center; align-items: center;
margin-left: 20rpx; margin-left: 20rpx;
} }
.info_title{ .info_title{
font-size: 30rpx; font-size: 28rpx;
color: #333333; color: #333333;
} }
.info_val{ .info_val{
@ -77,7 +77,19 @@ page{
margin-bottom: 20rpx; margin-bottom: 20rpx;
} }
.img_box{ .img_box{
display: flex;
flex-wrap: wrap;
}
.van-uploader__wrapper{
display: flex !important;
}
.van-uploader__preview{
padding: 20rpx 15rpx !important;
background-color: #E4E4E4 !important;
border-radius: 15rpx;
width: 150rpx;
display: flex;
justify-content: center;
} }
.orther{ .orther{
margin-bottom: 50rpx; margin-bottom: 50rpx;

View File

@ -14,7 +14,7 @@
<van-image custom-style="" src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/yishi/bankcard/js_icon.png" fit="heightFix" height="50rpx" aria-label="role" /> <van-image custom-style="" src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/yishi/bankcard/js_icon.png" fit="heightFix" height="50rpx" aria-label="role" />
</view> </view>
<view class="data_item_top_content"> <view class="data_item_top_content">
<view class="name">{{item.account_name}}<text style="margin-left:20rpx;font-size: 28rpx;corlor:#999;">(尾号{{item.bank_card_code_four}}</text></view> <view class="name">{{item.account_name}}<text style="margin-left:20rpx;font-size: 28rpx;color:#999;">(尾号{{item.bank_card_code_four}}</text></view>
<view class="date">{{item.examine_time}}</view> <view class="date">{{item.examine_time}}</view>
</view> </view>
<view class="data_item_top_num"> <view class="data_item_top_num">
@ -28,13 +28,13 @@
<view class="data_item_bottom">个人所得税:¥{{item.income_tax}}</view> <view class="data_item_bottom">个人所得税:¥{{item.income_tax}}</view>
</view> </view>
<view class="data_item"> <!-- <view class="data_item">
<view class="data_item_top"> <view class="data_item_top">
<view class="data_item_top_icon"> <view class="data_item_top_icon">
<van-image custom-style="" src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/yishi/bankcard/js_icon.png" fit="heightFix" height="50rpx" aria-label="role" /> <van-image custom-style="" src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/yishi/bankcard/js_icon.png" fit="heightFix" height="50rpx" aria-label="role" />
</view> </view>
<view class="data_item_top_content"> <view class="data_item_top_content">
<view class="name">张三三<text style="margin-left:20rpx;font-size: 28rpx; corlor:#999;">尾号9900</text></view> <view class="name">张三三<text style="margin-left:20rpx;font-size: 28rpx;color:#999;">尾号9900</text></view>
<view class="date">12.09 13:23</view> <view class="date">12.09 13:23</view>
</view> </view>
<view class="data_item_top_num"> <view class="data_item_top_num">
@ -45,7 +45,7 @@
</view> </view>
</view> </view>
<view class="data_item_bottom">个人所得税¥12.00</view> <view class="data_item_bottom">个人所得税¥12.00</view>
</view> </view> -->
<van-empty description="暂无数据" wx:if="{{record_list.length == 0}}" /> <van-empty description="暂无数据" wx:if="{{record_list.length == 0}}" />

View File

@ -1,8 +1,8 @@
const app = getApp() const app = getApp()
Page({ Page({
data: { data: {
patient_account: "10000", patient_account: "",
title: '患者姓名', title: '',
height: app.globalData.height, height: app.globalData.height,
order_inquiry_id: "", order_inquiry_id: "",
inquiry_type: "", inquiry_type: "",

View File

@ -2,5 +2,6 @@
"usingComponents": { "usingComponents": {
"TUIChat": "../../../TUIKit/components/TUIChat/index" "TUIChat": "../../../TUIKit/components/TUIChat/index"
}, },
"navigationStyle": "custom" "navigationStyle": "custom",
"disableScroll":true
} }

View File

@ -78,5 +78,10 @@ Page({
}) })
} }
}).catch(errors => {console.error(errors);}) }).catch(errors => {console.error(errors);})
} },
go(e){
let url = e.currentTarget.dataset.url;
console.log(url);
app.go(url);
},
}) })

View File

@ -68,7 +68,7 @@
<view class="item_top_status_box"> <view class="item_top_status_box">
<!-- 药师审核状态0:审核中 1:审核成功 2:审核驳回) --> <!-- 药师审核状态0:审核中 1:审核成功 2:审核驳回) -->
<view class="item_top_status item_top_status_no"> <view class="item_top_status item_top_status_no">
{{item.pharmacist_audit_status==0?'审核中':item.pharmacist_audit_status==1?'审核成功':'审核驳回'}} {{item.pharmacist_audit_status==0?'审核中':item.pharmacist_audit_status==1?'审核成功':'驳回'}}
</view> </view>
</view> </view>
</view> </view>
@ -92,63 +92,20 @@
</view> </view>
<view class="item_content_li"> <view class="item_content_li">
<view class="item_content_li_title">驳回原因:</view> <view class="item_content_li_title">驳回原因:</view>
<view class="item_content_li_txt">{{item.platform_fail_reason}}</view> <view class="item_content_li_txt">{{item.pharmacist_fail_reason}}</view>
</view> </view>
</view> </view>
<!-- 底部按钮 --> <!-- 底部按钮 -->
<view class="item_bottom"> <view class="item_bottom">
<view class="item_bottom_btn">问诊记录</view> <view class="item_bottom_btn">问诊记录</view>
<view class="item_bottom_btn item_bottom_btn_repeat"> <view class="item_bottom_btn item_bottom_btn_repeat" bindtap="go" data-url="/Pages/yishi/onlinechufang/index?order_inquiry_id={{item.order_inquiry_id}}&order_prescription_id={{item.order_prescription_id}}">
<navigator url="/Pages/yishi/onlinechufang/index" open-type="navigate" hover-class="other-navigator-hover">
重开处方 重开处方
</navigator>
</view>
</view>
</view>
<view class="item">
<!-- 头部 -->
<view class="item_top">
<view class="item_top_name">张三三4</view>
<view class="item_top_sex">男 | 30岁</view>
<view class="item_top_status_box">
<view class="item_top_status item_top_status_no">驳回</view>
</view>
</view>
<!-- 中间内容部分 -->
<view class="item_content">
<view class="item_content_li">
<view class="item_content_li_title">病情诊断:</view>
<view class="item_content_li_txt">4年</view>
</view>
<view class="item_content_li">
<view class="item_content_li_title">病情诊断:</view>
<view class="item_content_li_txt">头疼,腰疼、肩膀酸、等症状已经困</view>
</view>
<view class="item_content_li">
<view class="item_content_li_title">病情诊断:</view>
<view class="item_content_li_txt">新冠病毒</view>
</view>
<view class="item_content_li">
<view class="item_content_li_title">处方时间:</view>
<view class="item_content_li_txt">2022年12月23日 1245</view>
</view>
<view class="item_content_li">
<view class="item_content_li_title">驳回原因:</view>
<view class="item_content_li_txt">图片不清晰</view>
</view>
</view>
<!-- 底部按钮 -->
<view class="item_bottom">
<view class="item_bottom_btn">问诊记录</view>
<view class="item_bottom_btn item_bottom_btn_repeat">
<navigator url="/Pages/yishi/onlinechufang/index" open-type="navigate" hover-class="other-navigator-hover">
重开处方
</navigator>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
<van-empty description="暂无数据" wx:if="{{chufang_list_2.length == 0}}" />
</t-tab-panel> </t-tab-panel>
</t-tabs> </t-tabs>
</view> </view>

View File

@ -167,6 +167,11 @@
.zhuanchang_btn--confirm { .zhuanchang_btn--confirm {
color: #3cc7c0; color: #3cc7c0;
} }
/* 自定义医院搜索框样式 */
.van-search__field .van-cell{
padding: 10rpx !important;
}
.van-picker__columns { .van-picker__columns {
height: 264px !important; height: 264px !important;
top: 40px !important; top: 40px !important;
@ -175,6 +180,7 @@
top: -270px !important; top: -270px !important;
position: relative !important; position: relative !important;
} }
.van-picker__confirm{ .van-picker__confirm{
color: #3cc7c0 !important; color: #3cc7c0 !important;
} }
@ -207,4 +213,13 @@
} }
.van-picker__title { .van-picker__title {
font-size: 34rpx !important; font-size: 34rpx !important;
}
.van-empty{
position: absolute;
width: 100%;
left: 50%;
top: 180rpx;
transform: translateX(-50%);
z-index: 9999999;
background: rgb(255, 255, 255);
} }

View File

@ -1,5 +1,6 @@
// Pages/yishi/index/index.js // Pages/yishi/index/index.js
import { API } from './../../../utils/network/api' import { API } from './../../../utils/network/api'
import { rpxTopx } from './../../../utils/util'
const api = new API() const api = new API()
const app = getApp() const app = getApp()
Page({ Page({
@ -92,27 +93,44 @@ Page({
skeleton_loading: true, skeleton_loading: true,
contactKeFu: false, contactKeFu: false,
jiesuan_dialog_show: false, jiesuan_dialog_show: false,
jiesuan_dialog_visible: false jiesuan_dialog_visible: false,
aa: 0
}, },
// 获取状态栏信息 // 获取状态栏信息
getMenuButtonBound() { getMenuButtonBound() {
let stateHeight = 0; // 接收状态栏高度 let stateHeight = 0; // 接收状态栏高度
const navHeight = wx.getMenuButtonBoundingClientRect().height; // 获取胶囊高度 const navHeight = wx.getMenuButtonBoundingClientRect().height; // 获取胶囊高度
let top = 0; let top = 0;
wx.getSystemInfo({
success(res) {
stateHeight = res.statusBarHeight;
},
});
top = wx.getMenuButtonBoundingClientRect().top - stateHeight; // 获取top值 top = wx.getMenuButtonBoundingClientRect().top - stateHeight; // 获取top值
console.log('navHeight', navHeight); console.log('navHeight', navHeight);
console.log('top', top); console.log('top', top);
this.setData({ this.setData({
// navHeight: navHeight + top * 2, // 导航栏高度 // navHeight: navHeight + top * 2, // 导航栏高度
navHeight, // 导航栏高度 navHeight, // 导航栏高度
stateHeight: stateHeight + top, // 状态栏高度 stateHeight: stateHeight + top, // 状态栏高度
}); });
}, },
getFunboxHeight(){
console.log("109: ", rpxTopx(109))
console.log("113: ", rpxTopx(113))
const { statusBarHeight } = wx.getSystemInfoSync();
console.log("statusBarHeight: ", rpxTopx(statusBarHeight));
let funbox_height = wx.getSystemInfoSync().windowHeight - (this.data.stateHeight + this.data.navHeight + 10) - 55;//减去底部空白
funbox_height = rpxTopx(funbox_height);
// 147 userinfo的高度
// 155 认证部分的高度
// 150 广告部分的高度
// 40 自定义适配
funbox_height = funbox_height - 147 - 20 - 30 - 20 - 155 - 30 - 150 - 20 - 30 - 30 - 30 - 30 - 40;
funbox_height = funbox_height / 3;
if(funbox_height > 150) funbox_height = 150
this.setData({
funbox_height: funbox_height
})
},
confirmJieSuanDialog(){ confirmJieSuanDialog(){
this.setData({ this.setData({
jiesuan_dialog_visible: false jiesuan_dialog_visible: false
@ -145,7 +163,7 @@ Page({
}) })
} }
this.getMenuButtonBound(); this.getMenuButtonBound();
this.getFunboxHeight();
api.yiShiIndex().then(response => { api.yiShiIndex().then(response => {
console.log(response); console.log(response);
let avatar = response.data.info.avatar; let avatar = response.data.info.avatar;

View File

@ -1,6 +1,6 @@
<view class="container"> <view class="container" id="container">
<!-- 顶部背景 --> <!-- 顶部背景 -->
<view class="top_bk"></view> <view class="top_bk"></view>
<!-- 顶部标题 --> <!-- 顶部标题 -->
@ -12,7 +12,7 @@
<view class="info_top"> <view class="info_top">
<view class="info_photo" bindtap="go" data-url="/Pages/yishi/myinfo/index"> <view class="info_photo" bindtap="go" data-url="/Pages/yishi/myinfo/index">
<!-- 跳转我的信息 --> <!-- 跳转我的信息 -->
<t-avatar alt="头像" class="avatar" size="large" image="{{info.avatar}}" /> <t-avatar alt="头像" class="avatar" size="medium" image="{{info.avatar}}" />
</view> </view>
<view class="info_content"> <view class="info_content">
<view class="info_mobile">{{info.user_name}}</view> <view class="info_mobile">{{info.user_name}}</view>
@ -90,7 +90,7 @@
</view> </view>
<!-- 功能模块 --> <!-- 功能模块 -->
<view class="fun_box"> <view class="fun_box">
<view bindtap="go" data-moudle="3" data-url="/Pages/yishi/myprofile/index" class="fun_box_item"> <view bindtap="go" data-moudle="3" data-url="/Pages/yishi/myprofile/index" class="fun_box_item" style="height: {{funbox_height}}rpx;">
<van-image class="fun_box_item_img" <van-image class="fun_box_item_img"
fit="heightFix" fit="heightFix"
height="70rpx" height="70rpx"
@ -98,7 +98,7 @@
/> />
<text class="fun_box_item_txt">简介管理</text> <text class="fun_box_item_txt">简介管理</text>
</view> </view>
<view bindtap="go" data-moudle="4" data-url="/Pages/yishi/onlinesetup/index" class="fun_box_item"> <view bindtap="go" data-moudle="4" data-url="/Pages/yishi/onlinesetup/index" class="fun_box_item" style="height: {{funbox_height}}rpx;">
<van-image class="fun_box_item_img" <van-image class="fun_box_item_img"
fit="widthFix" fit="widthFix"
width="70rpx" width="70rpx"
@ -106,7 +106,7 @@
/> />
<text class="fun_box_item_txt">在线问诊管理</text> <text class="fun_box_item_txt">在线问诊管理</text>
</view> </view>
<view bindtap="go" data-moudle="5" data-url="/Pages/yishi/kuaisusetup/index" class="fun_box_item"> <view bindtap="go" data-moudle="5" data-url="/Pages/yishi/kuaisusetup/index" class="fun_box_item" style="height: {{funbox_height}}rpx;">
<van-image class="fun_box_item_img" <van-image class="fun_box_item_img"
fit="widthFix" fit="widthFix"
width="70rpx" width="70rpx"
@ -114,7 +114,7 @@
/> />
<text class="fun_box_item_txt">快速问诊管理</text> <text class="fun_box_item_txt">快速问诊管理</text>
</view> </view>
<view bindtap="go" data-moudle="6" data-url="/Pages/yishi/yizhensetup/index" class="fun_box_item"> <view bindtap="go" data-moudle="6" data-url="/Pages/yishi/yizhensetup/index" class="fun_box_item" style="height: {{funbox_height}}rpx;">
<van-image class="fun_box_item_img" <van-image class="fun_box_item_img"
fit="widthFix" fit="widthFix"
width="70rpx" width="70rpx"
@ -122,7 +122,7 @@
/> />
<text class="fun_box_item_txt">公益问诊管理</text> <text class="fun_box_item_txt">公益问诊管理</text>
</view> </view>
<view bindtap="go" data-moudle="7" data-url="/Pages/yishi/chufangsetup/index" class="fun_box_item"> <view bindtap="go" data-moudle="7" data-url="/Pages/yishi/chufangsetup/index" class="fun_box_item" style="height: {{funbox_height}}rpx;">
<van-image class="fun_box_item_img" <van-image class="fun_box_item_img"
fit="widthFix" fit="widthFix"
width="70rpx" width="70rpx"
@ -132,7 +132,7 @@
<t-badge style="display: flex;align-items: center;" dot="{{info.reject_prescription_number ? true : false}}" offset="{{ ['-14rpx', '10rpx'] }}" class="wrapper" content="处方管理" /> <t-badge style="display: flex;align-items: center;" dot="{{info.reject_prescription_number ? true : false}}" offset="{{ ['-14rpx', '10rpx'] }}" class="wrapper" content="处方管理" />
</view> </view>
</view> </view>
<view class="fun_box_item" data-moudle="8" bindtap="contactKeFu"> <view class="fun_box_item" data-moudle="8" bindtap="contactKeFu" style="height: {{funbox_height}}rpx;">
<van-image class="fun_box_item_img" <van-image class="fun_box_item_img"
fit="widthFix" fit="widthFix"
width="70rpx" width="70rpx"

View File

@ -181,7 +181,7 @@
} }
.fun_box_item{ .fun_box_item{
width: 40vw; width: 40vw;
height: 150rpx; height: 110rpx;
background-color: #FAFAFA; background-color: #FAFAFA;
border-radius: 10rpx; border-radius: 10rpx;
margin: 10rpx 0; margin: 10rpx 0;

View File

@ -13,7 +13,7 @@
<view class="monthbox"> <view class="monthbox">
<view class="month" bindtap="showPop">{{dateText}}<van-icon name="arrow-down" color="#999" size="40rpx" /></view> <view class="month" bindtap="showPop">{{dateText}}<van-icon name="arrow-down" color="#999" size="40rpx" /></view>
<view class="account"> <view class="account">
<view class="account_left">预计收入:¥{{amount_total_month}}</view> <view class="account_left">当月收益:¥{{amount_total_month}}</view>
<view class="account_right">当月已提取:¥{{withdrawal_amount_month}}</view> <view class="account_right">当月已提取:¥{{withdrawal_amount_month}}</view>
</view> </view>
</view> </view>

View File

@ -44,10 +44,13 @@ page{
.account_left{ .account_left{
flex: 1; flex: 1;
text-align: center; text-align: center;
text-align: left;
margin-left: 20rpx;
} }
.account_right{ .account_right{
flex: 1; flex: 1;
text-align: center; text-align: center;
text-align: left;
} }
.txt_title{ .txt_title{
font-size: 30rpx; font-size: 30rpx;

View File

@ -25,4 +25,26 @@
} }
.van-cell { .van-cell {
padding: 32rpx !important; padding: 32rpx !important;
}
/* 自定义医院搜索框样式 */
.van-search__field .van-cell{
padding: 10rpx !important;
}
.van-picker__columns {
height: 264px !important;
top: 40px !important;
}
.van-search {
top: -270px !important;
position: relative !important;
}
.van-empty{
position: absolute;
width: 100%;
left: 50%;
top: 180rpx;
transform: translateX(-50%);
z-index: 9999999;
background: rgb(255, 255, 255);
} }

View File

@ -1,3 +1,5 @@
import { API } from './../../../utils/network/api'
const api = new API()
const app = getApp() const app = getApp()
Page({ Page({
data: { data: {
@ -5,7 +7,25 @@ Page({
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示 showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
title: '公告详情', //导航栏 中间的标题 title: '公告详情', //导航栏 中间的标题
}, },
height: app.globalData.height, height: app.globalData.height,
notice: {}
},
onLoad(options){
let notice_id = options.notice_id;
api.getDoctorMessageSystemDetail({notice_id: notice_id}).then(response => {
console.log(response);
this.setData({
notice: response.data
})
}).catch(errors => {console.error(errors);})
},
go(e){
let link_type = this.data.notice.link_type;
let link_params = this.data.notice.link_params;
wx.showToast({
title: '无数据,不能调试',
icon: "error"
})
} }
}) })

View File

@ -3,20 +3,24 @@
<view class="data"> <view class="data">
<view class="item"> <view class="item">
<view class="title">发信人</view><text></text> <view class="title">发信人</view><text></text>
<view class="conent">肝胆小秘书</view> <view class="conent">{{notice.from_name}}</view>
</view> </view>
<view class="item"> <view class="item">
<view class="title">标题</view><text></text> <view class="title">标题</view><text></text>
<view class="conent">9月份的服务费结算</view> <view class="conent">{{notice.notice_title}}</view>
</view> </view>
<view class="item"> <view class="item">
<view class="title">时间</view><text></text> <view class="title">时间</view><text></text>
<view class="conent">2022-11-02 12:22:11</view> <view class="conent">{{notice.notice_send_time}}</view>
</view> </view>
<view class="item"> <view class="item">
<view class="title">内容</view><text></text> <view class="title">内容</view><text></text>
<view class="conent">XX医生您好您9月份的服务费已结算至您的银行卡请注意查收。</view> <view class="conent">{{notice.notice_content}}</view>
</view> </view>
<van-button color="#3CC7C0" custom-style="border-radius: 10rpx;margin: 30rpx 0;" block>我的账户</van-button> <van-button bind:click="go" color="#3CC7C0" custom-style="border-radius: 10rpx;margin: 30rpx 0;" block wx:if="{{notice.button_type == 1}}">我的账户</van-button>
<van-button bind:click="go" color="#3CC7C0" custom-style="border-radius: 10rpx;margin: 30rpx 0;" block wx:if="{{notice.button_type == 2}}">联系客服</van-button>
<van-button bind:click="go" color="#3CC7C0" custom-style="border-radius: 10rpx;margin: 30rpx 0;" block wx:if="{{notice.button_type == 3}}">查看协议</van-button>
<van-button bind:click="go" color="#3CC7C0" custom-style="border-radius: 10rpx;margin: 30rpx 0;" block wx:if="{{notice.button_type == 4}}">订单详情</van-button>
<van-button bind:click="go" color="#3CC7C0" custom-style="border-radius: 10rpx;margin: 30rpx 0;" block wx:if="{{notice.button_type == 5}}">查看处方</van-button>
</view> </view>
</view> </view>

View File

@ -20,7 +20,7 @@ Page({
drug_content_show: false, drug_content_show: false,
search_drug_list_empty: true, search_drug_list_empty: true,
search_drug_list: [], search_drug_list: [],
select_drug_name: "", product_name: "",
select_drug_id: "", select_drug_id: "",
save_durg_product_id: "", save_durg_product_id: "",
save_durg_prescription_product_num: "", save_durg_prescription_product_num: "",
@ -30,9 +30,11 @@ Page({
save_durg_frequency_use: "", save_durg_frequency_use: "",
save_durg_available_days: "", save_durg_available_days: "",
order_inquiry_id: "", order_inquiry_id: "",
order_prescription_id: "",
doctor_advice: "", doctor_advice: "",
doctors_advice_focus: false, doctors_advice_focus: false,
case_detail: {} case_detail: {},
sub_disabled: false,
}, },
onDoctorsAdviceFocus(){ onDoctorsAdviceFocus(){
this.setData({ this.setData({
@ -41,21 +43,28 @@ Page({
}, },
onLoad(options){ onLoad(options){
let order_inquiry_id = options.order_inquiry_id; let order_inquiry_id = options.order_inquiry_id;
let order_prescription_id = options.order_prescription_id ;
//获取患者问诊病例 //获取患者问诊病例
api.getDoctorInquiryCase({order_inquiry_id: order_inquiry_id}).then(response => { api.getDoctorInquiryCase({order_inquiry_id: order_inquiry_id}).then(response => {
console.log(response); console.log(response);
this.setData({ this.setData({
case_detail: response.data case_detail: response.data
}) })
}).then(res => {
//有处方id才去请求详情
if(order_prescription_id){
this.getDoctorPrescriptionInfo(order_inquiry_id, order_prescription_id);
}
}).catch(errors => {console.error(errors);}) }).catch(errors => {console.error(errors);})
this.setData({ this.setData({
order_inquiry_id: order_inquiry_id order_inquiry_id: order_inquiry_id,
order_prescription_id: order_prescription_id,
}) })
}, },
select_drug(e){ select_drug(e){
this.setData({ this.setData({
drug_content_show: true, drug_content_show: true,
select_drug_name: e.currentTarget.dataset.product_name, product_name: e.currentTarget.dataset.product_name,
select_drug_id: e.currentTarget.dataset.product_id, select_drug_id: e.currentTarget.dataset.product_id,
save_durg_product_id: e.currentTarget.dataset.product_id save_durg_product_id: e.currentTarget.dataset.product_id
}); });
@ -110,7 +119,7 @@ Page({
this.delDrugBox(product_id); this.delDrugBox(product_id);
let save_durg = {}; let save_durg = {};
save_durg.select_drug_name = this.data.select_drug_name; save_durg.product_name = this.data.product_name;
save_durg.product_id = this.data.save_durg_product_id; save_durg.product_id = this.data.save_durg_product_id;
save_durg.prescription_product_num = this.data.save_durg_prescription_product_num; save_durg.prescription_product_num = this.data.save_durg_prescription_product_num;
save_durg.single_unit = this.data.save_durg_single_unit; save_durg.single_unit = this.data.save_durg_single_unit;
@ -123,7 +132,7 @@ Page({
this.setData({ this.setData({
drugs_box_item_list: list, drugs_box_item_list: list,
drugs_popshow: false, drugs_popshow: false,
select_drug_name: "", product_name: "",
drug_content_show: false, drug_content_show: false,
search_drug_list: [], search_drug_list: [],
save_durg_product_id: "", save_durg_product_id: "",
@ -154,8 +163,8 @@ Page({
search(){ search(){
//搜索诊断 //搜索诊断
let params = {}; let params = {};
params.disease_class_name = this.data.disease_class_name; params.icd_keyword = this.data.disease_class_name;
api.getBasicDiseaseSearch(params).then(response => { api.getBasicIcdSearch(params).then(response => {
console.log(response); console.log(response);
this.setData({ this.setData({
zhenduan_search_list: response.data zhenduan_search_list: response.data
@ -167,7 +176,7 @@ Page({
searchDrug(){ searchDrug(){
//搜索药品 //搜索药品
let params = {}; let params = {};
params.product_keyword = this.data.select_drug_name; params.product_keyword = this.data.product_name;
api.getBasicProductSearch(params).then(response => { api.getBasicProductSearch(params).then(response => {
console.log(response); console.log(response);
if(response.data.length > 0){ if(response.data.length > 0){
@ -197,17 +206,17 @@ Page({
}) })
}, },
addZhenDuan(e){ addZhenDuan(e){
let disease_class_name = e.currentTarget.dataset.disease_class_name; let icd_name = e.currentTarget.dataset.icd_name;
let disease_class_id = e.currentTarget.dataset.disease_class_id; let icd_id = e.currentTarget.dataset.icd_id;
console.log("disease_class_name: ", disease_class_name); console.log("icd_name: ", icd_name);
console.log("disease_class_id: ", disease_class_id); console.log("icd_id: ", icd_id);
let disease_obj = {}; let disease_obj = {};
disease_obj.disease_class_name = disease_class_name; disease_obj.icd_name = icd_name;
disease_obj.disease_class_id = disease_class_id; disease_obj.icd_id = icd_id;
let list = this.data.zhenduan_list; let list = this.data.zhenduan_list;
let find_index = list.findIndex(item => { let find_index = list.findIndex(item => {
return item.disease_class_id == disease_class_id return item.icd_id == icd_id
}); });
if(find_index == -1){ if(find_index == -1){
list.push(disease_obj); list.push(disease_obj);
@ -245,7 +254,7 @@ Page({
console.log(drug); console.log(drug);
this.setData({ this.setData({
drugs_popshow: true, drugs_popshow: true,
select_drug_name: drug.select_drug_name, product_name: drug.product_name,
drug_content_show: true, drug_content_show: true,
save_durg_product_id: drug.product_id, save_durg_product_id: drug.product_id,
save_durg_prescription_product_num: drug.prescription_product_num, save_durg_prescription_product_num: drug.prescription_product_num,
@ -280,37 +289,172 @@ Page({
doctor_advice: e.detail.value doctor_advice: e.detail.value
}) })
}, },
postDoctorPrescription(){//新增处方 postDoctorPrescription(e){//新增处方
let sub_disabled = this.data.sub_disabled;
if(sub_disabled) return
console.log("postDoctorPrescription postDoctorPrescription"); console.log("postDoctorPrescription postDoctorPrescription");
//先置灰,避免重复提交
this.setData({
sub_disabled: true
})
let params = {}; let params = {};
params.order_inquiry_id = this.data.order_inquiry_id; params.order_inquiry_id = this.data.order_inquiry_id;
params.doctor_advice = this.data.doctor_advice; params.doctor_advice = this.data.doctor_advice;
let prescription_icd = []; let prescription_icd = [];
this.data.zhenduan_list.forEach(item => { this.data.zhenduan_list.forEach(item => {
prescription_icd.push(item.disease_class_id); prescription_icd.push(item.icd_id);
}) })
params.prescription_icd = prescription_icd; params.prescription_icd = prescription_icd;
params.prescription_product = this.data.drugs_box_item_list; params.prescription_product = this.data.drugs_box_item_list;
console.log(params); console.log(params);
if(prescription_icd.length == 0){
wx.showToast({
title: '请选择诊断',
icon: "error"
})
this.setData({
sub_disabled: false
})
return;
}
if(params.prescription_product.length == 0){
wx.showToast({
title: '请选择药品',
icon: "error"
})
this.setData({
sub_disabled: false
})
return;
}
if(this.data.doctor_advice == ""){
wx.showToast({
title: '请填写医嘱',
icon: "error"
})
this.setData({
sub_disabled: false
})
return;
}
if(this.data.doctor_advice.length < 5 || this.data.doctor_advice.length > 200){
wx.showToast({
title: '医嘱字数5-20',
icon: "error"
})
this.setData({
sub_disabled: false
})
return;
}
api.postDoctorPrescription(params).then(response => { api.postDoctorPrescription(params).then(response => {
console.log(response); console.log(response);
wx.showToast({
}).catch(errors => {console.error(errors);}) title: '提交成功',
icon: "success"
})
}).catch(errors => {
console.error(errors);
this.setData({
sub_disabled: false
})
})
}, },
putDoctorPrescription(){//修改处方 putDoctorPrescription(){//修改处方
let sub_disabled = this.data.sub_disabled;
if(sub_disabled) return
console.log("putDoctorPrescription putDoctorPrescription");
//先置灰,避免重复提交
this.setData({
sub_disabled: true
})
let params = {}; let params = {};
params.order_prescription_id = this.data.order_prescription_id;
params.doctor_advice = this.data.doctor_advice;
let prescription_icd = [];
this.data.zhenduan_list.forEach(item => {
prescription_icd.push(item.icd_id);
})
params.prescription_icd = prescription_icd;
params.prescription_product = this.data.drugs_box_item_list;
console.log(params);
if(prescription_icd.length == 0){
wx.showToast({
title: '请选择诊断',
icon: "error"
})
this.setData({
sub_disabled: false
})
return;
}
if(params.prescription_product.length == 0){
wx.showToast({
title: '请选择药品',
icon: "error"
})
this.setData({
sub_disabled: false
})
return;
}
if(this.data.doctor_advice == ""){
wx.showToast({
title: '请填写医嘱',
icon: "error"
})
this.setData({
sub_disabled: false
})
return;
}
if(this.data.doctor_advice.length < 5 || this.data.doctor_advice.length > 200){
wx.showToast({
title: '医嘱字数5-20',
icon: "error"
})
this.setData({
sub_disabled: false
})
return;
}
api.putDoctorPrescription(params).then(response => { api.putDoctorPrescription(params).then(response => {
console.log(response); console.log(response);
wx.showToast({
}).catch(errors => {console.error(errors);}) title: '提交成功',
icon: "success"
})
}).catch(errors => {
console.error(errors);
this.setData({
sub_disabled: false
})
})
}, },
getDoctorPrescriptionInfo(){//获取处方详情 getDoctorPrescriptionInfo(order_inquiry_id, order_prescription_id){//获取处方详情
let params = {}; let params = {};
params.order_inquiry_id = order_inquiry_id;
params.order_prescription_id = order_prescription_id;
api.getDoctorPrescriptionInfo(params).then(response => { api.getDoctorPrescriptionInfo(params).then(response => {
console.log(response); console.log(response);
this.setData({
doctor_advice: response.data.prescription.doctor_advice,
zhenduan_list: response.data.prescription_icd,
drugs_box_item_list: response.data.prescription_product,
})
}).catch(errors => {console.error(errors);}) }).catch(errors => {console.error(errors);})
} }
}) })

View File

@ -33,7 +33,7 @@
<view class="addzhenduan">+添加诊断</view> <view class="addzhenduan">+添加诊断</view>
<view slot="label"> <view slot="label">
<view style="margin-top: 20rpx;" class="label_item" wx:for="{{zhenduan_list}}"> <view style="margin-top: 20rpx;" class="label_item" wx:for="{{zhenduan_list}}">
<van-icon name="delete" catchtap="delZhenDuan" color="red" data-disease_class_id="{{item.disease_class_id}}" /><text style="margin-left: 10rpx;">{{item.disease_class_name}}</text> <van-icon name="delete" catchtap="delZhenDuan" color="red" data-disease_class_id="{{item.icd_id}}" /><text style="margin-left: 10rpx;">{{item.icd_name}}</text>
</view> </view>
</view> </view>
</van-cell> </van-cell>
@ -45,7 +45,7 @@
<view class="drugs_box"> <view class="drugs_box">
<view class="drugs_box_item" wx:for="{{ drugs_box_item_list }}" wx:for-item="drugs"> <view class="drugs_box_item" wx:for="{{ drugs_box_item_list }}" wx:for-item="drugs">
<view class="drugs_name">{{ drugs.select_drug_name }}(数量{{ drugs.prescription_product_num}})</view> <view class="drugs_name">{{ drugs.product_name }}(数量{{ drugs.prescription_product_num}})</view>
<view class="drugs_guige">用法用量:{{ drugs.single_use }}{{ drugs.frequency_use }}{{ drugs.single_unit }}</view> <view class="drugs_guige">用法用量:{{ drugs.single_use }}{{ drugs.frequency_use }}{{ drugs.single_unit }}</view>
<!-- <view class="drugs_dosage">备注:{{ drugs.drugs_dosage }}</view> --> <!-- <view class="drugs_dosage">备注:{{ drugs.drugs_dosage }}</view> -->
<view class="btn"> <view class="btn">
@ -56,16 +56,18 @@
</view> </view>
<view class="adddrugs_btn"> <view class="adddrugs_btn">
<van-button bind:click="showPopup" color="rgba(35,209,215,0.28); font-size:30rpx; border-radius: 10rpx;" type="primary" block>+添加药品</van-button> <van-button bind:click="showPopup" color="rgba(44,241,248,0.28);" custom-style="color:#3CC7C0; font-size:30rpx; border-radius: 10rpx;" type="primary" block>+添加药品</van-button>
</view> </view>
<form bindsubmit="{{ order_prescription_id == ''?'postDoctorPrescription':'putDoctorPrescription' }}">
<view class="txt_title">医嘱</view>
<view class="doctors_advice" bindtap="onDoctorsAdviceFocus">
<textarea auto-height focus="{{doctors_advice_focus}}" maxlength="1000" bindblur="getAdvice" style="width: 100%;" placeholder-style="font-size:24rpx; color:#999" placeholder="请输入医嘱5-200字" name="doctors_advice" value="{{doctor_advice}}"></textarea>
</view>
<view class="sub_btn">
<van-button disabled="{{sub_disabled}}" form-type="submit" color="#3CC7C0; font-size:30rpx; border-radius: 10rpx;" type="primary" block>{{ order_prescription_id == ''?'提交审核':'重开处方' }}</van-button>
</view>
<view class="txt_title">医嘱</view> </form>
<view class="doctors_advice" bindtap="onDoctorsAdviceFocus">
<textarea auto-height focus="{{doctors_advice_focus}}" maxlength="1000" bindblur="getAdvice" style="width: 100%;" placeholder-style="font-size:24rpx; color:#999" placeholder="请输入医嘱"></textarea>
</view>
<view class="sub_btn">
<van-button bind:click="postDoctorPrescription" color="#3CC7C0; font-size:30rpx; border-radius: 10rpx;" type="primary" block>提交审核</van-button>
</view>
<van-popup <van-popup
@ -81,7 +83,7 @@
<view class="search_drug"> <view class="search_drug">
<view class="search_drug_btn"> <view class="search_drug_btn">
<text class="search_drug_btn_title">药品名称</text> <text class="search_drug_btn_title">药品名称</text>
<van-search model:value="{{ select_drug_name }}" <van-search model:value="{{ product_name }}"
class="search_drug_btn_input" class="search_drug_btn_input"
clearable shape="round" clearable shape="round"
placeholder="请输入药品名称或拼音码搜索" placeholder="请输入药品名称或拼音码搜索"
@ -206,10 +208,13 @@
bind:change="onZhenDuanChange" bind:change="onZhenDuanChange"
/> />
<view class="zhenduan_data_list"> <view class="zhenduan_data_list">
<view bindtap="addZhenDuan" class="zhenduan_item" data-disease_class_name="{{item.disease_class_name}}" data-disease_class_id="{{item.disease_class_id}}" wx:for="{{zhenduan_search_list}}"> <view bindtap="addZhenDuan" class="zhenduan_item" data-icd_name="{{item.icd_name}}" data-icd_id="{{item.icd_id}}" wx:for="{{zhenduan_search_list}}">
{{item.disease_class_name}} {{item.icd_name}}
</view> </view>
</view> </view>
</van-popup> </van-popup>
<van-toast id="van-toast" /> <van-toast id="van-toast" />
</view> </view>
<view style="height: 50rpx;">
</view>

View File

@ -6,7 +6,7 @@ Page({
data: { data: {
navbarData: { navbarData: {
showCapsule: 2, //是否显示左上角图标 1表示显示 0表示不显示 showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
title: '常用语', //导航栏 中间的标题 title: '常用语', //导航栏 中间的标题
}, },
height: app.globalData.height, height: app.globalData.height,

View File

@ -26,7 +26,7 @@
</van-swipe-cell> </van-swipe-cell>
</view> </view>
<view class="btn"> <view class="btn">
<van-button bind:click="showAdd" class="addbtn" custom-style="border-radius: 20rpx;margin: 0 auto;width: 92%;position: relative;top: 50%; transform: translateY(-50%);" type="primary" color="#3CC7C0" block>添加常用语</van-button> <van-button bind:click="showAdd" class="addbtn" custom-style="border-radius: 10rpx;margin: 0 auto;width: 92%;position: relative;top: 50%; transform: translateY(-50%);font-size: 34rpx;" type="primary" color="#3CC7C0" block>添加常用语</van-button>
</view> </view>
</t-tab-panel> </t-tab-panel>
<t-tab-panel label="处方" value="2"> <t-tab-panel label="处方" value="2">
@ -44,7 +44,7 @@
</van-swipe-cell> </van-swipe-cell>
</view> </view>
<view class="btn"> <view class="btn">
<van-button bind:click="showAdd" class="addbtn" custom-style="border-radius: 20rpx;margin: 0 auto;width: 92%;position: relative;top: 50%; transform: translateY(-50%);" type="primary" color="#3CC7C0" block>添加常用语</van-button> <van-button bind:click="showAdd" class="addbtn" custom-style="border-radius: 10rpx;margin: 0 auto;width: 92%;position: relative;top: 50%; transform: translateY(-50%);font-size: 34rpx;" type="primary" color="#3CC7C0" block>添加常用语</van-button>
</view> </view>
</t-tab-panel> </t-tab-panel>
</t-tabs> </t-tabs>
@ -62,6 +62,7 @@
model:value="{{ add_message }}" model:value="{{ add_message }}"
type="textarea" type="textarea"
placeholder="请输入文字" placeholder="请输入文字"
placeholder-style="font-size: 32rpx;font-weight: 400;"
autosize autosize
maxlength="500" maxlength="500"
custom-style="height: 100%;" custom-style="height: 100%;"

View File

@ -13,10 +13,10 @@ page{
} }
.t-tabs__item--active{ .t-tabs__item--active{
color: #49B9AD !important; color: #49B9AD !important;
font-size: 32rpx !important; font-size: 36rpx !important;
} }
.t-tabs__item-inner--line{ .t-tabs__item-inner--line{
font-size: 28rpx !important; font-size: 32rpx !important;
} }
.t-tabs__track{ .t-tabs__track{
background-color: var(--td-tab-track-color, var(--td-primary-color, #49B9AD)) !important; background-color: var(--td-tab-track-color, var(--td-primary-color, #49B9AD)) !important;
@ -25,7 +25,7 @@ page{
height: 130rpx; height: 130rpx;
background-color: #fff; background-color: #fff;
position: fixed; position: fixed;
bottom: 0; bottom: 50rpx;
width: 100%; width: 100%;
} }
.popup_box{ .popup_box{
@ -69,5 +69,4 @@ page{
padding: 32rpx !important; padding: 32rpx !important;
font-size: 34rpx !important; font-size: 34rpx !important;
color: #333 !important; color: #333 !important;
font-weight: bolder !important;
} }

View File

@ -1,3 +1,5 @@
import { API } from './../../../utils/network/api'
const api = new API()
const app = getApp() const app = getApp()
Page({ Page({
data: { data: {
@ -7,5 +9,43 @@ Page({
}, },
height: app.globalData.height, height: app.globalData.height,
visible: false, visible: false,
list: [],
current_page: 0,
total: 0,
per_page: 0,
last_page: 0,
},
onShow(){
this.getList();
},
getList(){
let current_page = this.data.current_page;
current_page = current_page + 1;
this.setData({
current_page: current_page
})
let list = this.data.list;
api.getDoctorMessageService({page: current_page}).then(response => {
console.log(response);
this.setData({
list: list.concat(response.data.data),
current_page: response.data.current_page,
total: response.data.total,
per_page: response.data.per_page,
last_page: response.data.last_page,
})
}).catch(errors => {console.error(errors);})
},
onReachBottom() {
console.log('===触底了!!===');
if(this.data.current_page < this.data.last_page){//最后一页时停止分页
this.getList()
}
},
putMessageReadNoticeAll(){
api.putMessageReadNoticeAll({notice_type: 1}).then(response => {
console.log(response);
}).catch(errors => {console.error(errors);})
} }
}) })

View File

@ -2,6 +2,10 @@
"component": true, "component": true,
"usingComponents": { "usingComponents": {
"te-nav-bar": "/commpents/te_navbar", "te-nav-bar": "/commpents/te_navbar",
"van-image": "@vant/weapp/image/index" "van-image": "@vant/weapp/image/index",
} "van-divider": "@vant/weapp/divider/index",
"van-empty": "@vant/weapp/empty/index"
},
"enablePullDownRefresh": false,
"onReachBottomDistance": 50
} }

View File

@ -2,7 +2,30 @@
<view class="container"> <view class="container">
<view class="list"> <view class="list">
<view class="item"> <view class="item" wx:for="{{list}}">
<view class="item_top">
<view class="item_img" wx:if="{{item.inquiry_type == 1}}">
<text style="margin-left: 10rpx;">快速问诊</text>
<van-image class="van_img" src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/yishi/service_notice/kuaisu.png" fit="heightFix" height="54rpx" aria-label="qrcode" />
</view>
<view class="item_img" wx:if="{{item.inquiry_type == 2}}">
<text style="margin-left: 10rpx;">快速问诊</text>
<van-image class="van_img" src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/yishi/service_notice/kuaisu.png" fit="heightFix" height="54rpx" aria-label="qrcode" />
</view>
<view class="item_img" wx:if="{{item.inquiry_type == 3}}">
<text style="margin-left: 10rpx;">公益问诊</text>
<van-image class="van_img" src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/yishi/service_notice/yizhen.png" fit="heightFix" height="54rpx" aria-label="qrcode" />
</view>
<view class="item_img" wx:if="{{item.inquiry_type == 4}}">
<text style="margin-left: 10rpx;">问诊购药</text>
<van-image class="van_img" src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/yishi/service_notice/drug.png" fit="heightFix" height="54rpx" aria-label="qrcode" />
</view>
<view class="item_date">{{item.notice_send_time}}</view>
</view>
<view class="item_content">{{item.notice_title}}</view>
</view>
<!-- <view class="item">
<view class="item_top"> <view class="item_top">
<view class="item_img"> <view class="item_img">
<text style="margin-left: 10rpx;">快速问诊</text> <text style="margin-left: 10rpx;">快速问诊</text>
@ -11,9 +34,9 @@
<view class="item_date">2023-1-02 12:22</view> <view class="item_date">2023-1-02 12:22</view>
</view> </view>
<view class="item_content">您有新的图文问诊咨询,请注意查看。</view> <view class="item_content">您有新的图文问诊咨询,请注意查看。</view>
</view> </view> -->
<view class="item"> <!-- <view class="item">
<view class="item_top"> <view class="item_top">
<view class="item_img"> <view class="item_img">
<text style="margin-left: 10rpx;">在线问诊</text> <text style="margin-left: 10rpx;">在线问诊</text>
@ -22,9 +45,9 @@
<view class="item_date">2023-1-02 12:22</view> <view class="item_date">2023-1-02 12:22</view>
</view> </view>
<view class="item_content">您有新的图文问诊咨询,请注意查看。</view> <view class="item_content">您有新的图文问诊咨询,请注意查看。</view>
</view> </view> -->
<view class="item"> <!-- <view class="item">
<view class="item_top"> <view class="item_top">
<view class="item_img"> <view class="item_img">
<text style="margin-left: 10rpx;">公益问诊</text> <text style="margin-left: 10rpx;">公益问诊</text>
@ -33,9 +56,9 @@
<view class="item_date">2023-1-02 12:22</view> <view class="item_date">2023-1-02 12:22</view>
</view> </view>
<view class="item_content">您有新的图文问诊咨询,请注意查看。</view> <view class="item_content">您有新的图文问诊咨询,请注意查看。</view>
</view> </view> -->
<view class="item"> <!-- <view class="item">
<view class="item_top"> <view class="item_top">
<view class="item_img"> <view class="item_img">
<text style="margin-left: 10rpx;">问诊购药</text> <text style="margin-left: 10rpx;">问诊购药</text>
@ -44,8 +67,14 @@
<view class="item_date">2023-1-02 12:22</view> <view class="item_date">2023-1-02 12:22</view>
</view> </view>
<view class="item_content">您有新的图文问诊咨询,请注意查看。</view> <view class="item_content">您有新的图文问诊咨询,请注意查看。</view>
</view> </view> -->
</view>
<van-empty description="暂无数据" wx:if="{{list.length == 0}}" />
<van-divider contentPosition="center" wx:if="{{list.length > 0 && current_page == last_page}}">到底了~</van-divider>
<van-image bind:click="putMessageReadNoticeAll" style="position: fixed; right: 0;bottom: 262rpx;" src="https://img.applets.igandanyiyuan.com/applet/doctor/static/images/yishi/service_notice/readall.png" fit="heightFix" height="84rpx" aria-label="role" />
<view style="height: 50rpx;">
</view> </view>
</view> </view>

View File

@ -1,3 +1,5 @@
import { API } from './../../../utils/network/api'
const api = new API()
const app = getApp() const app = getApp()
Page({ Page({
data: { data: {
@ -7,23 +9,77 @@ Page({
}, },
height: app.globalData.height, height: app.globalData.height,
visible: false, visible: false,
list: [],
current_page: 0,
total: 0,
per_page: 0,
last_page: 0,
}, },
go(e){ go(e){
wx.navigateTo({ this.putMessageReadNotice(e);
url: e.currentTarget.dataset.url, app.go(e.currentTarget.dataset.url);
events: { },
// 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据 onShow(){
acceptDataFromOpenedPage: function(data) { this.setData({
console.log(data) list: [],
}, current_page: 0,
someEvent: function(data) { total: 0,
console.log(data) per_page: 0,
} last_page: 0,
},
success: function(res) {
// 通过 eventChannel 向被打开页面传送数据
res.eventChannel.emit('acceptDataFromOpenerPage', { data: 'test' })
}
}) })
let ap = this.getList();
ap.then(res => {
this.check()
})
},
check(){
// 不满一页自动加载下一页
wx.createSelectorQuery().select('#list').boundingClientRect(res2 => {
console.log(res2.height)
console.log(wx.getSystemInfoSync().windowHeight)
if (res2.height < wx.getSystemInfoSync().windowHeight) {
this.getList().then(res => {
if(this.data.current_page < this.data.last_page){
this.check()
}
});
}
}).exec()
},
getList(){
let current_page = this.data.current_page;
current_page = current_page + 1;
this.setData({
current_page: current_page
})
let list = this.data.list;
return api.getDoctorMessageSystem({page: current_page}).then(response => {
console.log(response);
this.setData({
list: list.concat(response.data.data),
current_page: response.data.current_page,
total: response.data.total,
per_page: response.data.per_page,
last_page: response.data.last_page,
})
}).catch(errors => {console.error(errors);})
},
onReachBottom() {
console.log('===触底了!!===');
if(this.data.current_page < this.data.last_page){//最后一页时停止分页
this.getList()
}
},
putMessageReadNotice(e){
let notice_id = e.currentTarget.dataset.notice_id;
api.putMessageReadNotice({notice_id: notice_id}).then(response => {
console.log(response);
}).catch(errors => {console.error(errors);})
},
putMessageReadNoticeAll(){
api.putMessageReadNoticeAll({notice_type: 2}).then(response => {
console.log(response);
}).catch(errors => {console.error(errors);})
} }
}) })

View File

@ -2,6 +2,10 @@
"component": true, "component": true,
"usingComponents": { "usingComponents": {
"te-nav-bar": "/commpents/te_navbar", "te-nav-bar": "/commpents/te_navbar",
"van-image": "@vant/weapp/image/index" "van-image": "@vant/weapp/image/index",
} "van-divider": "@vant/weapp/divider/index",
"van-empty": "@vant/weapp/empty/index"
},
"enablePullDownRefresh": false,
"onReachBottomDistance": 50
} }

View File

@ -1,45 +1,22 @@
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar> <te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
<view class="container"> <view class="container">
<view class="list"> <view class="list" id="list">
<view class="item" bindtap="go" data-notice_id="{{item.notice_id}}" data-url="/Pages/yishi/notice_deatil/index?notice_id={{item.notice_id}}" wx:for="{{list}}">
<view class="item" bindtap="go" data-url="/Pages/yishi/notice_deatil/index">
<view class="item_top"> <view class="item_top">
<view class="item_img"> <view class="item_img">
<van-image class="van_img" src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/yishi/service_notice/kuaisu.png" fit="heightFix" height="54rpx" aria-label="qrcode" /> <van-image class="van_img" src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/yishi/service_notice/kuaisu.png" fit="heightFix" height="54rpx" aria-label="qrcode" />
</view> </view>
<view class="item_content">9月份的服务费结算通知</view> <view class="item_content">{{item.notice_title}}</view>
</view> </view>
<view class="hongdian"> <view class="hongdian" wx:if="{{item.read_status == 0}}">
<van-image src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/yishi/honhdian.png" fit="heightFix" height="20rpx" aria-label="qrcode" /> <van-image src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/yishi/honhdian.png" fit="heightFix" height="20rpx" aria-label="qrcode" />
</view> </view>
</view> </view>
</view>
<view class="item" bindtap="go" data-url="/Pages/yishi/notice_deatil/index"> <van-empty description="暂无数据" wx:if="{{list.length == 0}}" />
<view class="item_top"> <van-divider contentPosition="center" wx:if="{{list.length > 0 && current_page == last_page}}">到底了~</van-divider>
<view class="item_img"> <van-image bind:click="putMessageReadNoticeAll" style="position: fixed; right: 0;bottom: 262rpx;" src="https://img.applets.igandanyiyuan.com/applet/doctor/static/images/yishi/service_notice/readall.png" fit="heightFix" height="84rpx" aria-label="role" />
<van-image class="van_img" src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/yishi/service_notice/kuaisu.png" fit="heightFix" height="54rpx" aria-label="qrcode" /> <view style="height: 50rpx;">
</view>
<view class="item_content">8月份的服务费结算通知</view>
</view>
</view>
<view class="item" bindtap="go" data-url="/Pages/yishi/notice_deatil/index">
<view class="item_top">
<view class="item_img">
<van-image class="van_img" src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/yishi/service_notice/kuaisu.png" fit="heightFix" height="54rpx" aria-label="qrcode" />
</view>
<view class="item_content">7月份的服务费结算通知</view>
</view>
</view>
<view class="item" bindtap="go" data-url="/Pages/yishi/notice_deatil/index">
<view class="item_top">
<view class="item_img">
<van-image class="van_img" src="https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/yishi/service_notice/kuaisu.png" fit="heightFix" height="54rpx" aria-label="qrcode" />
</view>
<view class="item_content">6月份的服务费结算通知</view>
</view>
</view>
</view> </view>
</view> </view>

View File

@ -10,7 +10,7 @@ Page({
title: '问诊消息', //导航栏 中间的标题 title: '问诊消息', //导航栏 中间的标题
}, },
height: app.globalData.height, height: app.globalData.height,
has_data: true, has_data: false,
data_list_1: [], data_list_1: [],
data_list_2: [], data_list_2: [],
data_list_3: [], data_list_3: [],
@ -248,6 +248,10 @@ Page({
if(!order_inquiry_id) return; if(!order_inquiry_id) return;
let inquiry_type = cloudCustomDataJson.inquiry_type; let inquiry_type = cloudCustomDataJson.inquiry_type;
if(!inquiry_type) return; if(!inquiry_type) return;
if(inquiry_type > 4) return;
let patient_family_data = cloudCustomDataJson.patient_family_data;
if(!patient_family_data) return;
console.log("patient_family_data: ", patient_family_data);
let session_item = {}; let session_item = {};
session_item.inquiry_status = item.inquiry_status;//订单状态暂无 session_item.inquiry_status = item.inquiry_status;//订单状态暂无
let txt = {}; let txt = {};
@ -257,10 +261,10 @@ Page({
session_item.message_type = type; session_item.message_type = type;
session_item.order_inquiry_id = order_inquiry_id; session_item.order_inquiry_id = order_inquiry_id;
session_item.inquiry_type = inquiry_type; session_item.inquiry_type = inquiry_type;
session_item.patient_age = item.patient_age;//暂无 session_item.patient_age = patient_family_data.patient_age;
session_item.patient_name = userProfile.nick; session_item.patient_name = patient_family_data.patient_name;
session_item.patient_sex = patient_family_data.patient_sex;
session_item.from_account = userProfile.userID; session_item.from_account = userProfile.userID;
session_item.patient_sex = item.patient_sex;//暂无
let unreadCount = item.unreadCount; let unreadCount = item.unreadCount;
if(unreadCount > 0){ if(unreadCount > 0){
session_item.message_dot = true; session_item.message_dot = true;
@ -276,7 +280,7 @@ Page({
data_list_4: session_data_list_4, data_list_4: session_data_list_4,
}) })
if(session_data_list_1.length == 0 && session_data_list_2.length == 0 && session_data_list_3.length == 0 && session_data_list_4.length == 0 && session_data_list_5.length == 0){ if(this.data.data_list_1.length == 0 && this.data.data_list_2.length == 0 && this.data.data_list_3.length == 0 && this.data.data_list_4.length == 0 && this.data.data_list_5.length == 0){
this.setData({has_data: false}) this.setData({has_data: false})
}else{ }else{
this.setData({has_data: true}) this.setData({has_data: true})

View File

@ -3,7 +3,7 @@
<view class="container" style="height: calc(100vh - 96rpx - {{height}}px);"> <view class="container" style="height: calc(100vh - 96rpx - {{height}}px);">
<van-checkbox-group value="{{ result }}" bind:change="onChange"> <van-checkbox-group value="{{ result }}" bind:change="onChange">
<view class="order_list"> <view class="order_list">
<view class="order_item"> <!-- <view class="order_item">
<view class="order_item_checkbox"> <view class="order_item_checkbox">
<van-checkbox name="a"></van-checkbox> <van-checkbox name="a"></van-checkbox>
</view> </view>
@ -18,7 +18,7 @@
<view class="order_id">预计收入:<text style="font-size: 30rpx;color: #666666;">¥112.00元</text></view> <view class="order_id">预计收入:<text style="font-size: 30rpx;color: #666666;">¥112.00元</text></view>
</view> </view>
</view> </view>
</view> </view> -->
<view class="order_item" wx:for="{{order_list}}" wx:for-index="idx"> <view class="order_item" wx:for="{{order_list}}" wx:for-index="idx">
<view class="order_item_checkbox"> <view class="order_item_checkbox">

View File

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

View File

@ -63,8 +63,8 @@ Component({
notShow: false, notShow: false,
isShow: true, isShow: true,
commonFunction: [ commonFunction: [
{ name: '查看病例', key: '10' }, { name: '查看完整病例', key: '10' },
{ name: '开处方', key: '11' }, { name: '在线开处方', key: '11' },
], ],
displayServiceEvaluation: false, displayServiceEvaluation: false,
showErrorImageFlag: 0, showErrorImageFlag: 0,
@ -296,12 +296,45 @@ Component({
// 发送图片消息 // 发送图片消息
handleSendImageMessage(file) { handleSendImageMessage(file) {
//获取最后一条消息
let message_length = this.data.messageList.length;
let last_message = {};
if(message_length > 0){
last_message = this.data.messageList[message_length - 1];
}
console.log("last_message: ", last_message);
let cloudCustomData = "";
let cloudCustomDataJson = "";
if(last_message.cloudCustomData){
cloudCustomData = last_message.cloudCustomData;
}
if(cloudCustomData){
cloudCustomDataJson = JSON.parse(cloudCustomData);
}
let message_rounds = 0;
let patient_family_data = "";
if(cloudCustomDataJson){
message_rounds = cloudCustomDataJson.message_rounds;
patient_family_data = cloudCustomDataJson.patient_family_data
}
const mycloudCustomData = JSON.stringify({
order_inquiry_id: this.data.order_inquiry_id,
inquiry_type: this.data.inquiry_type,
message_type: 0,
is_system: 0,
message_rounds: message_rounds,
patient_family_data: patient_family_data
});
const message = wx.$TUIKit.createImageMessage({ const message = wx.$TUIKit.createImageMessage({
to: this.getToAccount(), to: this.getToAccount(),
conversationType: this.data.conversation.type, conversationType: this.data.conversation.type,
payload: { payload: {
file, file,
}, },
cloudCustomData: mycloudCustomData,
onProgress: (percent) => { onProgress: (percent) => {
message.percent = percent; message.percent = percent;
}, },
@ -359,13 +392,31 @@ Component({
app.go("/Pages/yishi/case/index?order_inquiry_id="+this.data.order_inquiry_id) app.go("/Pages/yishi/case/index?order_inquiry_id="+this.data.order_inquiry_id)
break; break;
case '11'://在线开方 case '11'://在线开方
app.go("/Pages/yishi/onlinechufang/index?order_inquiry_id="+this.data.order_inquiry_id) let userID = wx.getStorageSync('user_id');
let multi_point_status = wx.getStorageSync(userID+'_multi_point_status');
if(multi_point_status == 1){
app.go("/Pages/yishi/onlinechufang/index?order_inquiry_id="+this.data.order_inquiry_id)
}else{
this.setData({
dialog_visible: true
})
}
break; break;
default: default:
break; break;
} }
}, },
cancelDialog(){
this.setData({
dialog_visible: false
})
},
confirmDialog(){
app.go("/Pages/yishi/zhiye_identity/index")
this.setData({
dialog_visible: false
})
},
handleSendOrder() { handleSendOrder() {
this.setData({ this.setData({
displayOrderList: true, displayOrderList: true,
@ -504,21 +555,51 @@ Component({
ext2: wx.$chat_reportType, ext2: wx.$chat_reportType,
ext3: wx.$chat_SDKAppID, ext3: wx.$chat_SDKAppID,
}); });
//获取最后一条消息
let message_length = this.data.messageList.length;
let last_message = {};
if(message_length > 0){
last_message = this.data.messageList[message_length - 1];
}
console.log("last_message: ", last_message);
let cloudCustomData = "";
let cloudCustomDataJson = "";
if(last_message.cloudCustomData){
cloudCustomData = last_message.cloudCustomData;
}
if(cloudCustomData){
cloudCustomDataJson = JSON.parse(cloudCustomData);
}
let message_rounds = 0;
let patient_family_data = "";
if(cloudCustomDataJson){
message_rounds = cloudCustomDataJson.message_rounds;
patient_family_data = cloudCustomDataJson.patient_family_data
}
const to = this.getToAccount(); const to = this.getToAccount();
const text = flag ? msg : this.data.message; const text = flag ? msg : this.data.message;
const { FEAT_NATIVE_CODE } = constant; const { FEAT_NATIVE_CODE } = constant;
const mycloudCustomData = JSON.stringify({
order_inquiry_id: this.data.order_inquiry_id,
inquiry_type: this.data.inquiry_type,
message_type: 0,
is_system: 0,
message_rounds: message_rounds,
patient_family_data: patient_family_data
});
console.log("mycloudCustomData: ", mycloudCustomData);
console.log("text: ", text);
const message = wx.$TUIKit.createTextMessage({ const message = wx.$TUIKit.createTextMessage({
to, to,
conversationType: this.data.conversation.type, conversationType: this.data.conversation.type,
payload: { payload: {
text, text,
}, },
cloudCustomData: JSON.stringify({ cloudCustomData: mycloudCustomData
order_inquiry_id: this.data.order_inquiry_id,
inquiry_type: this.data.inquiry_type,
message_type: 0,
is_system: 0
}),
}); });
this.setData({ this.setData({
message: '', message: '',

View File

@ -4,6 +4,7 @@
"Emoji": "../MessageElements/Emoji/index", "Emoji": "../MessageElements/Emoji/index",
"CommonWords": "../MessagePrivate/CommonWords/index", "CommonWords": "../MessagePrivate/CommonWords/index",
"OrderList": "../MessagePrivate/OrderList/index", "OrderList": "../MessagePrivate/OrderList/index",
"ServiceEvaluation": "../MessagePrivate/ServiceEvaluation/index" "ServiceEvaluation": "../MessagePrivate/ServiceEvaluation/index",
"t-dialog": "tdesign-miniprogram/dialog/dialog"
} }
} }

View File

@ -101,4 +101,15 @@
{{title}} {{title}}
</view> </view>
</view> </view>
<t-dialog
visible="{{ dialog_visible }}"
title="温馨提示"
content="请您先多点执业认证"
>
<view slot="cancel-btn" class="dialog dialog_cancel_btn" bindtap="cancelDialog">
取消
</view>
<view slot="confirm-btn" class="dialog dialog_confirm_btn" bindtap="confirmDialog">
确定
</view>
</t-dialog>

View File

@ -1,40 +1,43 @@
.TUI-message-input-container { .TUI-message-input-container {
background-color: #fff; background-color: #fff;
width: 100vw;
z-index: 9999;
} }
.TUI-message-input { .TUI-message-input {
display: flex; display: flex;
padding-bottom: 16rpx; padding-bottom: 16rpx;
background-color: #fff; background-color: #fff;
width: 95vw; width: 95vw;
overflow: scroll; overflow: scroll;
margin: 0 auto; margin: 0 auto;
} }
.TUI-commom-function { .TUI-commom-function {
background-color: blueviolet; background-color: blueviolet;
display: flex; display: flex;
flex-wrap: nowrap; flex-wrap: nowrap;
width: 750rpx; width: 95vw;
height: 106rpx; height: 106rpx;
background-color: #FFF; background-color: #FFF;
align-items: center; align-items: center;
margin: 0 auto;
} }
.TUI-commom-function-item { .TUI-commom-function-item {
background-color: brown; display: flex;
display: flex; justify-content: center;
width: 136rpx; align-items: center;
justify-content: center; font-size: 28rpx;
align-items: center; color: #3CC7C0;
font-size: 28rpx; height: 48rpx;
color: #3CC7C0; margin-left: 16rpx;
height: 48rpx; border-radius: 10rpx;
margin-left: 16rpx; background-color: #fff;
border-radius: 10rpx; border: 1px solid #3CC7C0;
background-color: #fff; padding: 0 20rpx;
border: 1px solid #3CC7C0;
} }
.TUI-commom-function-item:first-child{ .TUI-commom-function-item:first-child{
margin-left: 48rpx; border: 1px solid #999;
color: #999;
} }
.TUI-message-input-functions { .TUI-message-input-functions {
flex: 2; flex: 2;
@ -63,7 +66,6 @@
} }
.TUI-message-input-area { .TUI-message-input-area {
width: 100%; width: 100%;
height: 100%;
max-height: 300rpx; max-height: 300rpx;
/* 最多显示10行 */ /* 最多显示10行 */
line-height: 30rpx; line-height: 30rpx;
@ -185,4 +187,18 @@
background-color: #fff; background-color: #fff;
font-size: 30rpx; font-size: 30rpx;
color: #666666; color: #666666;
}
.dialog{
width: 50%;
text-align: center;
height: 100rpx;
line-height: 100rpx;
}
.dialog_cancel_btn{
border-top: 1px solid #E9E9E9;
border-right: 1px solid #E9E9E9;
}
.dialog_confirm_btn{
border-top: 1px solid #E9E9E9;
color: #3CC7C0;
} }

View File

@ -1,6 +1,8 @@
import dayjs from '../../../../utils/dayjs'; import dayjs from '../../../../utils/dayjs';
import logger from '../../../../utils/logger'; import logger from '../../../../utils/logger';
import constant from '../../../../utils/constant'; import constant from '../../../../utils/constant';
import { API } from './../../../../../utils/network/api'
const api = new API()
// eslint-disable-next-line no-undef // eslint-disable-next-line no-undef
const app = getApp(); const app = getApp();
Component({ Component({
@ -20,6 +22,10 @@ Component({
}); });
}, },
}, },
order_inquiry_id:{
type: String,
value: "",
},
unreadCount: { unreadCount: {
type: Number, type: Number,
value: '', value: '',
@ -81,10 +87,13 @@ Component({
errorMessage: {}, errorMessage: {},
errorMessageID: '', errorMessageID: '',
typingMessage: {}, typingMessage: {},
dialog_visible: false,
}, },
lifetimes: { lifetimes: {
attached() { attached() {
}, },
ready() { ready() {
if (this.data.unreadCount > 12) { if (this.data.unreadCount > 12) {
@ -112,6 +121,7 @@ Component({
wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.MESSAGE_RECEIVED, this.$onMessageReceived, this); wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.MESSAGE_RECEIVED, this.$onMessageReceived, this);
wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.MESSAGE_READ_BY_PEER, this.$onMessageReadByPeer, this); wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.MESSAGE_READ_BY_PEER, this.$onMessageReadByPeer, this);
wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.MESSAGE_REVOKED, this.$onMessageRevoked, this); wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.MESSAGE_REVOKED, this.$onMessageRevoked, this);
}, },
detached() { detached() {
@ -123,6 +133,26 @@ Component({
}, },
methods: { methods: {
//结束问诊
putDoctorInquiryFinish() {
this.setData({
dialog_visible: true
})
},
cancelDialog(){
this.setData({
dialog_visible: false
})
},
confirmDialog(){
api.putDoctorInquiryFinish({order_inquiry_id: this.data.order_inquiry_id}).then(response => {
console.log(response);
}).catch(errors => {console.error(errors);})
this.setData({
dialog_visible: false
})
},
// 刷新消息列表 // 刷新消息列表
refresh() { refresh() {
if (this.data.isCompleted) { if (this.data.isCompleted) {

View File

@ -12,6 +12,7 @@
"FaceMessage": "../MessageElements/FaceMessage/index", "FaceMessage": "../MessageElements/FaceMessage/index",
"FileMessage": "../MessageElements/FileMessage/index", "FileMessage": "../MessageElements/FileMessage/index",
"MergerMessage": "../MessageElements/MergerMessage/index", "MergerMessage": "../MessageElements/MergerMessage/index",
"RevokeMessage": "../MessageElements/RevokeMessage/index" "RevokeMessage": "../MessageElements/RevokeMessage/index",
"t-dialog": "tdesign-miniprogram/dialog/dialog"
} }
} }

View File

@ -1,14 +1,5 @@
<view class="container"> <view class="container">
<view class="info" wx:if="{{ true }}">
<view class="left">
<view class="name">张三三</view>
<view class="age">男30岁</view>
<view class="status">接诊中</view>
</view>
<view class="right">
<text class="right_txt">结束问诊</text>
</view>
</view>
<scroll-view class="message-list-container" scroll-y="true" scroll-into-view="{{jumpAim}}" refresher-enabled="{{true}}" bindrefresherrefresh="refresh" refresher-triggered="{{triggered}}" lower-threshold="200" bindscrolltolower="scrollHandler"> <scroll-view class="message-list-container" scroll-y="true" scroll-into-view="{{jumpAim}}" refresher-enabled="{{true}}" bindrefresherrefresh="refresh" refresher-triggered="{{triggered}}" lower-threshold="200" bindscrolltolower="scrollHandler">
<view class="no-message" wx:if="{{isCompleted}}">没有更多啦</view> <view class="no-message" wx:if="{{isCompleted}}">没有更多啦</view>
<view class="t-message" wx:if="{{conversation.type !== '@TIM#SYSTEM'}}" wx:for="{{messageList}}" wx:key="index" data-index ='{{index}}' > <view class="t-message" wx:if="{{conversation.type !== '@TIM#SYSTEM'}}" wx:for="{{messageList}}" wx:key="index" data-index ='{{index}}' >
@ -88,3 +79,16 @@
</view> </view>
</view> </view>
<wxs src = './concat.wxs' module = 'concat'/> <wxs src = './concat.wxs' module = 'concat'/>
<t-dialog
visible="{{ dialog_visible }}"
title="温馨提示"
content="您确认结束问诊?"
>
<view slot="cancel-btn" class="dialog dialog_cancel_btn" bindtap="cancelDialog">
取消
</view>
<view slot="confirm-btn" class="dialog dialog_confirm_btn" bindtap="confirmDialog">
确定
</view>
</t-dialog>

View File

@ -4,8 +4,9 @@
background-color: #F4F4F4; background-color: #F4F4F4;
} }
.message-list-container { .message-list-container {
/* margin-top: 20rpx; */
width: 100%; width: 100%;
height: calc(100% - 120rpx); height: calc(100%);
background-color: #F4F4F4; background-color: #F4F4F4;
} }
.t-message-item { .t-message-item {
@ -13,7 +14,8 @@
padding: 14rpx 0; padding: 14rpx 0;
} }
.t-message{ .t-message{
position: relative position: relative;
z-index: -9;
} }
.t-recieve-message { .t-recieve-message {
display: flex; display: flex;
@ -250,45 +252,17 @@
padding-left: 5px; padding-left: 5px;
color: blue; color: blue;
} }
.info{ .dialog{
width: 50%;
text-align: center;
height: 100rpx; height: 100rpx;
background-color: #fff; line-height: 100rpx;
display: flex;
justify-content: space-around;
align-items: center;
box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.08);
} }
.left{ .dialog_cancel_btn{
display: flex; border-top: 1px solid #E9E9E9;
justify-content: space-around; border-right: 1px solid #E9E9E9;
align-items: center;
flex: 2;
} }
.right{ .dialog_confirm_btn{
flex: 1; border-top: 1px solid #E9E9E9;
text-align: right;
font-size: 28rpx;
color: #FFFFFF;
padding-right: 20rpx;
}
.right_txt{
background: #3CC7C0;
border-radius: 29rpx;
padding: 10rpx 20rpx;
}
.name{
font-size: 34rpx;
color: #3CC7C0; color: #3CC7C0;
}
.age{
font-size: 34rpx;
color: #666666;
}
.status{
background: #FFF2E8;
box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.08);
border-radius: 10rpx;
font-size: 24rpx;
color: #FA541C;
padding: 10rpx 20rpx;
} }

View File

@ -1,11 +1,14 @@
// TUIKit-WChat/Chat/index.js // TUIKit-WChat/Chat/index.js
import logger from '../../utils/logger'; import logger from '../../utils/logger';
import constant from '../../utils/constant'; import constant from '../../utils/constant';
import { API } from './../../../utils/network/api'
const api = new API()
// eslint-disable-next-line no-undef // eslint-disable-next-line no-undef
const app = getApp(); const app = getApp();
const inputStyle = ` const inputStyle = `
--padding: 25px --padding: 0px;
z-index: 9999999;
`; `;
let newInputStyle = ` let newInputStyle = `
@ -66,7 +69,31 @@ Component({
showTips: true, 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);
},
});
}, },
ready() {
this.getInquiryMessageBasic()
}
}, },
/** /**
* 组件的初始数据 * 组件的初始数据
@ -95,16 +122,31 @@ Component({
showTips: false, showTips: false,
showGroupTips: false, showGroupTips: false,
showAll: false, showAll: false,
navbarData: {
showCapsule: 2, //是否显示左上角图标 1表示显示 0表示不显示
title: '', //导航栏 中间的标题
},
baseInfo: {},
navbar_height: 0
}, },
/** /**
* 组件的方法列表 * 组件的方法列表
*/ */
methods: { methods: {
//获取问诊订单消息内页基础数据
getInquiryMessageBasic() {
console.log("order_inquiry_id: ", this.data.order_inquiry_id);
api.getInquiryMessageBasic({order_inquiry_id: this.data.order_inquiry_id}).then(response => {
console.log(response);
this.setData({
baseInfo: response.data,
"navbarData.title": response.data.patient_name
})
}).catch(errors => {console.error(errors);})
},
init() { init() {
console.warn("TUIChat js: init", this.data.conversationID) console.warn("TUIChat js: init", this.data.conversationID)
wx.$TUIKit.setMessageRead({ conversationID: this.data.conversationID }).then(() => { wx.$TUIKit.setMessageRead({ conversationID: this.data.conversationID }).then(() => {
logger.log('| TUI-chat | setMessageRead | ok'); logger.log('| TUI-chat | setMessageRead | ok');
}); });

View File

@ -3,6 +3,8 @@
"usingComponents": { "usingComponents": {
"MessageList": "./components/MessageList/index", "MessageList": "./components/MessageList/index",
"MessageInput": "./components/MessageInput/index", "MessageInput": "./components/MessageInput/index",
"TUIGroup": "../TUIGroup/index" "TUIGroup": "../TUIGroup/index",
} "te-nav-bar": "/commpents/te_navbar"
},
"disableScroll":true
} }

View File

@ -1,18 +1,30 @@
<!--TUIKit-WChat/Chat/index.wxml--> <!--TUIKit-WChat/Chat/index.wxml-->
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
<view class="container"> <view class="container">
<view class="tui-navigatorbar"> <view class="info" wx:if="{{ true }}">
<image class="tui-navigatorbar-back" bindtap="goBack" src="../../static/assets/ic_back_white.svg" /> <view class="left">
<view class="name">{{baseInfo.patient_name}}</view>
<view class="age">{{baseInfo.patient_sex==1?'男':'女'}}{{baseInfo.patient_age}}岁</view>
<view class="status">{{baseInfo.inquiry_status==1?'待支付':baseInfo.inquiry_status==2?'待分配':baseInfo.inquiry_status==3?'待接诊':baseInfo.inquiry_status==4?'已接诊':baseInfo.inquiry_status==5?'已完成':baseInfo.inquiry_status==6?'已结束':baseInfo.inquiry_status==7?'已取消':'未知'}}</view>
</view>
<view class="right">
<text class="right_txt" bindtap="putDoctorInquiryFinish">结束问诊</text>
</view>
</view>
<!-- <view class="tui-navigatorbar">
<image class="tui-navigatorbar-back" bindtap="goBack" src="../../static/assets/ic_back_black.svg" />
<view class="conversation-title">{{conversationName}}</view> <view class="conversation-title">{{conversationName}}</view>
</view> </view> -->
<view class="list-box {{ showTips && 'list-box-notips'}} || {{ showGroupTips && 'list-box-group'}} || {{ showAll && 'list-box-group-notips'}} "> <view class="list-box {{ showTips && 'list-box-notips'}} || {{ showGroupTips && 'list-box-group'}} || {{ showAll && 'list-box-group-notips'}}" style="height: calc(100vh - 197rpx - 100rpx - {{navbar_height}}px);">
<view wx:if="{{showTips}}" class="safetytips-box"> <!-- <view wx:if="{{showTips}}" class="safetytips-box"> -->
<!-- <view class="safetytips"> <!-- <view class="safetytips">
<text>【安全提示】本 APP 仅用于体验腾讯云即时通信 IM 产品功能,不可用于业务洽谈与拓展。请勿轻信汇款、中奖等涉及钱款等信息,勿轻易拨打陌生电话,谨防上当受骗。</text> <text>【安全提示】本 APP 仅用于体验腾讯云即时通信 IM 产品功能,不可用于业务洽谈与拓展。请勿轻信汇款、中奖等涉及钱款等信息,勿轻易拨打陌生电话,谨防上当受骗。</text>
<span class="report" bindtap="handleReport">点此投诉</span> <span class="report" bindtap="handleReport">点此投诉</span>
</view> --> </view> -->
</view> <!-- </view> -->
<scroll-view class="message-list" bindtap="triggerClose"> <scroll-view class="message-list" bindtap="triggerClose">
<MessageList id="MessageList" conversation="{{conversation}}" unreadCount="{{unreadCount}}" bind:changeMemberCount="changeMemberCount" bind:resendMessage="resendMessage" bind:typing="typing"></MessageList> <MessageList id="MessageList" conversation="{{conversation}}" unreadCount="{{unreadCount}}" bind:changeMemberCount="changeMemberCount" bind:resendMessage="resendMessage" bind:typing="typing" order_inquiry_id="{{order_inquiry_id}}"></MessageList>
</scroll-view> </scroll-view>
</view> </view>
<view class="group-profile"> <view class="group-profile">
@ -24,4 +36,7 @@
bind:handleCall="handleCall" ></MessageInput> bind:handleCall="handleCall" ></MessageInput>
</view> </view>
</view> </view>
<view style="height: 30px;position: fixed;bottom: 0;width: 100%;background-color: #fff;">
</view>
</view> </view>

View File

@ -1,7 +1,7 @@
.container { .container {
width: 100vw; width: 100vw;
/* height: 100vh; */ height: 100vh;
background-color: #dcaceb; background-color: #F4F4F4;
} }
.safetytips-box{ .safetytips-box{
background: rgba(255, 149, 0, 0.1); background: rgba(255, 149, 0, 0.1);
@ -25,7 +25,7 @@
top: 0; top: 0;
width: 750rpx; width: 750rpx;
height: 172rpx; height: 172rpx;
background-color: #bae46b; background-color: #ffffff;
} }
.tui-navigatorbar-back{ .tui-navigatorbar-back{
@ -80,10 +80,9 @@
align-items: center; align-items: center;
} }
.list-box { .list-box {
position: absolute; /* position: absolute; */
width: 100vw; width: 100vw;
height: calc(100vh - 210px); /* position: fixed; */
top: 172rpx;
} }
.list-box-notips { .list-box-notips {
height: calc(100vh - 284px); height: calc(100vh - 284px);
@ -98,8 +97,10 @@
} }
.input-area { .input-area {
position: absolute; position: absolute;
bottom: 0; bottom: 20px;
} z-index: 999999;
/* height: 200rpx; */
}
.message-list { .message-list {
width: 100%; width: 100%;
height: 100%; height: 100%;
@ -110,6 +111,7 @@
width: 100%; width: 100%;
padding-bottom: var(--padding); padding-bottom: var(--padding);
background-color: #ffffff; background-color: #ffffff;
z-index: 999999;
} }
.calling { .calling {
position: fixed; position: fixed;
@ -124,3 +126,47 @@
z-index: 8; z-index: 8;
position: absolute; position: absolute;
} }
.info{
/* position: relative; */
z-index: 9;
height: 100rpx;
background-color: rgb(255, 255, 255);
display: flex;
justify-content: space-around;
align-items: center;
box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.08);
}
.left{
display: flex;
justify-content: space-around;
align-items: center;
flex: 2;
}
.right{
flex: 1;
text-align: right;
font-size: 28rpx;
color: #FFFFFF;
padding-right: 20rpx;
}
.right_txt{
background: #3CC7C0;
border-radius: 29rpx;
padding: 10rpx 20rpx;
}
.name{
font-size: 34rpx;
color: #3CC7C0;
}
.age{
font-size: 34rpx;
color: #666666;
}
.status{
background: #FFF2E8;
box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.08);
border-radius: 10rpx;
font-size: 24rpx;
color: #FA541C;
padding: 10rpx 20rpx;
}

5
app.js
View File

@ -58,6 +58,11 @@ App({
imInit(){ imInit(){
let userID = wx.getStorageSync('user_id'); let userID = wx.getStorageSync('user_id');
let usertype = wx.getStorageSync('usertype');
if(usertype != 2){//只登录医师端
return;
}
if(userID == ""){ if(userID == ""){
return; return;
} }

View File

@ -98,6 +98,8 @@ Component({
work_cert_reason: "", work_cert_reason: "",
department_custom_name_reason: '', department_custom_name_reason: '',
zhuanchang_note: '请选择专长', zhuanchang_note: '请选择专长',
jianjie_show: false,
shanchang_show: false,
}, },
options: { options: {
@ -363,7 +365,9 @@ Component({
onChangeCity(e) { onChangeCity(e) {
this.setData({ this.setData({
select_county_id: "", select_county_id: "",
select_yiyuan_id: "" select_yiyuan_id: "",
yiyuan_note: "请选择医院",
city_note: "请选择城市",
}) })
console.log("onChangeCity"); console.log("onChangeCity");
const { selectedOptions } = e.detail; const { selectedOptions } = e.detail;
@ -595,10 +599,30 @@ Component({
onshowJianJieNote(e){ onshowJianJieNote(e){
e.detail // 自定义组件触发事件时提供的 detail 对象 e.detail // 自定义组件触发事件时提供的 detail 对象
console.log("onshowJianJieNote"); console.log("onshowJianJieNote");
this.setData({
jianjie_show: true,
});
},
onJianjieClose(e){
e.detail // 自定义组件触发事件时提供的 detail 对象
console.log("onshowJianJieNote");
this.setData({
jianjie_show: false,
});
}, },
onshowShanChangNote(e){ onshowShanChangNote(e){
e.detail // 自定义组件触发事件时提供的 detail 对象 e.detail // 自定义组件触发事件时提供的 detail 对象
console.log("onshowShanChangNote"); console.log("onshowShanChangNote");
this.setData({
shanchang_show: true,
});
},
onshowShanChangNoteClose(e){
e.detail // 自定义组件触发事件时提供的 detail 对象
console.log("onshowShanChangNote");
this.setData({
shanchang_show: false,
});
}, },
onshowZhiYeNote(e){ onshowZhiYeNote(e){
e.detail // 自定义组件触发事件时提供的 detail 对象 e.detail // 自定义组件触发事件时提供的 detail 对象

View File

@ -19,6 +19,7 @@
"van-toast": "@vant/weapp/toast/index", "van-toast": "@vant/weapp/toast/index",
"van-button": "@vant/weapp/button/index", "van-button": "@vant/weapp/button/index",
"van-icon": "@vant/weapp/icon/index", "van-icon": "@vant/weapp/icon/index",
"van-search": "@vant/weapp/search/index" "van-search": "@vant/weapp/search/index",
"van-empty": "@vant/weapp/empty/index"
} }
} }

View File

@ -46,7 +46,8 @@
default-index="{{select_yiyuan_index}}" default-index="{{select_yiyuan_index}}"
bind:cancel="onYiYuanCancel" bind:cancel="onYiYuanCancel"
bind:confirm="onYiYuanConfirm" bind:confirm="onYiYuanConfirm"
bind:change="onYiYuanChange" /> bind:change="onYiYuanChange"
/>
<van-search <van-search
value="{{ hospital_search_val }}" value="{{ hospital_search_val }}"
@ -56,6 +57,9 @@
bind:change="hospitalSearchChange" bind:change="hospitalSearchChange"
bind:search="hospitalSearch" bind:search="hospitalSearch"
/> />
<van-empty description="暂无医院" wx:if="{{yiyuan_columns.length == 0}}"/>
</van-popup> </van-popup>
<t-cell title="科室" hover required arrow note="{{keshi_note}}" <t-cell title="科室" hover required arrow note="{{keshi_note}}"
bindtap="{{(indentity && iden_auth_disabled)?'':'onKeshiShow'}}" bordered="{{ select_keshi_id == '' }}"/> bindtap="{{(indentity && iden_auth_disabled)?'':'onKeshiShow'}}" bordered="{{ select_keshi_id == '' }}"/>
@ -146,6 +150,30 @@
</view> </view>
</van-popup> </van-popup>
<van-popup
show="{{ jianjie_show }}"
closeable
round
position="bottom"
bind:close="onJianjieClose"
>
<view class="jianjie_popup">
博士xxxx医院肝病科副主任医师硕士研究生导师中华医学会肝病学分会青年委员北京医学会感染病学分会委员2015首都十大杰出青年医生2020年中华医学会抗击新冠优秀个人作为主要研究者参与各级科研课题10项发表学术论文10余篇其中SCI文章2篇
</view>
</van-popup>
<van-popup
show="{{ shanchang_show }}"
closeable
round
position="bottom"
bind:close="onshowShanChangNoteClose"
>
<view class="jianjie_popup">
肝病的个体化治疗、致力于各种肝病尤其肝衰竭的临床诊治,尤其专注于终末期肝病营养相关临床和基础研究。
</view>
</van-popup>
<t-popup visible="{{zhuanchang_show}}" <t-popup visible="{{zhuanchang_show}}"
prevent-scroll-through prevent-scroll-through
bind:visible-change="onZhuanChangVisibleChange" placement="bottom"> bind:visible-change="onZhuanChangVisibleChange" placement="bottom">
@ -190,7 +218,7 @@
model:value="{{ office_phone }}" model:value="{{ office_phone }}"
bind:change="onOfficePhoneChange" bind:change="onOfficePhoneChange"
placeholder="请输入科室电话" placeholder="请输入科室电话"
placeholder-style="font-size:25rpx;letter-spacing: 2rpx;color:rgba(0, 0, 0, 0.4);" placeholder-style="font-size:30rpx;letter-spacing: 2rpx;color:rgba(0, 0, 0, 0.4);"
input-align="right" input-align="right"
type="number" type="number"
clearable clearable
@ -242,7 +270,7 @@
textarea_val="{{textarea_shanchang}}" textarea_val="{{textarea_shanchang}}"
has_error_content="{{ be_good_at_reason }}" has_error_content="{{ be_good_at_reason }}"
textarea_cell_content_placeholder="您的专业领域、擅长疾病、研究方法等信息10~1000字" textarea_cell_content_placeholder="您的专业领域、擅长疾病、研究方法等信息10~1000字"
textarea_cell_note="查看示例" data-textarea_name="textarea_shanchang" bindTextAreaBlur="getTextAreaVal" /> data-textarea_name="textarea_shanchang" bindTextAreaBlur="getTextAreaVal" />
<m-upload-cell <m-upload-cell
upload_cell_name="医师执业证" upload_cell_name="医师执业证"

View File

@ -5,7 +5,7 @@
margin-left: 32rpx; margin-left: 32rpx;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
font-size: 32rpx; font-size: 34rpx;
font-weight: 400; font-weight: 400;
align-items: center; align-items: center;
} }
@ -15,7 +15,7 @@
margin-left: 32rpx; margin-left: 32rpx;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
font-size: 32rpx; font-size: 34rpx;
font-weight: 400; font-weight: 400;
align-items: center; align-items: center;
} }
@ -36,7 +36,7 @@
} }
.title{ .title{
font-size: 30rpx; font-size: 32rpx;
color: #1C2023; color: #1C2023;
} }
.right{ .right{
@ -225,7 +225,9 @@
border-bottom-style: solid; border-bottom-style: solid;
border-bottom-color: var(--td-cell-border-color, var(--td-gray-color-3, #e7e7e7)); border-bottom-color: var(--td-cell-border-color, var(--td-gray-color-3, #e7e7e7));
} }
.van-cell { .van-cell {
padding: 32rpx !important; padding: 32rpx !important;
}
.jianjie_popup{
margin: 100rpx 20rpx;
} }

View File

@ -6,7 +6,7 @@ Component({
properties: { properties: {
textarea_cell_name: { textarea_cell_name: {
type: String, type: String,
value: '示例标题', value: '标题',
}, },
required: { required: {
type: Boolean, type: Boolean,
@ -18,11 +18,11 @@ Component({
}, },
textarea_cell_note: { textarea_cell_note: {
type: String, type: String,
value: '示例备注', value: '查看示例',
}, },
textarea_cell_content_placeholder: { textarea_cell_content_placeholder: {
type: String, type: String,
value: '示例placeholder', value: '请输入文字',
}, },
t_icon_name: { t_icon_name: {
type: String, type: String,

View File

@ -103,6 +103,10 @@ let Navbar = class Navbar extends SuperComponent {
boxStyleList.push(`--td-navbar-right:${res.windowWidth - rect.left}px`); boxStyleList.push(`--td-navbar-right:${res.windowWidth - rect.left}px`);
} }
boxStyleList.push(`--td-navbar-capsule-height: ${rect.height}px`); boxStyleList.push(`--td-navbar-capsule-height: ${rect.height}px`);
console.log("statusBarHeight: ", statusBarHeight);
console.log("${rect.height}: ", `${rect.height}`);
boxStyleList.push(`--td-navbar-capsule-width:${rect.width}px`); boxStyleList.push(`--td-navbar-capsule-width:${rect.width}px`);
this.setData({ this.setData({
boxStyle: `${boxStyleList.join('; ')}`, boxStyle: `${boxStyleList.join('; ')}`,

View File

@ -2,7 +2,7 @@
"projectname": "miniprogram-doctor", "projectname": "miniprogram-doctor",
"setting": { "setting": {
"compileHotReLoad": true, "compileHotReLoad": true,
"urlCheck": false "urlCheck": true
}, },
"description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html", "description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html",
"condition": { "condition": {

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

View File

@ -458,6 +458,16 @@ class API extends HTTP {
...params ...params
} }
}) })
}
//搜索疾病分类-平台
getBasicIcdSearch(params) {
return this.request({
url: `${this.baseUrl}/basic/icd/search`,
method: 'GET',
data: {
...params
}
})
} }
//搜索药品 //搜索药品
getBasicProductSearch(params) { getBasicProductSearch(params) {
@ -496,7 +506,8 @@ class API extends HTTP {
method: 'POST', method: 'POST',
data: { data: {
...params ...params
} },
showLoading: false
}) })
} }
//获取患者问诊病例 //获取患者问诊病例
@ -616,6 +627,86 @@ class API extends HTTP {
...params ...params
} }
}) })
}
//结束问诊
putDoctorInquiryFinish(params) {
let order_inquiry_id = params.order_inquiry_id;
console.log("order_inquiry_id: ", order_inquiry_id);
params = {}
return this.request({
url: `${this.baseUrl}/doctor/inquiry/finish/`+order_inquiry_id,
method: 'PUT',
data: {
...params
}
})
}
//获取问诊订单消息内页基础数据
getInquiryMessageBasic(params) {
let order_inquiry_id = params.order_inquiry_id;
console.log("order_inquiry_id: ", order_inquiry_id);
params = {}
return this.request({
url: `${this.baseUrl}/inquiry/message/basic/`+order_inquiry_id,
method: 'GET',
data: {
...params
}
})
}
//获取医生服务消息列表-分页
getDoctorMessageService(params) {
return this.request({
url: `${this.baseUrl}/doctor/message/service`,
method: 'GET',
data: {
...params
}
})
}
//获取医生系统公告列表-分页
getDoctorMessageSystem(params) {
return this.request({
url: `${this.baseUrl}/doctor/message/system`,
method: 'GET',
data: {
...params
}
})
}
//获取医生系统公告详情
getDoctorMessageSystemDetail(params) {
let notice_id = params.notice_id;
params = {}
return this.request({
url: `${this.baseUrl}/doctor/message/system/`+notice_id,
method: 'GET',
data: {
...params
}
})
}
//消息已读
putMessageReadNotice(params) {
let notice_id = params.notice_id;
params = {}
return this.request({
url: `${this.baseUrl}/message/notice/read/`+notice_id,
method: 'PUT',
data: {
...params
}
})
}
//一键消息已读
putMessageReadNoticeAll(params) {
return this.request({
url: `${this.baseUrl}/message/notice/read`,
method: 'PUT',
data: {
...params
}
})
} }
} }

View File

@ -63,10 +63,17 @@ const getTimeAgo = stringTime =>{
} }
return result; return result;
} }
// px 转换为 rpx 传参类型是数字Number
const rpxTopx = px => {
let deviceWidth = wx.getSystemInfoSync().windowWidth; //获取设备屏幕宽度
let rpx = (750 / deviceWidth) * Number(px)
return Math.floor(rpx);
}
module.exports = { module.exports = {
formatTime, formatTime,
getDateArr, getDateArr,
formatNumber, formatNumber,
getTimeAgo, getTimeAgo,
rpxTopx
} }