Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-boot-biz
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
项目统一框架
amos-boot-biz
Commits
35789445
Commit
35789445
authored
Nov 15, 2022
by
高建强
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
item:总部直流中心-消防系统运行状态总览提交
parent
680ae113
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
175 additions
and
15 deletions
+175
-15
FireFightingSystemDto.java
...yeejoin/equipmanage/common/dto/FireFightingSystemDto.java
+15
-0
DCenterController.java
...com/yeejoin/equipmanage/controller/DCenterController.java
+33
-7
EquipmentSpecificMapper.java
...m/yeejoin/equipmanage/mapper/EquipmentSpecificMapper.java
+6
-4
IEquipmentSpecificSerivce.java
...eejoin/equipmanage/service/IEquipmentSpecificSerivce.java
+18
-1
IFireFightingSystemService.java
...ejoin/equipmanage/service/IFireFightingSystemService.java
+3
-0
EquipmentSpecificSerivceImpl.java
...quipmanage/service/impl/EquipmentSpecificSerivceImpl.java
+11
-2
FireFightingSystemServiceImpl.java
...uipmanage/service/impl/FireFightingSystemServiceImpl.java
+23
-1
EquipmentSpecificMapper.xml
...uip/src/main/resources/mapper/EquipmentSpecificMapper.xml
+66
-0
No files found.
amos-boot-module/amos-boot-module-api/amos-boot-module-equip-api/src/main/java/com/yeejoin/equipmanage/common/dto/FireFightingSystemDto.java
0 → 100644
View file @
35789445
package
com
.
yeejoin
.
equipmanage
.
common
.
dto
;
import
lombok.Data
;
@Data
public
class
FireFightingSystemDto
{
private
Long
id
;
private
String
code
;
private
String
name
;
private
Integer
equipTotal
=
0
;
private
Integer
alarmEquipTotal
=
0
;
private
String
status
;
private
String
image
;
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/controller/DCenterController.java
View file @
35789445
package
com
.
yeejoin
.
equipmanage
.
controller
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.biz.common.bo.ReginParams
;
import
com.yeejoin.equipmanage.common.utils.*
;
import
com.yeejoin.equipmanage.service.IEquipmentSpecificAlarmService
;
import
com.yeejoin.equipmanage.service.IFireFightingSystemService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.MediaType
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.*
;
import
org.typroject.tyboot.core.foundation.enumeration.UserType
;
import
org.typroject.tyboot.core.foundation.utils.ValidationUtil
;
import
org.typroject.tyboot.core.restful.doc.TycloudOperation
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
...
...
@@ -34,11 +34,13 @@ import java.util.Map;
public
class
DCenterController
extends
AbstractBaseController
{
@Autowired
IEquipmentSpecificAlarmService
iEquipmentSpecificAlarmService
;
private
IEquipmentSpecificAlarmService
equipmentSpecificAlarmService
;
@Autowired
private
IFireFightingSystemService
fireFightingSystemService
;
/**
* 直流中心告警列表分页,用于直流中心大数据查询分页,不建议再扩展联表查询
*
*/
@RequestMapping
(
value
=
"/list"
,
method
=
RequestMethod
.
GET
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
...
...
@@ -54,9 +56,33 @@ public class DCenterController extends AbstractBaseController {
request
.
setValue
(
StringUtil
.
isNotEmpty
(
alarmType
)
?
StringUtils
.
trimToNull
(
alarmType
)
:
null
);
queryRequests
.
add
(
request
);
CommonPageInfoParam
param
=
CommonPageParamUtil
.
fillCommonPageInfoParam
(
queryRequests
,
commonPageable
);
Page
<
Map
<
String
,
Object
>>
list
=
iE
quipmentSpecificAlarmService
.
zlzxListPage
(
param
);
Page
<
Map
<
String
,
Object
>>
list
=
e
quipmentSpecificAlarmService
.
zlzxListPage
(
param
);
return
CommonResponseUtil
.
success
(
list
);
}
/**
* 消防系统运行状态分页查询
* @param bizOrgCode
* @param commonPageable
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
value
=
"消防系统运行状态分页查询"
)
@GetMapping
(
"/fireSysRunStatusPage"
)
public
ResponseModel
fireSysRunStatusPage
(
@RequestParam
(
value
=
"bizOrgCode"
,
required
=
false
)
String
bizOrgCode
,
CommonPageable
commonPageable
)
{
if
(
commonPageable
.
getPageNumber
()
==
0
)
{
commonPageable
.
setPageNumber
(
1
);
}
if
(
StringUtils
.
isBlank
(
bizOrgCode
))
{
ReginParams
reginParams
=
getSelectedOrgInfo
();
if
(!
ValidationUtil
.
isEmpty
(
reginParams
.
getPersonIdentity
()))
{
bizOrgCode
=
reginParams
.
getPersonIdentity
().
getBizOrgCode
();
}
}
Page
page
=
new
Page
<>(
commonPageable
.
getPageNumber
(),
commonPageable
.
getPageSize
());
return
CommonResponseUtil
.
success
(
fireFightingSystemService
.
fireSysRunStatusPage
(
page
,
bizOrgCode
));
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/mapper/EquipmentSpecificMapper.java
View file @
35789445
package
com
.
yeejoin
.
equipmanage
.
mapper
;
import
java.util.HashMap
;
import
java.util.LinkedHashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.*
;
import
com.yeejoin.equipmanage.common.datasync.vo.FireEquipmentVO
;
import
com.yeejoin.equipmanage.common.dto.FireFightingSystemDto
;
import
com.yeejoin.equipmanage.common.entity.*
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
...
...
@@ -238,4 +236,8 @@ public interface EquipmentSpecificMapper extends BaseMapper<EquipmentSpecific> {
Map
<
String
,
Object
>
getPaomoSysInfo
();
Map
<
String
,
Object
>
getWaterSysInfo
();
Page
<
FireFightingSystemDto
>
fireSysIotEquipCount
(
Page
<
Map
<
String
,
Object
>>
page
,
@Param
(
"bizOrgCode"
)
String
bizOrgCode
);
List
<
FireFightingSystemDto
>
fireSysIotEquipAlarmCount
(
Date
date
,
String
bizOrgCode
);
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/service/IEquipmentSpecificSerivce.java
View file @
35789445
...
...
@@ -8,6 +8,7 @@ import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import
com.yeejoin.equipmanage.common.datasync.entity.FireEquipment
;
import
com.yeejoin.equipmanage.common.datasync.vo.FireEquipmentVO
;
import
com.yeejoin.equipmanage.common.dto.EquipmentSpecificDto
;
import
com.yeejoin.equipmanage.common.dto.FireFightingSystemDto
;
import
com.yeejoin.equipmanage.common.dto.UserDto
;
import
com.yeejoin.equipmanage.common.entity.EquipmentSpecific
;
import
com.yeejoin.equipmanage.common.entity.EquipmentSpecificIndex
;
...
...
@@ -17,9 +18,9 @@ import com.yeejoin.equipmanage.common.entity.vo.EquipmentSpecificVo;
import
com.yeejoin.equipmanage.common.entity.vo.IotIndexInfoVo
;
import
com.yeejoin.equipmanage.common.entity.vo.SourceNameByEquipSpeIdVO
;
import
com.yeejoin.equipmanage.common.vo.*
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
java.util.Date
;
import
java.util.LinkedHashMap
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -244,4 +245,20 @@ public interface IEquipmentSpecificSerivce extends IService<EquipmentSpecific> {
Map
<
String
,
Object
>
getPaomoSysInfo
(
String
startDate
,
String
endDate
);
Map
<
String
,
Object
>
getWaterSysInfo
(
String
startDate
,
String
endDate
);
/**
* 消防系统物联部件统计
* @param page
* @param bizOrgCode
* @return
*/
Page
<
FireFightingSystemDto
>
fireSysIotEquipCount
(
Page
<
Map
<
String
,
Object
>>
page
,
String
bizOrgCode
);
/**
* 系统状态及告警设备统计
* @param date
* @param bizOrgCode
* @return
*/
List
<
FireFightingSystemDto
>
fireSysIotEquipAlarmCount
(
Date
date
,
String
bizOrgCode
);
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/service/IFireFightingSystemService.java
View file @
35789445
...
...
@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
import
com.yeejoin.amos.boot.biz.common.dto.OrgMenuDto
;
import
com.yeejoin.amos.feign.morphic.model.ResourceDTO
;
import
com.yeejoin.equipmanage.common.datasync.entity.FireFightingSystem
;
import
com.yeejoin.equipmanage.common.dto.FireFightingSystemDto
;
import
com.yeejoin.equipmanage.common.entity.FireFightingSystemEntity
;
import
com.yeejoin.equipmanage.common.entity.dto.EquipTypeAmountPageDTO
;
import
com.yeejoin.equipmanage.common.entity.vo.*
;
...
...
@@ -295,4 +296,6 @@ public interface IFireFightingSystemService extends IService<FireFightingSystemE
List
<
Map
<
String
,
Object
>>
getSystemAlarmInfoList
(
String
startDate
,
String
endDate
);
List
<
Map
<
String
,
Object
>>
getSystemRunningInfoList
();
Page
<
FireFightingSystemDto
>
fireSysRunStatusPage
(
Page
<
Map
<
String
,
Object
>>
page
,
String
bizOrgCode
);
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/service/impl/EquipmentSpecificSerivceImpl.java
View file @
35789445
...
...
@@ -6,15 +6,14 @@ import java.util.*;
import
java.util.stream.Collectors
;
import
com.alibaba.fastjson.JSONArray
;
import
com.yeejoin.amos.feign.systemctl.Systemctl
;
import
com.yeejoin.amos.feign.systemctl.model.MessageModel
;
import
com.yeejoin.equipmanage.common.dto.FireFightingSystemDto
;
import
com.yeejoin.equipmanage.common.entity.vo.*
;
import
com.yeejoin.equipmanage.common.vo.*
;
import
com.yeejoin.equipmanage.fegin.SystemctlFeign
;
import
com.yeejoin.equipmanage.mapper.*
;
import
com.yeejoin.equipmanage.remote.RemoteSecurityService
;
import
com.yeejoin.equipmanage.service.*
;
import
org.apache.catalina.util.IOTools
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -1929,4 +1928,14 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
public
Map
<
String
,
Object
>
getWaterSysInfo
(
String
startDate
,
String
endDate
)
{
return
equipmentSpecificMapper
.
getWaterSysInfo
();
}
@Override
public
Page
<
FireFightingSystemDto
>
fireSysIotEquipCount
(
Page
<
Map
<
String
,
Object
>>
page
,
String
bizOrgCode
)
{
return
equipmentSpecificMapper
.
fireSysIotEquipCount
(
page
,
bizOrgCode
);
}
@Override
public
List
<
FireFightingSystemDto
>
fireSysIotEquipAlarmCount
(
Date
date
,
String
bizOrgCode
)
{
return
equipmentSpecificMapper
.
fireSysIotEquipAlarmCount
(
date
,
bizOrgCode
);
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/service/impl/FireFightingSystemServiceImpl.java
View file @
35789445
...
...
@@ -21,6 +21,7 @@ import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import
com.yeejoin.amos.feign.systemctl.Systemctl
;
import
com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel
;
import
com.yeejoin.equipmanage.common.datasync.entity.FireFightingSystem
;
import
com.yeejoin.equipmanage.common.dto.FireFightingSystemDto
;
import
com.yeejoin.equipmanage.common.dto.OrgUsrDto
;
import
com.yeejoin.equipmanage.common.entity.*
;
import
com.yeejoin.equipmanage.common.entity.dto.EquipTypeAmountPageDTO
;
...
...
@@ -35,7 +36,6 @@ import com.yeejoin.equipmanage.remote.RemoteSecurityService;
import
com.yeejoin.equipmanage.service.*
;
import
org.apache.commons.beanutils.BeanUtils
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.ibatis.annotations.Param
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.context.annotation.Lazy
;
...
...
@@ -2075,4 +2075,26 @@ public class FireFightingSystemServiceImpl extends ServiceImpl<FireFightingSyste
}
return
resultList
;
}
@Override
public
Page
<
FireFightingSystemDto
>
fireSysRunStatusPage
(
Page
<
Map
<
String
,
Object
>>
page
,
String
bizOrgCode
)
{
// 消防系统物联部件统计
Page
<
FireFightingSystemDto
>
pages
=
equipmentSpecificSerivce
.
fireSysIotEquipCount
(
page
,
bizOrgCode
);
List
<
FireFightingSystemDto
>
records
=
pages
.
getRecords
();
// 系统状态及今日告警设备统计
if
(!
CollectionUtils
.
isEmpty
(
records
))
{
List
<
Long
>
idList
=
records
.
stream
().
map
(
FireFightingSystemDto:
:
getId
).
collect
(
Collectors
.
toList
());
List
<
FireFightingSystemDto
>
list
=
equipmentSpecificSerivce
.
fireSysIotEquipAlarmCount
(
new
Date
(),
bizOrgCode
);
//使用stream流把list1和list2根据属性userId合并一个list集合
List
<
FireFightingSystemDto
>
collect
=
records
.
stream
().
map
(
m
->
{
list
.
stream
().
filter
(
m2
->
Objects
.
equals
(
m
.
getId
(),
m2
.
getId
())).
forEach
(
m2
->
{
m
.
setAlarmEquipTotal
(
m2
.
getAlarmEquipTotal
());
m
.
setStatus
(
m2
.
getStatus
());
});
return
m
;
}).
collect
(
Collectors
.
toList
());
pages
.
setRecords
(
collect
);
}
return
pages
;
}
}
amos-boot-system-equip/src/main/resources/mapper/EquipmentSpecificMapper.xml
View file @
35789445
...
...
@@ -1970,4 +1970,69 @@
ORDER BY
`c`.`click_date`
</select>
<select
id=
"fireSysIotEquipCount"
resultType=
"com.yeejoin.equipmanage.common.dto.FireFightingSystemDto"
>
SELECT
fs.id,
fs.`code`,
fs.`name`,
count( 1 ) AS equipTotal,
ec.image
FROM
f_fire_fighting_system fs
LEFT JOIN `wl_equipment_specific` `wes` ON find_in_set( `fs`.`id`, `wes`.`system_id` )
LEFT JOIN wl_equipment_detail wed ON wed.id = wes.equipment_detail_id
LEFT JOIN wl_equipment e ON wed.`equipment_id` = e.`id`
LEFT JOIN wl_equipment_category ec ON ec.id = fs.system_type
WHERE
e.is_iot = 1
<if
test=
"bizOrgCode!=null and bizOrgCode!=''"
>
and fs.biz_org_code like concat(#{bizOrgCode}, '%')
</if>
GROUP BY
fs.id
ORDER BY
fs.sort
</select>
<select
id=
"fireSysIotEquipAlarmCount"
resultType=
"com.yeejoin.equipmanage.common.dto.FireFightingSystemDto"
>
SELECT
s.id,
s.`name`,
IFNULL(s.alarmEquipTotal, 0) AS alarmEquipTotal,
<choose>
<when
test=
"date != null"
>
IFNULL(s.total, IF(s.total > 0,1,0)) AS `status`
</when>
<otherwise>
IFNULL(s.alarmEquipTotal, IF(s.alarmEquipTotal > 0,1,0)) AS `status`
</otherwise>
</choose>
FROM
(SELECT
fs.id,
fs.`name`,
count( 1 ) AS total,
<choose>
<when
test=
"date != null"
>
SUM(IF(TO_DAYS(esi.create_date) = TO_DAYS(#{date}),1,0)) AS alarmEquipTotal
</when>
<otherwise>
COUNT( 1 ) AS alarmEquipTotal
</otherwise>
</choose>
FROM
f_fire_fighting_system fs
LEFT JOIN `wl_equipment_specific` `wes` ON find_in_set( `fs`.`id`, `wes`.`system_id` )
LEFT JOIN wl_equipment_specific_index esi ON esi.equipment_specific_id = wes.id
<where>
(
( esi.is_alarm = 1 AND esi.`value` = 'true' )
OR ( esi.is_alarm = 0 AND esi.`value` = 'false' )
)
<if
test=
"bizOrgCode!=null and bizOrgCode!=''"
>
AND fs.biz_org_code like concat(#{bizOrgCode}, '%')
</if>
</where>
GROUP BY
fs.id) s
</select>
</mapper>
\ No newline at end of file
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