summaryrefslogtreecommitdiffstats
path: root/sdc-workflow-designer-ui/src/app/components/parameter
diff options
context:
space:
mode:
authorLvbo163 <lv.bo163@zte.com.cn>2017-08-31 14:29:07 +0800
committerLvbo163 <lv.bo163@zte.com.cn>2017-08-31 14:29:07 +0800
commit626d74e4c51aa47da5d5d643b5b7a04188b5552a (patch)
tree8d074a6928b71950cfbe69261bfa156ceaea3d07 /sdc-workflow-designer-ui/src/app/components/parameter
parent97e19323bd1e9ee44a02173a5ba05d13219c4082 (diff)
support set parameter for workflow
support set input and output params for start event Issue-ID: SDC-120 Change-Id: Ib5a87692e06817b2676b3f2f2223e1ced117b5c9 Signed-off-by: Lvbo163 <lv.bo163@zte.com.cn>
Diffstat (limited to 'sdc-workflow-designer-ui/src/app/components/parameter')
-rw-r--r--sdc-workflow-designer-ui/src/app/components/parameter/parameter.component.html32
-rw-r--r--sdc-workflow-designer-ui/src/app/components/parameter/parameter.component.ts67
2 files changed, 99 insertions, 0 deletions
diff --git a/sdc-workflow-designer-ui/src/app/components/parameter/parameter.component.html b/sdc-workflow-designer-ui/src/app/components/parameter/parameter.component.html
new file mode 100644
index 00000000..da7dfb1d
--- /dev/null
+++ b/sdc-workflow-designer-ui/src/app/components/parameter/parameter.component.html
@@ -0,0 +1,32 @@
+<!--
+/**
+ * Copyright (c) 2017 ZTE Corporation.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * and the Apache License 2.0 which both accompany this distribution,
+ * and are available at http://www.eclipse.org/legal/epl-v10.html
+ * and http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Contributors:
+ * ZTE - initial API and implementation and/or initial documentation
+ */
+-->
+
+<div class="form-group row">
+ <div *ngIf="showLabel" class="col-md-3 text-md-right">
+ <input *ngIf="canEditName" class="form-control" type="text" [(ngModel)]="param.name">
+ <label *ngIf="!canEditName" class="form-control-label">{{param.name}}</label>
+ </div>
+ <div [ngClass]="valueGroupClass">
+ <div [ngSwitch]="param.valueSource">
+ <input *ngSwitchCase="sourceEnum[sourceEnum.String]" [ngClass]="valueClass" class="form-control"
+ type="text" [ngModel]="param.value" (ngModelChange)="modelChange($event)">
+ <!-- TODO add plan and Top parameters -->
+ </div>
+ </div>
+ <div *ngIf="canDelete" class="col-md-2">
+ <button type="button" class="btn oes-red-bg pull-right" (click)="deleteParam()">
+ <i class="fa fa-minus"></i>
+ </button>
+ </div>
+</div>
diff --git a/sdc-workflow-designer-ui/src/app/components/parameter/parameter.component.ts b/sdc-workflow-designer-ui/src/app/components/parameter/parameter.component.ts
new file mode 100644
index 00000000..f42caf66
--- /dev/null
+++ b/sdc-workflow-designer-ui/src/app/components/parameter/parameter.component.ts
@@ -0,0 +1,67 @@
+/**
+ * Copyright (c) 2017 ZTE Corporation.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * and the Apache License 2.0 which both accompany this distribution,
+ * and are available at http://www.eclipse.org/legal/epl-v10.html
+ * and http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Contributors:
+ * ZTE - initial API and implementation and/or initial documentation
+ */
+
+import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';
+
+import { ValueSource } from '../../model/value-source.enum';
+import { Parameter } from '../../model/workflow/parameter';
+import { DataAccessService } from "../../services/data-access/data-access.service";
+
+/**
+ * this component contains in property component if the corresponding node has parameter properties
+ * eg. task node have input and output params, start event node has input param
+ */
+@Component({
+ selector: 'b4t-parameter',
+ templateUrl: 'parameter.component.html',
+})
+export class ParameterComponent implements OnInit {
+ @Input() public param: Parameter;
+ @Input() public valueSource: ValueSource[];
+ @Input() public canEditName: boolean;
+ @Input() public showLabel = true;
+ @Input() public canDelete: boolean;
+ @Output() public paramChange = new EventEmitter<Parameter>();
+ @Output() delete: EventEmitter<Parameter> = new EventEmitter<Parameter>();
+
+ public sourceEnum = ValueSource;
+ public valueGroupClass;
+ public valueClass;
+ public showValueSource: boolean = true;
+
+ constructor(private dataAccessService: DataAccessService) { }
+
+ public ngOnInit(): void {
+ if (1 === this.valueSource.length) {
+ this.showValueSource = false;
+ }
+ this.valueClass = {
+ 'col-md-9': this.showValueSource,
+ 'col-md-12': !this.showValueSource
+ };
+
+ this.valueGroupClass = {
+ 'col-md-7': this.canDelete,
+ 'col-md-9': !this.canDelete
+ };
+ }
+
+ public deleteParam(): void {
+ this.delete.emit();
+ }
+
+ public modelChange(value: any) {
+ this.param.value = value;
+ this.paramChange.emit(this.param)
+ }
+
+}