diff --git a/common/src/main/java/com/usthe/common/entity/manager/ParamDefine.java b/common/src/main/java/com/usthe/common/entity/manager/ParamDefine.java
index 25cc5bc..1bb2af3 100644
--- a/common/src/main/java/com/usthe/common/entity/manager/ParamDefine.java
+++ b/common/src/main/java/com/usthe/common/entity/manager/ParamDefine.java
@@ -122,6 +122,12 @@ public class ParamDefine {
@ApiModelProperty(value = "当type为key-value时有效,表示value的别名描述", example = "Value", accessMode = READ_WRITE, position = 10)
private String valueAlias;
+ /**
+ * 是否是高级隐藏参数 true-是 false-否
+ */
+ @ApiModelProperty(value = "是否是高级隐藏参数 true-是 false-否", example = "true", accessMode = READ_WRITE, position = 11)
+ private boolean hide = false;
+
/**
* 此条记录创建者
*/
diff --git a/manager/src/main/resources/define/param/A-example.yml b/manager/src/main/resources/define/param/A-example.yml
index c6d0530..c09b05e 100644
--- a/manager/src/main/resources/define/param/A-example.yml
+++ b/manager/src/main/resources/define/param/A-example.yml
@@ -26,10 +26,12 @@ param:
# 当type为text时,用limit表示字符串限制大小
limit: 20
required: false
+ hide: true
- field: password
name: 密码
type: password
required: false
+ hide: true
- field: ssl
name: 启动SSL
# 当type为boolean时,前端用switch展示开关
diff --git a/web-app/src/app/pojo/ParamDefine.ts b/web-app/src/app/pojo/ParamDefine.ts
index 33bf732..01c3249 100644
--- a/web-app/src/app/pojo/ParamDefine.ts
+++ b/web-app/src/app/pojo/ParamDefine.ts
@@ -12,4 +12,6 @@ export class ParamDefine {
// 当type为key-value时有效,表示别名描述
keyAlias!: string;
valueAlias!: string;
+ // 此参数是否隐藏 即默认不显示, 在高级设置区显示
+ hide: boolean = false;
}
diff --git a/web-app/src/app/routes/monitor/monitor-edit/monitor-edit.component.html b/web-app/src/app/routes/monitor/monitor-edit/monitor-edit.component.html
index 0bf9ff5..e4f1402 100644
--- a/web-app/src/app/routes/monitor/monitor-edit/monitor-edit.component.html
+++ b/web-app/src/app/routes/monitor/monitor-edit/monitor-edit.component.html
@@ -162,11 +162,151 @@
+
+
+
+ {{ paramDefine.name }}
+
+
+
+
+
+ {{ paramDefine.name }}
+
+
+
+
+
+ {{ paramDefine.name }}
+
+
+
+
+
+
+
+
+
+
+ {{ paramDefine.name }}
+
+
+
+
+
+ {{ paramDefine.name }}
+
+
+
+
+
+ {{ paramDefine.name }}
+
+
+
+
+
+
+
+ {{ paramDefine.name }}
+
+
+
+
+
+
+
+
+
+
+
采集间隔
-
+
diff --git a/web-app/src/app/routes/monitor/monitor-edit/monitor-edit.component.less b/web-app/src/app/routes/monitor/monitor-edit/monitor-edit.component.less
new file mode 100644
index 0000000..a029bab
--- /dev/null
+++ b/web-app/src/app/routes/monitor/monitor-edit/monitor-edit.component.less
@@ -0,0 +1,8 @@
+.dynamic-button {
+ font-size: 20px;
+ margin-left: 45%;
+}
+
+.dynamic-button:hover {
+ font-size: 30px;
+}
diff --git a/web-app/src/app/routes/monitor/monitor-edit/monitor-edit.component.ts b/web-app/src/app/routes/monitor/monitor-edit/monitor-edit.component.ts
index e2825a9..de34a6f 100644
--- a/web-app/src/app/routes/monitor/monitor-edit/monitor-edit.component.ts
+++ b/web-app/src/app/routes/monitor/monitor-edit/monitor-edit.component.ts
@@ -16,7 +16,7 @@ import { MonitorService } from '../../../service/monitor.service';
@Component({
selector: 'app-monitor-modify',
templateUrl: './monitor-edit.component.html',
- styles: []
+ styleUrls: ['./monitor-edit.component.less']
})
export class MonitorEditComponent implements OnInit {
constructor(
@@ -30,6 +30,8 @@ export class MonitorEditComponent implements OnInit {
paramDefines!: ParamDefine[];
params!: Param[];
+ advancedParamDefines!: ParamDefine[];
+ advancedParams!: Param[];
paramValueMap = new Map();
monitor = new Monitor();
profileForm: FormGroup = new FormGroup({});
@@ -59,7 +61,6 @@ export class MonitorEditComponent implements OnInit {
this.paramValueMap.set(item.field, item);
});
}
- this.params = message.data.params;
this.detected = message.data.detected ? message.data.detected : true;
} else {
console.warn(message.msg);
@@ -73,7 +74,10 @@ export class MonitorEditComponent implements OnInit {
if (message.code === 0) {
this.paramDefines = message.data;
this.params = [];
- this.paramDefines.forEach(define => {
+ this.advancedParams = [];
+ this.paramDefines = [];
+ this.advancedParamDefines = [];
+ message.data.forEach(define => {
let param = this.paramValueMap.get(define.field);
if (param === undefined) {
param = new Param();
@@ -100,7 +104,13 @@ export class MonitorEditComponent implements OnInit {
}
}
}
- this.params.push(param);
+ if (define.hide) {
+ this.advancedParams.push(param);
+ this.advancedParamDefines.push(define);
+ } else {
+ this.params.push(param);
+ this.paramDefines.push(define);
+ }
});
} else {
console.warn(message.msg);
@@ -144,10 +154,15 @@ export class MonitorEditComponent implements OnInit {
param.value = (param.value as string).trim();
}
});
+ this.advancedParams.forEach(param => {
+ if (param.value != null && typeof param.value == 'string') {
+ param.value = (param.value as string).trim();
+ }
+ });
let addMonitor = {
detected: this.detected,
monitor: this.monitor,
- params: this.params
+ params: this.params.concat(this.advancedParams)
};
this.isSpinning = true;
this.monitorSvc.editMonitor(addMonitor).subscribe(
@@ -188,10 +203,15 @@ export class MonitorEditComponent implements OnInit {
param.value = (param.value as string).trim();
}
});
+ this.advancedParams.forEach(param => {
+ if (param.value != null && typeof param.value == 'string') {
+ param.value = (param.value as string).trim();
+ }
+ });
let detectMonitor = {
detected: this.detected,
monitor: this.monitor,
- params: this.params
+ params: this.params.concat(this.advancedParams)
};
this.isSpinning = true;
this.monitorSvc.detectMonitor(detectMonitor).subscribe(
diff --git a/web-app/src/app/routes/monitor/monitor-new/monitor-new.component.html b/web-app/src/app/routes/monitor/monitor-new/monitor-new.component.html
index ca6860d..a1f4d13 100644
--- a/web-app/src/app/routes/monitor/monitor-new/monitor-new.component.html
+++ b/web-app/src/app/routes/monitor/monitor-new/monitor-new.component.html
@@ -171,6 +171,146 @@
+
+
+
+ {{ paramDefine.name }}
+
+
+
+
+
+ {{ paramDefine.name }}
+
+
+
+
+
+ {{ paramDefine.name }}
+
+
+
+
+
+
+
+
+
+
+ {{ paramDefine.name }}
+
+
+
+
+
+ {{ paramDefine.name }}
+
+
+
+
+
+ {{ paramDefine.name }}
+
+
+
+
+
+
+
+ {{ paramDefine.name }}
+
+
+
+
+
+
+
+
+
+
+
diff --git a/web-app/src/app/routes/monitor/monitor-new/monitor-new.component.ts b/web-app/src/app/routes/monitor/monitor-new/monitor-new.component.ts
index fa91e3c..b1f67cb 100644
--- a/web-app/src/app/routes/monitor/monitor-new/monitor-new.component.ts
+++ b/web-app/src/app/routes/monitor/monitor-new/monitor-new.component.ts
@@ -20,6 +20,8 @@ import { MonitorService } from '../../../service/monitor.service';
export class MonitorNewComponent implements OnInit {
paramDefines!: ParamDefine[];
params!: Param[];
+ advancedParamDefines!: ParamDefine[];
+ advancedParams!: Param[];
monitor!: Monitor;
detected: boolean = true;
passwordVisible: boolean = false;
@@ -53,9 +55,11 @@ export class MonitorNewComponent implements OnInit {
)
.subscribe(message => {
if (message.code === 0) {
- this.paramDefines = message.data;
this.params = [];
- this.paramDefines.forEach(define => {
+ this.advancedParams = [];
+ this.paramDefines = [];
+ this.advancedParamDefines = [];
+ message.data.forEach(define => {
let param = new Param();
param.field = define.field;
if (define.type === 'number') {
@@ -77,7 +81,13 @@ export class MonitorNewComponent implements OnInit {
param.value = define.defaultValue;
}
}
- this.params.push(param);
+ if (define.hide) {
+ this.advancedParams.push(param);
+ this.advancedParamDefines.push(define);
+ } else {
+ this.params.push(param);
+ this.paramDefines.push(define);
+ }
});
} else {
console.warn(message.msg);
@@ -125,10 +135,15 @@ export class MonitorNewComponent implements OnInit {
param.value = (param.value as string).trim();
}
});
+ this.advancedParams.forEach(param => {
+ if (param.value != null && typeof param.value == 'string') {
+ param.value = (param.value as string).trim();
+ }
+ });
let addMonitor = {
detected: this.detected,
monitor: this.monitor,
- params: this.params
+ params: this.params.concat(this.advancedParams)
};
this.isSpinning = true;
this.monitorSvc.newMonitor(addMonitor).subscribe(
@@ -169,10 +184,15 @@ export class MonitorNewComponent implements OnInit {
param.value = (param.value as string).trim();
}
});
+ this.advancedParams.forEach(param => {
+ if (param.value != null && typeof param.value == 'string') {
+ param.value = (param.value as string).trim();
+ }
+ });
let detectMonitor = {
detected: true,
monitor: this.monitor,
- params: this.params
+ params: this.params.concat(this.advancedParams)
};
this.isSpinning = true;
this.monitorSvc.detectMonitor(detectMonitor).subscribe(
diff --git a/web-app/src/app/routes/monitor/monitor.module.ts b/web-app/src/app/routes/monitor/monitor.module.ts
index e96d33a..f421e33 100644
--- a/web-app/src/app/routes/monitor/monitor.module.ts
+++ b/web-app/src/app/routes/monitor/monitor.module.ts
@@ -16,6 +16,7 @@ import { MonitorEditComponent } from './monitor-edit/monitor-edit.component';
import { MonitorListComponent } from './monitor-list/monitor-list.component';
import { MonitorNewComponent } from './monitor-new/monitor-new.component';
import { MonitorRoutingModule } from './monitor-routing.module';
+import { NzCollapseModule } from 'ng-zorro-antd/collapse';
const COMPONENTS: Array> = [
MonitorNewComponent,
@@ -37,7 +38,8 @@ const COMPONENTS: Array> = [
NzRadioModule,
NgxEchartsModule,
NzLayoutModule,
- NzSpaceModule
+ NzSpaceModule,
+ NzCollapseModule
],
declarations: COMPONENTS
})