@ -0,0 +1,128 @@ |
|||||||
|
.aside-share { |
||||||
|
position: fixed; |
||||||
|
right: 22rpx; |
||||||
|
bottom: 120rpx; |
||||||
|
width: 136rpx; |
||||||
|
height: 136rpx; |
||||||
|
} |
||||||
|
|
||||||
|
.popup { |
||||||
|
position: relative; |
||||||
|
background-color: #fff; |
||||||
|
.close { |
||||||
|
position: absolute; |
||||||
|
top: 52rpx; |
||||||
|
right: 32rpx; |
||||||
|
color: rgba(72, 72, 72, 1); |
||||||
|
font-size: 34rpx; |
||||||
|
} |
||||||
|
.p-header { |
||||||
|
padding: 46rpx 30rpx 0; |
||||||
|
.title { |
||||||
|
text-align: center; |
||||||
|
font-size: 36rpx; |
||||||
|
color: rgba(72, 72, 72, 1); |
||||||
|
font-weight: bold; |
||||||
|
} |
||||||
|
.tip { |
||||||
|
text-align: center; |
||||||
|
margin-top: 16rpx; |
||||||
|
font-size: 32rpx; |
||||||
|
color: rgba(72, 72, 72, 1); |
||||||
|
} |
||||||
|
.area { |
||||||
|
margin-top: 48rpx; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
justify-content: space-between; |
||||||
|
gap: 14rpx; |
||||||
|
.item { |
||||||
|
flex: 1; |
||||||
|
padding: 18rpx 30rpx; |
||||||
|
box-shadow: 0rpx 4rpx 12rpx 0rpx rgba(0, 0, 0, 0.11); |
||||||
|
border-radius: 12rpx 12rpx 12rpx 12rpx; |
||||||
|
border: 2rpx solid #e04775; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
justify-content: space-between; |
||||||
|
.content { |
||||||
|
font-size: 32rpx; |
||||||
|
color: rgba(72, 72, 72, 1); |
||||||
|
max-width: 5em; |
||||||
|
overflow: hidden; |
||||||
|
white-space: nowrap; |
||||||
|
text-overflow: ellipsis; |
||||||
|
} |
||||||
|
.icon { |
||||||
|
width: 32rpx; |
||||||
|
height: 32rpx; |
||||||
|
} |
||||||
|
} |
||||||
|
.picker { |
||||||
|
flex: 1; |
||||||
|
} |
||||||
|
.btn { |
||||||
|
width: 126rpx; |
||||||
|
height: 76rpx; |
||||||
|
font-size: 32rpx; |
||||||
|
color: rgba(255, 255, 255, 1); |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
justify-content: center; |
||||||
|
background: #e04775; |
||||||
|
border-radius: 12rpx 12rpx 12rpx 12rpx; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
.select { |
||||||
|
margin-top: 44rpx; |
||||||
|
padding: 0 30rpx 0; |
||||||
|
display: grid; |
||||||
|
grid-template-columns: repeat(auto-fit, 68rpx); |
||||||
|
gap: 26rpx 20rpx; |
||||||
|
.s-item { |
||||||
|
width: 68rpx; |
||||||
|
height: 68rpx; |
||||||
|
text-align: center; |
||||||
|
line-height: 68rpx; |
||||||
|
font-size: 28rpx; |
||||||
|
color: rgba(158, 158, 158, 1); |
||||||
|
border-radius: 50%; |
||||||
|
background: #f7f8f9; |
||||||
|
&.active { |
||||||
|
color: #fff; |
||||||
|
background-color: rgba(224, 71, 117, 1); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
.scroll { |
||||||
|
padding: 0 30rpx; |
||||||
|
height: 45vh; |
||||||
|
box-sizing: border-box; |
||||||
|
.item { |
||||||
|
padding: 32rpx 0; |
||||||
|
font-size: 28rpx; |
||||||
|
color: rgba(72, 72, 72, 1); |
||||||
|
border-bottom: 2px solid #fbfbfb; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
justify-content: space-between; |
||||||
|
.word { |
||||||
|
margin-right: 24rpx; |
||||||
|
display: inline-block; |
||||||
|
width: 1em; |
||||||
|
color: rgba(158, 158, 158, 1); |
||||||
|
} |
||||||
|
.icon { |
||||||
|
width: 36rpx; |
||||||
|
height: 36rpx; |
||||||
|
} |
||||||
|
&.active { |
||||||
|
color: rgba(224, 71, 117, 1); |
||||||
|
.word { |
||||||
|
color: rgba(224, 71, 117, 1); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -1,13 +1,81 @@ |
|||||||
<van-popup show="{{ show }}" round position="bottom"> |
|
||||||
<van-cascader |
|
||||||
wx:if="{{ show }}" |
|
||||||
value="{{ value }}" |
|
||||||
title="请选择所在地区" |
|
||||||
fieldNames="{{fieldNames}}" |
|
||||||
options="{{ options }}" |
|
||||||
bind:close="onClose" |
|
||||||
bind:finish="onFinish" |
|
||||||
/> |
|
||||||
</van-popup> |
|
||||||
|
|
||||||
<slot bind:tap="handleShow"></slot> |
<slot bind:tap="handleShow"></slot> |
||||||
|
|
||||||
|
<van-popup show="{{ show }}" position="bottom" round close-on-click-overlay bind:click-overlay="handleClose"> |
||||||
|
<view class="popup"> |
||||||
|
<van-icon catch:tap="handleClose" class="close" name="cross" /> |
||||||
|
<view class="p-header"> |
||||||
|
<view class="title">选择省份和地区</view> |
||||||
|
<!-- <view class="tip">对方打开后自动定位此地区</view> --> |
||||||
|
<view class="area"> |
||||||
|
<view class="item" bind:tap="handleProvince"> |
||||||
|
<view class="content">{{ProvinceName || '请选择省份'}}</view> |
||||||
|
<image class="icon" src="{{imageUrl}}icon6.png?t={{Timestamp}}"></image> |
||||||
|
</view> |
||||||
|
<view class="item" bind:tap="handleCity"> |
||||||
|
<view class="content">{{CityName || '请选择城市'}}</view> |
||||||
|
<image class="icon" src="{{imageUrl}}icon6.png?t={{Timestamp}}"></image> |
||||||
|
</view> |
||||||
|
<view class="btn" bind:tap="handleShare">确定</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
<block wx:if="{{active===1}}"> |
||||||
|
<scroll-view |
||||||
|
class="scroll" |
||||||
|
scroll-y |
||||||
|
scroll-with-animation |
||||||
|
scroll-into-view="{{scrollIntoView1}}" |
||||||
|
show-scrollbar="{{false}}" |
||||||
|
> |
||||||
|
<view |
||||||
|
class="item {{item.value === CityId && 'active'}}" |
||||||
|
id="{{'id'+item.value}}" |
||||||
|
wx:for="{{range}}" |
||||||
|
wx:key="index" |
||||||
|
bind:tap="handleChangeCity" |
||||||
|
data-code="{{item.value}}" |
||||||
|
data-name="{{item.label}}" |
||||||
|
> |
||||||
|
<view class="left">{{item.label}}</view> |
||||||
|
</view> |
||||||
|
</scroll-view> |
||||||
|
</block> |
||||||
|
<block wx:else> |
||||||
|
<view class="select"> |
||||||
|
<view |
||||||
|
class="s-item {{word===index && 'active'}}" |
||||||
|
wx:for="{{proList}}" |
||||||
|
wx:key="index" |
||||||
|
bind:tap="handleSelect" |
||||||
|
data-id="{{index}}" |
||||||
|
> |
||||||
|
{{index}} |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
<scroll-view |
||||||
|
class="scroll" |
||||||
|
scroll-y |
||||||
|
scroll-into-view="{{scrollIntoView0}}" |
||||||
|
scroll-with-animation |
||||||
|
show-scrollbar="{{false}}" |
||||||
|
> |
||||||
|
<block wx:for="{{proList}}" wx:for-item="list" wx:for-index="key" wx:key="key"> |
||||||
|
<block wx:for="{{list}}" wx:key="index"> |
||||||
|
<view wx:if="{{index==0}}" id="{{key}}"></view> |
||||||
|
<view |
||||||
|
class="item {{item.code=== ProvinceId && 'active'}}" |
||||||
|
id="{{'id'+item.code}}" |
||||||
|
bind:tap="handleItem" |
||||||
|
data-code="{{item.code}}" |
||||||
|
data-name="{{item.name}}" |
||||||
|
> |
||||||
|
<view class="left"> |
||||||
|
<text class="word">{{index===0 ? key : ''}}</text> |
||||||
|
{{item.name}} |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</block> |
||||||
|
</block> |
||||||
|
</scroll-view> |
||||||
|
</block> |
||||||
|
</view> |
||||||
|
</van-popup> |
||||||
|
@ -0,0 +1,7 @@ |
|||||||
|
{ |
||||||
|
"component": true, |
||||||
|
"usingComponents": { |
||||||
|
"van-popup": "@vant/weapp/popup/index", |
||||||
|
"van-cascader": "@vant/weapp/cascader/index" |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,76 @@ |
|||||||
|
const app = getApp<IAppOption>() |
||||||
|
|
||||||
|
Component({ |
||||||
|
properties: { |
||||||
|
level: { |
||||||
|
type: Number, |
||||||
|
value: 3, |
||||||
|
}, |
||||||
|
value: { |
||||||
|
type: String, |
||||||
|
value: '', |
||||||
|
}, |
||||||
|
}, |
||||||
|
|
||||||
|
data: { |
||||||
|
imageUrl: app.globalData.imageUrl, |
||||||
|
Timestamp: app.globalData.Timestamp, |
||||||
|
|
||||||
|
show: false, |
||||||
|
options: [], |
||||||
|
fieldNames: { |
||||||
|
text: 'label', |
||||||
|
value: 'value', |
||||||
|
children: 'children', |
||||||
|
}, |
||||||
|
}, |
||||||
|
lifetimes: { |
||||||
|
attached() { |
||||||
|
this.getArea() |
||||||
|
}, |
||||||
|
}, |
||||||
|
methods: { |
||||||
|
handleShow() { |
||||||
|
this.setData({ |
||||||
|
show: true, |
||||||
|
}) |
||||||
|
}, |
||||||
|
getArea() { |
||||||
|
const { level } = this.data |
||||||
|
wx.ajax({ |
||||||
|
method: 'GET', |
||||||
|
url: '/js/area.json', |
||||||
|
data: {}, |
||||||
|
isJSON: true, |
||||||
|
}).then((res) => { |
||||||
|
if (level === 1) { |
||||||
|
res.forEach((item: any) => { |
||||||
|
delete item.children |
||||||
|
}) |
||||||
|
} |
||||||
|
if (level === 2) { |
||||||
|
res.forEach((item: any) => { |
||||||
|
item.children.forEach((child: any) => { |
||||||
|
delete child.children |
||||||
|
}) |
||||||
|
}) |
||||||
|
} |
||||||
|
this.setData({ |
||||||
|
options: res, |
||||||
|
}) |
||||||
|
}) |
||||||
|
}, |
||||||
|
onFinish(e: any) { |
||||||
|
this.triggerEvent('change', e.detail.selectedOptions) |
||||||
|
this.setData({ |
||||||
|
show: false, |
||||||
|
}) |
||||||
|
}, |
||||||
|
onClose() { |
||||||
|
this.setData({ |
||||||
|
show: false, |
||||||
|
}) |
||||||
|
this.triggerEvent('cancel') |
||||||
|
}, |
||||||
|
}, |
||||||
|
}) |
@ -0,0 +1,13 @@ |
|||||||
|
<van-popup show="{{ show }}" round position="bottom"> |
||||||
|
<van-cascader |
||||||
|
wx:if="{{ show }}" |
||||||
|
value="{{ value }}" |
||||||
|
title="请选择所在地区" |
||||||
|
fieldNames="{{fieldNames}}" |
||||||
|
options="{{ options }}" |
||||||
|
bind:close="onClose" |
||||||
|
bind:finish="onFinish" |
||||||
|
/> |
||||||
|
</van-popup> |
||||||
|
|
||||||
|
<slot bind:tap="handleShow"></slot> |
@ -1,4 +1,4 @@ |
|||||||
{ |
{ |
||||||
"navigationBarTitleText": "诊前检查医院", |
"navigationBarTitleText": "医院详情", |
||||||
"usingComponents": {} |
"usingComponents": {} |
||||||
} |
} |
||||||
|
Before Width: | Height: | Size: 418 KiB After Width: | Height: | Size: 1.7 MiB |
Before Width: | Height: | Size: 2.4 MiB After Width: | Height: | Size: 4.9 MiB |
After Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 28 KiB |
After Width: | Height: | Size: 22 KiB |
After Width: | Height: | Size: 738 KiB |
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 4.0 KiB |
@ -1,4 +1,6 @@ |
|||||||
{ |
{ |
||||||
"navigationBarTitleText": "出血记录", |
"navigationBarTitleText": "出血记录", |
||||||
"usingComponents": {} |
"usingComponents": { |
||||||
|
"popup": "/components/popup/index" |
||||||
|
} |
||||||
} |
} |
||||||
|