Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
V
vue_django_test
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
周田
vue_django_test
Commits
3fe301f2
Commit
3fe301f2
authored
Aug 31, 2023
by
周田
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix:修复 删除通信参数,但是面板未更新
parent
fecd5f00
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
23 additions
and
8 deletions
+23
-8
DeviceInfoCard.vue
...nd/src/components/device_communication/DeviceInfoCard.vue
+12
-3
EditDialog.vue
frontend/src/components/device_communication/EditDialog.vue
+1
-2
DeviceCommunication.vue
frontend/src/views/DeviceCommunication.vue
+10
-3
xdc.sqlite
xdc.sqlite
+0
-0
No files found.
frontend/src/components/device_communication/DeviceInfoCard.vue
View file @
3fe301f2
...
@@ -36,8 +36,9 @@
...
@@ -36,8 +36,9 @@
<
script
setup
lang=
"ts"
>
<
script
setup
lang=
"ts"
>
import
{
onMounted
,
ref
}
from
'vue'
;
import
{
onMounted
,
ref
,
watch
}
from
'vue'
;
import
axios
from
'axios'
;
import
axios
from
'axios'
;
import
{
ElMessage
}
from
'element-plus'
;
import
type
{
DeviceInfo
}
from
'@/components/device_communication/types'
;
import
type
{
DeviceInfo
}
from
'@/components/device_communication/types'
;
import
EditDialog
from
'./EditDialog.vue'
;
import
EditDialog
from
'./EditDialog.vue'
;
...
@@ -58,14 +59,22 @@ onMounted(() => {
...
@@ -58,14 +59,22 @@ onMounted(() => {
deviceInfo
.
value
.
checked_performance_fields
=
checked_performance_fields
.
value
deviceInfo
.
value
.
checked_performance_fields
=
checked_performance_fields
.
value
})
})
// 观察 device_info 是否有变化,如果有变化则更新
watch
(()
=>
props
.
deviceInfo
,
()
=>
{
deviceInfo
.
value
=
props
.
deviceInfo
})
const
emit
=
defineEmits
([
'deleteDeviceInfo'
])
const
emit
=
defineEmits
([
'deleteDeviceInfo'
])
const
del
=
()
=>
{
const
del
=
()
=>
{
let
station_id
=
deviceInfo
.
value
.
station_id
let
station_id
=
deviceInfo
.
value
.
station_id
let
id
=
deviceInfo
.
value
.
id
let
id
=
deviceInfo
.
value
.
id
axios
.
delete
(
'/api/device_communication/communicate/'
+
id
+
'/'
)
axios
.
delete
(
'/api/device_communication/communicate/'
+
id
+
'/'
)
.
then
((
res
)
=>
{
.
then
(()
=>
{
emit
(
'deleteDeviceInfo'
,
{
station_id
,
id
})
emit
(
'deleteDeviceInfo'
,
{
station_id
,
id
})
console
.
log
(
res
);
ElMessage
({
message
:
'删除成功'
,
type
:
'success'
,
})
})
})
.
catch
((
err
)
=>
{
.
catch
((
err
)
=>
{
console
.
log
(
err
);
console
.
log
(
err
);
...
...
frontend/src/components/device_communication/EditDialog.vue
View file @
3fe301f2
...
@@ -278,13 +278,12 @@ const submit = () => {
...
@@ -278,13 +278,12 @@ const submit = () => {
udp_port_dst
:
form
.
value
.
udp_port_dst
,
udp_port_dst
:
form
.
value
.
udp_port_dst
,
performance_fields
:
JSON
.
stringify
(
checked_performance_fields
.
value
)
performance_fields
:
JSON
.
stringify
(
checked_performance_fields
.
value
)
}
}
console
.
log
(
data
)
if
(
props
.
type
===
"add"
)
{
if
(
props
.
type
===
"add"
)
{
// 添加通信参数方法
// 添加通信参数方法
axios
.
post
(
'/api/device_communication/communicate/'
,
data
)
axios
.
post
(
'/api/device_communication/communicate/'
,
data
)
.
then
((
res
)
=>
{
.
then
((
res
)
=>
{
console
.
log
(
res
);
console
.
log
(
res
.
data
)
ElMessage
({
ElMessage
({
message
:
'创建成功'
,
message
:
'创建成功'
,
type
:
'success'
type
:
'success'
...
...
frontend/src/views/DeviceCommunication.vue
View file @
3fe301f2
...
@@ -7,9 +7,9 @@
...
@@ -7,9 +7,9 @@
</div>
</div>
<div
class=
"demo-collapse"
>
<div
class=
"demo-collapse"
>
<el-collapse>
<el-collapse>
<el-collapse-item
class=
"pt-10"
v-for=
"(
[station_level, device_info_list]) in Object.entries(device_infos)
"
>
<el-collapse-item
class=
"pt-10"
v-for=
"(
device_info_list, station_id) in device_infos
"
>
<template
#
title
>
<template
#
title
>
<span
class=
"text-2xl font-bold"
>
{{
station_
level
}}
</span>
<span
class=
"text-2xl font-bold"
>
{{
station_
id
}}
</span>
</
template
>
</
template
>
<device-info-card
@
deleteDeviceInfo=
"deleteDeviceInfo"
v-for=
"device_info in device_info_list"
<device-info-card
@
deleteDeviceInfo=
"deleteDeviceInfo"
v-for=
"device_info in device_info_list"
:device-info=
"device_info"
/>
:device-info=
"device_info"
/>
...
@@ -91,6 +91,13 @@ type param = {
...
@@ -91,6 +91,13 @@ type param = {
const
deleteDeviceInfo
=
(
params
:
param
)
=>
{
const
deleteDeviceInfo
=
(
params
:
param
)
=>
{
for
(
let
i
=
0
;
i
<
device_infos
.
value
[
params
.
station_id
].
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
device_infos
.
value
[
params
.
station_id
].
length
;
i
++
)
{
if
((
device_infos
.
value
[
params
.
station_id
])[
i
].
id
===
params
.
id
)
{
if
((
device_infos
.
value
[
params
.
station_id
])[
i
].
id
===
params
.
id
)
{
// 如果 station_id 对应的设备列表为空,则删除 station_id
if
(
device_infos
.
value
[
params
.
station_id
].
length
===
1
)
{
delete
device_infos
.
value
[
params
.
station_id
]
return
}
// 删除
device_infos
.
value
[
params
.
station_id
].
splice
(
i
,
1
)
device_infos
.
value
[
params
.
station_id
].
splice
(
i
,
1
)
}
}
}
}
...
@@ -101,7 +108,7 @@ const addDevice = () => {
...
@@ -101,7 +108,7 @@ const addDevice = () => {
isShow
.
value
=
true
isShow
.
value
=
true
}
}
const
changeDeviceInfo
=
(
params
:
param
)
=>
{
const
changeDeviceInfo
=
(
params
:
DeviceInfo
)
=>
{
console
.
log
(
'changeDeviceInfo'
)
console
.
log
(
'changeDeviceInfo'
)
console
.
log
(
params
);
console
.
log
(
params
);
}
}
...
...
xdc.sqlite
View file @
3fe301f2
No preview for this file type
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment