Browse Source

bug处理

main
kola-web 4 months ago
parent
commit
bda990d3c0
  1. 4
      src/echart/components/homeLevel1/index.scss
  2. 2
      src/echart/components/homeLevel2/index.scss
  3. 2
      src/echart/components/homeLevel2/index.ts
  4. 4
      src/echart/components/homeLevel2/index.wxml
  5. 1
      src/echart/components/homeLevel3/index.scss
  6. 2
      src/echart/components/homeLevel3/index.ts
  7. 2
      src/echart/components/homeLevel3/index.wxml
  8. 1
      src/echart/components/homeLevel4/index.ts
  9. 1
      src/module1/pages/auditDoctorDetail/index.scss
  10. 2
      src/module1/pages/auditDoctorDetail/index.wxml
  11. 1
      src/module1/pages/auditDoctorList/index.scss
  12. 2
      src/module1/pages/auditDoctorList/index.ts
  13. 2
      src/module1/pages/casesDetail/index.scss
  14. 6
      src/module1/pages/casesDetail/index.ts
  15. 6
      src/module1/pages/chatRoom/index.scss
  16. 5
      src/module1/pages/chatRoom/index.ts
  17. 52
      src/module1/pages/chatRoom/index.wxml
  18. 2
      src/module1/pages/chatRoomInfo/index.scss
  19. 14
      src/module1/pages/chatRoomInfo/index.ts
  20. 2
      src/module1/pages/chatRoomInfo/index.wxml
  21. 11
      src/module1/pages/invite/index.scss
  22. 10
      src/module1/pages/invite/index.wxml
  23. 1
      src/module1/pages/loginProtool/index.ts
  24. 48
      src/module1/pages/loginProtool/index.wxml
  25. 20
      src/module1/pages/userInfo/index.scss
  26. 29
      src/module1/pages/userInfo/index.ts
  27. 18
      src/module1/pages/userInfo/index.wxml
  28. 1
      src/pages/cases/index.scss
  29. 11
      src/pages/cases/index.ts
  30. 4
      src/pages/cases/index.wxml
  31. 24
      src/pages/chatRoomList/index.scss
  32. 35
      src/pages/chatRoomList/index.ts
  33. 21
      src/pages/chatRoomList/index.wxml
  34. 12
      src/pages/home/index.ts
  35. 1
      src/pages/home/index.wxml
  36. 2
      src/pages/my/index.ts
  37. 2
      src/pages/my/index.wxml

4
src/echart/components/homeLevel1/index.scss

