diff --git a/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/messages.component.html b/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/messages.component.html index e067daba..92487036 100644 --- a/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/messages.component.html +++ b/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/messages.component.html @@ -239,6 +239,7 @@ [minShowReadHere]=" environment.productConfig.CommonSetting.readHereShowMinimumEventCount " + [initRoomLastEventSeq]="initRoomLastEventSeq" [translationSimpleview]="translationSimpleview" (moreEvent)="onMoreEvent($event)" (massDetail)="onMassDetail($event)" diff --git a/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/messages.component.ts b/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/messages.component.ts index 95d61e71..739e1079 100644 --- a/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/messages.component.ts +++ b/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/messages.component.ts @@ -192,6 +192,7 @@ export class MessagesComponent implements OnInit, OnDestroy, AfterViewInit { /** About ReadHere */ firstcheckReadHere = true; clearReadHere = false; + initRoomLastEventSeq: number; snackBarPreviewEvent: MatSnackBarRef; @@ -358,7 +359,16 @@ export class MessagesComponent implements OnInit, OnDestroy, AfterViewInit { this.eventInfoStatusSubscription = this.store .pipe( select(AppStore.MessengerSelector.EventSelector.infoStatus), - tap(res => (this.eventInfoStatus = res)) + tap(res => { + this.eventInfoStatus = res; + + if (!!res) { + const elist = this.eventList; + if (res.baseSeq === 0 && elist.length > 0) { + this.initRoomLastEventSeq = elist[elist.length - 1].seq; + } + } + }) ) .subscribe(); diff --git a/projects/ucap-webmessenger-ui-chat/src/lib/components/messages.component.ts b/projects/ucap-webmessenger-ui-chat/src/lib/components/messages.component.ts index fac5f2d6..403564f4 100644 --- a/projects/ucap-webmessenger-ui-chat/src/lib/components/messages.component.ts +++ b/projects/ucap-webmessenger-ui-chat/src/lib/components/messages.component.ts @@ -30,7 +30,6 @@ export class MessagesComponent implements OnInit { set eventList(elist: Info[]) { if (!!elist && elist.length > 0) { this.firstEventSeq = elist[0].seq; - this.lastEventSeq = elist[elist.length - 1].seq; } this.messages = elist; @@ -52,6 +51,8 @@ export class MessagesComponent implements OnInit { @Input() minShowReadHere = 10; @Input() + initRoomLastEventSeq: number; + @Input() translationSimpleview = false; @Output() @@ -86,7 +87,6 @@ export class MessagesComponent implements OnInit { moment = moment; firstEventSeq = 0; - lastEventSeq = 0; existReadHere = false; constructor(private logger: NGXLogger, private datePipe: DatePipe) {} @@ -186,7 +186,8 @@ export class MessagesComponent implements OnInit { if ( !!this.roomInfo && !!this.roomInfo.lastReadEventSeq && - this.lastEventSeq - this.roomInfo.lastReadEventSeq > 5 + this.initRoomLastEventSeq - this.roomInfo.lastReadEventSeq > + this.minShowReadHere ) { if ( this.roomInfo.roomType === RoomType.Single ||