bad5808c59fc44b496b2f5efe8761793b075e668
[usecase-ui.git] /
1 import { Component, OnInit } from '@angular/core';
2 import { NzMessageService } from "ng-zorro-antd";
3 import { MaasService } from '@src/app/core/services/maas.service';
4 import { KnowledgeBase } from './knowledge-base.type';
5
6 @Component({
7   selector: 'app-knowledge-base-management',
8   templateUrl: './knowledge-base-management.component.html',
9   styleUrls: ['./knowledge-base-management.component.less']
10 })
11 export class KnowledgeBaseManagementComponent implements OnInit {
12   editKnowledgeBaseShow = false;
13   knowledgeBaseId = '';
14   data: KnowledgeBase[] = [];
15   createModalShow: boolean = false;
16   knowledgeBaseShow: boolean = false;
17   knowledgeBaseDetail: Object = {};
18
19   constructor(
20     private myhttp: MaasService,
21     private message: NzMessageService
22   ) { }
23
24   ngOnInit() {
25     this.getKnowledgeBaseData()
26   }
27
28   getKnowledgeBaseData(): void {
29     this.myhttp.getKnowledgeBaseRecord()
30       .subscribe(
31         (data) => {
32           this.data = data.result_body
33         },
34         () => {
35           this.message.error('Failed to obtain knowledgeBase data');
36         }
37       )
38   }
39
40   create(): void {
41     this.createModalShow = true;
42   }
43   createModalClose($event: any): void {
44     this.createModalShow = false;
45     if ($event.cancel) {
46       return;
47     }
48     this.getKnowledgeBaseData()
49   }
50
51   editKnowledgeBaseModuleClose($event: any): void {
52     this.editKnowledgeBaseShow = false;
53     if ($event.cancel) {
54       return;
55     }
56     this.getKnowledgeBaseData()
57   }
58
59   knowledgeBaseDetailClose($event: any): void {
60     this.knowledgeBaseShow = false;
61   }
62
63   deleteKnowledgeBase(data): void {
64     this.myhttp.deleteKnowledgeBaseData(data.knowledgeBaseId).subscribe((data) => {
65       this.getKnowledgeBaseData()
66       if (data.result_header.result_code === 200) {
67         this.message.success('Deleted successfully');
68       } else {
69         this.message.error(data.result_header.result_message);
70       }
71     }, () => {
72       this.message.error('Deletion failed');
73     });
74   }
75
76   displayKnowledgeDetails(data): void {
77     this.knowledgeBaseShow = true;
78     this.myhttp.getKnowledgeBaseById(data.knowledgeBaseId)
79       .subscribe(
80         (data) => {
81           this.knowledgeBaseDetail = data.result_body;
82         },
83         () => {
84           this.message.error('Failed to obtain knowledge base data');
85         }
86       )
87   }
88
89   editKnowedgeBase(data) {
90     this.knowledgeBaseId = data.knowledgeBaseId;
91     this.editKnowledgeBaseShow = true;
92   }
93
94 }