diff --git a/README.md b/README.md index 5e7aeac..2d97ef6 100644 --- a/README.md +++ b/README.md @@ -34,3 +34,17 @@ wx.showModal({ 病历详情页 /module1/pages/casesDetail/index?id=病例id 病历编辑页面 /module1/pages/entryCases/index?id=病例id 聊天室互动页 /module1/pages/chatRoom/index?id=聊天室id + + +v1.6 +1、申请绑定邀约需求; +2、小红点需求; + 一级医生:待处理病病历;聊天室消息; + 核心医生:待处理病历,病历更新,聊天室消息,医生待审核; + 三级医生:待处理病历,病历更新,聊天室消息,医生待审核; +3、聊天室左上角图片+新增; +4、新手引导图; +5、超级医生首页,新增病历更新项;逻辑与三级医生首页逻辑一致; +6、合作的医生卡片点击区域有问题; +7、隐私协议内容更新; +8、聊天室有最新消息时,增加push通知,我记得咱们当时有一个6个小时内的不重复发送。不知道这个push是否增加了。 diff --git a/src/echart/components/doctorLevel3/index.scss b/src/echart/components/doctorLevel3/index.scss index e391a99..be2ee53 100644 --- a/src/echart/components/doctorLevel3/index.scss +++ b/src/echart/components/doctorLevel3/index.scss @@ -135,6 +135,20 @@ font-size: 56rpx; color: #fff; line-height: 56rpx; + display: flex; + justify-content: center; + .num-center { + position: relative; + .dot { + position: absolute; + top: -10rpx; + right: -10rpx; + width: 16rpx; + height: 16rpx; + background-color: #ed4f39; + border-radius: 50%; + } + } } } .line { diff --git a/src/echart/components/doctorLevel3/index.ts b/src/echart/components/doctorLevel3/index.ts index f083630..83a18f2 100644 --- a/src/echart/components/doctorLevel3/index.ts +++ b/src/echart/components/doctorLevel3/index.ts @@ -20,6 +20,7 @@ Component({ take: {}, case: {} as any, doctorCount: {}, + tips: {}, }, lifetimes: { @@ -27,6 +28,7 @@ Component({ this.getTake(); this.getCase(); this.getManageDoctor(); + this.getTips(); }, }, /** @@ -76,6 +78,17 @@ Component({ const { index } = e.currentTarget.dataset; this.triggerEvent("question", index); }, + getTips() { + wx.ajax({ + method: "GET", + url: "?r=takeda/doctor/get-tips", + data: {}, + }).then((res) => { + this.setData({ + tips: res, + }); + }); + }, }, }); diff --git a/src/echart/components/doctorLevel3/index.wxml b/src/echart/components/doctorLevel3/index.wxml index 7c40bc0..4d2d78a 100644 --- a/src/echart/components/doctorLevel3/index.wxml +++ b/src/echart/components/doctorLevel3/index.wxml @@ -42,19 +42,39 @@ 待处理病历 - {{take.dealCaseCount*1 || '--'}} + + + {{take.dealCaseCount*1 || '--'}} + + + 病历更新 - {{take.notReadFeedBackCount*1 || '--'}} + + + {{take.notReadFeedBackCount*1 || '--'}} + + + 学习窗消息 - {{take.notReadChatRoomCount*1 || '--'}} + + + {{take.notReadChatRoomCount*1 || '--'}} + + + 医生待审核 - {{take.toAuditDoctorCount*1 || '--'}} + + + {{take.toAuditDoctorCount*1 || '--'}} + + + diff --git a/src/echart/components/doctorLevel4/index.scss b/src/echart/components/doctorLevel4/index.scss index 599ddf1..585f77f 100644 --- a/src/echart/components/doctorLevel4/index.scss +++ b/src/echart/components/doctorLevel4/index.scss @@ -134,6 +134,20 @@ font-size: 56rpx; color: #fff; line-height: 56rpx; + display: flex; + justify-content: center; + .num-center { + position: relative; + .dot { + position: absolute; + top: -10rpx; + right: -10rpx; + width: 16rpx; + height: 16rpx; + background-color: #ed4f39; + border-radius: 50%; + } + } } } .line { diff --git a/src/echart/components/doctorLevel4/index.ts b/src/echart/components/doctorLevel4/index.ts index 0581c3a..ce657d7 100644 --- a/src/echart/components/doctorLevel4/index.ts +++ b/src/echart/components/doctorLevel4/index.ts @@ -28,6 +28,8 @@ Component({ DepartmentName: "", newCaseShow: false, + + tips: {}, }, lifetimes: { @@ -41,6 +43,7 @@ Component({ this.getTake(); this.getCase(); this.getManageDoctor(); + this.getTips(); }, }, /** @@ -109,6 +112,17 @@ Component({ newCaseShow: false, }); }, + getTips() { + wx.ajax({ + method: "GET", + url: "?r=takeda/doctor/get-tips", + data: {}, + }).then((res) => { + this.setData({ + tips: res, + }); + }); + }, }, }); diff --git a/src/echart/components/doctorLevel4/index.wxml b/src/echart/components/doctorLevel4/index.wxml index c9d3f53..d2c4c15 100644 --- a/src/echart/components/doctorLevel4/index.wxml +++ b/src/echart/components/doctorLevel4/index.wxml @@ -37,15 +37,39 @@ 待处理病历 - {{take.dealCaseCount*1 || '--'}} + + + {{take.dealCaseCount*1 || '--'}} + + + + + + 病历更新 + + + {{take.notReadFeedBackCount*1 || '--'}} + + + 学习窗消息 - {{take.notReadChatRoomCount*1 || '--'}} + + + {{take.notReadChatRoomCount*1 || '--'}} + + + 医生待审核 - {{take.toAuditDoctorCount*1 || '--'}} + + + {{take.toAuditDoctorCount*1 || '--'}} + + + diff --git a/src/echart/components/homeLevel1/index.scss b/src/echart/components/homeLevel1/index.scss index a5bb2a7..4fecbe1 100644 --- a/src/echart/components/homeLevel1/index.scss +++ b/src/echart/components/homeLevel1/index.scss @@ -431,6 +431,14 @@ opacity: 0; display: block; } + .close { + position: absolute; + left: 50%; + transform: translateX(-50%); + z-index: 1; + width: 64rpx; + height: 64rpx; + } .show { opacity: 1; } diff --git a/src/echart/components/homeLevel1/index.ts b/src/echart/components/homeLevel1/index.ts index ed3a5de..2ae1664 100644 --- a/src/echart/components/homeLevel1/index.ts +++ b/src/echart/components/homeLevel1/index.ts @@ -22,9 +22,17 @@ Component({ case: {}, cooperateList: [], + tips: { + tipDealCase: 2, //是否待处理病历提醒,1-是,2-否 + tipCaseUpdate: 2, //是否病历更新提醒,1-是,2-否 + tipChatRoom: 2, //是否聊天室消息提醒,1-是,2-否 + tipDoctorWaitAudit: 2, //是否待审核医生提醒,1-是,2-否 + tipDoctorAudit: 2, //是否审核提醒,1-是,2-否 + }, + guide: 0, guideShow: false, - guideList: ["2-1", "2-2", "2-3"], + guideList: ["1-1", "1-2", "1-3"], }, lifetimes: { @@ -32,6 +40,8 @@ Component({ this.getTake(); this.getCase(); this.getCooperate(); + this.getTips(); + this.getGuide(); }, }, /** @@ -135,19 +145,53 @@ Component({ }); }, + getTips() { + wx.ajax({ + method: "GET", + url: "?r=takeda/doctor/get-tips", + data: {}, + }).then((res) => { + this.setData({ + tips: res, + }); + }); + }, touchmovePreview() { return false; }, handleTapPreview() { - if (this.data.guide == this.data.guideList.length - 1) { + if (this.data.guide === this.data.guideList.length - 1) { this.setData({ guideShow: false, }); + this.handleGuideClose(); } this.setData({ guide: Number(this.data.guide) + 1, }); }, + getGuide() { + wx.ajax({ + method: "GET", + url: "?r=takeda/account/get-guide", + data: {}, + }).then((res) => { + this.setData({ + guideShow: res.tipStatus === 2, + // guideShow: true, + }); + }); + }, + handleGuideClose() { + this.setData({ + guideShow: false, + }); + wx.ajax({ + method: "POST", + url: "?r=takeda/account/close-guide", + data: {}, + }); + }, }, }); diff --git a/src/echart/components/homeLevel1/index.wxml b/src/echart/components/homeLevel1/index.wxml index 9dfa1e6..f84a22e 100644 --- a/src/echart/components/homeLevel1/index.wxml +++ b/src/echart/components/homeLevel1/index.wxml @@ -35,7 +35,7 @@ {{take.notReadFeedBackCount*1 || '--'}} - + @@ -45,7 +45,7 @@ {{take.notReadChatRoomCount*1 || '--'}} - + @@ -119,7 +119,7 @@ - 申请记录 + 申请记录 @@ -183,8 +183,14 @@ + { + this.setData({ + tips: res, + }); + }); + }, }, }); diff --git a/src/echart/components/homeLevel2/index.wxml b/src/echart/components/homeLevel2/index.wxml index 51378d6..a29a43b 100644 --- a/src/echart/components/homeLevel2/index.wxml +++ b/src/echart/components/homeLevel2/index.wxml @@ -49,7 +49,7 @@ {{take.dealCaseCount*1 || '--'}} - + @@ -58,7 +58,7 @@ {{take.notReadFeedBackCount*1 || '--'}} - + @@ -67,7 +67,7 @@ {{take.notReadChatRoomCount*1 || '--'}} - + @@ -76,7 +76,7 @@ {{take.toAuditDoctorCount*1 || '--'}} - + diff --git a/src/images/guide-close.png b/src/images/guide-close.png new file mode 100644 index 0000000..7f14df9 Binary files /dev/null and b/src/images/guide-close.png differ diff --git a/src/images/guide1-1.png b/src/images/guide1-1.png new file mode 100644 index 0000000..da603fd Binary files /dev/null and b/src/images/guide1-1.png differ diff --git a/src/images/guide1-2.png b/src/images/guide1-2.png new file mode 100644 index 0000000..ffe8acd Binary files /dev/null and b/src/images/guide1-2.png differ diff --git a/src/images/guide1-3.png b/src/images/guide1-3.png new file mode 100644 index 0000000..fea013a Binary files /dev/null and b/src/images/guide1-3.png differ diff --git a/src/images/guide1-4.png b/src/images/guide1-4.png new file mode 100644 index 0000000..857e93a Binary files /dev/null and b/src/images/guide1-4.png differ diff --git a/src/module1/pages/applicationRecords/index.json b/src/module1/pages/applicationRecords/index.json index cfbe89e..11010eb 100644 --- a/src/module1/pages/applicationRecords/index.json +++ b/src/module1/pages/applicationRecords/index.json @@ -3,6 +3,7 @@ "navigationBarTitleText": "医生绑定申请", "usingComponents": { "van-icon": "@vant/weapp/icon/index", - "doctorAvatar": "/components/doctorAvatar/index" + "doctorAvatar": "/components/doctorAvatar/index", + "pagination": "/components/pagination/index" } } diff --git a/src/module1/pages/applicationRecords/index.scss b/src/module1/pages/applicationRecords/index.scss index f2df8ce..64e0142 100644 --- a/src/module1/pages/applicationRecords/index.scss +++ b/src/module1/pages/applicationRecords/index.scss @@ -90,7 +90,7 @@ page { height: 112rpx; } .wrap { - padding-top: 8rpx; + padding-top: 20rpx; .w-header { display: flex; flex-wrap: wrap; diff --git a/src/module1/pages/applicationRecords/index.ts b/src/module1/pages/applicationRecords/index.ts index d74ea55..ae54c01 100644 --- a/src/module1/pages/applicationRecords/index.ts +++ b/src/module1/pages/applicationRecords/index.ts @@ -5,24 +5,43 @@ Page({ feedbackTimeBegin: "", feedbackTimeEnd: "", - cooperateList: [], + list: [], + pagination: { + page: 1, + pages: 1, + count: 1, + }, }, onLoad() { app.waitLogin().then(() => { - this.getCooperate(); + this.getList(); }); }, - getCooperate() { + getList(newPage = 1) { wx.ajax({ method: "GET", - url: "?r=takeda/doctor/cooperation-doctor-list", - data: {}, + url: "?r=takeda/doctor/apply-list", + data: { + page: newPage, + }, }).then((res) => { + const list = res.page === 1 ? res.list : [...this.data.list, ...res.list]; this.setData({ - cooperateList: res.list, + list, + pagination: { + page: res.page, + pages: res.pages, + count: res.count, + }, }); }); }, + onReachBottom() { + const { page, pages } = this.data.pagination; + if (pages > page) { + this.getList(page + 1); + } + }, }); export {}; diff --git a/src/module1/pages/applicationRecords/index.wxml b/src/module1/pages/applicationRecords/index.wxml index d2f3b91..cfa5cfc 100644 --- a/src/module1/pages/applicationRecords/index.wxml +++ b/src/module1/pages/applicationRecords/index.wxml @@ -37,57 +37,77 @@ - - + + + + - {{item.DoctorName}} - {{item.DoctorOtherTitle}} - {{DoctorTitleType[item.DoctorTitleType]}} - + {{item.inviteDoctorInfo.doctorName}} + + {{item.inviteDoctorInfo.doctorOtherTitle}} + + {{item.inviteDoctorInfo.doctorTitleName}} + {{item.DepartmentName}} - {{item.HospitalName}} + {{item.inviteDoctorInfo.hospitalName}} - {{hospitalClassification[item.HospitalClassification]}}{{hospitalLevel[item.HospitalLevel]}} + {{item.inviteDoctorInfo.hospitalClassificationName}}{{item.inviteDoctorInfo.hospitalLevelName}} - - {{item.CityName}}{{item.CountyName?'/':''}}{{item.CountyName}} + + {{item.inviteDoctorInfo.cityName}}{{item.inviteDoctorInfo.countyName?'/':''}}{{item.inviteDoctorInfo.countyName}} - + - {{item.SpecialtyName}} + + {{item.SpecialtyName}} + - + + 提交时间 + {{item.createTime}} + + 审核日期 - 2024-12-12 + {{item.auditTime}} - + 驳回原因 - 这是一段驳回原因的文案,可能有俩行字 + {{item.rejectReason}} + diff --git a/src/module1/pages/auditDoctorDetail/index.wxml b/src/module1/pages/auditDoctorDetail/index.wxml index 2644a59..4b2cdbc 100644 --- a/src/module1/pages/auditDoctorDetail/index.wxml +++ b/src/module1/pages/auditDoctorDetail/index.wxml @@ -2,11 +2,11 @@ 申请类型 - 新注册医生 + {{detail.ApplyTypeName}} 医生身份 - 一级医生 + {{detail.doctorLevelName}} 提交人 diff --git a/src/module1/pages/auditDoctorList/index.wxml b/src/module1/pages/auditDoctorList/index.wxml index df78805..67b1b4f 100644 --- a/src/module1/pages/auditDoctorList/index.wxml +++ b/src/module1/pages/auditDoctorList/index.wxml @@ -12,8 +12,7 @@ {{item.OtherTitle}} {{DoctorTitleType[item.TitleType]}} - 注册申请 - + {{item.ApplyTypeName}} {{item.HospitalName}} diff --git a/src/module1/pages/chatRoom/index.ts b/src/module1/pages/chatRoom/index.ts index 4a38ee6..d778ea5 100644 --- a/src/module1/pages/chatRoom/index.ts +++ b/src/module1/pages/chatRoom/index.ts @@ -52,6 +52,8 @@ Page({ protocol: `

罕心守护平台向用户提供了“学习窗”功能,基于此服务,我们在此特别声明:

罕心守护平台非常重视您的个人信息保护及平台信息的隐私性,您同意在学习窗功能使用时遵守以下规则:

1.严禁在学习窗内讨论或分享任何患者的个人身份信息,包括但不限于姓名、性别等。群内发送的任何素材内容,必须去除所有可能识别患者身份的敏感信息;

2.不以截图、录音或以任何形式将内容传播;

3.讨论内容仅限于专业交流,不得用于任何商业目的;

4.保持讨论的专业性和尊重性,避免使用侮辱性或攻击性语言。


`, record: true, + + canInvite: false, }, innerAudioContext: null as WechatMiniprogram.InnerAudioContext | null, videoContext: null as WechatMiniprogram.VideoContext | null, @@ -82,6 +84,17 @@ Page({ this.getMessageList(); this.getDetail(); }, + getInvite() { + wx.ajax({ + method: "GET", + url: "?r=takeda/chat/get-invite-doctor-list", + data: { count: 1, caseId: this.data.case.caseId }, + }).then((res) => { + this.setData({ + canInvite: res.canInvite === 1, + }); + }); + }, getAgree() { wx.ajax({ method: "GET", @@ -129,6 +142,7 @@ Page({ wx.setNavigationBarTitle({ title: `学习窗(${res.roomDoctorCount})`, }); + this.getInvite(); this.WebIMLogin(); }); diff --git a/src/module1/pages/chatRoom/index.wxml b/src/module1/pages/chatRoom/index.wxml index bb3df23..b52c632 100644 --- a/src/module1/pages/chatRoom/index.wxml +++ b/src/module1/pages/chatRoom/index.wxml @@ -11,7 +11,7 @@ src="{{item.doctorImg}}" > 已归档 - +
diff --git a/src/module1/pages/setApplicationDoctor/index.ts b/src/module1/pages/setApplicationDoctor/index.ts index c7bb1e1..f01778e 100644 --- a/src/module1/pages/setApplicationDoctor/index.ts +++ b/src/module1/pages/setApplicationDoctor/index.ts @@ -39,10 +39,6 @@ Page({ DoctorId: "", - params: {}, - - caseId: "", - show: false, }, onLoad(options) { @@ -52,13 +48,6 @@ Page({ HospitalName: options.hname, }); } - const eventChannel = this.getOpenerEventChannel(); - eventChannel.on("acceptDataFromOpenerPage", (data) => { - this.setData({ - params: data.params, - caseId: data.caseId, - }); - }); app.waitLogin().then(() => { this.getList(); this.getDoctorDict(); @@ -131,7 +120,7 @@ Page({ const { search, hospitalId, provinceId, cityId, countyId, specialtyId } = this.data; wx.ajax({ method: "GET", - url: "?r=takeda/case/get-invite-doctor-list", + url: "?r=takeda/doctor/get-can-invite-doctor-list", data: { search, hospitalId, @@ -242,7 +231,7 @@ Page({ }); }, handleSubmit() { - const { caseId, DoctorId, params } = this.data; + const { DoctorId } = this.data; if (!DoctorId) { wx.showToast({ title: "请选择医生", @@ -251,19 +240,15 @@ Page({ return; } - const url = caseId ? "?r=takeda/case/save-case" : "?r=takeda/case/create-case"; wx.ajax({ method: "POST", - url, + url: "?r=takeda/doctor/apply-binding", data: { - ...params, - caseId, - isSubmit: 1, - dealDoctorId: DoctorId, + inviteDoctorId: DoctorId, }, }).then((res) => { - wx.reLaunch({ - url: `/module1/pages/setApplicationDoctorResult/index?isf=${res.isSubscribe}&wxi=${encodeURIComponent(res.wxImg)}&cid=${res.caseId || caseId}`, + wx.redirectTo({ + url: `/module1/pages/setApplicationDoctorResult/index?isf=${res.isFollow}&name=${res.InviteDoctorName}`, }); }); }, diff --git a/src/module1/pages/setApplicationDoctorResult/index.ts b/src/module1/pages/setApplicationDoctorResult/index.ts index b63f333..eeeb709 100644 --- a/src/module1/pages/setApplicationDoctorResult/index.ts +++ b/src/module1/pages/setApplicationDoctorResult/index.ts @@ -3,6 +3,7 @@ const app = getApp(); Page({ data: { isf: 0, + name: "", codeUrl: "", }, onLoad(options) { @@ -10,6 +11,7 @@ Page({ this.getCodeUrl(); this.setData({ isf: Number(options.isf), + name: options.name, }); }); }, diff --git a/src/module1/pages/setApplicationDoctorResult/index.wxml b/src/module1/pages/setApplicationDoctorResult/index.wxml index 4d6a2e5..ea8fd3c 100644 --- a/src/module1/pages/setApplicationDoctorResult/index.wxml +++ b/src/module1/pages/setApplicationDoctorResult/index.wxml @@ -15,9 +15,9 @@ 提交成功 - + 已将信息提交给 - {{InviteDoctorName}}医生 + {{name}}医生 审核通过后,您可绑定成功