# 이슈처리

86 대화방 검색 후 우클릭 메뉴 선택 시 검색 필터 풀려짐
96 대화방 검색 필터 후 메시지 수신시 검색필터 풀려짐 :: 86과 동일 건으로 프로그램 개선 후 정상동작.

112 즐겨찾기 그룹 쪽지 보내기 동작 되지 않음 :: 즐겨찾기 그룹에 대한 더보기 메뉴 핸들링 및 쪽지 보내기 버그 처리 완료.

114 트레이에서 로그아웃 선택 시 팝업 오류 :: ngZone.run 으로 처리함.
This commit is contained in:
leejinho 2020-01-07 13:45:11 +09:00
parent 267c404fd1
commit 92ab91ef09
5 changed files with 49 additions and 11 deletions

View File

@ -128,7 +128,6 @@ export class ChatComponent implements OnInit, OnDestroy, AfterViewChecked {
.pipe(
tap(([room, roomUser, roomUserShort]) => {
this.roomList = room;
this.searchRoomList = room;
this.roomUserList = roomUser;
this.roomUserShortList = roomUserShort;
@ -159,6 +158,15 @@ export class ChatComponent implements OnInit, OnDestroy, AfterViewChecked {
this.recommendedWordList = [...recommendedWordList];
if (!!this.isSearch) {
this.searchRoomList = room.filter(
roomInfo =>
this.searchRoomList.filter(
sInfo => sInfo.roomSeq === roomInfo.roomSeq
).length > 0
);
}
if (!!this.psDirectiveRef) {
this.psDirectiveRef.update();
}

View File

@ -105,6 +105,8 @@ export class GroupComponent implements OnInit, OnDestroy {
groupBuddyListSubscription: Subscription;
favoritBuddyList$: Observable<UserInfo[]>;
favoritBuddyList: UserInfo[] = [];
companyList$: Observable<Company[]>;
companyCode: string;
@ -229,9 +231,10 @@ export class GroupComponent implements OnInit, OnDestroy {
.pipe(select(AppStore.MessengerSelector.SyncSelector.selectAllBuddy2))
.pipe(
map(buddyInfoList => {
return buddyInfoList
this.favoritBuddyList = buddyInfoList
.filter(buddy => buddy.isFavorit)
.sort((a, b) => (a.name < b.name ? -1 : a.name > b.name ? 1 : 0));
return this.favoritBuddyList;
})
);
}
@ -371,7 +374,11 @@ export class GroupComponent implements OnInit, OnDestroy {
menuType === 'EDIT_MEMBER' ||
menuType === 'DELETE'
) {
if (!group || group === undefined) {
if (
!group ||
group === undefined ||
(group.seq < 0 && group.name === 'Favorit')
) {
return false;
}
@ -395,7 +402,11 @@ export class GroupComponent implements OnInit, OnDestroy {
}
// 그룹원 0명인 그룹 메뉴 정리
if (menuType === 'CHAT') {
if (
menuType === 'CHAT' ||
menuType === 'SEND_MESSAGE' ||
menuType === 'DIV1'
) {
if (!!group && !!group.userSeqs && group.userSeqs.length > 0) {
return true;
} else {
@ -652,11 +663,22 @@ export class GroupComponent implements OnInit, OnDestroy {
break;
case 'SEND_MESSAGE':
{
const curGroupBuddyList = this.groupBuddyList.filter(
groupInfo => groupInfo.group.seq === group.seq
);
let receiverList: UserInfo[] = [];
const isFavGroup =
group.seq < 0 && group.name === 'Favorit' ? true : false;
if (!!curGroupBuddyList && curGroupBuddyList.length > 0) {
if (!!isFavGroup) {
receiverList = this.favoritBuddyList;
} else {
const curGroupBuddyList = this.groupBuddyList.filter(
groupInfo => groupInfo.group.seq === group.seq
);
if (!!curGroupBuddyList && curGroupBuddyList.length > 0) {
receiverList = curGroupBuddyList[0].buddyList;
}
}
if (receiverList.length > 0) {
this.dialogService.open<
MessageWriteDialogComponent,
MessageWriteDialogData,
@ -669,7 +691,7 @@ export class GroupComponent implements OnInit, OnDestroy {
data: {
loginRes: this.loginRes,
environmentsInfo: this.environmentsInfo,
receiverList: curGroupBuddyList[0].buddyList
receiverList
}
});
}

View File

@ -37,7 +37,9 @@ export class AppNativeService {
subscribe(): void {
this.nativeService.logout().subscribe(() => {
this.store.dispatch(AuthenticationStore.logoutConfirmation());
this.ngZone.run(() => {
this.store.dispatch(AuthenticationStore.logoutConfirmation());
});
});
this.nativeService.changeStatus().subscribe(statusCode => {});
this.nativeService.showSetting().subscribe(() => {

View File

@ -679,7 +679,7 @@
"addMemberToRoom": "대화 상대 추가",
"addMemberToGroup": "그룹 멤버로 추가",
"modifyRoomMember": "대화방 멤버 편집",
"ejectFromRoom": "Eject from room",
"ejectFromRoom": "강제 퇴장",
"confirmEjectFromRoom": "{{targetMember}} 님을 대화방에서 퇴장 시키겠습니까?",
"badgeDescriptionForUnread": "확인하지 않은 메시지가 있습니다."
},

View File

@ -85,6 +85,12 @@ export class ExpansionPanelComponent
} else {
const groupNode: GroupNode = {
nodeType: NodeType.Favorit,
groupDetail: {
seq: -9999,
name: NodeType.Favorit,
isActive: true,
userSeqs: userInfoList.map(userInfo => userInfo.seq)
} as GroupDetailData,
children: []
};