85 lines
2.3 KiB
Plaintext
85 lines
2.3 KiB
Plaintext
import { BasicConstant,HdNav } from '@itcast/basic'
|
|
import { ChatKitClient, ContactRepo, IMKitConfigCenter,
|
|
LocalConversationRepo } from '@nimkit/chatkit';
|
|
import { ChatKitConfig } from '@nimkit/chatkit_ui/src/main/ets/ChatKitConfig';
|
|
import { CommonConstants } from '@nimkit/common';
|
|
import { LocalConversationPage } from '@nimkit/localconversationkit_ui';
|
|
import { V2NIMFriendAddApplication } from '@nimsdk/base';
|
|
|
|
@ComponentV2
|
|
export struct MessageComp {
|
|
|
|
// @Param pathStack: NavPathStack = new NavPathStack()
|
|
@Param onUreadMessageChange?: (unreadCount?: number) => void = undefined
|
|
|
|
loadUnreadApplication = async () => {
|
|
|
|
try {
|
|
const unreadCount = await ContactRepo.getAddApplicationUnreadCount()
|
|
|
|
} catch (err) {
|
|
console.log(err)
|
|
}
|
|
}
|
|
|
|
|
|
//获取会话列表未读数
|
|
loadUnreadMessageCount = () => {
|
|
let unreadCount = 0
|
|
|
|
unreadCount = LocalConversationRepo.getTotalUnreadCount() ?? 0
|
|
|
|
}
|
|
// 加载配置信息
|
|
loadConfig = () => {
|
|
// let readOrOpen: boolean = AppStorage.get<boolean>(CommonConstants.KEY_SETTING_MESSAGE_READ_OR) ?? true
|
|
ChatKitConfig.messageReadState = true
|
|
|
|
}
|
|
|
|
async aboutToAppear(): Promise<void> {
|
|
|
|
ChatKitClient.nim.localConversationService?.on('onSyncFinished',
|
|
async () => {
|
|
//同步完成拉一次
|
|
ChatKitClient.logger?.debug(`onSyncFinished`)
|
|
|
|
}
|
|
)
|
|
ChatKitClient.nim.friendService?.on('onFriendAddApplication', async (application: V2NIMFriendAddApplication) => {
|
|
await this.loadUnreadApplication()
|
|
})
|
|
try {
|
|
await this.loadUnreadApplication()
|
|
} catch (err) {
|
|
console.log(err)
|
|
}
|
|
this.loadConfig()
|
|
this.loadUnreadMessageCount()
|
|
}
|
|
|
|
|
|
|
|
build() {
|
|
// Navigation(this.pathStack) {
|
|
Column() {
|
|
HdNav({ title: '患者消息', showRightIcon: true, showLeftIcon: true,showRightText:false,rightIcon:$r('app.media.selected_hospital_ws'),rightItemAction:()=>{
|
|
// router.pushUrl({
|
|
// url:'pages/SearchPage/VideoSearchPage',
|
|
// params:{'pageName':'视频'}
|
|
// })
|
|
}})
|
|
LocalConversationPage({
|
|
|
|
onUreadMessageChange: this.onUreadMessageChange,
|
|
|
|
})
|
|
|
|
}.width('100%')
|
|
.height('100%')
|
|
.backgroundColor($r('app.color.top_bg'))
|
|
// }
|
|
// .mode(NavigationMode.Auto)
|
|
// .hideTitleBar(true)
|
|
}
|
|
} |