@@ -19,6 +19,7 @@
+
@@ -52,26 +53,27 @@
+
-
+
@@ -287,18 +289,25 @@ export default {
},
data() {
return {
- activeName: "TrafficAccident",
+ title: '新增预案',
+ dialogType: 1,
+ planId: 0,
submitting: false,
- formConfig: {},
formData: {
eventCategory: 1,
eventType: 1,
- triggeringCondition: 0
+ triggerMechanism: 1
},
- index: 1,
- roads: [],
- direction: [],
- lwss: [],
+ secondFormData: [{
+ deviceType: 1,
+ searchRule: 1,
+ qbb: '安全行驶'
+ }],
+ thirdFormData: [{
+ deviceType: 1,
+ searchRule: 1,
+ qbb: '安全行驶'
+ }],
eventOptions: [
{
value: 1,
@@ -394,68 +403,70 @@ export default {
}
}
},
- created() {
- // this.formConfig = tabConfigList[0].formConfig;
- this.initData().then(() => {
- this.handleChange({ index: 0 })
- })
+ mounted() {
+
},
computed: {
modelVisible: {
get() {
+ if (this.visible) {
+
+ if (Object.keys(this.detail).length > 0) {
+ this.title = '修改预案';
+ this.dialogType = 2;
+ this.initData(this.detail.id);
+ } else {
+ this.title = '新增预案';
+ this.dialogType = 1;
+ this.formData = {
+ eventCategory: 1,
+ eventType: 1,
+ triggerMechanism: 0
+ }
+ }
+ }
return this.visible;
},
set(val) {
this.$emit('close', val)
}
},
- getFormOptions() {
- return {
- column: 3,
- ...this.formConfig.formOptions
- }
- }
},
methods: {
- initData() {
- return Promise.all([
- //道路
- request({
- url: `/business/road/query`,
- method: "get",
- }).then((result) => {
- if (result.code != 200) return Message.error(result?.msg);
- result.data.forEach(it => {
- this.roads.push({ key: it.id, label: it.roadName })
- })
- }).catch((err) => {
- Message.error("查询失败4", err);
- }),
- //方向字典
- request({
- url: `/system/dict/data/type/iot_event_direction`,
- method: "get",
- }).then((result) => {
- if (result.code != 200) return Message.error(result?.msg);
- result.data.forEach(it => {
- this.direction.push({ key: it.dictValue, label: it.dictLabel })
- })
- }).catch((err) => {
- Message.error("查询失败5", err);
- }),
- //路网设施 1 收费站 2 桥梁 3 互通立交 4 枢纽立交 5 隧道 6 服务区
- request({
- url: `/business/facility/query`,
- method: "get"
- }).then((result) => {
- if (result.code != 200) return Message.error(result?.msg);
- result.data.forEach(it => this.lwss.push({ key: it.id, label: it.facilityName, type: it.facilityType }))
- }).catch((err) => {
- console.log('err', err)
- Message.error("查询失败6", err);
+ initData(id = 1) {
+ request({
+ url: `/business/plans/list/${id}`,
+ method: "get",
+ }).then((result) => {
+ if (result.code != 200) return Message.error(result?.msg);
+ let data = result.data;
+ let dcExecuteAction = result.data.dcExecuteAction;
+
+ this.planId = data.id;
+ this.formData = {
+ eventCategory: data.eventCategory,
+ planName: data.planName,
+ eventType: data.eventType,
+ triggerMechanism: data.triggerMechanism,
+ }
+ this.secondFormData = [];
+ this.thirdFormData = [];
+ dcExecuteAction.forEach(it => {
+ if (it.deviceList) {
+ it.deviceList = it.deviceList.split(',');
+ }
+ if (it.actionType == 1) {
+ this.secondFormData.push(it);
+ } else if (it.actionType == 2) {
+ this.thirdFormData.push(it);
+ }
})
- ])
+ }).catch((err) => {
+ console.log(err)
+ Message.error("查询事件预案列表失败", err);
+ })
+
},
changeEventType(value = 1) {
this.mechanismOptions = optionsMap[this.formData.eventCategory || 1][value];
@@ -537,33 +548,73 @@ export default {
handleSubmit() {
this.$refs['ruleForm'].validate((valid) => {
if (valid) {
- this.submitting = true;
- console.log('formData', this.formData)
- this.modelVisible = false;
- this.submitting = false;
- // this.$emit('queryData',true)
- console.log(this.$refs['secondFormTable'].tableData)
- return;
-
- request({
- url: `/dc/system/event`,
- method: "post",
- data: {
- ...formData,
- eventType: Number(this.index) + 1,
- eventState: 0,
- stakeMark: (stakeMark && stakeMark[0] != null) ? ((stakeMark && stakeMark.length > 0) ? ('K' + stakeMark[0] + '+' + stakeMark[1]) : '') : '',
+ // this.submitting = false;
+ let secondFormTable = this.$refs['secondFormTable'].tableData || [];
+ let thirdFormTable = this.$refs['thirdFormTable'].tableData || [];
+ let dcArr = [];
+ secondFormTable.forEach(it => {
+ if (it.deviceList && typeof it.deviceList !== 'string' && it.deviceList.length > 0) {
+ it.deviceList = it.deviceList.join(',');
+ } else {
+ it.deviceList = ''
+ }
+ dcArr.push({ ...it, actionType: 1 });
+ })
+ thirdFormTable.forEach(it => {
+ if (it.deviceList && typeof it.deviceList !== 'string' && it.deviceList.length > 0) {
+ it.deviceList = it.deviceList.join(',');
+ } else {
+ it.deviceList = ''
}
- }).then((result) => {
- if (result.code != 200) return Message.error(result?.msg);
- Message.success("提交成功");
- this.modelVisible = false;
- }).catch(() => {
- Message.error("提交失败");
- }).finally(() => {
- this.submitting = false;
- this.$emit('queryData', true);
+ dcArr.push({ ...it, actionType: 2 });
+ })
+
+ console.log({
+ ...this.formData,
+ dcExecuteAction: dcArr
})
+ // return;
+ if (this.dialogType == 1) {//新增
+ request({
+ url: `/business/plans`,
+ method: "post",
+ data: {
+ ...this.formData,
+ dcExecuteAction: dcArr
+ }
+ }).then((result) => {
+ if (result.code != 200) return Message.error(result?.msg);
+ Message.success("提交成功");
+ this.modelVisible = false;
+ }).catch(() => {
+ Message.error("提交失败");
+ }).finally(() => {
+ this.submitting = false;
+ this.$emit('reInitData', true);
+ })
+ } else if (this.dialogType == 2) {//修改
+ request({
+ url: `/business/plans`,
+ method: "put",
+ data: {
+ ...this.formData,
+ id: this.planId,
+ dcExecuteAction: dcArr
+ }
+ }).then((result) => {
+ if (result.code != 200) return Message.error(result?.msg);
+ Message.success("提交成功");
+ this.modelVisible = false;
+ }).catch(() => {
+ Message.error("提交失败");
+ }).finally(() => {
+ this.submitting = false;
+ this.$emit('reInitData', true);
+ })
+
+ }
+
+
}
})
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/control/event/plan/data.js b/ruoyi-ui/src/views/JiHeExpressway/pages/control/event/plan/data.js
index d9eeb945..c1686c21 100644
--- a/ruoyi-ui/src/views/JiHeExpressway/pages/control/event/plan/data.js
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/control/event/plan/data.js
@@ -3,77 +3,54 @@ import { merge, cloneDeep } from "lodash";
export const searchFormList = [
{
- label: "事件状态:",
- key: "eventState",
- type: "RadioGroup",
- options: {
- options: [
- {
- key: "0",
- label: "未解决",
- },
- {
- key: "1",
- label: "已解决",
- },
- {
- key: "2",
- label: "已关闭",
- },
- ],
- },
+ label: "预案名称:",
+ key: "planName",
},
- PresetFormItems.eventSources,
- PresetFormItems.eventType,
{
- label: "方向:",
- key: "direction",
+ label: "事件分类:",
+ key: "eventCategory",
type: "RadioGroup",
options: {
options: [
{
- key: "济南方向",
- label: "济南方向",
- },
- {
- key: "菏泽方向",
- label: "菏泽方向",
+ key: "1",
+ label: "交通事件",
},
{
- key: "双向",
- label: "双向",
+ key: "2",
+ label: "感知事件",
},
],
},
},
- {
- label: "时间范围:",
- key: "daterange",
- required: false,
- type: "datePicker",
- options: {
- type: "daterange",
- format: "yyyy-MM-dd HH:mm:ss",
- valueFormat: "yyyy-MM-dd HH:mm:ss",
- },
- },
- {
- ...PresetFormItems.station,
- label: "开始桩号:",
- required: false,
- },
- merge(cloneDeep(PresetFormItems.station), {
- options: {
- options: [
- {
- key: "endStakeMark[0]",
- },
- {
- key: "endStakeMark[1]",
- },
- ],
- },
- label: "结束桩号:",
- required: false,
- }),
+ // {
+ // label: "时间范围:",
+ // key: "daterange",
+ // required: false,
+ // type: "datePicker",
+ // options: {
+ // type: "daterange",
+ // format: "yyyy-MM-dd HH:mm:ss",
+ // valueFormat: "yyyy-MM-dd HH:mm:ss",
+ // },
+ // },
+ // {
+ // ...PresetFormItems.station,
+ // label: "开始桩号:",
+ // required: false,
+ // },
+ // merge(cloneDeep(PresetFormItems.station), {
+ // options: {
+ // options: [
+ // {
+ // key: "endStakeMark[0]",
+ // },
+ // {
+ // key: "endStakeMark[1]",
+ // },
+ // ],
+ // },
+ // label: "结束桩号:",
+ // required: false,
+ // }),
];
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/control/event/plan/formTable/index.vue b/ruoyi-ui/src/views/JiHeExpressway/pages/control/event/plan/formTable/index.vue
index 119ccd7f..1d340e97 100644
--- a/ruoyi-ui/src/views/JiHeExpressway/pages/control/event/plan/formTable/index.vue
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/control/event/plan/formTable/index.vue
@@ -11,26 +11,30 @@