分包医生
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
// Pages/webpage/index.js
|
||||
import { API } from '../../../utils/network/api'
|
||||
const api = new API()
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
src: "",
|
||||
static_host: api.getStaticHost()
|
||||
},
|
||||
|
||||
onLoad(options) {
|
||||
console.log(options.agreement_id)
|
||||
console.log(this.data.static_host+"/basic/file/agreement.htm?id="+options.agreement_id)
|
||||
this.setData({
|
||||
src: this.data.static_host+"/basic/file/agreement.htm?id="+options.agreement_id
|
||||
})
|
||||
},
|
||||
|
||||
})
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
<!--Pages/webpage/index.wxml-->
|
||||
<web-view src="{{src}}"/>
|
||||
@@ -0,0 +1 @@
|
||||
/* Pages/webpage/index.wxss */
|
||||
@@ -0,0 +1,9 @@
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
|
||||
},
|
||||
confirmJieSuanDialog(){
|
||||
app.go("/Pages/index/index");
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"usingComponents": {
|
||||
"t-dialog": "tdesign-miniprogram/dialog/dialog"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
<t-dialog
|
||||
visible="{{ true }}"
|
||||
title="温馨提示"
|
||||
content="您已被踢下线"
|
||||
>
|
||||
<view slot="confirm-btn" class="dialog dialog_confirm_btn" bindtap="confirmJieSuanDialog">
|
||||
好的
|
||||
</view>
|
||||
</t-dialog>
|
||||
@@ -0,0 +1,11 @@
|
||||
.dialog{
|
||||
width: 50%;
|
||||
text-align: center;
|
||||
height: 100rpx;
|
||||
line-height: 100rpx;
|
||||
}
|
||||
.dialog_confirm_btn{
|
||||
border-top: 1px solid #E9E9E9;
|
||||
color: #3CC7C0;
|
||||
width: 100%;
|
||||
}
|
||||
@@ -0,0 +1,178 @@
|
||||
// Pages/login/index.js
|
||||
import { API } from '../../../utils/network/api'
|
||||
const api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
showEntryTip:false,
|
||||
showEntryTip_second:false,
|
||||
beforeClose(action){
|
||||
return new Promise((resolve) => {
|
||||
if (action === 'confirm') {
|
||||
resolve(true);
|
||||
} else {
|
||||
// 拦截取消操作
|
||||
resolve(false);
|
||||
}
|
||||
})
|
||||
},
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '登录', //导航栏 中间的标题
|
||||
},
|
||||
checked: false,
|
||||
static_host: api.getStaticHost()
|
||||
},
|
||||
onShow(){
|
||||
let usertype = wx.getStorageSync('usertype');
|
||||
this.setData({
|
||||
beforeClose: this.data.beforeClose.bind(this),
|
||||
})
|
||||
if(!usertype){
|
||||
wx.navigateTo({
|
||||
url: "/Pages/index/index"
|
||||
})
|
||||
};
|
||||
},
|
||||
onLoad(){
|
||||
let usertype = wx.getStorageSync('usertype');
|
||||
this.setData({
|
||||
beforeClose: this.data.beforeClose.bind(this),
|
||||
})
|
||||
if(!usertype){
|
||||
wx.navigateTo({
|
||||
url: "/Pages/index/index"
|
||||
})
|
||||
};
|
||||
wx.getPrivacySetting({
|
||||
success: res => {
|
||||
console.log(res) // 返回结果为: res = { needAuthorization: true/false, privacyContractName: '《xxx隐私保护指引》' }
|
||||
if (res.needAuthorization) {
|
||||
// 需要弹出隐私协议
|
||||
this.setData({
|
||||
showEntryTip:true
|
||||
})
|
||||
} else {
|
||||
this.setData({
|
||||
showEntryTip:false
|
||||
})
|
||||
// 用户已经同意过隐私协议,所以不需要再弹出隐私协议,也能调用已声明过的隐私
|
||||
}
|
||||
},
|
||||
fail: () => {},
|
||||
complete: () => {}
|
||||
})
|
||||
// let isEntry=wx.getStorageSync('hasEntry');
|
||||
// if(!isEntry){
|
||||
// this.setData({
|
||||
// showEntryTip:true,
|
||||
// });
|
||||
// }else{
|
||||
// this.setData({
|
||||
// showEntryTip:false
|
||||
// });
|
||||
// }
|
||||
},
|
||||
onChange(event) {
|
||||
this.setData({
|
||||
checked: event.detail,
|
||||
});
|
||||
},
|
||||
changeCheck(){
|
||||
let checked = this.data.checked
|
||||
this.setData({
|
||||
checked: !checked
|
||||
})
|
||||
},
|
||||
_navback() {
|
||||
wx.navigateBack()
|
||||
},
|
||||
onConfirmEntry(){
|
||||
this.setData({
|
||||
showEntryTip:false
|
||||
})
|
||||
// wx.setStorageSync('hasEntry', true);
|
||||
},
|
||||
onCloseEntry(){
|
||||
this.setData({
|
||||
showEntryTip_second:true,
|
||||
showEntryTip:true
|
||||
})
|
||||
},
|
||||
onConfirmEntry_second(){
|
||||
this.setData({
|
||||
showEntryTip_second:false,
|
||||
//showEntryTip:false,
|
||||
});
|
||||
//wx.setStorageSync('hasEntry', true);
|
||||
|
||||
},
|
||||
onCloseEntry_second(){
|
||||
|
||||
this.setData({
|
||||
showEntryTip_second:false,
|
||||
showEntryTip:false,
|
||||
});
|
||||
wx.exitMiniProgram({success: (res) => {}})
|
||||
},
|
||||
go(e){
|
||||
let url = e.currentTarget.dataset.url;
|
||||
app.go(url);
|
||||
},
|
||||
getPhoneNumber (e) {
|
||||
console.log(e);
|
||||
console.log(e.detail.code);
|
||||
if(!this.data.checked){
|
||||
wx.showToast({
|
||||
title: '请同意协议',
|
||||
icon: "error"
|
||||
})
|
||||
return;
|
||||
}
|
||||
let THIS=this;
|
||||
let usertype = wx.getStorageSync('usertype');
|
||||
let next_url = wx.getStorageSync('next_url');
|
||||
if(e.detail.errMsg == 'getPhoneNumber:ok'){
|
||||
wx.login({
|
||||
success (res) {
|
||||
if (res.code) {
|
||||
console.log('登录成功!' + res.errMsg)
|
||||
var params = {
|
||||
phone_code: e.detail.code,
|
||||
user_type: usertype,
|
||||
wx_code: res.code
|
||||
}
|
||||
api.wechatMobileLogin(params).then(response => {
|
||||
console.log(response);
|
||||
wx.setStorageSync('AUTH_TOKEN_'+usertype, response.data.token);
|
||||
wx.setStorageSync('user_id_'+usertype, response.data.user_id);
|
||||
wx.setStorageSync('client_user_id_'+usertype, response.data.client_user_id);
|
||||
app.globalData.config.userID = response.data.user_id;
|
||||
app.globalData.isLogin=true;
|
||||
let handleGo=function(){
|
||||
wx.switchTab({
|
||||
url: next_url
|
||||
})
|
||||
}
|
||||
app.imInit({path:'Pages/login/index'},1,handleGo);
|
||||
//跳转页面
|
||||
|
||||
}).catch(errors => {
|
||||
console.error(errors);
|
||||
})
|
||||
} else {
|
||||
console.log('登录失败!' + res.errMsg)
|
||||
}
|
||||
}
|
||||
})
|
||||
}else if(e.detail.errMsg == 'getPhoneNumber:fail user deny'){
|
||||
console.log('您拒绝手机号授权')
|
||||
}else{
|
||||
wx.showToast({
|
||||
title: '手机号授权失败',
|
||||
icon:'none'
|
||||
})
|
||||
}
|
||||
|
||||
},
|
||||
})
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"usingComponents": {
|
||||
"van-button": "@vant/weapp/button/index",
|
||||
"van-image": "@vant/weapp/image/index",
|
||||
"van-checkbox": "@vant/weapp/checkbox/index",
|
||||
"van-overlay": "@vant/weapp/overlay/index",
|
||||
"van-dialog": "@vant/weapp/dialog/index",
|
||||
"van-checkbox-group": "@vant/weapp/checkbox-group/index"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,109 @@
|
||||
<view class="container">
|
||||
<view class="tui-navigatorbar">
|
||||
<image wx:if="{{ navbarData.showCapsule==1 }}" class="tui-navigatorbar-back" bindtap="_navback" src="../../TUIKit/static/assets/ic_back_black.svg" />
|
||||
<view class="conversation-title">{{ navbarData.title }}</view>
|
||||
</view>
|
||||
<view class="box">
|
||||
<view class="top">
|
||||
<view class="logo">
|
||||
<van-image fit="heightFix" height="56rpx" src="{{static_host}}/applet/doctor/static/images/logo.png" use-loading-slot>
|
||||
<van-loading slot="loading" type="spinner" size="20" vertical />
|
||||
</van-image>
|
||||
</view>
|
||||
<view class="msg">你好!欢迎登录肝胆相照互联网医院</view>
|
||||
</view>
|
||||
|
||||
<view class="btn">
|
||||
<van-button
|
||||
wx:if="{{ checked }}"
|
||||
open-type="getPhoneNumber"
|
||||
bindgetphonenumber="getPhoneNumber"
|
||||
color="#09BB07" custom-style="font-size: 36rpx;" type="primary" round block>手机号快捷登录</van-button>
|
||||
<van-button
|
||||
wx:else
|
||||
bindtap="getPhoneNumber"
|
||||
color="#09BB07" custom-style="font-size: 36rpx;" type="primary" round block>手机号快捷登录</van-button>
|
||||
|
||||
<view style="display: flex;margin-top: 30rpx;line-height: 50rpx;">
|
||||
<van-checkbox value="{{ checked }}" bind:change="onChange"></van-checkbox>
|
||||
<view style="float: left;">
|
||||
<text style="color: #000000;word-wrap: break-word;" bindtap="changeCheck">我已阅读并同意协议</text>
|
||||
<text style="color: #4384FE;word-wrap: break-word;" bindtap="go" data-url="/user/pages/agreement_page/index?agreement_id=10">《肝胆相照用户注册及服务协议》</text>
|
||||
<text style="color: #4384FE;word-wrap: break-word;" bindtap="go" data-url="/user/pages/agreement_page/index?agreement_id=9">《隐私协议》</text>
|
||||
<text style="color: #4384FE;word-wrap: break-word;" bindtap="go" data-url="/user/pages/agreement_page/index?agreement_id=11">《劳务协议》</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="bottom">
|
||||
<text class="bottom_txt" bindtap="go" data-url="/user/pages/mobile_login/index">输入手机号登录/注册</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<van-overlay show="{{ showEntryTip }}" >
|
||||
<view class="wrapper">
|
||||
<view class="privacyBox">
|
||||
<view class="title">温馨提示</view>
|
||||
<view class="entrymsg" >
|
||||
<view> 亲爱的用户,感谢您信任并使用肝胆相照互联网医院医师端!我们依据最新法律法规的要求,制定了<text class="navigator" bindtap="go" data-url="/user/pages/agreement_page/index?agreement_id=9">《隐私协议》</text>。请您仔细阅《隐私协议》,并确认了解我们对您的个人信息处理原则。</view>
|
||||
<view>如您同意《隐私协议》,请点击“同意”开始使用我们的产品和服务。</view>
|
||||
</view>
|
||||
<view class="btnbox">
|
||||
<view class="cancel" bindtap="onCloseEntry">不同意</view>
|
||||
<button id="agree-btn"
|
||||
plain
|
||||
class="confirm"
|
||||
open-type="agreePrivacyAuthorization" bindagreeprivacyauthorization="onConfirmEntry">同意并继续</button>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</van-overlay>
|
||||
<!-- <van-dialog
|
||||
use-slot
|
||||
title="温馨提示"
|
||||
show="{{ showEntryTip }}"
|
||||
show-cancel-button
|
||||
confirm-button-text="同意并继续"
|
||||
cancel-button-text="不同意"
|
||||
confirm-button-color="#3CC7C0"
|
||||
bind:confirm="onConfirmEntry"
|
||||
bind:cancel="onCloseEntry"
|
||||
before-close="{{beforeClose}}"
|
||||
confirm-button-open-type="agreePrivacyAuthorization"
|
||||
>
|
||||
<view class="entrymsg" >
|
||||
<view> 亲爱的用户,感谢您信任并使用肝胆相照互联网医院医师端!我们依据最新法律法规的要求,制定了<text class="navigator" bindtap="go" data-url="/user/pages/agreement_page/index?agreement_id=9">《隐私协议》</text>。请您仔细阅《隐私协议》,并确认了解我们对您的个人信息处理原则。</view>
|
||||
<view>如您同意《隐私协议》,请点击“同意”开始使用我们的产品和服务。</view>
|
||||
</view>
|
||||
|
||||
</van-dialog>-->
|
||||
|
||||
<van-overlay show="{{ showEntryTip_second }}" >
|
||||
<view class="wrapper">
|
||||
<view class="privacyBox">
|
||||
<view class="title">温馨提示</view>
|
||||
<view class="entrymsg" >
|
||||
<view> 很抱歉,如您不同意《隐私协议》,可能无法继续正常使用我们的服务,请您先同意哦~</view>
|
||||
</view>
|
||||
<view class="btnbox">
|
||||
<view class="cancel" bindtap="onCloseEntry_second">不同意</view>
|
||||
<button id="agree-btn"
|
||||
plain
|
||||
class="confirm"
|
||||
bindtap="onConfirmEntry_second">好的</button>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</van-overlay>
|
||||
<!--<van-dialog
|
||||
title="温馨提示"
|
||||
show="{{ showEntryTip_second }}"
|
||||
message="很抱歉,如您不同意《隐私协议》,可能无法继续正常使用我们的服务,请您先同意哦~"
|
||||
show-cancel-button
|
||||
confirm-button-text="好的"
|
||||
cancel-button-text="不同意"
|
||||
confirm-button-color="#3CC7C0"
|
||||
bind:confirm="onConfirmEntry_second"
|
||||
bind:cancel="onCloseEntry_second"
|
||||
>
|
||||
</van-dialog> -->
|
||||
@@ -0,0 +1,142 @@
|
||||
.container {
|
||||
width: 100vw;
|
||||
background-color: #ffffff;
|
||||
}
|
||||
.tui-navigatorbar{
|
||||
position: fixed;
|
||||
top: 0;
|
||||
width: 750rpx;
|
||||
height: 170rpx;
|
||||
background-color: #ffffff;
|
||||
z-index: 99;
|
||||
}
|
||||
.tui-navigatorbar-back{
|
||||
position: absolute;
|
||||
width: 48rpx;
|
||||
height: 48rpx;
|
||||
left: 40rpx;
|
||||
bottom: 20rpx;
|
||||
}
|
||||
.conversation-title {
|
||||
position:absolute;
|
||||
width: 350rpx;
|
||||
height: 88rpx;
|
||||
line-height: 56rpx;
|
||||
font-size: 36rpx;
|
||||
color: #000000;
|
||||
bottom: 0;
|
||||
left: 200rpx;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.box{
|
||||
width: 92vw;
|
||||
margin: 170rpx auto 0 auto;
|
||||
height: calc(100vh - 170rpx);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
.top{
|
||||
flex: 3;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
.logo{
|
||||
display:flex;
|
||||
align-items: center;
|
||||
flex: 1;
|
||||
align-items: flex-end;
|
||||
}
|
||||
.msg{
|
||||
font-size: 40rpx;
|
||||
color: #333333;
|
||||
flex: 1;
|
||||
display: flex;
|
||||
align-items: flex-start;
|
||||
}
|
||||
.btn{
|
||||
flex: 1;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-around;
|
||||
font-size: 28rpx;
|
||||
color: #666666;
|
||||
}
|
||||
.bottom{
|
||||
flex: 3;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: flex-end;
|
||||
align-items: center;
|
||||
}
|
||||
.bottom_txt{
|
||||
font-size: 30rpx;
|
||||
color: #333333;
|
||||
margin-bottom: 60rpx;
|
||||
}
|
||||
.van-checkbox {
|
||||
padding-top: 6rpx !important;
|
||||
}
|
||||
.entrymsg{
|
||||
-webkit-overflow-scrolling: touch;
|
||||
font-size: 28rpx;
|
||||
line-height: 40rpx;
|
||||
max-height: 60vh;
|
||||
overflow-y: auto;
|
||||
padding: 48rpx;
|
||||
text-align: left;
|
||||
}
|
||||
.navigator{
|
||||
color:#3CC7C0
|
||||
}
|
||||
.wrapper {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
height: 100%;
|
||||
|
||||
}
|
||||
.privacyBox {
|
||||
width:90%;
|
||||
background-color: #fff;
|
||||
border-radius: 30rpx;
|
||||
}
|
||||
.privacyBox .title{
|
||||
margin: 0;
|
||||
text-align: center;
|
||||
font-weight: 500;
|
||||
line-height:24px;
|
||||
padding-top:24px;
|
||||
text-align: center;
|
||||
font-size:16px;
|
||||
}
|
||||
.btnbox{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
border-top:1rpx solid #efefef;
|
||||
width:100%;
|
||||
font-size: 17px;
|
||||
}
|
||||
.btnbox .cancel{
|
||||
flex:1;
|
||||
height: 50px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.btnbox .confirm{
|
||||
margin: 0;
|
||||
height: 50px;
|
||||
padding: 0;
|
||||
color: #3CC7C0;
|
||||
flex:1;
|
||||
font-size: 17px;
|
||||
border: none!important;
|
||||
border-left:1rpx solid #efefef!important;
|
||||
display: flex;
|
||||
background-color: none!important;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,190 @@
|
||||
import { API } from '../../../utils/network/api'
|
||||
const api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '手机号登录', //导航栏 中间的标题
|
||||
},
|
||||
checked: false,
|
||||
phone: "",
|
||||
sms: "",
|
||||
btn_msg: "获取验证码",
|
||||
btn_disabled: false,
|
||||
login_disabled: false,
|
||||
btn_color: "#ccc",
|
||||
static_host: api.getStaticHost()
|
||||
},
|
||||
onLoad(){
|
||||
let usertype = wx.getStorageSync('usertype');
|
||||
if(!usertype){
|
||||
wx.navigateTo({
|
||||
url: "/Pages/index/index"
|
||||
})
|
||||
}
|
||||
},
|
||||
onShow(){
|
||||
let usertype = wx.getStorageSync('usertype');
|
||||
if(!usertype){
|
||||
wx.navigateTo({
|
||||
url: "/Pages/index/index"
|
||||
})
|
||||
}
|
||||
},
|
||||
onChange(event) {
|
||||
this.setData({
|
||||
checked: event.detail,
|
||||
});
|
||||
},
|
||||
changeCheck(){
|
||||
let checked = this.data.checked
|
||||
this.setData({
|
||||
checked: !checked
|
||||
})
|
||||
},
|
||||
phone_change(e){
|
||||
let phone = e.detail.value;
|
||||
this.setData({
|
||||
phone: e.detail.value
|
||||
})
|
||||
let phone_reg = /^1[3-9]\d{9}$/;
|
||||
if(phone_reg.test(phone)){
|
||||
this.setData({
|
||||
btn_color: "#3CC7C0"
|
||||
})
|
||||
}else{
|
||||
this.setData({
|
||||
btn_color: "#ccc"
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
getCodePhone(e){
|
||||
let phone_reg = /^1[3-9]\d{9}$/;
|
||||
let phone = this.data.phone;
|
||||
//判断用户输入的真实姓名是否为空
|
||||
if(phone.length == 0){
|
||||
wx.showToast({title: '手机号不能为空', icon:'error'})
|
||||
return false;
|
||||
}else if(!phone_reg.test(phone)){//检测姓名的格式是否匹配
|
||||
wx.showToast({title: '手机号输入有误', icon:'error'})
|
||||
return false;
|
||||
}
|
||||
|
||||
if(!this.data.checked){
|
||||
wx.showToast({
|
||||
title: '请同意协议',
|
||||
icon: "error"
|
||||
})
|
||||
return;
|
||||
}
|
||||
this.setData({
|
||||
btn_disabled: true
|
||||
})
|
||||
//获取手机号验证码
|
||||
var params = {};
|
||||
params.phone = this.data.phone;
|
||||
params.scene = 1;
|
||||
api.getCodePhone(params).then(response => {
|
||||
console.log(response);
|
||||
this.beginDaoJiShi();
|
||||
this.setData({
|
||||
login_disabled: false
|
||||
})
|
||||
}).catch(errors => {
|
||||
this.setData({
|
||||
btn_disabled: false
|
||||
})
|
||||
console.error(errors);
|
||||
})
|
||||
},
|
||||
mobileLogin(e){
|
||||
let THIS=this;
|
||||
let phone_reg = /^1[3-9]\d{9}$/;
|
||||
let phone = this.data.phone;
|
||||
let sms = this.data.sms;
|
||||
//判断用户输入的真实姓名是否为空
|
||||
if(phone.length == 0){
|
||||
wx.showToast({title: '手机号不能为空', icon:'error'})
|
||||
return false;
|
||||
}else if(!phone_reg.test(phone)){//检测姓名的格式是否匹配
|
||||
wx.showToast({title: '手机号输入有误', icon:'error'})
|
||||
return false;
|
||||
}
|
||||
|
||||
if(sms.length == 0){
|
||||
wx.showToast({title: '验证码不能为空', icon:'error'})
|
||||
return false;
|
||||
}
|
||||
|
||||
if(!this.data.checked){
|
||||
wx.showToast({
|
||||
title: '请同意协议',
|
||||
icon: "error"
|
||||
})
|
||||
return;
|
||||
}
|
||||
let usertype = wx.getStorageSync('usertype');
|
||||
wx.login({
|
||||
success: (res) => {
|
||||
console.log(res)
|
||||
if (res.code) {
|
||||
var params = {};
|
||||
params.phone = this.data.phone;
|
||||
params.code = this.data.sms;
|
||||
params.user_type = usertype;
|
||||
params.wx_code = res.code;
|
||||
|
||||
api.mobileLogin(params).then(response => {
|
||||
app.globalData.isLogin=true;
|
||||
console.log(response);
|
||||
wx.setStorageSync('AUTH_TOKEN_'+usertype, response.data.token);
|
||||
wx.setStorageSync('user_id_'+usertype, response.data.user_id);
|
||||
wx.setStorageSync('client_user_id_'+usertype, response.data.client_user_id);
|
||||
app.globalData.config.userID = response.data.user_id;
|
||||
let handleGo=function(){
|
||||
wx.switchTab({
|
||||
url: wx.getStorageSync('next_url')
|
||||
})
|
||||
}
|
||||
app.imInit({path:'Pages/mobile_login/index'},1,handleGo);
|
||||
|
||||
}).catch(errors => {console.error(errors);})
|
||||
} else {
|
||||
wx.showToast({
|
||||
title: '登录失败',
|
||||
icon: "error"
|
||||
})
|
||||
}
|
||||
},
|
||||
})
|
||||
|
||||
},
|
||||
beginDaoJiShi(){
|
||||
console.log("开始倒计时")
|
||||
let _this = this;
|
||||
let time = 60;
|
||||
let time_index = setInterval(function(){
|
||||
console.log("time: ", time);
|
||||
if(time > 1){
|
||||
time--;
|
||||
_this.setData({
|
||||
btn_msg: time+" 秒后获取",
|
||||
btn_disabled: true
|
||||
})
|
||||
}else{
|
||||
_this.setData({
|
||||
btn_msg: "重新获取验证码",
|
||||
btn_disabled: false
|
||||
})
|
||||
clearInterval(time_index);
|
||||
}
|
||||
},1000)
|
||||
},
|
||||
go(e){
|
||||
let url = e.currentTarget.dataset.url;
|
||||
app.go(url);
|
||||
}
|
||||
|
||||
})
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"m-nav-bar": "../../../commpents/mynavbar/index",
|
||||
"van-field": "@vant/weapp/field/index",
|
||||
"van-button": "@vant/weapp/button/index",
|
||||
"van-checkbox": "@vant/weapp/checkbox/index",
|
||||
"van-checkbox-group": "@vant/weapp/checkbox-group/index",
|
||||
"van-image": "@vant/weapp/image/index"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
<m-nav-bar navbarData="{{navbarData}}">
|
||||
<view class="logo">
|
||||
<van-image height="196rpx" src="{{static_host}}/applet/doctor/static/images/logo2.png" fit="heightFix" />
|
||||
</view>
|
||||
<view class="fields">
|
||||
<view class="phone_box">
|
||||
<view class="country">+86</view>
|
||||
<view class="phone">
|
||||
<input placeholder-style="color:#c8c9cc;font-size:34rpx;" type="number" confirm-type="next" bindinput="phone_change" auto-focus placeholder="请输入手机号"/>
|
||||
</view>
|
||||
</view>
|
||||
<van-field
|
||||
model:value="{{ sms }}"
|
||||
center
|
||||
clearable
|
||||
type="number"
|
||||
label=""
|
||||
placeholder="请输入短信验证码"
|
||||
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">
|
||||
{{btn_msg}}
|
||||
</van-button>
|
||||
</van-field>
|
||||
</view>
|
||||
<view class="btn">
|
||||
<van-button color="#3CC7C0" disabled="{{login_disabled}}" custom-style="font-size: 36rpx;margin-bottom:30rpx;" type="primary" round block bind:click="mobileLogin">登录</van-button>
|
||||
<!-- <van-checkbox value="{{ checked }}" bind:change="onChange">我已阅读并同意协议<text style="color: #4384FE;">《肝胆相照用户服务协议》</text></van-checkbox> -->
|
||||
<view style="display: flex;margin-top: 30rpx;line-height: 50rpx;">
|
||||
<van-checkbox value="{{ checked }}" bind:change="onChange"></van-checkbox>
|
||||
<view style="float: left;">
|
||||
<text style="color: #000000;word-wrap: break-word;" bindtap="changeCheck">我已阅读并同意协议</text>
|
||||
<text style="color: #4384FE;word-wrap: break-word;" bindtap="go" data-url="/user/pages/agreement_page/index?agreement_id=10">《肝胆相照用户注册及服务协议》</text>
|
||||
<text style="color: #4384FE;word-wrap: break-word;" bindtap="go" data-url="/user/pages/agreement_page/index?agreement_id=9">《隐私协议》</text>
|
||||
<text style="color: #4384FE;word-wrap: break-word;" bindtap="go" data-url="/user/pages/agreement_page/index?agreement_id=11">《劳务协议》</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</m-nav-bar>
|
||||
@@ -0,0 +1,56 @@
|
||||
.logo{
|
||||
margin-top: 150rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
.fields{
|
||||
margin: 50rpx 0;
|
||||
}
|
||||
.btn{
|
||||
font-size: 28rpx;
|
||||
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);
|
||||
}
|
||||
.van-checkbox {
|
||||
padding-top: 6rpx !important;
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
// Pages/webpage/index.js
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
src: ""
|
||||
},
|
||||
|
||||
onLoad(options) {
|
||||
console.log(options.src)
|
||||
this.setData({
|
||||
src: options.src
|
||||
})
|
||||
},
|
||||
|
||||
})
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
<!--Pages/webpage/index.wxml-->
|
||||
<web-view src="{{src}}"/>
|
||||
@@ -0,0 +1 @@
|
||||
/* Pages/webpage/index.wxss */
|
||||
@@ -0,0 +1,32 @@
|
||||
import { API } from '../../../../utils/network/api'
|
||||
const api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
nbFrontColor: '#000000',
|
||||
nbBackgroundColor: '#ffffff',
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '实名认证', //导航栏 中间的标题
|
||||
},
|
||||
height: app.globalData.height,
|
||||
info: {}
|
||||
},
|
||||
onLoad() {
|
||||
console.log(this.data.height)
|
||||
},
|
||||
onShow(){
|
||||
this.setData({
|
||||
nbLoading: false,
|
||||
})
|
||||
|
||||
api.getPharmacistInfo().then(response => {
|
||||
console.log(response.data);
|
||||
this.setData({
|
||||
info: response.data
|
||||
})
|
||||
}).catch(errors => {
|
||||
console.error(errors);
|
||||
})
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index",
|
||||
"t-avatar": "tdesign-miniprogram/avatar/avatar",
|
||||
"van-cell": "@vant/weapp/cell/index",
|
||||
"van-cell-group": "@vant/weapp/cell-group/index",
|
||||
"van-button": "@vant/weapp/button/index"
|
||||
},
|
||||
"navigationBarBackgroundColor": "#ffffff",
|
||||
"navigationBarTextStyle": "black",
|
||||
"navigationBarTitleText": "实名认证",
|
||||
"backgroundColor": "#eeeeee",
|
||||
"backgroundTextStyle": "light"
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<view class="container">
|
||||
<van-cell-group>
|
||||
<van-cell size="large" title="真实姓名" title-width="120rpx" required title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="{{info.card_name}}" />
|
||||
<van-cell size="large" title="身份证号" title-width="120rpx" required title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="{{info.card_num}}" />
|
||||
<van-cell size="large" title="联系邮箱" title-width="120rpx" required title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="缺少字段" />
|
||||
<van-cell size="large" title="手机号码" title-width="120rpx" required title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="缺少字段" />
|
||||
<van-cell size="large" title="所在医疗机构" title-width="120rpx" required title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="缺少字段" />
|
||||
<van-cell size="large" title="所在科室" title-width="120rpx" required title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="{{info.department_custom_name}}" />
|
||||
<van-cell size="large" title="职称" title-width="120rpx" required title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="{{info.pharmacist_title}}" />
|
||||
<van-cell size="large" title="医龄" title-width="120rpx" required title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="缺少字段" />
|
||||
<van-cell size="large" title="执业经历" title-width="120rpx" required title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="缺少字段" />
|
||||
<van-cell size="large" title="擅长" title-width="120rpx" required title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="缺少字段" />
|
||||
</van-cell-group>
|
||||
<view class="submit">
|
||||
<van-button color="linear-gradient(to right, #4CABEA, #64CFE9)" block round type="info">下一步(去干啥?)</van-button>
|
||||
</view>
|
||||
</view>
|
||||
@@ -0,0 +1,4 @@
|
||||
.submit{
|
||||
width: 90vw;
|
||||
margin: 20rpx auto;
|
||||
}
|
||||
@@ -0,0 +1,144 @@
|
||||
import { API } from '../../../../utils/network/api'
|
||||
const api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
active: 0,
|
||||
active_color: "rgb(116,162,250)",
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '药师端', //导航栏 中间的标题
|
||||
},
|
||||
// 此页面 页面内容距最顶部的距离
|
||||
height: app.globalData.height,
|
||||
pharmacist: {},
|
||||
audit_number: 0,
|
||||
data_list_0: [],
|
||||
data_list_1: [],
|
||||
data_list_2: [],
|
||||
data_list_3: [],
|
||||
current_page: 0,
|
||||
total: 0,
|
||||
per_page: 0,
|
||||
last_page: 0,
|
||||
},
|
||||
|
||||
onShow() {
|
||||
if (typeof this.getTabBar === 'function' && this.getTabBar()) {
|
||||
this.getTabBar().setData({
|
||||
active: 0, //数字是当前页面在tabbar的索引,如我的查询页索引是2,因此这边为2,同理首页就为0,审批页面为1
|
||||
})
|
||||
}
|
||||
|
||||
this.getPharmacistPrescription(this.data.active);
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onLoad: function () {
|
||||
|
||||
api.getPharmacistIndex().then(response => {
|
||||
this.setData({
|
||||
pharmacist: response.data.pharmacist,
|
||||
audit_number: response.data.audit_number
|
||||
})
|
||||
}).catch(errors => {
|
||||
console.error(errors);
|
||||
})
|
||||
|
||||
|
||||
},
|
||||
getPharmacistPrescription(active){
|
||||
let params = {};
|
||||
let page = this.data.current_page + 1;
|
||||
let pharmacist_audit_status = 0;
|
||||
let platform_audit_status = 1;
|
||||
|
||||
if(active == 0){
|
||||
pharmacist_audit_status = 0;
|
||||
platform_audit_status = 0;
|
||||
}
|
||||
if(active == 1){
|
||||
pharmacist_audit_status = 1;
|
||||
platform_audit_status = 1;
|
||||
}
|
||||
if(active == 2){
|
||||
pharmacist_audit_status = 2;
|
||||
platform_audit_status = 0;
|
||||
}
|
||||
if(active == 3){
|
||||
pharmacist_audit_status = 1;
|
||||
platform_audit_status = 2;
|
||||
}
|
||||
params.pharmacist_audit_status = pharmacist_audit_status;
|
||||
params.platform_audit_status = platform_audit_status;
|
||||
params.page = page;
|
||||
let data_name = "data_list_"+active;
|
||||
let list = this.data[data_name];
|
||||
api.getPharmacistPrescription(params).then(response => {
|
||||
this.setData({
|
||||
[data_name]: 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);
|
||||
})
|
||||
},
|
||||
onHide(){
|
||||
this.setData({
|
||||
current_page: 0,
|
||||
total: 0,
|
||||
per_page: 0,
|
||||
last_page: 0,
|
||||
data_list_0: [],
|
||||
data_list_1: [],
|
||||
data_list_2: [],
|
||||
data_list_3: [],
|
||||
})
|
||||
},
|
||||
onChange(e){
|
||||
console.log(e)
|
||||
let data_name = "data_list_"+e.detail.index;
|
||||
this.setData({
|
||||
active: e.detail.index,
|
||||
current_page: 0,
|
||||
total: 0,
|
||||
per_page: 0,
|
||||
last_page: 0,
|
||||
[data_name]: []
|
||||
})
|
||||
this.getPharmacistPrescription(e.detail.index);
|
||||
},
|
||||
onReachBottom() {
|
||||
console.log('===触底了!!===');
|
||||
if(this.data.current_page < this.data.last_page){//最后一页时停止分页
|
||||
this.getPharmacistPrescription(this.data.active)
|
||||
}
|
||||
},
|
||||
go(e){
|
||||
let url = e.currentTarget.dataset.url;
|
||||
app.go(url)
|
||||
},
|
||||
switchStatus(){
|
||||
let is_online = this.data.pharmacist.is_online;
|
||||
if(is_online == 0){
|
||||
is_online = 1
|
||||
}else if(is_online == 1){
|
||||
is_online = 0
|
||||
}
|
||||
api.putPharmacistOnOff({is_online: is_online}).then(response => {
|
||||
this.setData({
|
||||
"pharmacist.is_online": is_online
|
||||
})
|
||||
}).catch(errors => {console.error(errors);})
|
||||
}
|
||||
|
||||
|
||||
})
|
||||
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index",
|
||||
"van-tab": "@vant/weapp/tab/index",
|
||||
"van-tabs": "@vant/weapp/tabs/index",
|
||||
"t-avatar": "tdesign-miniprogram/avatar/avatar",
|
||||
"van-button": "@vant/weapp/button/index",
|
||||
"van-empty": "@vant/weapp/empty/index",
|
||||
"van-divider": "@vant/weapp/divider/index"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,136 @@
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<view class="container">
|
||||
<view class="main title">
|
||||
<view class="photo">
|
||||
<t-avatar class="avatar-example" width="20" image="{{pharmacist.avatar}}" />
|
||||
</view>
|
||||
<view class="name">
|
||||
<view class="realname">{{pharmacist.user_name}}</view>
|
||||
<view class="today_num">今日审方 {{audit_number}}</view>
|
||||
</view>
|
||||
<view class="status" bindtap="switchStatus">
|
||||
<view class="status_text {{pharmacist.is_online==1?'status_online':'status_offline'}}">{{pharmacist.is_online==1?'在线':'离线'}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="main content">
|
||||
<van-tabs color="{{ active_color }}" bind:change="onChange">
|
||||
<van-tab title="待审核处方">
|
||||
<view class="item_list" wx:if="{{data_list_0.length>0}}">
|
||||
<view class="item" wx:for="{{data_list_0}}">
|
||||
<view class="item_txt">
|
||||
<view class="pre_content">处方订单号:{{item.prescription_code}}</view>
|
||||
<view class="end_content">
|
||||
<!-- <navigator url="/user/pages/yaoshi/medicalrecord/medicalrecord" open-type="navigate" hover-class="other-navigator-hover">
|
||||
<van-button type="primary" size="small">查看病例</van-button>
|
||||
</navigator> -->
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="item_txt">
|
||||
<view class="pre_content">开方时间:{{item.created_at}}</view>
|
||||
<view class="end_content" bindtap="go" data-url="/user/pages/yaoshi/medicalrecord/medicalrecord?order_inquiry_id={{item.order_inquiry_id }}&order_prescription_id={{item.order_prescription_id}}&from=1">
|
||||
<van-button type="primary" color="#ec871e" size="small">查看病例</van-button>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="item_txt">
|
||||
<view class="pre_content">{{item.patient_name}}/{{item.patient_sex==1?'男':'女'}}/{{item.patient_age}}岁</view>
|
||||
<view class="end_content" bindtap="go" data-url="/user/pages/yaoshi/prescription/prescription?order_prescription_id={{item.order_prescription_id}}">
|
||||
<van-button type="primary" color="linear-gradient(to bottom, #5EA8D5, #63CFEA)" size="small">去审方</van-button>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<van-divider contentPosition="center" wx:if="{{data_list_0.length > 0 && current_page == last_page}}">到底了~</van-divider>
|
||||
</view>
|
||||
<van-empty description="暂无数据" wx:if="{{data_list_0.length == 0}}" />
|
||||
</van-tab>
|
||||
<van-tab title="已审核处方">
|
||||
<view class="item_list" wx:if="{{data_list_1.length>0}}">
|
||||
<view class="item" wx:for="{{data_list_1}}">
|
||||
<view class="item_txt">
|
||||
<view class="pre_content">处方订单号:{{item.prescription_code}}</view>
|
||||
<view class="end_content" bindtap="go" data-url="/user/pages/yaoshi/medicalrecord/medicalrecord?order_inquiry_id={{item.order_inquiry_id }}&order_prescription_id={{item.order_prescription_id}}">
|
||||
<van-button type="primary" color="#ec871e" size="small">查看病例</van-button>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="item_txt">
|
||||
<view class="pre_content">开方时间:{{item.created_at}}</view>
|
||||
<view class="end_content" style="color: #2196f3;">通过</view>
|
||||
</view>
|
||||
|
||||
<view class="item_txt">
|
||||
<view class="pre_content">{{item.patient_name}}/{{item.patient_sex==1?'男':'女'}}/{{item.patient_age}}岁</view>
|
||||
<view class="end_content">
|
||||
<!-- <van-button type="primary" color="linear-gradient(to bottom, #5EA8D5, #63CFEA)" size="small">去审方</van-button> -->
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<van-divider contentPosition="center" wx:if="{{data_list_1.length > 0 && current_page == last_page}}">到底了~</van-divider>
|
||||
</view>
|
||||
<van-empty description="暂无数据" wx:if="{{data_list_1.length == 0}}" />
|
||||
</van-tab>
|
||||
<van-tab title="驳回处方">
|
||||
<view class="item_list" wx:if="{{data_list_2.length>0}}">
|
||||
<view class="item" wx:for="{{data_list_2}}">
|
||||
<view class="item_txt">
|
||||
<view class="pre_content">处方订单号:{{item.prescription_code}}</view>
|
||||
<view class="end_content" bindtap="go" data-url="/user/pages/yaoshi/medicalrecord/medicalrecord?order_inquiry_id={{item.order_inquiry_id }}&order_prescription_id={{item.order_prescription_id}}">
|
||||
<van-button type="primary" color="#ec871e" size="small">查看病例</van-button>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="item_txt">
|
||||
<view class="pre_content">开方时间:{{item.created_at}}</view>
|
||||
<view class="end_content" style="color: red;">驳回</view>
|
||||
</view>
|
||||
|
||||
<view class="item_txt">
|
||||
<view class="pre_content">{{item.patient_name}}/{{item.patient_sex==1?'男':'女'}}/{{item.patient_age}}岁</view>
|
||||
<view class="end_content">
|
||||
<!-- <van-button type="primary" color="linear-gradient(to bottom, #5EA8D5, #63CFEA)" size="small">去审方</van-button> -->
|
||||
</view>
|
||||
</view>
|
||||
<view class="item_txt">
|
||||
<view class="pre_content">驳回时间:{{item.pharmacist_verify_time}}</view>
|
||||
</view>
|
||||
<view class="item_txt">
|
||||
<view class="pre_content">驳回理由:{{item.pharmacist_fail_reason}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<van-divider contentPosition="center" wx:if="{{data_list_2.length > 0 && current_page == last_page}}">到底了~</van-divider>
|
||||
</view>
|
||||
<van-empty description="暂无数据" wx:if="{{data_list_2.length == 0}}" />
|
||||
</van-tab>
|
||||
<van-tab title="不通过">
|
||||
<view class="item_list" wx:if="{{data_list_3.length>0}}">
|
||||
<view class="item" wx:for="{{data_list_3}}">
|
||||
<view class="item_txt">
|
||||
<view class="pre_content">处方订单号:{{item.prescription_code}}</view>
|
||||
<view class="end_content" bindtap="go" data-url="/user/pages/yaoshi/medicalrecord/medicalrecord?order_inquiry_id={{item.order_inquiry_id }}&order_prescription_id={{item.order_prescription_id}}">
|
||||
<van-button type="primary" color="#ec871e" size="small">查看病例</van-button>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="item_txt">
|
||||
<view class="pre_content">开方时间:{{item.created_at}}</view>
|
||||
<view class="end_content" style="color: red;">驳回</view>
|
||||
</view>
|
||||
|
||||
<view class="item_txt">
|
||||
<view class="pre_content">{{item.patient_name}}/{{item.patient_sex==1?'男':'女'}}/{{item.patient_age}}岁</view>
|
||||
<view class="end_content">
|
||||
<!-- <van-button type="primary" color="linear-gradient(to bottom, #5EA8D5, #63CFEA)" size="small">去审方</van-button> -->
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<van-divider contentPosition="center" wx:if="{{data_list_3.length > 0 && current_page == last_page}}">到底了~</van-divider>
|
||||
</view>
|
||||
<van-empty description="暂无数据" wx:if="{{data_list_3.length == 0}}" />
|
||||
</van-tab>
|
||||
</van-tabs>
|
||||
</view>
|
||||
<view style="height: 60px;">
|
||||
<!-- 适配底部tabbar -->
|
||||
</view>
|
||||
</view>
|
||||
@@ -0,0 +1,111 @@
|
||||
page{
|
||||
background-color: #F4F5F7;
|
||||
}
|
||||
.container{
|
||||
width: 100vw;
|
||||
}
|
||||
.main{
|
||||
width: 90vw;
|
||||
margin: 30rpx auto 0 auto;
|
||||
background-color: #ffffff;
|
||||
border-radius: 10rpx;
|
||||
}
|
||||
.title{
|
||||
height: 200rpx;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.photo{
|
||||
flex: 1;
|
||||
/* background-color: cyan; */
|
||||
}
|
||||
.name{
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
flex: 2;
|
||||
font-size: 30rpx;
|
||||
line-height: 50rpx;
|
||||
/* background-color: burlywood; */
|
||||
}
|
||||
.today_num{
|
||||
font-size: 28rpx;
|
||||
color: rgb(116,162,250);
|
||||
}
|
||||
.status{
|
||||
flex: 1;
|
||||
/* background-color: #ace247; */
|
||||
height: 70%;
|
||||
}
|
||||
.status_offline{
|
||||
background-color: #BFBFBF;
|
||||
}
|
||||
.status_online{
|
||||
background-color: rgb(124, 231, 124);
|
||||
}
|
||||
.status_text{
|
||||
padding: 10rpx 20rpx;
|
||||
border-radius: 20rpx;
|
||||
float: right;
|
||||
margin-right: 25rpx;
|
||||
font-size: 20rpx;
|
||||
display: flex;
|
||||
width: 50rpx;
|
||||
justify-content: space-evenly;
|
||||
}
|
||||
.custom-tabs {
|
||||
margin-bottom: 32rpx;
|
||||
}
|
||||
.avatar-example {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.external-class-content {
|
||||
color: #fff;
|
||||
background-color: #0052d9;
|
||||
font-weight: 400;
|
||||
}
|
||||
.avatar-example--medium:not(:last-child) {
|
||||
margin-right: 96rpx;
|
||||
}
|
||||
.van-tabs__nav{
|
||||
border-radius: 20rpx !important;
|
||||
}
|
||||
.item_list{
|
||||
padding-bottom: 100rpx;
|
||||
background-color: #F4F5F7;
|
||||
border-radius: 20rpx;
|
||||
}
|
||||
.item:last-child{
|
||||
border-bottom-left-radius: 20rpx;
|
||||
border-bottom-right-radius: 20rpx;
|
||||
}
|
||||
.item{
|
||||
border-top: solid rgb(187, 185, 185) 1rpx;
|
||||
width: 100%;
|
||||
margin: 0 auto;
|
||||
background-color: #fff;
|
||||
padding: 20rpx 0;
|
||||
}
|
||||
.item_txt{
|
||||
display: flex;
|
||||
/* background-color: #0052d9; */
|
||||
padding: 10rpx 0;
|
||||
}
|
||||
.pre_content{
|
||||
display: flex;
|
||||
flex: 3;
|
||||
/* background-color: chartreuse; */
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
margin-left: 20rpx;
|
||||
font-size: 28rpx;
|
||||
}
|
||||
.end_content{
|
||||
display: flex;
|
||||
flex: 1;
|
||||
justify-content:center;
|
||||
align-items: center;
|
||||
/* background-color: coral; */
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
// Pages/index/index.js
|
||||
import { API } from '../../../../utils/network/api'
|
||||
const api = new API()
|
||||
Page({
|
||||
data: {
|
||||
static_host: api.getStaticHost()
|
||||
},
|
||||
onShow() {
|
||||
if (typeof this.getTabBar === 'function' && this.getTabBar()) {
|
||||
this.getTabBar().setData({
|
||||
tabBarShow:false, //true/false
|
||||
})
|
||||
}
|
||||
},
|
||||
toGo(e){
|
||||
console.log(e.currentTarget.dataset.url)
|
||||
wx.switchTab({
|
||||
url: e.currentTarget.dataset.url
|
||||
})
|
||||
}
|
||||
|
||||
})
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"t-image": "tdesign-miniprogram/image/image"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
<view class="title">请选择您的身份</view>
|
||||
<view>
|
||||
<view class="item">
|
||||
<t-image
|
||||
bindtap="toGo" data-url="/Pages/yaoshi/home/home"
|
||||
class="item_img"
|
||||
src="{{static_host}}/applet/doctor/static/images/yi.png"
|
||||
mode="heightFix"
|
||||
height="220rpx"
|
||||
aria-label="医师端"
|
||||
loading="slot"
|
||||
>
|
||||
<t-loading slot="loading" theme="circular" size="40rpx" loading />
|
||||
</t-image>
|
||||
</view>
|
||||
<view class="item">
|
||||
<t-image
|
||||
bindtap="toGo" data-url="/Pages/yaoshi/my/my"
|
||||
class="item_img"
|
||||
src="{{static_host}}/applet/doctor/static/images/yao.png"
|
||||
mode="heightFix"
|
||||
height="220rpx"
|
||||
aria-label="药师端"
|
||||
loading="slot">
|
||||
<t-loading slot="loading" theme="circular" size="40rpx" loading />
|
||||
</t-image>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
.title{
|
||||
margin-top: 250rpx ;
|
||||
margin-left: 50rpx;
|
||||
margin-bottom: 100rpx;
|
||||
font-size: 50rpx;
|
||||
font-weight: bold;
|
||||
}
|
||||
.item{
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
margin-bottom: 100rpx;
|
||||
justify-content: center;
|
||||
align-content: center;
|
||||
}
|
||||
.item_img{
|
||||
flex: 1;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
import { API } from '../../../../utils/network/api'
|
||||
const api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
// 组件所需的参数
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '基本资料', //导航栏 中间的标题
|
||||
},
|
||||
|
||||
// 此页面 页面内容距最顶部的距离
|
||||
height: app.globalData.height,
|
||||
info: ""
|
||||
},
|
||||
onLoad(options) {
|
||||
|
||||
},
|
||||
onShow(){
|
||||
|
||||
api.getPharmacistInfo().then(response => {
|
||||
console.log(response.data);
|
||||
this.setData({
|
||||
info: response.data
|
||||
})
|
||||
}).catch(errors => {
|
||||
console.error(errors);
|
||||
})
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index",
|
||||
"t-avatar": "tdesign-miniprogram/avatar/avatar",
|
||||
"van-cell": "@vant/weapp/cell/index",
|
||||
"van-cell-group": "@vant/weapp/cell-group/index"
|
||||
},
|
||||
"navigationBarBackgroundColor": "#ffffff",
|
||||
"navigationBarTextStyle": "black",
|
||||
"navigationBarTitleText": "基本资料",
|
||||
"backgroundColor": "#eeeeee",
|
||||
"backgroundTextStyle": "light"
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<view class="container">
|
||||
<view class="top">
|
||||
<t-avatar class="avatar" size="large" image="{{info.avatar}}" />
|
||||
<text class="name">{{info.user_name}}</text>
|
||||
</view>
|
||||
<view class="content">
|
||||
<van-cell-group>
|
||||
<van-cell size="large" title="姓名" title-width="120rpx" title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="{{info.user_name}}" />
|
||||
<van-cell size="large" title="性别" title-width="120rpx" title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="{{info.sex==1?'男':'女'}}" />
|
||||
<van-cell size="large" title="年龄" title-width="120rpx" title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="{{info.age}}" />
|
||||
<van-cell size="large" title="身份证号" title-width="120rpx" title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="{{info.card_num}}" />
|
||||
<!-- <van-cell size="large" title="手机号码" title-width="120rpx" title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="{{info.user_name}}" /> -->
|
||||
<!-- <van-cell size="large" title="我的地址" title-width="120rpx" title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="{{info.user_name}}" /> -->
|
||||
<van-cell size="large" title="科室" title-width="120rpx" title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="{{info.department_custom_name}}" />
|
||||
<van-cell size="large" title="职称" title-width="120rpx" title-style="text-align: justify;text-justify:distribute-all-lines; text-align-last: justify;" value="{{info.pharmacist_title}}" />
|
||||
</van-cell-group>
|
||||
</view>
|
||||
</view>
|
||||
@@ -0,0 +1,23 @@
|
||||
page{
|
||||
background-color: #F4F4F4;
|
||||
}
|
||||
.top{
|
||||
width: 100vw;
|
||||
background-color: rgb(255, 255, 255);
|
||||
height: 370rpx;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
align-content: center;
|
||||
flex-direction: column;
|
||||
margin-bottom: 20rpx;
|
||||
}
|
||||
.name{
|
||||
color: white;
|
||||
margin-top: 30rpx;
|
||||
text-align: justify;
|
||||
text-justify:distribute-all-lines;
|
||||
text-align-last: justify;
|
||||
font-size: 28rpx;
|
||||
width: 180rpx;
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
import { API } from '../../../../utils/network/api'
|
||||
const api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
// 组件所需的参数
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '患者病历', //导航栏 中间的标题
|
||||
},
|
||||
// 此页面 页面内容距最顶部的距离
|
||||
height: app.globalData.height,
|
||||
order_inquiry_id: "",
|
||||
order_prescription_id: "",
|
||||
case_detail: {},
|
||||
from: ""
|
||||
},
|
||||
onLoad(options) {
|
||||
let order_inquiry_id = options.order_inquiry_id;
|
||||
let order_prescription_id = options.order_prescription_id;
|
||||
let from = options.from;
|
||||
console.log("order_inquiry_id: ", order_inquiry_id);
|
||||
this.setData({
|
||||
order_inquiry_id: order_inquiry_id,
|
||||
order_prescription_id: order_prescription_id,
|
||||
from: from,
|
||||
})
|
||||
},
|
||||
onShow(){
|
||||
|
||||
api.getCase({order_inquiry_id: this.data.order_inquiry_id}).then(response => {
|
||||
console.log(response.data);
|
||||
this.setData({
|
||||
case_detail: response.data
|
||||
})
|
||||
}).catch(errors => {
|
||||
console.error(errors);
|
||||
})
|
||||
},
|
||||
go(e){
|
||||
let url = e.currentTarget.dataset.url;
|
||||
app.go(url)
|
||||
},
|
||||
})
|
||||
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index",
|
||||
"van-button": "@vant/weapp/button/index"
|
||||
},
|
||||
"navigationBarBackgroundColor": "#ffffff",
|
||||
"navigationBarTextStyle": "black",
|
||||
"navigationBarTitleText": "患者病历",
|
||||
"backgroundColor": "#eeeeee",
|
||||
"backgroundTextStyle": "light"
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<view class="container">
|
||||
<view class="user_info">
|
||||
<view class="user_item">患者信息</view>
|
||||
<view class="user_item">
|
||||
<text class="item_title">姓名:</text>{{case_detail.name}}
|
||||
<text class="item_title">性别:</text>{{case_detail.sex==1?'男':'女'}}
|
||||
<text class="item_title">年龄:</text>{{case_detail.age}}岁
|
||||
</view>
|
||||
</view>
|
||||
<view class="case_info">
|
||||
<view class="item">疾病资料</view>
|
||||
<view class="item"><text class="item_title">病情主要述:</text>{{case_detail.disease_desc}}</view>
|
||||
<view class="item">
|
||||
<text class="item_title">用药意向:</text>
|
||||
<text wx:for="{{case_detail.product}}">{{item}}</text>
|
||||
</view>
|
||||
<view class="item"><text class="item_title">体重:</text>{{case_detail.weight}}KG</view>
|
||||
<view class="item"><text class="item_title">是否服用过您想购买的药品且无相关禁忌症:</text>{{case_detail.is_taboo==0?'否':'是'}}</view>
|
||||
<view class="item"><text class="item_title">是否有药物过敏史:</text>{{case_detail.is_allergy_history==0?'否':'是'}}</view>
|
||||
<view class="item"><text class="item_title">您是否处于备孕、妊娠、哺乳期:</text>{{case_detail.is_pregnant==0?'否':'是'}}</view>
|
||||
<view class="item"><text class="item_title">复诊凭证</text></view>
|
||||
</view>
|
||||
<view class="go_check" bindtap="go" data-url="/user/pages/yaoshi/prescription/prescription?order_prescription_id={{order_prescription_id}}">
|
||||
<van-button wx:if="{{from == '1'}}" color="linear-gradient(to right, #4CABEA, #64CFE9)" block round type="info">前往审方</van-button>
|
||||
</view>
|
||||
<view class="bottom"></view>
|
||||
</view>
|
||||
@@ -0,0 +1,35 @@
|
||||
page{
|
||||
background-color: #F3F5F7;
|
||||
}
|
||||
.container{
|
||||
letter-spacing: 3rpx;
|
||||
}
|
||||
.user_info{
|
||||
background-color: #fff;
|
||||
margin: 30rpx 0;
|
||||
padding: 20rpx;
|
||||
}
|
||||
.case_info{
|
||||
background-color: #fff;
|
||||
padding: 20rpx;
|
||||
}
|
||||
.user_item{
|
||||
padding: 20rpx 0;
|
||||
}
|
||||
.item{
|
||||
padding: 30rpx 0;
|
||||
border-bottom: 1rpx solid #F1F1F1;
|
||||
}
|
||||
.item_title{
|
||||
color: #909090;
|
||||
}
|
||||
.bottom{
|
||||
text-align: center;
|
||||
margin: 30rpx 0;
|
||||
font-size: 20rpx;
|
||||
letter-spacing: 5rpx;
|
||||
}
|
||||
.go_check{
|
||||
width: 90vw;
|
||||
margin: 20rpx auto 50rpx auto;
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
import { API } from '../../../../utils/network/api'
|
||||
const api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
navbarData: {
|
||||
showCapsule: 0, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '个人中心', //导航栏 中间的标题
|
||||
},
|
||||
height: app.globalData.height,
|
||||
info:{}
|
||||
},
|
||||
onShow() {
|
||||
if (typeof this.getTabBar === 'function' && this.getTabBar()) {
|
||||
this.getTabBar().setData({
|
||||
active: 1, //数字是当前页面在tabbar的索引,如我的查询页索引是2,因此这边为2,同理首页就为0,审批页面为1
|
||||
})
|
||||
}
|
||||
|
||||
api.getPharmacistInfo().then(response => {
|
||||
console.log(response.data);
|
||||
this.setData({
|
||||
info: response.data
|
||||
})
|
||||
}).catch(errors => {
|
||||
console.error(errors);
|
||||
})
|
||||
},
|
||||
logOut(){
|
||||
console.log("退出登录");
|
||||
let usertype = wx.getStorageSync('usertype');
|
||||
wx.showModal({
|
||||
title: '确认退出登录',
|
||||
content: '退出登录后您需要重新登录',
|
||||
success (res) {
|
||||
if (res.confirm) {
|
||||
console.log('用户点击确定')
|
||||
wx.setStorageSync('AUTH_TOKEN_'+usertype, "");
|
||||
wx.setStorageSync('user_id_'+usertype, "");
|
||||
wx.setStorageSync('client_user_id_'+usertype, "");
|
||||
app.globalData.isLogin=false;
|
||||
wx.setStorageSync('usertype','')
|
||||
app.go("/Pages/index/index");
|
||||
} else if (res.cancel) {
|
||||
console.log('用户点击取消')
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
go(e){
|
||||
console.log(e)
|
||||
let url = e.currentTarget.dataset.url;
|
||||
app.go(url);
|
||||
}
|
||||
|
||||
})
|
||||
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"t-avatar": "tdesign-miniprogram/avatar/avatar",
|
||||
"van-icon": "@vant/weapp/icon/index",
|
||||
"van-button": "@vant/weapp/button/index",
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index"
|
||||
},
|
||||
"navigationBarBackgroundColor": "#ffffff",
|
||||
"navigationBarTextStyle": "black",
|
||||
"navigationBarTitleText": "个人中心",
|
||||
"backgroundColor": "#eeeeee",
|
||||
"backgroundTextStyle": "light"
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<view class="container">
|
||||
<view class="top">
|
||||
<t-avatar class="avatar" size="large" image="{{info.avatar}}" />
|
||||
<text class="name">{{info.user_name}}</text>
|
||||
</view>
|
||||
<view class="content">
|
||||
<view class="my" bindtap="go" data-url="/Pages/yaoshi/info/info">个人中心</view>
|
||||
<view class="item_list">
|
||||
<view class="item" bindtap="go" data-url="/Pages/yaoshi/authentication/authentication">
|
||||
<van-icon name="user-o" size="50rpx" color="#55B0E5"/>
|
||||
<text class="item_name">实名认证</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<van-button type="primary" block bindtap="logOut">退出登录</van-button>
|
||||
</view>
|
||||
</view>
|
||||
@@ -0,0 +1,39 @@
|
||||
.top{
|
||||
width: 100vw;
|
||||
background-color: cornflowerblue;
|
||||
height: 370rpx;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
align-content: center;
|
||||
flex-direction: column;
|
||||
}
|
||||
.name{
|
||||
color: white;
|
||||
margin-top: 30rpx;
|
||||
text-align: justify;
|
||||
text-justify: inter-word;
|
||||
text-align-last: justify;
|
||||
font-size: 28rpx;
|
||||
width: 180rpx;
|
||||
}
|
||||
.my{
|
||||
display: flex;
|
||||
height: 100rpx;
|
||||
/* background-color: teal; */
|
||||
align-items: center;
|
||||
padding-left: 30rpx;
|
||||
color: black;
|
||||
border-bottom: 1px solid rgb(209, 206, 206);
|
||||
}
|
||||
.item{
|
||||
display: flex;
|
||||
height: 100rpx;
|
||||
/* background-color: teal; */
|
||||
align-items: center;
|
||||
padding-left: 30rpx;
|
||||
color: black;
|
||||
}
|
||||
.item_name{
|
||||
margin-left: 20rpx;
|
||||
}
|
||||
@@ -0,0 +1,97 @@
|
||||
import Toast from '@vant/weapp/toast/toast'
|
||||
import { API } from '../../../../utils/network/api'
|
||||
const api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
bohuishow: false,
|
||||
reasonshow: false,
|
||||
resonText: "请选择驳回理由",
|
||||
columns: ['用法错误', '超适应症用药', '诊断与用药不符', '抗生素使用不合理', '重复用药'],
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '处方详情', //导航栏 中间的标题
|
||||
},
|
||||
// 此页面 页面内容距最顶部的距离
|
||||
height: app.globalData.height,
|
||||
order_prescription_id: "",
|
||||
prescription_img_oss_path: "",
|
||||
doctor_sign_image: ""
|
||||
},
|
||||
onLoad(options) {
|
||||
let order_prescription_id = options.order_prescription_id;
|
||||
console.log("order_prescription_id: ", order_prescription_id)
|
||||
this.setData({
|
||||
order_prescription_id: order_prescription_id
|
||||
})
|
||||
},
|
||||
|
||||
onConfirmReason(event) {
|
||||
const { picker, value, index } = event.detail;
|
||||
console.log(`当前值:${value}, 当前索引:${index}`);
|
||||
let _resonText = `${value}`;
|
||||
this.setData({ resonText: _resonText });
|
||||
this.setData({ reasonshow: false });
|
||||
},
|
||||
|
||||
onCancelReason() {
|
||||
this.setData({ reasonshow: false });
|
||||
},
|
||||
|
||||
showPopup() {
|
||||
this.setData({ bohuishow: true });
|
||||
},
|
||||
|
||||
showReasonPopup(){
|
||||
console.log(222);
|
||||
this.setData({ reasonshow: true });
|
||||
},
|
||||
|
||||
onClose() {
|
||||
console.log(111);
|
||||
this.setData({ bohuishow: false });
|
||||
},
|
||||
|
||||
onCloseReason(){
|
||||
this.setData({ reasonshow: false });
|
||||
},
|
||||
|
||||
closePopup(){
|
||||
this.setData({ bohuishow: false });
|
||||
},
|
||||
|
||||
submitBohui(e) {
|
||||
console.log(444);
|
||||
this.putPharmacistPrescriptionVerify(e);
|
||||
},
|
||||
|
||||
submit(){
|
||||
console.log(555);
|
||||
},
|
||||
onShow(){
|
||||
api.getPharmacistPrescriptioninfo({order_prescription_id: this.data.order_prescription_id}).then(response => {
|
||||
console.log(response.data);
|
||||
this.setData({
|
||||
prescription_img_oss_path: response.data.prescription_img_oss_path,
|
||||
doctor_sign_image: response.data.doctor_sign_image
|
||||
})
|
||||
}).catch(errors => {console.error(errors);})
|
||||
},
|
||||
putPharmacistPrescriptionVerify(e){
|
||||
console.log(e)
|
||||
let params = {};
|
||||
params.pharmacist_audit_status = e.currentTarget.dataset.pharmacist_audit_status;
|
||||
if(params.pharmacist_audit_status == 2){
|
||||
params.pharmacist_fail_reason = this.data.resonText;
|
||||
}
|
||||
params.order_prescription_id = this.data.order_prescription_id;
|
||||
api.putPharmacistPrescriptionVerify(params).then(response => {
|
||||
console.log(response.data);
|
||||
Toast.success("处理成功");
|
||||
setTimeout(() => {
|
||||
wx.navigateBack();
|
||||
}, 1000);
|
||||
}).catch(errors => {console.error(errors);})
|
||||
}
|
||||
|
||||
})
|
||||
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index",
|
||||
"van-button": "@vant/weapp/button/index",
|
||||
"van-cell": "@vant/weapp/cell/index",
|
||||
"van-cell-group": "@vant/weapp/cell-group/index",
|
||||
"van-toast": "@vant/weapp/toast/index",
|
||||
"van-popup": "@vant/weapp/popup/index",
|
||||
"van-picker": "@vant/weapp/picker/index"
|
||||
},
|
||||
"navigationBarBackgroundColor": "#ffffff",
|
||||
"navigationBarTextStyle": "black",
|
||||
"navigationBarTitleText": "处方详情",
|
||||
"backgroundColor": "#eeeeee",
|
||||
"backgroundTextStyle": "light"
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<view class="container">
|
||||
<view class="img_box" wx:if="{{false}}">
|
||||
<view class="img_content">
|
||||
<image class="case_img"
|
||||
src="{{prescription_img_oss_path}}"
|
||||
mode="widthFix"
|
||||
/>
|
||||
<image class="doctor_sign_image"
|
||||
src="{{doctor_sign_image}}"
|
||||
mode="widthFix"
|
||||
/>
|
||||
</view>
|
||||
</view>
|
||||
<view class="imgbox">
|
||||
<image src="{{prescription_img_oss_path}}" 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">
|
||||
<text decode="true"> 驳回 </text>
|
||||
</van-button>
|
||||
</view>
|
||||
<view class="button_item" bindtap="putPharmacistPrescriptionVerify" data-pharmacist_audit_status="1">
|
||||
<van-button round type="primary" bind:click="submit">
|
||||
<text decode="true"> 通过 </text>
|
||||
</van-button>
|
||||
</view>
|
||||
</view>
|
||||
<view style="height: 20rpx;">
|
||||
|
||||
</view>
|
||||
|
||||
<van-popup show="{{ bohuishow }}" bind:close="onClose">
|
||||
<view class="pop">
|
||||
<van-cell size="large" title="驳回理由:" is-link value="{{ resonText }}" bind:click="showReasonPopup"/>
|
||||
<view class="pop_button">
|
||||
<view class="pop_button_txt" bindtap="closePopup">取消</view>
|
||||
<view class="pop_button_txt" bindtap="submitBohui" data-pharmacist_audit_status="2">确认驳回</view>
|
||||
</view>
|
||||
</view>
|
||||
</van-popup>
|
||||
|
||||
<van-popup
|
||||
show="{{ reasonshow }}"
|
||||
position="bottom"
|
||||
bind:close="onCloseReason"
|
||||
>
|
||||
<van-picker show-toolbar
|
||||
title="请选择"
|
||||
columns="{{ columns }}"
|
||||
bind:cancel="onCancelReason"
|
||||
bind:confirm="onConfirmReason" />
|
||||
</van-popup>
|
||||
|
||||
<van-toast id="van-toast" />
|
||||
|
||||
</view>
|
||||
@@ -0,0 +1,60 @@
|
||||
page{
|
||||
background-color: #F3F5F7;
|
||||
}
|
||||
|
||||
.img_box{
|
||||
width: 90vw;
|
||||
margin: 20rpx auto;
|
||||
text-align: center;
|
||||
}
|
||||
.case_img{
|
||||
width: 100%;
|
||||
}
|
||||
.img_content{
|
||||
background-color: #F3F5F7;
|
||||
padding: 20rpx;
|
||||
border-radius: 10rpx;
|
||||
}
|
||||
.button_group{
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
margin-bottom: 50rpx;
|
||||
}
|
||||
.button_item{
|
||||
display:inline-block;
|
||||
}
|
||||
.pop{
|
||||
width: 90vw;
|
||||
margin-bottom: 30rpx;
|
||||
}
|
||||
.pop_button{
|
||||
margin-top: 30rpx;
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
}
|
||||
.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;
|
||||
}
|
||||
.van-cell__value{
|
||||
flex: 1.2 !important;
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
import { API } from '../../../../utils/network/api'
|
||||
const api = new API()
|
||||
// const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '添加诊断', //导航栏 中间的标题
|
||||
},
|
||||
disease_class_name: "",
|
||||
data_list: []
|
||||
},
|
||||
onChange(e){
|
||||
console.log(e)
|
||||
let name = e.detail;
|
||||
this.setData({
|
||||
data_list: []
|
||||
})
|
||||
if(name){
|
||||
this.search();
|
||||
}
|
||||
},
|
||||
search(){
|
||||
//获取评价列表
|
||||
let params = {};
|
||||
params.disease_class_name = this.data.disease_class_name;
|
||||
api.getBasicDiseaseSearch(params).then(response => {
|
||||
console.log(response);
|
||||
this.setData({
|
||||
data_list: response.data
|
||||
})
|
||||
}).catch(errors => {
|
||||
console.error(errors);
|
||||
})
|
||||
},
|
||||
addZhenDuan(e){
|
||||
let disease_class_name = e.currentTarget.dataset.disease_class_name;
|
||||
let disease_class_id = e.currentTarget.dataset.disease_class_id;
|
||||
console.log("disease_class_name: ", disease_class_name);
|
||||
console.log("disease_class_id: ", disease_class_id);
|
||||
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index",
|
||||
"van-field": "@vant/weapp/field/index"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
<!-- 添加诊断 暂时去掉了 -->
|
||||
<m-nav-bar navbarData="{{navbarData}}">
|
||||
<view style="font-size: 30rpx;color: #999999;margin: 20rpx 0;">诊断</view>
|
||||
<van-field
|
||||
model:value="{{ disease_class_name }}"
|
||||
placeholder="请输入用户名"
|
||||
bind:change="onChange"
|
||||
/>
|
||||
<view class="data_list">
|
||||
<view bindtap="addZhenDuan" class="item" data-disease_class_name="{{item.disease_class_name}}" data-disease_class_id="{{item.disease_class_id}}" wx:for="{{data_list}}">
|
||||
{{item.disease_class_name}}
|
||||
</view>
|
||||
</view>
|
||||
</m-nav-bar>
|
||||
@@ -0,0 +1,12 @@
|
||||
.van-cell{
|
||||
padding: 0 !important;
|
||||
}
|
||||
.data_list{
|
||||
font-size: 30rpx;
|
||||
color: #999999;
|
||||
}
|
||||
.item{
|
||||
height: 100rpx;
|
||||
line-height: 100rpx;
|
||||
border-bottom: 1px solid #E7E7E7;
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
import { API } from '../../../../utils/network/api'
|
||||
let api = new API()
|
||||
Page({
|
||||
|
||||
data: {
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '协议详情', //导航栏 中间的标题
|
||||
},
|
||||
agreement_id: "",
|
||||
agreement_content: ""
|
||||
},
|
||||
|
||||
onLoad(option){
|
||||
this.setData({
|
||||
agreement_id: option.agreement_id
|
||||
})
|
||||
},
|
||||
|
||||
onShow(){
|
||||
//获取医生我的账户数据
|
||||
api.getBasicAgreement({agreement_id: this.data.agreement_id}).then(response => {
|
||||
console.log(response);
|
||||
this.setData({
|
||||
agreement_content: response.data.agreement_content,
|
||||
"navbarData.title": response.data.agreement_name,
|
||||
})
|
||||
}).catch(errors => {console.error(errors);})
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
<!-- 协议详情 -->
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<view class="container">
|
||||
<rich-text nodes="{{agreement_content}}" space="nbsp"></rich-text>
|
||||
</view>
|
||||
@@ -0,0 +1,8 @@
|
||||
/* Pages/yishi/manual_detail/index.wxss */
|
||||
page{
|
||||
background-color: #F6F6F6;
|
||||
}
|
||||
.container{
|
||||
width: 92vw;
|
||||
margin: 20rpx auto;
|
||||
}
|
||||
@@ -0,0 +1,90 @@
|
||||
import { API } from '../../../../utils/network/api'
|
||||
const api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '患者评价', //导航栏 中间的标题
|
||||
},
|
||||
height: app.globalData.height,
|
||||
stickyProps: {
|
||||
offsetTop: app.globalData.height*2 + 20,
|
||||
zIndex: 99
|
||||
},
|
||||
doctor_id: "",
|
||||
evaluation_type: 1,
|
||||
appraise_list_1: [],
|
||||
appraise_list_2: [],
|
||||
appraise_list_3: [],
|
||||
current_page: 0,
|
||||
total: 0,
|
||||
per_page: 0,
|
||||
last_page: 0,
|
||||
total_quantity: 0,
|
||||
good_quantity: 0,
|
||||
bad_quantity: 0,
|
||||
|
||||
},
|
||||
onPullDownRefresh(){
|
||||
console.log('===下拉动作===');
|
||||
this.setData({
|
||||
current_page: 0,
|
||||
})
|
||||
this.getDoctorEvaluationList();
|
||||
},
|
||||
onReachBottom() {
|
||||
console.log('===触底了!!===');
|
||||
if(this.data.current_page < this.data.last_page){//最后一页时停止分页
|
||||
this.getDoctorEvaluationList(this.data.evaluation_type)
|
||||
}
|
||||
},
|
||||
onLoad(option){
|
||||
console.log(option.doctor_id);
|
||||
this.setData({
|
||||
doctor_id: option.doctor_id
|
||||
})
|
||||
|
||||
},
|
||||
onShow(){
|
||||
console.log("onShow");
|
||||
this.getDoctorEvaluationList(1);
|
||||
},
|
||||
onTabsChange(e){
|
||||
console.log(e);
|
||||
let list_name = "appraise_list_" + e.detail.name;
|
||||
this.setData({
|
||||
evaluation_type: e.detail.name,
|
||||
current_page: 0,
|
||||
last_page: 0,
|
||||
[list_name]: []
|
||||
})
|
||||
this.getDoctorEvaluationList(e.detail.name)
|
||||
},
|
||||
getDoctorEvaluationList(evaluation_type){
|
||||
//获取评价列表
|
||||
let params = {};
|
||||
params.page = this.data.current_page + 1;
|
||||
params.doctor_id = this.data.doctor_id;
|
||||
params.evaluation_type = evaluation_type;
|
||||
api.getDoctorEvaluation(params).then(response => {
|
||||
if(response.data.total > 0){
|
||||
let list_name = "appraise_list_" + evaluation_type;
|
||||
console.log(list_name);
|
||||
let apprise_list = this.data[list_name];
|
||||
this.setData({
|
||||
[list_name]: apprise_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,
|
||||
total_quantity: response.data.total_quantity,
|
||||
good_quantity: response.data.good_quantity,
|
||||
bad_quantity: response.data.bad_quantity,
|
||||
})
|
||||
}
|
||||
}).catch(errors => {
|
||||
console.error(errors);
|
||||
})
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index",
|
||||
"appraise-data": "../../../commpents/appraise_data/index",
|
||||
"van-empty": "@vant/weapp/empty/index",
|
||||
"van-tab": "@vant/weapp/tab/index",
|
||||
"van-tabs": "@vant/weapp/tabs/index",
|
||||
"t-rate": "tdesign-miniprogram/rate/rate",
|
||||
"van-divider": "@vant/weapp/divider/index"
|
||||
},
|
||||
"onReachBottomDistance": 100
|
||||
}
|
||||
@@ -0,0 +1,111 @@
|
||||
<wxs module="dateSubstr" src="/utils/substr.wxs"></wxs>
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<view class="container">
|
||||
|
||||
<van-tabs active="1"
|
||||
color="#3CC7C0"
|
||||
title-active-color="#3CC7C0"
|
||||
bind:change="onTabsChange"
|
||||
border="{{true}}"
|
||||
>
|
||||
<van-tab title="全部({{total_quantity}})" name="1">
|
||||
<view class="item_list">
|
||||
<view class="item" wx:for="{{appraise_list_1}}">
|
||||
<view class="top">
|
||||
<view class="name">{{item.name_mask}}</view>
|
||||
<view class="start">
|
||||
<t-rate value="{{item.avg_score}}" count="5" color="#ED9C00"/>
|
||||
</view>
|
||||
</view>
|
||||
<view class="content">{{item.content}}</view>
|
||||
<view class="date">{{dateSubstr.substring(item.created_at,0,16)}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<van-empty description="暂无数据" wx:if="{{appraise_list_1.length == 0}}" />
|
||||
<van-divider contentPosition="center" wx:if="{{appraise_list_1.length > 0 && current_page == last_page}}">到底了~</van-divider>
|
||||
</van-tab>
|
||||
<van-tab title="好评({{good_quantity}})" name="2">
|
||||
<view class="item_list">
|
||||
<view class="item" wx:for="{{appraise_list_2}}">
|
||||
<view class="top">
|
||||
<view class="name">{{item.name_mask}}</view>
|
||||
<view class="start">
|
||||
<t-rate value="{{item.avg_score}}" count="5" color="#ED9C00"/>
|
||||
</view>
|
||||
</view>
|
||||
<view class="content">{{item.content}}</view>
|
||||
<view class="date">{{dateSubstr.substring(item.created_at,0,16)}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<van-empty description="暂无数据" wx:if="{{appraise_list_2.length == 0}}" />
|
||||
<van-divider contentPosition="center" wx:if="{{appraise_list_2.length > 0 && current_page == last_page}}">到底了~</van-divider>
|
||||
</van-tab>
|
||||
<van-tab title="中/差评({{bad_quantity}})" name="3">
|
||||
<view class="item_list">
|
||||
<view class="item" wx:for="{{appraise_list_3}}">
|
||||
<view class="top">
|
||||
<view class="name">{{item.name_mask}}</view>
|
||||
<view class="start">
|
||||
<t-rate value="{{item.avg_score}}" count="5" color="#ED9C00"/>
|
||||
</view>
|
||||
</view>
|
||||
<view class="content">{{item.content}}</view>
|
||||
<view class="date">{{dateSubstr.substring(item.created_at,0,16)}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<van-empty description="暂无数据" wx:if="{{appraise_list_3.length == 0}}" />
|
||||
<van-divider contentPosition="center" wx:if="{{appraise_list_3.length > 0 && current_page == last_page}}">到底了~</van-divider>
|
||||
</van-tab>
|
||||
</van-tabs>
|
||||
|
||||
<!-- <t-tabs
|
||||
defaultValue="{{1}}"
|
||||
sticky
|
||||
stickyProps="{{stickyProps}}"
|
||||
bind:change="onTabsChange"
|
||||
bind:click="onTabsClick"
|
||||
t-class="custom-tabs"
|
||||
catch:scroll="onStickyScroll"
|
||||
theme="line"
|
||||
custom-style="font-size: 32rpx"
|
||||
>
|
||||
<t-tab-panel label="全部({{total_quantity}})" value="1">
|
||||
<view class="item_list">
|
||||
<appraise-data
|
||||
name="{{item.name_mask}}"
|
||||
start="{{item.avg_score }}"
|
||||
content="{{item.content}}"
|
||||
date="{{item.created_at}}"
|
||||
wx:for="{{appraise_list_1}}"
|
||||
/>
|
||||
</view>
|
||||
<van-empty description="暂无数据" wx:if="{{appraise_list_1.length == 0}}" />
|
||||
|
||||
</t-tab-panel>
|
||||
<t-tab-panel label="好评({{good_quantity}})" value="2">
|
||||
<view class="item_list">
|
||||
<appraise-data
|
||||
name="{{item.name_mask}}"
|
||||
start="{{item.avg_score }}"
|
||||
content="{{item.content}}"
|
||||
date="{{item.created_at}}"
|
||||
wx:for="{{appraise_list_2}}"
|
||||
/>
|
||||
</view>
|
||||
<van-empty description="暂无数据" wx:if="{{appraise_list_2.length == 0}}" />
|
||||
</t-tab-panel>
|
||||
|
||||
<t-tab-panel label="中/差评({{bad_quantity}})" value="3">
|
||||
<view class="item_list">
|
||||
<appraise-data
|
||||
name="{{item.name_mask}}"
|
||||
start="{{item.avg_score }}"
|
||||
content="{{item.content}}"
|
||||
date="{{item.created_at}}"
|
||||
wx:for="{{appraise_list_3}}"
|
||||
/>
|
||||
</view>
|
||||
<van-empty description="暂无数据" wx:if="{{appraise_list_3.length == 0}}" />
|
||||
</t-tab-panel>
|
||||
</t-tabs> -->
|
||||
</view>
|
||||
@@ -0,0 +1,50 @@
|
||||
page{
|
||||
background-color: #F6F6F6;
|
||||
}
|
||||
.container{
|
||||
width: 100vw;
|
||||
}
|
||||
.item_list{
|
||||
width: 92vw;
|
||||
margin: 20rpx auto;
|
||||
background-color: #fff;
|
||||
border-radius: 20rpx;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.item{
|
||||
display: flex;
|
||||
padding: 20rpx;
|
||||
flex-direction: column;
|
||||
}
|
||||
.item:not(:last-child){
|
||||
border-bottom: 1px solid #E7E7E7;
|
||||
}
|
||||
.top{
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
flex: 1;
|
||||
}
|
||||
.name{
|
||||
flex: 1;
|
||||
font-size: 30rpx;
|
||||
color: #666666;
|
||||
}
|
||||
.start{
|
||||
flex: 1;
|
||||
display: flex;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
.content{
|
||||
flex: 2;
|
||||
font-size: 34rpx;
|
||||
color: #333333;
|
||||
margin: 20rpx 0;
|
||||
}
|
||||
.date{
|
||||
flex: 1;
|
||||
font-size: 28rpx;
|
||||
color: #666666;
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
const app = getApp()
|
||||
Page({
|
||||
|
||||
data: {
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '实名认证', //导航栏 中间的标题
|
||||
},
|
||||
height: app.globalData.height,
|
||||
card_num_mask: "",
|
||||
card_name: ""
|
||||
},
|
||||
onLoad(option){
|
||||
console.log(option.card_num_mask);
|
||||
console.log(option.card_name);
|
||||
this.setData({
|
||||
card_name: option.card_name,
|
||||
card_num_mask: option.card_num_mask,
|
||||
})
|
||||
}
|
||||
|
||||
})
|
||||
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index",
|
||||
"van-cell": "@vant/weapp/cell/index",
|
||||
"van-cell-group": "@vant/weapp/cell-group/index"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
<!-- 实名认证结果页面 -->
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<view class="container" style="height: calc(100vh - 96rpx - {{height}}px);">
|
||||
<van-cell size="large" title="真实姓名" value="{{card_name}}" />
|
||||
<van-cell size="large" title="身份证号" value="{{card_num_mask}}" />
|
||||
</view>
|
||||
@@ -0,0 +1,6 @@
|
||||
.container{
|
||||
padding-top: 20rpx;
|
||||
background-color: #F6F6F6;
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
import { API } from '../../../../utils/network/api'
|
||||
const api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '我的银行卡', //导航栏 中间的标题
|
||||
},
|
||||
height: app.globalData.height,
|
||||
banklist_empty: true,
|
||||
bank_card_id: "",
|
||||
bank_img_path: "",
|
||||
bank_name: "",
|
||||
bank_card_code_mask: "",
|
||||
static_host: api.getStaticHost()
|
||||
},
|
||||
onShow(){
|
||||
|
||||
api.getDoctorBank().then(response => {
|
||||
if(response.data.bank_card_id){
|
||||
this.setData({
|
||||
banklist_empty: false,
|
||||
bank_card_code_mask: response.data.bank_card_code_mask,
|
||||
bank_card_id: response.data.bank_card_id,
|
||||
bank_img_path: response.data.bank_img_path,
|
||||
bank_name: response.data.bank_name
|
||||
})
|
||||
}
|
||||
|
||||
this.setData({
|
||||
bank_card_id: response.data.bank_card_id,
|
||||
bank_img_path: response.data.bank_img_path,
|
||||
bank_name: response.data.bank_name,
|
||||
bank_card_code_mask: response.data.bank_card_code_mask
|
||||
})
|
||||
}).catch(errors => {
|
||||
console.error(errors);
|
||||
})
|
||||
},
|
||||
go(e){
|
||||
console.log(e)
|
||||
let url = e.currentTarget.dataset.url;
|
||||
app.go(url+"?bank_card_id="+this.data.bank_card_id);
|
||||
}
|
||||
|
||||
})
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index",
|
||||
"van-image": "@vant/weapp/image/index",
|
||||
"t-icon": "tdesign-miniprogram/icon/icon",
|
||||
"van-button": "@vant/weapp/button/index"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
<!-- 我的银行卡页面 -->
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<view class="container">
|
||||
<view class="help">
|
||||
<view class="help_title">
|
||||
<text wx:if="{{ !banklist_empty }}">我的银行卡</text>
|
||||
</view>
|
||||
<view class="help_note" data-url="/user/pages/yishi/manual/index" bindtap="go">
|
||||
操作手册-银行卡<t-icon size="26rpx" style="display: inline-block;" name="chevron-right" size="48rpx" data-name="chevron-right" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="bankcard_empty_box" wx:if="{{ banklist_empty }}">
|
||||
<view class="bankcard_empty">
|
||||
<van-image src="{{static_host}}/applet/doctor/static/images/yishi/bankcard_empty.png" fit="widthFix" width="500rpx" aria-label="空" />
|
||||
</view>
|
||||
<van-button data-url="/user/pages/yishi/bindcard/index" bind:click="go" custom-style="font-size: 30rpx;border-radius: 10rpx;background-color:#3CC7C0;border: none;width: 92vw;margin: 50rpx auto;" type="primary" block>添加结算银行卡</van-button>
|
||||
<view class="note">提示:每人只能绑定一张银行卡,银行卡绑定成功后每月只能修改结算银行卡一次,请谨慎绑定。</view>
|
||||
</view>
|
||||
<view class="bankcard_list" wx:if="{{ !banklist_empty }}">
|
||||
<view class="bankcard_list_item">
|
||||
<van-image src="{{bank_img_path}}" fit="widthFix" width="100%" aria-label="空" />
|
||||
<view class="bankcard_list_item_name">{{bank_name}}</view>
|
||||
<view class="bankcard_list_item_num">{{bank_card_code_mask}}</view>
|
||||
</view>
|
||||
|
||||
<van-button data-url="/user/pages/yishi/bindcard/index" bind:click="go" custom-style="font-size: 30rpx;border-radius: 10rpx;background-color:#3CC7C0;border: none;width: 92vw;margin: 50rpx auto;" type="primary" block>更换银行卡</van-button>
|
||||
<view class="note">
|
||||
<text>提示: 1、每人只能绑定一张银行卡,银行卡绑定成功后才可提取问诊费,请谨慎绑定。
|
||||
2、每人每月限定只能修改一次结算银行卡。</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -0,0 +1,61 @@
|
||||
page{
|
||||
background-color: #F4F4F4;
|
||||
}
|
||||
.container{
|
||||
width: 100vw;
|
||||
}
|
||||
.help{
|
||||
display: flex;
|
||||
justify-content:space-between;
|
||||
}
|
||||
.help_title{
|
||||
padding-left: 4vw;
|
||||
height: 100rpx;
|
||||
line-height: 100rpx;
|
||||
font-size: 44rpx;
|
||||
color: #333;
|
||||
}
|
||||
.help_note{
|
||||
height: 100rpx;
|
||||
line-height: 100rpx;
|
||||
font-size: 26rpx;
|
||||
color: #666;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.bankcard_empty{
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
.note{
|
||||
font-size: 28rpx;
|
||||
color: #999999;
|
||||
width: 92vw;
|
||||
margin: -20rpx auto;
|
||||
line-height: 50rpx;
|
||||
}
|
||||
.bankcard_list{
|
||||
width: 92vw;
|
||||
margin: 0 auto;
|
||||
}
|
||||
.bankcard_list_item{
|
||||
position: relative;
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
.bankcard_list_item_name{
|
||||
position: absolute;
|
||||
top: 45rpx;
|
||||
left: 130rpx;
|
||||
font-size: 34rpx;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
.bankcard_list_item_num{
|
||||
position: absolute;
|
||||
top: 120rpx;
|
||||
left: 130rpx;
|
||||
font-size: 30rpx;
|
||||
color: #FFFFFF;
|
||||
height: 30rpx;
|
||||
line-height: 30rpx;
|
||||
}
|
||||
@@ -0,0 +1,253 @@
|
||||
import Toast from '@vant/weapp/toast/toast';
|
||||
import { API } from '../../../../utils/network/api'
|
||||
const api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
|
||||
data: {
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '绑定银行卡', //导航栏 中间的标题
|
||||
},
|
||||
height: app.globalData.height,
|
||||
realname: "",
|
||||
idcard: "",
|
||||
bankcard: "",
|
||||
city_show: false,
|
||||
bank_show: false,
|
||||
bank_note: "请选择开户行",
|
||||
city_note: "请选择开户行所在城市",
|
||||
areaList: [],
|
||||
bankList: [],
|
||||
select_province_id: "",
|
||||
select_city_id: "",
|
||||
select_county_id: "",
|
||||
select_bank_index: "",
|
||||
select_bank_id: "",
|
||||
area_sub_titles: ["省份","市区","区县"],
|
||||
areaprovince_data_ready: false,
|
||||
banklist_data_ready: false,
|
||||
bank_card_id: "",
|
||||
static_host: api.getStaticHost()
|
||||
},
|
||||
onLoad(options){
|
||||
console.log("options: ", options);
|
||||
let bank_card_id = options.bank_card_id;
|
||||
if(bank_card_id && bank_card_id != "undefined"){
|
||||
console.log("options bank_card_id: ", bank_card_id);
|
||||
this.setData({
|
||||
bank_card_id: bank_card_id
|
||||
})
|
||||
}
|
||||
let _this = this;
|
||||
//加载省份列表
|
||||
api.getAreaProvince().then(response => {
|
||||
console.log(response);
|
||||
const list = _this.formatArea(response, -1, true);
|
||||
_this.setData({
|
||||
areaprovince_data_ready: true,
|
||||
areaList: list
|
||||
})
|
||||
}).catch(errors => {console.error(errors); })
|
||||
|
||||
//加载银行卡列表
|
||||
api.getBasicBank().then(response => {
|
||||
console.log(response);
|
||||
const list = _this.formatBankList(response, -1, true);
|
||||
_this.setData({
|
||||
banklist_data_ready: true,
|
||||
bankList: list
|
||||
})
|
||||
}).catch(errors => {console.error(errors); })
|
||||
|
||||
|
||||
},
|
||||
onShow(){
|
||||
//获取实名认证信息
|
||||
api.getDoctorAuthReal().then(response => {
|
||||
console.log(response);
|
||||
if(response.data){
|
||||
this.setData({
|
||||
realname:response.data.card_name_mask,
|
||||
idcard:response.data.card_num_mask
|
||||
});
|
||||
}
|
||||
}).catch(errors => {
|
||||
console.error(errors);
|
||||
})
|
||||
},
|
||||
onCityShow(e) {
|
||||
console.log("onCityShow");
|
||||
this.setData({ city_show: true });
|
||||
},
|
||||
onBankShow(e) {
|
||||
console.log("onBankShow");
|
||||
if(this.data.select_county_id == ""){
|
||||
wx.showToast({
|
||||
title: '请选择城市',
|
||||
icon: "error"
|
||||
})
|
||||
return;
|
||||
}
|
||||
this.setData({ bank_show: true });
|
||||
},
|
||||
onBankClose(e) {
|
||||
console.log("onBankShow");
|
||||
this.setData({ bank_show: false });
|
||||
},
|
||||
onBankCancel(event) {
|
||||
console.log("onBankCancel");
|
||||
const { picker, value, index } = event.detail;
|
||||
Toast(`当前值:${value}, 当前索引:${index}`);
|
||||
this.setData({
|
||||
bank_show: false
|
||||
});
|
||||
|
||||
},
|
||||
onBankConfirm(event) {
|
||||
console.log("onBankConfirm");
|
||||
const { picker, value, index } = event.detail;
|
||||
console.log(event.detail);
|
||||
this.setData({
|
||||
bank_show: false,
|
||||
select_bank_id: `${value.value}`,
|
||||
bank_note: `${value.text}`
|
||||
});
|
||||
},
|
||||
onBankChange(event) {
|
||||
console.log("onYiYuanChange");
|
||||
const { picker, value, index } = event.detail;
|
||||
Toast(`当前值:${value}, 当前索引:${index}`);
|
||||
},
|
||||
onChangeCity(e) {
|
||||
this.setData({
|
||||
select_county_id: "",
|
||||
select_yiyuan_id: ""
|
||||
})
|
||||
console.log("onChangeCity");
|
||||
const { selectedOptions } = e.detail;
|
||||
console.log(e.detail)
|
||||
let area = selectedOptions[selectedOptions.length-1];
|
||||
if(!area){
|
||||
area = selectedOptions[selectedOptions.length-2];
|
||||
}
|
||||
const type = area.type;
|
||||
const value = area.value;
|
||||
const index = area.index;
|
||||
const p_index = area.p_index;
|
||||
if(type == 2){//省份
|
||||
api.getAreaCity({area_id: value}).then(response => {// 请求市区列表
|
||||
const list = this.formatArea(response, index, true);
|
||||
const _city = "areaList[" + index + "].children";
|
||||
this.setData({
|
||||
[_city]: list,
|
||||
select_province_id: value
|
||||
})
|
||||
}).catch(errors => {console.error(errors); })
|
||||
}
|
||||
if(type == 3){//市区
|
||||
api.getAreaCounty({area_id: value}).then(response => {// 请求市区列表
|
||||
const list = this.formatArea(response, index, false);
|
||||
const _county = "areaList[" + p_index + "].children[" +index+ "].children";
|
||||
this.setData({
|
||||
[_county]: list,
|
||||
select_city_id: value
|
||||
})
|
||||
}).catch(errors => {console.error(errors); })
|
||||
}
|
||||
|
||||
console.log("type: " + type);
|
||||
if(type == 4){//区县
|
||||
this.setData({
|
||||
select_county_id: value,
|
||||
bank_show: true,
|
||||
city_note: this.getCityNote(selectedOptions)
|
||||
});
|
||||
|
||||
}else{
|
||||
this.setData({
|
||||
city_show: true
|
||||
})
|
||||
}
|
||||
},
|
||||
getCityNote(selectedOptions){
|
||||
let txt = [];
|
||||
selectedOptions.forEach(item => {
|
||||
if(item){
|
||||
txt.push(item.label);
|
||||
}
|
||||
})
|
||||
return txt.join("/");
|
||||
},
|
||||
formatArea(response, p_index, has_children){
|
||||
var list = []
|
||||
let index = 0;
|
||||
response.data.forEach(data => {
|
||||
let area = {};
|
||||
area.index = index++;
|
||||
area.p_index = p_index;
|
||||
area.type = data.area_type;
|
||||
area.label = data.area_name;
|
||||
area.value = data.area_id;
|
||||
if(has_children){
|
||||
area.children = [];
|
||||
}
|
||||
list.push(area)
|
||||
});
|
||||
return list;
|
||||
},
|
||||
formatBankList(response){
|
||||
let list = [];
|
||||
response.data.forEach(item => {
|
||||
let data = {};
|
||||
data.text = item.bank_name;
|
||||
data.value = item.bank_id;
|
||||
list.push(data)
|
||||
});
|
||||
return list;
|
||||
},
|
||||
addBank(e){
|
||||
console.log("addbank, ", e);
|
||||
|
||||
|
||||
//绑定医生银行卡
|
||||
let params = {};
|
||||
params.county_id = this.data.select_county_id;
|
||||
params.city_id = this.data.select_city_id;
|
||||
params.province_id = this.data.select_province_id;
|
||||
params.bank_card_code = this.data.bankcard;
|
||||
params.bank_id = this.data.select_bank_id;
|
||||
console.log("params.county_id: ", params.county_id)
|
||||
if(params.county_id == ""){
|
||||
wx.showToast({
|
||||
title: '请选择城市',
|
||||
icon: "error"
|
||||
})
|
||||
return;
|
||||
}
|
||||
console.log(params);
|
||||
let bank_card_id = this.data.bank_card_id;
|
||||
if(bank_card_id){
|
||||
params.bank_card_id = bank_card_id;
|
||||
//更换医生银行卡
|
||||
api.putDoctorBank(params).then(response => {
|
||||
console.log(response);
|
||||
wx.showToast({
|
||||
title: '更换成功',
|
||||
icon: "success"
|
||||
})
|
||||
wx.navigateBack();
|
||||
}).catch(errors => {console.error(errors); })
|
||||
}else{
|
||||
//绑定医生银行卡
|
||||
api.postDoctorBank(params).then(response => {
|
||||
console.log(response);
|
||||
wx.showToast({
|
||||
title: '绑定成功',
|
||||
icon: "success"
|
||||
})
|
||||
wx.navigateBack();
|
||||
}).catch(errors => {console.error(errors); })
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index",
|
||||
"van-cell": "@vant/weapp/cell/index",
|
||||
"van-cell-group": "@vant/weapp/cell-group/index",
|
||||
"van-button": "@vant/weapp/button/index",
|
||||
"van-field": "@vant/weapp/field/index",
|
||||
"van-popup": "@vant/weapp/popup/index",
|
||||
"van-picker": "@vant/weapp/picker/index",
|
||||
"van-toast": "@vant/weapp/toast/index",
|
||||
"van-image": "@vant/weapp/image/index",
|
||||
"t-cascader": "tdesign-miniprogram/cascader/cascader"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
<!-- 绑定银行卡页面 -->
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<view class="container" style="height: calc(100vh - 96rpx - {{height}}px);">
|
||||
<view class="top_note">
|
||||
<van-image style="display: flex;align-items: center;margin-right: 10rpx;" src="{{static_host}}/applet/doctor/static/images/bell.png" fit="widthFix" width="45rpx" aria-label="qrcode" />
|
||||
<text>请确定开户人姓名与账户医生的姓名一致</text>
|
||||
</view>
|
||||
<view class="info">
|
||||
<van-cell-group>
|
||||
<van-cell size="large" title="姓名" value="{{realname}}" />
|
||||
<van-cell size="large" title="身份证号" value="{{idcard}}" border="{{ false }}" />
|
||||
</van-cell-group>
|
||||
</view>
|
||||
|
||||
<view class="bankcard">
|
||||
<van-cell-group>
|
||||
<van-cell size="large" title="所在城市" value="{{city_note}}" is-link bindtap="onCityShow"/>
|
||||
<van-cell size="large" title="开户行" value="{{bank_note}}" is-link bindtap="onBankShow"/>
|
||||
<van-field
|
||||
placeholder="请输入卡号"
|
||||
model:value="{{ bankcard }}"
|
||||
input-align="right"
|
||||
type="number"
|
||||
clearable
|
||||
placeholder-style="font-size: 16px;"
|
||||
>
|
||||
<text slot="label" style="font-size: 30rpx;">银行卡号</text>
|
||||
</van-field>
|
||||
</van-cell-group>
|
||||
</view>
|
||||
|
||||
<view class="note">
|
||||
提示:银行卡提交即绑定成功,上述信息请保证信息真实准确性,避免影响提取服务费。
|
||||
</view>
|
||||
|
||||
<van-button bind:click="addBank" custom-style="font-size: 30rpx;border-radius: 10rpx;background-color:#3CC7C0;border: none;width: 92vw;margin: 50rpx auto;" type="primary" block>提交</van-button>
|
||||
|
||||
<van-popup
|
||||
show="{{ bank_show }}"
|
||||
position="bottom"
|
||||
bind:close="onBankClose"
|
||||
round
|
||||
>
|
||||
<van-picker
|
||||
show-toolbar
|
||||
title="请选择开户行"
|
||||
columns="{{ bankList }}"
|
||||
default-index="{{select_bank_index}}"
|
||||
bind:cancel="onBankCancel"
|
||||
bind:confirm="onBankConfirm"
|
||||
bind:change="onBankChange" />
|
||||
</van-popup>
|
||||
|
||||
<t-cascader
|
||||
visible="{{ city_show }}"
|
||||
theme="tab"
|
||||
value="{{ select_county_id }}"
|
||||
options="{{ areaList }}"
|
||||
title="请选择地址"
|
||||
sub-titles="{{area_sub_titles}}"
|
||||
bind:change="onChangeCity"
|
||||
></t-cascader>
|
||||
</view>
|
||||
@@ -0,0 +1,44 @@
|
||||
.container{
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
background-color: #F4F4F4;
|
||||
}
|
||||
.top_note{
|
||||
padding-left: 4vw;
|
||||
height: 90rpx;
|
||||
line-height: 90rpx;
|
||||
color: #3CC7C0;
|
||||
background-color: #F0FFFB;
|
||||
font-size: 30rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.bankcard{
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
.note{
|
||||
font-size: 28rpx;
|
||||
color: #999999;
|
||||
width: 92vw;
|
||||
margin: 20rpx auto;
|
||||
line-height: 50rpx;
|
||||
}
|
||||
.t-tabs__item--active{
|
||||
color: #49B9AD !important;
|
||||
}
|
||||
.t-tabs__track{
|
||||
background-color: #49B9AD !important;
|
||||
}
|
||||
.t-icon-check{
|
||||
color: #49B9AD !important;
|
||||
}
|
||||
.van-picker__confirm{
|
||||
color: #3cc7c0 !important;
|
||||
}
|
||||
.van-cell {
|
||||
padding: 32rpx !important;
|
||||
}
|
||||
|
||||
.bankcard input{
|
||||
font-size: 16px !important;
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
import { API } from '../../../../utils/network/api'
|
||||
import debounce from '../../../../utils/debounce'
|
||||
let api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '病历信息', //导航栏 中间的标题
|
||||
},
|
||||
height: app.globalData.height,
|
||||
order_inquiry_id: "",
|
||||
case_detail: {},
|
||||
imglist: []
|
||||
},
|
||||
onLoad(options){
|
||||
console.log("onLoad", options)
|
||||
this.setData({
|
||||
order_inquiry_id: options.order_inquiry_id
|
||||
})
|
||||
|
||||
},
|
||||
goReport:debounce(function(event){
|
||||
wx.showLoading({
|
||||
mask:true,
|
||||
title: '正在打开文件...',
|
||||
})
|
||||
const url=event.currentTarget.dataset.url;
|
||||
const randfile = new Date().getTime() + '检测报告';
|
||||
const newPath = `${wx.env.USER_DATA_PATH}/${randfile}`;
|
||||
wx.downloadFile({
|
||||
// 示例 url,并非真实存在
|
||||
url:url,
|
||||
filePath: newPath,
|
||||
success: function (res) {
|
||||
//const filePath = res.tempFilePath
|
||||
wx.openDocument({
|
||||
fileType:"pdf",
|
||||
showMenu:true,
|
||||
filePath: newPath,
|
||||
success: function (res) {
|
||||
console.log('打开文档成功');
|
||||
wx.hideLoading()
|
||||
},
|
||||
fail:function(error){
|
||||
wx.hideLoading()
|
||||
wx.showToast({
|
||||
title:res,
|
||||
icon:"none"
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
fail:function(error){
|
||||
wx.showToast({
|
||||
title:error,
|
||||
icon:"none"
|
||||
})
|
||||
}
|
||||
|
||||
})
|
||||
}),
|
||||
formatImgList(){
|
||||
let diagnose_images = this.data.case_detail.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(){
|
||||
//获取患者问诊病例
|
||||
api.getInquiryDetail({order_inquiry_id: this.data.order_inquiry_id}).then(response => {
|
||||
console.log(response);
|
||||
this.setData({
|
||||
case_detail: response.data
|
||||
})
|
||||
}).then(res => {
|
||||
this.formatImgList();
|
||||
}).catch(errors => {console.error(errors);})
|
||||
},
|
||||
|
||||
})
|
||||
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index",
|
||||
"van-icon": "@vant/weapp/icon/index",
|
||||
"van-uploader": "@vant/weapp/uploader/index"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,114 @@
|
||||
<wxs module="dateSubstr" src="./../../../utils/substr.wxs"></wxs>
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<view class="container">
|
||||
<view class="main_title">基础信息</view>
|
||||
<view class="data_box">
|
||||
<view class="data_box_top">
|
||||
<view class="name">{{case_detail.name}}</view>
|
||||
<view class="sex">{{case_detail.sex==1?'男':case_detail.sex==2?'女':'未知'}}|{{case_detail.age}}岁 </view>
|
||||
</view>
|
||||
<view class="info">
|
||||
<view class="height info_item"><text class="info_title">身高:</text><text class="info_val">{{case_detail.height==null?'未知':case_detail.height + 'CM'}}</text></view>
|
||||
<view class="weight info_item"><text class="info_title">体重:</text><text class="info_val">{{case_detail.weight==null?'未知':case_detail.weight + 'KG'}}</text></view>
|
||||
<view class="minzu info_item"><text class="info_title">民族:</text><text class="info_val">{{case_detail.nation_name==''?'未知':case_detail.nation_name}}</text></view>
|
||||
<view class="zhiye info_item"><text class="info_title">职业:</text><text class="info_val">{{case_detail.job_name==''?'未知':case_detail.job_name}}</text></view>
|
||||
<view class="hunyin info_item"><text class="info_title">婚姻:</text><text class="info_val">{{case_detail.marital_status==0?'未婚':case_detail.marital_status==1?'已婚':case_detail.marital_status==2?'离异':'未知'}}</text></view>
|
||||
</view>
|
||||
<view class="disease_box">
|
||||
<view class="disease_box_item" wx:if="{{case_detail.disease_class_name}}">
|
||||
<view class="title">所患疾病:</view>
|
||||
<view class="conent">{{case_detail.disease_class_name}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.diagnosis_date}}">
|
||||
<view class="title">确诊日期:</view>
|
||||
<view class="conent" >{{dateSubstr.substring(case_detail.diagnosis_date,0,10)}}</view>
|
||||
</view>
|
||||
<!-- <view class="disease_box_item">
|
||||
<view class="title">医生诊断:</view>
|
||||
<view class="conent">{{case_detail.disease_class_name}}</view>
|
||||
</view> -->
|
||||
<view class="disease_box_item" wx:if="{{case_detail.diagnosis_hospital != '' && case_detail.diagnosis_hospital != null}}">
|
||||
<view class="title">确诊医院:</view>
|
||||
<view class="conent">{{case_detail.diagnosis_hospital}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.drugs_name != '' && case_detail.drugs_name != null}}">
|
||||
<view class="title">正在服用的药品信息:</view>
|
||||
<view class="conent">{{case_detail.drugs_name==''?'无':''}}</view>
|
||||
</view>
|
||||
<view class="disease_info" wx:if="{{case_detail.drugs_name != '' && case_detail.drugs_name != null}}">
|
||||
详细描述:{{case_detail.drugs_name}}
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.disease_desc}}">
|
||||
<view class="title">病情描述:</view>
|
||||
<view class="conent">{{case_detail.disease_desc}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.product.length > 0}}">
|
||||
<view class="title">用药意向:</view>
|
||||
<view class="conent">
|
||||
<view wx:for="{{case_detail.product}}">{{item}};</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.diagnose_images.length > 0}}">
|
||||
<view class="title">复诊凭证(病例/处方单/检查报告/住院单):</view>
|
||||
<view class="conent" wx:if="{{case_detail.diagnose_images.length == 0}}">无</view>
|
||||
</view>
|
||||
<view class="img_box" >
|
||||
<van-uploader image-fit="aspectFit" file-list="{{ imglist }}" show-upload="{{false}}" deletable="{{false}}" />
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
<view class="sugarbox" wx:if="{{case_detail.detection_project}}" data-url="{{case_detail.detection_project.detection_link}}" bindtap="goReport">
|
||||
<view class="main_title">{{case_detail.detection_project_name}}</view>
|
||||
<view class="data_box sugar" >
|
||||
<view class="sugar_left">
|
||||
<view class="name">糖组检测</view>
|
||||
<view class="date">{{case_detail.detection_project.detection_time}}</view>
|
||||
</view>
|
||||
<van-icon name="arrow" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="main_title" wx:if="{{!(case_detail.is_taboo == null && case_detail.is_allergy_history == null && case_detail.is_family_history == null && case_detail.is_pregnant == null && case_detail.drink_wine_status == null && case_detail.smoke_status == null && case_detail.is_operation == null && case_detail.chemical_compound_status == null && case_detail.chemical_compound_status == null)}}">其他信息</view>
|
||||
<view class="data_box orther" wx:if="{{!(case_detail.is_taboo == null && case_detail.is_allergy_history == null && case_detail.is_family_history == null && case_detail.is_pregnant == null && case_detail.drink_wine_status == null && case_detail.smoke_status == null && case_detail.is_operation == null && case_detail.chemical_compound_status == null && case_detail.chemical_compound_status == null)}}">
|
||||
<view class="disease_box">
|
||||
<view class="disease_box_item" wx:if="{{case_detail.is_taboo != null}}">
|
||||
<view class="title">是否服用过您想购买的药品且无相关禁忌:</view>
|
||||
<view class="conent">{{case_detail.is_taboo==0?'否':'是'}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.is_allergy_history != null}}">
|
||||
<view class="title">过敏史:</view>
|
||||
<view class="conent">{{case_detail.is_allergy_history==0?'否':case_detail.allergy_history}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{ case_detail.is_family_history != null}}">
|
||||
<view class="title">家族史:</view>
|
||||
<view class="conent">{{case_detail.is_family_history==0?'否':case_detail.family_history}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.is_pregnant != null}}">
|
||||
<view class="title">是否备孕、妊娠或者哺乳期:</view>
|
||||
<view class="conent">{{case_detail.is_pregnant==0?'否':case_detail.pregnant}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{ case_detail.drink_wine_status != null}}">
|
||||
<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>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.smoke_status != null}}">
|
||||
<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>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.is_operation != null}}">
|
||||
<view class="title">手术史:</view>
|
||||
<view class="conent">{{case_detail.is_operation==0?'否':case_detail.operation}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{ case_detail.chemical_compound_status != null}}">
|
||||
<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>
|
||||
<view class="disease_info" wx:if="{{case_detail.chemical_compound_describe != '' && case_detail.chemical_compound_describe != null}}">
|
||||
详细描述:{{case_detail.chemical_compound_describe}}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view style="height: 50rpx;">
|
||||
|
||||
</view>
|
||||
</view>
|
||||
@@ -0,0 +1,127 @@
|
||||
page{
|
||||
background-color: #F6F6F6;
|
||||
}
|
||||
.container{
|
||||
/* width: 100vw; */
|
||||
padding: 0 4vw;
|
||||
}
|
||||
.main_title{
|
||||
font-size: 16px;
|
||||
color: #000000;
|
||||
margin: 30rpx 0;
|
||||
}
|
||||
.data_box{
|
||||
margin-top: 20rpx;
|
||||
width: calc(92vw - 40rpx);
|
||||
background-color: #fff;
|
||||
border-radius: 20rpx;
|
||||
padding: 20rpx;
|
||||
}
|
||||
.data_box_top{
|
||||
display: flex;
|
||||
}
|
||||
.name{
|
||||
font-size: 34rpx;
|
||||
color: #3CC7C0;
|
||||
margin-right: 20rpx;
|
||||
}
|
||||
.sex{
|
||||
font-size: 34rpx;
|
||||
color: #666666;
|
||||
}
|
||||
.info{
|
||||
background: #FAFAFA;
|
||||
border-radius: 10rpx;
|
||||
padding-top: 10rpx;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
margin: 20rpx 0 0;
|
||||
padding-bottom: 20rpx;
|
||||
}
|
||||
.info_item{
|
||||
text-align: left;
|
||||
/* width: 190rpx; */
|
||||
/* height: 60rpx; */
|
||||
margin-top: 10rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-left: 20rpx;
|
||||
align-items: flex-start;
|
||||
}
|
||||
.info_title{
|
||||
font-size: 28rpx;
|
||||
color: #333333;
|
||||
}
|
||||
.info_val{
|
||||
font-size: 28rpx;
|
||||
flex: 1;
|
||||
color: #666666;
|
||||
}
|
||||
.disease_box{
|
||||
|
||||
}
|
||||
.disease_box_item{
|
||||
margin-bottom: 30rpx;
|
||||
display: flex;
|
||||
}
|
||||
.data_box .disease_box_item:first-child{
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
.orther .disease_box_item:first-child{
|
||||
margin-top: 0rpx;
|
||||
}
|
||||
.title{
|
||||
font-size: 30rpx;
|
||||
color: #333333;
|
||||
}
|
||||
.conent{
|
||||
flex: 1;
|
||||
font-size: 28rpx;
|
||||
color: #666666;
|
||||
word-wrap:break-word;
|
||||
word-break:break-all;
|
||||
}
|
||||
.disease_info{
|
||||
background: #FAFAFA;
|
||||
border-radius: 10rpx;
|
||||
padding: 10rpx;
|
||||
font-size: 26rpx;
|
||||
color: #999999;
|
||||
margin-bottom: 20rpx;
|
||||
}
|
||||
.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{
|
||||
margin-bottom: 50rpx;
|
||||
}
|
||||
|
||||
.sugar{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content:space-between ;
|
||||
}
|
||||
.sugar .name{
|
||||
color:#333;
|
||||
|
||||
font-size: 30rpx;
|
||||
}
|
||||
.sugar .date{
|
||||
margin-top: 12rpx;
|
||||
font-size: 24rpx;
|
||||
font-weight: 400;
|
||||
color: rgba(0,0,0,0.45);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,108 @@
|
||||
import { API } from '../../../../utils/network/api'
|
||||
import debounce from '../../../../utils/debounce'
|
||||
let api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '病历信息', //导航栏 中间的标题
|
||||
},
|
||||
pathography_id:'',
|
||||
height: app.globalData.height,
|
||||
order_inquiry_id:"",
|
||||
case_detail: {},
|
||||
imglist: []
|
||||
},
|
||||
onLoad(options){
|
||||
console.log("onLoad", options)
|
||||
|
||||
if(options.order_inquiry_id){
|
||||
this.setData({
|
||||
order_inquiry_id: options.order_inquiry_id
|
||||
})
|
||||
|
||||
//获取患者问诊病例
|
||||
api.getInquiryDetail({order_inquiry_id: this.data.order_inquiry_id}).then(response => {
|
||||
console.log(response);
|
||||
this.setData({
|
||||
case_detail: response.data
|
||||
})
|
||||
}).then(res => {
|
||||
this.formatImgList();
|
||||
}).catch(errors => {console.error(errors);})
|
||||
}
|
||||
if(options.pathography_id){
|
||||
this.setData({
|
||||
pathography_id: options.pathography_id
|
||||
})
|
||||
//获取患者问诊病例
|
||||
api.getPathographyDetail(options.pathography_id).then(response => {
|
||||
this.setData({
|
||||
case_detail: response.data
|
||||
})
|
||||
}).then(res => {
|
||||
this.formatImgList();
|
||||
}).catch(errors => {console.error(errors);})
|
||||
}
|
||||
|
||||
|
||||
},
|
||||
goReport:debounce(function(event){
|
||||
wx.showLoading({
|
||||
mask:true,
|
||||
title: '正在打开文件...',
|
||||
})
|
||||
const url=event.currentTarget.dataset.url;
|
||||
const randfile = new Date().getTime() + '检测报告';
|
||||
const newPath = `${wx.env.USER_DATA_PATH}/${randfile}`;
|
||||
wx.downloadFile({
|
||||
// 示例 url,并非真实存在
|
||||
url:url,
|
||||
filePath: newPath,
|
||||
success: function (res) {
|
||||
//const filePath = res.tempFilePath
|
||||
wx.openDocument({
|
||||
fileType:"pdf",
|
||||
showMenu:true,
|
||||
filePath: newPath,
|
||||
success: function (res) {
|
||||
console.log('打开文档成功');
|
||||
wx.hideLoading()
|
||||
},
|
||||
fail:function(error){
|
||||
wx.hideLoading()
|
||||
wx.showToast({
|
||||
title:res,
|
||||
icon:"none"
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
fail:function(error){
|
||||
wx.showToast({
|
||||
title:error,
|
||||
icon:"none"
|
||||
})
|
||||
}
|
||||
|
||||
})
|
||||
}),
|
||||
formatImgList(){
|
||||
let diagnose_images = this.data.case_detail.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(){
|
||||
|
||||
},
|
||||
|
||||
})
|
||||
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index",
|
||||
"van-icon": "@vant/weapp/icon/index",
|
||||
"van-uploader": "@vant/weapp/uploader/index"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,139 @@
|
||||
<wxs module="dateSubstr" src="../../../../utils/substr.wxs"></wxs>
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<view class="container">
|
||||
|
||||
<view class="main_title">基础信息</view>
|
||||
<view class="data_box">
|
||||
<view class="data_box_top">
|
||||
<view class="name">{{case_detail.name}}</view>
|
||||
<view class="sex">{{case_detail.sex==1?'男':case_detail.sex==2?'女':'未知'}}|{{case_detail.age}}岁 </view>
|
||||
</view>
|
||||
<view class="info">
|
||||
<view class="height info_item"><text class="info_title">身高:</text><text class="info_val">{{case_detail.height==null?'未知':case_detail.height + 'CM'}}</text></view>
|
||||
<view class="weight info_item"><text class="info_title">体重:</text><text class="info_val">{{case_detail.weight==null?'未知':case_detail.weight + 'KG'}}</text></view>
|
||||
<view class="minzu info_item"><text class="info_title">民族:</text><text class="info_val">{{case_detail.nation_name?case_detail.nation_name:'未知'}}</text></view>
|
||||
<view class="zhiye info_item"><text class="info_title">职业:</text><text class="info_val">{{case_detail.job_name?case_detail.job_name:'未知'}}</text></view>
|
||||
<view class="hunyin info_item"><text class="info_title">婚姻:</text><text class="info_val">{{case_detail.marital_status==0?'未婚':case_detail.marital_status==1?'已婚':case_detail.marital_status==2?'离异':'未知'}}</text></view>
|
||||
</view>
|
||||
<view class="disease_box">
|
||||
<view class="disease_box_item" wx:if="{{case_detail.disease_class_name}}">
|
||||
<view class="title">所患疾病:</view>
|
||||
<view class="conent">{{case_detail.disease_class_name}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.diagnosis_date}}">
|
||||
<view class="title">确诊日期:</view>
|
||||
<view class="conent" >{{dateSubstr.substring(case_detail.diagnosis_date,0,10)}}</view>
|
||||
</view>
|
||||
<!-- <view class="disease_box_item">
|
||||
<view class="title">医生诊断:</view>
|
||||
<view class="conent">{{case_detail.disease_class_name}}</view>
|
||||
</view> -->
|
||||
<view class="disease_box_item" wx:if="{{case_detail.diagnosis_hospital != '' && case_detail.diagnosis_hospital != null}}">
|
||||
<view class="title">确诊医院:</view>
|
||||
<view class="conent">{{case_detail.diagnosis_hospital}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.drugs_name != '' && case_detail.drugs_name != null}}">
|
||||
<view class="title">正在服用的药品信息:</view>
|
||||
<view class="conent">{{case_detail.drugs_name==''?'无':''}}</view>
|
||||
</view>
|
||||
<view class="disease_info" wx:if="{{case_detail.drugs_name != '' && case_detail.drugs_name != null}}">
|
||||
详细描述:{{case_detail.drugs_name}}
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.disease_desc}}">
|
||||
<view class="title">病情描述:</view>
|
||||
<view class="conent">{{case_detail.disease_desc}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.product.length > 0}}">
|
||||
<view class="title">用药意向:</view>
|
||||
<view class="conent">
|
||||
<view wx:for="{{case_detail.product}}">{{item}};</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.diagnose_images.length > 0}}">
|
||||
<view class="title">复诊凭证(病例/处方单/检查报告/住院单):</view>
|
||||
<view class="conent" wx:if="{{case_detail.diagnose_images.length == 0}}">无</view>
|
||||
</view>
|
||||
<view class="img_box" >
|
||||
<van-uploader image-fit="aspectFit" file-list="{{ imglist }}" show-upload="{{false}}" deletable="{{false}}" />
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
<view class="sugarbox" wx:if="{{case_detail.detection_project}}" data-url="{{case_detail.detection_project.detection_link}}" bindtap="goReport">
|
||||
<view class="main_title">{{case_detail.detection_project_name}}</view>
|
||||
<view class="data_box sugar" >
|
||||
<view class="sugar_left">
|
||||
<view class="name">糖组检测</view>
|
||||
<view class="date">{{case_detail.detection_project.detection_time}}</view>
|
||||
</view>
|
||||
<van-icon name="arrow" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="main_title" wx:if="{{!(case_detail.is_taboo == null && case_detail.is_allergy_history == null && case_detail.is_family_history == null && case_detail.is_pregnant == null && case_detail.drink_wine_status == null && case_detail.smoke_status == null && case_detail.is_operation == null && case_detail.chemical_compound_status == null && case_detail.chemical_compound_status == null)}}">其他信息</view>
|
||||
<view class="data_box orther" wx:if="{{!(case_detail.is_taboo == null && case_detail.is_allergy_history == null && case_detail.is_family_history == null && case_detail.is_pregnant == null && case_detail.drink_wine_status == null && case_detail.smoke_status == null && case_detail.is_operation == null && case_detail.chemical_compound_status == null && case_detail.chemical_compound_status == null)}}">
|
||||
<view class="disease_box">
|
||||
<view class="disease_box_item" wx:if="{{case_detail.is_taboo != null}}">
|
||||
<view class="title">是否服用过您想购买的药品且无相关禁忌:</view>
|
||||
<view class="conent">{{case_detail.is_taboo==0?'否':'是'}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.is_allergy_history != null}}">
|
||||
<view class="title">过敏史:</view>
|
||||
<view class="conent">{{case_detail.is_allergy_history==0?'否':case_detail.allergy_history}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{ case_detail.is_family_history != null}}">
|
||||
<view class="title">家族史:</view>
|
||||
<view class="conent">{{case_detail.is_family_history==0?'否':case_detail.family_history}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.is_pregnant != null}}">
|
||||
<view class="title">是否备孕、妊娠或者哺乳期:</view>
|
||||
<view class="conent">{{case_detail.is_pregnant==0?'否':case_detail.pregnant}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{ case_detail.drink_wine_status != null}}">
|
||||
<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>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.smoke_status != null}}">
|
||||
<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>
|
||||
<view class="disease_box_item" wx:if="{{case_detail.is_operation != null}}">
|
||||
<view class="title">手术史:</view>
|
||||
<view class="conent">{{case_detail.is_operation==0?'否':case_detail.operation}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" wx:if="{{ case_detail.chemical_compound_status != null}}">
|
||||
<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>
|
||||
<view class="disease_info" wx:if="{{case_detail.chemical_compound_describe != '' && case_detail.chemical_compound_describe != null}}">
|
||||
详细描述:{{case_detail.chemical_compound_describe}}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view wx:if="{{case_detail.order_prescription}}">
|
||||
<view class="main_title">处方信息</view>
|
||||
<view class="data_box">
|
||||
<view class="disease_box">
|
||||
<view class="disease_box_item" >
|
||||
<view class="title">诊断:</view>
|
||||
<view class="conent">{{case_detail.order_prescription.icd_name}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" >
|
||||
<view class="title">时间:</view>
|
||||
<view class="conent">{{case_detail.order_prescription.doctor_created_time}}</view>
|
||||
</view>
|
||||
<view class="disease_box_item" >
|
||||
<view class="title">药品:</view>
|
||||
<view class="conent" wx:for="{{case_detail.order_prescription.product}}" wx:for-item="itemName">
|
||||
{{itemName.product_name}};
|
||||
</view>
|
||||
</view>
|
||||
<view class="disease_box_item" >
|
||||
<view class="title">用法:</view>
|
||||
<view class="conent">{{case_detail.order_prescription.doctor_advice}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
@@ -0,0 +1,134 @@
|
||||
page{
|
||||
background-color: #F6F6F6;
|
||||
}
|
||||
.container{
|
||||
/* width: 100vw; */
|
||||
padding: 0 4vw;
|
||||
}
|
||||
.main_title{
|
||||
font-size: 16px;
|
||||
color: #000000;
|
||||
margin: 30rpx 0;
|
||||
}
|
||||
.data_box{
|
||||
margin-top: 20rpx;
|
||||
width: calc(92vw - 40rpx);
|
||||
background-color: #fff;
|
||||
border-radius: 20rpx;
|
||||
padding: 20rpx;
|
||||
}
|
||||
.data_box_top{
|
||||
display: flex;
|
||||
}
|
||||
.name{
|
||||
font-size: 34rpx;
|
||||
color: #3CC7C0;
|
||||
margin-right: 20rpx;
|
||||
}
|
||||
.sex{
|
||||
font-size: 34rpx;
|
||||
color: #666666;
|
||||
}
|
||||
.info{
|
||||
|
||||
background: #FAFAFA;
|
||||
border-radius: 10rpx;
|
||||
|
||||
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
margin: 20rpx 0 0;
|
||||
padding:10rpx 20rpx 20rpx;
|
||||
}
|
||||
.info_item{
|
||||
text-align: left;
|
||||
width: 33.3%;
|
||||
margin-right: -1rpx;
|
||||
/* height: 60rpx; */
|
||||
margin-top: 10rpx;
|
||||
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
align-items: flex-start;
|
||||
}
|
||||
.info_item:nth-child(3n){
|
||||
margin-right: 0rpx;
|
||||
}
|
||||
.info_title{
|
||||
font-size: 28rpx;
|
||||
color: #333333;
|
||||
}
|
||||
.info_val{
|
||||
font-size: 28rpx;
|
||||
flex: 1;
|
||||
color: #666666;
|
||||
}
|
||||
.disease_box{
|
||||
|
||||
}
|
||||
.disease_box_item{
|
||||
margin-bottom: 30rpx;
|
||||
display: flex;
|
||||
}
|
||||
.data_box .disease_box_item:first-child{
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
.orther .disease_box_item:first-child{
|
||||
margin-top: 0rpx;
|
||||
}
|
||||
.title{
|
||||
font-size: 30rpx;
|
||||
color: #333333;
|
||||
}
|
||||
.conent{
|
||||
flex: 1;
|
||||
font-size: 28rpx;
|
||||
color: #666666;
|
||||
word-wrap:break-word;
|
||||
word-break:break-all;
|
||||
}
|
||||
.disease_info{
|
||||
background: #FAFAFA;
|
||||
border-radius: 10rpx;
|
||||
padding: 10rpx;
|
||||
font-size: 26rpx;
|
||||
color: #999999;
|
||||
margin-bottom: 20rpx;
|
||||
}
|
||||
.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{
|
||||
margin-bottom: 50rpx;
|
||||
}
|
||||
|
||||
.sugar{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content:space-between ;
|
||||
}
|
||||
.sugar .name{
|
||||
color:#333;
|
||||
|
||||
font-size: 30rpx;
|
||||
}
|
||||
.sugar .date{
|
||||
margin-top: 12rpx;
|
||||
font-size: 24rpx;
|
||||
font-weight: 400;
|
||||
color: rgba(0,0,0,0.45);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,133 @@
|
||||
import { API } from '../../../../utils/network/api'
|
||||
import { requestSubscribeMessage } from '../../../../utils/requestSubscribeUtil';
|
||||
|
||||
const api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '去提现', //导航栏 中间的标题
|
||||
},
|
||||
height: app.globalData.height,
|
||||
bank_card_id: "",
|
||||
static_host: api.getStaticHost(),
|
||||
bank_icon_path: api.getStaticHost()+"/applet/doctor/static/images/yishi/bankcard/js_icon.png",
|
||||
bank_card_name: "默认姓名",
|
||||
bank_name : "xx银行",
|
||||
bank_card_code_mask: "888 xxxx xxxx 888",
|
||||
withdrawal_amount: "xxxx",
|
||||
amount_total:'',
|
||||
income_tax: "xx",
|
||||
contactKeFu: false,
|
||||
sub_visible: false,
|
||||
skeleton_loading: true,
|
||||
order_inquiry_ids: [],
|
||||
sub_btn_disabled: false
|
||||
},
|
||||
onLoad(option){
|
||||
let order_inquiry_ids = option.order_inquiry_ids;
|
||||
let params = {};
|
||||
if(order_inquiry_ids){
|
||||
params.order_inquiry_ids = order_inquiry_ids;
|
||||
this.setData({
|
||||
"navbarData.back_url": "/Pages/yishi/my/index",
|
||||
"navbarData.back_url_type": 1,
|
||||
})
|
||||
}
|
||||
this.postDoctorWithdrawalInfo(params);
|
||||
},
|
||||
onShow(){
|
||||
this.setData({
|
||||
sub_btn_disabled: false
|
||||
})
|
||||
},
|
||||
go(e){
|
||||
let url = e.currentTarget.dataset.url;
|
||||
app.go(url);
|
||||
},
|
||||
contactKeFu(e){
|
||||
console.log("concatKeFu");
|
||||
let tmplIds = ['JMPmlYGh1HcUSuEfJCVQUIsZv4H5ar3QvXZfrNYNFuc']
|
||||
let sub_promise = requestSubscribeMessage(tmplIds)
|
||||
sub_promise.then(res => {
|
||||
console.log("订阅成功")
|
||||
this.setData({
|
||||
contactKeFu: true
|
||||
})
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
let errCode = err.errCode
|
||||
if(errCode == 20004){
|
||||
this.setData({
|
||||
sub_visible: true,
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
subcancelDialog(){
|
||||
this.setData({
|
||||
sub_visible: false
|
||||
})
|
||||
},
|
||||
subconfirmDialog(){
|
||||
this.setData({
|
||||
sub_visible: false
|
||||
})
|
||||
wx.openSetting({
|
||||
success (res) {
|
||||
console.log(res.authSetting)
|
||||
}
|
||||
})
|
||||
},
|
||||
postDoctorWithdrawalInfo(params){
|
||||
|
||||
//获取提现数据
|
||||
api.postDoctorWithdrawalInfo(params).then(response => {
|
||||
console.log(response);
|
||||
if(response.data.bank.bank_card_id){
|
||||
this.setData({
|
||||
bank_card_id: response.data.bank.bank_card_id,
|
||||
bank_icon_path: response.data.bank.bank_icon_path,
|
||||
bank_name : response.data.bank.bank_name,
|
||||
bank_card_code_mask: response.data.bank.bank_card_code_mask,
|
||||
withdrawal_amount: response.data.withdrawal_amount,
|
||||
amount_total:response.data.amount_total,
|
||||
order_inquiry_ids: response.data.order_inquiry_ids,
|
||||
bank_card_name: response.data.bank.bank_card_name_mask,
|
||||
income_tax: response.data.income_tax,
|
||||
skeleton_loading: false
|
||||
})
|
||||
}
|
||||
}).catch(errors => {
|
||||
console.error(errors);
|
||||
|
||||
})
|
||||
},
|
||||
postDoctorWithdrawal(){
|
||||
this.setData({
|
||||
sub_btn_disabled: true
|
||||
})
|
||||
let params = {};
|
||||
params.order_inquiry_id = this.data.order_inquiry_ids.join(",");
|
||||
params.withdrawal_amount_total = this.data.withdrawal_amount;
|
||||
params.bank_card_id = this.data.bank_card_id;
|
||||
//获取提现数据
|
||||
api.postDoctorWithdrawal(params).then(response => {
|
||||
console.log(response);
|
||||
this.setData({
|
||||
withdrawal_amount: 0,
|
||||
income_tax: 0
|
||||
})
|
||||
wx.showToast({
|
||||
title: '提现申请成功',
|
||||
icon: "success"
|
||||
})
|
||||
}).catch(errors => {
|
||||
console.error(errors);
|
||||
this.setData({
|
||||
sub_btn_disabled: false
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index",
|
||||
"van-image": "@vant/weapp/image/index",
|
||||
"van-icon": "@vant/weapp/icon/index",
|
||||
"van-button": "@vant/weapp/button/index",
|
||||
"van-dialog": "@vant/weapp/dialog/index",
|
||||
"t-skeleton": "tdesign-miniprogram/skeleton/skeleton",
|
||||
"t-dialog": "tdesign-miniprogram/dialog/dialog"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,102 @@
|
||||
<!-- 提现页面 -->
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<view class="container">
|
||||
<view class="top">
|
||||
<view class="txt_title">结算银行卡</view>
|
||||
<view class="rule" bindtap="go" data-url="/user/pages/agreement_page/index?agreement_id=12">提现规则<van-icon name="warning-o" color="#FF9800" /></view>
|
||||
</view>
|
||||
<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>
|
||||
<view class="bankcard_info">
|
||||
<view class="bankcard_info_top">{{bank_card_name}}<text style="margin-left: 20rpx; font-size: 28rpx;color: #999999;">{{bank_name}}</text></view>
|
||||
<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" wx:if="{{!skeleton_loading}}">
|
||||
<view class="cash_top">
|
||||
<view class="cash_left">
|
||||
<!-- <view class="cash_left_title">实际到账(元)</view> -->
|
||||
<view class="cash_num">
|
||||
<view>
|
||||
<text style="font-size: 34rpx;">账户余额:¥</text>{{amount_total}}
|
||||
</view>
|
||||
</view>
|
||||
<view class="shui">扣除个人所得税:
|
||||
<text style="color: red;">{{income_tax}}元</text>
|
||||
</view>
|
||||
</view>
|
||||
<!-- <view class="cash_right">
|
||||
<navigator url="/Pages/yishi/wenzhenorderV2/index" open-type="navigate" hover-class="other-navigator-hover">
|
||||
<van-button custom-style="text-align: center;border-radius: 10rpx;padding: 20rpx 50rpx;" color="linear-gradient(310deg, #FF931A 0%, #FF931A 0%, #FCB75D 100%);">
|
||||
查看订单
|
||||
</van-button>
|
||||
</navigator>
|
||||
</view> -->
|
||||
</view>
|
||||
<view class="cash_bottom">
|
||||
<view class="title">
|
||||
实际到账(元)
|
||||
</view>
|
||||
<view class="moneybox">
|
||||
<view class="money"><text class="mark">¥</text><text class="moneyNum">{{withdrawal_amount}}</text></view>
|
||||
<navigator url="/user/pages/yishi/wenzhenorderV2/index" open-type="navigate" hover-class="other-navigator-hover">
|
||||
<van-button custom-style="text-align: center;border-radius: 10rpx;height:70rpx;width:200rpx;" color="linear-gradient(310deg, #FF931A 0%, #FF931A 0%, #FCB75D 100%);">
|
||||
查看订单
|
||||
</van-button>
|
||||
</navigator>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
<view class="tixian">
|
||||
<navigator url="/user/pages/yishi/cashrecord/index" open-type="navigate" hover-class="other-navigator-hover">
|
||||
提现记录 <van-icon name="arrow" />
|
||||
</navigator>
|
||||
</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>
|
||||
说明:1、每月只可提取一次,提现金额大于300元才可提现,限额1万元;
|
||||
2、平台会在24小时内自动结算至您绑定的银行卡内,请注意查收银行信息;
|
||||
3、平台代扣个人所得税,根据公式:
|
||||
</text>
|
||||
</view> -->
|
||||
|
||||
<view class="bottom">
|
||||
<van-button bind:click="postDoctorWithdrawal" disabled="{{order_inquiry_ids.length == 0 || sub_btn_disabled || withdrawal_amount == 0}}" custom-style="border-radius: 10rpx;font-size: 30rpx;" block color="#3CC7C0">提取</van-button>
|
||||
<view class="kefu" bindtap="contactKeFu">
|
||||
<text>联系客服</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<van-dialog
|
||||
title="立即联系客服"
|
||||
show="{{ contactKeFu }}"
|
||||
show-cancel-button
|
||||
confirm-button-color="#3CC7C0"
|
||||
confirm-button-open-type="contact"
|
||||
/>
|
||||
|
||||
<t-dialog
|
||||
visible="{{ sub_visible }}"
|
||||
title="温馨提示"
|
||||
content="您已关闭订阅消息通知,请点击“确认”按钮在设置中打开订阅通知。"
|
||||
>
|
||||
<view slot="cancel-btn" class="dialog dialog_cancel_btn" bindtap="subcancelDialog">
|
||||
取消
|
||||
</view>
|
||||
<view slot="confirm-btn" class="dialog dialog_confirm_btn" bindtap="subconfirmDialog">
|
||||
确定
|
||||
</view>
|
||||
</t-dialog>
|
||||
|
||||
</view>
|
||||
@@ -0,0 +1,192 @@
|
||||
page{
|
||||
background-color: #F4F4F4;
|
||||
}
|
||||
.container{
|
||||
margin-top: 20rpx;
|
||||
width: 100vw;
|
||||
}
|
||||
.top{
|
||||
display: flex;
|
||||
width: 92vw;
|
||||
margin: 0 auto 20rpx auto;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.txt_title{
|
||||
font-size: 36rpx;
|
||||
}
|
||||
.rule{
|
||||
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;
|
||||
background-color: #fff;
|
||||
border-radius: 20rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
padding: 20rpx 0;
|
||||
}
|
||||
.bankcard_icon{
|
||||
flex: 2;
|
||||
text-align: center;
|
||||
height: 70%;
|
||||
align-self: start;
|
||||
}
|
||||
.bankcard_info{
|
||||
flex: 10;
|
||||
height: 70%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
.bankcard_info_top{
|
||||
font-size: 32rpx;
|
||||
color: #333333;
|
||||
}
|
||||
.bankcard_info_bottom{
|
||||
font-size: 28rpx;
|
||||
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;
|
||||
|
||||
margin: 20rpx auto;
|
||||
background-color: #fff;
|
||||
border-radius: 20rpx;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
.cash_top{
|
||||
margin-top:30rpx;
|
||||
display: flex;
|
||||
flex: 3;
|
||||
}
|
||||
.cash_bottom{
|
||||
padding:20rpx 20rpx 30rpx;
|
||||
border-top: 1px solid #E5E5E5;
|
||||
|
||||
font-size: 32rpx;
|
||||
display: flex;
|
||||
|
||||
flex-direction: column;
|
||||
padding-right: 20rpx;
|
||||
}
|
||||
.cash_bottom .title{
|
||||
margin-top: 10rpx;
|
||||
font-size: 30rpx;
|
||||
|
||||
color: #000000;
|
||||
}
|
||||
.cash_left{
|
||||
flex: 3;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
padding-left: 20rpx;
|
||||
}
|
||||
.cash_left_title{
|
||||
flex: 1;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 30rpx;
|
||||
}
|
||||
.cash_num{
|
||||
flex: 2;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 34rpx;
|
||||
}
|
||||
.shui{
|
||||
flex: 1;
|
||||
margin-top: 20rpx;
|
||||
margin-bottom: 30rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 28rpx;
|
||||
color: #666666;
|
||||
}
|
||||
.cash_right{
|
||||
flex: 2;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.note{
|
||||
font-size: 28rpx;
|
||||
color: #666666;
|
||||
width: 92vw;
|
||||
margin: -50rpx auto;
|
||||
line-height: 50rpx;
|
||||
}
|
||||
.bottom{
|
||||
width: 92vw;
|
||||
position: fixed;
|
||||
bottom: 50rpx;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
text-align: center;
|
||||
|
||||
}
|
||||
.kefu{
|
||||
color: #3CC7C0;
|
||||
margin: 30rpx;
|
||||
}
|
||||
.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;
|
||||
}
|
||||
|
||||
.moneybox{
|
||||
display: flex;
|
||||
}
|
||||
.moneybox{
|
||||
display: flex;
|
||||
margin-top: 20rpx;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.money .mark{
|
||||
font-size: 42rpx;
|
||||
font-weight: 400;
|
||||
color: #333333;
|
||||
}
|
||||
.moneyNum{
|
||||
font-size: 64rpx;
|
||||
font-family: ArialMT;
|
||||
color: #333333;
|
||||
}
|
||||
.tixian{
|
||||
display: flex;
|
||||
margin:0 30rpx;
|
||||
color: #3CC7C0;
|
||||
font-size: 32rpx;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
import { API } from '../../../../utils/network/api'
|
||||
|
||||
const api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '提现记录', //导航栏 中间的标题
|
||||
},
|
||||
height: app.globalData.height,
|
||||
record_list: [],
|
||||
current_page: 0,
|
||||
total: 0,
|
||||
per_page: 0,
|
||||
last_page: 0,
|
||||
dateVisible: false,
|
||||
select_date: '',
|
||||
years: [],
|
||||
static_host: api.getStaticHost()
|
||||
},
|
||||
onLoad(){
|
||||
let now_year = (new Date()).Format("yyyy");
|
||||
let begin_year = 2023;
|
||||
let years = [];
|
||||
for(let i=begin_year;i<=now_year;i++){
|
||||
years.push({label: i+"年", value: i+""})
|
||||
}
|
||||
this.setData({
|
||||
years: years,
|
||||
select_date: now_year+""
|
||||
})
|
||||
},
|
||||
onShow(){
|
||||
let year = this.data.select_date;
|
||||
year = Number(year);
|
||||
this.getDoctorWithdrawalRecord(year);
|
||||
},
|
||||
getDoctorWithdrawalRecord(year){
|
||||
this.setData({
|
||||
record_list: []
|
||||
})
|
||||
//获取提现数据
|
||||
api.getDoctorWithdrawalRecord({year: year}).then(response => {
|
||||
console.log(response);
|
||||
if(response.data.total > 0){
|
||||
this.setData({
|
||||
record_list: 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); })
|
||||
},
|
||||
onDatePicker() {
|
||||
this.setData({ dateVisible: true });
|
||||
},
|
||||
onPickerChange(e) {
|
||||
const { key } = e.currentTarget.dataset;
|
||||
const { value } = e.detail;
|
||||
console.log('picker change:', e.detail);
|
||||
this.setData({
|
||||
select_date: value
|
||||
})
|
||||
let year = this.data.select_date;
|
||||
year = Number(year);
|
||||
this.getDoctorWithdrawalRecord(year);
|
||||
},
|
||||
onColumnChange(e) {
|
||||
const { key } = e.currentTarget.dataset;
|
||||
const { value } = e.detail;
|
||||
console.log('Column change:', e.detail);
|
||||
},
|
||||
onPickerCancel(e) {
|
||||
const { key } = e.currentTarget.dataset;
|
||||
const { value } = e.detail;
|
||||
console.log('picker Cancel:', e.detail);
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index",
|
||||
"van-icon": "@vant/weapp/icon/index",
|
||||
"van-empty": "@vant/weapp/empty/index",
|
||||
"van-image": "@vant/weapp/image/index",
|
||||
"t-picker": "tdesign-miniprogram/picker/picker",
|
||||
"t-picker-item": "tdesign-miniprogram/picker-item/picker-item"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
<!-- 提现记录 -->
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<wxs src="../../../../filters/filter.wxs" module="moduleFilter"></wxs>
|
||||
<view class="container">
|
||||
<view class="top">
|
||||
<view class="top_txt" bindtap="onDatePicker">
|
||||
<view class="month">{{select_date}}年<van-icon name="arrow-down" color="#fff" size="40rpx" /></view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="data_list">
|
||||
|
||||
<view class="data_item" wx:for="{{record_list}}">
|
||||
<view class="data_item_top">
|
||||
|
||||
<view class="data_item_top_content">
|
||||
<view class="namebox">
|
||||
<view class="data_item_top_icon">
|
||||
<van-image custom-style="" src="{{static_host}}/applet/doctor/static/images/yishi/bankcard/js_icon.png" fit="heightFix" height="50rpx" aria-label="role" />
|
||||
</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>
|
||||
<view class="status_box">
|
||||
<!-- 审核状态(1:审核中 2:审核通过 3:审核未通过) -->
|
||||
<view class="status {{item.examine_status==1?'paying':item.examine_status==2?'paysuccess':item.examine_status==3?'payfail':''}}">{{item.examine_status==1?'结算中':item.examine_status==2?'结算成功':item.examine_status==3?'结算失败':'未知'}}</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view class="data_item_top_num">
|
||||
<view class="date">{{moduleFilter.transforDay(item.created_at,"noyear")}}</view>
|
||||
<view class="jine"><text class="jinename">实际到账金额:</text>¥{{item.actual_withdrawal_amount}}</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
<view class="data_item_bottom">个人所得税:¥{{item.income_tax}}</view>
|
||||
</view>
|
||||
|
||||
<van-empty description="暂无数据" wx:if="{{record_list.length == 0}}" />
|
||||
|
||||
</view>
|
||||
|
||||
<t-picker
|
||||
visible="{{dateVisible}}"
|
||||
value="{{[select_date]}}"
|
||||
data-key="date"
|
||||
title="选择年份"
|
||||
cancelBtn="取消"
|
||||
confirmBtn="确认"
|
||||
bindchange="onPickerChange"
|
||||
bindpick="onColumnChange"
|
||||
bindcancel="onPickerCancel"
|
||||
>
|
||||
<t-picker-item options="{{years}}" />
|
||||
</t-picker>
|
||||
|
||||
</view>
|
||||
@@ -0,0 +1,122 @@
|
||||
page{
|
||||
background-color: #F4F4F4;
|
||||
}
|
||||
.container{
|
||||
width: 100vw;
|
||||
}
|
||||
.top{
|
||||
width: 92vw;
|
||||
margin: 20rpx auto 0 auto;
|
||||
background-color: #3CC7C0;
|
||||
height: 150rpx;
|
||||
border-radius: 20rpx;
|
||||
color: #ffffff;
|
||||
}
|
||||
.top_txt{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
height: 110rpx;
|
||||
padding-left: 20rpx;
|
||||
}
|
||||
.data_list{
|
||||
width: 92vw;
|
||||
margin: -40rpx auto 0 auto;
|
||||
}
|
||||
.data_item{
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
margin-bottom: 20rpx;
|
||||
background-color: #ffffff;
|
||||
border-radius: 20rpx;
|
||||
padding: 30rpx 0 0 0;
|
||||
}
|
||||
.data_item_top{
|
||||
margin:0 30rpx;
|
||||
border-bottom: 1px solid #E7E7E7;
|
||||
}
|
||||
.data_item_top_icon{
|
||||
|
||||
text-align: center;
|
||||
|
||||
}
|
||||
.data_item_top_content{
|
||||
|
||||
justify-content: space-between;
|
||||
display: flex;
|
||||
}
|
||||
.name{
|
||||
margin-left: 10rpx;
|
||||
font-size: 32rpx;
|
||||
color: #333333;
|
||||
|
||||
}
|
||||
.date{
|
||||
font-size: 28rpx;
|
||||
display: flex;
|
||||
margin-left: 28rpx;
|
||||
color: #999999;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.data_item_top_num{
|
||||
justify-content: space-between;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin:0 30rpx 25rpx;
|
||||
|
||||
text-align: center;
|
||||
}
|
||||
.jinename{
|
||||
font-size: 30rpx;
|
||||
font-weight: 400;
|
||||
color: #666666;
|
||||
}
|
||||
.namebox{
|
||||
display: flex;
|
||||
}
|
||||
.jine{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: #FF0000;
|
||||
font-size: 34rpx;
|
||||
}
|
||||
.status_box{
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
.status{
|
||||
width: 125rpx;
|
||||
height: 50rpx;
|
||||
background: #FFF2E8;
|
||||
border-radius: 10rpx;
|
||||
margin-bottom: 20rpx;
|
||||
font-size: 24rpx;
|
||||
font-weight: 400;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
.status.paying{
|
||||
background: #FFF2E8;
|
||||
color: #FA541C;
|
||||
}
|
||||
.status.paysuccess{
|
||||
background: #E2FFFE;
|
||||
color: #3CC7C0;
|
||||
}
|
||||
.status.payfail{
|
||||
background-color: #C5C5C5;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
.data_item_bottom{
|
||||
padding:20rpx 30rpx 26rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
margin-right: 20rpx;
|
||||
color: #666;
|
||||
font-size: 28rpx;
|
||||
}
|
||||
.t-picker__confirm{
|
||||
color: #3CC7C0 !important;
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
import { API } from './../../../utils/network/api'
|
||||
const api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
title: '',
|
||||
height: app.globalData.height,
|
||||
order_inquiry_id: "",
|
||||
from:'',
|
||||
baseInfo: {}
|
||||
},
|
||||
onLoad(option) {
|
||||
// console.log("chat onload", option);
|
||||
let order_inquiry_id = option.order_inquiry_id;
|
||||
let from=option.from;
|
||||
this.setData({
|
||||
order_inquiry_id: order_inquiry_id,
|
||||
from:from?from:''
|
||||
})
|
||||
this.getInquiryMessageBasic();
|
||||
},
|
||||
onUnload() {
|
||||
// console.log("chat onUnload");
|
||||
},
|
||||
onShow(){
|
||||
// console.log("chat onShow");
|
||||
// console.log("app.globalData.scene from chat: ", app.globalData.scene);
|
||||
},
|
||||
$onMessageReceived(value) {
|
||||
const message = value.data[0];
|
||||
// console.log("message from chat: ",message)
|
||||
},
|
||||
initChat(){
|
||||
let _this = this;
|
||||
let count = 0;
|
||||
let interval = setInterval(() => {
|
||||
// console.log("chat init count: ", count);
|
||||
// console.log("app.globalData.chat_sdk_ready: ", app.globalData.chat_sdk_ready);
|
||||
if(app.globalData.chat_sdk_ready){
|
||||
const TUIChat = _this.selectComponent('#TUIChat');
|
||||
TUIChat.init();
|
||||
// wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.MESSAGE_RECEIVED, _this.$onMessageReceived, _this);
|
||||
clearInterval(interval);
|
||||
}
|
||||
count = count + 1;
|
||||
if(count > 5){//如果尝试5次不成功就去主动调用IM初始化
|
||||
app.imInit();
|
||||
count = 0;
|
||||
}
|
||||
}, 1000);
|
||||
},
|
||||
//获取问诊订单消息内页基础数据
|
||||
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
|
||||
})
|
||||
let promise=wx.$TUIKit.getUserProfile({
|
||||
userIDList: [response.data.patient_user_id]
|
||||
});
|
||||
promise.then(function(imResponse) {
|
||||
wx.setStorageSync('patient_avatar',imResponse.data[0].avatar);
|
||||
}).catch(function(imError) {
|
||||
console.warn('getUserProfile error:', imError); // 获取其他用户资料失败的相关信息
|
||||
});
|
||||
}).then(res => {
|
||||
this.initChat();
|
||||
}).catch(errors => {console.error(errors);})
|
||||
},
|
||||
})
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"usingComponents": {
|
||||
|
||||
},
|
||||
"navigationStyle": "custom",
|
||||
"disableScroll":true
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
<!-- 一对一聊天 不带会话列表 -->
|
||||
<view>
|
||||
<TUIChat id="TUIChat" currentConversationID="C2C{{baseInfo.patient_user_id}}" inquiry_type="{{baseInfo.inquiry_type}}" order_inquiry_id="{{order_inquiry_id}}" baseInfo="{{baseInfo}}"
|
||||
hasCallKit="{{ true }}" from="{{from}}" bind:handleCall="handleCall"></TUIChat>
|
||||
</view>
|
||||
@@ -0,0 +1,5 @@
|
||||
.container{
|
||||
background-color: #F4F4F4;
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
// index.js
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
title: '患者姓名',
|
||||
height: app.globalData.height,
|
||||
},
|
||||
onLoad() {
|
||||
console.log("onLoad chat_session")
|
||||
},
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
onShow(){
|
||||
let _this = this;
|
||||
let interval = setInterval(() => {
|
||||
if(app.globalData.chat_sdk_ready){
|
||||
const TUIKit = _this.selectComponent('#TUIKit');
|
||||
TUIKit.init();
|
||||
clearInterval(interval);
|
||||
}
|
||||
}, 100);
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"usingComponents": {
|
||||
"TUIKit": "../../../../TUIKit/index"
|
||||
},
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
<!-- 最近回话列表 -->
|
||||
<view>
|
||||
<TUIKit config="{{config}}" id="TUIKit"></TUIKit>
|
||||
</view>
|
||||
@@ -0,0 +1,8 @@
|
||||
.container{
|
||||
background-color: #F4F4F4;
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
}
|
||||
.top{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,119 @@
|
||||
import { API } from '../../../../utils/network/api'
|
||||
const api = new API()
|
||||
const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
navbarData: {
|
||||
showCapsule: 1, //是否显示左上角图标 1表示显示 0表示不显示
|
||||
title: '处方管理', //导航栏 中间的标题
|
||||
},
|
||||
height: app.globalData.height,
|
||||
stickyProps: {
|
||||
offsetTop: app.globalData.height*2 + 20,
|
||||
zIndex: 99
|
||||
},
|
||||
prescription_status: 0,
|
||||
chufang_list_0: [],
|
||||
chufang_list_1: [],
|
||||
chufang_list_2: [],
|
||||
current_page: 0,
|
||||
total: 0,
|
||||
per_page: 0,
|
||||
last_page: 0,
|
||||
|
||||
},
|
||||
onLoad(options){
|
||||
console.log(options.status)
|
||||
if(options.status){
|
||||
this.setData({
|
||||
pharmacist_audit_status:options.status,
|
||||
prescription_status:options.status
|
||||
})
|
||||
}
|
||||
},
|
||||
onShow(){
|
||||
|
||||
this.getList();
|
||||
},
|
||||
onTabsChange(e) {
|
||||
// console.log(e);
|
||||
let list_name = "chufang_list_" + e.detail.value;
|
||||
//console.log(list_name)
|
||||
this.setData({
|
||||
prescription_status: e.detail.value,
|
||||
current_page: 0,
|
||||
last_page: 0,
|
||||
[list_name]: []
|
||||
})
|
||||
this.getList()
|
||||
},
|
||||
|
||||
onTabsClick(event) {
|
||||
console.log(`Click tab, tab-panel value is ${event.detail.value}.`);
|
||||
},
|
||||
|
||||
onStickyScroll(event) {
|
||||
// console.log(event.detail);
|
||||
},
|
||||
onPullDownRefresh(){
|
||||
console.log('===下拉动作===');
|
||||
this.setData({
|
||||
current_page: 0,
|
||||
})
|
||||
this.getList();
|
||||
},
|
||||
onReachBottom() {
|
||||
console.log('===触底了!!===');
|
||||
if(this.data.current_page < this.data.last_page){//最后一页时停止分页
|
||||
this.getList()
|
||||
}
|
||||
},
|
||||
getList(){
|
||||
//获取处方列表
|
||||
let params = {};
|
||||
params.pharmacist_audit_status = this.data.prescription_status;//处方审核状态(0:审核中 2:审核驳回)
|
||||
params.page = this.data.current_page + 1;
|
||||
api.getDoctorPrescription(params).then(response => {
|
||||
//console.log(response);
|
||||
if(response.data.total > 0){
|
||||
let list_name = "chufang_list_" + this.data.prescription_status;
|
||||
//console.log(list_name);
|
||||
let apprise_list = this.data[list_name];
|
||||
this.setData({
|
||||
[list_name]: apprise_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);})
|
||||
},
|
||||
go(e){
|
||||
let url = e.currentTarget.dataset.url;
|
||||
//console.log(url);
|
||||
app.go(url);
|
||||
},
|
||||
handlegetLastInquiry(patient_id,doctor_id,order_inquiry_id){
|
||||
api.getLastInquiry({
|
||||
patient_id:patient_id,
|
||||
doctor_id:doctor_id
|
||||
}).then(data=>{
|
||||
let result=data.data;
|
||||
let url='';
|
||||
if(result){
|
||||
url = "/TUIChatService/pages/index?order_inquiry_id="+result+"&from=prescription";
|
||||
}else{
|
||||
url = "/TUIChatService/pages/index?order_inquiry_id="+order_inquiry_id+"&from=prescription";
|
||||
|
||||
}
|
||||
|
||||
app.go(url);
|
||||
})
|
||||
},
|
||||
gochat(e){
|
||||
let {order_inquiry_id,patient_id,doctor_id} = e.currentTarget.dataset;
|
||||
this.handlegetLastInquiry(patient_id,doctor_id,order_inquiry_id);
|
||||
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"te-nav-bar": "../../../../commpents/te_navbar/index",
|
||||
"t-tabs": "tdesign-miniprogram/tabs/tabs",
|
||||
"t-tab-panel": "tdesign-miniprogram/tab-panel/tab-panel",
|
||||
"van-empty": "@vant/weapp/empty/index"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,162 @@
|
||||
<te-nav-bar navbar-data='{{navbarData}}' ></te-nav-bar>
|
||||
<view class="container">
|
||||
<view class="tabs">
|
||||
<t-tabs
|
||||
value="{{prescription_status}}"
|
||||
bind:change="onTabsChange"
|
||||
bind:click="onTabsClick"
|
||||
bind:scroll="onStickyScroll"
|
||||
t-class="custom-tabs"
|
||||
>
|
||||
|
||||
<t-tab-panel label="审核中" name ="0" value="0" style="overflow: scroll;">
|
||||
<view class="item_list" style="overflow: scroll;">
|
||||
<view class="item" wx:for="{{chufang_list_0}}">
|
||||
|
||||
<!-- 头部 -->
|
||||
<view class="item_top">
|
||||
<view class="namebox">
|
||||
<view class="item_top_name">{{item.patient_name}}</view>
|
||||
<view class="item_top_sex">{{item.patient_sex==1?'男':'女'}} | {{item.patient_age}}岁</view>
|
||||
</view>
|
||||
<view class="item_top_status_box">
|
||||
<!-- 药师审核状态(0:审核中 1:审核成功 2:审核驳回) -->
|
||||
<view class="item_top_status">
|
||||
{{item.pharmacist_audit_status==0?'审核中':item.pharmacist_audit_status==1?'审核成功':'审核驳回'}}
|
||||
</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">{{item.created_at}}</view>
|
||||
</view>
|
||||
<view class="item_content_li">
|
||||
<view class="item_content_li_title">病情描述:</view>
|
||||
<view class="item_content_li_txt">{{item.disease_desc}}</view>
|
||||
</view>
|
||||
<view class="item_content_li" wx:if="{{item.diagnosis_date}}">
|
||||
<view class="item_content_li_title">确诊日期:</view>
|
||||
<view class="item_content_li_txt" >{{item.diagnosis_date}}</view>
|
||||
</view>
|
||||
<view class="item_content_li">
|
||||
<view class="item_content_li_title">病情诊断:</view>
|
||||
<view class="item_content_li_txt">
|
||||
<text wx:for="{{item.order_prescription_icd}}" wx:for-item="icd">{{icd.icd_name}};</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 底部按钮 -->
|
||||
<view class="item_bottom" bindtap="gochat" data-order_inquiry_id="{{item.order_inquiry_id}}" data-doctor_id="{{item.doctor_id}}" data-patient_id="{{item.patient_id}}">
|
||||
<view class="item_bottom_btn" >问诊记录</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<van-empty description="暂无数据" wx:if="{{chufang_list_0.length == 0}}" />
|
||||
</view>
|
||||
</t-tab-panel>
|
||||
<!-- 审核通过面板 -->
|
||||
<t-tab-panel label="审核通过" value="1" name ="1" style="overflow: scroll;">
|
||||
<view class="item_list" style="overflow: scroll;">
|
||||
<view class="item" wx:for="{{chufang_list_1}}">
|
||||
|
||||
<!-- 头部 -->
|
||||
<view class="item_top">
|
||||
<view class="namebox">
|
||||
<view class="item_top_name">{{item.patient_name}}</view>
|
||||
<view class="item_top_sex">{{item.patient_sex==1?'男':'女'}} | {{item.patient_age}}岁</view>
|
||||
</view>
|
||||
<view class="item_top_status_box">
|
||||
<!-- 药师审核状态(0:审核中 1:审核成功 2:审核驳回) -->
|
||||
<view class="item_top_status">
|
||||
{{item.pharmacist_audit_status==0?'审核中':item.pharmacist_audit_status==1?'审核成功':'审核驳回'}}
|
||||
</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">{{item.created_at}}</view>
|
||||
</view>
|
||||
<view class="item_content_li">
|
||||
<view class="item_content_li_title">病情描述:</view>
|
||||
<view class="item_content_li_txt">{{item.disease_desc}}</view>
|
||||
</view>
|
||||
<view class="item_content_li" wx:if="{{item.diagnosis_date}}">
|
||||
<view class="item_content_li_title">确诊日期:</view>
|
||||
<view class="item_content_li_txt">{{item.diagnosis_date}}</view>
|
||||
</view>
|
||||
<view class="item_content_li">
|
||||
<view class="item_content_li_title">病情诊断:</view>
|
||||
<view class="item_content_li_txt">
|
||||
<text wx:for="{{item.order_prescription_icd}}" wx:for-item="icd">{{icd.icd_name}};</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 底部按钮 -->
|
||||
<view class="item_bottom" bindtap="gochat" data-order_inquiry_id="{{item.order_inquiry_id}}" data-doctor_id="{{item.doctor_id}}" data-patient_id="{{item.patient_id}}">
|
||||
<view class="item_bottom_btn">问诊记录</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<van-empty description="暂无数据" wx:if="{{chufang_list_1.length == 0}}" />
|
||||
</view>
|
||||
</t-tab-panel>
|
||||
<!-- 驳回面板 -->
|
||||
<t-tab-panel label="驳回" value="2" name ="2" style="overflow: scroll;">
|
||||
<view class="item_list" style="overflow: scroll;">
|
||||
|
||||
<view class="item" wx:for="{{chufang_list_2}}">
|
||||
<!-- 头部 -->
|
||||
<view class="item_top">
|
||||
<view class="namebox">
|
||||
<view class="item_top_name">{{item.patient_name}}</view>
|
||||
<view class="item_top_sex">{{item.patient_sex==1?'男':'女'}} | {{item.patient_age}}岁</view>
|
||||
</view>
|
||||
<view class="item_top_status_box">
|
||||
<!-- 药师审核状态(0:审核中 1:审核成功 2:审核驳回) -->
|
||||
<view class="item_top_status item_top_status_no">
|
||||
{{item.pharmacist_audit_status==0?'审核中':item.pharmacist_audit_status==1?'审核成功':'驳回'}}
|
||||
</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">{{item.created_at}}</view>
|
||||
</view>
|
||||
<view class="item_content_li">
|
||||
<view class="item_content_li_title">病情描述:</view>
|
||||
<view class="item_content_li_txt">{{item.disease_desc}}</view>
|
||||
</view>
|
||||
<view class="item_content_li" wx:if="{{item.diagnosis_date}}">
|
||||
<view class="item_content_li_title">确诊日期:</view>
|
||||
<view class="item_content_li_txt">{{item.diagnosis_date}}</view>
|
||||
</view>
|
||||
<view class="item_content_li">
|
||||
<view class="item_content_li_title">病情诊断:</view>
|
||||
<view class="item_content_li_txt">{{item.icd_name}}</view>
|
||||
</view>
|
||||
<view class="item_content_li">
|
||||
<view class="item_content_li_title">驳回原因:</view>
|
||||
<view class="item_content_li_txt">{{item.pharmacist_fail_reason}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 底部按钮 -->
|
||||
<view class="item_bottom">
|
||||
<view class="item_bottom_btn" bindtap="gochat" data-order_inquiry_id="{{item.order_inquiry_id}}" data-doctor_id="{{item.doctor_id}}" data-patient_id="{{item.patient_id}}">问诊记录</view>
|
||||
<view class="item_bottom_btn item_bottom_btn_repeat" bindtap="go" data-url="/user/pages/yishi/onlinechufang/index?order_inquiry_id={{item.order_inquiry_id}}&order_prescription_id={{item.order_prescription_id}}">
|
||||
重开处方
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<van-empty description="暂无数据" wx:if="{{chufang_list_2.length == 0}}" />
|
||||
</t-tab-panel>
|
||||
</t-tabs>
|
||||
</view>
|
||||
</view>
|
||||
@@ -0,0 +1,111 @@
|
||||
page{
|
||||
background-color: #F6F6F6;
|
||||
}
|
||||
.container{
|
||||
width: 100vw;
|
||||
}
|
||||
.t-tabs__content{
|
||||
background-color: #F6F6F6;
|
||||
}
|
||||
.t-tabs__item--active{
|
||||
color: #49B9AD !important;
|
||||
}
|
||||
.t-tabs__track{
|
||||
background-color: var(--td-tab-track-color, var(--td-primary-color, #49B9AD)) !important;
|
||||
}
|
||||
.item_list{
|
||||
width: 90vw;
|
||||
margin: 0 auto;
|
||||
}
|
||||
.item{
|
||||
width: 100%;
|
||||
border-radius: 20rpx;
|
||||
background-color: #fff;
|
||||
margin: 20rpx 0;
|
||||
}
|
||||
.namebox{
|
||||
display: flex;
|
||||
}
|
||||
.item_top{
|
||||
position: relative;
|
||||
height: 100rpx;
|
||||
display: flex;
|
||||
justify-content:space-between;
|
||||
align-items: center;
|
||||
padding: 0 32rpx;
|
||||
}
|
||||
.item_top::after {
|
||||
position: absolute;
|
||||
box-sizing: border-box;
|
||||
content: ' ';
|
||||
pointer-events: none;
|
||||
right: 32rpx;
|
||||
left: 32rpx;
|
||||
bottom: 0;
|
||||
border-bottom: 1px dashed var(--td-cell-border-color, var(--td-gray-color-3, #999));
|
||||
transform: scaleY(0.5);
|
||||
}
|
||||
.item_top_name{
|
||||
|
||||
color: #3CC7C0;
|
||||
font-size: 34rpx;
|
||||
}
|
||||
.item_top_sex{
|
||||
margin-left: 30rpx;
|
||||
font-size: 34rpx;
|
||||
color: #666;
|
||||
}
|
||||
.item_top_status_box{
|
||||
|
||||
}
|
||||
.item_top_status{
|
||||
padding: 10rpx;
|
||||
color: #FA541C;
|
||||
background-color: #FFF2E8;
|
||||
text-align: center;
|
||||
border-radius: 10rpx;
|
||||
font-size: 24rpx;
|
||||
}
|
||||
.item_top_status_no{
|
||||
color: #fff;
|
||||
background-color: #999;
|
||||
}
|
||||
.item_content{
|
||||
padding: 20rpx 32rpx 0rpx 32rpx;
|
||||
}
|
||||
.item_content_li{
|
||||
display: flex;
|
||||
padding-bottom: 20rpx;
|
||||
}
|
||||
.item_content_li_title{
|
||||
font-size: 30rpx;
|
||||
}
|
||||
.item_content_li_txt{
|
||||
margin-left: 10rpx;
|
||||
flex: 1;
|
||||
word-break: break-all;
|
||||
color: #666666;
|
||||
font-size: 28rpx;
|
||||
}
|
||||
.item_bottom{
|
||||
height: 120rpx;
|
||||
}
|
||||
.item_bottom_btn{
|
||||
position: relative;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
margin-right: 32rpx;
|
||||
float: right;
|
||||
text-align: center;
|
||||
color: #fff;
|
||||
padding: 15rpx 20rpx 15rpx 20rpx;
|
||||
width: 150rpx;
|
||||
background: linear-gradient(305deg, #FF931A 0%, #FCB75D 100%);
|
||||
border-radius: 50rpx;
|
||||
letter-spacing: 5rpx;
|
||||
font-size: 28rpx;
|
||||
}
|
||||
.item_bottom_btn_repeat{
|
||||
background: linear-gradient(129deg, #13DFD5 0%, #31C9C1 100%);
|
||||
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user