diff --git a/src/api/signal/signal.js b/src/api/signal/signal.js
index 4bb8b54..5d88dea 100644
--- a/src/api/signal/signal.js
+++ b/src/api/signal/signal.js
@@ -60,9 +60,10 @@ export function optionDel(id) {
}
// 获取选项下拉
-export function select() {
+export function select(params) {
return request({
url: '/system/signal/select',
method: 'get',
+ params
})
}
\ No newline at end of file
diff --git a/src/views/signal/signalList/index.vue b/src/views/signal/signalList/index.vue
index 94fcc56..f8d552e 100644
--- a/src/views/signal/signalList/index.vue
+++ b/src/views/signal/signalList/index.vue
@@ -42,7 +42,8 @@
-
+
+ {{ scope.row.status == 1 ? scope.row.signalValue : '无' }}
@@ -50,8 +51,12 @@
+
+
+
+ 信号量选项
修改
删除
@@ -70,7 +75,13 @@
-
+
+
+
+
+
+
+
@@ -82,12 +93,48 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 移除
+
+
+
+
+
+
@@ -101,7 +148,7 @@ export default {
ids: [],
// 表格数据
tableData: [],
- // 显示搜索条件
+ // 显示搜索条件
showSearch: true,
// 总条数
total: 0,
@@ -116,6 +163,10 @@ export default {
pageNum: 1,
pageSize: 10
},
+ statusList: [
+ { 'label': '无选项', 'value': 1 },
+ { 'label': '有选项', 'value': 2 }
+ ],
rules: {
signalCode: [
{ required: true, message: "信号编码不能为空", trigger: "blur" },
@@ -123,13 +174,22 @@ export default {
signalName: [
{ required: true, message: "信号名称不能为空", trigger: "blur" },
],
+ status: [
+ { required: true, message: "信号选项类型不能为空", trigger: "blur" },
+ ],
signalValue: [
{ required: true, message: "信号量不能为空", trigger: "blur" },
],
signalValueRange: [
{ required: true, message: "信号量范围不能为空", trigger: "blur" },
- ]
+ ],
},
+ optionOpen: false,
+ optionForm: {
+ signalName: '',
+ signalCode: '',
+ optionList: [],
+ }
}
},
created () {
@@ -160,6 +220,49 @@ export default {
this.open = true;
this.title = "添加信号";
},
+ handleOptionUpdate (row) {
+ this.optionOpen = true;
+ this.resetForm("optionForm");
+ this.optionForm.optionList = [{ 'optionName': '', 'optionVal': '', 'signalValueRange': '' }];
+ this.optionForm.signalCode = row.signalCode;
+ this.optionForm.signalName = row.signalName;
+ select({ signalCode: row.signalCode }).then(res => {
+ if (200 == res.code) {
+ this.optionForm.optionList.unshift(...res.select);
+ } else {
+ this.msgError(res.msg);
+ }
+ })
+ },
+ removeOption (option) {
+ let index = this.optionForm.optionList.indexOf(option);
+ if (index !== -1) {
+ this.optionForm.optionList.splice(index, 1);
+ }
+ },
+ addOption () {
+ this.optionForm.optionList.push({ 'optionName': '', 'optionVal': '', 'signalValueRange': '' });
+ },
+ submitOption () {
+ this.$refs.optionForm.validate((valid) => {
+ if (valid) {
+ if (this.optionForm.optionList.length == 0) return;
+ let snap = new Set(this.optionForm.optionList.map(v => v.optionVal));
+ if ( this.optionForm.optionList.length != snap.size) {
+ this.msgError('选项值不能重复');
+ return;
+ }
+ optionSave(this.optionForm).then(({ code, msg }) => {
+ if (200 == code) {
+ this.optionOpen = false;
+ this.msgSuccess(msg);
+ } else {
+ this.msgError(msg)
+ }
+ })
+ }
+ })
+ },
/** 修改按钮操作 */
handleUpdate (row) {
this.reset();
@@ -169,9 +272,13 @@ export default {
},
/** 提交按钮 */
submit () {
- save(this.form).then(res => {
- this.open = false;
- this.getList()
+ this.$refs.form.validate((valid) => {
+ if (valid) {
+ save(this.form).then(res => {
+ this.open = false;
+ this.getList()
+ })
+ }
})
},
/** 删除按钮操作 */