Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
D
DC-TOM
Project
Project
Details
Activity
Releases
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
刘照晖
DC-TOM
Commits
34845289
Commit
34845289
authored
May 23, 2025
by
liqiuyu
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'remotes/origin/AR/dcTom_myDone_202505' into dev
parents
8bfae5f3
d8c650b5
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
747 additions
and
53 deletions
+747
-53
myAgency.vue
src/views/closeManage/myAgency.vue
+284
-23
myDone.vue
src/views/closeManage/myDone.vue
+463
-30
No files found.
src/views/closeManage/myAgency.vue
View file @
34845289
...
...
@@ -2,18 +2,8 @@
<div
class=
"my-agency"
>
<el-form
:inline=
"true"
:model=
"formInline"
class=
"demo-form-inline"
>
<el-form-item
label=
"事件名称:"
>
<el-select
v-model=
"formInline.eventNameId"
placeholder=
"请选择"
style=
"width: 280px"
>
<el-option
v-for=
"(item, index) in basicConfiguration.ticketEventName"
:key=
"item.id"
:label=
"item.name"
:value=
"item.id"
>
</el-option>
</el-select>
<el-input
v-model=
"formInline.eventName"
>
</el-input>
</el-form-item>
<el-form-item
label=
"发生位置:"
>
<el-input
v-model=
"formInline.keyword"
placeholder=
"请输入"
></el-input>
...
...
@@ -39,8 +29,8 @@
<el-option
v-for=
"(item, index) in basicConfiguration.deviceList"
index=
"item.id"
:label=
"item.
name
"
:value=
"item.
id
"
:label=
"item.
desc
"
:value=
"item.
code
"
>
</el-option>
</el-select>
...
...
@@ -389,14 +379,14 @@
<div
class=
"demo-image__preview"
>
<div
class=
"image-preview"
v-for=
"(item, index) in alarmIm
ags
"
v-for=
"(item, index) in alarmIm
g
"
:key=
"index"
>
<el-image
style=
"width: 100px; height: 100px"
:lazy=
"true"
:src=
"item"
:preview-src-list=
"alarmIm
ags
"
:preview-src-list=
"alarmIm
g
"
></el-image>
</div>
</div>
...
...
@@ -614,7 +604,7 @@ import { storeToRefs } from 'pinia'
import
{
useUsersStore
}
from
"@/pinia/user.js"
;
const
{
functionAuthority
}
=
storeToRefs
(
useUsersStore
());
const
formInline
=
ref
({
eventName
Id
:
''
,
eventName
:
''
,
keyword
:
''
,
warnType
:
''
,
branchFactoryIds
:
''
,
...
...
@@ -779,7 +769,7 @@ const onSearch = ()=> {
const
onReset
=
()
=>
{
currentPage
.
value
=
1
;
pageSize
.
value
=
20
;
formInline
.
value
.
eventName
Id
=
''
;
formInline
.
value
.
eventName
=
''
;
formInline
.
value
.
keyword
=
''
;
formInline
.
value
.
branchFactoryIds
=
''
;
formInline
.
value
.
deviceType
=
''
;
...
...
@@ -974,13 +964,19 @@ const getWarnAndTicketConfigMap = ()=> {
}
getDataFun
(
url
,
params
).
then
(
res
=>
{
if
(
res
&&
res
.
code
===
1
)
{
const
{
ticketEventName
,
deviceType
}
=
res
.
data
;
const
{
ticketEventName
}
=
res
.
data
;
basicConfiguration
.
ticketEventName
=
basicConfiguration
.
ticketEventName
.
concat
(
ticketEventName
);
basicConfiguration
.
deviceList
=
deviceType
;
}
});
};
const
getDeviceType
=
()
=>
{
const
url
=
'/alarm/getDeviceType'
;
getData
(
url
).
then
(
res
=>
{
basicConfiguration
.
deviceList
=
res
.
data
;
});
}
let
realBtn
=
''
;
const
searchData
=
()
=>
{
...
...
@@ -1004,7 +1000,7 @@ const searchData =()=> {
const
getTableData
=
()
=>
{
let
keyWord
=
formInline
.
value
.
keyword
?.
replace
(
/#/g
,
'%23'
);
const
params
=
{
eventName
Id
:
formInline
.
value
.
eventNameId
,
eventName
:
formInline
.
value
.
eventName
,
warnType
:
formInline
.
value
.
warnType
,
createStartTime
:
formInline
.
value
.
createTime
[
0
],
createEndTime
:
formInline
.
value
.
createTime
[
1
],
...
...
@@ -1014,6 +1010,7 @@ const getTableData = ()=> {
pageSize
:
pageSize
.
value
,
handleState
:
1
,
belongTo
:
1
,
isDctom
:
1
,
deviceType
:
formInline
.
value
.
deviceType
}
tableData
.
value
=
[];
...
...
@@ -1071,7 +1068,7 @@ const srcList = ref([]);
const
dialogReason
=
ref
(
''
);
const
dialogMeasure
=
ref
(
''
);
const
imgUrlList
=
ref
([]);
const
alarmIm
ags
=
ref
([]);
const
alarmIm
g
=
ref
([]);
const
disposeWorkSheetDetail
=
(
obj
)
=>
{
const
{
reason
,
...
...
@@ -1085,6 +1082,8 @@ const disposeWorkSheetDetail = (obj)=> {
if
(
forwards
.
length
>
0
)
{
let
receiveUserItem
=
forwards
.
slice
(
-
1
)[
0
];
}
dialogMeasure
.
value
=
''
;
dialogMeasure
.
value
=
''
;
srcList
.
value
=
[];
imgUrlList
.
value
=
[];
...
...
@@ -1096,7 +1095,7 @@ const disposeWorkSheetDetail = (obj)=> {
}
if
(
alarmImags
&&
alarmImags
.
length
)
{
for
(
let
item
of
alarmImags
)
{
alarmIm
ags
.
push
(
item
.
imageUrl
);
alarmIm
g
.
value
.
push
(
item
.
imageUrl
);
}
}
if
(
imgUrl
)
{
...
...
@@ -1107,6 +1106,7 @@ const disposeWorkSheetDetail = (obj)=> {
onMounted
(()
=>
{
getBranchTypeList
();
getWarnAndTicketConfigMap
();
getDeviceType
();
searchData
();
});
...
...
@@ -1264,6 +1264,267 @@ const handlePaginationChange = (pagination) => {
height
:
auto
;
}
}
.improve-situation
{
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
padding
:
0
50px
;
.improve-situation-item
{
width
:
310px
;
height
:
71px
;
border-radius
:
2px
;
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
padding
:
0
28px
;
font-size
:
24px
;
font-weight
:
500
;
color
:
#ffffff
;
line-height
:
33px
;
&
:first-child
{
background
:
linear-gradient
(
225deg
,
rgba
(
255
,
133
,
128
,
0
.65
)
0%
,
rgba
(
255
,
58
,
71
,
0
.61
)
100%
,
#0049fa
100%
);
}
&
:last-child
{
background
:
linear-gradient
(
225deg
,
rgba
(
128
,
255
,
178
,
0
.65
)
0%
,
rgba
(
58
,
120
,
255
,
0
.61
)
100%
,
#0049fa
100%
);
}
.road-cleanliness-index
{
display
:
flex
;
flex-direction
:
column
;
align-content
:
center
;
justify-content
:
center
;
.name
{
font-size
:
14px
;
}
}
.star
{
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
span
{
margin-right
:
5px
;
}
}
.value
{
padding-right
:
30px
;
span
{
font-size
:
14px
;
font-weight
:
400
;
}
}
}
}
.tips-content
{
display
:
flex
;
align-items
:
center
;
flex-wrap
:
wrap
;
padding
:
0px
50px
;
.content-item
{
width
:
50%
;
font-size
:
14px
;
font-weight
:
400
;
color
:
#3b3b3b
;
line-height
:
19px
;
min-height
:
34px
;
display
:
flex
;
.value
{
color
:
#ff7373
;
font-size
:
15px
;
}
}
}
.leged-bg
{
position
:
fixed
;
left
:
0
;
right
:
0
;
width
:
100%
;
height
:
600px
;
background-color
:
rgba
(
0
,
0
,
0
,
0
.3
);
.leged-wrap
{
width
:
300px
;
height
:
300px
;
background-color
:
#fff
;
}
}
.processing-records
{
display
:
flex
;
align-items
:
center
;
// justify-content: space-between;
padding
:
0
40px
;
position
:
relative
;
&
:
:
before
{
content
:
""
;
// width: calc(100% - 220px);
height
:
6px
;
background
:
#076d4e
;
position
:
absolute
;
left
:
50%
;
top
:
48px
;
transform
:
translate
(
-50%
,
-50%
);
box-sizing
:
border-box
;
}
.processing-records-item
{
display
:
flex
;
flex-direction
:
column
;
justify-content
:
center
;
align-items
:
center
;
.handler
{
min-width
:
80px
;
// max-width: 110px;
padding
:
0
5px
;
height
:
26px
;
text-align
:
center
;
background
:
#bbeedf
;
box-shadow
:
0px
10px
5px
-7px
rgba
(
33
,
179
,
134
,
0
.5
);
border
:
1px
solid
#0b5a68
;
border-radius
:
2px
;
line-height
:
25px
;
font-size
:
14px
;
font-weight
:
400
;
color
:
#0b5a68
;
position
:
relative
;
margin-bottom
:
10px
;
text-overflow
:
ellipsis
;
// overflow: hidden;
white-space
:
nowrap
;
&
:
:
before
{
content
:
""
;
width
:
8px
;
height
:
8px
;
background
:
#bbeedf
;
border-left
:
1px
solid
#0b5a68
;
border-bottom
:
1px
solid
#0b5a68
;
// transform: rotate3d(90deg);
position
:
absolute
;
left
:
50%
;
transform
:
rotate
(
-45deg
)
translateX
(
-50%
);
bottom
:
-2px
;
}
}
.circle
{
width
:
22px
;
height
:
22px
;
background
:
#ffffff
;
box-shadow
:
0px
2px
4px
0px
rgba
(
33
,
176
,
179
,
0
.43
);
border
:
1px
solid
#076d4e
;
position
:
relative
;
border-radius
:
50%
;
&
:
:
before
{
content
:
""
;
width
:
8px
;
height
:
8px
;
background
:
#0b5a68
;
border-radius
:
4px
;
position
:
absolute
;
left
:
50%
;
top
:
50%
;
transform
:
translate
(
-50%
,
-50%
);
}
}
.header
{
width
:
50%
;
height
:
6px
;
background
:
#076d4e
;
position
:
absolute
;
box-sizing
:
border-box
;
}
.footer
{
width
:
50%
;
height
:
6px
;
left
:
50%
;
background
:
#076d4e
;
position
:
absolute
;
box-sizing
:
border-box
;
}
.steps-line
{
top
:
45px
;
width
:
100%
;
position
:
relative
;
}
.step-name
{
font-size
:
12px
;
font-weight
:
400
;
color
:
#0b5a68
;
line-height
:
12px
;
margin-top
:
8px
;
font-weight
:
500
;
}
.partment
{
font-size
:
14px
;
font-weight
:
400
;
line-height
:
12px
;
margin-top
:
8px
;
}
.handler-time
{
text-align
:
center
;
font-size
:
12px
;
font-weight
:
400
;
color
:
#606060
;
line-height
:
14px
;
margin-top
:
5px
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
padding-left
:
10px
;
padding-right
:
10px
;
width
:
180px
;
}
.led-btn
{
color
:
#fff
;
}
}
.mb-20
{
margin-bottom
:
20px
;
}
}
.label-title-content
{
width
:
90%
;
padding-left
:
30px
;
margin-bottom
:
10px
;
}
.deal-line-wrap
{
overflow
:
auto
;
width
:
100%
;
}
.qusetion-records
{
padding
:
5px
20px
;
.qusetion-records-item
{
text-indent
:
10px
;
}
}
.demo-image__preview
{
margin
:
0
50px
;
display
:
flex
;
flex-wrap
:
wrap
;
.image-preview
{
margin-right
:
10px
;
margin-bottom
:
10px
;
}
}
:deep
(
.el-row
)
{
margin-bottom
:
28px
;
}
}
.input-style
{
padding-left
:
50px
;
}
.input-style-text
{
padding
:
0
50px
;
font-size
:
14px
;
font-weight
:
400
;
color
:
#3b3b3b
;
line-height
:
24px
;
}
.default-btn
{
...
...
src/views/closeManage/myDone.vue
View file @
34845289
...
...
@@ -2,18 +2,8 @@
<div
class=
"my-agency"
>
<el-form
:inline=
"true"
:model=
"formInline"
class=
"demo-form-inline"
>
<el-form-item
label=
"事件名称:"
>
<el-select
v-model=
"formInline.eventNameId"
placeholder=
"请选择"
style=
"width: 280px"
>
<el-option
v-for=
"(item, index) in basicConfiguration.ticketEventName"
:key=
"item.id"
:label=
"item.name"
:value=
"item.id"
>
</el-option>
</el-select>
<el-input
v-model=
"formInline.eventName"
>
</el-input>
</el-form-item>
<el-form-item
label=
"发生位置:"
>
<el-input
v-model=
"formInline.keyword"
placeholder=
"请输入"
></el-input>
...
...
@@ -39,8 +29,8 @@
<el-option
v-for=
"(item, index) in basicConfiguration.deviceList"
index=
"item.id"
:label=
"item.
name
"
:value=
"item.
id
"
:label=
"item.
desc
"
:value=
"item.
code
"
>
</el-option>
</el-select>
...
...
@@ -371,14 +361,14 @@
<div
class=
"demo-image__preview"
>
<div
class=
"image-preview"
v-for=
"(item, index) in alarmIm
ags
"
v-for=
"(item, index) in alarmIm
g
"
:key=
"index"
>
<el-image
style=
"width: 100px; height: 100px"
:lazy=
"true"
:src=
"item"
:preview-src-list=
"alarmIm
ags
"
:preview-src-list=
"alarmIm
g
"
></el-image>
</div>
</div>
...
...
@@ -685,6 +675,7 @@
<common-dialog
:show-dialog=
"rejectDialog.show"
:title=
"rejectDialog.title"
:width=
"rejectDialog.width"
@
handleBtn=
"saveReject"
@
close:showDialog=
"rejectDialog.show = false"
>
...
...
@@ -700,7 +691,7 @@
</el-select>
</el-form-item>
<el-row>
<el-col
:span=
"2
1
"
>
<el-col
:span=
"2
4
"
>
<el-input
type=
"textarea"
v-model=
"rejectReason"
:autosize=
"{ minRows: 2, maxRows: 12 }"
placeholder=
"请输入内容"
>
</el-input>
</el-col>
...
...
@@ -714,12 +705,12 @@
import
{
ref
,
reactive
,
onMounted
,
onBeforeUnmount
,
computed
}
from
'vue'
import
CommonTable
from
"@/components/commonTable/index.vue"
;
import
commonDialog
from
"./components/dialog.vue"
;
import
{
getDataFun
,
postDataJSON
}
from
'@/request/method.js'
;
import
{
getData
,
getData
Fun
,
postDataJSON
}
from
'@/request/method.js'
;
import
moment
from
'moment'
;
import
{
getToken
}
from
'@/utils/auth.js'
;
import
{
ElMessage
}
from
'element-plus'
;
const
formInline
=
ref
({
eventName
Id
:
''
,
eventName
:
''
,
keyword
:
''
,
warnType
:
''
,
branchFactoryIds
:
''
,
...
...
@@ -737,7 +728,7 @@ const formModel = ref({
const
viewDialog
=
ref
({
title
:
'闭环控制分派'
,
show
:
false
,
width
:
'
50
%'
,
width
:
'
45
%'
,
});
const
viewData
=
{
...
...
@@ -780,7 +771,7 @@ const warnValueFilter = computed(()=> {
});
const
imgUrlList
=
ref
([]);
const
alarmIm
ags
=
ref
([]);
const
alarmIm
g
=
ref
([]);
const
srcList
=
ref
([]);
const
workTicketNo
=
ref
(
''
);
...
...
@@ -791,6 +782,7 @@ const rejectReason = ref('');
const
rejectDialog
=
ref
({
title
:
'驳回申请'
,
show
:
false
,
width
:
'35%'
,
btnGroup
:
[
{
attrKey
:
'save'
,
...
...
@@ -830,7 +822,7 @@ const onSearch = ()=> {
const
onReset
=
()
=>
{
currentPage
.
value
=
1
;
pageSize
.
value
=
20
;
formInline
.
value
.
eventName
Id
=
''
;
formInline
.
value
.
eventName
=
''
;
formInline
.
value
.
keyword
=
''
;
formInline
.
value
.
branchFactoryIds
=
''
;
formInline
.
value
.
deviceType
=
''
;
...
...
@@ -840,11 +832,11 @@ const onReset =()=> {
]
searchData
();
}
const
personTag
=
ref
([]);
const
handleView
=
async
(
data
)
=>
{
viewDialog
.
value
.
title
=
data
.
eventName
;
let
res
=
await
getDetail
(
data
.
workTicketNo
);
viewDialog
.
value
.
show
=
true
;
/*let res = await getDetail(data.workTicketNo);
personTag
.
value
=
[];
if
(
res
.
handleUsers
&&
res
.
handleUsers
.
length
>
0
)
{
res
.
handleUsers
.
forEach
(
item
=>
{
...
...
@@ -856,10 +848,11 @@ const handleView = async (data) => {
});
});
}
disposeWorkSheetDetail(res);
*/
disposeWorkSheetDetail
(
res
);
}
const
dialogReason
=
ref
(
''
);
const
dialogMeasure
=
ref
(
''
);
const
disposeWorkSheetDetail
=
(
obj
)
=>
{
const
{
reason
,
...
...
@@ -873,6 +866,8 @@ const disposeWorkSheetDetail = (obj)=> {
if
(
forwards
.
length
>
0
)
{
let
receiveUserItem
=
forwards
.
slice
(
-
1
)[
0
];
}
dialogMeasure
.
value
=
''
;
dialogMeasure
.
value
=
''
;
srcList
.
value
=
[];
imgUrlList
.
value
=
[];
...
...
@@ -884,7 +879,7 @@ const disposeWorkSheetDetail = (obj)=> {
}
if
(
alarmImags
&&
alarmImags
.
length
)
{
for
(
let
item
of
alarmImags
)
{
alarmIm
ags
.
push
(
item
.
imageUrl
);
alarmIm
g
.
value
.
push
(
item
.
imageUrl
);
}
}
if
(
imgUrl
)
{
...
...
@@ -1019,9 +1014,8 @@ const getWarnAndTicketConfigMap = ()=> {
}
getDataFun
(
url
,
params
).
then
(
res
=>
{
if
(
res
&&
res
.
code
===
1
)
{
const
{
ticketEventName
,
deviceType
}
=
res
.
data
;
const
{
ticketEventName
}
=
res
.
data
;
basicConfiguration
.
ticketEventName
=
basicConfiguration
.
ticketEventName
.
concat
(
ticketEventName
);
basicConfiguration
.
deviceList
=
deviceType
;
}
});
};
...
...
@@ -1049,7 +1043,7 @@ const searchData = ()=>{
const
getTableData
=
()
=>
{
let
keyWord
=
formInline
.
value
.
keyword
?.
replace
(
/#/g
,
'%23'
);
const
params
=
{
eventName
Id
:
formInline
.
value
.
eventNameId
,
eventName
:
formInline
.
value
.
eventName
,
warnType
:
formInline
.
value
.
warnType
,
createStartTime
:
formInline
.
value
.
createTime
[
0
],
createEndTime
:
formInline
.
value
.
createTime
[
1
],
...
...
@@ -1059,6 +1053,7 @@ const getTableData = ()=> {
pageSize
:
pageSize
.
value
,
handleState
:
2
,
belongTo
:
1
,
isDctom
:
1
,
deviceType
:
formInline
.
value
.
deviceType
}
tableData
.
value
=
[];
...
...
@@ -1111,9 +1106,17 @@ const disposeType = (list)=> {
}
}
const
getDeviceType
=
()
=>
{
const
url
=
'/alarm/getDeviceType'
;
getData
(
url
).
then
(
res
=>
{
basicConfiguration
.
deviceList
=
res
.
data
;
});
}
onMounted
(()
=>
{
getBranchTypeList
();
getWarnAndTicketConfigMap
();
getDeviceType
();
searchData
();
});
...
...
@@ -1189,10 +1192,440 @@ const handlePaginationChange = (pagination) => {
top
:
6px
;
}
}
.improve-situation
{
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
padding
:
0
50px
;
.improve-situation-item
{
width
:
310px
;
height
:
71px
;
border-radius
:
2px
;
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
padding
:
0
28px
;
font-size
:
24px
;
font-weight
:
500
;
color
:
#ffffff
;
line-height
:
33px
;
&
:first-child
{
background
:
linear-gradient
(
225deg
,
rgba
(
255
,
133
,
128
,
0
.65
)
0%
,
rgba
(
255
,
58
,
71
,
0
.61
)
100%
,
#0049fa
100%
);
}
&
:last-child
{
background
:
linear-gradient
(
225deg
,
rgba
(
128
,
255
,
178
,
0
.65
)
0%
,
rgba
(
58
,
120
,
255
,
0
.61
)
100%
,
#0049fa
100%
);
}
.road-cleanliness-index
{
display
:
flex
;
flex-direction
:
column
;
align-content
:
center
;
justify-content
:
center
;
.name
{
font-size
:
14px
;
}
}
.star
{
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
span
{
margin-right
:
5px
;
}
}
.value
{
padding-right
:
30px
;
span
{
font-size
:
14px
;
font-weight
:
400
;
}
}
}
}
.tips-content
{
display
:
flex
;
align-items
:
center
;
flex-wrap
:
wrap
;
padding
:
0px
50px
;
.content-item
{
width
:
50%
;
font-size
:
14px
;
font-weight
:
400
;
color
:
#3b3b3b
;
line-height
:
19px
;
min-height
:
34px
;
display
:
flex
;
.value
{
color
:
#ff7373
;
font-size
:
15px
;
}
}
}
.leged-bg
{
position
:
fixed
;
left
:
0
;
right
:
0
;
width
:
100%
;
height
:
600px
;
background-color
:
rgba
(
0
,
0
,
0
,
0
.3
);
.leged-wrap
{
width
:
300px
;
height
:
300px
;
background-color
:
#fff
;
}
}
.view-btn
{
margin-right
:
8px
;
cursor
:
pointer
;
}
.form-box
{
height
:
60vh
;
overflow-y
:
auto
;
overflow-x
:
hidden
;
.label-title
{
position
:
relative
;
padding-left
:
14px
;
margin-bottom
:
20px
;
font-weight
:
700
;
font-size
:
19px
;
overflow
:
hidden
;
&
:
:
before
{
content
:
""
;
width
:
4px
;
height
:
4px
;
border-radius
:
50%
;
background
:
#1890ff
;
position
:
absolute
;
left
:
0px
;
top
:
50%
;
transform
:
translateY
(
-50%
);
}
&
:
:
after
{
content
:
""
;
width
:
100%
;
height
:
0px
;
position
:
absolute
;
border-bottom
:
dashed
1px
rgb
(
209
,
209
,
209
);
left
:
130px
;
top
:
50%
;
transform
:
translateY
(
-50%
);
}
}
.alarm-content
{
display
:
flex
;
align-items
:
center
;
flex-wrap
:
wrap
;
padding
:
0px
35px
;
.content-item
{
width
:
50%
;
font-size
:
14px
;
font-weight
:
500
;
color
:
#3b3b3b
;
line-height
:
19px
;
min-height
:
34px
;
display
:
flex
;
.name
{
text-align
:
right
;
width
:
140px
;
margin-right
:
10px
;
}
.change-style
{
width
:
auto
;
}
.value
{
color
:
#000000
;
flex
:
1
;
}
.alarm-value
{
color
:
#ff7373
;
}
.cur-alarm-value
{
color
:
#086635
;
}
.work-status
{
color
:
#e1971d
;
}
}
.new-content-item-style
{
width
:
100%
;
height
:
auto
;
}
}
.improve-situation
{
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
padding
:
0
50px
;
.improve-situation-item
{
width
:
310px
;
height
:
71px
;
border-radius
:
2px
;
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
padding
:
0
28px
;
font-size
:
24px
;
font-weight
:
500
;
color
:
#ffffff
;
line-height
:
33px
;
&
:first-child
{
background
:
linear-gradient
(
225deg
,
rgba
(
255
,
133
,
128
,
0
.65
)
0%
,
rgba
(
255
,
58
,
71
,
0
.61
)
100%
,
#0049fa
100%
);
}
&
:last-child
{
background
:
linear-gradient
(
225deg
,
rgba
(
128
,
255
,
178
,
0
.65
)
0%
,
rgba
(
58
,
120
,
255
,
0
.61
)
100%
,
#0049fa
100%
);
}
.road-cleanliness-index
{
display
:
flex
;
flex-direction
:
column
;
align-content
:
center
;
justify-content
:
center
;
.name
{
font-size
:
14px
;
}
}
.star
{
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
span
{
margin-right
:
5px
;
}
}
.value
{
padding-right
:
30px
;
span
{
font-size
:
14px
;
font-weight
:
400
;
}
}
}
}
.tips-content
{
display
:
flex
;
align-items
:
center
;
flex-wrap
:
wrap
;
padding
:
0px
50px
;
.content-item
{
width
:
50%
;
font-size
:
14px
;
font-weight
:
400
;
color
:
#3b3b3b
;
line-height
:
19px
;
min-height
:
34px
;
display
:
flex
;
.value
{
color
:
#ff7373
;
font-size
:
15px
;
}
}
}
.leged-bg
{
position
:
fixed
;
left
:
0
;
right
:
0
;
width
:
100%
;
height
:
600px
;
background-color
:
rgba
(
0
,
0
,
0
,
0
.3
);
.leged-wrap
{
width
:
300px
;
height
:
300px
;
background-color
:
#fff
;
}
}
.processing-records
{
display
:
flex
;
align-items
:
center
;
// justify-content: space-between;
padding
:
0
40px
;
position
:
relative
;
&
:
:
before
{
content
:
""
;
// width: calc(100% - 220px);
height
:
6px
;
background
:
#076d4e
;
position
:
absolute
;
left
:
50%
;
top
:
48px
;
transform
:
translate
(
-50%
,
-50%
);
box-sizing
:
border-box
;
}
.processing-records-item
{
display
:
flex
;
flex-direction
:
column
;
justify-content
:
center
;
align-items
:
center
;
.handler
{
min-width
:
80px
;
// max-width: 110px;
padding
:
0
5px
;
height
:
26px
;
text-align
:
center
;
background
:
#bbeedf
;
box-shadow
:
0px
10px
5px
-7px
rgba
(
33
,
179
,
134
,
0
.5
);
border
:
1px
solid
#0b5a68
;
border-radius
:
2px
;
line-height
:
25px
;
font-size
:
14px
;
font-weight
:
400
;
color
:
#0b5a68
;
position
:
relative
;
margin-bottom
:
10px
;
text-overflow
:
ellipsis
;
// overflow: hidden;
white-space
:
nowrap
;
&
:
:
before
{
content
:
""
;
width
:
8px
;
height
:
8px
;
background
:
#bbeedf
;
border-left
:
1px
solid
#0b5a68
;
border-bottom
:
1px
solid
#0b5a68
;
// transform: rotate3d(90deg);
position
:
absolute
;
left
:
50%
;
transform
:
rotate
(
-45deg
)
translateX
(
-50%
);
bottom
:
-2px
;
}
}
.circle
{
width
:
22px
;
height
:
22px
;
background
:
#ffffff
;
box-shadow
:
0px
2px
4px
0px
rgba
(
33
,
176
,
179
,
0
.43
);
border
:
1px
solid
#076d4e
;
position
:
relative
;
border-radius
:
50%
;
&
:
:
before
{
content
:
""
;
width
:
8px
;
height
:
8px
;
background
:
#0b5a68
;
border-radius
:
4px
;
position
:
absolute
;
left
:
50%
;
top
:
50%
;
transform
:
translate
(
-50%
,
-50%
);
}
}
.header
{
width
:
50%
;
height
:
6px
;
background
:
#076d4e
;
position
:
absolute
;
box-sizing
:
border-box
;
}
.footer
{
width
:
50%
;
height
:
6px
;
left
:
50%
;
background
:
#076d4e
;
position
:
absolute
;
box-sizing
:
border-box
;
}
.steps-line
{
top
:
45px
;
width
:
100%
;
position
:
relative
;
}
.step-name
{
font-size
:
12px
;
font-weight
:
400
;
color
:
#0b5a68
;
line-height
:
12px
;
margin-top
:
8px
;
font-weight
:
500
;
}
.partment
{
font-size
:
14px
;
font-weight
:
400
;
line-height
:
12px
;
margin-top
:
8px
;
}
.handler-time
{
text-align
:
center
;
font-size
:
12px
;
font-weight
:
400
;
color
:
#606060
;
line-height
:
14px
;
margin-top
:
5px
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
padding-left
:
10px
;
padding-right
:
10px
;
width
:
180px
;
}
.led-btn
{
color
:
#fff
;
}
}
.mb-20
{
margin-bottom
:
20px
;
}
}
.label-title-content
{
width
:
90%
;
padding-left
:
30px
;
margin-bottom
:
10px
;
}
.deal-line-wrap
{
overflow
:
auto
;
width
:
100%
;
}
.qusetion-records
{
padding
:
5px
20px
;
.qusetion-records-item
{
text-indent
:
10px
;
}
}
.demo-image__preview
{
margin
:
0
50px
;
display
:
flex
;
flex-wrap
:
wrap
;
.image-preview
{
margin-right
:
10px
;
margin-bottom
:
10px
;
}
}
:deep
(
.el-row
)
{
margin-bottom
:
28px
;
}
}
:deep
(
.el-tag
)
{
margin-right
:
10px
;
}
.input-style
{
padding-left
:
50px
;
}
.input-style-text
{
padding
:
0
50px
;
font-size
:
14px
;
font-weight
:
400
;
color
:
#3b3b3b
;
line-height
:
24px
;
}
.default-btn
{
width
:
85px
;
...
...
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