Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gassafety-progress
Project
Project
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
耿迪迪
gassafety-progress
Commits
9a96849e
Commit
9a96849e
authored
Mar 01, 2022
by
zhangjianqian
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
大屏 基本信息以及任务完成数据对接
parent
0715ba09
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
139 additions
and
134 deletions
+139
-134
TWorkOrderController.java
...web/controller/operationMonitor/TWorkOrderController.java
+7
-0
TWorkOrderMapper.java
.../main/java/com/zehong/system/mapper/TWorkOrderMapper.java
+10
-0
ITWorkOrderService.java
...in/java/com/zehong/system/service/ITWorkOrderService.java
+4
-0
TWorkOrderServiceImpl.java
...com/zehong/system/service/impl/TWorkOrderServiceImpl.java
+12
-0
TWorkOrderMapper.xml
...tem/src/main/resources/mapper/system/TWorkOrderMapper.xml
+23
-0
order.js
gassafetyprogress-web/src/api/operationMonitor/order.js
+9
-1
leftBar.vue
gassafetyprogress-web/src/components/bigWindow/leftBar.vue
+71
-132
index.vue
gassafetyprogress-web/src/views/bigWindow/index.vue
+3
-1
No files found.
gassafetyprogress-admin/src/main/java/com/zehong/web/controller/operationMonitor/TWorkOrderController.java
View file @
9a96849e
...
...
@@ -133,4 +133,11 @@ public class TWorkOrderController extends BaseController
{
return
toAjax
(
tWorkOrderService
.
deleteTWorkOrderByIds
(
workIds
));
}
@GetMapping
(
"/selectWorkOrderNum"
)
public
AjaxResult
selectWorkOrderNum
(
String
enterpriseId
)
{
return
AjaxResult
.
success
(
tWorkOrderService
.
selectWorkOrderNum
(
enterpriseId
));
}
}
gassafetyprogress-system/src/main/java/com/zehong/system/mapper/TWorkOrderMapper.java
View file @
9a96849e
package
com
.
zehong
.
system
.
mapper
;
import
java.util.List
;
import
java.util.Map
;
import
com.zehong.system.domain.TWorkOrder
;
import
com.zehong.system.domain.vo.HomepageVo
;
import
org.apache.ibatis.annotations.Param
;
/**
* 燃气任务Mapper接口
...
...
@@ -66,4 +69,11 @@ public interface TWorkOrderMapper
* @return 结果
*/
public
int
deleteTWorkOrderByIds
(
Long
[]
workIds
);
/**
* 查询任务完成率
* @param enterpriseId
* @return
*/
public
Map
<
String
,
Object
>
selectWorkOrderNum
(
@Param
(
"enterpriseIds"
)
String
[]
enterpriseIds
);
}
gassafetyprogress-system/src/main/java/com/zehong/system/service/ITWorkOrderService.java
View file @
9a96849e
package
com
.
zehong
.
system
.
service
;
import
java.util.List
;
import
java.util.Map
;
import
com.zehong.system.domain.TWorkOrder
;
import
com.zehong.system.domain.vo.HomepageVo
;
...
...
@@ -66,4 +68,6 @@ public interface ITWorkOrderService
* @return 结果
*/
public
int
deleteTWorkOrderById
(
Long
workId
);
public
Map
<
String
,
Object
>
selectWorkOrderNum
(
String
enterpriseId
);
}
gassafetyprogress-system/src/main/java/com/zehong/system/service/impl/TWorkOrderServiceImpl.java
View file @
9a96849e
...
...
@@ -13,6 +13,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
import
java.util.Map
;
/**
* 燃气任务Service业务层处理
...
...
@@ -132,4 +133,15 @@ public class TWorkOrderServiceImpl implements ITWorkOrderService
{
return
tWorkOrderMapper
.
deleteTWorkOrderById
(
workId
);
}
/**
*
* @param enterpriseId
* @return
*/
@Override
public
Map
<
String
,
Object
>
selectWorkOrderNum
(
String
enterpriseId
){
return
tWorkOrderMapper
.
selectWorkOrderNum
(
enterpriseId
.
split
(
","
));
}
}
gassafetyprogress-system/src/main/resources/mapper/system/TWorkOrderMapper.xml
View file @
9a96849e
...
...
@@ -208,4 +208,27 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{workId}
</foreach>
</delete>
<select
id=
"selectWorkOrderNum"
resultType=
"java.util.HashMap"
>
SELECT IFNULL(SUM(IF(work_status=3 AND work_type=1,1,0))/SUM(IF(work_type=1,1,0)),0) AS typeOne,
IFNULL(SUM(IF(work_status=3 AND work_type=2,1,0))/SUM(IF(work_type=2,1,0)),0) AS typeTwo,
IFNULL(SUM(IF(work_status=3 AND work_type=3,1,0))/SUM(IF(work_type=3,1,0)),0) AS typeThree,
IFNULL(SUM(IF(work_status=3 AND work_type=4,1,0))/SUM(IF(work_type=4,1,0)),0) AS typeFor,
(SELECT COUNT(employed_people_id) FROM t_employed_people_info WHERE is_del = 0
AND beyond_enterprise_id IN
<foreach
item=
"enterpriseId"
collection=
"enterpriseIds"
open=
"("
separator=
","
close=
")"
>
#{enterpriseId}
</foreach>
) AS peopleNum,
(SELECT CAST(SUM(pipe_length) AS DECIMAL(20,0)) FROM t_pipe_info WHERE is_del = 0
AND beyond_enterprise_id IN
<foreach
item=
"enterpriseId"
collection=
"enterpriseIds"
open=
"("
separator=
","
close=
")"
>
#{enterpriseId}
</foreach>
)AS allPipeLength
FROM t_work_order WHERE is_del = 0
AND work_assign_enterprose_id IN
<foreach
item=
"enterpriseId"
collection=
"enterpriseIds"
open=
"("
separator=
","
close=
")"
>
#{enterpriseId}
</foreach>
</select>
</mapper>
\ No newline at end of file
gassafetyprogress-web/src/api/operationMonitor/order.js
View file @
9a96849e
...
...
@@ -50,4 +50,12 @@ export function exportOrder(query) {
method
:
'get'
,
params
:
query
})
}
\ No newline at end of file
}
export
function
selectWorkOrderNum
(
query
)
{
return
request
({
url
:
'/system/order/selectWorkOrderNum'
,
method
:
'get'
,
params
:
query
})
}
gassafetyprogress-web/src/components/bigWindow/leftBar.vue
View file @
9a96849e
<
template
>
<div>
<div>
<div>
<div
class=
"item1"
>
<span
class=
"dot"
>
<span
class=
"dot-inner"
></span>
</span>
<span
style=
"letter-spacing :3px;color:#cddbe4"
>
基本信息
</span>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #2c888899;float: right;margin-top: 10px;transform: skewX(-25deg)"
></div>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #24b1b1b3;float: right;margin-top: 10px;margin-right: 10px;transform: skewX(-25deg)"
></div>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #11e9e9b3;float: right;margin-top: 10px;margin-right: 10px;transform: skewX(-25deg)"
></div>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #2c888899;float: right;margin-top: 10px;transform: skewX(-25deg)"
></div>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #24b1b1b3;float: right;margin-top: 10px;margin-right: 10px;transform: skewX(-25deg)"
></div>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #11e9e9b3;float: right;margin-top: 10px;margin-right: 10px;transform: skewX(-25deg)"
></div>
</div>
</div>
<div
class=
"left-top"
style=
"margin-top: 40px;width: 430px;margin-left: 10px;display: flex;justify-content: space-around;"
>
<div
style=
"width: 40%;text-align: center;color: #339CC9;"
>
<div
class=
"div-p"
>
从业人员数
</div>
<span
style=
"font-family: 'arialbd';font-size: 35px;background-image:-webkit-linear-gradient(bottom,#f0c41b,#e4dbb7);-webkit-background-clip:text;-webkit-text-fill-color:transparent; "
>
{{
datanow
.
congy
eNum
}}
</span>
<span
style=
"font-family: 'arialbd';font-size: 35px;background-image:-webkit-linear-gradient(bottom,#f0c41b,#e4dbb7);-webkit-background-clip:text;-webkit-text-fill-color:transparent; "
>
{{
allNum
.
peopl
eNum
}}
</span>
</div>
<div
style=
"width: 40%;text-align: center;color: #339CC9;"
>
<div
class=
"div-p"
>
管道长度(m)
</div>
<span
style=
"font-family: 'arialbd';font-size: 35px;background-image:-webkit-linear-gradient(bottom,#f86742,#f0c41b);-webkit-background-clip:text;-webkit-text-fill-color:transparent; "
>
{{
datanow
.
guandaoNum
}}
</span>
<span
style=
"font-family: 'arialbd';font-size: 35px;background-image:-webkit-linear-gradient(bottom,#f86742,#f0c41b);-webkit-background-clip:text;-webkit-text-fill-color:transparent; "
>
{{
allNum
.
allPipeLength
}}
</span>
</div>
</div>
<div>
<div
class=
"item1"
style=
"margin-top: 30px;"
>
<span
class=
"dot"
>
<span
class=
"dot-inner"
></span>
</span>
<span
style=
"letter-spacing :3px;color:#cddbe4"
>
安全监管
</span>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #2c888899;float: right;margin-top: 10px;transform: skewX(-25deg)"
></div>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #24b1b1b3;float: right;margin-top: 10px;margin-right: 10px;transform: skewX(-25deg)"
></div>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #11e9e9b3;float: right;margin-top: 10px;margin-right: 10px;transform: skewX(-25deg)"
></div>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #2c888899;float: right;margin-top: 10px;transform: skewX(-25deg)"
></div>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #24b1b1b3;float: right;margin-top: 10px;margin-right: 10px;transform: skewX(-25deg)"
></div>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #11e9e9b3;float: right;margin-top: 10px;margin-right: 10px;transform: skewX(-25deg)"
></div>
</div>
</div>
<div
id=
"main1"
style=
"width: 100%;height: 280px;"
></div>
...
...
@@ -41,39 +41,34 @@
<span
class=
"dot-inner"
></span>
</span>
<span
style=
"letter-spacing :3px;color:#cddbe4"
>
任务完成率
</span>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #2c888899;float: right;margin-top: 10px;transform: skewX(-25deg)"
></div>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #24b1b1b3;float: right;margin-top: 10px;margin-right: 10px;transform: skewX(-25deg)"
></div>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #11e9e9b3;float: right;margin-top: 10px;margin-right: 10px;transform: skewX(-25deg)"
></div>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #2c888899;float: right;margin-top: 10px;transform: skewX(-25deg)"
></div>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #24b1b1b3;float: right;margin-top: 10px;margin-right: 10px;transform: skewX(-25deg)"
></div>
<div
class=
"fong-div"
style=
"width: 8px;height: 12px;background-color: #11e9e9b3;float: right;margin-top: 10px;margin-right: 10px;transform: skewX(-25deg)"
></div>
</div>
</div>
<!--
<div
id=
"myCharttwo"
:style=
"
{width: '450px', height: '270px'}">
</div>
<div
class=
"titleTex"
style=
"height: 20px;margin-top: 0px;font-size: 15px;"
>
● 已完成数量:
{{
datanow
.
renwu
[
1
]
}}
</div>
<div
class=
"titleTex"
style=
"height: 20px;margin-top: 0px;font-size: 15px;color: #0099ff"
>
● 未成数量:
{{
datanow
.
renwu
[
0
]
}}
</div>
-->
<div
class=
"div-el"
>
<div
class=
"el-left"
>
入户安检
</div>
<el-progress
class=
"el-progress_text"
:text-inside=
"true"
:stroke-width=
"18"
:percentage=
"
63
"
></el-progress>
<el-progress
class=
"el-progress_text"
:text-inside=
"true"
:stroke-width=
"18"
:percentage=
"
allNum.typeOne*100
"
></el-progress>
</div>
<div
class=
"div-el"
>
<div
class=
"el-left"
>
巡查
</div>
<el-progress
class=
"el-progress_text"
:text-inside=
"true"
:stroke-width=
"18"
:percentage=
"
5
0"
status=
"success"
></el-progress>
<el-progress
class=
"el-progress_text"
:text-inside=
"true"
:stroke-width=
"18"
:percentage=
"
allNum.typeTwo*10
0"
status=
"success"
></el-progress>
</div>
<div
class=
"div-el"
>
<div
class=
"el-left"
>
报警巡查
</div>
<el-progress
class=
"el-progress_text"
:text-inside=
"true"
:stroke-width=
"18"
:percentage=
"
8
0"
status=
"warning"
></el-progress>
<el-progress
class=
"el-progress_text"
:text-inside=
"true"
:stroke-width=
"18"
:percentage=
"
allNum.typeThree*10
0"
status=
"warning"
></el-progress>
</div>
<div
class=
"div-el"
>
<div
class=
"el-left"
>
其他
</div>
<el-progress
class=
"el-progress_text"
:text-inside=
"true"
:stroke-width=
"18"
:percentage=
"
5
0"
status=
"exception"
></el-progress>
<el-progress
class=
"el-progress_text"
:text-inside=
"true"
:stroke-width=
"18"
:percentage=
"
allNum.typeFor*10
0"
status=
"exception"
></el-progress>
</div>
<!--
</div>
-->
</div>
</
template
>
<
script
>
import
{
selectWorkOrderNum
}
from
"@/api/operationMonitor/order"
;
// 引入基本模板
let
echarts
=
require
(
'echarts/lib/echarts'
)
// 引入柱状图组件
...
...
@@ -84,6 +79,18 @@
export
default
{
data
()
{
return
{
allNum
:{},
zeroNum
:{
allPipeLength
:
0
,
peopleNum
:
0
,
typeFor
:
0
,
typeOne
:
0
,
typeThree
:
0
,
typeTwo
:
0
},
enterpriseIds
:{
enterpriseId
:
""
},
dataAll
:{
congyeNum
:
1544
,
guandaoNum
:
3658495
,
...
...
@@ -128,30 +135,42 @@
mounted
(){
this
.
datanow
=
this
.
dataAll
;
this
.
drawLine
(
this
.
datanow
);
this
.
initdata
(
this
.
datanow
);
//this.getNum(null)
},
methods
:
{
choice
(
index
){
console
.
log
(
"-----"
+
index
)
if
(
index
==
0
){
this
.
datanow
=
this
.
dataAll
;
this
.
drawLine
(
this
.
datanow
);
this
.
initdata
(
this
.
datanow
);
}
else
if
(
index
==
1
){
this
.
datanow
=
this
.
dataone
;
this
.
drawLine
(
this
.
datanow
);
this
.
initdata
(
this
.
datanow
);
}
else
if
(
index
==
2
){
this
.
datanow
=
this
.
datatwo
;
this
.
drawLine
(
this
.
datanow
);
this
.
initdata
(
this
.
datanow
);
}
else
if
(
index
==
3
){
this
.
datanow
=
this
.
datathree
;
this
.
drawLine
(
this
.
datanow
);
this
.
initdata
(
this
.
datanow
);
}
choice
(
val
){
// if(index==0){
// this.datanow = this.dataAll;
// this.drawLine(this.datanow);
// this.getNum(index);
// }else
this
.
getNum
(
val
);
// if(index==1){
// this.datanow = this.dataone;
// this.drawLine(this.datanow);
// }else if(index==2){
// this.datanow = this.datatwo;
// this.drawLine(this.datanow);
// }else if(index==3){
// this.datanow = this.datathree;
// this.drawLine(this.datanow);
// }
},
getNum
(
val
){
if
(
val
!=
null
&&
val
!=
''
){
this
.
enterpriseIds
.
enterpriseId
=
val
.
toString
();
selectWorkOrderNum
(
this
.
enterpriseIds
).
then
(
response
=>
{
console
.
log
(
response
);
this
.
allNum
=
response
.
data
;
});
}
else
{
this
.
allNum
=
this
.
zeroNum
;
}
},
//折线图
drawLine
(
data
){
// 基于准备好的dom,初始化echarts实例
let
myChart
=
echarts
.
init
(
document
.
getElementById
(
'main1'
))
...
...
@@ -163,12 +182,12 @@
color
:
"#cddbe4"
},
},
grid
:
{
left
:
'5%'
,
right
:
'7%'
,
bottom
:
'4%'
,
containLabel
:
true
grid
:
{
left
:
'5%'
,
right
:
'7%'
,
bottom
:
'4%'
,
containLabel
:
true
},
xAxis
:
{
axisLine
:
{
...
...
@@ -248,86 +267,6 @@
]
});
},
initdata
(
data
){
// 基于准备好的dom,初始化echarts实例
//console.log(data.renwu[0]+"=-=-=-"+data.renwu[1])
let
myChart2
=
this
.
$echarts
.
init
(
document
.
getElementById
(
'myCharttwo'
))
// 绘制图表
myChart2
.
setOption
({
title
:
{
text
:
'任务总数量:'
+
data
.
renwuzong
,
left
:
'center'
,
top
:
20
,
textStyle
:{
color
:
"#00ffff"
}
},
tooltip
:
{
trigger
:
'item'
,
},
series
:
[
{
name
:
'任务概况'
,
type
:
'pie'
,
radius
:
'60%'
,
center
:
[
'50%'
,
'58%'
],
data
:
[
{
value
:
data
.
renwu
[
0
],
name
:
'未完成'
,
itemStyle
:
{
color
:
'#09f'
}
},
{
value
:
data
.
renwu
[
1
],
name
:
'已完成'
,
itemStyle
:
{
color
:
'#00ffff'
}
},
],
labelLine
:{
length
:
20
,
length2
:
50
,
},
label
:{
color
:
'#fff'
,
fontSize
:
14
,
// formatter:"{b}\n\n",
// padding:[0,-55],
normal
:
{
show
:
true
,
position
:
'outer'
,
// formatter: '{d}%, {c} \n\n',
//模板变量有 {a}, {b},{c},{d},{e},分别表示系列名,数据名,数据值等。
formatter
:
"{a_set|{b}}
\n
{b_set|{d}%}
\n\n\n
"
,
// formatter: "{a_set|{b}}\n{c_set|{d}%}\n{b|}\n\n",
borderWidth
:
20
,
borderRadius
:
4
,
padding
:
[
0
,
-
55
],
rich
:
{
a_set
:
{
color
:
"#fff"
,
lineHeight
:
20
,
align
:
"center"
,
padding
:
[
55
,
-
40
,
-
15
,
-
40
],
},
b_set
:{
color
:
"auto"
,
},
}
}
},
emphasis
:
{
itemStyle
:
{
shadowBlur
:
10
,
shadowOffsetX
:
0
,
shadowColor
:
'rgba(0, 0, 0, 0.5)'
}
}
}
]
});
},
}
...
...
@@ -335,7 +274,7 @@
</
script
>
<
style
lang=
"scss"
scoped
>
/* @font-face {
font-family: 'arialbd';
} */
...
...
gassafetyprogress-web/src/views/bigWindow/index.vue
View file @
9a96849e
...
...
@@ -313,7 +313,7 @@ export default {
this
.
currentTime
();
this
.
$refs
.
mychild
.
choice
(
0
);
this
.
$refs
.
mychild2
.
choice
(
0
);
this
.
$refs
.
mychild2
.
choice
(
this
.
selarr
);
},
methods
:
{
...
mapActions
({
...
...
@@ -387,6 +387,7 @@ export default {
this
.
map
.
allfilter
(
this
.
selarr
,
this
.
selarr1
);
this
.
map
.
infowindowClose
();
this
.
show
=
false
;
this
.
$refs
.
mychild2
.
choice
(
this
.
selarr
);
},
sel
(
index
,
item
)
{
this
.
map
.
infowindowClose
();
...
...
@@ -408,6 +409,7 @@ export default {
}
// this.map.companyFilter(this.selarr);
this
.
map
.
allfilter
(
this
.
selarr
,
this
.
selarr1
);
this
.
$refs
.
mychild2
.
choice
(
this
.
selarr
);
},
sel1
(
index
,
item
)
{
...
...
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