Browse Source

2.0版本开发

2.0
kola-web 10 hours ago
parent
commit
1919c34218
  1. 12
      README.md
  2. 2
      project.config.json
  3. 32
      project.private.config.json
  4. 6
      src/app.json
  5. 12
      src/app.ts
  6. 174
      src/components/popup/index.scss
  7. 72
      src/components/popup/index.wxml
  8. BIN
      src/images/bg10.png
  9. BIN
      src/images/bg7.png
  10. BIN
      src/images/bg8.png
  11. BIN
      src/images/bg9.png
  12. BIN
      src/images/body1.png
  13. BIN
      src/images/icon28.png
  14. BIN
      src/images/icon29.png
  15. BIN
      src/images/icon30.png
  16. BIN
      src/images/icon31.png
  17. BIN
      src/images/icon32.png
  18. BIN
      src/images/icon33.png
  19. BIN
      src/images/icon34.png
  20. BIN
      src/images/icon35.png
  21. BIN
      src/images/icon36.png
  22. BIN
      src/images/icon37.png
  23. BIN
      src/images/icon38.png
  24. BIN
      src/images/icon39.png
  25. BIN
      src/images/icon40.png
  26. BIN
      src/images/icon41.png
  27. BIN
      src/images/icon42.png
  28. BIN
      src/images/icon43.png
  29. BIN
      src/images/icon44.png
  30. BIN
      src/images/icon45.png
  31. BIN
      src/images/icon46.png
  32. BIN
      src/images/icon47.png
  33. 2
      src/pages/index/index.scss
  34. 46
      src/patient/pages/askPatient/index.scss
  35. 5
      src/patient/pages/askPatient/index.ts
  36. 36
      src/patient/pages/askPatient/index.wxml
  37. 6
      src/patient/pages/casesAdd/index.json
  38. 369
      src/patient/pages/casesAdd/index.scss
  39. 17
      src/patient/pages/casesAdd/index.ts
  40. 187
      src/patient/pages/casesAdd/index.wxml
  41. 7
      src/patient/pages/course/index.json
  42. 173
      src/patient/pages/course/index.scss
  43. 28
      src/patient/pages/course/index.ts
  44. 218
      src/patient/pages/course/index.wxml
  45. 6
      src/patient/pages/doctorList/index.json
  46. 63
      src/patient/pages/doctorList/index.scss
  47. 14
      src/patient/pages/doctorList/index.ts
  48. 28
      src/patient/pages/doctorList/index.wxml
  49. 5
      src/patient/pages/home/index.ts
  50. 2
      src/patient/pages/home/index.wxml
  51. 8
      src/patient/pages/selectHostipal/index.json
  52. 118
      src/patient/pages/selectHostipal/index.scss
  53. 23
      src/patient/pages/selectHostipal/index.ts
  54. 49
      src/patient/pages/selectHostipal/index.wxml

12
README.md