@ -12,6 +12,7 @@ @@ -12,6 +12,7 @@
.wrap {
.w-header {
display: flex;
flex-wrap: wrap;
align-items: baseline;
gap: 16rpx;
.name {
@ -255,6 +256,7 @@ @@ -255,6 +256,7 @@
padding-top: 8rpx;
.w-header {
display: flex;
flex-wrap: wrap;
align-items: baseline;
gap: 16rpx;
line-height: 1;
@ -352,7 +354,7 @@ @@ -352,7 +354,7 @@
font-size: 32rpx;
color: rgba(153, 153, 153, 1);
line-height: 44rpx;
.sub-content{
.sub-content {
font-size: 28rpx;
}
}

2
src/echart/components/homeLevel2/index.scss

@ -26,6 +26,7 @@ @@ -26,6 +26,7 @@
.w-header {
display: flex;
align-items: baseline;
flex-wrap: wrap;
gap: 16rpx;
.name {
font-size: 36rpx;
@ -316,6 +317,7 @@ @@ -316,6 +317,7 @@
.w-header {
display: flex;
align-items: baseline;
flex-wrap: wrap;
gap: 16rpx;
line-height: 1;
.name {

2
src/echart/components/homeLevel2/index.ts

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
const _app = getApp<IAppOption>();
const app = getApp<IAppOption>();
// pages/story/a.ts
Component({

4
src/echart/components/homeLevel2/index.wxml

@ -60,7 +60,7 @@ @@ -60,7 +60,7 @@
style="background: url({{imageUrl}}home-stat-bg.png?r={{Timestamp}}) no-repeat top center/100% 100%;"
>
<view class="title">我管理的病历</view>
<view class="more">
<view class="more" bind:tap="handleCaseUpdate">
查看全部
<van-icon name="arrow" />
</view>
@ -109,7 +109,7 @@ @@ -109,7 +109,7 @@
</view>
<view class="cooperate" wx:if="{{cooperateList.length}}">
<view class="cooperate-header">
<view class="name">我合作的医生({{inviteList.length}})</view>
<view class="name">我合作的医生({{cooperateList.length}})</view>
<view class="fold" bind:tap="toggleFold1">
<block wx:if="{{fold1}}">
展开

1
src/echart/components/homeLevel3/index.scss

@ -25,6 +25,7 @@ @@ -25,6 +25,7 @@
.wrap {
.w-header {
display: flex;
flex-wrap: wrap;
align-items: baseline;
gap: 16rpx;
.name {

2
src/echart/components/homeLevel3/index.ts

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
const _app = getApp<IAppOption>();
const app = getApp<IAppOption>();
// pages/story/a.ts
Component({

2
src/echart/components/homeLevel3/index.wxml

@ -60,7 +60,7 @@ @@ -60,7 +60,7 @@
style="background: url({{imageUrl}}home-stat-bg.png?r={{Timestamp}}) no-repeat top center/100% 100%;"
>
<view class="title">我管理的病历</view>
<!-- <view class="more">
<!-- <view class="more" bind:tap="handleCaseUpdate">
查看全部
<van-icon name="arrow" />
</view> -->

1
src/echart/components/homeLevel4/index.ts

@ -1,4 +1,5 @@ @@ -1,4 +1,5 @@
import dayjs from "dayjs";
const app = getApp<IAppOption>();
const echarts = require("../ec-canvas/echarts.js");

1
src/module1/pages/auditDoctorDetail/index.scss

@ -189,6 +189,7 @@ page { @@ -189,6 +189,7 @@ page {
text-align: center;
box-sizing: border-box;
background-color: rgba(246, 246, 246, 1);
white-space: nowrap;
&.active {
color: #fff;
background-color: rgba(0, 180, 197, 1);

2
src/module1/pages/auditDoctorDetail/index.wxml

@ -68,7 +68,7 @@ @@ -68,7 +68,7 @@
<view class="dialog">
<view class="d-title">确认通过{{detail.Name}}医生的审核信息?</view>
<view class="btn1" bind:tap="handleSubmit">
<view class="title">确认通过{{detail.Name}}医生的审核信息?</view>
<view class="title">直接通过</view>
<view class="explanation">您将成为{{detail.Name}}医生的直接上级医生</view>
</view>
<view wx:if="{{userInfo.DoctorLevel>=3}}" class="btn2" bind:tap="handleSetDoctor">

1
src/module1/pages/auditDoctorList/index.scss

@ -47,6 +47,7 @@ page { @@ -47,6 +47,7 @@ page {
font-size: 28rpx;
color: rgba(133, 133, 133, 1);
.tag {
margin-left: 16rpx;
padding: 0 8rpx;
display: inline-block;
font-size: 28rpx;

2
src/module1/pages/auditDoctorList/index.ts

@ -10,7 +10,7 @@ Page({ @@ -10,7 +10,7 @@ Page({
list: [],
DoctorTitleType: {},
},
onLoad() {
onShow() {
app.waitLogin().then(() => {
this.getList();
});

2
src/module1/pages/casesDetail/index.scss

@ -191,6 +191,7 @@ page { @@ -191,6 +191,7 @@ page {
}
.tags {
display: flex;
align-items: flex-start;
margin-bottom: 32rpx;
.t-label {
width: 3em;
@ -212,6 +213,7 @@ page { @@ -212,6 +213,7 @@ page {
}
}
.edit-tag {
flex-shrink: 0;
margin-left: 20rpx;
font-size: 22rpx;
color: rgba(0, 180, 197, 1);

6
src/module1/pages/casesDetail/index.ts

@ -540,11 +540,17 @@ Page({ @@ -540,11 +540,17 @@ Page({
});
},
handleCreateRoomInvite() {
this.setData({
show6: false,
});
wx.navigateTo({
url: `/module1/pages/setChatDoctor/index?cid=${this.data.id}&create=1`,
});
},
handleCreateRoom() {
this.setData({
show6: false,
});
wx.ajax({
method: "POST",
url: "?r=takeda/chat/create-room",

6
src/module1/pages/chatRoom/index.scss

@ -153,7 +153,7 @@ page { @@ -153,7 +153,7 @@ page {
width: 234rpx;
.p-img {
width: 100%;
height: auto;
max-height: 300rpx;
border-radius: 16rpx;
}
}
@ -195,7 +195,7 @@ page { @@ -195,7 +195,7 @@ page {
top: 50%;
transform: translateY(-50%);
right: -30rpx;
content: '';
content: "";
width: 16rpx;
height: 16rpx;
background: #ed4f39;
@ -248,7 +248,7 @@ page { @@ -248,7 +248,7 @@ page {
width: 234rpx;
.p-img {
width: 100%;
height: auto;
max-height: 300rpx;
border-radius: 16rpx;
}
}

5
src/module1/pages/chatRoom/index.ts

@ -46,6 +46,8 @@ Page({ @@ -46,6 +46,8 @@ Page({
sendMessage: "",
videoUrl: "",
protocol:`<p><span style="color: rgb(38, 38, 38); font-size: 14px;">罕心守护平台向用户提供了“聊天室”功能,基于此服务,我们在此特别声明:</span></p><p><span style="color: rgb(38, 38, 38); font-size: 14px;">罕心守护平台非常重视您的个人信息保护及平台信息的隐私性,您同意在聊天室功能使用时遵守以下规则:</span></p><p><span style="color: rgb(38, 38, 38); font-size: 14px;"> </span></p><p><span style="color: rgb(38, 38, 38); font-size: 14px;">1.严禁在聊天室内讨论或分享任何患者的个人身份信息,包括但不限于姓名、性别等。群内发送的任何素材内容,必须去除所有可能识别患者身份的敏感信息;</span></p><p><span style="color: rgb(38, 38, 38); font-size: 14px;">2.不以截图、录音或以任何形式将内容传播;</span></p><p><span style="color: rgb(38, 38, 38); font-size: 14px;">3.讨论内容仅限于专业交流,不得用于任何商业目的。</span></p><p><span style="color: rgb(38, 38, 38); font-size: 14px;">4.保持讨论的专业性和尊重性,避免使用侮辱性或攻击性语言。</span></p><p><br></p>`
},
innerAudioContext: null as WechatMiniprogram.InnerAudioContext | null,
videoContext: null as WechatMiniprogram.VideoContext | null,
@ -116,6 +118,9 @@ Page({ @@ -116,6 +118,9 @@ Page({
chatGroupInfo: res.chatGroupInfo,
chatDoctor: res.chatDoctor,
});
wx.setNavigationBarTitle({
title: `聊天室(${res.roomDoctors.length})`,
});
this.WebIMLogin();
});
},

52
src/module1/pages/chatRoom/index.wxml

@ -2,7 +2,13 @@ @@ -2,7 +2,13 @@
<view class="page-header">
<view class="info">
<view class="photos" bind:tap="handleRoomDetail">
<image class="photo" wx:for="{{newRoomDoctors}}" wx:key="doctorId" src="{{item.doctorImg}}"></image>
<image
class="photo"
mode="aspectFill"
wx:for="{{newRoomDoctors}}"
wx:key="doctorId"
src="{{item.doctorImg}}"
></image>
<view class="sealed" wx:if="{{case.caseStatus==='4'}}">已归档</view>
</view>
<view class="inner" bind:tap="handleCaseDetail">
@ -69,14 +75,13 @@ @@ -69,14 +75,13 @@
data-url="{{message.content.url}}"
></image>
</view>
<view class="video" wx:elif="{{message.contentType==='4'}}">
<image
class="v-img"
src="{{message.content.imgUrl}}"
mode="aspectFill"
bind:tap="handleVideo"
data-url="{{message.content.url}}"
></image>
<view
class="video"
wx:elif="{{message.contentType==='4'}}"
bind:tap="handleVideo"
data-url="{{message.content.url}}"
>
<image class="v-img" src="{{message.content.imgUrl}}" mode="aspectFill"></image>
<image class="play" src="{{imageUrl}}icon-video-play.png?t={{Timestamp}}"></image>
</view>
</view>
@ -105,14 +110,13 @@ @@ -105,14 +110,13 @@
data-url="{{message.content.url}}"
></image>
</view>
<view class="video" wx:elif="{{message.contentType==='4'}}">
<image
class="v-img"
src="{{message.content.imgUrl}}"
mode="aspectFill"
bind:tap="handleVideo"
data-url="{{message.content.url}}"
></image>
<view
class="video"
wx:elif="{{message.contentType==='4'}}"
bind:tap="handleVideo"
data-url="{{message.content.url}}"
>
<image class="v-img" src="{{message.content.imgUrl}}" mode="aspectFill"></image>
<image class="play" src="{{imageUrl}}icon-video-play.png?t={{Timestamp}}"></image>
</view>
</view>
@ -124,7 +128,7 @@ @@ -124,7 +128,7 @@
<view id="place" class="place"></view>
</scroll-view>
</view>
<view class="page-footer">
<view class="page-footer" wx:if="{{case.caseStatus!=='4'}}">
<view class="header">
<customRecord bind:file="handleSendAudio" slotIcon>
<image class="icon" src="{{imageUrl}}icon-voice.png?t={{Timestamp}}"></image>
@ -133,8 +137,9 @@ @@ -133,8 +137,9 @@
class="input"
placeholder-class="place-class"
type="text"
fixed
model:value="{{sendMessage}}"
placeholder="请输入要查询的内容"
placeholder="请输入"
cursor-spacing="{{30}}"
confirm-type="send"
bindconfirm="handleSendMessage"
@ -164,14 +169,7 @@ @@ -164,14 +169,7 @@
<view class="popup1">
<view class="title">用户须知</view>
<view class="scroll">
<view class="s-content">
为了确保患者隐私得到充分保护,我们要求所有使用本小程序的医疗保健专业人士(HCP)遵守以下协议。
</view>
<view class="s-title">一、用户同意</view>
<view class="s-content">
在使用本小程序上传患者档案之前,您必须同意以下条款:隐私保护:我确认我已经阅读并理解了本小程序的隐私政策,并将严格遵守所有相关的隐私保护规定。
信息处理:我保证在上传任何患者档案信息之前,已经彻底去除了所有患者的敏感隐私信息,包括但不限于姓名、地址、身份证号、电话
</view>
<rich-text nodes="{{protocol}}"></rich-text>
</view>
<view class="tip">聊天室自动将此病历讨论医生拉入讨论</view>
<view class="btn" bind:tap="handleSubmitAgree">确定</view>

2
src/module1/pages/chatRoomInfo/index.scss

@ -9,9 +9,9 @@ page { @@ -9,9 +9,9 @@ page {
background-color: #fff;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
gap: 28rpx;
.user {
width: 25%;
flex-shrink: 0;
.avatar {
display: block;

14
src/module1/pages/chatRoomInfo/index.ts

@ -1,13 +1,25 @@ @@ -1,13 +1,25 @@
const app = getApp<IAppOption>();
Page({
data: { id: "", caseId: "", list: [] },
data: { id: "", caseId: "", list: [], canInvite: false },
onLoad(options) {
this.setData({ id: options.id, caseId: options.cid });
app.waitLogin().then(() => {
this.getInvite();
this.getDetail();
});
},
getInvite() {
wx.ajax({
method: "GET",
url: "?r=takeda/chat/get-invite-doctor-list",
data: { count: 1, caseId: this.data.caseId },
}).then((res) => {
this.setData({
canInvite: res.canInvite === 1,
});
});
},
getDetail() {
wx.ajax({
method: "GET",

2
src/module1/pages/chatRoomInfo/index.wxml

@ -4,7 +4,7 @@ @@ -4,7 +4,7 @@
<doctorAvatar class="avatar" src="{{item.doctorImg}}" level="{{item.doctorLevel}}"></doctorAvatar>
<view class="name">{{item.doctorName}}</view>
</view>
<view class="add" bind:tap="handleDoctor">
<view wx:if="{{canInvite}}" class="add" bind:tap="handleDoctor">
<van-icon name="plus" />
</view>
</view>

11
src/module1/pages/invite/index.scss

@ -6,7 +6,8 @@ @@ -6,7 +6,8 @@
.page {
padding: 0 32rpx 200rpx;
.title {
margin-top: 40rpx;
display: block;
margin: 40rpx auto 0;
width: 592rpx;
height: 250rpx;
}
@ -41,26 +42,26 @@ @@ -41,26 +42,26 @@
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
.name {
margin-right: 16rpx;
font-size: 36rpx;
color: rgba(20, 21, 21, 1);
font-weight: bold;
}
.label {
margin-left: 16rpx;
font-size: 28rpx;
color: rgba(20, 21, 21, 1);
}
}
.hostipal {
margin-top: 16rpx;
display: flex;
align-items: center;
justify-content: center;
font-size: 28rpx;
color: rgba(20, 21, 21, 1);
text-align: center;
.tag {
margin-left: 20rpx;
display: inline-block;
padding: 0 8rpx;
font-size: 24rpx;
color: #fff;

10
src/module1/pages/invite/index.wxml

@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
<van-nav-bar fixed custom-style="background:transparent;color:#000" border="{{false}}">
<van-icon name="arrow-left" slot="left" size="20" color="#fff" bind:tap="handleBack"/>
<van-icon name="arrow-left" slot="left" size="20" color="#fff" bind:tap="handleBack" />
</van-nav-bar>
<view
class="page"
@ -9,12 +9,14 @@ @@ -9,12 +9,14 @@
<view class="container-wrap">
<view class="container">
<view class="avatar">
<image class="a-img" src="{{userInfo.Img}}"></image>
<image class="a-img" mode="aspectFill" src="{{userInfo.Img}}"></image>
</view>
<view class="user">
<view class="name">{{userInfo.Name}}</view>
<block class="label" wx:if="{{userInfo.TitleType===99}}">{{userInfo.OtherTitle}}</block>
<block class="label" wx:else>{{DoctorTitleType[userInfo.TitleType]}}</block>
<view class="label">
<block wx:if="{{userInfo.TitleType===99}}">{{userInfo.OtherTitle}}</block>
<block wx:else>{{DoctorTitleType[userInfo.TitleType]}}</block>
</view>
</view>
<view class="hostipal">
{{userInfo.HospitalName}}

1
src/module1/pages/loginProtool/index.ts

File diff suppressed because one or more lines are too long

48
src/module1/pages/loginProtool/index.wxml

@ -2,54 +2,10 @@ @@ -2,54 +2,10 @@
<view class="container" style="padding-top:{{menuButtonInfo.bottom}}px;">
<image class="title" src="{{imageUrl}}login-protool-title.png?t={{Timestamp}}"></image>
<scroll-view class="rule" scroll-y="{{true}}" bindscrolltolower="handleScrollToLower">
Lorem ipsum dolor sit, amet consectetur adipisicing elit. Architecto ipsa reiciendis deleniti blanditiis sit
vitae, reprehenderit laudantium veniam corporis quisquam quas fugiat. Beatae molestias quos unde neque et,
similique cumque. Lorem ipsum dolor sit, amet consectetur adipisicing elit. Architecto ipsa reiciendis deleniti
blanditiis sit vitae, reprehenderit laudantium veniam corporis quisquam quas fugiat. Beatae molestias quos unde
neque et, similique cumque. Lorem ipsum dolor sit, amet consectetur adipisicing elit. Architecto ipsa reiciendis
deleniti blanditiis sit vitae, reprehenderit laudantium veniam corporis quisquam quas fugiat. Beatae molestias
quos unde neque et, similique cumque. Lorem ipsum dolor sit, amet consectetur adipisicing elit. Architecto ipsa
reiciendis deleniti blanditiis sit vitae, reprehenderit laudantium veniam corporis quisquam quas fugiat. Beatae
molestias quos unde neque et, similique cumque. Lorem ipsum dolor sit, amet consectetur adipisicing elit.
Architecto ipsa reiciendis deleniti blanditiis sit vitae, reprehenderit laudantium veniam corporis quisquam quas
fugiat. Beatae molestias quos unde neque et, similique cumque. Lorem ipsum dolor sit, amet consectetur adipisicing
elit. Architecto ipsa reiciendis deleniti blanditiis sit vitae, reprehenderit laudantium veniam corporis quisquam
quas fugiat. Beatae molestias quos unde neque et, similique cumque. Lorem ipsum dolor sit, amet consectetur
adipisicing elit. Architecto ipsa reiciendis deleniti blanditiis sit vitae, reprehenderit laudantium veniam
corporis quisquam quas fugiat. Beatae molestias quos unde neque et, similique cumque. Lorem ipsum dolor sit, amet
consectetur adipisicing elit. Architecto ipsa reiciendis deleniti blanditiis sit vitae, reprehenderit laudantium
veniam corporis quisquam quas fugiat. Beatae molestias quos unde neque et, similique cumque. Lorem ipsum dolor
sit, amet consectetur adipisicing elit. Architecto ipsa reiciendis deleniti blanditiis sit vitae, reprehenderit
laudantium veniam corporis quisquam quas fugiat. Beatae molestias quos unde neque et, similique cumque. Lorem
ipsum dolor sit, amet consectetur adipisicing elit. Architecto ipsa reiciendis deleniti blanditiis sit vitae,
reprehenderit laudantium veniam corporis quisquam quas fugiat. Beatae molestias quos unde neque et, similique
cumque. Lorem ipsum dolor sit, amet consectetur adipisicing elit. Architecto ipsa reiciendis deleniti blanditiis
sit vitae, reprehenderit laudantium veniam corporis quisquam quas fugiat. Beatae molestias quos unde neque et,
similique cumque. Lorem ipsum dolor sit, amet consectetur adipisicing elit. Architecto ipsa reiciendis deleniti
blanditiis sit vitae, reprehenderit laudantium veniam corporis quisquam quas fugiat. Beatae molestias quos unde
neque et, similique cumque. Lorem ipsum dolor sit, amet consectetur adipisicing elit. Architecto ipsa reiciendis
deleniti blanditiis sit vitae, reprehenderit laudantium veniam corporis quisquam quas fugiat. Beatae molestias
quos unde neque et, similique cumque. Lorem ipsum dolor sit, amet consectetur adipisicing elit. Architecto ipsa
reiciendis deleniti blanditiis sit vitae, reprehenderit laudantium veniam corporis quisquam quas fugiat. Beatae
molestias quos unde neque et, similique cumque. Lorem ipsum dolor sit, amet consectetur adipisicing elit.
Architecto ipsa reiciendis deleniti blanditiis sit vitae, reprehenderit laudantium veniam corporis quisquam quas
fugiat. Beatae molestias quos unde neque et, similique cumque. Lorem ipsum dolor sit, amet consectetur adipisicing
elit. Architecto ipsa reiciendis deleniti blanditiis sit vitae, reprehenderit laudantium veniam corporis quisquam
quas fugiat. Beatae molestias quos unde neque et, similique cumque. Lorem ipsum dolor sit, amet consectetur
adipisicing elit. Architecto ipsa reiciendis deleniti blanditiis sit vitae, reprehenderit laudantium veniam
corporis quisquam quas fugiat. Beatae molestias quos unde neque et, similique cumque. Lorem ipsum dolor sit, amet
consectetur adipisicing elit. Architecto ipsa reiciendis deleniti blanditiis sit vitae, reprehenderit laudantium
veniam corporis quisquam quas fugiat. Beatae molestias quos unde neque et, similique cumque. Lorem ipsum dolor
sit, amet consectetur adipisicing elit. Architecto ipsa reiciendis deleniti blanditiis sit vitae, reprehenderit
laudantium veniam corporis quisquam quas fugiat. Beatae molestias quos unde neque et, similique cumque. Lorem
ipsum dolor sit, amet consectetur adipisicing elit. Architecto ipsa reiciendis deleniti blanditiis sit vitae,
reprehenderit laudantium veniam corporis quisquam quas fugiat. Beatae molestias quos unde neque et, similique
cumque. Lorem ipsum dolor sit, amet consectetur adipisicing elit. Architecto ipsa reiciendis deleniti blanditiis
sit vitae, reprehenderit laudantium veniam corporis quisquam quas fugiat. Beatae molestias quos unde neque et,
similique cumque.
<rich-text nodes="{{protocol}}"></rich-text>
</scroll-view>
<view class="footer" wx:if="{{ismy}}">
<view class="sure" bind:tap="handleBack">关闭</view>
<view class="sure" bind:tap="handleBack">关闭</view>
</view>
<view class="footer" wx:else>
<view class="cancel" bind:tap="handleCancel">不同意</view>

20
src/module1/pages/userInfo/index.scss

@ -35,24 +35,33 @@ page { @@ -35,24 +35,33 @@ page {
.row {
padding: 32rpx 0;
display: flex;
align-items: center;
justify-content: space-between;
.label {
width: 5em;
flex-shrink: 0;
font-size: 32rpx;
color: rgba(133, 133, 133, 1);
}
.content {
flex: 1;
text-align: right;
font-size: 28rpx;
font-size: 32rpx;
color: rgba(20, 21, 21, 1);
display: flex;
align-items: center;
.all {
flex: 1;
}
}
.picker {
flex: 1;
.picker-content {
text-align: right;
font-size: 28rpx;
display: flex;
align-items: center;
font-size: 32rpx;
color: rgba(20, 21, 21, 1);
.all {
flex: 1;
}
}
}
}
@ -73,7 +82,6 @@ page { @@ -73,7 +82,6 @@ page {
}
}
.popup1 {
padding: 32rpx 30rpx 84rpx;
.title {

29
src/module1/pages/userInfo/index.ts

@ -18,14 +18,20 @@ Page({ @@ -18,14 +18,20 @@ Page({
Introduce: "",
},
onShow() {
app.waitLogin().then(() => {
app.waitLogin().then(async () => {
await this.getDoctorDict();
this.getUserInfo();
this.getDoctorDict();
});
},
getUserInfo() {
app.getUserInfo(this, (userInfo) => {
userInfo.encryptionTel = userInfo.Telephone.replace(/(\d{3})\d{4}(\d{4})/, "$1****$2");
const labelList: any = [];
this.data.deptList.forEach((item) => {
if (userInfo.DepartmentId.includes(item.value)) {
labelList.push(...item.options);
}
});
this.setData({
userInfo,
Img: userInfo.Img,
@ -39,19 +45,22 @@ Page({ @@ -39,19 +45,22 @@ Page({
SpecialtyName: userInfo.Specialty.reduce((pre, cur) => {
return `${pre}${pre ? "," : ""}${cur.SpecialtyName}`;
}, ""),
labelList,
});
});
},
getDoctorDict() {
wx.ajax({
method: "GET",
url: "?r=takeda/reg/doctor-dict",
data: {},
}).then((res) => {
this.setData({
deptList: res.DoctorSpecialtyLabel,
return wx
.ajax({
method: "GET",
url: "?r=takeda/reg/doctor-dict",
data: {},
})
.then((res) => {
this.setData({
deptList: res.DoctorSpecialtyLabel,
});
});
});
},
handleFile(e) {
this.setData({

18
src/module1/pages/userInfo/index.wxml

@ -1,9 +1,9 @@ @@ -1,9 +1,9 @@
<wxs src="/utils/util.wxs" module="tools" />
<view class="page">
<uploadFile class="upload" chooseAvatar bind:file="handleFile">
<image class="avatar" src="{{userInfo.Img}}"></image>
<image class="avatar" mode="aspectFill" src="{{userInfo.Img}}"></image>
<view class="edit">
<image class="icon" src="{{imageUrl}}icon-edit.png?t={{Timestamp}}"></image>
<image class="icon" src="{{imageUrl}}icon-edit.png?t={{Timestamp}}"></image>
</view>
</uploadFile>
<view class="row">
@ -22,23 +22,23 @@ @@ -22,23 +22,23 @@
<view class="label">科室</view>
<view class="picker" bind:tap="handleShowDept">
<view class="picker-content">
{{DepartmentName || '无'}}
<van-icon name="arrow" />
<view class="all">{{DepartmentName || '无'}}</view>
<van-icon color="#CDCDCD" name="arrow" />
</view>
</view>
</view>
<view class="row">
<view class="label">专长</view>
<view class="content" bind:tap="handleShowDept">
{{SpecialtyName || '无'}}
<van-icon name="arrow" />
<view class="content" bind:tap="handleShowDept">
<view class="all">{{SpecialtyName || '无'}}</view>
<van-icon color="#CDCDCD" name="arrow" />
</view>
</view>
<view class="row" bind:tap="handleIntroduce">
<view class="label">医生简介</view>
<view class="content">
{{userInfo.Introduce || '无'}}
<van-icon name="arrow" />
<view class="all">{{userInfo.Introduce}}</view>
<van-icon color="#CDCDCD" name="arrow" />
</view>
</view>
</view>

1
src/pages/cases/index.scss

@ -316,6 +316,7 @@ page { @@ -316,6 +316,7 @@ page {
}
.tags {
display: flex;
flex-wrap: wrap;
gap: 12rpx;
.tag {
padding: 2rpx 8rpx;

11
src/pages/cases/index.ts

@ -208,7 +208,7 @@ Page({ @@ -208,7 +208,7 @@ Page({
this.handleSearch();
},
onClose() {
const { show2, showArea } = this.data;
const { show2, show3, showArea } = this.data;
this.setData({
show1: false,
show2: false,
@ -233,6 +233,15 @@ Page({ @@ -233,6 +233,15 @@ Page({
});
this.handleSearch();
}
if (show3) {
this.setData({
deptId: [],
labelId: [],
deptName: "全部",
labelName: "全部",
});
this.handleSearch();
}
},
handleImagePreview(e) {
const { url } = e.currentTarget.dataset;

4
src/pages/cases/index.wxml

@ -3,11 +3,11 @@ @@ -3,11 +3,11 @@
<view class="header">
<view class="navbar">
<view class="nav {{nav==='0' && 'active'}}" bind:tap="handleNav" data-nav="0">我的病历</view>
<view class="nav {{nav==='3' && 'active'}}" bind:tap="handleNav" data-nav="3">
<view wx:if="{{userInfo.DoctorLevel===3 && userInfo.IsSuper===1}}" class="nav {{nav==='3' && 'active'}}" bind:tap="handleNav" data-nav="3">
全部病历
<van-icon name="question" size="12" catch:tap="handleQuestion" data-index="3" color="rgba(224, 224, 224, 1)" />
</view>
<view wx:if="{{userInfo.DoctorLevel===3 && userInfo.IsSuper===1}}" class="nav {{nav==='1' && 'active'}}" bind:tap="handleNav" data-nav="1">
<view class="nav {{nav==='1' && 'active'}}" bind:tap="handleNav" data-nav="1">
公开病历
<van-icon name="question" size="12" catch:tap="handleQuestion" data-index="1" color="rgba(224, 224, 224, 1)" />
</view>

24
src/pages/chatRoomList/index.scss

@ -188,14 +188,14 @@ page { @@ -188,14 +188,14 @@ page {
width: 100%;
height: 100%;
}
.no-read{
.no-read {
position: absolute;
top: -9rpx;
right: -9rpx;
width: 18rpx;
height: 18rpx;
border-radius: 50%;
background-color: #ED4F39;
background-color: #ed4f39;
}
}
.inner {
@ -204,20 +204,24 @@ page { @@ -204,20 +204,24 @@ page {
font-size: 32rpx;
color: rgba(20, 21, 21, 1);
font-weight: bold;
.site {
display: inline-block;
padding: 0 8rpx;
font-size: 24rpx;
color: rgba(148, 87, 30, 1);
background: #fae5ce;
border-radius: 4rpx 4rpx 4rpx 4rpx;
}
}
.site {
display: inline-block;
padding: 0 8rpx;
font-size: 24rpx;
color: rgba(148, 87, 30, 1);
background: #fae5ce;
border-radius: 4rpx 4rpx 4rpx 4rpx;
}
.content {
margin-top: 8rpx;
font-size: 28rpx;
color: rgba(133, 133, 133, 1);
line-height: 32rpx;
max-width: 16em;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
}
}

35
src/pages/chatRoomList/index.ts

@ -1,3 +1,5 @@ @@ -1,3 +1,5 @@
import dayjs from "dayjs";
const app = getApp<IAppOption>();
Page({
@ -138,6 +140,7 @@ Page({ @@ -138,6 +140,7 @@ Page({
}).then((res) => {
res.list.forEach((item) => {
item.roomDoctors = item.roomDoctors.slice(0, 4);
item.createTime = dayjs(item.createTime).format("YYYY-MM-DD HH:mm");
});
const list = res.page === 1 ? res.list : [...this.data.list, ...res.list];
this.setData({
@ -230,7 +233,7 @@ Page({ @@ -230,7 +233,7 @@ Page({
this.handleSearch();
},
onClose() {
const { show2, showArea } = this.data;
const { show2, show3, showArea } = this.data;
this.setData({
show1: false,
show2: false,
@ -257,6 +260,15 @@ Page({ @@ -257,6 +260,15 @@ Page({
});
this.handleSearch();
}
if (show3) {
this.setData({
deptId: [],
labelId: [],
deptName: "全部",
labelName: "全部",
});
this.handleSearch();
}
},
handleDetail(e) {
const { params } = e.currentTarget.dataset;
@ -426,12 +438,21 @@ Page({ @@ -426,12 +438,21 @@ Page({
});
},
handleReadAll() {
wx.ajax({
method: "POST",
url: "?r=takeda/chat/read-history",
data: {},
}).then(() => {
this.handleSearch();
wx.showModal({
title:"确认全部标为已读",
confirmColor: "#00B4C5",
cancelColor: "#141515",
success: (res) => {
if (res.confirm) {
wx.ajax({
method: "POST",
url: "?r=takeda/chat/read-history",
data: {},
}).then(() => {
this.handleSearch();
});
}
},
});
},
});

21
src/pages/chatRoomList/index.wxml

@ -120,8 +120,8 @@ @@ -120,8 +120,8 @@
<view class="filter">
<view class="wrap">
<view class="btn {{!readStatus && 'active'}}" bind:tap="handleRead" data-value="">全部</view>
<view class="btn {{readStatus==='1' && 'active'}}" bind:tap="handleRead" data-value="1">未读</view>
<view class="btn {{readStatus==='2' && 'active'}}" bind:tap="handleRead" data-value="2">已读</view>
<view class="btn {{readStatus==='2' && 'active'}}" bind:tap="handleRead" data-value="2">未读</view>
<view class="btn {{readStatus==='1' && 'active'}}" bind:tap="handleRead" data-value="1">已读</view>
</view>
<view class="all-read" bind:tap="handleReadAll">全部标为已读</view>
</view>
@ -133,15 +133,20 @@ @@ -133,15 +133,20 @@
</view>
<view class="c-container">
<view class="photos">
<image wx:for="{{item.roomDoctors}}" class="photo" wx:key="doctorId" src="{{item.doctorImg}}"></image>
<image
wx:for="{{item.roomDoctors}}"
mode="aspectFill"
class="photo"
wx:key="doctorId"
src="{{item.doctorImg}}"
></image>
<view class="no-read" wx:if="{{item.isRead===2}}"></view>
</view>
<view class="inner">
<view class="hostipal">
{{item.hospitalName}}
<view class="site" wx:if="{{item.cityName}}">
{{item.cityName}}{{item.countyName?'/':''}}{{item.countyName}}
</view>
<view class="hostipal">{{item.hospitalName}}</view>
<view></view>
<view class="site" wx:if="{{item.cityName}}">
{{item.cityName}}{{item.countyName?'/':''}}{{item.countyName}}
</view>
<view class="content">{{item.msgContent}}</view>
</view>

12
src/pages/home/index.ts

@ -5,6 +5,8 @@ Page({ @@ -5,6 +5,8 @@ Page({
data: {
level: 0,
hide: true,
show1: false,
bindDoctorName: "",
@ -32,6 +34,16 @@ Page({ @@ -32,6 +34,16 @@ Page({
});
});
},
onShow() {
this.setData({
hide: false,
});
},
onHide() {
this.setData({
hide: true,
});
},
handleBindDoctor() {
const scene = app.globalData.scene;
if (scene?.doctorId) {

1
src/pages/home/index.wxml

@ -1,6 +1,7 @@ @@ -1,6 +1,7 @@
<view
class="page"
style="background: url({{imageUrl}}home-bg.png?r={{Timestamp}}) no-repeat top center/100% 560rpx;padding-top:{{menuButtonInfo.top}}px;"
wx:if="{{!hide}}"
>
<image class="logo" src="{{imageUrl}}home-logo.png?t={{Timestamp}}"></image>
<homeLevel1

2
src/pages/my/index.ts

@ -9,6 +9,8 @@ Page({ @@ -9,6 +9,8 @@ Page({
this.getTabBar().setData({
active: 4,
});
},
onShow() {
app.waitLogin().then(() => {
this.getDoctorDict();
app.getUserInfo(this, (userInfo) => {

2
src/pages/my/index.wxml

@ -55,7 +55,7 @@ @@ -55,7 +55,7 @@
<view class="list-item">
<view class="label">
<image class="icon" src="{{imageUrl}}my-list-icon3.png?t={{Timestamp}}"></image>
账号相
于我们
</view>
<van-icon class="more" name="arrow" />
</view>

Loading…
Cancel
Save