Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
Z
zh-baseversion-project
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
王浩
zh-baseversion-project
Commits
4b3c6535
Commit
4b3c6535
authored
Feb 24, 2026
by
zhangjianqian
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
入户安检汇总页面和数据对接
parent
83c4657f
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
23 changed files
with
1169 additions
and
142 deletions
+1169
-142
THiddenDangerStandingBookController.java
...ler/standingBook/THiddenDangerStandingBookController.java
+20
-0
StatisticController.java
.../zehong/web/controller/statistic/StatisticController.java
+10
-0
TDetectorUserController.java
...ong/web/controller/supervise/TDetectorUserController.java
+10
-0
DESEncoder.java
.../main/java/com/zehong/web/controller/tool/DESEncoder.java
+73
-140
TDetectorUserMapper.java
...in/java/com/zehong/system/mapper/TDetectorUserMapper.java
+6
-0
THiddenDangerStandingBookMapper.java
...zehong/system/mapper/THiddenDangerStandingBookMapper.java
+12
-0
TInspectReportMapper.java
...n/java/com/zehong/system/mapper/TInspectReportMapper.java
+7
-0
ITDetectorUserService.java
...java/com/zehong/system/service/ITDetectorUserService.java
+6
-0
ITHiddenDangerStandingBookService.java
...ong/system/service/ITHiddenDangerStandingBookService.java
+12
-0
ITInspectReportService.java
...ava/com/zehong/system/service/ITInspectReportService.java
+7
-0
TDetectorUserServiceImpl.java
.../zehong/system/service/impl/TDetectorUserServiceImpl.java
+9
-0
THiddenDangerStandingBookServiceImpl.java
...em/service/impl/THiddenDangerStandingBookServiceImpl.java
+47
-2
TInspectReportServiceImpl.java
...zehong/system/service/impl/TInspectReportServiceImpl.java
+22
-0
TDetectorUserMapper.xml
.../src/main/resources/mapper/system/TDetectorUserMapper.xml
+11
-0
THiddenDangerStandingBookMapper.xml
...sources/mapper/system/THiddenDangerStandingBookMapper.xml
+27
-0
TInspectReportMapper.xml
...src/main/resources/mapper/system/TInspectReportMapper.xml
+18
-0
hidden.js
zh-baseversion-web/src/api/standingBook/hidden.js
+17
-0
statisticAnalysis.js
zh-baseversion-web/src/api/statistic/statisticAnalysis.js
+9
-0
summary.js
zh-baseversion-web/src/api/supervise/summary.js
+10
-0
Left.vue
...rsion-web/src/views/supervise/summary/components/Left.vue
+175
-0
Middle.vue
...ion-web/src/views/supervise/summary/components/Middle.vue
+348
-0
Right.vue
...sion-web/src/views/supervise/summary/components/Right.vue
+179
-0
index.vue
zh-baseversion-web/src/views/supervise/summary/index.vue
+134
-0
No files found.
zh-baseversion-admin/src/main/java/com/zehong/web/controller/standingBook/THiddenDangerStandingBookController.java
View file @
4b3c6535
...
@@ -186,4 +186,24 @@ public class THiddenDangerStandingBookController extends BaseController
...
@@ -186,4 +186,24 @@ public class THiddenDangerStandingBookController extends BaseController
public
AjaxResult
hiddenBookStatistics
(
TInspectReport
report
){
public
AjaxResult
hiddenBookStatistics
(
TInspectReport
report
){
return
AjaxResult
.
success
(
tHiddenDangerStandingBookService
.
hiddenBookStatistics
(
report
));
return
AjaxResult
.
success
(
tHiddenDangerStandingBookService
.
hiddenBookStatistics
(
report
));
}
}
/**
* 隐患年份统计
* @return
*/
@GetMapping
(
"/hiddenBookYearStatistics"
)
public
AjaxResult
hiddenBookYearStatistics
(){
return
AjaxResult
.
success
(
tHiddenDangerStandingBookService
.
hiddenBookYearStatistics
());
}
/**
* 隐患企业统计
* @return
*/
@GetMapping
(
"/hiddenBookqiyeStatistics"
)
public
AjaxResult
hiddenBookqiyeStatistics
(){
return
AjaxResult
.
success
(
tHiddenDangerStandingBookService
.
hiddenBookqiyeStatistics
());
}
}
}
zh-baseversion-admin/src/main/java/com/zehong/web/controller/statistic/StatisticController.java
View file @
4b3c6535
...
@@ -111,4 +111,14 @@ public class StatisticController
...
@@ -111,4 +111,14 @@ public class StatisticController
return
AjaxResult
.
success
(
map
);
return
AjaxResult
.
success
(
map
);
}
}
/**
* 入户安检汇总统计
*/
@GetMapping
(
"/indoorsummary"
)
public
AjaxResult
indoorsummary
()
{
List
<
Map
<
String
,
Object
>>
list
=
inspectReportService
.
selectindoorsummary
();
return
AjaxResult
.
success
(
list
);
}
}
}
zh-baseversion-admin/src/main/java/com/zehong/web/controller/supervise/TDetectorUserController.java
View file @
4b3c6535
...
@@ -666,4 +666,14 @@ public class TDetectorUserController extends BaseController
...
@@ -666,4 +666,14 @@ public class TDetectorUserController extends BaseController
{
{
return
AjaxResult
.
success
(
tDetectorUserService
.
clearImportErrorByEnterpriseId
(
gasType
));
return
AjaxResult
.
success
(
tDetectorUserService
.
clearImportErrorByEnterpriseId
(
gasType
));
}
}
/**
* 查询燃气用户列表
*/
@GetMapping
(
"/summaryUser"
)
public
AjaxResult
summaryUser
()
{
Map
<
String
,
Object
>
map
=
tDetectorUserService
.
summaryUser
();
return
AjaxResult
.
success
(
map
);
}
}
}
zh-baseversion-admin/src/main/java/com/zehong/web/controller/tool/DESEncoder.java
View file @
4b3c6535
This diff is collapsed.
Click to expand it.
zh-baseversion-system/src/main/java/com/zehong/system/mapper/TDetectorUserMapper.java
View file @
4b3c6535
...
@@ -225,4 +225,10 @@ public interface TDetectorUserMapper
...
@@ -225,4 +225,10 @@ public interface TDetectorUserMapper
public
int
clearByBeyondEnterpriseId
(
@Param
(
"beyondEnterpriseId"
)
String
beyondEnterpriseId
,
public
int
clearByBeyondEnterpriseId
(
@Param
(
"beyondEnterpriseId"
)
String
beyondEnterpriseId
,
@Param
(
"gasType"
)
String
gasType
);
@Param
(
"gasType"
)
String
gasType
);
/**
* 汇总用户
* @return
*/
public
Map
<
String
,
Object
>
summaryUser
();
}
}
zh-baseversion-system/src/main/java/com/zehong/system/mapper/THiddenDangerStandingBookMapper.java
View file @
4b3c6535
...
@@ -107,4 +107,16 @@ public interface THiddenDangerStandingBookMapper
...
@@ -107,4 +107,16 @@ public interface THiddenDangerStandingBookMapper
*/
*/
Map
<
String
,
Integer
>
hiddenBookStatistics
(
TInspectReport
report
);
Map
<
String
,
Integer
>
hiddenBookStatistics
(
TInspectReport
report
);
/**
* 隐患统计年份
* @param nowyear
* @return
*/
List
<
Map
<
String
,
Object
>>
hiddenBookYearStatistics
(
int
nowyear
);
/**
* 企业隐患统计
* @return
*/
List
<
Map
<
String
,
Object
>>
hiddenBookqiyeStatistics
();
}
}
zh-baseversion-system/src/main/java/com/zehong/system/mapper/TInspectReportMapper.java
View file @
4b3c6535
...
@@ -74,4 +74,11 @@ public interface TInspectReportMapper
...
@@ -74,4 +74,11 @@ public interface TInspectReportMapper
* @return
* @return
*/
*/
public
Map
<
String
,
Object
>
selectIndoorStatistic
(
TInspectReport
report
);
public
Map
<
String
,
Object
>
selectIndoorStatistic
(
TInspectReport
report
);
/**
* 入户安检
* @param report
* @return
*/
public
Map
<
String
,
Object
>
selectIndoorSummery
(
TInspectReport
report
);
}
}
zh-baseversion-system/src/main/java/com/zehong/system/service/ITDetectorUserService.java
View file @
4b3c6535
...
@@ -273,4 +273,10 @@ public interface ITDetectorUserService
...
@@ -273,4 +273,10 @@ public interface ITDetectorUserService
* @return r
* @return r
*/
*/
public
int
clearImportErrorByEnterpriseId
(
String
code
);
public
int
clearImportErrorByEnterpriseId
(
String
code
);
/**
* 统计用户数据
* @return
*/
public
Map
<
String
,
Object
>
summaryUser
();
}
}
zh-baseversion-system/src/main/java/com/zehong/system/service/ITHiddenDangerStandingBookService.java
View file @
4b3c6535
...
@@ -104,4 +104,16 @@ public interface ITHiddenDangerStandingBookService
...
@@ -104,4 +104,16 @@ public interface ITHiddenDangerStandingBookService
* @return
* @return
*/
*/
Map
<
String
,
Integer
>
hiddenBookStatistics
(
TInspectReport
report
);
Map
<
String
,
Integer
>
hiddenBookStatistics
(
TInspectReport
report
);
/**
* 隐患年份统计
* @return
*/
Map
<
String
,
Object
>
hiddenBookYearStatistics
();
/**
* 隐患企业统计
* @return
*/
Map
<
String
,
Object
>
hiddenBookqiyeStatistics
();
}
}
zh-baseversion-system/src/main/java/com/zehong/system/service/ITInspectReportService.java
View file @
4b3c6535
...
@@ -74,4 +74,11 @@ public interface ITInspectReportService
...
@@ -74,4 +74,11 @@ public interface ITInspectReportService
* @return
* @return
*/
*/
public
Map
<
String
,
Object
>
selectIndoorStatistic
(
TInspectReport
report
);
public
Map
<
String
,
Object
>
selectIndoorStatistic
(
TInspectReport
report
);
/**
* 入户安检统计
* @return
*/
public
List
<
Map
<
String
,
Object
>>
selectindoorsummary
();
}
}
zh-baseversion-system/src/main/java/com/zehong/system/service/impl/TDetectorUserServiceImpl.java
View file @
4b3c6535
...
@@ -1260,4 +1260,13 @@ public class TDetectorUserServiceImpl implements ITDetectorUserService {
...
@@ -1260,4 +1260,13 @@ public class TDetectorUserServiceImpl implements ITDetectorUserService {
String
deptId
=
loginUser
.
getUser
().
getDeptId
();
String
deptId
=
loginUser
.
getUser
().
getDeptId
();
return
tDetectorUserMapper
.
clearByBeyondEnterpriseId
(
deptId
,
gasType
);
return
tDetectorUserMapper
.
clearByBeyondEnterpriseId
(
deptId
,
gasType
);
}
}
/**
* 统计用户
* @return
*/
@Override
public
Map
<
String
,
Object
>
summaryUser
()
{
return
tDetectorUserMapper
.
summaryUser
();
}
}
}
zh-baseversion-system/src/main/java/com/zehong/system/service/impl/THiddenDangerStandingBookServiceImpl.java
View file @
4b3c6535
package
com
.
zehong
.
system
.
service
.
impl
;
package
com
.
zehong
.
system
.
service
.
impl
;
import
java.util.List
;
import
java.math.BigDecimal
;
import
java.util.Map
;
import
java.time.Year
;
import
java.util.*
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
import
com.zehong.common.core.domain.entity.SysRole
;
import
com.zehong.common.core.domain.entity.SysRole
;
...
@@ -169,6 +170,50 @@ public class THiddenDangerStandingBookServiceImpl implements ITHiddenDangerStand
...
@@ -169,6 +170,50 @@ public class THiddenDangerStandingBookServiceImpl implements ITHiddenDangerStand
return
tHiddenDangerStandingBookMapper
.
hiddenBookStatistics
(
report
);
return
tHiddenDangerStandingBookMapper
.
hiddenBookStatistics
(
report
);
}
}
/**
* 隐患年份统计
* @return
*/
@Override
public
Map
<
String
,
Object
>
hiddenBookYearStatistics
()
{
Calendar
cal
=
Calendar
.
getInstance
();
// 获取当前时间的Calendar实例
int
year
=
cal
.
get
(
Calendar
.
YEAR
);
// 获取年份
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
List
<
Integer
>
yeshidden
=
new
ArrayList
<>();
List
<
Integer
>
nohidden
=
new
ArrayList
<>();
List
<
Long
>
yearNum
=
new
ArrayList
<>();
List
<
Map
<
String
,
Object
>>
list
=
tHiddenDangerStandingBookMapper
.
hiddenBookYearStatistics
(
year
);
for
(
Map
<
String
,
Object
>
onemap
:
list
){
yeshidden
.
add
(((
BigDecimal
)
onemap
.
get
(
"yeshidden"
)).
intValue
());
nohidden
.
add
(((
BigDecimal
)
onemap
.
get
(
"nohidden"
)).
intValue
());
yearNum
.
add
((
Long
)
onemap
.
get
(
"year"
));
}
map
.
put
(
"yeshidden"
,
yeshidden
);
map
.
put
(
"nohidden"
,
nohidden
);
map
.
put
(
"yearNum"
,
yearNum
);
return
map
;
}
@Override
public
Map
<
String
,
Object
>
hiddenBookqiyeStatistics
()
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
List
<
Integer
>
yeshidden
=
new
ArrayList
<>();
List
<
Integer
>
nohidden
=
new
ArrayList
<>();
List
<
String
>
enterpriseName
=
new
ArrayList
<>();
List
<
Map
<
String
,
Object
>>
list
=
tHiddenDangerStandingBookMapper
.
hiddenBookqiyeStatistics
();
for
(
Map
<
String
,
Object
>
onemap
:
list
){
yeshidden
.
add
(((
BigDecimal
)
onemap
.
get
(
"yeshidden"
)).
intValue
());
nohidden
.
add
(((
BigDecimal
)
onemap
.
get
(
"nohidden"
)).
intValue
());
enterpriseName
.
add
((
String
)
onemap
.
get
(
"enterpriseName"
));
}
map
.
put
(
"yeshidden"
,
yeshidden
);
map
.
put
(
"nohidden"
,
nohidden
);
map
.
put
(
"enterpriseName"
,
enterpriseName
);
return
map
;
}
/**
/**
* 判断是否为企业
* 判断是否为企业
* @return
* @return
...
...
zh-baseversion-system/src/main/java/com/zehong/system/service/impl/TInspectReportServiceImpl.java
View file @
4b3c6535
package
com
.
zehong
.
system
.
service
.
impl
;
package
com
.
zehong
.
system
.
service
.
impl
;
import
java.time.LocalDate
;
import
java.time.Year
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
...
@@ -114,4 +117,23 @@ public class TInspectReportServiceImpl implements ITInspectReportService
...
@@ -114,4 +117,23 @@ public class TInspectReportServiceImpl implements ITInspectReportService
public
Map
<
String
,
Object
>
selectIndoorStatistic
(
TInspectReport
report
)
{
public
Map
<
String
,
Object
>
selectIndoorStatistic
(
TInspectReport
report
)
{
return
tInspectReportMapper
.
selectIndoorStatistic
(
report
);
return
tInspectReportMapper
.
selectIndoorStatistic
(
report
);
}
}
/**
* 入户安检统计
* @return
*/
@Override
public
List
<
Map
<
String
,
Object
>>
selectindoorsummary
()
{
TInspectReport
report
=
new
TInspectReport
();
LocalDate
now
=
LocalDate
.
now
();
int
year
=
now
.
getYear
()+
1
;
List
<
Map
<
String
,
Object
>>
list
=
new
ArrayList
<>();
for
(
int
i
=
0
;
i
<
4
;
i
++){
year
-=
1
;
report
.
setAnnual
(
year
);
Map
<
String
,
Object
>
map
=
tInspectReportMapper
.
selectIndoorSummery
(
report
);
list
.
add
(
map
);
}
return
list
;
}
}
}
zh-baseversion-system/src/main/resources/mapper/system/TDetectorUserMapper.xml
View file @
4b3c6535
...
@@ -695,4 +695,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -695,4 +695,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"gasType != null and gasType == 1"
>
and gas_type =#{gasType}
</if>
<if
test=
"gasType != null and gasType == 1"
>
and gas_type =#{gasType}
</if>
<if
test=
"gasType != null and gasType == 0"
>
and (gas_type =#{gasType} or gas_type is null)
</if>
<if
test=
"gasType != null and gasType == 0"
>
and (gas_type =#{gasType} or gas_type is null)
</if>
</delete>
</delete>
<select
id=
"summaryUser"
resultType=
"java.util.HashMap"
>
SELECT IFNULL(SUM(IF(u.user_type=1,1,0)),0) AS jmNum,
IFNULL(SUM(IF(u.user_type=2,1,0)),0) AS syNum,
IFNULL(SUM(IF(u.user_type=3,1,0)),0) AS gyNum,
IFNULL(SUM(IF(u.user_type=1 AND su.special_id IS NOT NULL,1,0)),0) AS jmtNum,
IFNULL(SUM(IF(u.user_type=2 AND su.special_id IS NOT NULL,1,0)),0) AS sytNum,
IFNULL(SUM(IF(u.user_type=3 AND su.special_id IS NOT NULL,1,0)),0) AS gytNum
FROM t_detector_user u
LEFT JOIN t_special_user su ON u.user_id = su.`user_id`
</select>
</mapper>
</mapper>
zh-baseversion-system/src/main/resources/mapper/system/THiddenDangerStandingBookMapper.xml
View file @
4b3c6535
...
@@ -285,4 +285,31 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -285,4 +285,31 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
AND beyondEnterprise_id = #{companyInfoId}
AND beyondEnterprise_id = #{companyInfoId}
</if>
</if>
</select>
</select>
<select
id=
"hiddenBookYearStatistics"
parameterType=
"int"
resultType=
"hashmap"
>
SELECT y.year,IFNULL(c.hiddenNum,0) AS hiddenNum,IFNULL(c.yeshidden,0) AS yeshidden,IFNULL(c.nohidden,0) AS nohidden
FROM (
SELECT #{nowyear} - a.n AS `year`
FROM (SELECT 0 AS n UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 ) a
) AS Y
LEFT JOIN (
SELECT YEAR(hidden_find_date) AS `year`, COUNT(*) AS hiddenNum ,
SUM(IF(remediation=1,1,0))AS yeshidden,
SUM(IF(remediation=2,1,0))AS nohidden
FROM t_hidden_danger_standing_book
GROUP BY YEAR(hidden_find_date)
) AS c ON y.year = c.year
ORDER BY y.year desc;
</select>
<select
id=
"hiddenBookqiyeStatistics"
resultType=
"hashmap"
>
SELECT IFNULL(e.`enterprise_name`,"未知") AS enterpriseName,
IFNULL(SUM(IF(d.remediation=1,1,0)),0) AS yeshidden,
IFNULL(SUM(IF(d.remediation=2,1,0)),0) AS nohidden,
COUNT(d.hidden_id) AS allcount
FROM t_hidden_danger_standing_book d
LEFT JOIN t_enterprise_info e ON d.`beyondEnterprise_id` = e.`enterprise_id`
GROUP BY d.`beyondEnterprise_id`
ORDER BY allcount
limit 7
</select>
</mapper>
</mapper>
zh-baseversion-system/src/main/resources/mapper/system/TInspectReportMapper.xml
View file @
4b3c6535
...
@@ -195,4 +195,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -195,4 +195,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
AND t.indoor_time = sub_t.max_time
AND t.indoor_time = sub_t.max_time
LEFT JOIN t_detector_user u ON u.user_id = t.user_no
LEFT JOIN t_detector_user u ON u.user_id = t.user_no
</select>
</select>
<select
id=
"selectIndoorSummery"
resultType=
"hashmap"
parameterType=
"TInspectReport"
>
SELECT
#{annual} as yearNum,
(select count(*) from t_detector_user where create_time
<
concat(#{annual},"-12-31 23:59:59")) AS allNum,
IFNULL(SUM(IF(t.indoor_status ='DONE',1,0)),0) AS doneNum,
IFNULL(SUM(IF(t.indoor_status ='REJ',1,0)),0) AS rejNum,
IFNULL(SUM(IF(t.indoor_status ='NONE',1,0)),0) AS noneNum
FROM t_inspect_report t
JOIN (
SELECT `user_no`, MAX(indoor_time) AS max_time
FROM t_inspect_report
WHERE `annual` = #{annual}
GROUP BY `user_no`
) AS sub_t
ON t.`user_no` = sub_t.`user_no`
AND t.indoor_time = sub_t.max_time
LEFT JOIN t_detector_user u ON u.user_id = t.user_no
</select>
</mapper>
</mapper>
\ No newline at end of file
zh-baseversion-web/src/api/standingBook/hidden.js
View file @
4b3c6535
...
@@ -85,3 +85,20 @@ export function hiddenBookStatistics(query) {
...
@@ -85,3 +85,20 @@ export function hiddenBookStatistics(query) {
params
:
query
params
:
query
})
})
}
}
//隐患年份统计
export
function
hiddenBookYearStatistics
()
{
return
request
({
url
:
'/standingBook/hidden/hiddenBookYearStatistics'
,
method
:
'get'
})
}
//隐患企业统计
export
function
hiddenBookqiyeStatistics
()
{
return
request
({
url
:
'/standingBook/hidden/hiddenBookqiyeStatistics'
,
method
:
'get'
})
}
zh-baseversion-web/src/api/statistic/statisticAnalysis.js
View file @
4b3c6535
...
@@ -32,3 +32,12 @@ export function homepageStatistic() {
...
@@ -32,3 +32,12 @@ export function homepageStatistic() {
})
})
}
}
//入户安检统计
export
function
indoorsummary
(
query
)
{
return
request
({
url
:
'/statistic/indoorsummary'
,
method
:
'get'
,
params
:
query
})
}
zh-baseversion-web/src/api/supervise/summary.js
0 → 100644
View file @
4b3c6535
import
request
from
'@/utils/request'
// 查询入户安检结果列表
export
function
summaryUser
()
{
return
request
({
url
:
'/supervise/user/summaryUser'
,
method
:
'get'
})
}
zh-baseversion-web/src/views/supervise/summary/components/Left.vue
0 → 100644
View file @
4b3c6535
<!--
* @Author: your name
* @Date: 2022-04-11 15:07:47
* @LastEditTime: 2022-04-12 09:55:18
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /gassafety-progress/gassafetyprogress-web/src/views/operationMonitor/xunjianxuncha/topChars/left.vue
-->
<
template
>
<div
class=
"charsCom all-flex-h"
>
<div
id=
"main1"
class=
"two all-flex"
>
<!--
<chars
:options=
"options"
></chars>
-->
</div>
</div>
</
template
>
<
script
>
import
Chars
from
"@/components/allCharsCom/Chars"
;
import
{
indoorsummary
}
from
"@/api/statistic/statisticAnalysis"
;
export
default
{
components
:
{
Chars
,
},
props
:{
annual
:
{
type
:
String
,
default
:
2025
,
},
companyInfoId
:
{
type
:
String
,
default
:
23
,
},
},
data
(){
return
{
totalObj
:
{
taskTotal
:
0
,
taskFeedbackTotal
:
0
},
maps
:{},
options
:
{
grid
:
{
top
:
'10%'
,
// 上边距
right
:
'5%'
,
// 右边距
bottom
:
'0%'
,
// 下边距
left
:
'5%'
,
// 左边距
containLabel
:
true
// 保证坐标轴标签等内容不被遮挡
},
legend
:
{},
tooltip
:
{},
dataset
:
{
source
:
[
[
'product'
,
'已安检'
,
'未安检'
,
'到访不遇'
,
'拒绝安检'
],
[
'2026'
,
43.3
,
85.8
,
93.7
,
10
],
[
'2025'
,
83.1
,
73.4
,
55.1
,
10
],
[
'2024'
,
86.4
,
65.2
,
82.5
,
10
],
[
'2023'
,
72.4
,
53.9
,
39.1
,
10
]
]
},
xAxis
:
{
type
:
'category'
},
yAxis
:
{},
series
:
[{
type
:
'bar'
},
{
type
:
'bar'
},
{
type
:
'bar'
},
{
type
:
'bar'
}]
}
}
},
created
(){
//this.getStatiData();
setTimeout
(
this
.
getzhanshi
,
1000
);
},
methods
:{
getzhanshi
(){
var
myChart
=
this
.
$echarts
.
init
(
document
.
getElementById
(
'main1'
));
myChart
.
setOption
(
this
.
options
);
},
getStatiData
()
{
indoorsummary
().
then
(
response
=>
{
console
.
log
(
response
.
data
);
var
source
=
[
[
'product'
,
'已安检'
,
'未安检'
,
'到访不遇'
,
'拒绝安检'
]
]
for
(
var
map
of
response
.
data
){
source
.
push
([
map
.
yearNum
,
map
.
doneNum
,
map
.
allNum
-
map
.
yearNum
-
map
.
noneNum
-
map
.
rejNum
,
map
.
noneNum
,
map
.
rejNum
]);
}
console
.
log
(
'canshu'
,
source
)
this
.
options
.
dataset
.
source
=
source
;
var
myChart
=
this
.
$echarts
.
init
(
document
.
getElementById
(
'main1'
));
myChart
.
setOption
(
this
.
options
);
// source: [
// ['product', '已安检', '未安检', '到访不遇','拒绝安检'],
// ['2026', 43.3, 85.8, 93.7,10],
// ['2025', 83.1, 73.4, 55.1,10],
// ['2024', 86.4, 65.2, 82.5,10],
// ['2023', 72.4, 53.9, 39.1,10]
// ]
});
},
}
};
</
script
>
<
style
lang=
"scss"
scoped
>
.charsCom
{
width
:
100%
;
height
:
100%
;
color
:
#333333
;
}
.title
{
text-align
:
center
;
font-size
:
24px
;
margin-bottom
:
7px
;
}
.two
{
flex
:
1
;
>
.left
{
margin-right
:
70px
;
}
>
.right
{
}
>
div
{
font-size
:
16px
;
flex
:
1
;
// display: flex;
// flex-direction: column;
}
.left
,
.right
{
display
:
flex
;
flex-direction
:
column
;
justify-content
:
space-between
;
.first
{
margin-bottom
:
6px
;
text-align
:
left
;
.text
{
display
:
inline-block
;
margin-right
:
8px
;
}
}
.second
{
width
:
250px
;
height
:
30px
;
line-height
:
30px
;
box-sizing
:
border-box
;
box-shadow
:
0px
0px
3px
1px
#dddddd
;
margin-bottom
:
19px
;
>
div
{
// flex: 1;
text-align
:
center
;
&
.left
{
color
:
#1d8cf3
;
}
&
.right
{
color
:
#00c3f1
;
}
}
}
.third
{
text-align
:
center
;
width
:
250px
;
margin-bottom
:
24px
;
}
.fifth
{
flex
:
1
;
// background: red;
padding-top
:
5px
;
.contant
{
width
:
120px
;
height
:
120px
;
margin
:
0
auto
;
}
}
}
}
</
style
>
zh-baseversion-web/src/views/supervise/summary/components/Middle.vue
0 → 100644
View file @
4b3c6535
<!--
* @Author: your name
* @Date: 2022-04-11 15:07:47
* @LastEditTime: 2022-04-20 11:09:34
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /gassafety-progress/gassafetyprogress-web/src/views/operationMonitor/xunjianxuncha/topChars/left.vue
-->
<
template
>
<div
class=
"charsCom all-flex-h"
>
<div
class=
"title"
>
入户安检隐患统计
</div>
<div
class=
"two all-flex"
>
<div
class=
"left"
>
<!--
<div
class=
"first"
>
-->
<!--
<span
class=
"text"
>
隐患整改率
</span>
-->
<!--
</div>
-->
<div
id=
"main"
class=
"chars-box"
>
<!--
<Chars
:options=
"option"
></Chars>
-->
</div>
</div>
<div
class=
"right"
>
<div
ref=
"myChartWidth"
style=
"margin-top: 60px"
class=
"chars-box"
>
<Chars
:options=
"comoption"
/>
</div>
</div>
</div>
<!--
<div
class=
"three all-flex-h"
>
-->
<!--
<div
class=
"first"
>
隐患原因
</div>
-->
<!--
<div
ref=
"myChartWidth"
class=
"chars-box"
>
-->
<!--
<Chars
:options=
"reasonOptions"
/>
-->
<!--
</div>
-->
<!--
</div>
-->
</div>
</
template
>
<
script
>
import
Chars
from
"@/components/allCharsCom/Chars"
;
import
{
hiddenBookqiyeStatistics
,
hiddenBookYearStatistics
}
from
"@/api/standingBook/hidden"
;
export
default
{
components
:
{
Chars
,
},
props
:{
annual
:
{
type
:
String
,
default
:
2025
,
},
companyInfoId
:
{
type
:
String
,
default
:
23
,
},
},
data
()
{
return
{
bottomData
:
[
[
{
name
:
"裂缝"
,
value
:
0
,
color
:
"#604AFF"
},
{
name
:
"管道称重"
,
value
:
0
,
color
:
"#FFC337"
},
{
name
:
"其他"
,
value
:
0
,
color
:
"#86FF5B"
},
{
name
:
"腐蚀"
,
value
:
0
,
color
:
"#03C4F1"
},
{
name
:
"漏气"
,
value
:
0
,
color
:
"#1F8DF3"
},
],
],
option
:{
color
:[
'RoyalBlue'
,
"lightblue"
],
title
:
{
text
:
'隐患统计'
},
legend
:
{
data
:
[
'已整改'
,
'未整改'
]
},
xAxis
:
[
{
type
:
'category'
,
boundaryGap
:
false
,
data
:
[
'2020'
,
'2021'
,
'2022'
,
'2023'
,
'2024'
,
'2025'
,
'2026'
]
}
],
yAxis
:
[
{
type
:
'value'
}
],
series
:
[
{
name
:
'已整改'
,
type
:
'line'
,
stack
:
'Total'
,
areaStyle
:
{},
emphasis
:
{
focus
:
'series'
},
data
:
[
120
,
132
,
101
,
134
,
90
,
230
,
210
]
},
{
name
:
'未整改'
,
type
:
'line'
,
stack
:
'Total'
,
areaStyle
:
{},
emphasis
:
{
focus
:
'series'
},
data
:
[
220
,
182
,
191
,
234
,
290
,
330
,
310
]
}
]
},
comoption
:{
color
:[
'RoyalBlue'
,
"lightblue"
],
legend
:
{},
xAxis
:
{
type
:
'value'
},
yAxis
:
{
type
:
'category'
,
offset
:
0
,
// 向右偏移50像素
data
:
[
'企业企业企业一个两个三个'
,
'企业2'
,
'企业3'
,
'企业4'
,
'企业5'
,
'企业6'
],
axisLabel
:
{
rotate
:
15
,
// 旋转45度
formatter
:
function
(
value
,
index
)
{
if
(
value
.
length
>
6
){
if
(
value
.
length
>
12
){
return
value
.
slice
(
0
,
6
)
+
"
\n
"
+
value
.
slice
(
6
,
11
)
+
"..."
;
}
else
{
return
value
.
slice
(
0
,
6
)
+
"
\n
"
+
value
.
slice
(
6
,
value
.
length
);
}
}
else
{
return
value
;
}
}
}
},
series
:
[
{
name
:
'已整改'
,
type
:
'bar'
,
stack
:
'total'
,
label
:
{
show
:
true
},
emphasis
:
{
focus
:
'series'
},
data
:
[
320
,
302
,
301
,
334
,
390
,
330
]
},
{
name
:
'未整改'
,
type
:
'bar'
,
stack
:
'total'
,
label
:
{
show
:
true
},
emphasis
:
{
focus
:
'series'
},
data
:
[
120
,
132
,
101
,
134
,
90
,
230
]
}
]
},
reasonOptions
:{},
hiddenBookInfo
:
{
unFinishNum
:
0
,
finishNum
:
0
}
};
},
created
(){
setTimeout
(
this
.
getzhanshi
,
1000
)
this
.
getHiddenBookInfo
();
},
methods
:
{
getzhanshi
(){
hiddenBookYearStatistics
({
companyInfoId
:
this
.
companyInfoId
,
annual
:
this
.
annual
}).
then
(
res
=>
{
this
.
option
.
series
[
0
].
data
=
res
.
data
.
yeshidden
;
this
.
option
.
series
[
1
].
data
=
res
.
data
.
nohidden
;
this
.
option
.
xAxis
[
0
].
data
=
res
.
data
.
yearNum
;
var
myChart
=
this
.
$echarts
.
init
(
document
.
getElementById
(
'main'
));
myChart
.
setOption
(
this
.
option
);
})
},
bottomOptions
()
{
return
{
series
:
this
.
bottomData
.
map
((
data
,
idx
)
=>
{
const
rich
=
{};
data
.
map
((
item
)
=>
({
fontsize
:
12
,
color
:
item
.
color
,
}))
.
forEach
((
item
,
index
)
=>
{
rich
[
`dataIndex
${
index
}
`
]
=
item
;
});
return
{
type
:
"pie"
,
radius
:
[
"68%"
,
"80%"
],
tooltip
:
{
trigger
:
"item"
,
},
color
:
data
.
map
((
item
)
=>
item
.
color
),
itemStyle
:
{
borderWidth
:
2
,
borderRadius
:
10
,
borderColor
:
"#fff"
,
},
label
:
{
alignTo
:
"edge"
,
// formatter: "{name|{b}}\n{num|{c} 个}",
formatter
:
(
parm
)
=>
{
return
`{dataIndex
${
parm
.
dataIndex
}
|
${
parm
.
data
.
name
}
}\n{dataIndex
${
parm
.
dataIndex
}
|
${
parm
.
data
.
value
}
}`
;
},
minMargin
:
5
,
edgeDistance
:
10
,
lineHeight
:
15
,
rich
,
},
labelLine
:
{
length
:
15
,
length2
:
0
,
maxSurfaceAngle
:
80
,
},
labelLayout
:
(
params
)
=>
{
const
{
width
}
=
this
.
$refs
.
myChartWidth
.
getBoundingClientRect
();
const
isLeft
=
params
.
labelRect
.
x
<
width
/
2
;
const
points
=
params
.
labelLinePoints
;
console
.
log
(
"points"
,
points
)
// Update the end point.
points
[
2
][
0
]
=
isLeft
?
params
.
labelRect
.
x
:
params
.
labelRect
.
x
+
params
.
labelRect
.
width
;
return
{
labelLinePoints
:
points
,
};
},
data
:
data
,
};
}),
};
},
getHiddenBookInfo
(){
console
.
log
(
'进去了--------------------------------'
)
hiddenBookqiyeStatistics
().
then
(
res
=>
{
console
.
log
(
res
)
if
(
res
.
code
==
200
){
this
.
comoption
.
series
[
0
].
data
=
res
.
data
.
yeshidden
;
this
.
comoption
.
series
[
1
].
data
=
res
.
data
.
nohidden
;
this
.
comoption
.
yAxis
.
data
=
res
.
data
.
enterpriseName
;
}
//console.log("res==================",res)
})
}
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
.charsCom
{
width
:
100%
;
height
:
100%
;
color
:
#333333
;
}
.title
{
text-align
:
center
;
font-size
:
24px
;
margin-bottom
:
7px
;
}
.two
{
flex
:
1
;
>
.left
{
max-width
:
50%
;
margin-right
:
70px
;
.first
{
margin-bottom
:
6px
;
}
.chars-box
{
width
:
90%
;
height
:
100%
;
margin
:
0
auto
;
}
.second
{
width
:
213px
;
height
:
30px
;
line-height
:
30px
;
box-sizing
:
border-box
;
box-shadow
:
0px
0px
3px
1px
#dddddd
;
margin-bottom
:
19px
;
>
div
{
// flex: 1;
text-align
:
center
;
&
.left
{
color
:
#1d8cf3
;
}
&
.right
{
color
:
#00c3f1
;
}
}
}
.third
{
text-align
:
center
;
width
:
213px
;
margin-bottom
:
24px
;
}
}
>
.right
{
width
:
50%
;
.first
{
text-align
:
center
!
important
;
}
.chars-box
{
width
:
100%
;
height
:
90%
;
margin
:
0
auto
;
}
}
>
div
{
font-size
:
16px
;
flex
:
1
;
// display: flex;
// flex-direction: column;
}
.left
,
.right
{
// display: flex;
// flex-direction: column;
// justify-content: space-between;
.first
{
text-align
:
left
;
.text
{
display
:
inline-block
;
margin-right
:
8px
;
}
}
}
}
.three
{
font-size
:
16px
;
flex
:
1
;
// background: red;
.chars-box
{
flex
:
1
;
}
}
</
style
>
zh-baseversion-web/src/views/supervise/summary/components/Right.vue
0 → 100644
View file @
4b3c6535
<!--
* @Author: your name
* @Date: 2022-04-11 15:07:47
* @LastEditTime: 2022-04-14 18:00:06
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /gassafety-progress/gassafetyprogress-web/src/views/operationMonitor/xunjianxuncha/topChars/left.vue
-->
<
template
>
<div
style=
"display:flex; "
>
<div
class=
"left"
id =
"main2"
>
<Chars
:options=
"option"
/>
</div>
<div
class=
"right"
>
<div
class=
"onehang"
style=
"margin-top: 20%"
>
<div
class=
"onemax"
></div>
<div
class=
"one"
>
用户数量
</div>
<div
class=
"one"
>
特殊用户
</div>
</div>
<div
class=
"onehang"
>
<div
class=
"onemax"
><div
class=
"xiaoone"
style=
"background: #ff7f50 "
></div>
居民用户
</div>
<div
class=
"one"
>
{{
datanum
.
jmNum
}}
</div>
<div
class=
"one"
>
{{
datanum
.
jmtNum
}}
</div>
</div>
<div
class=
"onehang"
>
<div
class=
"onemax"
><div
class=
"xiaoone"
style=
"background:#32cd32"
>
</div>
商业用户
</div>
<div
class=
"one"
>
{{
datanum
.
syNum
}}
</div>
<div
class=
"one"
>
{{
datanum
.
sytNum
}}
</div>
</div>
<div
class=
"onehang"
>
<div
class=
"onemax"
><div
class=
"xiaoone"
style=
"background: #6495ed"
></div>
工业用户
</div>
<div
class=
"one"
>
{{
datanum
.
gyNum
}}
</div>
<div
class=
"one"
>
{{
datanum
.
gytNum
}}
</div>
</div>
</div>
</div>
</
template
>
<
script
>
import
Chars
from
"../../../../components/allCharsCom/Chars"
;
import
{
summaryUser
}
from
"@/api/supervise/summary"
;
export
default
{
components
:
{
Chars
},
props
:{
annual
:
{
type
:
String
,
default
:
2025
,
},
companyInfoId
:
{
type
:
String
,
default
:
23
,
},
},
data
()
{
return
{
total
:
4
,
limit
:
2
,
showSearch
:
true
,
queryParams
:
{
pageNum
:
1
,
pageSize
:
4
,
enterpriseId
:
null
,
nickName
:
null
},
// 特殊用户管控表格数据
specialuserList
:
[],
arr
:
[],
datanum
:{
jmNum
:
0
,
gyNum
:
0
,
syNum
:
0
,
jmtNum
:
0
,
gytNum
:
0
,
sytNum
:
0
,
},
option
:{
color
:
[
'#ff7f50'
,
'#32cd32'
,
'#6495ed'
],
legend
:
{
top
:
'5%'
,
left
:
'center'
},
series
:
[
{
name
:
'Access From'
,
type
:
'pie'
,
radius
:
[
'40%'
,
'70%'
],
avoidLabelOverlap
:
false
,
itemStyle
:
{
borderRadius
:
10
,
borderColor
:
'#fff'
,
borderWidth
:
2
},
label
:
{
show
:
false
,
position
:
'center'
},
emphasis
:
{
label
:
{
show
:
true
,
fontSize
:
40
,
fontWeight
:
'bold'
}
},
labelLine
:
{
show
:
false
},
data
:
[
{
value
:
1048
},
{
value
:
735
},
{
value
:
580
},
]
}
]
}
};
},
created
()
{
this
.
getnum
();
},
methods
:
{
//特殊用户
getnum
(){
summaryUser
().
then
(
res
=>
{
if
(
res
.
code
==
200
){
this
.
datanum
=
res
.
data
;
var
data
=
[
{
value
:
res
.
data
.
jmNum
},
{
value
:
res
.
data
.
syNum
},
{
value
:
res
.
data
.
gyNum
}
]
this
.
option
.
series
[
0
].
data
=
data
;
}
console
.
log
(
this
.
option
)
var
myChart
=
this
.
$echarts
.
init
(
document
.
getElementById
(
'main2'
));
myChart
.
setOption
(
this
.
option
);
})
}
},
mounted
()
{},
};
</
script
>
<
style
lang=
"scss"
scoped
>
.left
{
width
:
40%
;
height
:
30vh
;
}
.right
{
width
:
55%
;
height
:
30vh
;
}
.onehang
{
width
:
100%
;
font-size
:
14px
;
display
:
flex
;
}
.one
{
height
:
40px
;
width
:
30%
;
text-align
:
center
;
}
.onemax
{
height
:
40px
;
width
:
40%
;
text-align
:
center
;
display
:
flex
;
}
.xiaoone
{
height
:
12px
;
width
:
20px
;
margin-top
:
4px
;
margin-right
:
5px
;
}
</
style
>
zh-baseversion-web/src/views/supervise/summary/index.vue
0 → 100644
View file @
4b3c6535
<!--
* @Author: your name
* @Date: 2022-04-11 14:11:04
* @LastEditTime: 2022-04-14 10:45:52
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /gassafety-progress/gassafetyprogress-web/src/views/operationMonitor/xunjianxuncha/index.vue
-->
<
template
>
<div
class=
"app-container xjxc"
>
<div
class=
"wrapper flex-h"
>
<div
class=
"top flex"
>
<div
class=
"right"
>
<Right
:annual=
"activeName"
:companyInfoId=
"companyInfoId"
/>
</div>
<div
class=
"left"
>
<Left
:annual=
"activeName"
:companyInfoId=
"companyInfoId"
/>
</div>
<!--
<div
class=
"middle"
>
-->
<!--
<Middle
/>
-->
<!--
</div>
-->
</div>
<div
class=
"middle"
></div>
<div
class=
"bottom"
>
<Middle
:annual=
"activeName"
:companyInfoId=
"companyInfoId"
/>
</div>
</div>
</div>
</
template
>
<
script
>
import
Left
from
"./components/Left"
;
import
Middle
from
"./components/Middle"
;
import
Right
from
"./components/Right"
;
import
{
enterpriseLists
}
from
"@/api/regulation/info"
;
export
default
{
components
:
{
Left
,
Middle
,
Right
},
data
()
{
return
{
danwei
:
null
,
enterprises
:
[],
activeName
:
'2025'
,
companyInfoId
:
''
};
},
created
()
{
this
.
getEnterpriseLists
();
},
methods
:
{
selectcompanyId
(
e
){
this
.
companyInfoId
=
e
;
},
//所属单位
getEnterpriseLists
(){
const
param
=
{};
enterpriseLists
(
param
).
then
(
response
=>
{
this
.
enterprises
=
response
.
rows
;
});
},
handleClick
(
tab
,
event
)
{
console
.
log
(
tab
,
event
);
}
},
mounted
(){
}
};
</
script
>
<
style
lang=
"scss"
scoped
>
.app-main
{
}
.xjxc
{
height
:
calc
(
100vh
-
50px
)
!
important
;
}
.flex
{
display
:
flex
;
justify-content
:
space-between
;
}
.flex-h
{
display
:
flex
;
// justify-content: space-around;
flex-direction
:
column
;
height
:
100%
;
.top
{
height
:
38
.7%
;
.left
{
width
:
70%
;
padding
:
15px
24px
19px
;
}
.middle
{
width
:
35
.3%
;
padding
:
15px
80px
19px
71px
;
}
.right
{
width
:
30
.2%
;
padding
:
15px
29px
;
}
>
div
{
// box-shadow: 2px 0px 13px 1px rgba(0, 0, 0, 0.1);
box-shadow
:
2px
0px
10px
1px
rgba
(
0
,
0
,
0
,
0
.1
);
border-radius
:
3px
;
}
}
>
.middle
{
margin
:
5px
0
;
background
:
repeating-linear-gradient
(
135deg
,
transparent
,
transparent
3px
,
#D6D6D6
3px
,
#D6D6D6
8px
);
height
:
2px
;
}
.bottom
{
flex
:
1
;
}
>
div
{
// height: 50%;
}
}
.shai
{
position
:
fixed
;
right
:
20px
;
width
:
300px
;
height
:
40px
;
}
::v-deep
.el-select
{
width
:
300px
;
}
</
style
>
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