47 changed files with 976 additions and 120 deletions
@ -0,0 +1,8 @@
@@ -0,0 +1,8 @@
|
||||
# Change to the src/images directory, or exit if the directory doesn't exist |
||||
Set-Location -Path ./src/images/ -ErrorAction Stop |
||||
|
||||
# Add all files to svn, including ignored files and forced additions |
||||
svn add . --no-ignore --force |
||||
|
||||
# Commit the changes with a message |
||||
svn ci -m "版本更新" |
@ -1,4 +1,6 @@
@@ -1,4 +1,6 @@
|
||||
{ |
||||
"component": true, |
||||
"usingComponents": {} |
||||
"usingComponents": { |
||||
"popupDoctorDetail": "/components/popupDoctorDetail/index" |
||||
} |
||||
} |
||||
|
After Width: | Height: | Size: 1.6 KiB |
@ -0,0 +1,10 @@
@@ -0,0 +1,10 @@
|
||||
{ |
||||
"navigationBarTitleText": "指派医生", |
||||
"navigationStyle": "default", |
||||
"usingComponents": { |
||||
"popupDoctorDetail": "/components/popupDoctorDetail/index", |
||||
"doctorAvatar": "/components/doctorAvatar/index", |
||||
"van-popup": "@vant/weapp/popup/index", |
||||
"van-dialog": "@vant/weapp/dialog/index" |
||||
} |
||||
} |
@ -0,0 +1,236 @@
@@ -0,0 +1,236 @@
|
||||
page { |
||||
background-color: rgba(246, 246, 246, 1); |
||||
} |
||||
.page { |
||||
.header { |
||||
padding: 32rpx 32rpx 32rpx; |
||||
background-color: #fff; |
||||
.tip { |
||||
font-size: 28rpx; |
||||
color: rgba(20, 21, 21, 1); |
||||
.link { |
||||
color: rgba(0, 180, 197, 1); |
||||
} |
||||
} |
||||
.search-wrap { |
||||
margin-top: 32rpx; |
||||
display: flex; |
||||
align-items: center; |
||||
gap: 22rpx; |
||||
.search { |
||||
flex: 1; |
||||
padding: 20rpx 30rpx; |
||||
display: flex; |
||||
align-items: center; |
||||
gap: 20rpx; |
||||
border-radius: 122rpx; |
||||
background-color: rgba(246, 246, 246, 1); |
||||
.icon { |
||||
width: 32rpx; |
||||
height: 32rpx; |
||||
} |
||||
.input { |
||||
flex: 1; |
||||
text-align: center; |
||||
font-size: 28rpx; |
||||
color: #000; |
||||
} |
||||
.place-input { |
||||
color: rgba(205, 205, 205, 1); |
||||
} |
||||
} |
||||
.reset { |
||||
padding: 10rpx; |
||||
font-size: 28rpx; |
||||
color: #00b4c5; |
||||
} |
||||
} |
||||
.options { |
||||
display: flex; |
||||
align-items: center; |
||||
justify-content: space-between; |
||||
.picker { |
||||
flex: 1; |
||||
} |
||||
.option-wrap { |
||||
flex: 1; |
||||
.option { |
||||
padding: 30rpx 10rpx; |
||||
display: flex; |
||||
align-items: center; |
||||
justify-content: center; |
||||
.option-text { |
||||
max-width: 4em; |
||||
font-size: 32rpx; |
||||
color: rgba(20, 21, 21, 1); |
||||
overflow: hidden; |
||||
white-space: nowrap; |
||||
text-overflow: ellipsis; |
||||
} |
||||
.icon { |
||||
width: 24rpx; |
||||
height: 24rpx; |
||||
} |
||||
} |
||||
} |
||||
} |
||||
} |
||||
.list { |
||||
padding: 26rpx 32rpx 300rpx; |
||||
.list-item { |
||||
margin-bottom: 24rpx; |
||||
display: flex; |
||||
align-items: center; |
||||
.radio { |
||||
transform: scale(0.7); |
||||
} |
||||
.card { |
||||
flex: 1; |
||||
padding: 32rpx; |
||||
border-radius: 16rpx; |
||||
background-color: #fff; |
||||
display: flex; |
||||
gap: 24rpx; |
||||
.avatar { |
||||
flex-shrink: 0; |
||||
position: relative; |
||||
width: 112rpx; |
||||
height: 112rpx; |
||||
} |
||||
.wrap { |
||||
.w-header { |
||||
.name { |
||||
margin-right: 10rpx; |
||||
display: inline; |
||||
font-size: 36rpx; |
||||
color: rgba(20, 21, 21, 1); |
||||
font-weight: bold; |
||||
} |
||||
.label { |
||||
display: inline; |
||||
font-size: 28rpx; |
||||
color: rgba(20, 21, 21, 1); |
||||
} |
||||
.line { |
||||
margin: 0 10rpx; |
||||
display: inline-block; |
||||
width: 1px; |
||||
height: 24rpx; |
||||
background-color: rgba(205, 205, 205, 1); |
||||
} |
||||
} |
||||
.w-container { |
||||
margin-top: 24rpx; |
||||
.hostipal { |
||||
margin-right: 12rpx; |
||||
font-size: 28rpx; |
||||
color: rgba(20, 21, 21, 1); |
||||
} |
||||
.tag { |
||||
margin-right: 12rpx; |
||||
display: inline-block; |
||||
padding: 0 8rpx; |
||||
border-radius: 4rpx; |
||||
font-size: 24rpx; |
||||
color: rgba(255, 255, 255, 1); |
||||
line-height: 32rpx; |
||||
background-color: rgba(0, 180, 197, 1); |
||||
} |
||||
.site { |
||||
display: inline-block; |
||||
padding: 0 8rpx; |
||||
font-size: 24rpx; |
||||
color: rgba(148, 87, 30, 1); |
||||
line-height: 32rpx; |
||||
border-radius: 4rpx; |
||||
background-color: rgba(250, 229, 206, 1); |
||||
} |
||||
} |
||||
.w-footer { |
||||
margin-top: 14rpx; |
||||
display: flex; |
||||
gap: 12rpx; |
||||
flex-wrap: wrap; |
||||
.wf-label { |
||||
flex-shrink: 0; |
||||
width: 48rpx; |
||||
height: 32rpx; |
||||
} |
||||
.wf-tag { |
||||
flex-shrink: 0; |
||||
padding: 0 8rpx; |
||||
font-size: 22rpx; |
||||
color: rgba(0, 180, 197, 1); |
||||
line-height: 32rpx; |
||||
border: 1px solid rgba(191, 239, 244, 1); |
||||
} |
||||
} |
||||
} |
||||
} |
||||
} |
||||
} |
||||
.footer { |
||||
position: fixed; |
||||
bottom: 0; |
||||
left: 0; |
||||
padding: 32rpx 32rpx calc(env(safe-area-inset-bottom) + 32rpx); |
||||
width: 100%; |
||||
box-sizing: border-box; |
||||
display: flex; |
||||
gap: 26rpx; |
||||
align-items: center; |
||||
justify-content: space-between; |
||||
background-color: #fff; |
||||
box-shadow: 0 -10rpx 20rpx rgba(0, 0, 0, 0.1); |
||||
.cancel { |
||||
width: 230rpx; |
||||
height: 84rpx; |
||||
text-align: center; |
||||
line-height: 88rpx; |
||||
font-size: 32rpx; |
||||
color: rgba(1, 180, 197, 1); |
||||
border-radius: 96rpx 96rpx 96rpx 96rpx; |
||||
border: 1px solid #01b4c5; |
||||
} |
||||
.submit { |
||||
flex: 1; |
||||
height: 88rpx; |
||||
text-align: center; |
||||
line-height: 88rpx; |
||||
font-size: 32rpx; |
||||
color: #fff; |
||||
background: linear-gradient(90deg, #00b4c5 0%, #54e2b4 100%); |
||||
border-radius: 96rpx; |
||||
} |
||||
} |
||||
} |
||||
|
||||
.resolve { |
||||
background-color: transparent; |
||||
.r-badge { |
||||
position: relative; |
||||
z-index: 1; |
||||
display: block; |
||||
margin: 0 auto; |
||||
width: 152rpx; |
||||
height: 152rpx; |
||||
} |
||||
.r-container { |
||||
margin-top: -76rpx; |
||||
padding: 78rpx 32rpx 40rpx; |
||||
background-color: #fff; |
||||
border-radius: 32rpx 32rpx 0 0; |
||||
.title { |
||||
font-size: 32rpx; |
||||
color: rgba(20, 21, 21, 1); |
||||
font-weight: bold; |
||||
text-align: center; |
||||
} |
||||
.content { |
||||
margin-top: 32rpx; |
||||
font-size: 30rpx; |
||||
color: rgba(153, 153, 153, 1); |
||||
line-height: 44rpx; |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,77 @@
@@ -0,0 +1,77 @@
|
||||
const app = getApp<IAppOption>(); |
||||
|
||||
Page({ |
||||
data: { |
||||
showDetail: false, |
||||
popupDoctorDetail: {}, |
||||
|
||||
Search: "", |
||||
|
||||
list: [], |
||||
|
||||
DoctorId: "", |
||||
DoctorName: "", |
||||
}, |
||||
onLoad() { |
||||
app.waitLogin().then(() => { |
||||
this.getList(); |
||||
}); |
||||
}, |
||||
handleSearch() { |
||||
this.setData({ |
||||
list: [], |
||||
}); |
||||
this.getList(); |
||||
}, |
||||
handleReset() { |
||||
this.setData({ |
||||
Search: "", |
||||
}); |
||||
this.handleSearch(); |
||||
}, |
||||
getList() { |
||||
const { Search } = this.data; |
||||
wx.ajax({ |
||||
method: "GET", |
||||
url: "?r=takeda/reg/second-doctor-list", |
||||
data: { |
||||
Search, |
||||
}, |
||||
}).then((res) => { |
||||
this.setData({ |
||||
list: res.list, |
||||
}); |
||||
}); |
||||
}, |
||||
handlePopupClose() { |
||||
this.setData({ |
||||
showDetail: false, |
||||
}); |
||||
}, |
||||
handleRadio(e: any) { |
||||
const { index } = e.currentTarget.dataset; |
||||
const { list } = this.data; |
||||
this.setData({ |
||||
DoctorId: (list as any)[index].DoctorId, |
||||
DoctorName: (list as any)[index].DoctorName, |
||||
}); |
||||
}, |
||||
handleResolve() { |
||||
const { DoctorId, DoctorName } = this.data; |
||||
if (!DoctorId) { |
||||
wx.showToast({ |
||||
title: "请选择医生", |
||||
icon: "none", |
||||
}); |
||||
return; |
||||
} |
||||
const eventChannel = this.getOpenerEventChannel(); |
||||
eventChannel.emit("acceptDataFromOpenedPage", { DoctorId, DoctorName }); |
||||
this.handleBack() |
||||
}, |
||||
handleBack() { |
||||
wx.navigateBack(); |
||||
}, |
||||
}); |
||||
|
||||
export {}; |
@ -0,0 +1,72 @@
@@ -0,0 +1,72 @@
|
||||
<view class="page"> |
||||
<view class="header"> |
||||
<view class="search-wrap"> |
||||
<view class="search"> |
||||
<image class="icon" src="{{imageUrl}}icon-search.png?t={{Timestamp}}"></image> |
||||
<input |
||||
model:value="{{Search}}" |
||||
class="input" |
||||
placeholder-class="place-input" |
||||
placeholder="搜索医生名" |
||||
type="text" |
||||
confirm-type="search" |
||||
bindconfirm="handleSearch" |
||||
/> |
||||
</view> |
||||
<view class="reset" bind:tap="handleReset">重置</view> |
||||
</view> |
||||
</view> |
||||
<view class="container"> |
||||
<radio-group> |
||||
<view class="list"> |
||||
<view class="list-item" wx:for="{{list}}" wx:key="DoctorId"> |
||||
<radio |
||||
class="radio" |
||||
value="{{item.DoctorId}}" |
||||
bind:tap="handleRadio" |
||||
data-index="{{index}}" |
||||
color="#00B4C5" |
||||
></radio> |
||||
<view class="card" bind:tap="handlePopupDetail" data-index="{{index}}"> |
||||
<doctorAvatar |
||||
did="{{item.DoctorId}}" |
||||
class="avatar" |
||||
src="{{item.DoctorImg}}" |
||||
level="{{item.DoctorLevel}}" |
||||
></doctorAvatar> |
||||
<view class="wrap"> |
||||
<view class="w-header"> |
||||
<view class="name">{{item.DoctorName}}</view> |
||||
<view class="label" wx:if="{{item.DoctorTitleType==='99'}}">{{item.DoctorOtherTitle}}</view> |
||||
<view class="label" wx:else>{{DoctorTitleType[item.DoctorTitleType]}}</view> |
||||
<block wx:for-item="depart" wx:for="{{item.department}}" wx:key="DepartmentId"> |
||||
<view class="line"></view> |
||||
<view class="label">{{depart.DepartmentName}}</view> |
||||
</block> |
||||
</view> |
||||
<view class="w-container"> |
||||
<text class="hostipal">{{item.HospitalName}}</text> |
||||
<view class="tag"> |
||||
{{hospitalClassification[item.HospitalClassification]}}{{hospitalLevel[item.HospitalLevel]}} |
||||
</view> |
||||
<view class="site" wx:if="{{item.CityName}}"> |
||||
{{item.CityName}}{{item.CountyName?'/':''}}{{item.CountyName}} |
||||
</view> |
||||
</view> |
||||
<view class="w-footer"> |
||||
<image class="wf-label" src="{{imageUrl}}text-specialty.png?t={{Timestamp}}" mode="aspectFit"></image> |
||||
<view class="wf-tag" wx:for="{{item.specialty}}" wx:for-item="spec" wx:key="SpecialtyId"> |
||||
{{spec.SpecialtyName}} |
||||
</view> |
||||
</view> |
||||
</view> |
||||
</view> |
||||
</view> |
||||
</view> |
||||
</radio-group> |
||||
</view> |
||||
<view class="footer"> |
||||
<view class="cancel" bind:tap="handleBack">返回</view> |
||||
<view class="submit" bind:tap="handleResolve">确认</view> |
||||
</view> |
||||
</view> |
Loading…
Reference in new issue