From 7906aeaf7b08d81a1b773aaf1394ab167866a080 Mon Sep 17 00:00:00 2001 From: Park Byung Eun Date: Mon, 25 May 2020 18:40:41 +0900 Subject: [PATCH] sync --- documents/업무/5월/3째주/0522.txt | 25 ++ documents/업무/5월/4째주/0525.txt | 271 +++++++++++++++++- .../New PC 메신저 릴리즈 Plan_박병은.xls | Bin 0 -> 97792 bytes 3 files changed, 295 insertions(+), 1 deletion(-) create mode 100644 documents/업무/new-pc-doc/New PC 메신저 릴리즈 Plan_박병은.xls diff --git a/documents/업무/5월/3째주/0522.txt b/documents/업무/5월/3째주/0522.txt index f585413..6b453dd 100644 --- a/documents/업무/5월/3째주/0522.txt +++ b/documents/업무/5월/3째주/0522.txt @@ -66,3 +66,28 @@ const idx = buddies.findIndex((b) => b.seq === userSeq); const userSeq = '737237' as any; const idx = buddies.findIndex((b) => b.seq === Number(userSeq)); + + + +312390, +554, +677713, +770073, +677711, +701307, +313434, +476791, +2565, +1814, +737239, +1981, +1470, +2958, +781378, +5755, +737243, +737237, +677714, +84503, +737236, +3627 \ No newline at end of file diff --git a/documents/업무/5월/4째주/0525.txt b/documents/업무/5월/4째주/0525.txt index baf154d..6ec6c93 100644 --- a/documents/업무/5월/4째주/0525.txt +++ b/documents/업무/5월/4째주/0525.txt @@ -1,4 +1,273 @@ build:web-storage api all pi -protocol \ No newline at end of file +protocol + +result.selectGroupList.forEach((g) => { + targetGroup = g; + targetUserSeqs = []; + + g.userSeqs.map((seq) => { + targetUserSeqs.push(seq); + + + result.selelctUserList.filter(info => { + info.seq === seq + }) + }); + + console.log(targetUserSeqs); +}); + +group.userSeqs.forEach(seq => { + selelctUserList +}) + +import { + Component, + OnInit, + OnDestroy, + ChangeDetectionStrategy, + ChangeDetectorRef, + Input, + Output, + EventEmitter +} from '@angular/core'; + +import { Subject, of } from 'rxjs'; +import { Store, select } from '@ngrx/store'; +import { takeUntil, take, map, catchError } from 'rxjs/operators'; +import { + LoginSelector, + AuthorizationSelector +} from '@ucap/ng-store-authentication'; +import { LoginResponse } from '@ucap/protocol-authentication'; +import { QueryProtocolService } from '@ucap/ng-protocol-query'; +import { + UserInfoSS, + AuthResponse, + DeptSearchType, + UserInfoF, + UserInfoDN +} from '@ucap/protocol-query'; +import { GroupSelector } from '@ucap/ng-store-group'; +import { GroupDetailData, UserInfo } from '@ucap/protocol-sync'; +import { PresenceActions } from '@ucap/ng-store-organization'; +import { FormGroup, FormBuilder, Validators } from '@angular/forms'; +import { UserInfo as RoomUserInfo } from '@ucap/protocol-room'; +import { MatDialog } from '@angular/material/dialog'; +import { + AlertDialogComponent, + AlertDialogData, + AlertDialogResult +} from '@ucap/ng-ui'; +import { MatCheckbox } from '@angular/material/checkbox'; + +export type UserInfoTypes = + | UserInfo + | UserInfoSS + | UserInfoF + | UserInfoDN + | RoomUserInfo; + +@Component({ + selector: 'app-sections-select-group', + templateUrl: './select-group.section.component.html', + styleUrls: ['./select-group.section.component.scss'], + + changeDetection: ChangeDetectionStrategy.OnPush +}) +export class SelectGroupSectionComponent implements OnInit, OnDestroy { + @Input() + title: string; + + @Input() + isMemberMove: boolean; + + @Input() + curGroup: GroupDetailData; + + @Output() + changeUserList: EventEmitter = new EventEmitter(); + + @Output() + changeGroupList: EventEmitter = new EventEmitter(); + + @Output() + changeGroupName: EventEmitter = new EventEmitter(); + + private ngOnDestroySubject = new Subject(); + + constructor( + private store: Store, + private queryProtocolService: QueryProtocolService, + private changeDetectorRef: ChangeDetectorRef, + private formBuilder: FormBuilder, + public dialog: MatDialog + ) {} + + loginRes: LoginResponse; + isSearch = false; + searchWord: string; + searchUserInfos: UserInfoSS[] = []; + groupList: GroupDetailData[]; + selectedUserList: UserInfoTypes[] = []; + selectedGroupList: GroupDetailData[] = []; + inputForm: FormGroup; + isChecked = false; + groupName: string; + + ngOnInit(): void { + this.store + .pipe(takeUntil(this.ngOnDestroySubject), select(LoginSelector.loginRes)) + .subscribe((loginRes) => { + this.loginRes = loginRes; + }); + + this.store + .pipe(takeUntil(this.ngOnDestroySubject), select(GroupSelector.groups)) + .subscribe((groups) => { + this.groupList = groups; + }); + + this.inputForm = this.formBuilder.group({ + groupName: [ + this.groupName, + [ + // Validators.required + // StringUtil.includes(, CharactorType.Special), + // this.checkBanWords(), + // this.checkSameName() + ] + ] + }); + } + + ngOnDestroy(): void { + if (!!this.ngOnDestroySubject) { + this.ngOnDestroySubject.complete(); + } + } + + onKeyupGroupName() { + this.inputForm.get('groupName').markAsTouched(); + this.changeGroupName.emit(this.inputForm.get('groupName').value); + } + + onCheckForGroup(checbox: MatCheckbox, group: GroupDetailData) { + if ( + this.isMemberMove && + !!this.selectedGroupList && + this.selectedGroupList.length > 0 + ) { + this.dialog.open< + AlertDialogComponent, + AlertDialogData, + AlertDialogResult + >(AlertDialogComponent, { + data: { + title: '멤버이동', + html: '멤버이동은 그룹 여러개를 선택할 수 없습니다.' + } + }); + + checbox.checked = false; + return; + } + if ( + this.selectedGroupList.filter((g) => g.seq === group.seq).length === 0 + ) { + this.selectedGroupList = [...this.selectedGroupList, group]; + } else { + this.selectedGroupList = this.selectedGroupList.filter( + (g) => g.seq !== group.seq + ); + } + + this.changeGroupList.emit(this.selectedGroupList); + } + + onCheckForUser(params: { isChecked: boolean; userInfo: UserInfoTypes }) { + if ( + this.selectedUserList.filter((user) => user.seq === params.userInfo.seq) + .length === 0 + ) { + this.selectedUserList = [...this.selectedUserList, params.userInfo]; + } else { + this.selectedUserList = this.selectedUserList.filter( + (item) => item.seq !== params.userInfo.seq + ); + } + + this.changeUserList.emit(this.selectedUserList); + } + + onChanged(data: { companyCode: string; searchWord: string }) { + this.isSearch = true; + this.searchWord = data.searchWord; + + const searchUserInfos: UserInfoSS[] = []; + + this.queryProtocolService + .deptUser({ + divCd: 'GRP', + companyCode: data.companyCode, + searchRange: DeptSearchType.All, + search: data.searchWord, + senderCompanyCode: this.loginRes.userInfo.companyCode, + senderEmployeeType: this.loginRes.userInfo.employeeType + }) + .pipe( + map((resObj) => { + const userInfos = resObj.userInfos; + + searchUserInfos.push(...userInfos); + // 검색 결과 처리. + this.searchUserInfos = searchUserInfos.sort((a, b) => + a.name < b.name ? -1 : a.name > b.name ? 1 : 0 + ); + // this.searchProcessing = false; + + // 검색 결과에 따른 프레즌스 조회. + + const userSeqList: string[] = []; + this.searchUserInfos.map((user) => userSeqList.push(user.seq)); + this.changeDetectorRef.markForCheck(); + + if (userSeqList.length > 0) { + this.store.dispatch( + PresenceActions.bulkInfo({ + divCd: 'groupSrch', + userSeqs: userSeqList + }) + ); + } + }), + catchError((error) => { + // this.searchProcessing = false; + return of(error); + }) + ) + .subscribe(); + } + + onCanceled() { + this.isSearch = false; + } + + getCheckedUser(userInfo: UserInfoTypes) { + if (!!this.selectedUserList && this.selectedUserList.length > 0) { + return ( + this.selectedUserList.filter((item) => item.seq === userInfo.seq) + .length > 0 + ); + } + return false; + } + checkVisible(group: GroupDetailData): boolean { + if (!!this.curGroup && this.curGroup.seq === group.seq) { + return false; + } + return true; + } +} diff --git a/documents/업무/new-pc-doc/New PC 메신저 릴리즈 Plan_박병은.xls b/documents/업무/new-pc-doc/New PC 메신저 릴리즈 Plan_박병은.xls new file mode 100644 index 0000000000000000000000000000000000000000..08429b74128dec16a0a7f325d830ee0cea3e43b1 GIT binary patch literal 97792 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 a;vYaU%w-MpIR}cSr|X}=e-06w`2Qbc&@TZ1 literal 0 HcmV?d00001