diff --git a/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/left-side.component.html b/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/left-side.component.html
index 0b35a41b..3a7a24c0 100644
--- a/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/left-side.component.html
+++ b/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/left-side.component.html
@@ -148,13 +148,6 @@
-->
-
-
- notifications_active
- notifications_off
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 2c3ac0b3..2045913b 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
@@ -36,7 +36,8 @@ import {
FileEventJson,
StickerEventJson,
MassTextEventJson,
- TranslationEventJson
+ TranslationEventJson,
+ MassTranslationEventJson
} from '@ucap-webmessenger/protocol-event';
import * as AppStore from '@app/store';
@@ -75,7 +76,8 @@ import {
FileTalkSaveRequest,
FileTalkSaveResponse,
TranslationReqRequest,
- TranslationSaveRequest
+ TranslationSaveRequest,
+ TranslationSaveResponse
} from '@ucap-webmessenger/api-common';
import {
CreateChatDialogComponent,
@@ -174,7 +176,10 @@ export class MessagesComponent implements OnInit, OnDestroy, AfterViewInit {
translationSimpleview = false;
translationPreview = false;
destLocale = 'en'; // default English :: en
- translationPreviewInfo: TranslationEventJson | null;
+ translationPreviewInfo: {
+ previewInfo: TranslationSaveResponse | null;
+ translationType: EventType.Translation | EventType.MassTranslation;
+ };
/** About ReadHere */
firstcheckReadHere = true;
@@ -620,8 +625,6 @@ export class MessagesComponent implements OnInit, OnDestroy, AfterViewInit {
if (!!this.isShowTranslation && this.destLocale.trim().length > 0) {
/** CASE : Translation */
- console.log('번역들어간다.');
-
const destLocale = this.destLocale;
const original = message;
const roomSeq = this.roomInfo.roomSeq;
@@ -638,13 +641,21 @@ export class MessagesComponent implements OnInit, OnDestroy, AfterViewInit {
.pipe(
take(1),
map(res => {
- console.log(res);
if (res.statusCode === StatusCode.Success) {
+ let sentMessage = '';
+ let eventType = EventType.Translation;
+ let previewObject:
+ | TranslationEventJson
+ | MassTranslationEventJson;
+
if (res.translationSeq > 0) {
// Mass Text Translation
+ previewObject = res;
+ sentMessage = res.returnJson;
+ eventType = EventType.MassTranslation;
} else {
// Normal Text Translation
- const json: TranslationEventJson = {
+ previewObject = {
locale: destLocale,
original,
translation: res.translation,
@@ -654,32 +665,38 @@ export class MessagesComponent implements OnInit, OnDestroy, AfterViewInit {
: ''
};
- if (!!this.translationPreview) {
- // preview
- this.translationPreviewInfo = json;
- } else {
- // direct send
- this.store.dispatch(
- EventStore.send({
- senderSeq: this.loginRes.userSeq,
- req: {
- roomSeq,
- eventType: EventType.Translation,
- sentMessage: JSON.stringify(json)
- }
- })
- );
+ sentMessage = JSON.stringify(previewObject);
+ eventType = EventType.Translation;
+ }
- if (!!this.translationPreviewInfo) {
- this.translationPreviewInfo = null;
- }
- }
+ if (!!this.translationPreview) {
+ // preview
+ this.translationPreviewInfo = {
+ previewInfo: res,
+ translationType: eventType
+ };
+ } else {
+ // direct send
+ this.store.dispatch(
+ EventStore.send({
+ senderSeq: this.loginRes.userSeq,
+ req: {
+ roomSeq,
+ eventType,
+ sentMessage
+ }
+ })
+ );
- if (!!this.selectedSticker) {
- this.isShowStickerSelector = false;
- this.setStickerHistory(this.selectedSticker);
+ if (!!this.translationPreviewInfo) {
+ this.translationPreviewInfo = null;
}
}
+
+ if (!!this.selectedSticker) {
+ this.isShowStickerSelector = false;
+ this.setStickerHistory(this.selectedSticker);
+ }
} else {
this.logger.error(res);
}
@@ -1470,14 +1487,32 @@ export class MessagesComponent implements OnInit, OnDestroy, AfterViewInit {
onCancelTranslation() {
this.translationPreviewInfo = null;
}
- onSendTranslationMessage(translationInfo: TranslationEventJson) {
+ onSendTranslationMessage(params: {
+ previewInfo: TranslationSaveResponse | null;
+ translationType: EventType.Translation | EventType.MassTranslation;
+ }) {
+ let sentMessage = '';
+ if (params.translationType === EventType.MassTranslation) {
+ // Mass Text Translation
+ sentMessage = params.previewInfo.returnJson;
+ } else {
+ // Normal Text Translation
+ sentMessage = JSON.stringify({
+ locale: params.previewInfo.destLocale,
+ original: params.previewInfo.original,
+ translation: params.previewInfo.translation,
+ stickername: '',
+ stickerfile: !!this.selectedSticker ? this.selectedSticker.index : ''
+ });
+ }
+
this.store.dispatch(
EventStore.send({
senderSeq: this.loginRes.userSeq,
req: {
roomSeq: this.roomInfo.roomSeq,
- eventType: EventType.Translation,
- sentMessage: JSON.stringify(translationInfo)
+ eventType: params.translationType,
+ sentMessage
}
})
);
diff --git a/projects/ucap-webmessenger-app/src/app/layouts/native/components/top-bar.component.html b/projects/ucap-webmessenger-app/src/app/layouts/native/components/top-bar.component.html
index c93be4d8..a8018145 100644
--- a/projects/ucap-webmessenger-app/src/app/layouts/native/components/top-bar.component.html
+++ b/projects/ucap-webmessenger-app/src/app/layouts/native/components/top-bar.component.html
@@ -147,6 +147,12 @@
+
diff --git a/projects/ucap-webmessenger-app/src/app/layouts/native/components/top-bar.component.ts b/projects/ucap-webmessenger-app/src/app/layouts/native/components/top-bar.component.ts
index d2717d49..93559fa7 100644
--- a/projects/ucap-webmessenger-app/src/app/layouts/native/components/top-bar.component.ts
+++ b/projects/ucap-webmessenger-app/src/app/layouts/native/components/top-bar.component.ts
@@ -1,4 +1,4 @@
-import { Component, OnInit, Inject, OnDestroy, ViewChild } from '@angular/core';
+import { Component, OnInit, Inject, OnDestroy } from '@angular/core';
import {
UCAP_NATIVE_SERVICE,
NativeService,
@@ -21,7 +21,8 @@ import {
KEY_URL_INFO,
LoginInfo,
KEY_LOGIN_INFO,
- KEY_LOGIN_RES_INFO
+ KEY_LOGIN_RES_INFO,
+ KEY_VER_INFO
} from '@app/types';
import {
WebLink,
@@ -33,8 +34,18 @@ import {
} from '@ucap-webmessenger/web-storage';
import { AppUserInfo, KEY_APP_USER_INFO } from '@app/types/app-user-info.type';
import { environment } from '../../../../environments/environment';
-import { DaesangApiService } from '@ucap-webmessenger/daesang';
+import {
+ DaesangApiService,
+ DaesangProtocolService
+} from '@ucap-webmessenger/daesang';
import { NGXLogger } from 'ngx-logger';
+import { VersionInfo2Response } from '@ucap-webmessenger/api-public';
+import {
+ ProfileDialogComponent,
+ ProfileDialogResult,
+ ProfileDialogData
+} from '@app/layouts/messenger/dialogs/profile/profile.dialog.component';
+import { DialogService } from '@ucap-webmessenger/ui';
@Component({
selector: 'app-layout-native-top-bar',
@@ -47,6 +58,7 @@ export class TopBarComponent implements OnInit, OnDestroy {
loginRes: LoginResponse;
loginResSubscription: Subscription;
+ sessionVerinfo: VersionInfo2Response;
updateInfo$: Observable
;
@@ -59,11 +71,17 @@ export class TopBarComponent implements OnInit, OnDestroy {
constructor(
private store: Store,
@Inject(UCAP_NATIVE_SERVICE) private nativeService: NativeService,
+ private dialogService: DialogService,
private localStorageService: LocalStorageService,
private sessionStorageService: SessionStorageService,
private daesangApiService: DaesangApiService,
+ private daesangProtocolService: DaesangProtocolService,
private logger: NGXLogger
- ) {}
+ ) {
+ this.sessionVerinfo = this.sessionStorageService.get(
+ KEY_VER_INFO
+ );
+ }
ngOnInit() {
this.windowStateChanged$ = this.nativeService.windowStateChanged();
@@ -223,6 +241,68 @@ export class TopBarComponent implements OnInit, OnDestroy {
this.store.dispatch(AuthenticationStore.logoutConfirmation());
}
+ getMyProfileImageWidget(): string {
+ if (!!this.loginRes) {
+ return this.loginRes.userInfo.profileImageFile;
+ } else {
+ return '';
+ }
+ }
+
+ onClickOpenProfile() {
+ // [GROUP]
+ // this.queryProtocolService
+ // .dataUser({
+ // divCd: 'OPENPROF',
+ // seq: userInfo.seq,
+ // senderCompanyCode: this.loginRes.userInfo.companyCode,
+ // senderEmployeeType: this.loginRes.userInfo.employeeType
+ // })
+ // .pipe(
+ // take(1),
+ // map(res => {
+ // if (!!res && !!res.userInfo) {
+ // this.dialogService.open<
+ // ProfileDialogComponent,
+ // ProfileDialogData,
+ // ProfileDialogResult
+ // >(ProfileDialogComponent, {
+ // data: {
+ // userInfo: res.userInfo
+ // }
+ // });
+ // }
+ // })
+ // )
+ // .subscribe();
+
+ // [Daesang]
+ this.daesangProtocolService
+ .dataUserDaesang({
+ divCd: 'OPENPROF',
+ seq: this.loginRes.userSeq,
+ senderCompanyCode: this.loginRes.userInfo.companyCode,
+ senderEmployeeType: this.loginRes.userInfo.employeeType
+ })
+ .pipe(
+ take(1),
+ map(res => {
+ if (!!res && !!res.userInfo) {
+ this.dialogService.open<
+ ProfileDialogComponent,
+ ProfileDialogData,
+ ProfileDialogResult
+ >(ProfileDialogComponent, {
+ data: {
+ userInfo: res.userInfo
+ }
+ });
+ }
+ })
+ )
+ .subscribe();
+ }
+
onClickNotice(): void {
this.store.dispatch(
ChatStore.selectedRightDrawer({
diff --git a/projects/ucap-webmessenger-app/src/app/layouts/native/native.layout.module.ts b/projects/ucap-webmessenger-app/src/app/layouts/native/native.layout.module.ts
index 829a00f2..91306d7f 100644
--- a/projects/ucap-webmessenger-app/src/app/layouts/native/native.layout.module.ts
+++ b/projects/ucap-webmessenger-app/src/app/layouts/native/native.layout.module.ts
@@ -7,6 +7,7 @@ import { MatIconModule } from '@angular/material/icon';
import { MatToolbarModule } from '@angular/material/toolbar';
import { UCapUiModule } from '@ucap-webmessenger/ui';
+import { UCapUiProfileModule } from '@ucap-webmessenger/ui-profile';
import { COMPONENTS } from './components';
import { MatTooltipModule, MatBadgeModule } from '@angular/material';
@@ -20,7 +21,8 @@ import { MatTooltipModule, MatBadgeModule } from '@angular/material';
MatTooltipModule,
MatBadgeModule,
- UCapUiModule
+ UCapUiModule,
+ UCapUiProfileModule
],
exports: [...COMPONENTS],
declarations: [...COMPONENTS],
diff --git a/projects/ucap-webmessenger-app/src/app/pages/messenger/components/main.page.component.ts b/projects/ucap-webmessenger-app/src/app/pages/messenger/components/main.page.component.ts
index 25f6495e..1b23e6e6 100644
--- a/projects/ucap-webmessenger-app/src/app/pages/messenger/components/main.page.component.ts
+++ b/projects/ucap-webmessenger-app/src/app/pages/messenger/components/main.page.component.ts
@@ -5,7 +5,6 @@ import {
Inject,
OnDestroy,
ViewChild,
- ChangeDetectorRef,
NgZone
} from '@angular/core';
@@ -21,11 +20,10 @@ import { UserInfo } from '@ucap-webmessenger/protocol-sync';
import {
UserInfoSS,
UserInfoF,
- UserInfoDN,
- QueryProtocolService
+ UserInfoDN
} from '@ucap-webmessenger/protocol-query';
import { StatusProtocolService } from '@ucap-webmessenger/protocol-status';
-import { StatusType, StatusCode, DeviceType } from '@ucap-webmessenger/core';
+import { StatusType, StatusCode } from '@ucap-webmessenger/core';
import {
DialogService,
ConfirmDialogComponent,
@@ -48,19 +46,7 @@ import { DaesangProtocolService, SmsUtils } from '@ucap-webmessenger/daesang';
import { CallService } from '@ucap-webmessenger/api-prompt';
import { EnvironmentsInfo, KEY_ENVIRONMENTS_INFO } from '@app/types';
import { SessionStorageService } from '@ucap-webmessenger/web-storage';
-import {
- MessageApiService,
- MessageType,
- DetailRequest,
- MessageDetailInfo,
- DelRequest
-} from '@ucap-webmessenger/api-message';
-import { MessageStatusCode } from '@ucap-webmessenger/api';
-import {
- MessageDetailDialogComponent,
- MessageDetailDialogResult,
- MessageDetailDialogData
-} from '@app/layouts/messenger/dialogs/message/message-detail.dialog.component';
+import { MessageApiService, MessageType } from '@ucap-webmessenger/api-message';
@Component({
selector: 'app-page-messenger-main',
diff --git a/projects/ucap-webmessenger-ui-chat/src/lib/components/message-box/mass-translation.component.html b/projects/ucap-webmessenger-ui-chat/src/lib/components/message-box/mass-translation.component.html
index 780bf3cc..47090973 100644
--- a/projects/ucap-webmessenger-ui-chat/src/lib/components/message-box/mass-translation.component.html
+++ b/projects/ucap-webmessenger-ui-chat/src/lib/components/message-box/mass-translation.component.html
@@ -1,23 +1,26 @@
-
- {{ message.sentMessageJson.translation }}
-
-
-
Kor
- 녕하세요 장문장문 롱텍스트안녕하세요 장문장문 롱텍스트안녕하세요 장문장문
- 롱텍스트안녕하세요 장문장문 롱텍스트안녕하세요 장문장문 롱텍스트안녕하세요
- 장문장문 롱텍스트안녕하세요 장문장문 롱텍스트안녕하세요 장문장문
- 롱텍스트안녕하세요 장문장문 롱텍스트안녕하세요 장문장문 롱텍스트안녕하세요
- 장문장문 롱텍스트안녕하세요 장문장문 롱텍스트안녕하세요 장문장문
- 롱텍스트안녕하세요 장문장문 롱텍스트안녕하세요 장문장문 롱텍스트
+
+
+ {{ message.sentMessageJson.destLocale }}
+
-
-
+
-
-
+
diff --git a/projects/ucap-webmessenger-ui-chat/src/lib/components/message-box/mass-translation.component.ts b/projects/ucap-webmessenger-ui-chat/src/lib/components/message-box/mass-translation.component.ts
index a8fc4f72..5e2c190a 100644
--- a/projects/ucap-webmessenger-ui-chat/src/lib/components/message-box/mass-translation.component.ts
+++ b/projects/ucap-webmessenger-ui-chat/src/lib/components/message-box/mass-translation.component.ts
@@ -1,5 +1,9 @@
import { Component, OnInit, Input } from '@angular/core';
-import { TranslationEventJson, Info } from '@ucap-webmessenger/protocol-event';
+import {
+ TranslationEventJson,
+ Info,
+ MassTranslationEventJson
+} from '@ucap-webmessenger/protocol-event';
@Component({
selector: 'ucap-chat-message-box-mass-translation',
@@ -8,7 +12,13 @@ import { TranslationEventJson, Info } from '@ucap-webmessenger/protocol-event';
})
export class MassTranslationComponent implements OnInit {
@Input()
- message: Info
;
+ message: Info;
+
+ @Input()
+ translationSimpleview: boolean;
+
+ @Input()
+ isMe: boolean;
constructor() {}
diff --git a/projects/ucap-webmessenger-ui-chat/src/lib/components/messages.component.html b/projects/ucap-webmessenger-ui-chat/src/lib/components/messages.component.html
index 0f7cc315..5716eb02 100644
--- a/projects/ucap-webmessenger-ui-chat/src/lib/components/messages.component.html
+++ b/projects/ucap-webmessenger-ui-chat/src/lib/components/messages.component.html
@@ -186,6 +186,14 @@
[isMe]="message.senderSeq === loginRes.userSeq"
class="information-msg"
>
+
+
-
diff --git a/projects/ucap-webmessenger-ui/src/lib/components/translation-section.component.ts b/projects/ucap-webmessenger-ui/src/lib/components/translation-section.component.ts
index 2b3bc514..f3f0007b 100644
--- a/projects/ucap-webmessenger-ui/src/lib/components/translation-section.component.ts
+++ b/projects/ucap-webmessenger-ui/src/lib/components/translation-section.component.ts
@@ -7,7 +7,12 @@ import {
} from '@ucap-webmessenger/core';
import { FormGroup, FormBuilder } from '@angular/forms';
import { MatSlideToggleChange, MatSelectChange } from '@angular/material';
-import { TranslationEventJson } from '@ucap-webmessenger/protocol-event';
+import {
+ TranslationEventJson,
+ MassTranslationEventJson,
+ EventType
+} from '@ucap-webmessenger/protocol-event';
+import { TranslationSaveResponse } from '@ucap-webmessenger/api-common';
@Component({
selector: 'ucap-translation-section',
@@ -22,7 +27,10 @@ export class TranslationSectionComponent implements OnInit {
@Input()
preView: boolean;
@Input()
- translationPreviewInfo: TranslationEventJson | null;
+ translationPreviewInfo: {
+ previewInfo: TranslationSaveResponse | null;
+ translationType: EventType.Translation | EventType.MassTranslation;
+ };
@Output()
changeTranslationSimpleview = new EventEmitter();
@@ -33,7 +41,10 @@ export class TranslationSectionComponent implements OnInit {
@Output()
cancelTranslation = new EventEmitter();
@Output()
- sendTranslationMessage = new EventEmitter();
+ sendTranslationMessage = new EventEmitter<{
+ previewInfo: TranslationSaveResponse | null;
+ translationType: EventType.Translation | EventType.MassTranslation;
+ }>();
isShowTranslationSimpleview = false;
isShowTranslationPreview = false;
@@ -171,7 +182,10 @@ export class TranslationSectionComponent implements OnInit {
this.changeTranslationPreview.emit(event.checked);
}
- onClickSendTranslationMessage(translationInfo: TranslationEventJson) {
+ onClickSendTranslationMessage(translationInfo: {
+ previewInfo: TranslationSaveResponse | null;
+ translationType: EventType.Translation | EventType.MassTranslation;
+ }) {
this.sendTranslationMessage.emit(translationInfo);
}