优化
This commit is contained in:
@@ -160,6 +160,18 @@ Component({
|
||||
}];
|
||||
return renderDom;
|
||||
}
|
||||
// 7:处方开具成功
|
||||
if (customMessage.message_type === GDXZ_CUSTOM_MSEEAGE.PRESCRIBE_VERIFY) {
|
||||
let data = customMessage.data;
|
||||
const renderDom = [{
|
||||
type: 'prescribe',
|
||||
product_name: data.product_name,
|
||||
order_inquiry_id: data.order_inquiry_id,
|
||||
order_prescription_id: data.order_prescription_id,
|
||||
pharmacist_verify_time: data.pharmacist_verify_time.substring(0,10),
|
||||
}];
|
||||
return renderDom;
|
||||
}
|
||||
} catch (error) {
|
||||
}
|
||||
// 客服咨询
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
<view class="revoke" data-value="{{message}}">
|
||||
<label class="name" wx:if="{{message.flow === 'in'}}">{{message.nick || message.from}}</label>
|
||||
<view class="revoke" data-value="{{message}}" id="{{'ID-'+message.ID}}">
|
||||
<!-- <label class="name" wx:if="{{message.flow === 'in'}}">{{message.nick || message.from}}</label> -->
|
||||
<label class="name" wx:if="{{message.flow === 'in'}}">对方</label>
|
||||
<label class="name" wx:else>你</label>
|
||||
<span class="name">撤回了一条消息</span>
|
||||
<span class="edit" wx:if="{{message.flow === 'out' && message.type === 'TIMTextElem'}}" bindtap="resendMessage" data-value="{{message}}">重新编辑</span>
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import dayjs from '../../../../utils/dayjs';
|
||||
import logger from '../../../../utils/logger';
|
||||
import constant from '../../../../utils/constant';
|
||||
import { getTimeAgoChat } from './../../../../../utils/util'
|
||||
const { GDXZ_CUSTOM_MSEEAGE } = constant;
|
||||
// eslint-disable-next-line no-undef
|
||||
const app = getApp();
|
||||
@@ -86,11 +87,12 @@ Component({
|
||||
errorMessage: {},
|
||||
errorMessageID: '',
|
||||
typingMessage: {},
|
||||
autoToButtom: true
|
||||
},
|
||||
|
||||
lifetimes: {
|
||||
attached() {
|
||||
|
||||
|
||||
},
|
||||
ready() {
|
||||
if (this.data.unreadCount > 12) {
|
||||
@@ -128,11 +130,22 @@ Component({
|
||||
wx.$TUIKit.off(wx.$TUIKitTIM.EVENT.MESSAGE_REVOKED, this.$onMessageRevoked);
|
||||
},
|
||||
},
|
||||
|
||||
pageLifetimes: {
|
||||
show(){
|
||||
console.log("showshowshowshowshowshowshow")
|
||||
},
|
||||
hide(){
|
||||
console.log("hidehidehidehidehidehidehidehidehidehidehide")
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
||||
// 刷新消息列表
|
||||
refresh() {
|
||||
console.log("refresh.......")
|
||||
this.setData({
|
||||
autoToButtom: false
|
||||
})
|
||||
if (this.data.isCompleted) {
|
||||
this.setData({
|
||||
isCompleted: true,
|
||||
@@ -247,7 +260,12 @@ Component({
|
||||
|
||||
// 收到的消息
|
||||
$onMessageReceived(value) {
|
||||
let autoToButtom = this.data.autoToButtom;
|
||||
console.log("autoToButtom:", autoToButtom)
|
||||
const message = value.data[0];
|
||||
if(message.flow == 'out'){
|
||||
message.isRead = false;
|
||||
}
|
||||
if(!this.checkShowAvatar(message)){
|
||||
message.no_avatar = true;
|
||||
}
|
||||
@@ -275,12 +293,14 @@ Component({
|
||||
} catch (error) {
|
||||
}
|
||||
if ((item.type === MESSAGE_TYPE_TEXT.TIM_CUSTOM_ELEM && this.data.typingMessage.businessID !== BUSINESS_ID_TEXT.USER_TYPING) || item.type !== MESSAGE_TYPE_TEXT.TIM_CUSTOM_ELEM) {
|
||||
this.data.showNewMessageCount.push(message);
|
||||
this.setData({
|
||||
showNewMessageCount: this.data.showNewMessageCount,
|
||||
showDownJump: true,
|
||||
});
|
||||
|
||||
if(!autoToButtom){
|
||||
this.data.showNewMessageCount.push(message);
|
||||
this.setData({
|
||||
showNewMessageCount: this.data.showNewMessageCount,
|
||||
showDownJump: true,
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
} else {
|
||||
@@ -320,6 +340,13 @@ Component({
|
||||
});
|
||||
}
|
||||
|
||||
let jumpAim = `ID-${this.filterSystemMessageID(this.data.messageList[this.data.messageList.length - 1].ID)}`;
|
||||
console.log("jumpAim:", jumpAim);
|
||||
if(autoToButtom){
|
||||
this.setData({
|
||||
jumpAim: jumpAim
|
||||
})
|
||||
}
|
||||
//主动跳到 消息跳转到最新
|
||||
// this.handleJumpNewMessage()
|
||||
},
|
||||
@@ -381,8 +408,15 @@ Component({
|
||||
// 获取消息ID
|
||||
handleLongPress(e) {
|
||||
for (let index = 0; index < this.data.messageList.length; index++) {
|
||||
|
||||
if (this.data.messageList[index].status === 'success') {
|
||||
const { index } = e.currentTarget.dataset;
|
||||
let message = this.data.messageList[index];
|
||||
console.log(message)
|
||||
if(message.type === 'TIMCustomElem'){
|
||||
return
|
||||
}
|
||||
|
||||
this.setData({
|
||||
messageID: e.currentTarget.id,
|
||||
selectedMessage: this.data.messageList[index],
|
||||
@@ -519,11 +553,17 @@ Component({
|
||||
});
|
||||
}
|
||||
},
|
||||
//myscroll 自定义滑动事件
|
||||
myscroll(e){
|
||||
console.log(e.detail.deltaY,e.detail.scrollTop)
|
||||
},
|
||||
// 滑动到最底部置跳转事件为false
|
||||
scrollHandler() {
|
||||
console.log("触底了")
|
||||
this.setData({
|
||||
jumpAim: `ID-${this.filterSystemMessageID(this.data.messageList[this.data.messageList.length - 1].ID)}`,
|
||||
showDownJump: false,
|
||||
autoToButtom: true
|
||||
});
|
||||
},
|
||||
// 删除处理掉的群通知消息
|
||||
@@ -532,17 +572,19 @@ Component({
|
||||
},
|
||||
// 展示消息时间
|
||||
messageTimeForShow(messageTime) {
|
||||
console.log("messageTimeForShow")
|
||||
const interval = 5 * 60 * 1000;
|
||||
const nowTime = Math.floor(messageTime.time / 10) * 10 * 1000;
|
||||
if (this.data.messageList.length > 0) {
|
||||
const lastTime = this.data.messageList.slice(-1)[0].time * 1000;
|
||||
console.log("nowTime - lastTime=", (nowTime - lastTime))
|
||||
if (nowTime - lastTime > interval) {
|
||||
Object.assign(messageTime, {
|
||||
isShowTime: true,
|
||||
}),
|
||||
this.data.messageTime = dayjs(nowTime);
|
||||
this.setData({
|
||||
messageTime: dayjs(nowTime).format('YYYY-MM-DD HH:mm:ss'),
|
||||
messageTime: getTimeAgoChat(nowTime/1000),
|
||||
showMessageTime: true,
|
||||
});
|
||||
}
|
||||
@@ -550,10 +592,12 @@ Component({
|
||||
},
|
||||
// 渲染历史消息时间
|
||||
showHistoryMessageTime(messageList) {
|
||||
const cut = 30 * 60 * 1000;
|
||||
const cut = 5 * 60 * 1000;
|
||||
for (let index = 0; index < messageList.length; index++) {
|
||||
const nowadayTime = Math.floor(messageList[index].time / 10) * 10 * 1000;
|
||||
const firstTime = messageList[0].time * 1000;
|
||||
console.log("nowadayTime - firstTime=",(nowadayTime - firstTime))
|
||||
console.log("cut",cut)
|
||||
if (nowadayTime - firstTime > cut) {
|
||||
const indexbutton = messageList.map(item => item).indexOf(messageList[index]); // 获取第一个时间大于30分钟的消息所在位置的下标
|
||||
const firstTime = nowadayTime; // 找到第一个数组时间戳大于30分钟的将其值设为初始值
|
||||
@@ -563,7 +607,7 @@ Component({
|
||||
}),
|
||||
this.setData({
|
||||
firstTime: nowadayTime,
|
||||
messageHistoryTime: dayjs(showHistoryTime).format('YYYY-MM-DD HH:mm:ss'),
|
||||
messageHistoryTime: getTimeAgoChat(showHistoryTime/1000),
|
||||
showMessageHistoryTime: true,
|
||||
});
|
||||
return firstTime;
|
||||
@@ -577,7 +621,7 @@ Component({
|
||||
Object.assign(messageList[0], {
|
||||
isShowMoreHistoryTime: true,
|
||||
});
|
||||
this.data.newArr[messageList[0].ID] = dayjs(showHistoryTime).format('YYYY-MM-DD HH:mm:ss');
|
||||
this.data.newArr[messageList[0].ID] = getTimeAgoChat(showHistoryTime/1000);
|
||||
this.setData({
|
||||
newArr: this.data.newArr,
|
||||
});
|
||||
|
||||
@@ -4,21 +4,23 @@
|
||||
<view class="no-message" wx:if="{{isCompleted}}">没有更多啦</view>
|
||||
<view class="t-message" wx:if="{{conversation.type !== '@TIM#SYSTEM'}}" wx:for="{{messageList}}" wx:key="index" data-index ='{{index}}' >
|
||||
<view class="time-pop-mask" data-value="{{item.time}}" wx:if="{{showMessageTime}}">
|
||||
<view class="showmessagetime" wx:if="{{item.isShowTime}}">
|
||||
<view class="showmessagetime 1" wx:if="{{item.isShowTime}}">
|
||||
<text class="time" wx:if="{{!item.isDeleted && !item.isRevoked}}">{{messageTime}} </text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="time-pop-mask" data-value="{{item.time}}" wx:if="{{showMessageHistoryTime}}">
|
||||
<view class="showmessagetime" wx:if="{{item.isShowHistoryTime && !item.isShowTime && !item.isShowMoreHistoryTime}}">
|
||||
<view class="showmessagetime 2" wx:if="{{item.isShowHistoryTime && !item.isShowTime && !item.isShowMoreHistoryTime}}">
|
||||
<text class="time" wx:if="{{!item.isDeleted && !item.isRevoked}}">{{messageHistoryTime}} </text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="time-pop-mask" wx:if="{{item.isShowMoreHistoryTime}}">
|
||||
<view class="showmessagetime">
|
||||
<view class="showmessagetime 3">
|
||||
<text class="time">{{newArr[item.ID]}} </text>
|
||||
</view>
|
||||
</view>
|
||||
<RevokeMessage wx:if="{{item.isRevoked}}" message="{{item}}" isMine="{{item.flow === 'out'}}" bind:resendMessage="resendMessage"/>
|
||||
<view id="{{concat.concat(conversation.type,'ID-',item.ID)}}">
|
||||
<RevokeMessage wx:if="{{item.isRevoked}}" message="{{item}}" isMine="{{item.flow === 'out'}}" bind:resendMessage="resendMessage"/>
|
||||
</view>
|
||||
<view class="t-message-item" wx:if="{{!item.isDeleted && !item.isRevoked }}" bindtap="handleEditToggleAvatar" >
|
||||
<view wx:if="{{Show}}" catchtap="handleEditToggleAvatar">
|
||||
<view class="label-pop" wx:if="{{messageID === concat.connect('ID-',item.ID)}}" class="{{item.flow === 'out' ? 'label-self-body' : 'label-recieve-body'}}" >
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<view class="left">
|
||||
<view class="name">{{baseInfo.patient_family_name}}</view>
|
||||
<view class="age">{{baseInfo.patient_family_sex==1?'男':'女'}}|{{baseInfo.patient_family_age}}岁</view>
|
||||
<view class="status {{baseInfo.inquiry_status==5?'status_complete':''}}">{{baseInfo.inquiry_status==1?'待支付':baseInfo.inquiry_status==2?'待分配':baseInfo.inquiry_status==3?'待接诊':baseInfo.inquiry_status==4?'接诊中':baseInfo.inquiry_status==5?'已完成':baseInfo.inquiry_status==6?'已结束':baseInfo.inquiry_status==7?'已取消':'未知'}}</view>
|
||||
<view class="status {{baseInfo.inquiry_status==5?'status_complete':''}}">{{baseInfo.inquiry_status==1?'待支付':baseInfo.inquiry_status==2?'待分配':baseInfo.inquiry_status==3?'待接诊':baseInfo.inquiry_status==4?'接诊中':baseInfo.inquiry_status==5?'问诊完成':baseInfo.inquiry_status==6?'已结束':baseInfo.inquiry_status==7?'已取消':'未知'}}</view>
|
||||
</view>
|
||||
<view class="right">
|
||||
<text class="right_txt" bindtap="putDoctorInquiryFinish" wx:if="{{baseInfo.inquiry_status==4}}">结束问诊</text>
|
||||
|
||||
Reference in New Issue
Block a user