提交 3dba1e8f 编写于 作者: DCloud_JSON's avatar DCloud_JSON

更新 去掉可选链,兼容 Nodejs12

上级 884e6d2d
......@@ -59,10 +59,10 @@ async function getConversationList({
matchObj.group_type = type.group_type
}
}else{
action[type]?.()
action[type] && action[type]()
}
// console.error('action========',type,'group_type:'+matchObj?.group_type);
// console.error('action========',type,'group_type:'+matchObj.group_type);
}
// 如果指定了会话id,则只查询指定的会话
......
......@@ -276,7 +276,7 @@ async function _beforeSendMsgActions(params) {
// 如果是扩展的消息类型,由扩展模块执行前置操作
const { msgTypes } = require('uni-im-ext')
let msgType = await msgTypes.get(params.type)
if (msgType?.beforeSendMsg) {
if (msgType && msgType.beforeSendMsg) {
await msgType.beforeSendMsg(params, this.current_uid)
console.error('############----->beforeSendMsg', params)
return
......@@ -555,7 +555,7 @@ async function _createOrUpdateConversation(conversation_id, msgData, chat_source
if (msgData.group_id) {
senderConversation.leave = false
senderConversation.has_unread_group_notification = null
senderConversation.group_type = groupInfo?.type
senderConversation.group_type = groupInfo.type
// 群聊只为当前用户创建会话
await dbUniImConversation.add(senderConversation)
} else {
......
......@@ -105,7 +105,7 @@ async function sendPushMsg(param, appId) {
// console.log('pushParam.channel', pushParam.channel)
// 解决没有购买个推vip套餐,设置推送策略为3无效的问题
if (pushParam?.settings?.strategy === 3) {
if (pushParam.settings && pushParam.settings.strategy === 3) {
delete pushParam.title
delete pushParam.content
}
......
......@@ -14,16 +14,16 @@ module.exports = {
}
async function afterReadAction({
field,
field = '',
result,
userInfo: currentUserInfo,
primaryCollection
} = {}, asSecondaryCollection = false) {
const { data } = result
const {data} = result
if (!Array.isArray(data)) {
data = [data]
}
if(!data?.length) return
if(data.length === 0) return
const isAdmin = currentUserInfo.role.includes('uni-im-admin') || currentUserInfo.role.includes('admin') || currentUserInfo.role.includes('staff')
// 处理当前表被作为联查时的副表的情况
let userInfos = data
......@@ -60,16 +60,16 @@ async function afterReadAction({
}
userInfos.forEach(item => {
const real_name = item?.realname_auth?.real_name
const real_name = item.realname_auth ? item.realname_auth.real_name : ''
// 如果real_name以uni-im-encrypt:开头
if (real_name?.startsWith('uni-im-encrypt:')) {
if (real_name.startsWith('uni-im-encrypt:')) {
// console.error('解密real_name',real_name,item._id)
item.realname_auth.real_name = decrypt(real_name)
// console.error('解密后real_name',item.realname_auth.real_name)
}
})
if (field?.includes("nickname")) {
if (field.includes("nickname")) {
//uni-im 处理查询nickname,但值为空的情况
// 记录没有nickname的用户id
const user_ids = userInfos.filter(item => !item.nickname).map(item => item._id)
......@@ -97,11 +97,11 @@ async function afterReadAction({
userInfos.forEach(item => {
if (!item.nickname) {
const userInfo = usersInfo[item._id]
const userInfo = usersInfo[item._id] || {}
// 管理员可以看到不打码的
if (isAdmin) {
console.log('userInfo',userInfo,'item',item)
item.nickname = userInfo?.username || userInfo?.email || userInfo?.mobile
item.nickname = userInfo.username || userInfo.email || userInfo.mobile
}else{
item.nickname = hideUsernameStr(userInfo.username) || hideEmailStr(userInfo.email) ||
hideMobileStr(userInfo.mobile)
......
......@@ -87,7 +87,8 @@ module.exports = {
member_count:db.command.inc(1)
})
await uniImCo.sendMsg(msgData,user_id)
if(triggerContext.groupInfo?.type === "dcloud-plugin"){
const {type} = triggerContext.groupInfo || {}
if(type === "dcloud-plugin"){
// 刷新记录在im系统中的 插件订单信息
try{
console.error('加入了dcloud-plugin',triggerContext.groupInfo)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册