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
1aef729b
Commit
1aef729b
authored
Aug 30, 2023
by
周田
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
refactor: 重构 修改数据后直接展示
parent
1bd63a2e
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
39 additions
and
20 deletions
+39
-20
DeviceInfoCard.vue
...nd/src/components/device_communication/DeviceInfoCard.vue
+26
-17
EditDialog.vue
frontend/src/components/device_communication/EditDialog.vue
+2
-1
DeviceCommunication.vue
frontend/src/views/DeviceCommunication.vue
+11
-2
xdc.sqlite
xdc.sqlite
+0
-0
No files found.
frontend/src/components/device_communication/DeviceInfoCard.vue
View file @
1aef729b
<
template
>
<el-descriptions
:title=
"
props.
deviceInfo.device_name"
:column=
1
>
<el-descriptions
:title=
"deviceInfo.device_name"
:column=
1
>
<template
#
extra
>
<el-button
type=
"danger"
size=
"small"
@
click=
"del"
>
delete
</el-button>
<el-button
type=
"primary"
size=
"small"
@
click=
"dialogFormVisible = true"
>
Edit
</el-button>
</
template
>
<el-descriptions-item
label=
"协议名"
>
{{
props.
deviceInfo.protocol_name }}
</el-descriptions-item>
<el-descriptions-item
label=
"协议名"
>
{{ deviceInfo.protocol_name }}
</el-descriptions-item>
<el-descriptions-item
label=
"通信参数"
:column=
3
>
<span>
{{
props.
deviceInfo.communicate_mode }}
</span>
<span>
{{ deviceInfo.communicate_mode }}
</span>
<span
v-if=
"isTcp"
>
<span
ml-9
>
{{
props.
deviceInfo.tcp_ip }}
</span>
<span
ml-9
>
{{
props.
deviceInfo.tcp_port }}
</span>
<span
ml-9
>
{{ deviceInfo.tcp_ip }}
</span>
<span
ml-9
>
{{ deviceInfo.tcp_port }}
</span>
</span>
<span
v-else
>
<span
ml-9
>
{{
props.
deviceInfo.udp_ip_src}}
</span>
<span
ml-9
>
{{
props.
deviceInfo.udp_port_src }}
</span>
<span
ml-9
>
{{
props.
deviceInfo.udp_ip_dst }}
</span>
<span
ml-9
>
{{
props.
deviceInfo.udp_port_dst }}
</span>
<span
ml-9
>
{{ deviceInfo.udp_ip_src}}
</span>
<span
ml-9
>
{{ deviceInfo.udp_port_src }}
</span>
<span
ml-9
>
{{ deviceInfo.udp_ip_dst }}
</span>
<span
ml-9
>
{{ deviceInfo.udp_port_dst }}
</span>
</span>
</el-descriptions-item>
<el-descriptions-item
label=
"性能参数"
>
...
...
@@ -28,8 +28,9 @@
<edit-dialog
:is-show=
"dialogFormVisible"
:device-info=
"
props.
deviceInfo"
:device-info=
"deviceInfo"
@
close=
"dialogFormVisible = false"
@
change-device-info=
"changeDeviceInfo"
type=
"edit"
/>
</template>
...
...
@@ -45,19 +46,22 @@ type propType = {
deviceInfo
:
DeviceInfo
}
const
props
=
defineProps
<
propType
>
();
const
deviceInfo
=
ref
<
DeviceInfo
>
(
props
.
deviceInfo
)
const
checked_performance_fields
=
ref
<
string
[]
>
([])
const
isTcp
=
ref
<
boolean
>
(
true
)
// performance_fields tag
const
dialogFormVisible
=
ref
(
false
)
onMounted
(()
=>
{
isTcp
.
value
=
props
.
deviceInfo
.
communicate_mode
.
toUpperCase
().
includes
(
'TCP'
.
toUpperCase
())
checked_performance_fields
.
value
=
JSON
.
parse
(
props
.
deviceInfo
.
performance_fields
!
)
props
.
deviceInfo
.
checked_performance_fields
=
checked_performance_fields
.
value
isTcp
.
value
=
deviceInfo
.
value
.
communicate_mode
.
toUpperCase
().
includes
(
'TCP'
.
toUpperCase
())
checked_performance_fields
.
value
=
JSON
.
parse
(
deviceInfo
.
value
.
performance_fields
!
)
deviceInfo
.
value
.
checked_performance_fields
=
checked_performance_fields
.
value
})
const
emit
=
defineEmits
([
'deleteDeviceInfo'
])
const
del
=
()
=>
{
let
station_id
=
props
.
deviceInfo
.
station_id
let
id
=
props
.
deviceInfo
.
id
let
station_id
=
deviceInfo
.
value
.
station_id
let
id
=
deviceInfo
.
value
.
id
axios
.
delete
(
'/api/device_communication/communicate/'
+
id
+
'/'
)
.
then
((
res
)
=>
{
emit
(
'deleteDeviceInfo'
,
{
station_id
,
id
})
...
...
@@ -68,8 +72,13 @@ const del = () => {
})
}
// performance_fields tag
const
dialogFormVisible
=
ref
(
false
)
const
changeDeviceInfo
=
(
device_info
:
DeviceInfo
)
=>
{
console
.
log
(
'changeDeviceInfo'
)
deviceInfo
.
value
=
device_info
checked_performance_fields
.
value
=
JSON
.
parse
(
device_info
.
performance_fields
!
)
}
</
script
>
...
...
frontend/src/components/device_communication/EditDialog.vue
View file @
1aef729b
...
...
@@ -90,7 +90,7 @@ type porpsType = {
type
:
string
,
}
const
props
=
defineProps
<
porpsType
>
()
const
emit
=
defineEmits
([
'close'
])
const
emit
=
defineEmits
([
'close'
,
'changeDeviceInfo'
])
const
handleClose
=
()
=>
{
emit
(
'close'
)
formRef
.
value
!
.
resetFields
()
...
...
@@ -304,6 +304,7 @@ const submit = () => {
})
}
emit
(
'close'
)
emit
(
'changeDeviceInfo'
,
data
)
}
...
...
frontend/src/views/DeviceCommunication.vue
View file @
1aef729b
...
...
@@ -22,7 +22,11 @@
</el-tab-pane>
</el-tabs>
<edit-dialog
:is-show=
"isShow"
@
close=
"isShow = false"
type=
"add"
/>
<edit-dialog
:is-show=
"isShow"
@
close=
"isShow = false"
@
change-device-info=
"changeDeviceInfo"
type=
"add"
/>
</template>
<
script
lang=
"ts"
setup
>
...
...
@@ -85,8 +89,13 @@ const deleteDeviceInfo = (params: param) => {
const
isShow
=
ref
(
false
)
const
addDevice
=
()
=>
{
console
.
log
(
'addDevice'
)
isShow
.
value
=
true
}
const
changeDeviceInfo
=
(
params
:
param
)
=>
{
console
.
log
(
'changeDeviceInfo'
)
console
.
log
(
params
);
}
</
script
>
xdc.sqlite
View file @
1aef729b
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