This commit is contained in:
haomingming 2023-05-06 10:18:46 +08:00
parent 97a504c6d2
commit 7b9b80be8d
18 changed files with 318 additions and 164 deletions

View File

@ -9,7 +9,7 @@ Page({
baseInfo: {} baseInfo: {}
}, },
onLoad(option) { onLoad(option) {
console.log("chat onload", option); // console.log("chat onload", option);
let order_inquiry_id = option.order_inquiry_id; let order_inquiry_id = option.order_inquiry_id;
this.setData({ this.setData({
order_inquiry_id: order_inquiry_id, order_inquiry_id: order_inquiry_id,
@ -17,22 +17,22 @@ Page({
this.getInquiryMessageBasic(); this.getInquiryMessageBasic();
}, },
onUnload() { onUnload() {
console.log("chat onUnload"); // console.log("chat onUnload");
}, },
onShow(){ onShow(){
console.log("chat onShow"); // console.log("chat onShow");
console.log("app.globalData.scene from chat: ", app.globalData.scene); // console.log("app.globalData.scene from chat: ", app.globalData.scene);
}, },
$onMessageReceived(value) { $onMessageReceived(value) {
const message = value.data[0]; const message = value.data[0];
console.log("message from chat: ",message) // console.log("message from chat: ",message)
}, },
initChat(){ initChat(){
let _this = this; let _this = this;
let count = 0; let count = 0;
let interval = setInterval(() => { let interval = setInterval(() => {
console.log("chat init count: ", count); // console.log("chat init count: ", count);
console.log("app.globalData.chat_sdk_ready: ", app.globalData.chat_sdk_ready); // console.log("app.globalData.chat_sdk_ready: ", app.globalData.chat_sdk_ready);
if(app.globalData.chat_sdk_ready){ if(app.globalData.chat_sdk_ready){
const TUIChat = _this.selectComponent('#TUIChat'); const TUIChat = _this.selectComponent('#TUIChat');
TUIChat.init(); TUIChat.init();
@ -48,9 +48,9 @@ Page({
}, },
//获取问诊订单消息内页基础数据 //获取问诊订单消息内页基础数据
getInquiryMessageBasic() { getInquiryMessageBasic() {
console.log("order_inquiry_id: ", this.data.order_inquiry_id); // console.log("order_inquiry_id: ", this.data.order_inquiry_id);
api.getInquiryMessageBasic({order_inquiry_id: this.data.order_inquiry_id}).then(response => { api.getInquiryMessageBasic({order_inquiry_id: this.data.order_inquiry_id}).then(response => {
console.log(response); // console.log(response);
this.setData({ this.setData({
baseInfo: response.data baseInfo: response.data
}) })

View File

@ -110,8 +110,8 @@ Page({
let top = 0; let top = 0;
top = wx.getMenuButtonBoundingClientRect().top - stateHeight; // 获取top值 top = wx.getMenuButtonBoundingClientRect().top - stateHeight; // 获取top值
console.log('navHeight', navHeight); // console.log('navHeight', navHeight);
console.log('top', top); // console.log('top', top);
this.setData({ this.setData({
// navHeight: navHeight + top * 2, // 导航栏高度 // navHeight: navHeight + top * 2, // 导航栏高度
@ -120,10 +120,10 @@ Page({
}); });
}, },
getFunboxHeight(){ getFunboxHeight(){
console.log("109: ", rpxTopx(109)) // console.log("109: ", rpxTopx(109))
console.log("113: ", rpxTopx(113)) // console.log("113: ", rpxTopx(113))
const { statusBarHeight } = wx.getSystemInfoSync(); const { statusBarHeight } = wx.getSystemInfoSync();
console.log("statusBarHeight: ", rpxTopx(statusBarHeight)); // console.log("statusBarHeight: ", rpxTopx(statusBarHeight));
let funbox_height = wx.getSystemInfoSync().windowHeight - (this.data.stateHeight + this.data.navHeight + 10) - 55;//减去底部空白 let funbox_height = wx.getSystemInfoSync().windowHeight - (this.data.stateHeight + this.data.navHeight + 10) - 55;//减去底部空白
funbox_height = rpxTopx(funbox_height); funbox_height = rpxTopx(funbox_height);
// 147 userinfo的高度 // 147 userinfo的高度
@ -174,26 +174,26 @@ Page({
}) })
}, },
cancelContactDialog(){ cancelContactDialog(){
console.log("cancelContactDialogcancelContactDialogcancelContactDialog"); // console.log("cancelContactDialogcancelContactDialogcancelContactDialog");
this.setData({ this.setData({
contactKeFu: false contactKeFu: false
}) })
}, },
onPullDownRefresh(){ onPullDownRefresh(){
console.log("用户下拉动作") // console.log("用户下拉动作")
this.onShow(); this.onShow();
}, },
onLoad(){ onLoad(){
}, },
onUnload(){ onUnload(){
console.log("index onUnload() onUnload() "); // console.log("index onUnload() onUnload() ");
this.setData({ this.setData({
swiperList: [] swiperList: []
}) })
}, },
onHide(){ onHide(){
console.log("index onHide() onHide() "); // console.log("index onHide() onHide() ");
wx.offCopyUrl(this.Copylistener) // 需传入与监听时同一个的函数对象 wx.offCopyUrl(this.Copylistener) // 需传入与监听时同一个的函数对象
@ -233,7 +233,7 @@ Page({
this.getMenuButtonBound(); this.getMenuButtonBound();
api.yiShiIndex().then(response => { api.yiShiIndex().then(response => {
console.log(response); // console.log(response);
let avatar = response.data.info.avatar; let avatar = response.data.info.avatar;
this.setData({ this.setData({
"info.user_name": response.data.info.user_name, "info.user_name": response.data.info.user_name,
@ -323,7 +323,7 @@ Page({
}, },
onTapAD(e) { onTapAD(e) {
let item = e.currentTarget.dataset.item; let item = e.currentTarget.dataset.item;
console.log(item); // console.log(item);
let open_with = item.open_with; let open_with = item.open_with;
let banner_link = item.banner_link; let banner_link = item.banner_link;
if(open_with == 1){//小程序页面 if(open_with == 1){//小程序页面
@ -338,10 +338,10 @@ Page({
}, },
go(e){ go(e){
let checkDialog = this.checkDialog(e); let checkDialog = this.checkDialog(e);
console.log("checkDialog: ", checkDialog); // console.log("checkDialog: ", checkDialog);
if(checkDialog){ if(checkDialog){
let url = e.currentTarget.dataset.url; let url = e.currentTarget.dataset.url;
console.log(url); // console.log(url);
if(url.indexOf("wenzhen") > -1){ if(url.indexOf("wenzhen") > -1){
wx.switchTab({ wx.switchTab({
url: url, url: url,
@ -381,9 +381,9 @@ Page({
app.go(e.currentTarget.dataset.url); app.go(e.currentTarget.dataset.url);
}, },
confirmDialog(e){ confirmDialog(e){
console.log(e) // console.log(e)
let url = e.currentTarget.dataset.url; let url = e.currentTarget.dataset.url;
console.log("confirmDialog: ", url) // console.log("confirmDialog: ", url)
this.setData({ this.setData({
dialog_visible: false dialog_visible: false
}) })
@ -637,11 +637,11 @@ Page({
let checkDialog = this.checkDialog(e); let checkDialog = this.checkDialog(e);
if(checkDialog){ if(checkDialog){
console.log("concatKeFu"); // console.log("concatKeFu");
wx.requestSubscribeMessage({ wx.requestSubscribeMessage({
tmplIds: ['JMPmlYGh1HcUSuEfJCVQUIsZv4H5ar3QvXZfrNYNFuc'], tmplIds: ['JMPmlYGh1HcUSuEfJCVQUIsZv4H5ar3QvXZfrNYNFuc'],
success (res) { success (res) {
console.log(res); // console.log(res);
_this.setData({ _this.setData({
contactKeFu: true contactKeFu: true
}) })
@ -700,15 +700,15 @@ Page({
let now_case = this.data.mycase.find(item => { let now_case = this.data.mycase.find(item => {
return item.case_status == status; return item.case_status == status;
}); });
console.log("now_case: ", now_case); // console.log("now_case: ", now_case);
//所属模块 //所属模块
let moudle = e.currentTarget.dataset.moudle; let moudle = e.currentTarget.dataset.moudle;
console.log("moudle: ", moudle); // console.log("moudle: ", moudle);
if(now_case){ if(now_case){
let now_moudle = now_case.case_module.find(item => { let now_moudle = now_case.case_module.find(item => {
return item == moudle; return item == moudle;
}) })
console.log("now_moudle: ", now_moudle); // console.log("now_moudle: ", now_moudle);
if(now_moudle != undefined){ if(now_moudle != undefined){
this.setData({ this.setData({
dialog_content: now_case.case_text, dialog_content: now_case.case_text,

View File

@ -481,8 +481,9 @@ Page({
console.log(response); console.log(response);
this.setData({ this.setData({
doctor_advice: response.data.prescription.doctor_advice, doctor_advice: response.data.prescription.doctor_advice,
pharmacist_audit_status: response.data.prescription.pharmacist_audit_status,
zhenduan_list: response.data.prescription_icd, zhenduan_list: response.data.prescription_icd,
drugs_box_item_list: response.data.prescription_product, drugs_box_item_list: response.data.prescription_product
}) })
}).catch(errors => {console.error(errors);}) }).catch(errors => {console.error(errors);})
} }

View File

@ -63,12 +63,16 @@
<form bindsubmit="{{ order_prescription_id == ''?'postDoctorPrescription':'putDoctorPrescription' }}"> <form bindsubmit="{{ order_prescription_id == ''?'postDoctorPrescription':'putDoctorPrescription' }}">
<view class="txt_title">医嘱</view> <view class="txt_title">医嘱</view>
<view class="doctors_advice" bindtap="onDoctorsAdviceFocus"> <view class="doctors_advice" bindtap="onDoctorsAdviceFocus">
<textarea auto-height focus="{{doctors_advice_focus}}" maxlength="1000" bindblur="getAdvice" style="width: 100%;" placeholder-style="font-size:24rpx; color:#999" placeholder="请输入医嘱5-200字" name="doctors_advice" value="{{doctor_advice}}"></textarea> <textarea disabled="{{from == 'chat'}}" auto-height focus="{{doctors_advice_focus}}" maxlength="1000" bindblur="getAdvice" style="width: 100%;" placeholder-style="font-size:24rpx; color:#999" placeholder="请输入医嘱5-200字" name="doctors_advice" value="{{doctor_advice}}"></textarea>
</view> </view>
<!-- 从聊天页面过来的不显示按钮 --> <!-- 从聊天页面过来的不显示按钮 -->
<view class="sub_btn" wx:if="{{from != 'chat'}}"> <view class="sub_btn" wx:if="{{from != 'chat'}}">
<van-button disabled="{{sub_disabled}}" form-type="submit" color="#3CC7C0; font-size:30rpx; border-radius: 10rpx;" type="primary" block>{{ order_prescription_id == ''?'提交审核':'重开处方' }}</van-button> <van-button disabled="{{sub_disabled}}" form-type="submit" color="#3CC7C0; font-size:30rpx; border-radius: 10rpx;" type="primary" block>{{ order_prescription_id == ''?'提交审核':'重开处方' }}</van-button>
</view> </view>
<!-- 0:审核中 1:审核成功 2:审核驳回 -->
<view class="sub_btn" wx:if="{{from == 'chat'}}">
<van-button disabled color="#3CC7C0; font-size:30rpx; border-radius: 10rpx;" type="primary" block>{{ pharmacist_audit_status == 0?'审核中':pharmacist_audit_status==1?'审核成功':pharmacist_audit_status==2?'审核驳回':'审核中' }}</van-button>
</view>
</form> </form>

View File

@ -11,10 +11,10 @@ Page({
height: app.globalData.height, height: app.globalData.height,
license_cert: [], license_cert: [],
qualification_cert: [], qualification_cert: [],
work_cert: [] work_cert: [],
license_cert_visible: false
}, },
onLoad(){ onLoad(){
api.getDoctorCret().then(response => { api.getDoctorCret().then(response => {
console.log(response); console.log(response);
this.setData({ this.setData({
@ -23,7 +23,21 @@ Page({
work_cert: response.data.work_cert, work_cert: response.data.work_cert,
}) })
}).catch(errors => {console.error(errors);}) }).catch(errors => {console.error(errors);})
} },
show_license_cert(){
console.log("show_license_cert")
this.setData({
license_cert_visible: true
})
},
close_license_cert(e) {
const {
detail: { trigger },
} = e;
console.log("trigger: ", trigger);
console.log("close_license_cert")
this.setData({
license_cert_visible: false,
});
},
}) })

View File

@ -2,6 +2,7 @@
"component": true, "component": true,
"usingComponents": { "usingComponents": {
"te-nav-bar": "/commpents/te_navbar", "te-nav-bar": "/commpents/te_navbar",
"t-image": "tdesign-miniprogram/image/image" "t-image": "tdesign-miniprogram/image/image",
"t-image-viewer": "tdesign-miniprogram/image-viewer/image-viewer"
} }
} }

View File

@ -11,7 +11,8 @@
mode="heightFix" mode="heightFix"
style="margin: 0 50rpx 0 20rpx;" style="margin: 0 50rpx 0 20rpx;"
width="220rpx" height="220rpx" width="220rpx" height="220rpx"
aria-label="img" wx:for="{{license_cert}}" /> aria-label="img" wx:for="{{license_cert}}"
bindtap="show_license_cert" />
</view> </view>
</view> </view>
<view class="imgbox_item"> <view class="imgbox_item">
@ -40,4 +41,14 @@
</view> </view>
</view> </view>
</view> </view>
<!-- <t-image-viewer
deleteBtn="{{false}}"
close-btn="{{true}}"
show-index="{{true}}"
visible="{{license_cert_visible}}"
images="{{license_cert}}"
bind:close="close_license_cert"
></t-image-viewer> -->
</view> </view>

View File

@ -38,22 +38,22 @@ Page({
dot_4: false, dot_4: false,
}, },
onLoad() { onLoad() {
console.log("wenzhen onloadddd"); // console.log("wenzhen onloadddd");
// if(wx.$TUIKit){ // if(wx.$TUIKit){
// wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.MESSAGE_RECEIVED, this.$onMessageReceived, this); // wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.MESSAGE_RECEIVED, this.$onMessageReceived, this);
// }else{ // }else{
// app.imInit().then(res => { // app.imInit().then(res => {
// console.log("wenzhen onload imInit"); // // console.log("wenzhen onload imInit");
// wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.MESSAGE_RECEIVED, this.$onMessageReceived, this); // wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.MESSAGE_RECEIVED, this.$onMessageReceived, this);
// }); // });
// } // }
//监听网络状态变化事件 //监听网络状态变化事件
wx.onNetworkStatusChange(function (res) { wx.onNetworkStatusChange(function (res) {
console.log("onNetworkStatusChange from wenzhen: ") // console.log("onNetworkStatusChange from wenzhen: ")
console.log(res.isConnected) // console.log(res.isConnected)
console.log(res.networkType) // console.log(res.networkType)
wx.showToast({ wx.showToast({
title: '网络类型'+res.networkType, title: '网络类型'+res.networkType,
}) })
@ -89,10 +89,10 @@ Page({
this.setData({ this.setData({
unreadnnum_inter: unreadnnum_inter unreadnnum_inter: unreadnnum_inter
}) })
console.log("app.globalData.unreadnnum_inter: ", app.globalData.unreadnnum_inter); // console.log("app.globalData.unreadnnum_inter: ", app.globalData.unreadnnum_inter);
}, },
onShow: function () { onShow: function () {
console.log("onShow from wenzhen V2") // console.log("onShow from wenzhen V2")
if(this.data.hasOnShow){ if(this.data.hasOnShow){
wx.stopPullDownRefresh() wx.stopPullDownRefresh()
return; return;
@ -120,13 +120,13 @@ Page({
wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.MESSAGE_RECEIVED, this.$onMessageReceived, this); wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.MESSAGE_RECEIVED, this.$onMessageReceived, this);
}else{ }else{
app.imInit().then(res => { app.imInit().then(res => {
console.log("wenzhen onload imInit"); // console.log("wenzhen onload imInit");
wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.MESSAGE_RECEIVED, this.$onMessageReceived, this); wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.MESSAGE_RECEIVED, this.$onMessageReceived, this);
}); });
} }
}, },
onHide(){ onHide(){
console.log("onHideonHide from wenzhen") // console.log("onHideonHide from wenzhen")
if (typeof this.getTabBar === 'function' && this.getTabBar()) { if (typeof this.getTabBar === 'function' && this.getTabBar()) {
this.getTabBar().stopInterval() this.getTabBar().stopInterval()
} }
@ -154,7 +154,7 @@ Page({
wx.$TUIKit.off(wx.$TUIKitTIM.EVENT.MESSAGE_RECEIVED, this.$onMessageReceived); wx.$TUIKit.off(wx.$TUIKitTIM.EVENT.MESSAGE_RECEIVED, this.$onMessageReceived);
}, },
onUnload(){ onUnload(){
console.log("onUnload from wenzhen") // console.log("onUnload from wenzhen")
this.setData({ this.setData({
hasOnShow: false, hasOnShow: false,
message_inquiry_type: 9999, message_inquiry_type: 9999,
@ -162,19 +162,19 @@ Page({
}) })
}, },
getConversationList(){ getConversationList(){
console.log("getConversationListgetConversationListgetConversationList"); // console.log("getConversationListgetConversationListgetConversationList");
app.imInit().then(res => { app.imInit().then(res => {
console.log("wenzhen onload imInit: ", res); // console.log("wenzhen onload imInit: ", res);
wx.$TUIKit.getConversationList().then((imResponse) => { wx.$TUIKit.getConversationList().then((imResponse) => {
console.log("imResponse.data.conversationList from wenzhen_v2: ", imResponse.data.conversationList); // console.log("imResponse.data.conversationList from wenzhen_v2: ", imResponse.data.conversationList);
this.setData({ this.setData({
conversationList: imResponse.data.conversationList, conversationList: imResponse.data.conversationList,
}); });
}).then(() => { }).then(() => {
console.log("开始查询订单状态") // console.log("开始查询订单状态")
this.formatStatus(); this.formatStatus();
}).catch(error => { }).catch(error => {
console.log(error) console.error(error)
}); });
}); });
}, },
@ -189,7 +189,7 @@ Page({
}, },
$onMessageReceived(value) { $onMessageReceived(value) {
const message = value.data[0]; const message = value.data[0];
console.log("message from wenzhen: ",message) // console.log("message from wenzhen: ",message)
this.getConversationList(); this.getConversationList();
// let cloudCustomData = JSON.parse(message.cloudCustomData); // let cloudCustomData = JSON.parse(message.cloudCustomData);
// let inquiry_type = cloudCustomData.inquiry_type; // let inquiry_type = cloudCustomData.inquiry_type;
@ -286,6 +286,7 @@ Page({
order_inquiry_id_list.push("");//初始化一个,防止失败 order_inquiry_id_list.push("");//初始化一个,防止失败
this.data.conversationList.forEach(item => { this.data.conversationList.forEach(item => {
let conversationID = item.conversationID; let conversationID = item.conversationID;
console.warn("conversationID: ", conversationID)
if(conversationID == "C2Cadministrator") return;//如果是管理员消息直接跳过 if(conversationID == "C2Cadministrator") return;//如果是管理员消息直接跳过
let lastMessage = item.lastMessage; let lastMessage = item.lastMessage;
if(!lastMessage) return; if(!lastMessage) return;
@ -295,7 +296,7 @@ Page({
try { try {
cloudCustomDataJson = JSON.parse(cloudCustomData); cloudCustomDataJson = JSON.parse(cloudCustomData);
} catch (error) { } catch (error) {
console.log(error); // console.log(error);
return; return;
} }
let order_inquiry_id = cloudCustomDataJson.order_inquiry_id; let order_inquiry_id = cloudCustomDataJson.order_inquiry_id;
@ -341,7 +342,7 @@ Page({
conversationList: new_conversationList conversationList: new_conversationList
}) })
}).then(() => { }).then(() => {
console.log("开始格式化formatConversationList") // console.log("开始格式化formatConversationList")
this.formatConversationList(); this.formatConversationList();
}).catch(errors => {console.error(errors);}) }).catch(errors => {console.error(errors);})
}, },
@ -386,7 +387,7 @@ Page({
if(index > -1) return; if(index > -1) return;
let patient_family_data = cloudCustomDataJson.patient_family_data; let patient_family_data = cloudCustomDataJson.patient_family_data;
if(patient_family_data == undefined) return; if(patient_family_data == undefined) return;
console.log("patient_family_data: ", patient_family_data); // console.log("patient_family_data: ", patient_family_data);
let session_item = {}; let session_item = {};
session_item.inquiry_status = item.inquiry_status;//订单状态暂无 session_item.inquiry_status = item.inquiry_status;//订单状态暂无
let txt = {}; let txt = {};
@ -394,7 +395,7 @@ Page({
let text = "自定义消息"; let text = "自定义消息";
let payload = lastMessage.payload; let payload = lastMessage.payload;
if(payload) { if(payload) {
console.log("payload: ",payload.data); // console.log("payload: ",payload.data);
let payloadJson = JSON.parse(payload.data); let payloadJson = JSON.parse(payload.data);
text = payloadJson.title.replaceAll(/—/g, ""); text = payloadJson.title.replaceAll(/—/g, "");
} }
@ -462,7 +463,7 @@ Page({
return index; return index;
}, },
onTabsChange(e){ onTabsChange(e){
console.log(e); // console.log(e);
}, },
goChat(e){ goChat(e){
this.setData({ this.setData({
@ -487,13 +488,13 @@ Page({
this.setData({ this.setData({
show: false show: false
}) })
console.log("order_inquiry_id: ", e.currentTarget.dataset.order_inquiry_id); // console.log("order_inquiry_id: ", e.currentTarget.dataset.order_inquiry_id);
let params = {}; let params = {};
params.order_inquiry_id = e.currentTarget.dataset.order_inquiry_id; params.order_inquiry_id = e.currentTarget.dataset.order_inquiry_id;
console.log("params: ",params) // console.log("params: ",params)
api.postDoctorInquiry(params).then(response => { api.postDoctorInquiry(params).then(response => {
console.log("开始接诊"); // console.log("开始接诊");
console.log(response); // console.log(response);
}).then(() => { }).then(() => {
this.goChat(e); this.goChat(e);
}).catch(errors => { }).catch(errors => {
@ -517,7 +518,7 @@ Page({
let show_dialog_from_account = e.currentTarget.dataset.show_dialog_from_account; let show_dialog_from_account = e.currentTarget.dataset.show_dialog_from_account;
let show_dialog_order_inquiry_id = e.currentTarget.dataset.show_dialog_order_inquiry_id; let show_dialog_order_inquiry_id = e.currentTarget.dataset.show_dialog_order_inquiry_id;
let show_dialog_inquiry_type = e.currentTarget.dataset.show_dialog_inquiry_type; let show_dialog_inquiry_type = e.currentTarget.dataset.show_dialog_inquiry_type;
console.log("tabShowtabShowtabShowtabShow"); // console.log("tabShowtabShowtabShowtabShow");
this.setData({ this.setData({
show_dialog_from_account: show_dialog_from_account, show_dialog_from_account: show_dialog_from_account,
show_dialog_order_inquiry_id: show_dialog_order_inquiry_id, show_dialog_order_inquiry_id: show_dialog_order_inquiry_id,
@ -526,24 +527,24 @@ Page({
}) })
}, },
onClose(){ onClose(){
console.log("onCloseonCloseonCloseonClose") // console.log("onCloseonCloseonCloseonClose")
this.setData({ this.setData({
show: false show: false
}) })
}, },
vanTabsChange(e){ vanTabsChange(e){
console.log(e) // // console.log(e)
this.setData({ this.setData({
now_message_inquiry_type: e.detail.name now_message_inquiry_type: e.detail.name
}) })
}, },
onPullDownRefresh(){ onPullDownRefresh(){
console.log("用户下拉动作") // console.log("用户下拉动作")
this.onHide(); this.onHide();
this.onShow(); this.onShow();
}, },
onReachBottom() { onReachBottom() {
console.log('===触底了!!==='); // console.log('===触底了!!===');
let now_message_inquiry_type = this.data.now_message_inquiry_type; let now_message_inquiry_type = this.data.now_message_inquiry_type;
if(now_message_inquiry_type == 5){ if(now_message_inquiry_type == 5){
if(this.data.current_page < this.data.last_page){//最后一页时停止分页 if(this.data.current_page < this.data.last_page){//最后一页时停止分页
@ -557,7 +558,7 @@ Page({
params.page = this.data.current_page + 1; params.page = this.data.current_page + 1;
this.setData({data_list_5_loading: true}) this.setData({data_list_5_loading: true})
api.getDoctorInquiryFinishMessage(params).then(response => { api.getDoctorInquiryFinishMessage(params).then(response => {
console.log(response); // console.log(response);
this.setData({ this.setData({
"data_list_5": data_list_5.concat(response.data.data), "data_list_5": data_list_5.concat(response.data.data),
current_page: response.data.current_page, current_page: response.data.current_page,

View File

@ -9,7 +9,6 @@ Component({
type: Object, type: Object,
value: {}, value: {},
observer(newVal) { observer(newVal) {
console.log("observerobserverobserverobserver")
// console.log(newVal) // console.log(newVal)
this.setData({ this.setData({
renderDom: parseText(newVal), renderDom: parseText(newVal),

View File

@ -96,7 +96,8 @@ Component({
ChangYongYu: [], ChangYongYu: [],
dialog_visible: false, dialog_visible: false,
dialog_message: "在线开处方需先进行多点执业认证", dialog_message: "在线开处方需先进行多点执业认证",
message_rounds: 0 message_rounds: 0,
networkstatus: "wifi"
}, },
lifetimes: { lifetimes: {
@ -132,6 +133,27 @@ Component({
text: '按住说话', text: '按住说话',
}); });
}); });
let _this = this
wx.onNetworkStatusChange(function (res) {
// console.log("onNetworkStatusChange from wenzhen: ")
// console.log(res.isConnected)
// console.log(res.networkType)
// wx.showToast({
// title: '网络类型:'+res.networkType,
// })
_this.setData({
networkstatus: res.networkType
})
})
console.log("pageLifetimes show")
wx.getNetworkType({
success (res) {
const networkType = res.networkType
_this.setData({
networkstatus: networkType
})
}
})
}, },
}, },
@ -139,7 +161,7 @@ Component({
show(){ show(){
//获得常用语 //获得常用语
let words = wx.getStorageSync('words'); let words = wx.getStorageSync('words');
console.log("words from chat: ", words); // console.log("words from chat: ", words);
if(words){ if(words){
this.setData({ this.setData({
message: words, message: words,
@ -147,6 +169,18 @@ Component({
}) })
wx.setStorageSync('words', ""); wx.setStorageSync('words', "");
} }
console.log("pageLifetimes show")
let _this = this
wx.getNetworkType({
success (res) {
const networkType = res.networkType
_this.setData({
networkstatus: networkType
})
}
})
} }
}, },
@ -323,13 +357,23 @@ Component({
// 发送图片消息 // 发送图片消息
handleSendImageMessage(file) { handleSendImageMessage(file) {
let networkstatus = this.data.networkstatus
console.log("networkstatus: ", networkstatus)
if(networkstatus === 'none'){
wx.showToast({
title: '请检查您的网络',
icon: 'error'
})
return
}
let _this = this; let _this = this;
let conversationID = this.data.conversation.conversationID let conversationID = this.data.conversation.conversationID
let promise = wx.$TUIKit.getConversationProfile(conversationID); let promise = wx.$TUIKit.getConversationProfile(conversationID);
promise.then(function(imResponse) { promise.then(function(imResponse) {
console.log("getConversationProfile 正在执行") // console.log("getConversationProfile 正在执行")
// 获取成功 // 获取成功
console.log(imResponse.data.conversation); // 会话资料 // console.log(imResponse.data.conversation); // 会话资料
_this.setData({ _this.setData({
conversation: imResponse.data.conversation conversation: imResponse.data.conversation
}) })
@ -340,7 +384,7 @@ Component({
Promise.all([promise]).then(res => { Promise.all([promise]).then(res => {
// 获取最后一条消息 // 获取最后一条消息
let last_message = this.data.conversation.lastMessage; let last_message = this.data.conversation.lastMessage;
console.log("last_message: ", last_message); // console.log("last_message: ", last_message);
let cloudCustomData = ""; let cloudCustomData = "";
let cloudCustomDataJson = ""; let cloudCustomDataJson = "";
if(last_message.cloudCustomData){ if(last_message.cloudCustomData){
@ -412,7 +456,7 @@ Component({
}, },
handleCommonFunctions(e) { handleCommonFunctions(e) {
console.log("handleCommonFunctions: ", e) // console.log("handleCommonFunctions: ", e)
switch (e.target.dataset.key) { switch (e.target.dataset.key) {
case '0': case '0':
this.setData({ this.setData({
@ -434,11 +478,11 @@ Component({
break; break;
case '11'://在线开方 case '11'://在线开方
let _this = this; let _this = this;
console.log("开始订阅消息"); // console.log("开始订阅消息");
wx.requestSubscribeMessage({ wx.requestSubscribeMessage({
tmplIds: ['kUy70xHlr7ADo4aIHiictM4Te7MSec3E5kHsYvFQu40'], tmplIds: ['kUy70xHlr7ADo4aIHiictM4Te7MSec3E5kHsYvFQu40'],
success (res) { success (res) {
console.log(res); // console.log(res);
let order_inquiry_id = _this.data.order_inquiry_id let order_inquiry_id = _this.data.order_inquiry_id
api.getDoctorPrescriptionCheck({order_inquiry_id: order_inquiry_id}).then(response => { api.getDoctorPrescriptionCheck({order_inquiry_id: order_inquiry_id}).then(response => {
let status = response.data.status let status = response.data.status
@ -604,6 +648,17 @@ Component({
}, },
sendTextMessage(msg, flag) { sendTextMessage(msg, flag) {
let networkstatus = this.data.networkstatus
console.log("networkstatus: ", networkstatus)
if(networkstatus === 'none'){
wx.showToast({
title: '请检查您的网络',
icon: 'error'
})
return
}
wx.aegis.reportEvent({ wx.aegis.reportEvent({
name: 'messageType', name: 'messageType',
ext1: 'messageType-text', ext1: 'messageType-text',
@ -614,9 +669,9 @@ Component({
let conversationID = this.data.conversation.conversationID let conversationID = this.data.conversation.conversationID
let promise = wx.$TUIKit.getConversationProfile(conversationID); let promise = wx.$TUIKit.getConversationProfile(conversationID);
promise.then(function(imResponse) { promise.then(function(imResponse) {
console.log("getConversationProfile 正在执行") // console.log("getConversationProfile 正在执行")
// 获取成功 // 获取成功
console.log(imResponse.data.conversation); // 会话资料 // console.log(imResponse.data.conversation); // 会话资料
_this.setData({ _this.setData({
conversation: imResponse.data.conversation conversation: imResponse.data.conversation
}) })
@ -625,10 +680,10 @@ Component({
}); });
Promise.all([promise]).then(res => { Promise.all([promise]).then(res => {
console.log("getConversationProfile 执行完毕") // console.log("getConversationProfile 执行完毕")
//获取最后一条消息 //获取最后一条消息
let last_message = this.data.conversation.lastMessage; let last_message = this.data.conversation.lastMessage;
console.log("last_message: ", last_message); // console.log("last_message: ", last_message);
let cloudCustomData = ""; let cloudCustomData = "";
let cloudCustomDataJson = ""; let cloudCustomDataJson = "";
if(last_message.cloudCustomData){ if(last_message.cloudCustomData){
@ -659,8 +714,8 @@ Component({
patient_family_data: patient_family_data patient_family_data: patient_family_data
}); });
console.log("mycloudCustomData: ", mycloudCustomData); // console.log("mycloudCustomData: ", mycloudCustomData);
console.log("text: ", text); // console.log("text: ", text);
const message = wx.$TUIKit.createTextMessage({ const message = wx.$TUIKit.createTextMessage({
to, to,
conversationType: this.data.conversation.type, conversationType: this.data.conversation.type,
@ -850,6 +905,15 @@ Component({
}, },
$sendTIMMessage(message) { $sendTIMMessage(message) {
console.log("$sendTIMMessage: ",message)
let networkstatus = this.data.networkstatus
if(networkstatus === 'none'){
wx.showToast({
title: '请检查您的网络',
icon: 'error'
})
return
}
this.triggerEvent('sendMessage', { this.triggerEvent('sendMessage', {
message, message,
}); });
@ -857,7 +921,14 @@ Component({
offlinePushInfo: { offlinePushInfo: {
disablePush: true, disablePush: true,
}, },
}).then(() => { }).then((res) => {
console.log("sendMessage:", res)
if(res.code === 0){
this.triggerEvent('refreshMessageStatus', {
message,
});
}
const firstSendMessage = wx.getStorageSync('isFirstSendMessage'); const firstSendMessage = wx.getStorageSync('isFirstSendMessage');
if (firstSendMessage) { if (firstSendMessage) {
wx.aegis.reportEvent({ wx.aegis.reportEvent({

View File

@ -140,22 +140,23 @@ Component({
this.setData({ this.setData({
list_first_loading: true list_first_loading: true
}) })
console.log("showshowshowshowshowshowshow") // console.log("showshowshowshowshowshowshow")
}, },
hide(){ hide(){
this.setData({ this.setData({
list_first_loading: false list_first_loading: false
}) })
console.log("hidehidehidehidehidehidehidehidehidehidehide") // console.log("hidehidehidehidehidehidehidehidehidehidehide")
} }
}, },
methods: { methods: {
// 刷新消息列表 // 刷新消息列表
refresh() { refresh() {
console.log("refresh.......") // console.log("refresh.......")
this.setData({ this.setData({
autoToButtom: false autoToButtom: false,
list_first_loading: true
}) })
if (this.data.isCompleted) { if (this.data.isCompleted) {
this.setData({ this.setData({
@ -171,9 +172,13 @@ Component({
}); });
}, 2000); }, 2000);
}, },
pcrefresh(){
console.log("pcrefresh")
wx.startPullDownRefresh()
},
// 获取消息列表 // 获取消息列表
getMessageList(conversation) { getMessageList(conversation) {
console.log("getMessageListgetMessageListgetMessageList") // console.log("getMessageListgetMessageListgetMessageList")
if (!this.data.isCompleted) { if (!this.data.isCompleted) {
wx.$TUIKit.getMessageList({ wx.$TUIKit.getMessageList({
conversationID: conversation.conversationID, conversationID: conversation.conversationID,
@ -227,7 +232,8 @@ Component({
} }
}, },
refreshMessageRounds(message){ refreshMessageRounds(message){
console.log("messageList refreshMessageRounds message: ", message); try {
// console.log("messageList refreshMessageRounds message: ", message);
let cloudCustomData = ""; let cloudCustomData = "";
let cloudCustomDataJson = ""; let cloudCustomDataJson = "";
if(message.cloudCustomData){ if(message.cloudCustomData){
@ -243,7 +249,7 @@ Component({
if(payloadData){ if(payloadData){
let title = payloadData.title let title = payloadData.title
//问诊已开始重置message_rounds = 0 //问诊已开始重置message_rounds = 0
if(title.indexOf("问诊已开始") > -1){ if(title && title.indexOf("问诊已开始") > -1){
this.setData({ this.setData({
message_rounds: 0 message_rounds: 0
}) })
@ -256,10 +262,10 @@ Component({
} }
let now_message_rounds = this.data.message_rounds let now_message_rounds = this.data.message_rounds
console.log("now_message_rounds: ", now_message_rounds) // console.log("now_message_rounds: ", now_message_rounds)
if(cloudCustomDataJson){ if(cloudCustomDataJson){
let message_rounds = cloudCustomDataJson.message_rounds; let message_rounds = cloudCustomDataJson.message_rounds;
console.log("message_rounds: ", message_rounds) // console.log("message_rounds: ", message_rounds)
if(message_rounds > now_message_rounds){ if(message_rounds > now_message_rounds){
this.setData({ this.setData({
message_rounds: message_rounds message_rounds: message_rounds
@ -269,6 +275,10 @@ Component({
this.triggerEvent('refreshMessageRounds', myEventOption) this.triggerEvent('refreshMessageRounds', myEventOption)
} }
} }
} catch (error) {
console.error(error)
}
}, },
checkShowAvatar(message, refreshBaseInfo){ checkShowAvatar(message, refreshBaseInfo){
// console.log("checkShowAvatar "); // console.log("checkShowAvatar ");
@ -294,7 +304,7 @@ Component({
}, },
// 历史消息渲染 // 历史消息渲染
$handleMessageRender(messageList, currentMessageList) { $handleMessageRender(messageList, currentMessageList) {
console.log("handleMessageRenderhandleMessageRenderhandleMessageRender"); // console.log("handleMessageRenderhandleMessageRenderhandleMessageRender");
// this.showHistoryMessageTime(currentMessageList); // this.showHistoryMessageTime(currentMessageList);
if (messageList.length > 0) { if (messageList.length > 0) {
if (this.data.conversation.type === '@TIM#SYSTEM') { if (this.data.conversation.type === '@TIM#SYSTEM') {
@ -311,7 +321,7 @@ Component({
}, },
// 系统消息去重 // 系统消息去重
filterRepateSystemMessage(messageList) { filterRepateSystemMessage(messageList) {
console.log("filterRepateSystemMessage") // console.log("filterRepateSystemMessage")
const noRepateMessage = []; const noRepateMessage = [];
for (let index = 0; index < messageList.length; index++) { for (let index = 0; index < messageList.length; index++) {
if (!noRepateMessage.some(item => item && item.ID === messageList[index].ID)) { if (!noRepateMessage.some(item => item && item.ID === messageList[index].ID)) {
@ -342,7 +352,7 @@ Component({
$onMessageReceived(value) { $onMessageReceived(value) {
let autoToButtom = this.data.autoToButtom; let autoToButtom = this.data.autoToButtom;
console.log("autoToButtom:", autoToButtom) // console.log("autoToButtom:", autoToButtom)
const message = value.data[0]; const message = value.data[0];
//更新会话数 //更新会话数
this.refreshMessageRounds(message) this.refreshMessageRounds(message)
@ -355,8 +365,8 @@ Component({
wx.$TUIKit.setMessageRead({ conversationID: this.data.conversation.conversationID }).then(() => { wx.$TUIKit.setMessageRead({ conversationID: this.data.conversation.conversationID }).then(() => {
logger.log('| MessageList | setMessageRead | ok'); logger.log('| MessageList | setMessageRead | ok');
}); });
console.log('| MessageList | setMessageRead | ok'); // console.log('| MessageList | setMessageRead | ok');
console.log('message cloudCustomData', message.cloudCustomData); // console.log('message cloudCustomData', message.cloudCustomData);
const { BUSINESS_ID_TEXT, MESSAGE_TYPE_TEXT } = constant; const { BUSINESS_ID_TEXT, MESSAGE_TYPE_TEXT } = constant;
// this.messageTimeForShow(message); // this.messageTimeForShow(message);
@ -430,11 +440,11 @@ Component({
} }
let jumpAim = `ID-${this.filterSystemMessageID(this.data.messageList[this.data.messageList.length - 1].ID)}`; let jumpAim = `ID-${this.filterSystemMessageID(this.data.messageList[this.data.messageList.length - 1].ID)}`;
console.log("jumpAim:", jumpAim); // console.log("jumpAim:", jumpAim);
console.log("message.from: ", message.from) // console.log("message.from: ", message.from)
console.log("conversation: ", this.data.conversation) // console.log("conversation: ", this.data.conversation)
console.log("conversation: ", this.data.conversation.lastMessage.from) // console.log("conversation: ", this.data.conversation.lastMessage.from)
if(autoToButtom && message.conversationID === this.data.conversation.conversationID){ if(autoToButtom && message.conversationID === this.data.conversation.conversationID){
this.setData({ this.setData({
jumpAim: jumpAim jumpAim: jumpAim
@ -445,8 +455,8 @@ Component({
}, },
// 自己的消息上屏 // 自己的消息上屏
updateMessageList(message) { updateMessageList(message) {
console.log("自己的消息上屏 updateMessageList: ", message); // console.log("自己的消息上屏 updateMessageList: ", message);
console.log(message); // console.log(message);
//自己的消息有头像 //自己的消息有头像
if(!this.checkShowAvatar(message, false)){ if(!this.checkShowAvatar(message, false)){
message.no_avatar = true; message.no_avatar = true;
@ -474,7 +484,7 @@ Component({
this.data.messageList.push(message); this.data.messageList.push(message);
} }
} else { } else {
console.log(message) // console.log(message)
this.data.messageList.push(message); this.data.messageList.push(message);
} }
this.setData({ this.setData({
@ -487,6 +497,16 @@ Component({
}); });
}); });
}, },
refreshMessageStatus(message){
console.log("MessageList refreshMessageStatus", message)
this.setData({
messageList: this.data.messageList,
}, () => {
this.setData({
messageList: this.data.messageList,
});
});
},
// 兼容 scrollView // 兼容 scrollView
filterSystemMessageID(messageID) { filterSystemMessageID(messageID) {
const index = messageID.indexOf('@TIM#'); const index = messageID.indexOf('@TIM#');
@ -506,7 +526,7 @@ Component({
if (this.data.messageList[index].status === 'success') { if (this.data.messageList[index].status === 'success') {
const { index } = e.currentTarget.dataset; const { index } = e.currentTarget.dataset;
let message = this.data.messageList[index]; let message = this.data.messageList[index];
console.log(message) // console.log(message)
if(message.type === 'TIMCustomElem'){ if(message.type === 'TIMCustomElem'){
return return
} }
@ -521,7 +541,7 @@ Component({
}, },
// 更新 messagelist // 更新 messagelist
updateMessageByID(deleteMessageID) { updateMessageByID(deleteMessageID) {
console.log("updateMessageByIDupdateMessageByIDupdateMessageByID") // console.log("updateMessageByIDupdateMessageByIDupdateMessageByID")
const { messageList } = this.data; const { messageList } = this.data;
const deleteMessageArr = messageList.filter(item => item.ID === deleteMessageID); const deleteMessageArr = messageList.filter(item => item.ID === deleteMessageID);
this.setData({ this.setData({
@ -624,7 +644,7 @@ Component({
}, },
// 消息跳转到最新 // 消息跳转到最新
handleJumpNewMessage() { handleJumpNewMessage() {
console.log("handleJumpNewMessage") // console.log("handleJumpNewMessage")
this.setData({ this.setData({
jumpAim: `ID-${this.filterSystemMessageID(this.data.messageList[this.data.messageList.length - 1].ID)}`, jumpAim: `ID-${this.filterSystemMessageID(this.data.messageList[this.data.messageList.length - 1].ID)}`,
showDownJump: false, showDownJump: false,
@ -633,7 +653,7 @@ Component({
}, },
// 消息跳转到最近未读 // 消息跳转到最近未读
handleJumpUnreadMessage() { handleJumpUnreadMessage() {
console.log("handleJumpUnreadMessage") // console.log("handleJumpUnreadMessage")
if (this.data.unreadCount > 15) { if (this.data.unreadCount > 15) {
this.getMessageList(this.data.conversation); this.getMessageList(this.data.conversation);
this.setData({ this.setData({
@ -650,11 +670,11 @@ Component({
}, },
//myscroll 自定义滑动事件 //myscroll 自定义滑动事件
myscroll(e){ myscroll(e){
console.log(e.detail.deltaY,e.detail.scrollTop) // console.log(e.detail.deltaY,e.detail.scrollTop)
}, },
// 滑动到最底部置跳转事件为false // 滑动到最底部置跳转事件为false
scrollHandler() { scrollHandler() {
console.log("触底了") // console.log("触底了")
this.setData({ this.setData({
jumpAim: `ID-${this.filterSystemMessageID(this.data.messageList[this.data.messageList.length - 1].ID)}`, jumpAim: `ID-${this.filterSystemMessageID(this.data.messageList[this.data.messageList.length - 1].ID)}`,
showDownJump: false, showDownJump: false,
@ -667,14 +687,14 @@ Component({
}, },
// 展示消息时间 // 展示消息时间
messageTimeForShow(message) { messageTimeForShow(message) {
console.log("messageTimeForShow") // console.log("messageTimeForShow")
// const interval = 5 * 60 * 1000; // const interval = 5 * 60 * 1000;
const interval = 5 * 60; const interval = 5 * 60;
const nowTime = Math.floor(message.time / 10) * 10 * 1000; const nowTime = Math.floor(message.time / 10) * 10 * 1000;
console.log("nowTime: ", nowTime) // console.log("nowTime: ", nowTime)
if (this.data.messageList.length > 0) { if (this.data.messageList.length > 0) {
const lastTime = this.data.messageList.slice(-1)[0].time * 1000; const lastTime = this.data.messageList.slice(-1)[0].time * 1000;
console.log("nowTime - lastTime=", (nowTime - lastTime)) // console.log("nowTime - lastTime=", (nowTime - lastTime))
if (nowTime - lastTime > interval) { if (nowTime - lastTime > interval) {
Object.assign(message, { Object.assign(message, {
isShowTime: true, isShowTime: true,
@ -683,7 +703,7 @@ Component({
let messageTime = this.cachMessageTime(nowTime); let messageTime = this.cachMessageTime(nowTime);
message.messageTime = messageTime[0]; message.messageTime = messageTime[0];
message.showMessageTime = messageTime[1]; message.showMessageTime = messageTime[1];
console.log("dayjs(nowTime): ", dayjs(nowTime)) // console.log("dayjs(nowTime): ", dayjs(nowTime))
this.setData({ this.setData({
messageTime: this.cachMessageTime(nowTime)[0], messageTime: this.cachMessageTime(nowTime)[0],
showMessageTime: true, showMessageTime: true,

View File

@ -13,6 +13,7 @@
"FileMessage": "../MessageElements/FileMessage/index", "FileMessage": "../MessageElements/FileMessage/index",
"MergerMessage": "../MessageElements/MergerMessage/index", "MergerMessage": "../MessageElements/MergerMessage/index",
"RevokeMessage": "../MessageElements/RevokeMessage/index", "RevokeMessage": "../MessageElements/RevokeMessage/index",
"van-loading": "@vant/weapp/loading/index" "van-loading": "@vant/weapp/loading/index",
"van-icon": "@vant/weapp/icon/index"
} }
} }

View File

@ -2,8 +2,8 @@
<scroll-view class="message-list-container" scroll-y="true" scroll-into-view="{{jumpAim}}" refresher-enabled="{{true}}" bindrefresherrefresh="refresh" refresher-triggered="{{triggered}}" lower-threshold="200" bindscrolltolower="scrollHandler" bindscrolltoupper="refresh" upper-threshold="100"> <scroll-view class="message-list-container" scroll-y="true" scroll-into-view="{{jumpAim}}" refresher-enabled="{{true}}" bindrefresherrefresh="refresh" refresher-triggered="{{triggered}}" lower-threshold="200" bindscrolltolower="scrollHandler" bindscrolltoupper="refresh" upper-threshold="100">
<view class="no-message" wx:if="{{isCompleted}}">没有更多啦</view> <view class="no-message" wx:if="{{isCompleted}}">没有更多啦</view>
<view style="width: 100%;text-align: center;position: absolute;top: 50%;"> <view style="width: 100%;text-align: center;position: absolute;top: 20rpx;">
<van-loading size="24px" wx:if="{{list_first_loading}}">加载中...</van-loading> <van-loading size="24px" wx:if="{{list_first_loading}}" vertical color="#1989fa">加载中...</van-loading>
</view> </view>
<view class="t-message" wx:if="{{conversation.type !== '@TIM#SYSTEM'}}" wx:for="{{messageList}}" wx:key="index" data-index ='{{index}}'> <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="{{item.showMessageTime}}"> <view class="time-pop-mask" data-value="{{item.time}}" wx:if="{{item.showMessageTime}}">
@ -40,9 +40,14 @@
<TipMessage wx:if="{{item.type === 'TIMGroupTipElem'}}" message="{{item}}"/> <TipMessage wx:if="{{item.type === 'TIMGroupTipElem'}}" message="{{item}}"/>
<view wx:if="{{item.type !== 'TIMGroupTipElem'}}" class="{{item.flow === 'out' ? 't-self-message':'t-recieve-message'}}" > <view wx:if="{{item.type !== 'TIMGroupTipElem'}}" class="{{item.flow === 'out' ? 't-self-message':'t-recieve-message'}}" >
<image class="t-message-avatar" wx:if="{{item.flow === 'in' && !item.no_avatar }}" src="{{item.avatar || 'https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/default_photo.png'}}" data-value="{{item}}" bindtap="getMemberProfile" /> <image class="t-message-avatar" wx:if="{{item.flow === 'in' && !item.no_avatar }}" src="{{item.avatar || 'https://gdxz-hospital.oss-cn-chengdu.aliyuncs.com/applet/doctor/static/images/default_photo.png'}}" data-value="{{item}}" bindtap="getMemberProfile" />
<view class="read-receipts" wx:if="{{conversation.type === 'C2C' && item.flow==='out' }}"> <!-- <view class="read-receipts" wx:if="{{conversation.type === 'C2C' && item.flow==='out' }}">
<!-- <view wx:if="{{item.isPeerRead}}" >已读</view> <view wx:if="{{item.isPeerRead}}" >已读</view>
<view wx:else>未读</view> --> <view wx:else>未读</view>
</view> -->
<view class="message_send_status" wx:if="{{conversation.type === 'C2C' && item.flow==='out' }}">
<van-loading type="spinner" wx:if="{{item.status == 'unSend'}}" size="24px" />
<van-icon name="fail" color="red" wx:if="{{item.status == 'fail'}}" />
<!-- <van-icon name="success" color="green" wx:if="{{item.status == 'success'}}" /> -->
</view> </view>
<view wx:if="{{item.flow === 'out' && item.ID === errorMessageID || item.status === 'fail'}}" class="t-message-error-box"> <view wx:if="{{item.flow === 'out' && item.ID === errorMessageID || item.status === 'fail'}}" class="t-message-error-box">
<image class="t-message-error" wx:if="{{showMessageError}}" src='../../../../static/images/tuikit-msg-error.png' bindtap="ResendMessage" /> <image class="t-message-error" wx:if="{{showMessageError}}" src='../../../../static/images/tuikit-msg-error.png' bindtap="ResendMessage" />

View File

@ -62,6 +62,13 @@
color: #6e7981; color: #6e7981;
margin-right: 10px margin-right: 10px
} }
.message_send_status {
line-height: 42px;
height: 42px;
font-size: 12px;
color: #6e7981;
margin-right: 10px
}
.no-message { .no-message {
text-align: center; text-align: center;
position: fixed; position: fixed;

View File

@ -81,7 +81,7 @@ Component({
} }
this.getNavbarHeight() this.getNavbarHeight()
wx.onKeyboardHeightChange(res => { wx.onKeyboardHeightChange(res => {
console.log("键盘高度:", res.height) // console.log("键盘高度:", res.height)
this.setData({ this.setData({
keysboards_height: res.height keysboards_height: res.height
}) })
@ -98,7 +98,7 @@ Component({
// console.log("pages.length:", pages.length) // console.log("pages.length:", pages.length)
// console.log("pages:", pages[0]) // console.log("pages:", pages[0])
if(pages.length == 1){ if(pages.length == 1){
console.log("navbarData.showCapsule"); // console.log("navbarData.showCapsule");
this.setData({ this.setData({
"navbarData.showCapsule": 3 "navbarData.showCapsule": 3
}) })
@ -149,9 +149,9 @@ Component({
*/ */
methods: { methods: {
refreshMessageRounds(e){ refreshMessageRounds(e){
console.log("TUIchat refreshMessageRounds", e) // console.log("TUIchat refreshMessageRounds", e)
let message_rounds = e.detail.message_rounds let message_rounds = e.detail.message_rounds
console.log("TUIchat refreshMessageRounds message_rounds", message_rounds) // console.log("TUIchat refreshMessageRounds message_rounds", message_rounds)
this.setData({ this.setData({
message_rounds: message_rounds message_rounds: message_rounds
}) })
@ -161,18 +161,18 @@ Component({
if (wx.getMenuButtonBoundingClientRect) { if (wx.getMenuButtonBoundingClientRect) {
rect = wx.getMenuButtonBoundingClientRect(); rect = wx.getMenuButtonBoundingClientRect();
} }
console.log("rect: ", rect) // console.log("rect: ", rect)
wx.getSystemInfo({ wx.getSystemInfo({
success: (res) => { success: (res) => {
const { statusBarHeight } = wx.getSystemInfoSync(); const { statusBarHeight } = wx.getSystemInfoSync();
console.log("statusBarHeight: ", statusBarHeight); // console.log("statusBarHeight: ", statusBarHeight);
console.log("${rect.height}px: ", `${rect.height}`); // console.log("${rect.height}px: ", `${rect.height}`);
let height = Number.parseInt(statusBarHeight) + Number.parseInt(`${rect.height}`) + 50; let height = Number.parseInt(statusBarHeight) + Number.parseInt(`${rect.height}`) + 50;
if(addHeight){ if(addHeight){
height = height + addHeight height = height + addHeight
} }
let keysboards_height = this.data.keysboards_height let keysboards_height = this.data.keysboards_height
console.log("getNavbarHeight 键盘高度:", keysboards_height) // console.log("getNavbarHeight 键盘高度:", keysboards_height)
if(keysboards_height){ if(keysboards_height){
height = height + keysboards_height height = height + keysboards_height
} }
@ -198,7 +198,7 @@ Component({
}, },
confirmDialog(){ confirmDialog(){
api.putDoctorInquiryFinish({order_inquiry_id: this.data.order_inquiry_id}).then(response => { api.putDoctorInquiryFinish({order_inquiry_id: this.data.order_inquiry_id}).then(response => {
console.log(response); // console.log(response);
this.getInquiryMessageBasic(); this.getInquiryMessageBasic();
//调用子组件中的跳到最新消息 //调用子组件中的跳到最新消息
this.selectComponent('#MessageList').handleJumpNewMessage(); this.selectComponent('#MessageList').handleJumpNewMessage();
@ -209,9 +209,9 @@ Component({
}, },
//获取问诊订单消息内页基础数据 //获取问诊订单消息内页基础数据
getInquiryMessageBasic() { getInquiryMessageBasic() {
console.log("order_inquiry_id: ", this.data.order_inquiry_id); // console.log("order_inquiry_id: ", this.data.order_inquiry_id);
api.getInquiryMessageBasic({order_inquiry_id: this.data.order_inquiry_id}).then(response => { api.getInquiryMessageBasic({order_inquiry_id: this.data.order_inquiry_id}).then(response => {
console.log(response); // console.log(response);
this.setData({ this.setData({
baseInfo: response.data, baseInfo: response.data,
}) })
@ -260,11 +260,15 @@ Component({
this.selectComponent('#MessageList').updateMessageList(event.detail.message); this.selectComponent('#MessageList').updateMessageList(event.detail.message);
this.getNavbarHeight(); this.getNavbarHeight();
}, },
refreshMessageStatus(message) {
console.log("TUIchat refreshMessageStatus", message)
this.selectComponent('#MessageList').refreshMessageStatus(message);
},
showMessageErrorImage(event) { showMessageErrorImage(event) {
this.selectComponent('#MessageList').sendMessageError(event); this.selectComponent('#MessageList').sendMessageError(event);
}, },
triggerClose() { triggerClose() {
console.log("message-list triggerClose") // console.log("message-list triggerClose")
if(this.data.baseInfo.inquiry_status == 4){ if(this.data.baseInfo.inquiry_status == 4){
this.selectComponent('#MessageInput').handleClose(); this.selectComponent('#MessageInput').handleClose();
} }
@ -301,7 +305,7 @@ Component({
this.selectComponent('#MessageInput').onInputValueChange(event); this.selectComponent('#MessageInput').onInputValueChange(event);
}, },
myhandleExtensions(e){ myhandleExtensions(e){
console.log("myhandleExtensionsmyhandleExtensions: ", e); // console.log("myhandleExtensionsmyhandleExtensions: ", e);
wx.hideKeyboard() wx.hideKeyboard()
let displayFlag = e.detail.displayFlag; let displayFlag = e.detail.displayFlag;
setTimeout(() => { setTimeout(() => {
@ -321,7 +325,7 @@ Component({
}, },
// 监听键盘,获取焦点时将输入框推到键盘上方 // 监听键盘,获取焦点时将输入框推到键盘上方
pullKeysBoards(event) { pullKeysBoards(event) {
console.log("pullKeysBoardspullKeysBoards") // console.log("pullKeysBoardspullKeysBoards")
setNewInputStyle(event.detail.event.detail.height); setNewInputStyle(event.detail.event.detail.height);
this.getNavbarHeight(); this.getNavbarHeight();
@ -334,8 +338,8 @@ Component({
}, },
// 监听键盘,失去焦点时收起键盘 // 监听键盘,失去焦点时收起键盘
downKeysBoards(event) { downKeysBoards(event) {
console.log("downKeysBoardsdownKeysBoards") // console.log("downKeysBoardsdownKeysBoards")
console.log(event) // console.log(event)
let value = event.detail.event.detail.value; let value = event.detail.event.detail.value;
this.getNavbarHeight(); this.getNavbarHeight();
if(value){ if(value){

View File

@ -36,6 +36,7 @@
<view class="input-area" style="{{input_area_style}}" wx:if="{{baseInfo.inquiry_status==4}}"> <view class="input-area" style="{{input_area_style}}" wx:if="{{baseInfo.inquiry_status==4}}">
<view class="message-input" style="{{viewData.style}}" wx:if="{{showChat}}"> <view class="message-input" style="{{viewData.style}}" wx:if="{{showChat}}">
<MessageInput bind:myhandleExtensions="myhandleExtensions" id="MessageInput" inquiry_type="{{inquiry_type}}" baseInfo="{{baseInfo}}" order_inquiry_id="{{order_inquiry_id}}" conversation="{{conversation}}" hasCallKit="{{hasCallKit}}" bind:sendMessage="sendMessage" bind:downKeysBoards="downKeysBoards" bind:pullKeysBoards="pullKeysBoards" bind:showMessageErrorImage="showMessageErrorImage" <MessageInput bind:myhandleExtensions="myhandleExtensions" id="MessageInput" inquiry_type="{{inquiry_type}}" baseInfo="{{baseInfo}}" order_inquiry_id="{{order_inquiry_id}}" conversation="{{conversation}}" hasCallKit="{{hasCallKit}}" bind:sendMessage="sendMessage" bind:downKeysBoards="downKeysBoards" bind:pullKeysBoards="pullKeysBoards" bind:showMessageErrorImage="showMessageErrorImage"
bind:refreshMessageStatus="refreshMessageStatus"
bind:handleCall="handleCall" message_rounds="{{message_rounds}}"></MessageInput> bind:handleCall="handleCall" message_rounds="{{message_rounds}}"></MessageInput>
</view> </view>
</view> </view>

File diff suppressed because one or more lines are too long

65
app.js
View File

@ -25,7 +25,7 @@ App({
} }
}) })
console.log("download fonts from oss "); // console.log("download fonts from oss ");
let loadStatus = false; let loadStatus = false;
if (!loadStatus) { if (!loadStatus) {
// wx.loadFontFace({ // wx.loadFontFace({
@ -51,18 +51,18 @@ App({
//监听网络状态变化事件 //监听网络状态变化事件
wx.onNetworkStatusChange(function (res) { wx.onNetworkStatusChange(function (res) {
console.log("onNetworkStatusChange: ") // console.log("onNetworkStatusChange: ")
console.log(res.isConnected) // console.log(res.isConnected)
console.log(res.networkType) // console.log(res.networkType)
wx.showToast({ wx.showToast({
title: '网络类型'+res.networkType, title: '网络类型'+res.networkType,
}) })
}) })
wx.onNetworkWeakChange(function(res){ wx.onNetworkWeakChange(function(res){
console.log("onNetworkWeakChange: ") // console.log("onNetworkWeakChange: ")
console.log(res.isConnected) // console.log(res.isConnected)
console.log(res.networkType) // console.log(res.networkType)
}) })
}, },
onShow(){ onShow(){
@ -81,7 +81,7 @@ App({
} }
this.globalData.config.userID = userID; this.globalData.config.userID = userID;
let sign = genTestUserSig(this.globalData.config); let sign = genTestUserSig(this.globalData.config);
console.log("sign: ", sign); // console.log("sign: ", sign);
// const userSig = sign.userSig; // const userSig = sign.userSig;
if(!wx.$TUIKit){ if(!wx.$TUIKit){
@ -93,7 +93,7 @@ App({
} }
return response.data; return response.data;
}).then((userSig) => { }).then((userSig) => {
console.log("userSig: ", userSig); // console.log("userSig: ", userSig);
wx.$TUIKit = TIM.create({ wx.$TUIKit = TIM.create({
SDKAppID: this.globalData.config.SDKAPPID SDKAppID: this.globalData.config.SDKAPPID
}); });
@ -102,6 +102,7 @@ App({
wx.$chat_SDKAppID = this.globalData.config.SDKAPPID; wx.$chat_SDKAppID = this.globalData.config.SDKAPPID;
wx.$chat_userSig = userSig; wx.$chat_userSig = userSig;
wx.$TUIKitTIM = TIM; wx.$TUIKitTIM = TIM;
console.log("TIM: ", wx.$TUIKitTIM)
wx.$TUIKit.registerPlugin({ 'tim-upload-plugin': TIMUploadPlugin }); wx.$TUIKit.registerPlugin({ 'tim-upload-plugin': TIMUploadPlugin });
let login_promise = wx.$TUIKit.login({ let login_promise = wx.$TUIKit.login({
userID: this.globalData.config.userID, userID: this.globalData.config.userID,
@ -109,7 +110,7 @@ App({
}); });
login_promise.then(function(imResponse) { login_promise.then(function(imResponse) {
console.log(imResponse.data); // 登录成功 // console.log(imResponse.data); // 登录成功
}).catch(function(imError) { }).catch(function(imError) {
console.warn('login error:', imError); // 登录失败的相关信息 console.warn('login error:', imError); // 登录失败的相关信息
@ -125,7 +126,7 @@ App({
let promise = new Promise((resolve, reject) => { let promise = new Promise((resolve, reject) => {
resolve("success"); resolve("success");
}).then(res => { }).then(res => {
console.log("from app js:", res); // console.log("from app js:", res);
return "from app js"; return "from app js";
}); });
return promise; return promise;
@ -145,12 +146,12 @@ App({
}) })
}, },
onTotalUnreadMessageCountUpdated(){ onTotalUnreadMessageCountUpdated(){
console.log("onTotalUnreadMessageCountUpdated"); // console.log("onTotalUnreadMessageCountUpdated");
let totalUnreadCount = wx.$TUIKit.getTotalUnreadMessageCount(); let totalUnreadCount = wx.$TUIKit.getTotalUnreadMessageCount();
console.log("未读消息数量:", totalUnreadCount) // console.log("未读消息数量:", totalUnreadCount)
}, },
onSDKReady(){ onSDKReady(){
console.log("onSDKReady from app.js"); // console.log("onSDKReady from app.js");
this.globalData.chat_sdk_ready = true; this.globalData.chat_sdk_ready = true;
// let promise = wx.$TUIKit.deleteConversation('C2C500318318078251008'); // let promise = wx.$TUIKit.deleteConversation('C2C500318318078251008');
@ -161,6 +162,18 @@ App({
// console.warn('deleteConversation error:', imError); // 删除会话失败的相关信息 // console.warn('deleteConversation error:', imError); // 删除会话失败的相关信息
// }); // });
// console.log("TIM.version: ", wx.$TUIKitTIM)
// console.log("wx.$TUIKit: ",wx.$TUIKit.deleteConversation)
// // 删除单一会话, 不清空会话历史消息
// let promise = wx.$TUIKit.deleteConversation({conversationIDList:["C2C492404831991414785"], clearHistoryMessage: false});
// promise.then(function(imResponse) {
// // 删除会话成功
// console.log("删除成功!!")
// const { conversationIDList } = imResponse.data; // 被删除的会话 ID 列表
// }).catch(function(imError) {
// console.warn('deleteConversation error:', imError); // 删除会话失败的相关信息
// });
let usertype = wx.getStorageSync('usertype'); let usertype = wx.getStorageSync('usertype');
let userID = wx.getStorageSync('user_id_'+usertype); let userID = wx.getStorageSync('user_id_'+usertype);
//初始化tab-bar角标 //初始化tab-bar角标
@ -176,7 +189,7 @@ App({
wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.KICKED_OUT, this.onKickedOut); wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.KICKED_OUT, this.onKickedOut);
}, },
onKickedOut(){ onKickedOut(){
console.log("onKickedOutonKickedOutonKickedOutonKickedOut"); // console.log("onKickedOutonKickedOutonKickedOutonKickedOut");
let usertype = wx.getStorageSync('usertype'); let usertype = wx.getStorageSync('usertype');
wx.setStorageSync('AUTH_TOKEN_'+usertype, ""); wx.setStorageSync('AUTH_TOKEN_'+usertype, "");
wx.setStorageSync('user_id_'+usertype, ""); wx.setStorageSync('user_id_'+usertype, "");
@ -184,22 +197,22 @@ App({
this.go("/Pages/kickedout/index"); this.go("/Pages/kickedout/index");
}, },
$onSystemPushReceived(e){ $onSystemPushReceived(e){
console.log("onSystemPushReceived from app.js"); // console.log("onSystemPushReceived from app.js");
console.log(e) // console.log(e)
let usertype = wx.getStorageSync('usertype'); let usertype = wx.getStorageSync('usertype');
let userID = wx.getStorageSync('user_id_'+usertype); let userID = wx.getStorageSync('user_id_'+usertype);
let message = e.data[0]; let message = e.data[0];
console.log(message) // console.log(message)
let type = message.type; let type = message.type;
console.log(type); // console.log(type);
let unread_name = ""; let unread_name = "";
if(type == TIM.TYPES.MSG_CUSTOM){ if(type == TIM.TYPES.MSG_CUSTOM){
let payload = message.payload; let payload = message.payload;
let payloadData = payload.data; let payloadData = payload.data;
let payloadDataJson = JSON.parse(payloadData); let payloadDataJson = JSON.parse(payloadData);
let message_type = payloadDataJson.message_type; let message_type = payloadDataJson.message_type;
console.log("message_type: ", message_type); // console.log("message_type: ", message_type);
switch (message_type) { switch (message_type) {
case GDXZ_CUSTOM_MSEEAGE.TRABECULA: case GDXZ_CUSTOM_MSEEAGE.TRABECULA:
unread_name = userID+"_wenzhen_info"; //1、消息内页横条 unread_name = userID+"_wenzhen_info"; //1、消息内页横条
@ -271,13 +284,13 @@ App({
}, },
getConversationList(){ getConversationList(){
wx.$TUIKit.getConversationList().then((imResponse) => { wx.$TUIKit.getConversationList().then((imResponse) => {
console.log("getConversationList from app js: ", imResponse.data.conversationList); // console.log("getConversationList from app js: ", imResponse.data.conversationList);
return imResponse.data.conversationList; return imResponse.data.conversationList;
}).then(conversationList => { }).then(conversationList => {
console.log("开始查询订单状态") // console.log("开始查询订单状态")
this.formatStatus(conversationList); this.formatStatus(conversationList);
}).catch(error => { }).catch(error => {
console.log(error) console.error(error)
}); });
}, },
formatStatus(conversationList){ formatStatus(conversationList){
@ -294,7 +307,7 @@ App({
try { try {
cloudCustomDataJson = JSON.parse(cloudCustomData); cloudCustomDataJson = JSON.parse(cloudCustomData);
} catch (error) { } catch (error) {
console.log(error); console.error(error);
return; return;
} }
let order_inquiry_id = cloudCustomDataJson.order_inquiry_id; let order_inquiry_id = cloudCustomDataJson.order_inquiry_id;
@ -339,7 +352,7 @@ App({
} }
return new_conversationList; return new_conversationList;
}).then(new_conversationList => { }).then(new_conversationList => {
console.log("开始计算问诊角标"); // console.log("开始计算问诊角标");
let wenzhen_info = 0; let wenzhen_info = 0;
new_conversationList.forEach(item => { new_conversationList.forEach(item => {
let unreadCount = item.unreadCount; let unreadCount = item.unreadCount;
@ -352,7 +365,7 @@ App({
} }
} }
}) })
console.log("角标的数量:", wenzhen_info); // console.log("角标的数量:", wenzhen_info);
let usertype = wx.getStorageSync('usertype'); let usertype = wx.getStorageSync('usertype');
let userID = wx.getStorageSync('user_id_'+usertype); let userID = wx.getStorageSync('user_id_'+usertype);
wx.setStorageSync(userID+'_wenzhen_info', wenzhen_info); wx.setStorageSync(userID+'_wenzhen_info', wenzhen_info);