This is an automated email from the ASF dual-hosted git repository. ankovalyshyn pushed a commit to branch feature/projects in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git
commit 7557f4958c1837de5574a3c8db3c65e4f62000dd Author: Andriana Kovalyshyn <[email protected]> AuthorDate: Mon May 27 16:52:08 2019 +0300 [DLAB-631]: projects removing implementation added --- .../app/administration/project/project-data.service.ts | 5 +---- .../project/project-form/project-form.component.ts | 1 - .../app/administration/project/project.component.html | 6 +++++- .../src/app/administration/project/project.component.ts | 16 +++++++++++----- .../core/services/applicationServiceFacade.service.ts | 7 +++++++ .../webapp/src/app/core/services/project.service.ts | 9 +++++++++ 6 files changed, 33 insertions(+), 11 deletions(-) diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/project/project-data.service.ts b/services/self-service/src/main/resources/webapp/src/app/administration/project/project-data.service.ts index dcc44cd..1df5a18 100644 --- a/services/self-service/src/main/resources/webapp/src/app/administration/project/project-data.service.ts +++ b/services/self-service/src/main/resources/webapp/src/app/administration/project/project-data.service.ts @@ -42,9 +42,6 @@ export class ProjectDataService { private getProjectsList() { this.projectService.getProjectsList().subscribe( - (response: Project[]) => { - debugger; - this._projects.next(response) - }); + (response: Project[]) => this._projects.next(response)); } } \ No newline at end of file diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/project/project-form/project-form.component.ts b/services/self-service/src/main/resources/webapp/src/app/administration/project/project-form/project-form.component.ts index 75d9fc7..a16292d 100644 --- a/services/self-service/src/main/resources/webapp/src/app/administration/project/project-form/project-form.component.ts +++ b/services/self-service/src/main/resources/webapp/src/app/administration/project/project-form/project-form.component.ts @@ -75,7 +75,6 @@ export class ProjectFormComponent implements OnInit { } public selectOptions(list, key, select?) { - debugger; this.projectForm.controls[key].setValue(select ? list : []); } diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/project/project.component.html b/services/self-service/src/main/resources/webapp/src/app/administration/project/project.component.html index cf686e0..9e46186 100644 --- a/services/self-service/src/main/resources/webapp/src/app/administration/project/project.component.html +++ b/services/self-service/src/main/resources/webapp/src/app/administration/project/project.component.html @@ -24,7 +24,11 @@ <i class="material-icons">add</i>Create new </button> </div> - <div></div> + <div> + <button mat-raised-button class="butt" (click)="refreshGrid()" *ngIf="projects?.lenght > 1"> + <i class="material-icons">autorenew</i>Refresh + </button> + </div> </div> <mat-card class="base-retreat project-form" *ngIf="projects?.lenght < 1"> diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/project/project.component.ts b/services/self-service/src/main/resources/webapp/src/app/administration/project/project.component.ts index 5b05af3..5abeabc 100644 --- a/services/self-service/src/main/resources/webapp/src/app/administration/project/project.component.ts +++ b/services/self-service/src/main/resources/webapp/src/app/administration/project/project.component.ts @@ -22,7 +22,7 @@ import { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material'; import { Subscription } from 'rxjs'; import { ProjectDataService } from './project-data.service'; -import { HealthStatusService, UserAccessKeyService } from '../../core/services'; +import { HealthStatusService, ProjectService } from '../../core/services'; import { NotificationDialogComponent } from '../../shared/modal-dialog/notification-dialog'; export interface Project { @@ -45,6 +45,7 @@ export class ProjectComponent implements OnInit, OnDestroy { constructor( public dialog: MatDialog, + private projectService: ProjectService, private projectDataService: ProjectDataService, private healthStatusService: HealthStatusService, private ref: ChangeDetectorRef, @@ -65,6 +66,10 @@ export class ProjectComponent implements OnInit, OnDestroy { this.subscriptions.unsubscribe(); } + refreshGrid() { + this.projectDataService.updateProjects(); + } + createProject() { console.log('create'); @@ -83,10 +88,11 @@ export class ProjectComponent implements OnInit, OnDestroy { } public deleteProject($event) { - $event.name = $event.project_name; this.dialog.open(NotificationDialogComponent, { data: { type: 'confirmation', item: $event }, panelClass: 'modal-sm' }) - .afterClosed().subscribe(() => { - console.log('Delete project'); + .afterClosed().subscribe(result => { + this.projectService.deleteProject($event.name).subscribe(() => { + this.refreshGrid(); + }); }); } @@ -103,7 +109,7 @@ export class ProjectComponent implements OnInit, OnDestroy { <div class="dialog-header"> <h4 class="modal-title"> <span *ngIf="data?.action === 'create'">Create new project</span> - <span *ngIf="data?.action === 'edit'">Edit {{ data.item.project_name }}</span> + <span *ngIf="data?.action === 'edit'">Edit {{ data.item.name }}</span> </h4> <button type="button" class="close" (click)="dialogRef.close()">×</button> </div> diff --git a/services/self-service/src/main/resources/webapp/src/app/core/services/applicationServiceFacade.service.ts b/services/self-service/src/main/resources/webapp/src/app/core/services/applicationServiceFacade.service.ts index c9b176c..9a93bb1 100644 --- a/services/self-service/src/main/resources/webapp/src/app/core/services/applicationServiceFacade.service.ts +++ b/services/self-service/src/main/resources/webapp/src/app/core/services/applicationServiceFacade.service.ts @@ -533,6 +533,13 @@ export class ApplicationServiceFacade { this.requestRegistry.Item(ApplicationServiceFacade.PROJECT), null); } + + public buildDeleteProject(param): Observable<any> { + return this.buildRequest(RequestMethod.Delete, + this.requestRegistry.Item(ApplicationServiceFacade.PROJECT) + param, + null); + } + public buildGetEndpointsData(): Observable<any> { return this.buildRequest(RequestMethod.Get, this.requestRegistry.Item(ApplicationServiceFacade.ENDPOINT), diff --git a/services/self-service/src/main/resources/webapp/src/app/core/services/project.service.ts b/services/self-service/src/main/resources/webapp/src/app/core/services/project.service.ts index 2f33dcc..f9d72b7 100644 --- a/services/self-service/src/main/resources/webapp/src/app/core/services/project.service.ts +++ b/services/self-service/src/main/resources/webapp/src/app/core/services/project.service.ts @@ -43,4 +43,13 @@ export class ProjectService { map(response => response), catchError(ErrorUtils.handleServiceError)); } + + public deleteProject(data): Observable<{}> { + const url = `/${data}`; + return this.applicationServiceFacade + .buildDeleteProject(url) + .pipe( + map(response => response), + catchError(ErrorUtils.handleServiceError)); + } } \ No newline at end of file --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
