summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--components/datalake-handler/admin/src/src/app/core/models/template.model.ts11
-rw-r--r--components/datalake-handler/admin/src/src/app/core/services/rest-api.service.ts8
-rw-r--r--components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/edit-template-modal/edit-template-modal.component.html26
-rw-r--r--components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/edit-template-modal/edit-template-modal.component.ts28
-rw-r--r--components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/new-template-modal/new-template-modal.component.html26
-rw-r--r--components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/new-template-modal/new-template-modal.component.ts26
-rw-r--r--components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/template-list.component.ts1
-rw-r--r--components/datalake-handler/admin/src/src/assets/i18n/en-us.json79
-rw-r--r--components/datalake-handler/admin/src/src/index.html4
9 files changed, 153 insertions, 56 deletions
diff --git a/components/datalake-handler/admin/src/src/app/core/models/template.model.ts b/components/datalake-handler/admin/src/src/app/core/models/template.model.ts
index 3df882fe..533068fd 100644
--- a/components/datalake-handler/admin/src/src/app/core/models/template.model.ts
+++ b/components/datalake-handler/admin/src/src/app/core/models/template.model.ts
@@ -23,14 +23,5 @@ export class Template {
topicName: string;
designType: string;
designTypeName: string;
+ dbs: any;
}
-
-// export class newTemplate {
-// name: string;
-// submitted: boolean;
-// body: string;
-// note: string;
-// topicName: string;
-// designType: string;
-// designTypeName: string;
-// }
diff --git a/components/datalake-handler/admin/src/src/app/core/services/rest-api.service.ts b/components/datalake-handler/admin/src/src/app/core/services/rest-api.service.ts
index a2e44e97..fe634983 100644
--- a/components/datalake-handler/admin/src/src/app/core/services/rest-api.service.ts
+++ b/components/datalake-handler/admin/src/src/app/core/services/rest-api.service.ts
@@ -265,6 +265,14 @@ Dashboard
);
}
+ getTempDbList(): Observable<any> {
+ return this.http.get(prefix + "dbs/idAndName/").pipe(
+ retry(1),
+ map(this.extractData),
+ catchError(this.handleError)
+ );
+ }
+
createNewTemplate(t: Template): Observable<any> {
return this.http
.post(prefix + "designs", t)
diff --git a/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/edit-template-modal/edit-template-modal.component.html b/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/edit-template-modal/edit-template-modal.component.html
index 48cbc127..4165de8d 100644
--- a/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/edit-template-modal/edit-template-modal.component.html
+++ b/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/edit-template-modal/edit-template-modal.component.html
@@ -79,6 +79,32 @@
<div class="form-group">
<div class="row">
<div class="col-md-2">
+ <label class="dl-emphasis1">{{ 'SINK' | translate }}</label>
+ </div>
+ <div class="col-md-8">
+ <div class="row d-flex flex-wrap">
+ <div *ngFor="let db of dbList" class="col-md-6 pb-1">
+ <div class="input-group">
+ <div class="input-group-prepend">
+ <label class="input-group-text dl-input-chk-label">
+ <input id="chk_{{ db }}" type="checkbox" [checked]="templateInput.dbs.includes(+db.key)"
+ (change)="this.updateSelectedDB($event, db)" />
+ <span class="dl-input-checkmark"></span>
+ </label>
+ </div>
+ <label class="form-control dl-input-chk" for="chk_{{ db }}">
+ {{ db.name }}
+ </label>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <div class="form-group">
+ <div class="row">
+ <div class="col-md-2">
<label class="dl-emphasis1">{{ 'TEMPLATE_TYPE' | translate }}</label>
</div>
<div class="col-md-8">
diff --git a/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/edit-template-modal/edit-template-modal.component.ts b/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/edit-template-modal/edit-template-modal.component.ts
index f42e7379..a6b7be9f 100644
--- a/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/edit-template-modal/edit-template-modal.component.ts
+++ b/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/edit-template-modal/edit-template-modal.component.ts
@@ -41,6 +41,8 @@ export class EditTemplateModalComponent implements OnInit {
defaultTopicname: String;
templatetypedata: Array<any> = [];
topicname: Array<any> = [];
+ dbList: Array<any> = [];
+ tempSeletedDbs: any = [];
@Output() passEntry: EventEmitter<any> = new EventEmitter();
@ViewChild("templatetype") templatetype: ElementRef;
@@ -59,6 +61,7 @@ export class EditTemplateModalComponent implements OnInit {
ngOnInit() {
// cache for display
this.templateInput = new Template();
+ this.getDbList();
const feed = {
id: this.edittemplate.id,
name: this.edittemplate.name,
@@ -68,9 +71,12 @@ export class EditTemplateModalComponent implements OnInit {
topicName: this.edittemplate.topicName,
designType: this.edittemplate.designType,
designTypeName: this.edittemplate.designTypeName,
+ dbs: this.edittemplate.dbs,
};
this.templateInput = feed;
this.templateInputTitle = "" + this.edittemplate.name;
+ this.tempSeletedDbs = this.templateInput.dbs.map(item => { return Number(item) });
+
this.getTopicName();
this.getTemplateTypeName();
}
@@ -80,6 +86,27 @@ export class EditTemplateModalComponent implements OnInit {
});
}
+ getDbList() {
+ this.dashboardApiService.getTempDbList().subscribe(data => {
+ Object.keys(data).map(item => {
+ this.dbList.push({ key: item, name: data[item] })
+ })
+ });
+ }
+
+ updateSelectedDB(event: any, name: any) {
+ if (event.target.checked) {
+ if (!this.tempSeletedDbs.find(db => db === name)) {
+ this.tempSeletedDbs.push(Number(name.key));
+ }
+ } else {
+ const index = this.tempSeletedDbs.indexOf(+name.key, 0);
+ if (index > -1) {
+ this.tempSeletedDbs.splice(index, 1);
+ }
+ }
+ }
+
getTemplateTypeName() {
this.dashboardApiService.getTemplateTypeName().subscribe(data => {
this.templatetypedata = data;
@@ -124,6 +151,7 @@ export class EditTemplateModalComponent implements OnInit {
this.edittemplate.designTypeName = this.templatetype.nativeElement.value;
this.edittemplate.topicName = this.topic.nativeElement.value;
+ this.edittemplate.dbs = this.tempSeletedDbs;
this.passEntry.emit(this.edittemplate);
setTimeout(() => {
this.spinner.hide();
diff --git a/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/new-template-modal/new-template-modal.component.html b/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/new-template-modal/new-template-modal.component.html
index 7ea68964..40d0755e 100644
--- a/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/new-template-modal/new-template-modal.component.html
+++ b/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/new-template-modal/new-template-modal.component.html
@@ -79,6 +79,32 @@
<div class="form-group">
<div class="row">
<div class="col-md-2">
+ <label class="dl-emphasis1">{{ 'SINK' | translate }}</label>
+ </div>
+ <div class="col-md-8">
+ <div class="row d-flex flex-wrap">
+ <div *ngFor="let db of dbList" class="col-md-6 pb-1">
+ <div class="input-group">
+ <div class="input-group-prepend">
+ <label class="input-group-text dl-input-chk-label">
+ <input id="chk_{{ db }}" type="checkbox" [checked]="templateInput.dbs.includes(db)"
+ (change)="this.updateSelectedDB($event, db)" />
+ <span class="dl-input-checkmark"></span>
+ </label>
+ </div>
+ <label class="form-control dl-input-chk" for="chk_{{ db }}">
+ {{ db.name }}
+ </label>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <div class="form-group">
+ <div class="row">
+ <div class="col-md-2">
<label class="dl-emphasis1">{{ 'TEMPLATE_TYPE' | translate }}</label>
</div>
<div class="col-md-8">
diff --git a/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/new-template-modal/new-template-modal.component.ts b/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/new-template-modal/new-template-modal.component.ts
index 5e46bf92..496d08a1 100644
--- a/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/new-template-modal/new-template-modal.component.ts
+++ b/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/new-template-modal/new-template-modal.component.ts
@@ -40,6 +40,8 @@ export class NewTemplateModalComponent implements OnInit {
templateInput: Template
templatetypedata: Array<any> = [];
topicname: Array<any> = [];
+ dbList: Array<any> = [];
+ tempSeletedDbs: any = [];
@Output() passEntry: EventEmitter<any> = new EventEmitter();
@ViewChild("templatetype") templatetype: ElementRef;
@ViewChild("topic") topic: ElementRef;
@@ -56,6 +58,7 @@ export class NewTemplateModalComponent implements OnInit {
ngOnInit() {
this.getTopicName();
this.getTemplateTypeName();
+ this.getDbList();
// cache for display
this.templateInput = new Template();
const feed = {
@@ -67,6 +70,7 @@ export class NewTemplateModalComponent implements OnInit {
topicName: this.template.topicName,
designType: this.template.designType,
designTypeName: this.template.designTypeName,
+ dbs: [],
};
this.templateInput = feed;
}
@@ -76,12 +80,33 @@ export class NewTemplateModalComponent implements OnInit {
});
}
+ getDbList() {
+ this.dashboardApiService.getTempDbList().subscribe(data => {
+ Object.keys(data).map(item => {
+ this.dbList.push({ key: item, name: data[item] })
+ })
+ });
+ }
+
getTemplateTypeName() {
this.dashboardApiService.getTemplateTypeName().subscribe(data => {
this.templatetypedata = data;
});
}
+ updateSelectedDB(event: any, name: any) {
+ if (event.target.checked) {
+ if (!this.tempSeletedDbs.find(db => db === name)) {
+ this.tempSeletedDbs.push(name.key);
+ }
+ } else {
+ const index = this.tempSeletedDbs.indexOf(name.key, 0);
+ if (index > -1) {
+ this.tempSeletedDbs.splice(index, 1);
+ }
+ }
+ }
+
jsReadFiles() {
var thiss = this;
var file = (<HTMLInputElement>document.querySelector("#f-file")).files[0];
@@ -112,6 +137,7 @@ export class NewTemplateModalComponent implements OnInit {
this.template.designTypeName = this.templatetype.nativeElement.value;
this.template.topicName = this.topic.nativeElement.value;
+ this.template.dbs = this.tempSeletedDbs;
this.template.submitted = false;
this.template.note = "";
this.passEntry.emit(this.template);
diff --git a/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/template-list.component.ts b/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/template-list.component.ts
index 6bc9c9df..8da33f00 100644
--- a/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/template-list.component.ts
+++ b/components/datalake-handler/admin/src/src/app/dashboard-setting/template/template-list/template-list.component.ts
@@ -104,6 +104,7 @@ export class TemplateListComponent {
topicName: data["topicName"],
designType: data["designType"],
designTypeName: data["designTypeName"],
+ dbs: data["dbs"],
};
t.push(feed);
}
diff --git a/components/datalake-handler/admin/src/src/assets/i18n/en-us.json b/components/datalake-handler/admin/src/src/assets/i18n/en-us.json
index 64a54bb5..99bc7512 100644
--- a/components/datalake-handler/admin/src/src/assets/i18n/en-us.json
+++ b/components/datalake-handler/admin/src/src/assets/i18n/en-us.json
@@ -3,12 +3,11 @@
"FEDDFER": "DataLake Feeder",
"TOPICS": "Topics",
"DATABASE": "Database",
- "DASHBOARD":"Portal Setting",
- "DASHBOARDLIST":"Portal",
- "TEMPLATE":"Design",
+ "DASHBOARD": "Portal Setting",
+ "DASHBOARDLIST": "Portal",
+ "TEMPLATE": "Design",
"ABOUT": "About"
},
-
"NAME": "Name",
"STATUS": "Status",
"SINK": "Sink",
@@ -21,8 +20,7 @@
"ID_EXTRACTION": "ID extraction",
"CONFIGURED": "Configured",
"UNCONFIGURED": "Unconfigured",
- "NEW_TOPIC":"New topic",
-
+ "NEW_TOPIC": "New topic",
"DATABASE_CONNECTIONS": "Database connections",
"BUCKET": "Bucket",
"HOST": "Host",
@@ -30,47 +28,40 @@
"ENABLE_SSL": "Encrypt Communication",
"VERIFY": "Verify",
"SETTING": "Setting",
-
"DOCUMENT_STORE": "Document store",
"SEARCH_ENGINE": "Search engine",
-
"DELETE": "Delete",
"ERROR_CODE": "Error Code",
"SUCCESS_UPDATED": "Success updated",
"TOPIC_DEFAULT_CONF_NOTICE": "Notice: This topic uses the default topics settings.",
-
- "HOME":"Home",
- "ConfigDashboard":"Config Portal",
- "EDIT":"Edit",
- "OK":"OK",
- "Save":"Save",
- "Cancel":"Cancel",
- "NewDashboard":"New Portal",
- "DestinationType":"Destination type",
- "InputValue":"Default",
- "Username":"Username",
- "Password":"Password",
- "Enabled":"Enabled",
-
-
- "No":"No",
- "TEMPLATE_NAME":"Name",
- "TEMPLATE_TYPE":"Type",
- "TOPICS_NAME":"Topic",
- "DEPLOY_TO_DASHBOARD":"Deploy",
- "DEPLOY":"Deploy",
- "NEW_TEMPLATE":"New design",
- "TEMPLATE_BODY":"Body",
- "FIELUPLOAD":"fileUpload",
-
- "SUCCESSFULLY_CREARED":"Successfully created.",
- "FAILED_CREARED":"Failed updated.",
- "SUCCESSFULLY_UPDATED":"Successfully updated.",
- "FAILED_UPDATED":"Failed updated.",
- "SUCCESSFULLY_DELETED":"Successfully deleted.",
- "FAILED_DELETED":"Failed deleted.",
- "Deploy_SUCCESSFULLY":"Deploy successfully.",
- "Deploy_FAILED":"Deploy failed.",
- "ARE_YOU_SURE_DELETE":"Are you sure you want to delete it?"
-
-}
+ "HOME": "Home",
+ "ConfigDashboard": "Config Portal",
+ "EDIT": "Edit",
+ "OK": "OK",
+ "Save": "Save",
+ "Cancel": "Cancel",
+ "NewDashboard": "New Portal",
+ "DestinationType": "Destination type",
+ "InputValue": "Default",
+ "Username": "Username",
+ "Password": "Password",
+ "Enabled": "Enabled",
+ "No": "No",
+ "TEMPLATE_NAME": "Name",
+ "TEMPLATE_TYPE": "Type",
+ "TOPICS_NAME": "Topic",
+ "DEPLOY_TO_DASHBOARD": "Deploy",
+ "DEPLOY": "Deploy",
+ "NEW_TEMPLATE": "New design",
+ "TEMPLATE_BODY": "Body",
+ "FIELUPLOAD": "Upload file",
+ "SUCCESSFULLY_CREARED": "Successfully created.",
+ "FAILED_CREARED": "Failed updated.",
+ "SUCCESSFULLY_UPDATED": "Successfully updated.",
+ "FAILED_UPDATED": "Failed updated.",
+ "SUCCESSFULLY_DELETED": "Successfully deleted.",
+ "FAILED_DELETED": "Failed deleted.",
+ "Deploy_SUCCESSFULLY": "Deploy successfully.",
+ "Deploy_FAILED": "Deploy failed.",
+ "ARE_YOU_SURE_DELETE": "Are you sure you want to delete it?"
+} \ No newline at end of file
diff --git a/components/datalake-handler/admin/src/src/index.html b/components/datalake-handler/admin/src/src/index.html
index 2549c4a5..5efb80e7 100644
--- a/components/datalake-handler/admin/src/src/index.html
+++ b/components/datalake-handler/admin/src/src/index.html
@@ -31,7 +31,7 @@ limitations under the License.
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.8.2/css/all.css"
integrity="sha384-oS3vJWv+0UjzBfQzYUhtDYW+Pj2yciDJxpsK1OYPAYjqT085Qq/1cq5FLXAZQ7Ay" crossorigin="anonymous">
-<link href="https://fonts.googleapis.com/css?family=Noto+Sans+TC|Open+Sans:300,400,600|Roboto:100" rel="stylesheet">
+ <link href="https://fonts.googleapis.com/css?family=Noto+Sans+TC|Open+Sans:300,400,600|Roboto:100" rel="stylesheet">
</head>
@@ -41,4 +41,4 @@ limitations under the License.
</div>
</body>
-</html>
+</html> \ No newline at end of file