Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
YeeAmosFireAutoSysRoot
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
station
YeeAmosFireAutoSysRoot
Commits
a505c4dd
Commit
a505c4dd
authored
May 20, 2020
by
maoying
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改数据存储,将报警故障和实时监测数据分开存库
parent
fc083344
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
218 additions
and
89 deletions
+218
-89
Alarm.java
.../src/main/java/com/yeejoin/amos/fas/dao/entity/Alarm.java
+138
-53
RiskSourceController.java
...in/amos/fas/business/controller/RiskSourceController.java
+1
-6
IAlarmDao.java
...m/yeejoin/amos/fas/business/dao/repository/IAlarmDao.java
+1
-0
RiskSourceServiceImpl.java
...amos/fas/business/service/impl/RiskSourceServiceImpl.java
+50
-30
fas-2.0.1.xml
...utoSysStart/src/main/resources/db/changelog/fas-2.0.1.xml
+28
-0
No files found.
YeeAmosFireAutoSysCommon/src/main/java/com/yeejoin/amos/fas/dao/entity/Alarm.java
View file @
a505c4dd
...
...
@@ -18,53 +18,66 @@ import java.util.Date;
@NamedQuery
(
name
=
"Alarm.findAll"
,
query
=
"SELECT a FROM Alarm a"
)
public
class
Alarm
extends
BasicEntity
{
private
static
final
long
serialVersionUID
=
1L
;
@Temporal
(
TemporalType
.
TIMESTAMP
)
@Column
(
name
=
"alarm_time"
)
private
Date
alarmTime
;
/**
*
指标或者报警信息
*
消防设备id
*/
@Lob
private
String
metric
;
private
String
code
;
private
Long
fireEquipmentId
;
/**
* 消防设备名称
*/
private
String
fireEquipmentName
;
/**
* 消防设备编码
*/
private
String
fireEquipmentCode
;
/**
* 消防点位id
*/
private
Long
fireEquipmentPointId
;
/**
* 消防点位名称
*/
private
String
fireEquipmentPointName
;
/**
* 消防点位编码
*/
private
String
fireEquipmentPointCode
;
/**
*
报警类别
*
消防点位上传值
*/
@Column
(
name
=
"alarm_type"
)
private
String
alarmType
;
private
String
fireEquipmentPointValue
;
/**
* 发生频率
*/
private
int
frequency
=
1
;
/**
* 告警状态
*/
private
Boolean
status
=
true
;
/**
* 报警类型:alarm_type_fire(火灾报警)/alarm_type_trouble(故障告警)
*/
private
String
type
;
/**
* 创建时间
*/
private
Date
createDate
=
new
Date
();
/**
* 更新时间
*/
private
Date
updateDate
=
new
Date
();
/**
* 告警恢复时间
*/
private
Date
recoveryDate
;
@Column
(
name
=
"fire_equipment_id"
)
private
Long
fireEquipmentId
;
@Column
(
name
=
"org_code"
)
private
String
orgCode
;
private
String
remark
;
public
Alarm
()
{
}
public
Date
getAlarmTime
()
{
return
this
.
alarmTime
;
}
public
void
setAlarmTime
(
Date
alarmTime
)
{
this
.
alarmTime
=
alarmTime
;
}
public
String
getCode
()
{
return
this
.
code
;
}
public
void
setCode
(
String
code
)
{
this
.
code
=
code
;
}
public
Long
getFireEquipmentId
()
{
return
this
.
fireEquipmentId
;
}
...
...
@@ -81,28 +94,99 @@ public class Alarm extends BasicEntity {
this
.
orgCode
=
orgCode
;
}
public
String
get
Remark
()
{
return
this
.
remark
;
}
public
String
get
FireEquipmentName
()
{
return
fireEquipmentName
;
}
public
void
setRemark
(
String
remark
)
{
this
.
remark
=
remark
;
}
public
void
setFireEquipmentName
(
String
fireEquipmentName
)
{
this
.
fireEquipmentName
=
fireEquipmentName
;
}
public
String
getMetric
()
{
return
metric
;
}
public
String
getFireEquipmentCode
()
{
return
fireEquipmentCode
;
}
public
void
setMetric
(
String
metric
)
{
this
.
metric
=
metric
;
}
public
void
setFireEquipmentCode
(
String
fireEquipmentCode
)
{
this
.
fireEquipmentCode
=
fireEquipmentCode
;
}
public
String
getAlarmType
()
{
return
alarmType
;
}
public
Long
getFireEquipmentPointId
()
{
return
fireEquipmentPointId
;
}
public
void
setAlarmType
(
String
alarmType
)
{
this
.
alarmType
=
alarmType
;
}
public
void
setFireEquipmentPointId
(
Long
fireEquipmentPointId
)
{
this
.
fireEquipmentPointId
=
fireEquipmentPointId
;
}
public
String
getFireEquipmentPointName
()
{
return
fireEquipmentPointName
;
}
public
void
setFireEquipmentPointName
(
String
fireEquipmentPointName
)
{
this
.
fireEquipmentPointName
=
fireEquipmentPointName
;
}
public
String
getFireEquipmentPointCode
()
{
return
fireEquipmentPointCode
;
}
public
void
setFireEquipmentPointCode
(
String
fireEquipmentPointCode
)
{
this
.
fireEquipmentPointCode
=
fireEquipmentPointCode
;
}
public
String
getFireEquipmentPointValue
()
{
return
fireEquipmentPointValue
;
}
public
void
setFireEquipmentPointValue
(
String
fireEquipmentPointValue
)
{
this
.
fireEquipmentPointValue
=
fireEquipmentPointValue
;
}
public
int
getFrequency
()
{
return
frequency
;
}
public
void
setFrequency
(
int
frequency
)
{
this
.
frequency
=
frequency
;
}
public
Boolean
getStatus
()
{
return
status
;
}
public
void
setStatus
(
Boolean
status
)
{
this
.
status
=
status
;
}
public
String
getType
()
{
return
type
;
}
public
void
setType
(
String
type
)
{
this
.
type
=
type
;
}
public
Date
getCreateDate
()
{
return
createDate
;
}
public
void
setCreateDate
(
Date
createDate
)
{
this
.
createDate
=
createDate
;
}
public
Date
getUpdateDate
()
{
return
updateDate
;
}
public
void
setUpdateDate
(
Date
updateDate
)
{
this
.
updateDate
=
updateDate
;
}
public
Date
getRecoveryDate
()
{
return
recoveryDate
;
}
public
void
setRecoveryDate
(
Date
recoveryDate
)
{
this
.
recoveryDate
=
recoveryDate
;
}
}
\ No newline at end of file
YeeAmosFireAutoSysService/src/main/java/com/yeejoin/amos/fas/business/controller/RiskSourceController.java
View file @
a505c4dd
...
...
@@ -513,12 +513,7 @@ public class RiskSourceController extends BaseController {
return
CommonResponseUtil
.
success
(
riskSourceService
.
bindFireEquiment
(
fmeaBindParam
));
}
// @ApiOperation(httpMethod = "DELETE", value = "移除消防设备绑定关系", notes = "移除消防设备绑定关系")
// @RequestMapping(value = "/fireequiment/relation/{ids}", produces = "application/json;charset=UTF-8", method = RequestMethod.DELETE)
// public CommonResponse removeFireEquiment(@PathVariable("ids") String ids) throws Exception {
// String[] idArray = ids.split(",");
// return CommonResponseUtil.success(this.riskSourceService.removeBoundRelation(idArray));
// }
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"查询绑定关系设备"
,
notes
=
"查询绑定关系包含已绑定和未绑定"
)
@RequestMapping
(
value
=
"/fireequiment/relation/all"
,
produces
=
"application/json;charset=UTF-8"
,
method
=
RequestMethod
.
GET
)
...
...
YeeAmosFireAutoSysService/src/main/java/com/yeejoin/amos/fas/business/dao/repository/IAlarmDao.java
View file @
a505c4dd
...
...
@@ -7,4 +7,5 @@ import com.yeejoin.amos.fas.dao.entity.Alarm;
@Repository
(
"iAlarmDao"
)
public
interface
IAlarmDao
extends
BaseDao
<
Alarm
,
Long
>
{
Alarm
findByFireEquipmentCodeAndStatusTrue
(
String
code
);
}
YeeAmosFireAutoSysService/src/main/java/com/yeejoin/amos/fas/business/service/impl/RiskSourceServiceImpl.java
View file @
a505c4dd
...
...
@@ -57,6 +57,7 @@ import com.yeejoin.amos.fas.business.dao.mapper.FmeaPointInputitemMapper;
import
com.yeejoin.amos.fas.business.dao.mapper.ImpAndFireEquipMapper
;
import
com.yeejoin.amos.fas.business.dao.mapper.RiskSourceMapper
;
import
com.yeejoin.amos.fas.business.dao.mongo.EquipCommunicationDao
;
import
com.yeejoin.amos.fas.business.dao.repository.IAlarmDao
;
import
com.yeejoin.amos.fas.business.dao.repository.IContingencyOriginalDataDao
;
import
com.yeejoin.amos.fas.business.dao.repository.IDictDao
;
import
com.yeejoin.amos.fas.business.dao.repository.IEvaluationModelDao
;
...
...
@@ -97,6 +98,7 @@ import com.yeejoin.amos.fas.common.enums.DataRefreshTypeEum;
import
com.yeejoin.amos.fas.core.common.request.CommonPageable
;
import
com.yeejoin.amos.fas.core.common.response.RegionTreeResponse
;
import
com.yeejoin.amos.fas.core.common.response.RiskSourceTreeResponse
;
import
com.yeejoin.amos.fas.dao.entity.Alarm
;
import
com.yeejoin.amos.fas.dao.entity.ContingencyOriginalData
;
import
com.yeejoin.amos.fas.dao.entity.Dict
;
import
com.yeejoin.amos.fas.dao.entity.Equipment
;
...
...
@@ -215,6 +217,9 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
@Autowired
private
FmeaPointInputitemMapper
fmeaPointInputitemMapper
;
@Autowired
private
IAlarmDao
iAlarmDao
;
public
static
String
cacheKeyForCanBeRunning
()
{
return
Redis
.
genKey
(
CacheType
.
ERASABLE
.
name
(),
"CONTINGENCYRUNING"
);
...
...
@@ -789,7 +794,7 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
deviceData
.
setCode
(
fireEquipment
.
getCode
());
equipment
=
impAndFireEquipMapper
.
queryImpEqumtByFireEquipmt
(
fireEquipmentPoint
.
getFireEquipmentId
());
//报警数据存库
saveFireEquipmentData
(
fireEquipmentPoint
,
deviceData
,
fireEquipmentPointType
);
saveFireEquipmentData
(
fireEquipmentPoint
,
fireEquipment
,
deviceData
,
fireEquipmentPointType
);
List
<
AlarmParam
>
list
=
new
ArrayList
<>();
list
.
add
(
deviceData
);
//保存到mongo
...
...
@@ -865,35 +870,50 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
}
private
void
saveFireEquipmentData
(
FireEquipmentPoint
fireEquipmentPoint
,
AlarmParam
deviceData
,
String
fireEquipmentPointType
)
{
FireEquipmentData
fireEquipmentData
=
new
FireEquipmentData
();
fireEquipmentData
.
setEqPointCode
(
deviceData
.
getPointCode
());
fireEquipmentData
.
seteValue
(
deviceData
.
getState
());
fireEquipmentData
.
setInformationAddress
(
deviceData
.
getInformationAddress
());
fireEquipmentData
.
setSoe
(
deviceData
.
getSoe
());
fireEquipmentData
.
setIsInvalid
(
deviceData
.
getIsInvalid
());
fireEquipmentData
.
setEqPointName
(
fireEquipmentPoint
.
getName
());
fireEquipmentData
.
setEqPointUnit
(
fireEquipmentPoint
.
getUnit
());
fireEquipmentData
.
setFireEquipmentPointId
(
fireEquipmentPoint
.
getId
());
fireEquipmentData
.
setFireEquipmentId
(
fireEquipmentPoint
.
getFireEquipmentId
());
if
(!
"alarm_type_fire"
.
equals
(
fireEquipmentPointType
))
{
fireEquipmentData
.
setType
(
"monitor"
);
}
iFireEquipmentDataDao
.
save
(
fireEquipmentData
);
if
(!
"alarm_type_fire"
.
equals
(
fireEquipmentPointType
))
{
Map
<
String
,
Object
>
content
=
new
HashMap
<>();
content
.
put
(
"id"
,
fireEquipmentData
.
getId
());
content
.
put
(
"label"
,
fireEquipmentData
.
getEqPointName
());
content
.
put
(
"changeDate"
,
fireEquipmentData
.
getCreateDate
());
Optional
<
FireEquipment
>
fireEquipment
=
iFireEquipmentDao
.
findById
(
fireEquipmentPoint
.
getFireEquipmentId
());
if
(
fireEquipment
.
isPresent
())
{
content
.
put
(
"orgCode"
,
fireEquipment
.
get
().
getOrgCode
());
}
else
{
log
.
info
(
fireEquipmentPoint
.
getFireEquipmentId
()
+
"设备不存在!!!"
);
}
iDataRefreshService
.
sendRefreshDataWithArea
(
DataRefreshTypeEum
.
monitor
.
getCode
(),
content
);
}
private
void
saveFireEquipmentData
(
FireEquipmentPoint
fireEquipmentPoint
,
FireEquipment
fireEquipment
,
AlarmParam
deviceData
,
String
fireEquipmentPointType
)
{
if
(
"alarm_type_fire"
.
equals
(
fireEquipmentPointType
)
||
"alarm_type_trouble"
.
equals
(
fireEquipmentPointType
)){
Alarm
alarm
=
iAlarmDao
.
findByFireEquipmentCodeAndStatusTrue
(
deviceData
.
getPointCode
());
if
(
alarm
!=
null
){
if
(
"false"
.
equals
(
deviceData
.
getState
())){
alarm
.
setRecoveryDate
(
new
Date
());
alarm
.
setStatus
(
false
);
}
else
{
alarm
.
setFrequency
((
alarm
.
getFrequency
()+
1
));
alarm
.
setUpdateDate
(
new
Date
());
}
}
else
{
alarm
=
new
Alarm
();
alarm
.
setFireEquipmentCode
(
fireEquipment
.
getCode
());
alarm
.
setFireEquipmentId
(
fireEquipment
.
getId
());
alarm
.
setFireEquipmentName
(
fireEquipment
.
getName
());
alarm
.
setFireEquipmentPointCode
(
fireEquipmentPoint
.
getCode
());
alarm
.
setFireEquipmentPointId
(
fireEquipmentPoint
.
getId
());
alarm
.
setFireEquipmentPointName
(
fireEquipmentPoint
.
getName
());
alarm
.
setFireEquipmentPointValue
(
deviceData
.
getState
());
alarm
.
setOrgCode
(
fireEquipment
.
getOrgCode
());
alarm
.
setType
(
fireEquipmentPointType
);
}
iAlarmDao
.
save
(
alarm
);
}
else
{
FireEquipmentData
fireEquipmentData
=
new
FireEquipmentData
();
fireEquipmentData
.
setEqPointCode
(
deviceData
.
getPointCode
());
fireEquipmentData
.
seteValue
(
deviceData
.
getState
());
fireEquipmentData
.
setInformationAddress
(
deviceData
.
getInformationAddress
());
fireEquipmentData
.
setSoe
(
deviceData
.
getSoe
());
fireEquipmentData
.
setIsInvalid
(
deviceData
.
getIsInvalid
());
fireEquipmentData
.
setEqPointName
(
fireEquipmentPoint
.
getName
());
fireEquipmentData
.
setEqPointUnit
(
fireEquipmentPoint
.
getUnit
());
fireEquipmentData
.
setFireEquipmentPointId
(
fireEquipmentPoint
.
getId
());
fireEquipmentData
.
setFireEquipmentId
(
fireEquipmentPoint
.
getFireEquipmentId
());
fireEquipmentData
.
setType
(
"monitor"
);
Map
<
String
,
Object
>
content
=
new
HashMap
<>();
content
.
put
(
"id"
,
fireEquipmentData
.
getId
());
content
.
put
(
"label"
,
fireEquipmentData
.
getEqPointName
());
content
.
put
(
"changeDate"
,
fireEquipmentData
.
getCreateDate
());
content
.
put
(
"orgCode"
,
fireEquipment
.
getOrgCode
());
iDataRefreshService
.
sendRefreshDataWithArea
(
DataRefreshTypeEum
.
monitor
.
getCode
(),
content
);
}
}
@Override
...
...
YeeAmosFireAutoSysStart/src/main/resources/db/changelog/fas-2.0.1.xml
View file @
a505c4dd
...
...
@@ -240,4 +240,31 @@
add COLUMN `flicker_frequency` int(11) DEFAULT 0 COMMENT '闪烁频率' after `status`;
</sql>
</changeSet>
<changeSet
author=
"maoying"
id=
"1589444792911-1"
>
<preConditions
onFail=
"MARK_RAN"
>
<tableExists
tableName=
"f_alarm"
/>
</preConditions>
<comment>
create table f_alarm
</comment>
<sql>
DROP TABLE IF EXISTS f_alarm;
CREATE TABLE `f_alarm` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`org_code` varchar(100) NOT NULL COMMENT '机构编号',
`fire_equipment_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '消防设备id',
`fire_equipment_name` varchar(255) NOT NULL COMMENT '设备名称',
`fire_equpment_point_id` bigint(20) NOT NULL COMMENT '消防点位id',
`fire_equpment_point_code` varchar(255) NOT NULL COMMENT '消防点位名称',
`fire_equipment_point_name` varchar(255) NOT NULL,
`fire_equipment_point_value` varchar(500) DEFAULT NULL COMMENT '报警值',
`frequency` int(10) NOT NULL DEFAULT '1' COMMENT '发生频次',
`status` bit(1) DEFAULT b'1' COMMENT '报警状态:1报警0恢复',
`type` varchar(50) NOT NULL COMMENT '报警类型:alarm_type_fire(火灾报警)/alarm_type_trouble(故障告警)',
`create_date` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_date` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`recovery_date` datetime DEFAULT NULL COMMENT '告警恢复时间',
PRIMARY KEY (`id`),
UNIQUE KEY `type_index` (`type`) USING HASH
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='报警信息表';
</sql>
</changeSet>
</databaseChangeLog>
\ 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