From 6d442f7563c98d2c16910cb68d00824ed224c955 Mon Sep 17 00:00:00 2001 From: haomingming Date: Mon, 26 Jun 2023 18:12:28 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Pages/yishi/service_notice/index.wxml | 8 +-- .../MessageElements/BannerMessage/index.js | 23 +++++++ .../MessageElements/BannerMessage/index.json | 6 ++ .../MessageElements/BannerMessage/index.wxml | 4 ++ .../MessageElements/BannerMessage/index.wxss | 1 + .../MessageElements/CustomMessage/index.js | 4 +- .../MessageElements/CustomMessage/index.wxml | 2 +- .../TUIChat/components/MessageList/index.js | 63 +++++++++++++++++++ .../TUIChat/components/MessageList/index.json | 3 +- .../TUIChat/components/MessageList/index.wxml | 16 +++-- .../TUIChat/components/MessageList/index.wxss | 8 +++ TUIKit/utils/constant.js | 2 +- 12 files changed, 126 insertions(+), 14 deletions(-) create mode 100644 TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.js create mode 100644 TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.json create mode 100644 TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.wxml create mode 100644 TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.wxss diff --git a/Pages/yishi/service_notice/index.wxml b/Pages/yishi/service_notice/index.wxml index 45519cd..948895a 100644 --- a/Pages/yishi/service_notice/index.wxml +++ b/Pages/yishi/service_notice/index.wxml @@ -3,19 +3,19 @@ - + 在线问诊 - + 快速问诊 - + 公益问诊 - + 问诊购药 diff --git a/TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.js b/TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.js new file mode 100644 index 0000000..0def034 --- /dev/null +++ b/TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.js @@ -0,0 +1,23 @@ +// TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.js +Component({ + /** + * 组件的属性列表 + */ + properties: { + + }, + + /** + * 组件的初始数据 + */ + data: { + + }, + + /** + * 组件的方法列表 + */ + methods: { + + } +}) diff --git a/TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.json b/TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.json new file mode 100644 index 0000000..e9b6ca8 --- /dev/null +++ b/TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "t-message": "tdesign-miniprogram/message/message" + } +} \ No newline at end of file diff --git a/TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.wxml b/TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.wxml new file mode 100644 index 0000000..c117292 --- /dev/null +++ b/TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.wxml @@ -0,0 +1,4 @@ + + + + diff --git a/TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.wxss b/TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.wxss new file mode 100644 index 0000000..40474e3 --- /dev/null +++ b/TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.wxss @@ -0,0 +1 @@ +/* TUIKit/components/TUIChat/components/MessageElements/BannerMessage/index.wxss */ \ No newline at end of file diff --git a/TUIKit/components/TUIChat/components/MessageElements/CustomMessage/index.js b/TUIKit/components/TUIChat/components/MessageElements/CustomMessage/index.js index 3e2fe0f..a3e5e7d 100644 --- a/TUIKit/components/TUIChat/components/MessageElements/CustomMessage/index.js +++ b/TUIKit/components/TUIChat/components/MessageElements/CustomMessage/index.js @@ -131,9 +131,9 @@ Component({ return renderDom; } //8:消息内页横条(患者->医生) - if (customMessage.message_type === GDXZ_CUSTOM_MSEEAGE.TRABECULA_PATIENT) { + if (customMessage.message_type === GDXZ_CUSTOM_MSEEAGE.BANNER_MESSAGE) { const renderDom = [{ - type: 'trabecula_patient', + type: 'banner_message', title: customMessage.title, desc: customMessage.desc, }]; diff --git a/TUIKit/components/TUIChat/components/MessageElements/CustomMessage/index.wxml b/TUIKit/components/TUIChat/components/MessageElements/CustomMessage/index.wxml index 901f8cf..c793ed4 100644 --- a/TUIKit/components/TUIChat/components/MessageElements/CustomMessage/index.wxml +++ b/TUIKit/components/TUIChat/components/MessageElements/CustomMessage/index.wxml @@ -45,7 +45,7 @@ {{renderDom[0].title}} {{renderDom[0].desc}} - diff --git a/TUIKit/components/TUIChat/components/MessageList/index.js b/TUIKit/components/TUIChat/components/MessageList/index.js index e13ab40..a1d3f7c 100644 --- a/TUIKit/components/TUIChat/components/MessageList/index.js +++ b/TUIKit/components/TUIChat/components/MessageList/index.js @@ -2,6 +2,8 @@ import logger from '../../../../utils/logger'; import constant from '../../../../utils/constant'; import { wechatTimeFormat } from './../../../../../utils/wechatTime' import { API } from '../../../../../utils/network/api'; +import Message from 'tdesign-miniprogram/message/index'; + const { GDXZ_CUSTOM_MSEEAGE } = constant; // eslint-disable-next-line no-undef const app = getApp(); @@ -233,6 +235,64 @@ Component({ }); } }, + //检测是不是横幅消息 + checkNoticeMessage(message){ + console.log("messageList checkNoticeMessage message: ", message); + let cloudCustomData = ""; + let cloudCustomDataJson = ""; + if(message.cloudCustomData){ + cloudCustomData = message.cloudCustomData; + } + if(cloudCustomData){ + cloudCustomDataJson = JSON.parse(cloudCustomData); + } + let is_system = cloudCustomDataJson.is_system; + if(is_system != 1){//不是系统消息直接返回 + return false + } + let payload = message.payload.data; + if(!payload){//没有payload + return false + } + const payloadData = JSON.parse(message.payload.data); + if(!payloadData){ + return false + } + + const { GDXZ_CUSTOM_MSEEAGE } = constant; + let message_type = payloadData.message_type + if (message_type === GDXZ_CUSTOM_MSEEAGE.BANNER_MESSAGE) { + let message_title = payloadData.title + let message_desc = payloadData.desc + let message_path = payloadData.data.message_path + this.setData({ + message_title: message_title, + message_desc: message_desc, + message_path: message_path, + }) + this.showTextMessage() + } + }, + showTextMessage() { + Message.info({ + context: this, + offset: [80, 20], + duration: 5000, + icon: false, + closeBtn: true, + }); + wx.vibrateShort({ + "type": "light" + }) + }, + handleMessagePath(){ + console.log("handleMessagePath") + let url = this.data.message_path + console.log(url) + wx.switchTab({ + url: url, + }) + }, refreshMessageRounds(message){ try { // console.log("messageList refreshMessageRounds message: ", message); @@ -364,6 +424,8 @@ Component({ let autoToButtom = this.data.autoToButtom; // console.log("autoToButtom:", autoToButtom) const message = value.data[0]; + //检测是不是横幅消息 + this.checkNoticeMessage(message) //更新会话数 this.refreshMessageRounds(message) if(message.flow == 'out'){ @@ -556,6 +618,7 @@ Component({ wx.vibrateShort({ "type": "heavy" }) + // } // } }, diff --git a/TUIKit/components/TUIChat/components/MessageList/index.json b/TUIKit/components/TUIChat/components/MessageList/index.json index 05e95d5..df86679 100644 --- a/TUIKit/components/TUIChat/components/MessageList/index.json +++ b/TUIKit/components/TUIChat/components/MessageList/index.json @@ -14,6 +14,7 @@ "MergerMessage": "../MessageElements/MergerMessage/index", "RevokeMessage": "../MessageElements/RevokeMessage/index", "van-loading": "@vant/weapp/loading/index", - "van-icon": "@vant/weapp/icon/index" + "van-icon": "@vant/weapp/icon/index", + "t-message": "tdesign-miniprogram/message/message" } } \ No newline at end of file diff --git a/TUIKit/components/TUIChat/components/MessageList/index.wxml b/TUIKit/components/TUIChat/components/MessageList/index.wxml index 91284d8..87963a9 100644 --- a/TUIKit/components/TUIChat/components/MessageList/index.wxml +++ b/TUIKit/components/TUIChat/components/MessageList/index.wxml @@ -80,13 +80,19 @@ - - - 99+条未读 - {{unreadCount}}条未读 - + + + 99+条未读 + {{unreadCount}}条未读 + + + + {{message_title}} + {{message_desc}} + + diff --git a/TUIKit/components/TUIChat/components/MessageList/index.wxss b/TUIKit/components/TUIChat/components/MessageList/index.wxss index c336701..3c1a567 100644 --- a/TUIKit/components/TUIChat/components/MessageList/index.wxss +++ b/TUIKit/components/TUIChat/components/MessageList/index.wxss @@ -260,3 +260,11 @@ padding-left: 5px; color: blue; } +.content_title{ + font-size: 32rpx; + color: #000; +} +.content_desc{ + font-size: 28rpx; + color: rgb(146, 144, 144); +} \ No newline at end of file diff --git a/TUIKit/utils/constant.js b/TUIKit/utils/constant.js index 1386bbf..bbb9fa9 100644 --- a/TUIKit/utils/constant.js +++ b/TUIKit/utils/constant.js @@ -48,7 +48,7 @@ const constant = { PATIENT_SYSTEM_MESSAGES: 5,//5:患者端系统消息 PRESCRIBE: 6,//6:处方开具成功(医生端) PRESCRIBE_VERIFY: 7,//7:处方审核通过(患者端) - TRABECULA_PATIENT: 8,//8:消息内页横条(患者->医生) + BANNER_MESSAGE: 8,//8 弹框消息 }, OPERATING_ENVIRONMENT: 'imWxTuikit'