*/ | */ | ||||
methods: { | methods: { | ||||
tabChange(e) { | tabChange(e) { | ||||
wx.closeSocket(); | |||||
if (e.detail.item.text == "发布需求" || e.detail.item.text == "消息") { | |||||
if (!app.globalData.customerId) { | |||||
app.goLogin(); | |||||
return | |||||
} | |||||
} | |||||
const url = e.detail.item.pagePath; | const url = e.detail.item.pagePath; | ||||
wx.redirectTo({ url }); | wx.redirectTo({ url }); | ||||
} | } |
// 底部按钮点击 | // 底部按钮点击 | ||||
footBtnClick(){ | footBtnClick(){ | ||||
console.log(`点击了底部按钮`) | console.log(`点击了底部按钮`) | ||||
console.log(this.data.isOther) | |||||
// 前往聊一聊 | |||||
if(this.data.isOther){ | |||||
console.log(this.data.customer) | |||||
let customer = this.data.customer; | |||||
wx.navigateTo({ | |||||
url: "/pages/msgModule/wechat2/wechat2", | |||||
success: function (res) { | |||||
// 通过eventChannel向被打开页面传送数据 | |||||
res.eventChannel.emit('customerid', { customerid: customer.customerId, chatHeads: customer.chatHeads }) | |||||
} | |||||
}) | |||||
} | |||||
// 前往发布需求 | |||||
else{ | |||||
wx.navigateTo({ | |||||
url: '/pages/releaseModule/index', | |||||
}) | |||||
} | |||||
}, | }, | ||||
getListData() { | getListData() { | ||||
let { page, size, customerId } = this.data; | let { page, size, customerId } = this.data; |
padding: 26rpx 42rpx; | padding: 26rpx 42rpx; | ||||
padding-bottom: 0; | padding-bottom: 0; | ||||
position: relative; | position: relative; | ||||
position: sticky; | |||||
/* position: sticky; | |||||
top: 0; | top: 0; | ||||
z-index: 999; | |||||
z-index: 999; */ | |||||
} | } | ||||
.header-view .user-view{ | .header-view .user-view{ | ||||
height: 104rpx; | height: 104rpx; |
* 生命周期函数--监听页面加载 | * 生命周期函数--监听页面加载 | ||||
*/ | */ | ||||
onLoad() { | onLoad() { | ||||
if (!app.globalData.customerId) { | |||||
app.goLogin(); | |||||
return | |||||
} | |||||
}, | }, | ||||
onShow() { | onShow() { | ||||
const businessCommunicationCustomer = wx.getStorageSync('businessCommunicationCustomer') || null; | const businessCommunicationCustomer = wx.getStorageSync('businessCommunicationCustomer') || null; | ||||
// 接收服务器的消息事件 | // 接收服务器的消息事件 | ||||
wx.onSocketMessage(function (res) { | wx.onSocketMessage(function (res) { | ||||
// 接收到的消息{date,message,type} type类型为 1 是对方的消息 为 0 是自己的消息 | // 接收到的消息{date,message,type} type类型为 1 是对方的消息 为 0 是自己的消息 | ||||
console.log(res,'消息页----收到新消息') | |||||
console.log(res, '消息页----收到新消息') | |||||
// _this.initData(); | // _this.initData(); | ||||
let _data = JSON.parse(res.data); | let _data = JSON.parse(res.data); | ||||
_data.chatRecord = JSON.parse(_data.chatRecord); | _data.chatRecord = JSON.parse(_data.chatRecord); | ||||
let msgData = _this.data.msgData; | let msgData = _this.data.msgData; | ||||
msgData.forEach(el=>{ | |||||
msgData.forEach(el => { | |||||
// 如果当前消息的 customerId = 发送人的ID | // 如果当前消息的 customerId = 发送人的ID | ||||
if(el.businessCommunicationCustomerVO.customerId == _data.chatRecord.sender){ | |||||
if (el.businessCommunicationCustomerVO.customerId == _data.chatRecord.sender) { | |||||
el.lastContent = _data.chatRecord.content; | el.lastContent = _data.chatRecord.content; | ||||
el.lastContentDate = $util.formatTime(new Date(_data.chatRecord.sendTime)); | el.lastContentDate = $util.formatTime(new Date(_data.chatRecord.sendTime)); | ||||
el.lastContentDate = el.lastContentDate.replaceAll('/', '-'); | el.lastContentDate = el.lastContentDate.replaceAll('/', '-'); | ||||
} | } | ||||
}, | }, | ||||
// 去关注 | // 去关注 | ||||
followApplets(){ | |||||
followApplets() { | |||||
wx.navigateTo({ | wx.navigateTo({ | ||||
url: "/pages/outLink/outLink?followApplets=true", //跳转页面的路径,可带参数 ?隔开,不同参数用 & 分隔;相对路径,不需要.wxml后缀 | url: "/pages/outLink/outLink?followApplets=true", //跳转页面的路径,可带参数 ?隔开,不同参数用 & 分隔;相对路径,不需要.wxml后缀 | ||||
success: function () {}, //成功后的回调; | |||||
fail: function () {}, //失败后的回调; | |||||
complete: function () {} //结束后的回调(成功,失败都会执行) | |||||
success: function () { }, //成功后的回调; | |||||
fail: function () { }, //失败后的回调; | |||||
complete: function () { } //结束后的回调(成功,失败都会执行) | |||||
}) | }) | ||||
}, | }, | ||||
/** | /** | ||||
* 生命周期函数--监听页面隐藏 | * 生命周期函数--监听页面隐藏 | ||||
*/ | */ | ||||
onHide: function () { | |||||
onHide: function () { | |||||
wx.closeSocket(); | wx.closeSocket(); | ||||
}, | }, | ||||
input: null, | input: null, | ||||
openid: null, | openid: null, | ||||
// 表情 | // 表情 | ||||
connectemoji:[], | |||||
connectemoji: [], | |||||
emoji_list: ['emoji1i1', 'emoji2i2', 'emoji3i3', 'emoji4i4', 'emoji5i5'], | emoji_list: ['emoji1i1', 'emoji2i2', 'emoji3i3', 'emoji4i4', 'emoji5i5'], | ||||
emotionVisible: false, | emotionVisible: false, | ||||
inputShowed: false, | inputShowed: false, | ||||
// 当前产品详情 | // 当前产品详情 | ||||
productInfo: null, | productInfo: null, | ||||
// 发送框是否获取焦点 | // 发送框是否获取焦点 | ||||
inputShowed:false, | |||||
inputShowed: false, | |||||
}, | }, | ||||
/** | /** | ||||
this.setData({ | this.setData({ | ||||
receiveMemberId: customerId, | receiveMemberId: customerId, | ||||
sendAvatar, | sendAvatar, | ||||
connectemoji:$faces.getfaces(), | |||||
connectemoji: $faces.getfaces(), | |||||
}) | }) | ||||
// 获取内存中的数据 | // 获取内存中的数据 | ||||
this.getStorageBaseInfo() | this.getStorageBaseInfo() | ||||
console.log(businessCommunicationDemandId, '产品ID是否存在') | console.log(businessCommunicationDemandId, '产品ID是否存在') | ||||
if (businessCommunicationDemandId) { | if (businessCommunicationDemandId) { | ||||
if (historyList.length > 0) { | if (historyList.length > 0) { | ||||
let tempArr = []; | |||||
for (let index = historyList.length - 1; index >= 0; index--) { | for (let index = historyList.length - 1; index >= 0; index--) { | ||||
const element = historyList[index]; | const element = historyList[index]; | ||||
if (element.messageType == 1) { | if (element.messageType == 1) { | ||||
tempArr.push(element); | |||||
if (element.transactionId == businessCommunicationDemandId) { | if (element.transactionId == businessCommunicationDemandId) { | ||||
break; | break; | ||||
} else { | } else { | ||||
this.sendmsgApi("", 1); | this.sendmsgApi("", 1); | ||||
console.log(`走这里1`) | |||||
} | } | ||||
} | } | ||||
} | } | ||||
// 说明没有一条是messageType == 1 的 | |||||
if(tempArr.length < 1){ | |||||
this.sendmsgApi("", 1); | |||||
console.log(`走这里3`) | |||||
} | |||||
} else { | } else { | ||||
this.sendmsgApi("", 1); | this.sendmsgApi("", 1); | ||||
console.log(`走这里2`) | |||||
} | } | ||||
} | } | ||||
} | } | ||||
* 生命周期函数--监听页面隐藏 | * 生命周期函数--监听页面隐藏 | ||||
*/ | */ | ||||
onHide: function () { | onHide: function () { | ||||
wx.closeSocket(); | |||||
// wx.closeSocket(); | |||||
}, | }, | ||||
/** | /** | ||||
* 生命周期函数--监听页面卸载 | * 生命周期函数--监听页面卸载 | ||||
*/ | */ | ||||
onUnload: function () { | onUnload: function () { | ||||
wx.closeSocket(); | |||||
// wx.closeSocket(); | |||||
}, | }, | ||||
/** | /** | ||||
let { sendMemberId, receiveMemberId, businessCommunicationDemandId } = this.data; | let { sendMemberId, receiveMemberId, businessCommunicationDemandId } = this.data; | ||||
let transactionId = businessCommunicationDemandId; | let transactionId = businessCommunicationDemandId; | ||||
if (!businessCommunicationDemandId) { | if (!businessCommunicationDemandId) { | ||||
transactionId = this.data.historyList[this.data.historyList.length - 1].transactionId; | |||||
if(this.data.historyList.length > 0){ | |||||
transactionId = this.data.historyList[this.data.historyList.length - 1].transactionId; | |||||
} | |||||
} | |||||
if(!transactionId){ | |||||
transactionId = ""; | |||||
} | } | ||||
let params = { | let params = { | ||||
sender: receiveMemberId, // 发件人Id | sender: receiveMemberId, // 发件人Id | ||||
console.log(input, '输入框额值') | console.log(input, '输入框额值') | ||||
this.setData({ | this.setData({ | ||||
input, | input, | ||||
emotionVisible:false, | |||||
inputShowed:true, | |||||
emotionVisible: false, | |||||
inputShowed: true, | |||||
}) | }) | ||||
}, | }, | ||||
closeEmotionVisible(){ | |||||
closeEmotionVisible() { | |||||
this.setData({ | this.setData({ | ||||
emotionVisible:false, | |||||
emotionVisible: false, | |||||
}) | |||||
}, | |||||
// 发送图片 | |||||
upImg() { | |||||
wx.chooseImage({ | |||||
count: 1, | |||||
success: (res) => { | |||||
console.log(res); | |||||
console.log(res.tempFilePaths[0], '拿到的URL'); | |||||
wx.uploadFile({ | |||||
filePath: res.tempFilePaths[0], | |||||
name: "file", | |||||
url: "/file/uploading.action?fileType=TinymceImg", | |||||
success: (res2) => { | |||||
console.log(`上传之后的res2`,res2) | |||||
} | |||||
}) | |||||
// /file/uploading.action?fileType=TinymceImg | |||||
} | |||||
}) | }) | ||||
}, | }, | ||||
// 公共聚焦方法,方法比较笨,但是过度效果平滑流畅 | // 公共聚焦方法,方法比较笨,但是过度效果平滑流畅 |
* 生命周期函数--监听页面加载 | * 生命周期函数--监听页面加载 | ||||
*/ | */ | ||||
onLoad() { | onLoad() { | ||||
if (!app.globalData.customerId) { | |||||
app.goLogin(); | |||||
return | |||||
} | |||||
const eventChannel = this.getOpenerEventChannel() | const eventChannel = this.getOpenerEventChannel() | ||||
if (eventChannel.on) { | if (eventChannel.on) { | ||||
// 监听acceptDataFromOpenerPage事件,获取上一页面通过eventChannel传送到当前页面的数据 | // 监听acceptDataFromOpenerPage事件,获取上一页面通过eventChannel传送到当前页面的数据 | ||||
success(res1) { | success(res1) { | ||||
if (res1.confirm) { | if (res1.confirm) { | ||||
that.clearData(); | that.clearData(); | ||||
console.log('用户点击确定') | |||||
wx.navigateTo({ | |||||
url: "/pages/outLink/outLink?followApplets=true", //跳转页面的路径,可带参数 ?隔开,不同参数用 & 分隔;相对路径,不需要.wxml后缀 | |||||
success: function () { }, //成功后的回调; | |||||
fail: function () { }, //失败后的回调; | |||||
complete: function () { } //结束后的回调(成功,失败都会执行) | |||||
}) | |||||
} else if (res1.cancel) { | } else if (res1.cancel) { | ||||
let listDetail = res.data; | let listDetail = res.data; | ||||
that.clearData(); | that.clearData(); |