@ -1,11 +1,19 @@ @@ -1,11 +1,19 @@
## global color
<!--图片文件夹svn地址-->
svn://39.106.86.127:28386/projects/wutian_xueyoubing_b/proj_src/shop/frontend/web/GeneB
(/images/)(\S*(?=["|']))
(/images/)(\S\*(?=["|']))
{{imageUrl}}$2?t={{Timestamp}}
https://pic1.zhimg.com/50/v2-8cfef5f9ea7d15963af2277c6814f152_720w.jpg?source=2c26e567
### conform
https://pic1.zhimg.com/50/v2-8cfef5f9ea7d15963af2277c6814f152_720w.jpg?source=2c26e567
```js
wx.showModal({
title: '确认解绑?',
confirmColor: 'rgba(246, 74, 58, 1)',
})
```

2
project.config.json

@ -66,7 +66,7 @@ @@ -66,7 +66,7 @@
],
"include": []
},
"appid": "wx96104303877e3fd9",
"appid": "wxa4ece062e60e93a5",
"scripts": {
"beforeCompile": "pnpm run beforeCompile",
"beforePreview": "pnpm run beforeCompile",

32
project.private.config.json

@ -23,13 +23,41 @@ @@ -23,13 +23,41 @@
"miniprogram": {
"list": [
{
"name": "患者-问医生",
"pathName": "patient/pages/askPatient/index",
"name": "患者-病例信息",
"pathName": "patient/pages/casesAdd/index",
"query": "",
"scene": null,
"launchMode": "default"
},
{
"name": "患者-选择医院",
"pathName": "patient/pages/selectHostipal/index",
"query": "",
"launchMode": "default",
"scene": null
},
{
"name": "患者-诊疗流程",
"pathName": "patient/pages/course/index",
"query": "",
"launchMode": "default",
"scene": null
},
{
"name": "患者-医生列表",
"pathName": "patient/pages/doctorList/index",
"query": "",
"launchMode": "default",
"scene": null
},
{
"name": "患者-问医生",
"pathName": "patient/pages/askPatient/index",
"query": "",
"launchMode": "default",
"scene": null
},
{
"name": "知识夸详情-文章",
"pathName": "pages/knowledgeDetail/index",
"query": "id=15",

6
src/app.json

@ -20,7 +20,11 @@ @@ -20,7 +20,11 @@
"pages/login/index",
"pages/entryInfo/index",
"pages/home/index",
"pages/askPatient/index"
"pages/askPatient/index",
"pages/doctorList/index",
"pages/course/index",
"pages/selectHostipal/index",
"pages/casesAdd/index"
]
},
{

12
src/app.ts

@ -17,15 +17,15 @@ App<IAppOption>({ @@ -17,15 +17,15 @@ App<IAppOption>({
globalData: {
// dev
// appid:wxa4ece062e60e93a5
// url: 'https://m.wtx.hbraas.com',
// upFileUrl: 'https://m.wtx.hbraas.com/',
// imageUrl: 'https://m.wtx.hbraas.com/GeneB/',
url: 'https://m.wtx.hbraas.com',
upFileUrl: 'https://m.wtx.hbraas.com/',
imageUrl: 'https://m.wtx.hbraas.com/GeneB/',
// pro
// appid:wx96104303877e3fd9
url: 'https://m.gene.hbsaas.com',
upFileUrl: 'https://m.gene.hbsaas.com/',
imageUrl: 'https://m.gene.hbsaas.com/GeneB/',
// url: 'https://m.gene.hbsaas.com',
// upFileUrl: 'https://m.gene.hbsaas.com/',
// imageUrl: 'https://m.gene.hbsaas.com/GeneB/',
Timestamp: new Date().getTime(),
scene: {},

174
src/components/popup/index.scss

@ -249,6 +249,180 @@ @@ -249,6 +249,180 @@
}
}
.popup6 {
.container {
padding: 330rpx 0 0;
width: 510rpx;
height: 490rpx;
box-sizing: border-box;
text-align: center;
.title {
font-size: 36rpx;
color: rgba(1, 1, 5, 1);
font-weight: bold;
}
.content {
margin-top: 20rpx;
font-size: 32rpx;
color: rgba(1, 1, 5, 1);
}
}
}
.popup7 {
.container {
padding: 64rpx 66rpx 136rpx;
background: linear-gradient(6deg, #ffffff 0%, #ffdcd9 100%);
.title {
font-size: 36rpx;
color: rgba(1, 1, 5, 1);
font-weight: bold;
text-align: center;
}
.content {
margin-top: 24rpx;
font-size: 28rpx;
color: rgba(167, 169, 177, 1);
text-align: center;
}
.status-wrap {
margin-top: 28rpx;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20rpx;
.s-item {
.icon {
display: block;
width: 192rpx;
height: 192rpx;
}
.s-content {
position: relative;
margin: 0 auto;
padding: 16rpx;
font-size: 28rpx;
color: rgba(137, 141, 151, 1);
background: rgba(247, 247, 250, 1);
line-height: 36rpx;
border-radius: 12rpx;
text-align: center;
border: 1px solid rgba(247, 247, 250, 1);
.radio {
display: none;
position: absolute;
right: -1px;
bottom: -1px;
width: 32rpx;
height: 32rpx;
border-radius: 12rpx 0 12rpx 0;
background-color: rgba(246, 74, 58, 1);
.r-icon {
width: 24rpx;
height: 24rpx;
}
}
}
&.active {
.s-content {
background-color: rgba(255, 242, 240, 1);
border-color: rgba(246, 74, 58, 1);
color: rgba(246, 74, 58, 1);
.radio {
display: block;
}
}
}
}
}
}
}
.popup8 {
.bg {
position: relative;
margin: 0 auto;
width: 492rpx;
height: 434rpx;
.header {
position: absolute;
top: 0;
left: 0;
width: 100%;
display: flex;
align-items: center;
justify-content: center;
gap: 12rpx;
.icon1 {
width: 36rpx;
height: 36rpx;
}
.icon2 {
width: 35rpx;
height: 43rpx;
}
.name {
font-size: 48rpx;
color: rgba(255, 255, 255, 1);
font-weight: bold;
line-height: 64rpx;
text-align: center;
}
}
}
.container {
margin-top: -180rpx;
position: relative;
padding: 178rpx 36rpx 36rpx;
width: 610rpx;
height: 390rpx;
box-sizing: border-box;
background: linear-gradient(180deg, #ffd6d4 0%, #ffffff 100%);
border-radius: 32rpx;
.icon {
position: absolute;
top: -110rpx;
left: 50%;
transform: translateX(-50%);
width: 280rpx;
height: 280rpx;
}
.title {
font-size: 32rpx;
color: rgba(1, 1, 5, 1);
font-weight: bold;
text-align: center;
}
.footer {
margin-top: 48rpx;
display: flex;
gap: 26rpx;
.cancel {
flex: 1;
padding: 22rpx;
display: flex;
align-items: center;
justify-content: center;
font-size: 32rpx;
color: rgba(246, 74, 58, 1);
border-radius: 84rpx;
border: 1px solid #f64a3a;
}
.submit {
flex: 1;
padding: 22rpx;
display: flex;
align-items: center;
justify-content: center;
font-size: 32rpx;
color: #fff;
background: linear-gradient(356deg, #f23a2f 0%, #fc684f 100%);
border-radius: 84rpx;
border: 1px solid #f64a3a;
}
}
}
}
.close {
margin: 32rpx auto 0;
display: block;

72
src/components/popup/index.wxml

@ -89,5 +89,75 @@ @@ -89,5 +89,75 @@
</view>
</view>
</view>
<image wx:if="{{params.position === 'cenetr'}}" class="close" src="/images/icon25.png" bind:tap="handleCancel"></image>
<view class="popup6" wx:elif="{{type==='selectHostipalComplete'}}">
<view class="container" style="background: url(/images/bg8.png) no-repeat top center/100%">
<view class="title">你真棒!</view>
<view class="content">就诊医院选择成功!</view>
</view>
</view>
<view class="popup6" wx:elif="{{type==='casesAddComplete'}}">
<view class="container" style="background: url(/images/bg8.png) no-repeat top center/100%">
<view class="title">你真棒!</view>
<view class="content">您的病史信息已填写完成!</view>
</view>
</view>
<view class="popup7" wx:elif="{{type==='selectStatus'}}">
<view class="container">
<view class="title">记录下您此次的检查情况吧</view>
<view class="content">请基于您的实际检查结果点选合适的检查状态</view>
<view class="status-wrap">
<view class="s-item active">
<image class="icon" src="/images/icon42.png"></image>
<view class="s-content">
<view>多项不达标</view>
<view>需要关注</view>
<view class="radio">
<image class="r-icon" src="/images/icon45.png"></image>
</view>
</view>
</view>
<view class="s-item">
<image class="icon" src="/images/icon43.png"></image>
<view class="s-content">
<view>少量不达标</view>
<view>但无需担心</view>
<view class="radio">
<image class="r-icon" src="/images/icon45.png"></image>
</view>
</view>
</view>
<view class="s-item">
<image class="icon" src="/images/icon44.png"></image>
<view class="s-content">
<view>整体不错</view>
<view>保持住!</view>
<view class="radio">
<image class="r-icon" src="/images/icon45.png"></image>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="popup8" wx:elif="{{type==='selectStatusComplete'}}">
<view class="bg" style="background: url(/images/bg10.png) no-repeat top center/492rpx 492rpx">
<view class="header">
<image class="icon1" src="/images/icon46.png"></image>
<view class="name">
<view>整体不错</view>
<view>保持住!</view>
</view>
<image class="icon2" src="/images/icon47.png"></image>
</view>
</view>
<view class="container">
<image class="icon" src="/images/icon42.png"></image>
<view class="title">您选择的:诊前筛查结果</view>
<view class="footer">
<view class="cancel">重新选择</view>
<view class="submit">提交</view>
</view>
</view>
</view>
<image wx:if="{{params.close}}" class="close" src="/images/icon25.png" bind:tap="handleCancel"></image>
</van-popup>

BIN
src/images/bg10.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

BIN
src/images/bg7.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 KiB

BIN
src/images/bg8.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 KiB

BIN
src/images/bg9.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

BIN
src/images/body1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

BIN
src/images/icon28.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
src/images/icon29.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
src/images/icon30.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 516 B

BIN
src/images/icon31.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 496 B

BIN
src/images/icon32.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 431 B

BIN
src/images/icon33.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
src/images/icon34.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

BIN
src/images/icon35.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
src/images/icon36.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 725 B

BIN
src/images/icon37.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 495 B

BIN
src/images/icon38.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
src/images/icon39.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 589 B

BIN
src/images/icon40.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
src/images/icon41.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 502 B

BIN
src/images/icon42.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

BIN
src/images/icon43.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

BIN
src/images/icon44.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
src/images/icon45.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 237 B

BIN
src/images/icon46.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 719 B

BIN
src/images/icon47.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 858 B

2
src/pages/index/index.scss

@ -3,6 +3,8 @@ @@ -3,6 +3,8 @@
height: 92rpx;
}
.page {
min-height: 100vh;
box-sizing: border-box;
padding-bottom: 200rpx;
background-color: #f7f7fa;
.banner {

46
src/patient/pages/askPatient/index.scss

@ -14,26 +14,58 @@ page { @@ -14,26 +14,58 @@ page {
.scroll-view {
height: 100%;
.first-ask {
margin-top: 60rpx;
margin-bottom: 32rpx;
padding: 0 32rpx;
.f-header {
padding: 32rpx;
background: linear-gradient(22deg, #ffffff 0%, #fff6f6 100%);
box-shadow: 0rpx 4rpx 32rpx 0rpx rgba(0, 0, 0, 0.06);
border-radius: 24rpx 24rpx 24rpx 24rpx;
border: 2rpx solid #ffffff;
display: flex;
align-items: center;
justify-content: space-between;
.doctor-list {
display: flex;
.doctor-item {
.avatar {
width: 116rpx;
height: 116rpx;
border-radius: 50%;
.left {
position: relative;
height: 72rpx;
.doctor-list {
position: absolute;
top: -80rpx;
display: flex;
gap: 38rpx;
.doctor-item {
.avatar {
margin: 0 auto;
display: block;
width: 116rpx;
height: 116rpx;
border-radius: 50%;
}
.name {
margin: -20rpx auto 0;
width: 116rpx;
height: 36rpx;
line-height: 36rpx;
font-size: 24rpx;
color: rgba(255, 255, 255, 1);
text-align: center;
background: linear-gradient(356deg, #f23a2f 0%, #fc684f 100%);
border-radius: 35rpx 35rpx 35rpx 35rpx;
}
}
}
}
.more {
font-size: 28rpx;
color: rgba(161, 164, 172, 1);
}
}
.f-list {
margin-top: 40rpx;
padding: 32rpx;
border-radius: 32rpx;
box-shadow: 0rpx 4rpx 32rpx 0rpx rgba(0, 0, 0, 0.06);
background: linear-gradient(12deg, #fff2db 0%, #fdc1bd 100%);
border: 2rpx solid #ffffff;
.content {

5
src/patient/pages/askPatient/index.ts

@ -245,6 +245,11 @@ Page({ @@ -245,6 +245,11 @@ Page({
}, 300)
}
},
handleDoctorList() {
wx.navigateTo({
url: '/patient/pages/doctorList/index',
})
},
handleBack() {
wx.navigateBack()
},

36
src/patient/pages/askPatient/index.wxml

@ -1,9 +1,9 @@ @@ -1,9 +1,9 @@
<navbar fixed title="大家都在问" custom-style="background:{{background}}" back>
<navbar fixed title="问医生" custom-style="background:{{background}}" back>
<van-icon name="arrow-left" slot="left" size="18px" color="#000" bind:tap="handleBack" />
</navbar>
<view
class="page"
style="background: url('{{imageUrl}}bg1.png?t={{Timestamp}}') no-repeat top center/100% 602rpx;padding-top:{{pageTop+21}}px;"
style="background: url('{{imageUrl}}bg7.png?t={{Timestamp}}') no-repeat top center/100% 602rpx;padding-top:{{pageTop+21}}px;"
>
<view class="page-container" id="page-container">
<scroll-view
@ -16,23 +16,25 @@ @@ -16,23 +16,25 @@
>
<view class="first-ask" wx:if="{{headerQuestionList.length}}">
<view class="f-header">
<view class="doctor-list">
<view class="doctor">
<image
class="avatar"
src="https://pic1.zhimg.com/50/v2-8cfef5f9ea7d15963af2277c6814f152_720w.jpg?source=2c26e567"
></image>
<view class="name">王青</view>
</view>
<view class="doctor">
<image
class="avatar"
src="https://pic1.zhimg.com/50/v2-8cfef5f9ea7d15963af2277c6814f152_720w.jpg?source=2c26e567"
></image>
<view class="name">刘湖飞</view>
<view class="left">
<view class="doctor-list">
<view class="doctor-item">
<image
class="avatar"
src="https://pic1.zhimg.com/50/v2-8cfef5f9ea7d15963af2277c6814f152_720w.jpg?source=2c26e567"
></image>
<view class="name">王青</view>
</view>
<view class="doctor-item">
<image
class="avatar"
src="https://pic1.zhimg.com/50/v2-8cfef5f9ea7d15963af2277c6814f152_720w.jpg?source=2c26e567"
></image>
<view class="name">刘湖飞</view>
</view>
</view>
</view>
<view class="more">
<view class="more" bind:tap="handleDoctorList">
查看医生介绍
<van-icon name="arrow" />
</view>

6
src/patient/pages/casesAdd/index.json

@ -0,0 +1,6 @@ @@ -0,0 +1,6 @@
{
"navigationBarTitleText": "补充我的病史信息",
"usingComponents": {
"popup": "/components/popup/index"
}
}

369
src/patient/pages/casesAdd/index.scss

@ -0,0 +1,369 @@ @@ -0,0 +1,369 @@
page {
background-color: rgba(247, 247, 250, 1);
}
.page {
padding: 40rpx 30rpx calc(42rpx + env(safe-area-inset-bottom));
height: 100vh;
box-sizing: border-box;
display: flex;
flex-direction: column;
.progress {
flex-shrink: 0;
padding: 0 50rpx 50rpx;
display: flex;
align-items: center;
justify-content: space-between;
gap: 6rpx;
.p-item {
position: relative;
flex-shrink: 0;
.circle {
background: #fff;
padding: 12rpx;
border-radius: 0rpx 0rpx 0rpx 0rpx;
border: 6rpx solid rgba(231, 231, 236, 1);
border-radius: 50%;
.icon {
display: block;
width: 48rpx;
height: 48rpx;
}
}
.name {
position: absolute;
bottom: -50rpx;
left: 50%;
transform: translateX(-50%);
font-size: 32rpx;
color: rgba(161, 164, 172, 1);
white-space: nowrap;
}
&.active {
.circle {
background-color: rgba(246, 74, 58, 1);
border-color: #fff;
box-shadow: 0rpx 4rpx 24rpx 0rpx rgba(0, 0, 0, 0.13);
}
.name {
color: rgba(1, 1, 5, 1);
}
}
}
.line {
flex: 1;
border-top: 2px dashed rgba(231, 231, 236, 1);
&.active {
border-color: rgba(246, 74, 58, 1);
}
}
}
.tip-card {
flex-shrink: 0;
padding: 12rpx 24rpx;
margin-top: 32rpx;
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
font-size: 28rpx;
color: rgba(250, 118, 45, 1);
line-height: 36rpx;
min-height: 82rpx;
box-sizing: border-box;
text-align: center;
background: #fff1e2;
border-radius: 24rpx 24rpx 24rpx 24rpx;
.blod {
font-weight: bold;
}
}
.swiper {
margin-top: 32rpx;
flex: 1;
.swiper-item {
height: 100%;
display: flex;
flex-direction: column;
justify-content: space-between;
.scroll-view0 {
flex: 1;
height: 40vh;
.card {
margin-bottom: 24rpx;
padding: 0 32rpx;
background: #ffffff;
border-radius: 24rpx 24rpx 24rpx 24rpx;
.row {
display: flex;
border-bottom: 1px solid rgba(247, 247, 250, 1);
&:last-of-type {
border: none;
}
.label {
width: 6em;
flex-shrink: 0;
padding: 32rpx 0;
font-size: 32rpx;
color: rgba(1, 1, 5, 1);
}
.container {
flex: 1;
.date {
.date-content {
padding: 32rpx 0;
font-size: 32rpx;
color: rgba(1, 1, 5, 1);
display: flex;
justify-content: space-between;
align-items: center;
&::before {
display: inline;
content: attr(data-place);
color: rgba(161, 164, 172, 0.5);
}
&::after {
content: '';
width: 0;
height: 0;
border-style: solid;
border-width: 10rpx 10rpx 0 10rpx;
border-color: rgba(207, 209, 213, 1) transparent transparent transparent;
}
}
}
.input-wrap {
display: flex;
justify-content: space-between;
align-items: center;
.input {
flex: 1;
padding: 32rpx 0;
color: rgba(1, 1, 5, 1);
}
.place-input {
color: rgba(161, 164, 172, 0.5);
}
.unit {
flex-shrink: 0;
}
}
.select {
padding: 20rpx 0;
display: grid;
gap: 14rpx;
&.select3 {
grid-template-columns: repeat(3, 1fr);
}
&.select2 {
grid-template-columns: repeat(2, 1fr);
}
.s-item {
padding: 12rpx;
font-size: 32rpx;
color: rgba(137, 141, 151, 1);
line-height: 40rpx;
background-color: rgba(247, 247, 250, 1);
text-align: center;
border-radius: 12rpx;
&.active {
color: #fff;
background-color: rgba(246, 74, 58, 1);
}
}
}
.tip {
padding-bottom: 32rpx;
font-size: 24rpx;
color: rgba(161, 164, 172, 0.5);
}
}
}
}
}
.scroll-view1 {
flex: 1;
height: 40vh;
.card {
margin-bottom: 24rpx;
padding: 0 32rpx;
background: #ffffff;
border-radius: 24rpx 24rpx 24rpx 24rpx;
.row {
display: flex;
border-bottom: 1px solid rgba(247, 247, 250, 1);
flex-wrap: wrap;
&:last-of-type {
border: none;
}
.label {
width: 9em;
flex-shrink: 0;
padding: 32rpx 0;
font-size: 32rpx;
color: rgba(1, 1, 5, 1);
}
.container {
flex: 1;
.select {
padding: 20rpx 0;
display: grid;
gap: 14rpx;
&.select4 {
grid-template-columns: repeat(4, 1fr);
}
&.select3 {
grid-template-columns: repeat(3, 1fr);
}
&.select2 {
grid-template-columns: repeat(2, 1fr);
}
.s-item {
padding: 12rpx;
font-size: 32rpx;
color: rgba(137, 141, 151, 1);
line-height: 40rpx;
background-color: rgba(247, 247, 250, 1);
text-align: center;
border-radius: 12rpx;
&.active {
color: #fff;
background-color: rgba(246, 74, 58, 1);
}
}
}
.tip {
padding-bottom: 32rpx;
font-size: 24rpx;
color: rgba(161, 164, 172, 0.5);
}
}
}
.row1 {
border-bottom: 1px solid rgba(247, 247, 250, 1);
flex-wrap: wrap;
&:last-of-type {
border: none;
}
.label {
width: 9em;
flex-shrink: 0;
padding: 32rpx 0;
font-size: 32rpx;
color: rgba(1, 1, 5, 1);
}
.container {
flex: 1;
.select {
padding: 0 0 32rpx;
display: grid;
gap: 14rpx;
&.select4 {
grid-template-columns: repeat(4, 1fr);
}
.s-item {
padding: 12rpx;
font-size: 32rpx;
color: rgba(137, 141, 151, 1);
line-height: 40rpx;
background-color: rgba(247, 247, 250, 1);
text-align: center;
border-radius: 12rpx;
&.active {
color: #fff;
background-color: rgba(246, 74, 58, 1);
}
}
}
.tip {
padding-bottom: 32rpx;
font-size: 24rpx;
color: rgba(161, 164, 172, 0.5);
}
}
}
.auto-input {
padding-bottom: 32rpx;
.input {
padding: 22rpx 32rpx;
background: #f7f7fa;
border-radius: 12rpx;
font-size: 32rpx;
color: rgba(1, 1, 5, 1);
}
.place-input {
color: rgba(161, 164, 172, 0.5);
}
}
}
}
.scroll-view2 {
flex: 1;
height: 40vh;
.card {
margin-bottom: 24rpx;
padding: 0 32rpx;
background: #ffffff;
border-radius: 24rpx 24rpx 24rpx 24rpx;
.title {
padding: 32rpx 0 24rpx;
font-size: 36rpx;
color: rgba(1, 1, 5, 1);
font-weight: bold;
}
.body {
position: relative;
margin: 112rpx auto 0;
padding-bottom: 24rpx;
width: 345rpx;
height: 417rpx;
}
.auto-area {
padding-bottom: 32rpx;
.textarea {
width: 100%;
padding: 22rpx 32rpx;
background: #f7f7fa;
border-radius: 12rpx;
font-size: 32rpx;
color: rgba(1, 1, 5, 1);
height: 150rpx;
box-sizing: border-box;
}
.place-textarea {
color: rgba(161, 164, 172, 0.5);
}
}
}
}
.footer {
margin-top: 32rpx;
flex-shrink: 0;
display: flex;
align-items: center;
gap: 22rpx;
.cancel {
flex: 1;
padding: 18rpx;
font-size: 32rpx;
color: rgba(246, 74, 58, 1);
line-height: 44rpx;
border-radius: 112rpx;
border: 2px solid #f64a3a;
text-align: center;
}
.submit {
flex: 1;
padding: 18rpx;
font-size: 32rpx;
color: rgba(255, 255, 255, 1);
line-height: 44rpx;
border-radius: 112rpx;
border: 2px solid #f64a3a;
background-color: #f64a3a;
text-align: center;
}
}
}
}
}

17
src/patient/pages/casesAdd/index.ts

@ -0,0 +1,17 @@ @@ -0,0 +1,17 @@
const _app = getApp<IAppOption>()
Page({
data: {
popupShow: true,
popupType: 'casesAddComplete',
popupParams: {
close: true,
content: '',
},
current: 2,
},
onLoad() {},
})
export {}

187
src/patient/pages/casesAdd/index.wxml

@ -0,0 +1,187 @@ @@ -0,0 +1,187 @@
<view class="page">
<view class="progress">
<view class="p-item active">
<view class="circle">
<image wx:if="{{current >= 1}}" class="icon" src="/images/icon41.png"></image>
<image wx:else class="icon" src="/images/icon36.png"></image>
</view>
<view class="name">1.健康基础</view>
</view>
<view class="line {{current >=1 && 'active'}}"></view>
<view class="p-item {{current >=1 && 'active'}}">
<view class="circle">
<image wx:if="{{current>=2}}" class="icon" src="/images/icon41.png"></image>
<image wx:elif="{{current >= 1}}" class="icon" src="/images/icon37.png"></image>
<image wx:else class="icon" src="/images/icon39.png"></image>
</view>
<view class="name">2.既往病史</view>
</view>
<view class="line {{current>=2 && 'active'}}"></view>
<view class="p-item {{current>=2 && 'active'}}">
<view class="circle">
<image wx:if="{{current>=2}}" class="icon" src="/images/icon38.png"></image>
<image wx:else class="icon" src="/images/icon40.png"></image>
<!-- <image class="icon" src="/images/icon41.png"></image> -->
</view>
<view class="name">3.关节情况</view>
</view>
</view>
<view wx:if="{{current==0}}" class="tip-card">预计填写时间 1 分钟,请您如实填写哦~</view>
<view wx:elif="{{current==1}}" class="tip-card">已完成 50% 了,请继续填写哦~</view>
<view wx:elif="{{current==2}}" class="tip-card">
<view class="blod">最后 1 步啦!感谢您的耐心填写~</view>
<view>对健康负责,就是对自己和家人最好的关爱</view>
</view>
<swiper current="{{current}}" class="swiper">
<swiper-item class="swiper-item">
<scroll-view class="scroll-view0" scroll-y>
<view class="card">
<view class="row">
<view class="label">确诊时间</view>
<view class="container">
<picker mode="date" class="date">
<view class="date-content" data-place="请选择确诊时间"></view>
</picker>
</view>
</view>
<view class="row">
<view class="label">您的体重</view>
<view class="container">
<view class="input-wrap">
<input class="input" placeholder-class="place-input" type="number" value="" placeholder="请输入" />
<view class="unit">kg</view>
</view>
</view>
</view>
</view>
<view class="card">
<view class="row">
<view class="label">严重程度</view>
<view class="container">
<view class="select select3">
<view class="s-item">轻度</view>
<view class="s-item">中度</view>
<view class="s-item">重度</view>
</view>
</view>
</view>
<view class="row">
<view class="label">治疗方案</view>
<view class="container">
<view class="select select2">
<view class="s-item">预防治疗</view>
<view class="s-item">按需治疗</view>
</view>
</view>
</view>
<view class="row">
<view class="label">FIX暴露日</view>
<view class="container">
<view class="input-wrap">
<input class="input" placeholder-class="place-input" type="number" value="" placeholder="请输入" />
<view class="unit">个</view>
</view>
<view class="tip">在某一天接受1次或多次凝血因子输注,该天计为1个暴露日</view>
</view>
</view>
</view>
</scroll-view>
<view class="footer">
<view class="cancel">取消</view>
<view class="submit">下一步</view>
</view>
</swiper-item>
<swiper-item class="swiper-item">
<scroll-view class="scroll-view1" scroll-y>
<view class="card">
<view class="row">
<view class="label">既往FIX抑制物病史</view>
<view class="container">
<view class="select select2">
<view class="s-item">有</view>
<view class="s-item active">没有</view>
</view>
</view>
</view>
<view class="row">
<view class="label">既往肝脏疾病病史</view>
<view class="container">
<view class="select select2">
<view class="s-item">有</view>
<view class="s-item active">没有</view>
</view>
</view>
</view>
<view class="auto-input">
<input class="input" placeholder-class="place-input" type="text" placeholder="您的肝脏疾病是?" />
</view>
</view>
<view class="card">
<view class="row1">
<view class="label">您是否有饮酒史?</view>
<view class="container">
<view class="select select4">
<view class="s-item">从不</view>
<view class="s-item active">偶尔</view>
<view class="s-item">经常</view>
<view class="s-item">已戒酒</view>
</view>
</view>
</view>
<view class="row">
<view class="label">您是否有饮酒史?</view>
<view class="container">
<view class="select select2">
<view class="s-item">有</view>
<view class="s-item active">没有</view>
</view>
</view>
</view>
<view class="auto-input">
<input
class="input"
placeholder-class="place-input"
type="text"
placeholder="请填写您的过敏情况,药物、饮食等"
/>
</view>
</view>
</scroll-view>
<view class="footer">
<view class="cancel">取消</view>
<view class="submit">下一步</view>
</view>
</swiper-item>
<swiper-item class="swiper-item">
<scroll-view class="scroll-view2" scroll-y>
<view class="card" style="background: #fff url(/images/bg9.png) no-repeat top right 0/666rpx 492rpx">
<view class="title">您的靶关节</view>
<view class="body" style="background: #fff url(/images/body1.png) no-repeat top center/345rpx 417rpx"></view>
</view>
<view class="card">
<view class="title">您近6个月的出血情况</view>
<view class="auto-area">
<textarea
class="textarea"
placeholder-class="place-textarea"
disable-default-padding
placeholder="出血频次、出血部位、出血原因等"
></textarea>
</view>
</view>
</scroll-view>
<view class="footer">
<view class="cancel">取消</view>
<view class="submit">完成</view>
</view>
</swiper-item>
</swiper>
</view>
<popup
show="{{popupShow}}"
type="{{popupType}}"
params="{{popupParams}}"
bind:ok="handlePopupOk"
bind:cancel="handlePopupCancel"
></popup>

7
src/patient/pages/course/index.json

@ -0,0 +1,7 @@ @@ -0,0 +1,7 @@
{
"navigationStyle": "custom",
"usingComponents": {
"navbar": "/components/navbar/index",
"popup": "/components/popup/index"
}
}

173
src/patient/pages/course/index.scss

@ -0,0 +1,173 @@ @@ -0,0 +1,173 @@
.page {
height: 100vh;
display: flex;
flex-direction: column;
.pgae-header {
flex-shrink: 0;
padding: 0 40rpx 38rpx;
background: linear-gradient(180deg, #fee1e0 0%, #ffffff 100%);
box-shadow: 0rpx 8rpx 8rpx 0rpx rgba(0, 0, 0, 0.07);
border-radius: 0rpx 0rpx 0rpx 0rpx;
.title {
font-size: 40rpx;
color: rgba(1, 1, 5, 1);
font-weight: bold;
}
.content {
margin-top: 6rpx;
font-size: 32rpx;
color: rgba(1, 1, 5, 1);
}
}
.page-container {
flex: 1;
.swiper {
height: 100%;
.swiper-item {
.scroll-view {
height: 100%;
.scroll-view-container {
height: 100%;
padding: 88rpx 40rpx 0;
box-sizing: border-box;
display: flex;
flex-direction: column;
.row {
flex-shrink: 0;
display: flex;
gap: 24rpx;
.aside {
flex-shrink: 0;
width: 64rpx;
display: flex;
flex-direction: column;
align-items: center;
.num {
width: 64rpx;
height: 64rpx;
display: flex;
align-items: center;
justify-content: center;
font-size: 38rpx;
color: rgba(255, 255, 255, 1);
background: linear-gradient(356deg, #f23a2f 0%, #fc684f 100%);
box-shadow: 0rpx 13rpx 26rpx 0rpx rgba(151, 151, 151, 0.05);
border-radius: 50%;
}
.radio {
width: 48rpx;
height: 48rpx;
}
.slow-line {
height: 32rpx;
width: 4rpx;
background-color: rgba(246, 74, 58, 1);
}
.line {
flex: 1;
width: 4rpx;
background-color: rgba(246, 74, 58, 1);
}
}
.container {
padding-bottom: 84rpx;
.c-header {
.title {
font-size: 44rpx;
color: rgba(246, 74, 58, 1);
line-height: 64rpx;
font-weight: bold;
}
.content {
margin-top: 20rpx;
font-size: 28rpx;
color: rgba(161, 164, 172, 1);
line-height: 40rpx;
}
}
.c-body {
padding: 18rpx 42rpx;
min-height: 104rpx;
box-sizing: border-box;
background: #ffffff;
border-radius: 96rpx 96rpx 96rpx 96rpx;
border: 4rpx solid #f64a3a;
display: flex;
align-items: center;
gap: 32rpx;
.wrap {
.content {
font-size: 32rpx;
color: rgba(1, 1, 5, 1);
font-weight: bold;
}
.hostipl-name {
margin-top: 4rpx;
padding-left: 28rpx;
font-size: 28rpx;
color: rgba(161, 164, 172, 1);
line-height: 40rpx;
}
}
.icon {
width: 40rpx;
height: 40rpx;
}
.status-icon {
position: relative;
width: 80rpx;
height: 40rpx;
.s-icon {
position: absolute;
top: 50%;
left: 0;
transform: translateY(-50%);
width: 100rpx;
height: 100rpx;
}
}
}
.c-footer {
margin-top: 16rpx;
padding-left: 44rpx;
.content {
font-size: 28rpx;
color: rgba(161, 164, 172, 1);
}
.bind-doctor {
font-size: 28rpx;
color: rgba(246, 74, 58, 1);
line-height: 40rpx;
margin-bottom: -40rpx;
}
}
}
}
.row:first-of-type {
.container {
padding-bottom: 48rpx;
}
}
.grow-row {
flex: 1;
display: flex;
gap: 24rpx;
.aside {
flex-shrink: 0;
width: 64rpx;
display: flex;
flex-direction: column;
align-items: center;
.line {
flex: 1;
width: 4rpx;
background-color: rgba(246, 74, 58, 1);
}
}
}
}
}
}
}
}
}

28
src/patient/pages/course/index.ts

@ -0,0 +1,28 @@ @@ -0,0 +1,28 @@
const _app = getApp<IAppOption>()
Page({
data: {
popupShow: false,
// popupType: 'selectStatus',
popupType: 'selectStatusComplete',
popupParams: {
// position: 'bottom',
},
},
onLoad() {},
handleSelectHostipal() {
wx.navigateTo({
url: '/patient/pages/selectHostipal/index',
})
},
handleCasesAdd() {
wx.navigateTo({
url: '/patient/pages/casesAdd/index',
})
},
handleBack() {
wx.navigateBack()
},
})
export {}

218
src/patient/pages/course/index.wxml

@ -0,0 +1,218 @@ @@ -0,0 +1,218 @@
<navbar fixed custom-style="background:{{background}}" back>
<van-icon name="arrow-left" slot="left" size="18px" color="#000" bind:tap="handleBack" />
</navbar>
<view class="page">
<view class="pgae-header" style="padding-top:{{pageTop + 30}}px">
<view class="title">我的专属诊疗流程</view>
<view class="content">从开始治疗到长期随访全周期流程</view>
</view>
<view class="page-container">
<swiper class="swiper" vertical>
<swiper-item class="swiper-item">
<scroll-view class="scroll-view" show-scrollbar="{{false}}">
<view class="scroll-view-container">
<view class="row">
<view class="aside">
<view class="num">1</view>
<view class="line"></view>
</view>
<view class="container">
<view class="c-header">
<view class="title">准备您的诊前筛查</view>
<view class="content">
<view>关注每次检查</view>
<view>是对自己和家人的关爱!</view>
</view>
</view>
</view>
</view>
<view class="row" bind:tap="handleSelectHostipal">
<view class="aside">
<view class="slow-line"></view>
<!-- <image class="radio" src="/images/icon28.png"></image> -->
<image class="radio" src="/images/icon29.png"></image>
<view class="line"></view>
</view>
<view class="container">
<view class="c-body">
<view class="wrap">
<view class="content">1.您的诊前检查医院</view>
<view class="hostipl-name">唐山市人民医院</view>
</view>
<image class="icon" src="/images/icon30.png"></image>
</view>
<view class="c-footer">
<view class="bind-doctor">
绑定我的医生
<van-icon name="arrow" />
</view>
</view>
</view>
</view>
<view class="row" bind:tap="handleCasesAdd">
<view class="aside">
<view class="slow-line"></view>
<image class="radio" src="/images/icon28.png"></image>
<view class="line"></view>
</view>
<view class="container">
<view class="c-body">
<view class="wrap">
<view class="content">2.补充我的病史信息</view>
</view>
<image class="icon" src="/images/icon30.png"></image>
</view>
</view>
</view>
<view class="row">
<view class="aside">
<view class="slow-line"></view>
<image class="radio" src="/images/icon28.png"></image>
<view class="line"></view>
</view>
<view class="container">
<view class="c-body">
<view class="wrap">
<view class="content">3.我的诊前检查报告</view>
</view>
<image class="icon" src="/images/icon31.png"></image>
</view>
</view>
</view>
<view class="row">
<view class="aside">
<view class="slow-line"></view>
<image class="radio" src="/images/icon28.png"></image>
<view class="line"></view>
</view>
<view class="container">
<view class="c-body">
<view class="wrap">
<view class="content">4.我的检查红绿灯</view>
</view>
<view class="status-icon">
<image class="s-icon" src="/images/icon42.png"></image>
</view>
</view>
<view class="c-footer">
<view class="content">本阶段检查如何?</view>
</view>
</view>
</view>
<view class="grow-row">
<view class="aside">
<view class="line"></view>
</view>
<view class="container"></view>
</view>
</view>
</scroll-view>
</swiper-item>
<swiper-item class="swiper-item">
<scroll-view class="scroll-view" show-scrollbar="{{false}}">
<view class="scroll-view-container">
<view class="row">
<view class="aside">
<view class="num">2</view>
<view class="line"></view>
</view>
<view class="container">
<view class="c-header">
<view class="title">准备您的诊前筛查</view>
<view class="content">
<view>关注每次检查</view>
<view>是对自己和家人的关爱!</view>
</view>
</view>
</view>
</view>
<view class="row">
<view class="aside">
<view class="slow-line"></view>
<!-- <image class="radio" src="/images/icon28.png"></image> -->
<image class="radio" src="/images/icon29.png"></image>
<view class="line"></view>
</view>
<view class="container">
<view class="c-body">
<view class="wrap">
<view class="content">1.您的诊前检查医院</view>
<view class="hostipl-name">唐山市人民医院</view>
</view>
<image class="icon" src="/images/icon30.png"></image>
</view>
<view class="c-footer">
<view class="bind-doctor">
绑定我的医生
<van-icon name="arrow" />
</view>
</view>
</view>
</view>
<view class="row">
<view class="aside">
<view class="slow-line"></view>
<image class="radio" src="/images/icon28.png"></image>
<view class="line"></view>
</view>
<view class="container">
<view class="c-body">
<view class="wrap">
<view class="content">2.补充我的病史信息</view>
</view>
<image class="icon" src="/images/icon30.png"></image>
</view>
</view>
</view>
<view class="row">
<view class="aside">
<view class="slow-line"></view>
<image class="radio" src="/images/icon28.png"></image>
<view class="line"></view>
</view>
<view class="container">
<view class="c-body">
<view class="wrap">
<view class="content">3.我的诊前检查报告</view>
</view>
<image class="icon" src="/images/icon31.png"></image>
</view>
</view>
</view>
<view class="row">
<view class="aside">
<view class="slow-line"></view>
<image class="radio" src="/images/icon28.png"></image>
<view class="line"></view>
</view>
<view class="container">
<view class="c-body">
<view class="wrap">
<view class="content">4.我的检查红绿灯</view>
</view>
</view>
<view class="c-footer">
<view class="content">本阶段检查如何?</view>
</view>
</view>
</view>
<view class="grow-row">
<view class="aside">
<view class="line"></view>
</view>
<view class="container"></view>
</view>
</view>
</scroll-view>
</swiper-item>
</swiper>
</view>
</view>
<popup
show="{{popupShow}}"
type="{{popupType}}"
params="{{popupParams}}"
bind:ok="handlePopupOk"
bind:cancel="handlePopupCancel"
></popup>

6
src/patient/pages/doctorList/index.json

@ -0,0 +1,6 @@ @@ -0,0 +1,6 @@
{
"navigationStyle": "custom",
"usingComponents": {
"navbar": "/components/navbar/index"
}
}

63
src/patient/pages/doctorList/index.scss

@ -0,0 +1,63 @@ @@ -0,0 +1,63 @@
page {
background-color: rgba(247, 247, 250, 1);
}
.page {
padding: 0 40rpx 40rpx;
background: linear-gradient(180deg, #ffffff 0%, rgba(255, 255, 255, 0) 100%);
.card {
margin-top: 40rpx;
padding: 32rpx;
background: #ffffff;
border-radius: 24rpx 24rpx 24rpx 24rpx;
.user {
display: flex;
align-items: center;
justify-content: space-between;
gap: 24rpx;
.avatar {
flex-shrink: 0;
width: 92rpx;
height: 92rpx;
border-radius: 50%;
}
.wrap {
flex: 1;
.w-name {
font-size: 32rpx;
color: rgba(1, 1, 5, 1);
font-weight: bold;
}
.w-content {
margin-top: 16rpx;
line-height: 28rpx;
.hostipal {
margin-right: 12rpx;
display: inline-block;
font-size: 28rpx;
color: rgba(161, 164, 172, 1);
}
.tag {
vertical-align: middle;
display: inline-block;
padding: 0 8rpx;
font-size: 20rpx;
color: rgba(255, 255, 255, 1);
border-radius: 6rpx;
background-color: rgba(255, 186, 1, 1);
}
}
}
.unbind {
font-size: 32rpx;
color: rgba(246, 74, 58, 1);
}
}
.content {
margin-top: 32rpx;
font-size: 28rpx;
color: rgba(161, 164, 172, 1);
line-height: 40rpx;
}
}
}

14
src/patient/pages/doctorList/index.ts

@ -0,0 +1,14 @@ @@ -0,0 +1,14 @@
const _app = getApp<IAppOption>()
Page({
data: {},
onLoad() {},
handleUnbind() {
wx.showModal({
title: '确认解绑?',
confirmColor: 'rgba(246, 74, 58, 1)',
})
},
})
export {}

28
src/patient/pages/doctorList/index.wxml

@ -0,0 +1,28 @@ @@ -0,0 +1,28 @@
<navbar fixed title="医生列表" custom-style="background:{{background}}" back>
<van-icon name="arrow-left" slot="left" size="18px" color="#000" bind:tap="handleBack" />
</navbar>
<view
class="page"
style="background: url('{{imageUrl}}bg7.png?t={{Timestamp}}') no-repeat top center/100% 602rpx;padding-top:{{pageTop}}px;"
>
<view class="card">
<view class="user">
<image
class="avatar"
src="https://pic1.zhimg.com/50/v2-8cfef5f9ea7d15963af2277c6814f152_720w.jpg?source=2c26e567"
></image>
<view class="wrap">
<view class="w-name">王青</view>
<view class="w-content">
<view class="hostipal">北京积水潭医院龙泽院区</view>
<view class="tag">三甲</view>
</view>
</view>
<view class="unbind" bind:tap="handleUnbind">解绑</view>
</view>
<view class="content">
北京积水潭医院龙泽院区副主任医师,有 12 年的
治疗经验。中华医学会血液学分会血栓与止血学组副组长,中国罕见病联盟血友病学组副秘书长,中国血友病青年协作组常务理事长,
</view>
</view>
</view>

5
src/patient/pages/home/index.ts

@ -14,6 +14,11 @@ Page({ @@ -14,6 +14,11 @@ Page({
url: '/patient/pages/askPatient/index',
})
},
handleCourse() {
wx.navigateTo({
url: '/patient/pages/course/index',
})
},
})
export {}

2
src/patient/pages/home/index.wxml

@ -67,7 +67,7 @@ @@ -67,7 +67,7 @@
<view class="content">了解您筛查全部流程和注意事项</view>
</view>
</view>
<view class="btn">查看我的诊疗计划</view>
<view class="btn" bind:tap="handleCourse">查看我的诊疗计划</view>
</view>
</view>
<view class="module1">

8
src/patient/pages/selectHostipal/index.json

@ -0,0 +1,8 @@ @@ -0,0 +1,8 @@
{
"navigationStyle": "custom",
"usingComponents": {
"navbar": "/components/navbar/index",
"popup": "/components/popup/index",
"pickerArea":"/components/pickerArea/index"
}
}

118
src/patient/pages/selectHostipal/index.scss

@ -0,0 +1,118 @@ @@ -0,0 +1,118 @@
page {
background-color: rgba(247, 247, 250, 1);
}
.page {
padding: 32rpx 30rpx;
.bind-doctor {
padding: 30rpx 32rpx;
background: linear-gradient(40deg, #ffffff 0%, #fff3f2 100%);
border-radius: 24rpx 24rpx 24rpx 24rpx;
border: 2rpx solid #ffffff;
display: flex;
align-items: center;
justify-content: space-between;
.title {
font-size: 28rpx;
color: rgba(1, 1, 5, 1);
}
.icon {
width: 40rpx;
height: 40rpx;
}
}
.form {
margin-top: 24rpx;
padding: 32rpx 32rpx 0;
border-radius: 24rpx;
background-color: #fff;
.search {
padding: 16rpx 32rpx;
background: #ffffff;
border: 2px solid rgba(246, 74, 58, 1);
display: flex;
align-items: center;
border-radius: 50rpx;
gap: 16rpx;
.icon {
width: 40rpx;
height: 40rpx;
}
.input {
font-size: 28rpx;
}
.place-input {
color: rgba(161, 164, 172, 1);
}
}
.picker {
margin-top: 16rpx;
display: flex;
align-items: center;
justify-content: space-between;
.picker-item {
flex: 1;
padding: 24rpx;
display: flex;
align-items: center;
justify-content: center;
gap: 12rpx;
font-size: 32rpx;
color: rgba(1, 1, 5, 1);
&::after {
content: '';
width: 0;
height: 0;
border-style: solid;
border-width: 10rpx 10rpx 0 10rpx;
border-color: rgba(207, 209, 213, 1) transparent transparent transparent;
}
}
}
}
.list {
padding-top: 12rpx;
.list-item {
margin-top: 24rpx;
display: flex;
align-items: center;
.aside {
padding-right: 24rpx;
flex-shrink: 0;
.icon {
width: 36rpx;
height: 36rpx;
}
}
.container {
flex: 1;
padding: 36rpx 38rpx;
border-radius: 24rpx;
background-color: #fff;
display: flex;
.logo {
padding: 8rpx;
border-radius: 24rpx;
border: 1px solid #fafafa;
.logo-img {
width: 90rpx;
height: 90rpx;
border-radius: inherit;
}
}
.wrap {
padding-left: 24rpx;
.name {
font-size: 32rpx;
color: rgba(1, 1, 5, 1);
font-weight: bold;
}
.content {
margin-top: 28rpx;
font-size: 28rpx;
color: rgba(161, 164, 172, 1);
}
}
}
}
}
}

23
src/patient/pages/selectHostipal/index.ts

@ -0,0 +1,23 @@ @@ -0,0 +1,23 @@
const _app = getApp<IAppOption>()
Page({
data: {
popupShow: false,
popupType: 'selectHostipalComplete',
popupParams: {
close: true,
content: '',
},
},
onLoad() {},
handlePopupCancel() {
this.setData({
popupShow: false,
})
},
handleBack() {
wx.navigateBack()
},
})
export {}

49
src/patient/pages/selectHostipal/index.wxml

@ -0,0 +1,49 @@ @@ -0,0 +1,49 @@
<navbar fixed title="选择我的诊前检查医院" custom-style="background:{{background}}" back>
<van-icon name="arrow-left" slot="left" size="18px" color="#000" bind:tap="handleBack" />
</navbar>
<view class="page" style="padding-top:{{pageTop + 30}}px">
<view class="bind-doctor">
<view class="title">扫一扫绑定医生,自动定位检查医院</view>
<image class="icon" src="/images/icon32.png"></image>
</view>
<view class="form">
<view class="search">
<image class="icon" src="/images/icon33.png"></image>
<input type="text" placeholder-class="place-input" placeholder="请输入搜索您的诊前检查医院" class="input" />
</view>
<pickerArea>
<view class="picker">
<view class="picker-item">省份</view>
<view class="picker-item">城市</view>
</view>
</pickerArea>
</view>
<view class="list">
<view class="list-item">
<view class="aside">
<image wx:if="{{true}}" class="icon" src="/images/icon34.png"></image>
<image wx:else class="icon" src="/images/icon35.png"></image>
</view>
<view class="container">
<view class="logo">
<image
class="logo-img"
src="https://pic1.zhimg.com/50/v2-8cfef5f9ea7d15963af2277c6814f152_720w.jpg?source=2c26e567"
></image>
</view>
<view class="wrap">
<view class="name">唐山市人民医院</view>
<view class="content">河北省唐山市路南区胜利路65号</view>
</view>
</view>
</view>
</view>
</view>
<popup
show="{{popupShow}}"
type="{{popupType}}"
params="{{popupParams}}"
bind:ok="handlePopupOk"
bind:cancel="handlePopupCancel"
></popup>
Loading…
Cancel
Save