Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
D
device-new-platform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
赵啸非
device-new-platform
Commits
d73d80d6
Commit
d73d80d6
authored
May 06, 2023
by
赵啸非
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加告警统计信息
parent
64ea760a
Changes
13
Show whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
240 additions
and
73 deletions
+240
-73
device-manager/src/main/java/com/mortals/xhx/base/framework/listener/CustomerKeyExpirationListener.java
...ase/framework/listener/CustomerKeyExpirationListener.java
+1
-0
device-manager/src/main/java/com/mortals/xhx/common/code/AlarmTypeEnum.java
.../main/java/com/mortals/xhx/common/code/AlarmTypeEnum.java
+13
-10
device-manager/src/main/java/com/mortals/xhx/module/device/model/DeviceAlarmInfoEntity.java
...ortals/xhx/module/device/model/DeviceAlarmInfoEntity.java
+7
-4
device-manager/src/main/java/com/mortals/xhx/module/device/model/DeviceEntity.java
...ava/com/mortals/xhx/module/device/model/DeviceEntity.java
+1
-1
device-manager/src/main/java/com/mortals/xhx/module/device/model/vo/DeviceAlarmInfoVo.java
...mortals/xhx/module/device/model/vo/DeviceAlarmInfoVo.java
+39
-9
device-manager/src/main/java/com/mortals/xhx/module/device/service/DeviceAlarmInfoService.java
...als/xhx/module/device/service/DeviceAlarmInfoService.java
+14
-8
device-manager/src/main/java/com/mortals/xhx/module/device/service/impl/DeviceAlarmInfoServiceImpl.java
...odule/device/service/impl/DeviceAlarmInfoServiceImpl.java
+138
-8
device-manager/src/main/java/com/mortals/xhx/module/device/service/impl/DeviceModuleServiceImpl.java
...x/module/device/service/impl/DeviceModuleServiceImpl.java
+2
-16
device-manager/src/main/java/com/mortals/xhx/module/device/service/impl/DeviceServiceImpl.java
...als/xhx/module/device/service/impl/DeviceServiceImpl.java
+2
-4
device-manager/src/main/java/com/mortals/xhx/module/device/web/DeviceAlarmInfoController.java
...tals/xhx/module/device/web/DeviceAlarmInfoController.java
+21
-1
device-manager/src/main/java/com/mortals/xhx/module/device/web/DeviceController.java
...a/com/mortals/xhx/module/device/web/DeviceController.java
+1
-2
device-manager/src/main/java/com/mortals/xhx/module/sitestat/web/SitestatController.java
...m/mortals/xhx/module/sitestat/web/SitestatController.java
+0
-9
device-manager/src/test/java/com/mortals/httpclient/http-client.env.json
...src/test/java/com/mortals/httpclient/http-client.env.json
+1
-1
No files found.
device-manager/src/main/java/com/mortals/xhx/base/framework/listener/CustomerKeyExpirationListener.java
View file @
d73d80d6
...
...
@@ -85,6 +85,7 @@ public class CustomerKeyExpirationListener implements MessageListener {
alarmInfoEntity
.
initAttrValue
();
alarmInfoEntity
.
setAlarmDevice
(
deviceEntity
.
getId
());
alarmInfoEntity
.
setSiteId
(
deviceEntity
.
getSiteId
());
alarmInfoEntity
.
setAlarmTime
(
new
Date
());
alarmInfoEntity
.
setDeviceName
(
deviceEntity
.
getDeviceName
());
alarmInfoEntity
.
setDeviceCode
(
deviceEntity
.
getDeviceCode
());
alarmInfoEntity
.
setAlarmContent
(
String
.
format
(
"设备告警:%s设备:%s已离线,请注意检查!"
,
productEntity
.
getProductName
(),
deviceEntity
.
getDeviceName
()
+
":"
+
deviceEntity
.
getDeviceName
()));
...
...
device-manager/src/main/java/com/mortals/xhx/common/code/AlarmTypeEnum.java
View file @
d73d80d6
...
...
@@ -4,12 +4,15 @@ import java.util.LinkedHashMap;
import
java.util.Map
;
/**
* 告警类型,(0.离线)枚举类
*
* @author zxfei
*/
* 告警类型,(0.离线)枚举类
*
* @author zxfei
*/
public
enum
AlarmTypeEnum
{
离线
(
0
,
"离线"
);
离线
(
0
,
"离线"
),
在线
(
1
,
"在线"
),
缺纸
(
2
,
"缺纸"
),
;
private
Integer
value
;
private
String
desc
;
...
...
device-manager/src/main/java/com/mortals/xhx/module/device/model/DeviceAlarmInfoEntity.java
View file @
d73d80d6
...
...
@@ -4,6 +4,7 @@ import com.mortals.xhx.module.device.model.vo.DeviceAlarmInfoVo;
import
lombok.Data
;
import
java.util.Date
;
/**
* 设备告警日志实体对象
*
...
...
@@ -23,7 +24,7 @@ public class DeviceAlarmInfoEntity extends DeviceAlarmInfoVo {
*/
private
Long
alarmDevice
;
/**
* 告警类型,(0.离线)
* 告警类型,(0.离线
,1.在线,2.缺纸
)
*/
private
Integer
alarmType
;
/**
...
...
@@ -58,23 +59,25 @@ public class DeviceAlarmInfoEntity extends DeviceAlarmInfoVo {
* 设备名称
*/
private
String
deviceName
;
@Override
public
int
hashCode
()
{
return
this
.
get
Id
().
hashCode
();
return
this
.
get
AlarmDevice
().
hashCode
();
}
@Override
public
boolean
equals
(
Object
obj
)
{
if
(
obj
==
null
)
return
false
;
if
(
obj
instanceof
DeviceAlarmInfoEntity
)
{
DeviceAlarmInfoEntity
tmp
=
(
DeviceAlarmInfoEntity
)
obj
;
if
(
this
.
get
Id
()
==
tmp
.
getId
())
{
if
(
this
.
get
AlarmDevice
()
==
tmp
.
getAlarmDevice
())
{
return
true
;
}
}
return
false
;
}
public
void
initAttrValue
(){
public
void
initAttrValue
()
{
this
.
alarmTime
=
null
;
...
...
device-manager/src/main/java/com/mortals/xhx/module/device/model/DeviceEntity.java
View file @
d73d80d6
...
...
@@ -230,7 +230,7 @@ public class DeviceEntity extends DeviceVo {
this
.
homeUrl
=
""
;
this
.
deviceFirmId
=
null
;
this
.
deviceFirmId
=
1L
;
this
.
deviceFirmname
=
""
;
...
...
device-manager/src/main/java/com/mortals/xhx/module/device/model/vo/DeviceAlarmInfoVo.java
View file @
d73d80d6
package
com.mortals.xhx.module.device.model.vo
;
import
com.mortals.framework.model.BaseEntityLong
;
import
com.mortals.xhx.module.device.model.DeviceAlarmInfoEntity
;
import
lombok.Data
;
import
java.util.
ArrayList
;
import
java.util.
HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* 设备告警日志视图对象
*
* @author zxfei
* @date 2022-07-01
*/
* 设备告警日志视图对象
*
* @author zxfei
* @date 2022-07-01
*/
@Data
public
class
DeviceAlarmInfoVo
extends
BaseEntityLong
{
/** 开始 告警时间 */
/**
* 开始 告警时间
*/
private
String
alarmTimeStart
;
/** 结束 告警时间 */
/**
* 结束 告警时间
*/
private
String
alarmTimeEnd
;
private
Integer
deviceTotalCount
;
private
Integer
siteSize
;
private
Map
<
String
,
Long
>
siteDeviceCollect
;
private
Map
<
String
,
Long
>
siteDeviceAlarmCollect
;
private
Map
<
String
,
String
>
deviceConnTypeCollect
;
private
Map
<
String
,
String
>
deviceFirmCollect
;
private
int
todayAlarmInfoCount
;
private
long
todayAlarmDeviceCount
;
private
Map
<
String
,
String
>
alarmTypeCollect
;
private
Map
<
String
,
String
>
alarmLevelCollect
;
private
List
<
HashMap
<
String
,
Object
>>
deviceAlarmMapInfoList
;
}
\ No newline at end of file
device-manager/src/main/java/com/mortals/xhx/module/device/service/DeviceAlarmInfoService.java
View file @
d73d80d6
package
com.mortals.xhx.module.device.service
;
import
com.mortals.framework.common.Rest
;
import
com.mortals.framework.model.Context
;
import
com.mortals.framework.service.ICRUDService
;
import
com.mortals.xhx.module.device.model.DeviceAlarmInfoEntity
;
/**
* DeviceAlarmInfoService
*
* 设备告警日志 service接口
*
* @author zxfei
* @date 2022-06-27
*/
public
interface
DeviceAlarmInfoService
extends
ICRUDService
<
DeviceAlarmInfoEntity
,
Long
>{
* DeviceAlarmInfoService
* <p>
* 设备告警日志 service接口
*
* @author zxfei
* @date 2022-06-27
*/
public
interface
DeviceAlarmInfoService
extends
ICRUDService
<
DeviceAlarmInfoEntity
,
Long
>
{
Rest
<
DeviceAlarmInfoEntity
>
alarmStats
(
DeviceAlarmInfoEntity
deviceAlarmInfo
,
Context
context
);
}
\ No newline at end of file
device-manager/src/main/java/com/mortals/xhx/module/device/service/impl/DeviceAlarmInfoServiceImpl.java
View file @
d73d80d6
package
com.mortals.xhx.module.device.service.impl
;
import
org.springframework.stereotype.Service
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.util.NumberUtil
;
import
com.mortals.framework.common.Rest
;
import
com.mortals.framework.model.Context
;
import
com.mortals.framework.model.OrderCol
;
import
com.mortals.framework.service.impl.AbstractCRUDServiceImpl
;
import
com.mortals.xhx.common.code.AlarmLevelEnum
;
import
com.mortals.xhx.common.code.AlarmTypeEnum
;
import
com.mortals.xhx.common.code.DeviceSrcEnum
;
import
com.mortals.xhx.common.pdu.RespData
;
import
com.mortals.xhx.common.pdu.site.SitePdu
;
import
com.mortals.xhx.feign.site.ISiteFeign
;
import
com.mortals.xhx.module.device.dao.DeviceAlarmInfoDao
;
import
com.mortals.xhx.module.device.model.DeviceAlarmInfoEntity
;
import
com.mortals.xhx.module.device.model.DeviceAlarmInfoQuery
;
import
com.mortals.xhx.module.device.model.DeviceEntity
;
import
com.mortals.xhx.module.device.model.DeviceQuery
;
import
com.mortals.xhx.module.device.service.DeviceAlarmInfoService
;
import
com.mortals.xhx.module.device.service.DeviceService
;
import
com.mortals.xhx.module.firm.model.FirmEntity
;
import
com.mortals.xhx.module.firm.service.FirmService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.ObjectUtils
;
import
java.math.BigDecimal
;
import
java.util.*
;
import
java.util.stream.Collectors
;
import
static
java
.
math
.
BigDecimal
.
ROUND_HALF_DOWN
;
import
static
java
.
util
.
stream
.
Collectors
.
counting
;
import
static
java
.
util
.
stream
.
Collectors
.
groupingBy
;
/**
* DeviceAlarmInfoService
* 设备告警日志 service实现
*
* @author zxfei
* @date 2022-06-27
*/
* DeviceAlarmInfoService
* 设备告警日志 service实现
*
* @author zxfei
* @date 2022-06-27
*/
@Service
(
"deviceAlarmInfoService"
)
public
class
DeviceAlarmInfoServiceImpl
extends
AbstractCRUDServiceImpl
<
DeviceAlarmInfoDao
,
DeviceAlarmInfoEntity
,
Long
>
implements
DeviceAlarmInfoService
{
@Autowired
private
DeviceService
deviceService
;
@Autowired
private
ISiteFeign
siteFeign
;
@Autowired
private
FirmService
firmService
;
@Override
public
Rest
<
DeviceAlarmInfoEntity
>
alarmStats
(
DeviceAlarmInfoEntity
deviceAlarmInfo
,
Context
context
)
{
try
{
Rest
<
RespData
<
List
<
SitePdu
>>>
rest
=
siteFeign
.
list
(
new
SitePdu
());
Map
<
Long
,
SitePdu
>
siteMap
=
rest
.
getData
().
getData
().
stream
().
collect
(
Collectors
.
toMap
(
x
->
x
.
getId
(),
y
->
y
,
(
o
,
n
)
->
n
));
if
(
ObjectUtils
.
isEmpty
(
siteMap
))
{
return
Rest
.
fail
(
"获取站点列表异常!"
);
}
Map
<
Long
,
FirmEntity
>
FirmMap
=
firmService
.
findToMap
(
new
FirmEntity
(),
context
);
Long
siteId
=
deviceAlarmInfo
.
getSiteId
();
DeviceAlarmInfoQuery
deviceAlarmInfoQuery
=
new
DeviceAlarmInfoQuery
();
deviceAlarmInfoQuery
.
setAlarmTimeStart
(
DateUtil
.
today
());
deviceAlarmInfoQuery
.
setAlarmTimeEnd
(
DateUtil
.
today
());
List
<
OrderCol
>
orderCols
=
new
ArrayList
<>();
OrderCol
orderCol
=
new
OrderCol
();
orderCol
.
setColName
(
"alarmTime"
);
orderCol
.
setSortKind
(
OrderCol
.
DESCENDING
);
orderCols
.
add
(
orderCol
);
deviceAlarmInfoQuery
.
setOrderColList
(
orderCols
);
List
<
DeviceAlarmInfoEntity
>
deviceAlarmInfoList
=
this
.
find
(
deviceAlarmInfoQuery
);
//统计总设备数量
List
<
DeviceEntity
>
deviceList
=
deviceService
.
find
(
new
DeviceQuery
().
siteId
(
siteId
));
//设备总量
Integer
deviceTotalCount
=
deviceList
.
size
();
deviceAlarmInfo
.
setDeviceTotalCount
(
deviceTotalCount
);
//监控站点数量
int
siteSize
=
rest
.
getData
().
getData
().
size
();
deviceAlarmInfo
.
setSiteSize
(
siteSize
);
//分站点统计设备数量
Map
<
String
,
Long
>
siteDeviceCollect
=
deviceList
.
parallelStream
().
collect
(
groupingBy
(
x
->
x
.
getSiteName
(),
counting
()));
deviceAlarmInfo
.
setSiteDeviceCollect
(
siteDeviceCollect
);
//分站点统计设备今日告警数量
Map
<
String
,
Long
>
siteDeviceAlarmCollect
=
deviceAlarmInfoList
.
parallelStream
().
distinct
().
collect
(
groupingBy
(
x
->
x
.
getSiteId
(),
counting
()))
.
entrySet
().
stream
().
sorted
(
Map
.
Entry
.
comparingByValue
(
Comparator
.
reverseOrder
()))
.
collect
(
Collectors
.
toMap
(
x
->
siteMap
.
get
(
x
).
getSiteName
(),
Map
.
Entry
::
getValue
,
(
oldVal
,
newVal
)
->
oldVal
));
deviceAlarmInfo
.
setSiteDeviceAlarmCollect
(
siteDeviceAlarmCollect
);
//设备类型分布
Map
<
String
,
String
>
deviceConnTypeCollect
=
deviceList
.
parallelStream
().
collect
(
groupingBy
(
x
->
DeviceSrcEnum
.
getByValue
(
x
.
getDeviceSrc
()).
getDesc
(),
Collectors
.
collectingAndThen
(
counting
(),
y
->
NumberUtil
.
div
(
y
,
deviceTotalCount
).
multiply
(
new
BigDecimal
(
100
)).
setScale
(
2
,
ROUND_HALF_DOWN
).
toString
()
)));
deviceAlarmInfo
.
setDeviceConnTypeCollect
(
deviceConnTypeCollect
);
//设备厂商分布
Map
<
String
,
String
>
deviceFirmCollect
=
deviceList
.
parallelStream
().
collect
(
groupingBy
(
x
->
FirmMap
.
get
(
x
)
==
null
?
"未知厂商"
:
FirmMap
.
get
(
x
).
getFirmName
(),
Collectors
.
collectingAndThen
(
counting
(),
y
->
NumberUtil
.
div
(
y
,
deviceTotalCount
).
multiply
(
new
BigDecimal
(
100
)).
setScale
(
2
,
ROUND_HALF_DOWN
).
toString
()
)));
deviceAlarmInfo
.
setDeviceFirmCollect
(
deviceFirmCollect
);
//今日告警次数
int
todayAlarmInfoCount
=
deviceAlarmInfoList
.
size
();
deviceAlarmInfo
.
setTodayAlarmInfoCount
(
todayAlarmInfoCount
);
//今日告警设备数量
long
todayAlarmDeviceCount
=
deviceAlarmInfoList
.
parallelStream
().
distinct
().
count
();
deviceAlarmInfo
.
setTodayAlarmDeviceCount
(
todayAlarmDeviceCount
);
//告警类型分布
Map
<
String
,
String
>
alarmTypeCollect
=
deviceAlarmInfoList
.
parallelStream
().
collect
(
groupingBy
(
x
->
AlarmTypeEnum
.
getByValue
(
x
.
getAlarmType
()).
getDesc
(),
Collectors
.
collectingAndThen
(
counting
(),
y
->
NumberUtil
.
div
(
String
.
valueOf
(
y
),
String
.
valueOf
(
todayAlarmInfoCount
)).
multiply
(
new
BigDecimal
(
100
)).
setScale
(
2
,
ROUND_HALF_DOWN
).
toString
()
)));
deviceAlarmInfo
.
setAlarmTypeCollect
(
alarmTypeCollect
);
//告警等级分布
Map
<
String
,
String
>
alarmLevelCollect
=
deviceAlarmInfoList
.
parallelStream
().
collect
(
groupingBy
(
x
->
AlarmLevelEnum
.
getByValue
(
x
.
getAlarmLevel
()).
getDesc
(),
Collectors
.
collectingAndThen
(
counting
(),
y
->
NumberUtil
.
div
(
String
.
valueOf
(
y
),
String
.
valueOf
(
todayAlarmInfoCount
)).
multiply
(
new
BigDecimal
(
100
)).
setScale
(
2
,
ROUND_HALF_DOWN
).
toString
()
)));
deviceAlarmInfo
.
setAlarmLevelCollect
(
alarmLevelCollect
);
Map
<
Long
,
Long
>
deviceAlarmCountMap
=
deviceAlarmInfoList
.
parallelStream
().
collect
(
groupingBy
(
x
->
x
.
getAlarmDevice
(),
counting
()));
//最近的告警信息 选择前20条
List
<
HashMap
<
String
,
Object
>>
deviceAlarmMapInfoList
=
deviceAlarmInfoList
.
stream
().
limit
(
20
).
map
(
item
->
{
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"deviceName"
,
item
.
getDeviceName
());
map
.
put
(
"count"
,
deviceAlarmCountMap
.
getOrDefault
(
item
.
getAlarmDevice
(),
1L
));
map
.
put
(
"alarmTime"
,
item
.
getAlarmTime
());
map
.
put
(
"alarmType"
,
AlarmTypeEnum
.
getByValue
(
item
.
getAlarmType
()).
getDesc
());
return
map
;
}).
collect
(
Collectors
.
toList
());
deviceAlarmInfo
.
setDeviceAlarmMapInfoList
(
deviceAlarmMapInfoList
);
return
Rest
.
ok
(
deviceAlarmInfo
);
}
catch
(
Exception
e
)
{
log
.
error
(
"设备告警信息统计异常"
,
e
);
return
Rest
.
fail
(
e
.
getMessage
());
}
}
}
\ No newline at end of file
device-manager/src/main/java/com/mortals/xhx/module/device/service/impl/DeviceModuleServiceImpl.java
View file @
d73d80d6
...
...
@@ -2,27 +2,14 @@ package com.mortals.xhx.module.device.service.impl;
import
com.mortals.framework.exception.AppException
;
import
com.mortals.framework.model.Context
;
import
com.mortals.framework.model.PageInfo
;
import
com.mortals.framework.model.Result
;
import
com.mortals.xhx.module.alarm.model.AlarmConfigEntity
;
import
com.mortals.xhx.module.alarm.model.AlarmConfigQuery
;
import
com.mortals.xhx.module.device.model.DeviceEntity
;
import
com.mortals.xhx.module.device.model.DeviceModuleQuery
;
import
com.mortals.xhx.module.device.service.DeviceService
;
import
com.mortals.xhx.module.platform.model.PlatformEntity
;
import
com.mortals.xhx.module.platform.service.PlatformService
;
import
com.mortals.xhx.module.product.model.ProductEntity
;
import
com.mortals.xhx.module.product.service.ProductService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
com.mortals.framework.service.impl.AbstractCRUDServiceImpl
;
import
com.mortals.xhx.module.device.dao.DeviceModuleDao
;
import
com.mortals.xhx.module.device.model.DeviceModuleEntity
;
import
com.mortals.xhx.module.device.model.DeviceModuleQuery
;
import
com.mortals.xhx.module.device.service.DeviceModuleService
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.ObjectUtils
;
import
java.util.List
;
/**
* DeviceModuleService
* 设备模块信息 service实现
...
...
@@ -33,7 +20,6 @@ import java.util.List;
@Service
(
"deviceModuleService"
)
public
class
DeviceModuleServiceImpl
extends
AbstractCRUDServiceImpl
<
DeviceModuleDao
,
DeviceModuleEntity
,
Long
>
implements
DeviceModuleService
{
@Override
protected
void
validData
(
DeviceModuleEntity
entity
,
Context
context
)
throws
AppException
{
if
(
entity
.
newEntity
())
{
...
...
device-manager/src/main/java/com/mortals/xhx/module/device/service/impl/DeviceServiceImpl.java
View file @
d73d80d6
...
...
@@ -75,8 +75,6 @@ public class DeviceServiceImpl extends AbstractCRUDCacheServiceImpl<DeviceDao, D
private
ProductService
productService
;
@Autowired
private
PlatformService
platformService
;
// @Autowired
private
DefaultTbCoreConsumerService
consumerService
;
@Autowired
private
ISiteFeign
siteFeign
;
@Autowired
...
...
@@ -311,13 +309,13 @@ public class DeviceServiceImpl extends AbstractCRUDCacheServiceImpl<DeviceDao, D
Set
<
TopicPartitionInfo
>
set
=
new
HashSet
<>();
set
.
add
(
topicPartitionInfo
);
if
(
status
==
YesNoEnum
.
YES
.
getValue
())
{
/*
if (status == YesNoEnum.YES.getValue()) {
//开启
consumerService.getMainConsumer().subscribe(set);
} else {
//关闭
consumerService.getMainConsumer().unsubscribe(set);
}
}
*/
}
...
...
device-manager/src/main/java/com/mortals/xhx/module/device/web/DeviceAlarmInfoController.java
View file @
d73d80d6
package
com.mortals.xhx.module.device.web
;
import
com.mortals.framework.common.Rest
;
import
com.mortals.framework.exception.AppException
;
import
com.mortals.framework.model.Context
;
import
com.mortals.framework.model.OrderCol
;
...
...
@@ -10,6 +11,8 @@ import com.mortals.xhx.module.device.model.DeviceQuery;
import
com.mortals.xhx.module.device.service.DeviceAlarmInfoService
;
import
com.mortals.xhx.module.device.service.DeviceService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
...
...
@@ -61,7 +64,24 @@ public class DeviceAlarmInfoController extends BaseCRUDJsonBodyMappingController
model
.
put
(
"dangerCount"
,
collect
.
getOrDefault
(
0
,
0L
));
model
.
put
(
"subCount"
,
collect
.
getOrDefault
(
1
,
0L
));
model
.
put
(
"normalCount"
,
collect
.
getOrDefault
(
2
,
0L
));
return
super
.
doListAfter
(
query
,
model
,
context
);
}
/**
* 设备告警信息统计
*/
@PostMapping
(
value
=
"stats"
)
public
Rest
<
DeviceAlarmInfoEntity
>
alarmStats
(
@RequestBody
DeviceAlarmInfoEntity
deviceAlarmInfo
)
{
String
busiDesc
=
this
.
getModuleDesc
()
+
"设备告警统计"
;
try
{
Rest
<
DeviceAlarmInfoEntity
>
rest
=
this
.
service
.
alarmStats
(
deviceAlarmInfo
,
getContext
());
recordSysLog
(
request
,
busiDesc
+
" 【成功】"
);
return
rest
;
}
catch
(
Exception
e
)
{
log
.
error
(
"设备告警信息统计"
,
e
);
return
Rest
.
fail
(
super
.
convertException
(
e
));
}
}
}
\ No newline at end of file
device-manager/src/main/java/com/mortals/xhx/module/device/web/DeviceController.java
View file @
d73d80d6
...
...
@@ -346,8 +346,7 @@ public class DeviceController extends BaseCRUDJsonBodyMappingController<DeviceSe
*/
@PostMapping
(
value
=
"batchUpdateHall"
)
public
Rest
<
Void
>
batchUpdateHall
(
@RequestBody
DeviceEntity
deviceEntity
)
{
log
.
info
(
"批量设备重启"
,
deviceEntity
.
getDeviceCode
());
log
.
info
(
"批量设备重启:{}"
,
deviceEntity
.
getDeviceCode
());
String
busiDesc
=
this
.
getModuleDesc
()
+
"批量更新所属大厅"
;
Rest
<
Void
>
rest
=
Rest
.
ok
(
busiDesc
+
" 【成功】"
);
try
{
...
...
device-manager/src/main/java/com/mortals/xhx/module/sitestat/web/SitestatController.java
View file @
d73d80d6
package
com.mortals.xhx.module.sitestat.web
;
import
cn.hutool.core.util.StrUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.mortals.framework.common.Rest
;
import
com.mortals.framework.exception.AppException
;
import
com.mortals.framework.model.Context
;
import
com.mortals.framework.service.IAuthTokenService
;
import
com.mortals.framework.web.BaseCRUDJsonBodyMappingController
;
import
com.mortals.xhx.common.code.PlatformTypeEnum
;
import
com.mortals.xhx.common.code.YesNoEnum
;
import
com.mortals.xhx.common.pdu.RespData
;
import
com.mortals.xhx.common.pdu.site.SitePdu
;
import
com.mortals.xhx.common.pdu.user.UserPdu
;
import
com.mortals.xhx.feign.site.ISiteFeign
;
import
com.mortals.xhx.feign.user.IUserFeign
;
import
com.mortals.xhx.module.device.service.DeviceService
;
import
com.mortals.xhx.module.site.model.SiteEntity
;
import
com.mortals.xhx.module.site.model.SiteQuery
;
import
com.mortals.xhx.module.site.service.SiteService
;
...
...
@@ -28,11 +22,9 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
...
...
@@ -188,7 +180,6 @@ public class SitestatController extends BaseCRUDJsonBodyMappingController<Sitest
SiteEntity
siteEntity
=
siteService
.
get
(
siteId
,
getContext
());
if
(!
ObjectUtils
.
isEmpty
(
siteEntity
))
{
jsonObject
.
put
(
KEY_RESULT_DATA
,
siteEntity
);
jsonObject
.
put
(
KEY_RESULT_MSG
,
busiDesc
+
"成功!"
);
}
}
else
{
...
...
device-manager/src/test/java/com/mortals/httpclient/http-client.env.json
View file @
d73d80d6
...
...
@@ -8,7 +8,7 @@
"baseLogin"
:
"http://192.168.0.98:11078/base"
},
"test"
:
{
"baseUrl"
:
"http://192.168.0.98:110
91
/m"
,
"baseUrl"
:
"http://192.168.0.98:110
78
/m"
,
"baseLogin"
:
"http://192.168.0.98:11078/base"
},
"portal"
:
{
...
...
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