@ -1,104 +0,0 @@ |
|||||
<template> |
|
||||
<view class="input-wrapper"> |
|
||||
<view class="ft32 left">{{label}}</view> |
|
||||
<view class="right"> |
|
||||
<input v-if="type==='normal'" class="ft32 inputValue" :value="value" :placeholder="holder" @blur="handleBlur" @input="handleInput"/> |
|
||||
<view class="vertifyWrap" v-else-if="type==='vertify'"> |
|
||||
<input class="ft32 inputValue" :value="value" :placeholder="holder" @blur="handleBlur" @input="handleInput"/> |
|
||||
<view class="ft28 button">发送验证码</view> |
|
||||
</view> |
|
||||
<slot v-else></slot> |
|
||||
</view> |
|
||||
</view> |
|
||||
</template> |
|
||||
|
|
||||
<script> |
|
||||
export default { |
|
||||
name:"doctorInfoInput", |
|
||||
data() { |
|
||||
return { |
|
||||
|
|
||||
}; |
|
||||
}, |
|
||||
props: { |
|
||||
label: { |
|
||||
type: String, |
|
||||
default: '个人照片' |
|
||||
}, |
|
||||
type: { |
|
||||
type: String, |
|
||||
default: '' |
|
||||
}, |
|
||||
value: { |
|
||||
type: String, |
|
||||
default: "" |
|
||||
}, |
|
||||
holder: { |
|
||||
type: String, |
|
||||
default: '' |
|
||||
}, |
|
||||
}, |
|
||||
methods: { |
|
||||
handleBlur(e) { |
|
||||
var value = e.detail.value |
|
||||
var res = this.check(value); |
|
||||
if(!res){ |
|
||||
this.$emit('blurEvent', value, false) |
|
||||
return |
|
||||
} |
|
||||
this.$emit('blurEvent', value, true) |
|
||||
}, |
|
||||
handleInput(e){ |
|
||||
if(!this.errormsg) return; |
|
||||
var value = e.detail.value |
|
||||
var res = this.check(value); |
|
||||
if(!res){ |
|
||||
this.$emit('blurEvent', value, false) |
|
||||
return |
|
||||
} |
|
||||
this.$emit('blurEvent', value, true) |
|
||||
}, |
|
||||
} |
|
||||
} |
|
||||
</script> |
|
||||
|
|
||||
<style> |
|
||||
.input-wrapper{ |
|
||||
padding: 40rpx 12rpx; |
|
||||
border-bottom:2rpx solid rgba(151,151,151,0.15);; |
|
||||
display: flex; |
|
||||
align-items: center; |
|
||||
justify-content: space-between; |
|
||||
|
|
||||
&:last-child { |
|
||||
border: none; |
|
||||
} |
|
||||
.left { |
|
||||
font-weight: 500; |
|
||||
color: #000000; |
|
||||
line-height: 44rpx; |
|
||||
letter-spacing: 2rpx; |
|
||||
text-wrap: nowrap; |
|
||||
} |
|
||||
.right { |
|
||||
.inputValue { |
|
||||
text-align: right; |
|
||||
} |
|
||||
.vertifyWrap { |
|
||||
display: flex; |
|
||||
align-items: center; |
|
||||
.button { |
|
||||
color: #55C483; |
|
||||
line-height: 70rpx; |
|
||||
text-align: center; |
|
||||
|
|
||||
width: 192rpx; |
|
||||
height: 70rpx; |
|
||||
background: #EBFFF1; |
|
||||
border-radius: 8rpx; |
|
||||
margin-left: 24rpx; |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
</style> |
|
||||
@ -1,55 +0,0 @@ |
|||||
<template> |
|
||||
<view class="textarea-wrapper"> |
|
||||
<view class="ft32 title">{{title}}</view> |
|
||||
<textarea class="content" :auto-height="true" :value="value" :placeholder="holder" @blur="handleBlur" @input="handleInput"></textarea> |
|
||||
</view> |
|
||||
</template> |
|
||||
|
|
||||
<script> |
|
||||
export default { |
|
||||
name:"doctorInfoTextarea", |
|
||||
data() { |
|
||||
return { |
|
||||
|
|
||||
}; |
|
||||
}, |
|
||||
props: { |
|
||||
title: { |
|
||||
type: String, |
|
||||
default: '一句话介绍' |
|
||||
}, |
|
||||
value: { |
|
||||
type: String, |
|
||||
default: '' |
|
||||
}, |
|
||||
holder: { |
|
||||
type: String, |
|
||||
default: '14个字介绍自己亮点' |
|
||||
} |
|
||||
}, |
|
||||
methods: { |
|
||||
handleBlur() {}, |
|
||||
handleInput() {} |
|
||||
} |
|
||||
} |
|
||||
</script> |
|
||||
|
|
||||
<style> |
|
||||
.textarea-wrapper { |
|
||||
.title{ |
|
||||
font-weight: 500; |
|
||||
color: #222222; |
|
||||
line-height: 44px; |
|
||||
letter-spacing: 2px; |
|
||||
} |
|
||||
.content { |
|
||||
width:100%; |
|
||||
height: 100rpx; |
|
||||
background: #FFFFFF; |
|
||||
border-radius: 12rpx; |
|
||||
border: 2rpx solid #E6E6E6; |
|
||||
padding: 28rpx 26rpx; |
|
||||
box-sizing: border-box; |
|
||||
} |
|
||||
} |
|
||||
</style> |
|
||||
@ -1,64 +0,0 @@ |
|||||
<template> |
|
||||
<view class="item-wrapper"> |
|
||||
<view class="left"> |
|
||||
<img class="icon" :src="cssUrl+iconName" /> |
|
||||
<view class="ft28 title">{{title}}</view> |
|
||||
</view> |
|
||||
<img class="arrow-right" :src="cssUrl+'index_comback2.svg'" /> |
|
||||
</view> |
|
||||
</template> |
|
||||
|
|
||||
<script> |
|
||||
export default { |
|
||||
name:"mineBar", |
|
||||
data() { |
|
||||
return { |
|
||||
cssUrl:this.cssUrl |
|
||||
} |
|
||||
}, |
|
||||
props: { |
|
||||
title: { |
|
||||
type: String, |
|
||||
default: '患者预约' |
|
||||
}, |
|
||||
iconName: { |
|
||||
type: String, |
|
||||
default: 'mine-bar-prebook.svg' |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
</script> |
|
||||
|
|
||||
<style> |
|
||||
.item-wrapper { |
|
||||
width: 100%; |
|
||||
box-sizing: border-box; |
|
||||
padding: 38rpx 0; |
|
||||
border-bottom: 2rpx solid #F1F1F1; |
|
||||
|
|
||||
display: flex; |
|
||||
justify-content: space-between; |
|
||||
align-items: center; |
|
||||
|
|
||||
&:last-child { |
|
||||
border: none; |
|
||||
} |
|
||||
.left { |
|
||||
display: flex; |
|
||||
align-items: center; |
|
||||
.icon { |
|
||||
width: 44rpx; |
|
||||
height: 44rpx; |
|
||||
} |
|
||||
.title { |
|
||||
color: #242833; |
|
||||
line-height: 40rpx; |
|
||||
margin-left: 30rpx; |
|
||||
} |
|
||||
} |
|
||||
.arrow-right { |
|
||||
width: 20rpx; |
|
||||
height: 32rpx; |
|
||||
} |
|
||||
} |
|
||||
</style> |
|
||||
@ -1,45 +0,0 @@ |
|||||
<template> |
|
||||
<view class="option-wrapper"> |
|
||||
<img class="icon" :src="cssUrl+iconName"/> |
|
||||
<view class="ft28 title">{{title}}</view> |
|
||||
</view> |
|
||||
</template> |
|
||||
|
|
||||
<script> |
|
||||
export default { |
|
||||
name:"minebox", |
|
||||
props: { |
|
||||
title:{ |
|
||||
type: String, |
|
||||
default: "医生信息" |
|
||||
}, |
|
||||
iconName: { |
|
||||
type: String, |
|
||||
default:'mine-icon-schedule.svg' |
|
||||
} |
|
||||
}, |
|
||||
data() { |
|
||||
return { |
|
||||
cssUrl:this.cssUrl, |
|
||||
} |
|
||||
}, |
|
||||
} |
|
||||
</script> |
|
||||
|
|
||||
<style> |
|
||||
.option-wrapper { |
|
||||
|
|
||||
display: flex; |
|
||||
flex-direction: column; |
|
||||
align-items: center; |
|
||||
.icon { |
|
||||
width: 71rpx; |
|
||||
height: 70rpx; |
|
||||
} |
|
||||
.title { |
|
||||
color: #666666; |
|
||||
line-height: 40rpx; |
|
||||
margin-top: 24rpx; |
|
||||
} |
|
||||
} |
|
||||
</style> |
|
||||
@ -1,79 +0,0 @@ |
|||||
<template> |
|
||||
<view class="doctor-info-page btPadding"> |
|
||||
<view class="basic-wrapper"> |
|
||||
<input-box label="个人照片"> |
|
||||
<view v-slot class="upload"> |
|
||||
<view class="picture"></view> |
|
||||
<view class="ft22 button">点击上传照片</view> |
|
||||
</view> |
|
||||
</input-box> |
|
||||
<input-box label="医生姓名" type="normal" holder="请填写本人姓名"></input-box> |
|
||||
<input-box label="手机号" type="normal" holder="请填写手机号"></input-box> |
|
||||
<input-box label="验证码" type="vertify" holder="填写验证码"></input-box> |
|
||||
</view> |
|
||||
<view class="introduce-wrapper"> |
|
||||
<textarea-box></textarea-box> |
|
||||
</view> |
|
||||
</view> |
|
||||
</template> |
|
||||
|
|
||||
<script> |
|
||||
import InputBox from '@/components/doctorInfoInput.vue'; |
|
||||
import TextareaBox from '@/components/doctorInfoTextarea.vue' |
|
||||
|
|
||||
export default { |
|
||||
data() { |
|
||||
return { |
|
||||
|
|
||||
} |
|
||||
}, |
|
||||
components:{ |
|
||||
InputBox, |
|
||||
TextareaBox |
|
||||
}, |
|
||||
methods: { |
|
||||
|
|
||||
} |
|
||||
} |
|
||||
</script> |
|
||||
|
|
||||
<style> |
|
||||
.doctor-info-page { |
|
||||
padding: 20rpx 17rpx; |
|
||||
.basic-wrapper { |
|
||||
padding: 0 12px; |
|
||||
background-color: rgba(255, 255, 255, 1); |
|
||||
box-shadow: 0rpx 2rpx 24rpx 0rpx rgba(0, 0, 0, 0.03); |
|
||||
border-radius: 0rpx 0rpx 8rpx 8rpx; |
|
||||
.upload { |
|
||||
display: flex; |
|
||||
flex-direction: column; |
|
||||
justify-content: center; |
|
||||
align-items: center; |
|
||||
.picture { |
|
||||
width: 160rpx; |
|
||||
height: 160rpx; |
|
||||
background: #F8F8F8; |
|
||||
border-radius: 12rpx; |
|
||||
} |
|
||||
.button { |
|
||||
color: #FFFFFF; |
|
||||
|
|
||||
width: 160rpx; |
|
||||
height: 44rpx; |
|
||||
text-align: center; |
|
||||
line-height: 44rpx; |
|
||||
background: rgba(0,0,0,0.28); |
|
||||
border-radius: 12rpx; |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
.introduce-wrapper { |
|
||||
margin: 20px auto 0; |
|
||||
padding: 0 36px; |
|
||||
background-color: rgba(255, 255, 255, 1); |
|
||||
box-shadow: 0rpx 2rpx 24rpx 0rpx rgba(0, 0, 0, 0.03); |
|
||||
border-radius: 0rpx 0rpx 8rpx 8rpx; |
|
||||
} |
|
||||
} |
|
||||
</style> |
|
||||
@ -1,95 +0,0 @@ |
|||||
<template> |
|
||||
<view class="mine-page btPadding"> |
|
||||
<view class="info-wrapper"> |
|
||||
<img class="avatar" src="https://qny.xmz.yitongtang66.com/uploads/20240202/4c91b27887ee12a29beb015ef4dfe71f.jpg" alt="" @click="enlargePicture('https://qny.xmz.yitongtang66.com/uploads/20240202/4c91b27887ee12a29beb015ef4dfe71f.jpg')"/> |
|
||||
<view class="ft40 name">李静医生</view> |
|
||||
</view> |
|
||||
<view class="box-wrapper"> |
|
||||
<box :title="'医生信息'" :icon-name="'mine-icon-doctor.svg'" /> |
|
||||
<box :title="'医院管理'" :icon-name="'mine-icon-hospital.svg'" /> |
|
||||
<box :title="'出诊安排'" :icon-name="'mine-icon-schedule.svg'"/> |
|
||||
<box :title="'诊疗设置'" :icon-name="'mine-icon-setting.svg'"/> |
|
||||
</view> |
|
||||
<view class="bar-wrapper"> |
|
||||
<bar :title="'患者预约'" :icon-name="'mine-bar-prebook.svg'" /> |
|
||||
<bar :title="'助手管理'" :icon-name="'mine-bar-assistant.svg'" /> |
|
||||
<bar :title="'挂号管理'" :icon-name="'mine-bar-registration.svg'" /> |
|
||||
<bar :title="'导出针灸记录'" :icon-name="'mine-bar-records.svg'" /> |
|
||||
<bar :title="'邀请新医生'" :icon-name="'mine-bar-invite.svg'" /> |
|
||||
</view> |
|
||||
<tabbar current="2" leftButtonText="就诊表"></tabbar> |
|
||||
</view> |
|
||||
</template> |
|
||||
|
|
||||
<script> |
|
||||
import Box from '@/components/mineBox.vue'; |
|
||||
import Bar from '@/components/mineBar.vue'; |
|
||||
import tabbar from '@/components/tabbar.vue'; |
|
||||
|
|
||||
export default { |
|
||||
data() { |
|
||||
return { |
|
||||
cssUrl:this.cssUrl |
|
||||
} |
|
||||
}, |
|
||||
components:{ |
|
||||
Box, |
|
||||
Bar, |
|
||||
tabbar |
|
||||
}, |
|
||||
methods: { |
|
||||
enlargePicture(imgUrl) { |
|
||||
var list = new Array(); |
|
||||
list[0] = imgUrl; |
|
||||
uni.previewImage({ |
|
||||
loop: true, |
|
||||
urls: list |
|
||||
}); |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
</script> |
|
||||
|
|
||||
<style> |
|
||||
.mine-page{ |
|
||||
.info-wrapper { |
|
||||
display: flex; |
|
||||
flex-direction: column; |
|
||||
justify-content: center; |
|
||||
align-items: center; |
|
||||
padding-top: 17rpx; |
|
||||
padding-bottom: 35rpx; |
|
||||
|
|
||||
.avatar { |
|
||||
width: 160rpx; |
|
||||
height: 160rpx; |
|
||||
background: #D8D8D8; |
|
||||
border-radius: 100%; |
|
||||
} |
|
||||
.name { |
|
||||
font-weight: 500; |
|
||||
color: #000000; |
|
||||
line-height: 56rpx; |
|
||||
margin-top: 8rpx; |
|
||||
} |
|
||||
} |
|
||||
.box-wrapper { |
|
||||
background-color: #FFFFFF; |
|
||||
border-radius: 0 0 8rpx 8rpx; |
|
||||
box-shadow: 0 2rpx 24rpx 0rpx rgba(0,0,0,0.03); |
|
||||
box-sizing: border-box; |
|
||||
margin: 0 18rpx; |
|
||||
padding: 36rpx 24rpx; |
|
||||
|
|
||||
display: flex; |
|
||||
justify-content: space-between; |
|
||||
} |
|
||||
.bar-wrapper { |
|
||||
background: #FFFFFF; |
|
||||
box-shadow: 0rpx 2rpx 24rpx 0rpx rgba(0,0,0,0.03); |
|
||||
border-radius: 0rpx 0rpx 8rpx 8rpx; |
|
||||
margin: 20rpx 18rpx 133rpx; |
|
||||
padding: 38rpx 20rpx 51rpx 26rpx; |
|
||||
} |
|
||||
} |
|
||||
</style> |
|
||||
|
Before Width: | Height: | Size: 1.0 KiB |
|
Before Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 607 B |
|
Before Width: | Height: | Size: 649 B |
|
Before Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 4.0 KiB |
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 962 B |
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 639 B |
|
Before Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 572 B |
|
Before Width: | Height: | Size: 3.8 KiB |
|
Before Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 75 KiB |
|
Before Width: | Height: | Size: 388 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 933 B |
|
Before Width: | Height: | Size: 5.3 KiB |
|
Before Width: | Height: | Size: 7.0 KiB |
|
Before Width: | Height: | Size: 609 B |
|
Before Width: | Height: | Size: 6.9 KiB |
|
Before Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 442 KiB |
|
Before Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 1.0 KiB |
|
Before Width: | Height: | Size: 1.5 KiB |