Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
B
basic-api-boot
概览
概览
详情
活动
周期分析
版本库
存储库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Basic
basic-api-boot
Commits
52704c34
提交
52704c34
authored
5月 16, 2022
作者:
涂茂林
浏览文件
操作
浏览文件
下载
差异文件
合并分支 'merge_dev' 到 'dev_tml'
Merge dev 查看合并请求 chemical-kesai/kshg-api!29
上级
91d4643d
365ce3d6
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
95 个修改的文件
包含
1262 行增加
和
255 行删除
+1262
-255
build.gradle
app/build.gradle
+3
-1
District.java
...rc/main/java/com/yiring/app/domain/district/District.java
+9
-0
KeyAlarm.java
app/src/main/java/com/yiring/app/domain/key/KeyAlarm.java
+26
-5
KeyAlarmLog.java
app/src/main/java/com/yiring/app/domain/key/KeyAlarmLog.java
+58
-0
KeyAlarmLogRepository.java
...java/com/yiring/app/domain/key/KeyAlarmLogRepository.java
+2
-2
KeyAlarmRule.java
...src/main/java/com/yiring/app/domain/key/KeyAlarmRule.java
+3
-8
KeyAlarmRuleRepository.java
...ava/com/yiring/app/domain/key/KeyAlarmRuleRepository.java
+17
-0
LocationAlarmRule.java
...ava/com/yiring/app/domain/location/LocationAlarmRule.java
+1
-1
LocationFenceRepository.java
...m/yiring/app/domain/location/LocationFenceRepository.java
+7
-3
LocationLog.java
...main/java/com/yiring/app/domain/location/LocationLog.java
+3
-0
LocationTag.java
...main/java/com/yiring/app/domain/location/LocationTag.java
+4
-16
LocationTurnover.java
...java/com/yiring/app/domain/location/LocationTurnover.java
+5
-0
KeyAlarmExportExcel.java
...in/java/com/yiring/app/excel/key/KeyAlarmExportExcel.java
+65
-0
KeyAlarmRuleExportExcel.java
...ava/com/yiring/app/excel/key/KeyAlarmRuleExportExcel.java
+7
-7
UserImportExcel.java
.../main/java/com/yiring/app/excel/user/UserImportExcel.java
+2
-5
MockPositionMessageJob.java
.../main/java/com/yiring/app/job/MockPositionMessageJob.java
+1
-1
AlarmConditionParam.java
.../java/com/yiring/app/param/alarm/AlarmConditionParam.java
+2
-1
AlarmTypeAddParam.java
...in/java/com/yiring/app/param/alarm/AlarmTypeAddParam.java
+2
-1
AlarmTypeModifyParam.java
...java/com/yiring/app/param/alarm/AlarmTypeModifyParam.java
+2
-1
HistoryRouteConditionParam.java
...pp/param/analysis/history/HistoryRouteConditionParam.java
+2
-1
DistrictAddParam.java
.../java/com/yiring/app/param/district/DistrictAddParam.java
+1
-1
DistrictModifyParam.java
...va/com/yiring/app/param/district/DistrictModifyParam.java
+1
-1
KeyAlarmAddParam.java
.../main/java/com/yiring/app/param/key/KeyAlarmAddParam.java
+63
-0
KeyAlarmLogFindParam.java
...n/java/com/yiring/app/param/key/KeyAlarmLogFindParam.java
+38
-0
KeyAlarmRuleAddParam.java
...n/java/com/yiring/app/param/key/KeyAlarmRuleAddParam.java
+2
-2
KeyAlarmRuleExportParam.java
...ava/com/yiring/app/param/key/KeyAlarmRuleExportParam.java
+2
-2
KeyAlarmRuleModifyParam.java
...ava/com/yiring/app/param/key/KeyAlarmRuleModifyParam.java
+2
-2
KeyAlarmRulePageParam.java
.../java/com/yiring/app/param/key/KeyAlarmRulePageParam.java
+2
-2
LocationBeaconAddParam.java
...ing/app/param/location/beacon/LocationBeaconAddParam.java
+8
-3
LocationFenceAddParam.java
...iring/app/param/location/fence/LocationFenceAddParam.java
+2
-1
LocationFenceConditionParam.java
...app/param/location/fence/LocationFenceConditionParam.java
+2
-1
LocationFenceModifyParam.java
...ng/app/param/location/fence/LocationFenceModifyParam.java
+2
-1
LocationFenceRuleAddParam.java
...ng/app/param/location/rule/LocationFenceRuleAddParam.java
+2
-1
LocationFenceRuleModifyParam.java
...app/param/location/rule/LocationFenceRuleModifyParam.java
+2
-1
RuleParam.java
...in/java/com/yiring/app/param/location/rule/RuleParam.java
+2
-1
BroadcastAudioService.java
...m/yiring/app/service/broadcast/BroadcastAudioService.java
+9
-0
BroadcastAudioServiceImpl.java
...app/service/broadcast/impl/BroadcastAudioServiceImpl.java
+48
-2
DepartmentServiceImpl.java
...m/yiring/app/service/dept/impl/DepartmentServiceImpl.java
+14
-11
KeyAlarmLogService.java
...n/java/com/yiring/app/service/key/KeyAlarmLogService.java
+24
-0
KeyAlarmRuleService.java
.../java/com/yiring/app/service/key/KeyAlarmRuleService.java
+15
-15
KeyAlarmService.java
...main/java/com/yiring/app/service/key/KeyAlarmService.java
+8
-0
KeyAlarmLogServiceImpl.java
...m/yiring/app/service/key/impl/KeyAlarmLogServiceImpl.java
+78
-0
KeyAlarmRuleServiceImpl.java
.../yiring/app/service/key/impl/KeyAlarmRuleServiceImpl.java
+0
-0
KeyAlarmServiceImpl.java
.../com/yiring/app/service/key/impl/KeyAlarmServiceImpl.java
+105
-7
PositionMessageServiceImpl.java
.../app/service/message/impl/PositionMessageServiceImpl.java
+90
-10
UserAppServiceImpl.java
.../com/yiring/app/service/user/impl/UserAppServiceImpl.java
+2
-11
ZipUtils.java
app/src/main/java/com/yiring/app/util/ZipUtils.java
+211
-0
AlarmTypeVo.java
app/src/main/java/com/yiring/app/vo/alarm/AlarmTypeVo.java
+1
-1
HistoryRouteVo.java
...va/com/yiring/app/vo/analysis/history/HistoryRouteVo.java
+2
-1
DistrictVo.java
app/src/main/java/com/yiring/app/vo/district/DistrictVo.java
+1
-1
KeyAlarmLogVo.java
app/src/main/java/com/yiring/app/vo/key/KeyAlarmLogVo.java
+68
-0
KeyAlarmRuleVo.java
app/src/main/java/com/yiring/app/vo/key/KeyAlarmRuleVo.java
+10
-10
LocationFenceVo.java
...ava/com/yiring/app/vo/location/fence/LocationFenceVo.java
+2
-1
LocationFenceRuleVo.java
.../com/yiring/app/vo/location/rule/LocationFenceRuleVo.java
+2
-1
RuleVo.java
...src/main/java/com/yiring/app/vo/location/rule/RuleVo.java
+2
-1
AccidentSpotVo.java
...main/java/com/yiring/app/vo/rehearsal/AccidentSpotVo.java
+2
-1
ExampleController.java
app/src/main/java/com/yiring/app/web/ExampleController.java
+6
-3
AlarmTypeController.java
...in/java/com/yiring/app/web/alarm/AlarmTypeController.java
+3
-3
HistoryRouteController.java
...ring/app/web/analysis/history/HistoryRouteController.java
+3
-1
AppletUserController.java
...java/com/yiring/app/web/appUser/AppletUserController.java
+3
-3
BroadcastAudioController.java
...om/yiring/app/web/broadcast/BroadcastAudioController.java
+9
-5
BroadcastController.java
...ava/com/yiring/app/web/broadcast/BroadcastController.java
+3
-3
DepartmentController.java
...in/java/com/yiring/app/web/dept/DepartmentController.java
+4
-4
DictController.java
...src/main/java/com/yiring/app/web/dict/DictController.java
+3
-3
DictTypeController.java
...main/java/com/yiring/app/web/dict/DictTypeController.java
+2
-3
DistrictController.java
.../java/com/yiring/app/web/district/DistrictController.java
+3
-3
IconController.java
...src/main/java/com/yiring/app/web/icon/IconController.java
+3
-3
KeyAlarmController.java
.../main/java/com/yiring/app/web/key/KeyAlarmController.java
+9
-3
KeyAlarmLogController.java
...in/java/com/yiring/app/web/key/KeyAlarmLogController.java
+40
-0
KeyAlarmRuleController.java
...n/java/com/yiring/app/web/key/KeyAlarmRuleController.java
+19
-20
LocationBeaconController.java
...ing/app/web/location/beacon/LocationBeaconController.java
+2
-3
LocationFenceController.java
...iring/app/web/location/fence/LocationFenceController.java
+5
-5
LocationAlarmRuleController.java
...ng/app/web/location/rule/LocationAlarmRuleController.java
+3
-3
LocationFenceRuleController.java
...ng/app/web/location/rule/LocationFenceRuleController.java
+3
-3
LocationTagController.java
...om/yiring/app/web/location/tag/LocationTagController.java
+2
-3
LocationTagTypeController.java
...iring/app/web/location/tag/LocationTagTypeController.java
+2
-3
MapController.java
app/src/main/java/com/yiring/app/web/map/MapController.java
+4
-5
PostController.java
...src/main/java/com/yiring/app/web/post/PostController.java
+2
-3
AccidentSpotController.java
.../com/yiring/app/web/rehearsal/AccidentSpotController.java
+2
-1
EvacuationZoneController.java
...om/yiring/app/web/rehearsal/EvacuationZoneController.java
+5
-1
RehearsalPlanController.java
...com/yiring/app/web/rehearsal/RehearsalPlanController.java
+7
-3
UserAppController.java
.../main/java/com/yiring/app/web/user/UserAppController.java
+4
-2
VideoController.java
...c/main/java/com/yiring/app/web/video/VideoController.java
+2
-1
CarController.java
...c/main/java/com/yiring/app/web/visitor/CarController.java
+3
-2
InvitationController.java
...java/com/yiring/app/web/visitor/InvitationController.java
+2
-1
VisitorController.java
...in/java/com/yiring/app/web/visitor/VisitorController.java
+2
-1
build.gradle
basic-auth/build.gradle
+2
-2
UserService.java
...c/main/java/com/yiring/auth/service/user/UserService.java
+8
-0
UserServiceImpl.java
...va/com/yiring/auth/service/user/impl/UserServiceImpl.java
+17
-0
AuthController.java
...rc/main/java/com/yiring/auth/web/auth/AuthController.java
+4
-1
PermissionController.java
.../com/yiring/auth/web/permission/PermissionController.java
+4
-1
RoleController.java
...rc/main/java/com/yiring/auth/web/role/RoleController.java
+4
-1
UserController.java
...rc/main/java/com/yiring/auth/web/user/UserController.java
+10
-1
build.gradle
basic-common/minio/build.gradle
+2
-2
MinioController.java
.../src/main/java/com/yiring/common/web/MinioController.java
+5
-5
没有找到文件。
app/build.gradle
浏览文件 @
52704c34
...
...
@@ -36,7 +36,7 @@ dependencies {
// Optional: Doc
implementation
project
(
":basic-common:doc"
)
implementation
"
io.swagger:swagger-annotations:${swaggerAnnotations
Version}"
implementation
"
com.github.xiaoymin:knife4j-spring-boot-starter:${knife4j
Version}"
// Optional: Auth
implementation
project
(
":basic-auth"
)
...
...
@@ -78,4 +78,6 @@ dependencies {
// xxl-job
implementation
"com.xuxueli:xxl-job-core:${xxlJobVersion}"
// minio
implementation
"io.minio:minio:${minioVersion}"
}
app/src/main/java/com/yiring/app/domain/district/District.java
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
domain
.
district
;
import
com.yiring.app.domain.location.LocationTag
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
import
java.util.HashSet
;
import
java.util.Set
;
import
javax.persistence.*
;
import
lombok.*
;
import
lombok.experimental.FieldNameConstants
;
...
...
@@ -75,4 +78,10 @@ public class District implements Serializable {
@Comment
(
value
=
"是否删除"
)
@Column
(
nullable
=
false
)
Boolean
deleted
;
@ToString
.
Exclude
@Comment
(
"区域中的标签集合"
)
@Builder
.
Default
@ManyToMany
(
fetch
=
FetchType
.
LAZY
)
Set
<
LocationTag
>
tags
=
new
HashSet
<>(
0
);
}
app/src/main/java/com/yiring/app/domain/key/KeyAlarm.java
浏览文件 @
52704c34
...
...
@@ -6,14 +6,15 @@ import com.yiring.auth.domain.user.User;
import
com.yiring.common.domain.BasicEntity
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
java
x.persistence.Entity
;
import
java
x.persistence.JoinColumn
;
import
java
x.persistence.ManyToOne
;
import
javax.persistence.
Table
;
import
java
.math.BigDecimal
;
import
java
.util.HashSet
;
import
java
.util.Set
;
import
javax.persistence.
*
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
import
lombok.experimental.FieldNameConstants
;
import
org.hibernate.annotations.Comment
;
import
org.locationtech.jts.geom.Point
;
/**
*
...
...
@@ -32,7 +33,7 @@ import org.hibernate.annotations.Comment;
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
@Entity
@Table
(
name
=
"BS_KEY_ALARM"
)
@Comment
(
"按键报警
规则
"
)
@Comment
(
"按键报警"
)
public
class
KeyAlarm
extends
BasicEntity
implements
Serializable
{
@Serial
...
...
@@ -47,6 +48,26 @@ public class KeyAlarm extends BasicEntity implements Serializable {
@Comment
(
"负责人"
)
User
leader
;
@Comment
(
"标签编号"
)
String
code
;
@Comment
(
"x"
)
BigDecimal
x
;
@Comment
(
"y"
)
BigDecimal
y
;
@Comment
(
"z"
)
BigDecimal
z
;
@Comment
(
"坐标点信息"
)
Point
point
;
@Comment
(
"报警状态"
)
Boolean
enable
;
@Builder
.
Default
@OneToMany
(
mappedBy
=
"keyAlarm"
)
@Comment
(
"推送消息记录"
)
Set
<
KeyAlarmLog
>
rules
=
new
HashSet
<>(
0
);
}
app/src/main/java/com/yiring/app/domain/key/KeyAlarmLog.java
0 → 100644
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
domain
.
key
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.yiring.auth.domain.user.User
;
import
com.yiring.common.domain.BasicEntity
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
javax.persistence.Entity
;
import
javax.persistence.JoinColumn
;
import
javax.persistence.ManyToOne
;
import
javax.persistence.Table
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
import
lombok.experimental.FieldNameConstants
;
import
org.hibernate.annotations.Comment
;
/**
* 报警规则推送记录
*
* @author LJ-2204
* @date 2022/5/12
*/
@Getter
@Setter
@ToString
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldNameConstants
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
@Entity
@Table
(
name
=
"BS_KEY_ALARM_LOG"
)
@Comment
(
"报警规则推送记录"
)
public
class
KeyAlarmLog
extends
BasicEntity
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
5837910859908195485L
;
@ManyToOne
@JoinColumn
(
name
=
"alarm_id"
)
@JsonIgnore
@Comment
(
"按键报警"
)
KeyAlarm
keyAlarm
;
@Comment
(
"通知方式"
)
String
types
;
@Comment
(
"接收状态"
)
Boolean
status
;
@ManyToOne
@JoinColumn
(
name
=
"leader_id"
)
@JsonIgnore
@Comment
(
"负责人"
)
User
user
;
}
app/src/main/java/com/yiring/app/domain/key/KeyAlarm
Rules
Repository.java
→
app/src/main/java/com/yiring/app/domain/key/KeyAlarm
Log
Repository.java
浏览文件 @
52704c34
...
...
@@ -13,5 +13,5 @@ import org.springframework.stereotype.Repository;
*/
@Repository
public
interface
KeyAlarm
Rules
Repository
extends
JpaRepository
<
KeyAlarm
Rules
,
Serializable
>,
JpaSpecificationExecutor
<
KeyAlarmRules
>
{}
public
interface
KeyAlarm
Log
Repository
extends
JpaRepository
<
KeyAlarm
Log
,
Serializable
>,
JpaSpecificationExecutor
<
KeyAlarmLog
>
{}
app/src/main/java/com/yiring/app/domain/key/KeyAlarmRule
s
.java
→
app/src/main/java/com/yiring/app/domain/key/KeyAlarmRule.java
浏览文件 @
52704c34
...
...
@@ -33,13 +33,13 @@ import org.hibernate.annotations.Comment;
@Entity
@Table
(
name
=
"BS_KEY_ALARM_RULES"
)
@Comment
(
"按键报警规则"
)
public
class
KeyAlarmRule
s
extends
BasicEntity
implements
Serializable
{
public
class
KeyAlarmRule
extends
BasicEntity
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
-
302167871277966250L
;
@Comment
(
"所属部门"
)
@
Many
ToOne
@
One
ToOne
@JsonIgnore
@JoinColumn
(
name
=
"department_id"
)
Department
department
;
...
...
@@ -47,12 +47,7 @@ public class KeyAlarmRules extends BasicEntity implements Serializable {
@JsonIgnore
@Builder
.
Default
@Comment
(
"用户集合"
)
@ManyToMany
(
fetch
=
FetchType
.
EAGER
)
@JoinTable
(
name
=
"BS_KEY_ALARM_RULES_USERS"
,
joinColumns
=
{
@JoinColumn
(
name
=
"key_id"
)
},
inverseJoinColumns
=
{
@JoinColumn
(
name
=
"user_id"
)
}
)
@OneToMany
Set
<
User
>
users
=
new
HashSet
<>(
0
);
@Comment
(
"推送类型"
)
...
...
app/src/main/java/com/yiring/app/domain/key/KeyAlarmRuleRepository.java
0 → 100644
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
domain
.
key
;
import
java.io.Serializable
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaSpecificationExecutor
;
import
org.springframework.stereotype.Repository
;
/**
*
* @author LJ-2204
* @date 2022/5/6
*/
@Repository
public
interface
KeyAlarmRuleRepository
extends
JpaRepository
<
KeyAlarmRule
,
Serializable
>,
JpaSpecificationExecutor
<
KeyAlarmRule
>
{}
app/src/main/java/com/yiring/app/domain/location/LocationAlarmRule.java
浏览文件 @
52704c34
...
...
@@ -47,7 +47,7 @@ public class LocationAlarmRule extends BasicEntity implements Serializable {
private
LocationFence
locationFence
;
@Comment
(
"接收人集合"
)
@
Many
ToMany
@
One
ToMany
@ToString
.
Exclude
private
Set
<
User
>
users
;
...
...
app/src/main/java/com/yiring/app/domain/location/LocationFenceRepository.java
浏览文件 @
52704c34
...
...
@@ -36,14 +36,18 @@ public interface LocationFenceRepository
* @param name 围栏名称
* @return 围栏信息
*/
@Query
(
"SELECT f FROM LocationFence f WHERE
name like %?1% AND
deleted = false"
)
@Query
(
"SELECT f FROM LocationFence f WHERE
f.name like %?1% AND f.
deleted = false"
)
List
<
LocationFence
>
findLikeName
(
String
name
);
/**
* 查询空间信息在围栏内的围栏信息
* @param areaId 地图区域 id
* @param geometry 空间信息
* @return 围栏信息
*/
@Query
(
value
=
"select f.* from bs_location_fence f where st_contains(f.geometry, :geometry)"
,
nativeQuery
=
true
)
List
<
LocationFence
>
findByGeometryContains
(
Geometry
geometry
);
@Query
(
value
=
"select f.* from bs_location_fence f where map_id = :areaId and st_contains(f.geometry, :geometry)"
,
nativeQuery
=
true
)
List
<
LocationFence
>
findByGeometryContains
(
Long
areaId
,
Geometry
geometry
);
}
app/src/main/java/com/yiring/app/domain/location/LocationLog.java
浏览文件 @
52704c34
...
...
@@ -98,6 +98,9 @@ public class LocationLog implements Serializable {
@Comment
(
"电量单位"
)
String
voltUnit
;
@Comment
(
"是否在厂区外"
)
Boolean
out
;
@Comment
(
"原始数据"
)
@Type
(
type
=
"jsonb"
)
@Column
(
columnDefinition
=
"jsonb"
)
...
...
app/src/main/java/com/yiring/app/domain/location/LocationTag.java
浏览文件 @
52704c34
...
...
@@ -6,13 +6,11 @@ import com.yiring.common.annotation.FieldMapping;
import
com.yiring.common.domain.BasicEntity
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
java.util.Objects
;
import
javax.persistence.*
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
import
lombok.experimental.FieldNameConstants
;
import
lombok.experimental.SuperBuilder
;
import
org.hibernate.Hibernate
;
import
org.hibernate.annotations.Comment
;
import
org.locationtech.jts.geom.Point
;
...
...
@@ -102,10 +100,13 @@ public class LocationTag extends BasicEntity implements Serializable {
@Comment
(
"类型(1:内部/2:访客)"
)
Integer
category
;
@Comment
(
"最
后
定位坐标"
)
@Comment
(
"最
新
定位坐标"
)
@Column
(
columnDefinition
=
"geometry(Point,4326)"
)
Point
point
;
@Comment
(
"是否在厂外"
)
Boolean
out
;
@SuppressWarnings
({
"unused"
})
public
enum
Type
{
BTT01
(
"蓝牙人员定位卡"
),
...
...
@@ -121,17 +122,4 @@ public class LocationTag extends BasicEntity implements Serializable {
return
this
.
text
;
}
}
@Override
public
boolean
equals
(
Object
o
)
{
if
(
this
==
o
)
return
true
;
if
(
o
==
null
||
Hibernate
.
getClass
(
this
)
!=
Hibernate
.
getClass
(
o
))
return
false
;
LocationTag
that
=
(
LocationTag
)
o
;
return
getId
()
!=
null
&&
Objects
.
equals
(
getId
(),
that
.
getId
());
}
@Override
public
int
hashCode
()
{
return
getClass
().
hashCode
();
}
}
app/src/main/java/com/yiring/app/domain/location/LocationTurnover.java
浏览文件 @
52704c34
...
...
@@ -2,6 +2,7 @@
package
com
.
yiring
.
app
.
domain
.
location
;
import
com.vladmihalcea.hibernate.type.json.JsonBinaryType
;
import
com.yiring.auth.domain.user.User
;
import
com.yiring.common.domain.BasicEntity
;
import
java.io.Serial
;
import
java.io.Serializable
;
...
...
@@ -52,6 +53,10 @@ public class LocationTurnover extends BasicEntity implements Serializable {
@Comment
(
"定位时间"
)
LocalDateTime
time
;
@Comment
(
"用户"
)
@ManyToOne
(
fetch
=
FetchType
.
LAZY
)
User
user
;
@Comment
(
"进入"
)
Boolean
enter
;
...
...
app/src/main/java/com/yiring/app/excel/key/KeyAlarmExportExcel.java
0 → 100644
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
excel
.
key
;
import
com.github.liaochong.myexcel.core.annotation.ExcelColumn
;
import
com.github.liaochong.myexcel.core.annotation.ExcelModel
;
import
com.yiring.app.domain.key.KeyAlarm
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
import
lombok.AccessLevel
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.experimental.FieldDefaults
;
/**
* 部门信息控制器
*
* @author LJ-2204
* @date 2022/5/11
*/
@ExcelModel
@Data
@Builder
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
KeyAlarmExportExcel
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
-
3703974403333845088L
;
@ExcelColumn
(
title
=
"地图位置"
)
Long
areaId
;
@ExcelColumn
(
title
=
"报警人员"
)
String
realName
;
@ExcelColumn
(
title
=
"工号"
)
String
uuid
;
@ExcelColumn
(
title
=
"报警时间"
)
LocalDateTime
createTime
;
@ExcelColumn
(
title
=
"结束时间"
)
LocalDateTime
endTime
;
@ExcelColumn
(
title
=
"报警类型"
)
String
type
;
@ExcelColumn
(
title
=
"报警接收人"
)
String
receiver
;
@ExcelColumn
(
title
=
"报警状态"
)
Boolean
enable
;
public
static
KeyAlarmExportExcel
transform
(
KeyAlarm
keyAlarm
)
{
return
KeyAlarmExportExcel
.
builder
()
.
areaId
(
keyAlarm
.
getAreaId
())
.
createTime
(
keyAlarm
.
getCreateTime
())
.
endTime
(
keyAlarm
.
getUpdateTime
())
.
type
(
"按键报警"
)
.
enable
(
keyAlarm
.
getEnable
())
.
build
();
}
}
app/src/main/java/com/yiring/app/excel/key/KeyAlarmRule
s
ExportExcel.java
→
app/src/main/java/com/yiring/app/excel/key/KeyAlarmRuleExportExcel.java
浏览文件 @
52704c34
...
...
@@ -3,7 +3,7 @@ package com.yiring.app.excel.key;
import
com.github.liaochong.myexcel.core.annotation.ExcelColumn
;
import
com.github.liaochong.myexcel.core.annotation.ExcelModel
;
import
com.yiring.app.domain.key.KeyAlarmRule
s
;
import
com.yiring.app.domain.key.KeyAlarmRule
;
import
com.yiring.auth.domain.user.User
;
import
java.io.Serial
;
import
java.io.Serializable
;
...
...
@@ -21,7 +21,7 @@ import lombok.experimental.FieldDefaults;
@Data
@Builder
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
KeyAlarmRule
s
ExportExcel
implements
Serializable
{
public
class
KeyAlarmRuleExportExcel
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
-
800228727313291675L
;
...
...
@@ -35,8 +35,8 @@ public class KeyAlarmRulesExportExcel implements Serializable {
@ExcelColumn
(
title
=
"通知类型"
)
String
types
;
public
static
KeyAlarmRule
sExportExcel
transform
(
KeyAlarmRules
keyAlarmRules
)
{
Set
<
User
>
users
=
keyAlarmRule
s
.
getUsers
();
public
static
KeyAlarmRule
ExportExcel
transform
(
KeyAlarmRule
keyAlarmRule
)
{
Set
<
User
>
users
=
keyAlarmRule
.
getUsers
();
StringBuilder
userNames
=
new
StringBuilder
();
for
(
User
user
:
users
)
{
userNames
.
append
(
user
.
getRealName
());
...
...
@@ -44,11 +44,11 @@ public class KeyAlarmRulesExportExcel implements Serializable {
}
String
substring
=
userNames
.
substring
(
0
,
userNames
.
length
()
-
1
);
return
KeyAlarmRule
s
ExportExcel
return
KeyAlarmRuleExportExcel
.
builder
()
.
deptName
(
keyAlarmRule
s
.
getDepartment
().
getName
())
.
deptName
(
keyAlarmRule
.
getDepartment
().
getName
())
.
userNames
(
substring
)
.
types
(
keyAlarmRule
s
.
getTypes
())
.
types
(
keyAlarmRule
.
getTypes
())
.
build
();
}
}
app/src/main/java/com/yiring/app/excel/user/UserImportExcel.java
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
excel
.
user
;
import
cn.hutool.core.util.StrUtil
;
import
com.github.liaochong.myexcel.core.annotation.ExcelColumn
;
import
com.yiring.auth.domain.user.User
;
import
java.io.Serial
;
...
...
@@ -49,10 +50,6 @@ public class UserImportExcel implements Serializable {
@ExcelColumn
(
title
=
"职位名称"
)
String
postName
;
// 标签号
@ExcelColumn
(
title
=
"标签编号"
)
String
code
;
// 性别
@ExcelColumn
(
title
=
"性别"
)
Boolean
gender
;
...
...
@@ -66,7 +63,7 @@ public class UserImportExcel implements Serializable {
.
builder
()
.
realName
(
userImportExcel
.
getRealName
())
.
uuid
(
userImportExcel
.
getUuid
())
.
type
(
User
.
Type
.
valueOf
(
userImportExcel
.
getType
())
)
.
type
(
StrUtil
.
equals
(
userImportExcel
.
getType
(),
"员工"
)
?
User
.
Type
.
EMPLOYEES
:
User
.
Type
.
GUEST
)
.
mobile
(
userImportExcel
.
getMobile
())
.
gender
(
userImportExcel
.
getGender
())
.
isSpecial
(
userImportExcel
.
getIsSpecial
())
...
...
app/src/main/java/com/yiring/app/job/MockPositionMessageJob.java
浏览文件 @
52704c34
...
...
@@ -168,7 +168,7 @@ public class MockPositionMessageJob {
private
JSONObject
mockKeyWarningMessage
(
JSONObject
extra
)
{
JSONObject
params
=
new
JSONObject
();
params
.
put
(
"tagId"
,
mockTag
());
params
.
put
(
"entityId"
,
"
1522770547178475520
"
);
params
.
put
(
"entityId"
,
"
4376
"
);
params
.
put
(
"areaId"
,
mockAreaId
());
params
.
put
(
"raiseTime"
,
System
.
currentTimeMillis
());
params
.
put
(
"x"
,
100
);
...
...
app/src/main/java/com/yiring/app/param/alarm/AlarmConditionParam.java
浏览文件 @
52704c34
...
...
@@ -14,11 +14,12 @@ import lombok.NoArgsConstructor;
import
org.hibernate.validator.constraints.Range
;
/**
* 报警类型的条件param
* @author tml
* @version 1.0
* @date 2022/4/27 14:28
*/
@ApiModel
(
"AlarmConditionParam
(报警类型的条件param)
"
)
@ApiModel
(
"AlarmConditionParam"
)
@Data
@AllArgsConstructor
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/param/alarm/AlarmTypeAddParam.java
浏览文件 @
52704c34
...
...
@@ -18,11 +18,12 @@ import org.hibernate.validator.constraints.Length;
import
org.hibernate.validator.constraints.Range
;
/**
* 报警类型的添加param
* @author tml
* @version 1.0
* @date 2022/4/27 11:28
*/
@ApiModel
(
"AlarmTypeAddParam
(报警类型的添加param)
"
)
@ApiModel
(
"AlarmTypeAddParam"
)
@Data
@Builder
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/param/alarm/AlarmTypeModifyParam.java
浏览文件 @
52704c34
...
...
@@ -15,11 +15,12 @@ import lombok.NoArgsConstructor;
import
org.hibernate.validator.constraints.Length
;
/**
* 报警类型修改param
* @author tml
* @version 1.0
* @date 2022/4/27 11:28
*/
@ApiModel
(
"AlarmTypeModifyParam
(报警类型修改param)
"
)
@ApiModel
(
"AlarmTypeModifyParam"
)
@Data
@Builder
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/param/analysis/history/HistoryRouteConditionParam.java
浏览文件 @
52704c34
...
...
@@ -14,11 +14,12 @@ import lombok.Data;
import
lombok.NoArgsConstructor
;
/**
* 历史轨迹的条件param
* @author tml
* @version 1.0
* @date 2022/5/6 10:53
*/
@ApiModel
(
"HistoryRoute
(历史轨迹的条件param)
"
)
@ApiModel
(
"HistoryRoute"
)
@Data
@AllArgsConstructor
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/param/district/DistrictAddParam.java
浏览文件 @
52704c34
...
...
@@ -18,7 +18,7 @@ import org.locationtech.jts.geom.Geometry;
* @version 1.0
* @date 2022/4/26 10:40
*/
@ApiModel
(
"DistrictAddParam
(添加区域param)
"
)
@ApiModel
(
"DistrictAddParam"
)
@Data
@Builder
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/param/district/DistrictModifyParam.java
浏览文件 @
52704c34
...
...
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.Geometry;
* @version 1.0
* @date 2022/4/26 10:40
*/
@ApiModel
(
"DistrictAddParam
(添加区域param)
"
)
@ApiModel
(
"DistrictAddParam"
)
@Data
@Builder
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/param/key/KeyAlarmAddParam.java
0 → 100644
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
param
.
key
;
import
com.yiring.app.domain.key.KeyAlarm
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
/**
* 按键报警
*
* @author LJ-2204
* @date 2022/5/12
*/
@ApiModel
(
"KeyAlarmAddParam"
)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
KeyAlarmAddParam
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
6914927126284215967L
;
@ApiModelProperty
(
value
=
"标签编号"
,
example
=
"BTT88888888"
)
String
tagId
;
@ApiModelProperty
(
value
=
"报警人ID"
,
example
=
"14433"
)
Long
entityId
;
@ApiModelProperty
(
value
=
"地图总图"
,
example
=
"1"
)
Long
areaId
;
@ApiModelProperty
(
value
=
"推送时间"
,
example
=
""
)
LocalDateTime
raiseTime
;
@ApiModelProperty
(
value
=
"x"
,
example
=
"1"
)
BigDecimal
x
;
@ApiModelProperty
(
value
=
"y"
,
example
=
"1"
)
BigDecimal
y
;
@ApiModelProperty
(
value
=
"z"
,
example
=
"1"
)
BigDecimal
z
;
public
static
KeyAlarm
transform
(
KeyAlarmAddParam
param
)
{
return
KeyAlarm
.
builder
()
.
areaId
(
param
.
areaId
)
.
code
(
param
.
getTagId
())
.
x
(
param
.
getX
())
.
y
(
param
.
getY
())
.
z
(
param
.
getZ
())
.
build
();
}
}
app/src/main/java/com/yiring/app/param/key/KeyAlarmLogFindParam.java
0 → 100644
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
param
.
key
;
import
com.yiring.app.push.domain.PushMessage
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
/**
* 按键报警推送
*
* @author LJ-2204
* @date 2022/5/13
*/
@ApiModel
(
"KeyAlarmLogFindParam"
)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
KeyAlarmLogFindParam
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
-
7238582681776938388L
;
@ApiModelProperty
(
value
=
"通知方式"
,
example
=
"SMS/APP"
)
PushMessage
.
Type
type
;
@ApiModelProperty
(
value
=
"联系号码"
,
example
=
"18888888888"
)
String
mobile
;
@ApiModelProperty
(
value
=
"接收状态"
,
example
=
"T/F"
)
Boolean
status
;
}
app/src/main/java/com/yiring/app/param/key/KeyAlarmRule
s
AddParam.java
→
app/src/main/java/com/yiring/app/param/key/KeyAlarmRuleAddParam.java
浏览文件 @
52704c34
...
...
@@ -17,13 +17,13 @@ import lombok.experimental.FieldDefaults;
* @date 2022/5/6
*/
@ApiModel
(
"KeyAlarmRule
s
AddParam"
)
@ApiModel
(
"KeyAlarmRuleAddParam"
)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
KeyAlarmRule
s
AddParam
implements
Serializable
{
public
class
KeyAlarmRuleAddParam
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
758462772473378637L
;
...
...
app/src/main/java/com/yiring/app/param/key/KeyAlarmRule
s
ExportParam.java
→
app/src/main/java/com/yiring/app/param/key/KeyAlarmRuleExportParam.java
浏览文件 @
52704c34
...
...
@@ -15,13 +15,13 @@ import lombok.experimental.FieldDefaults;
* @date 2022/5/6
*/
@ApiModel
(
"KeyAlarmRule
s
ExportParam"
)
@ApiModel
(
"KeyAlarmRuleExportParam"
)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
KeyAlarmRule
s
ExportParam
implements
Serializable
{
public
class
KeyAlarmRuleExportParam
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
-
2940487513251067057L
;
...
...
app/src/main/java/com/yiring/app/param/key/KeyAlarmRule
s
ModifyParam.java
→
app/src/main/java/com/yiring/app/param/key/KeyAlarmRuleModifyParam.java
浏览文件 @
52704c34
...
...
@@ -16,13 +16,13 @@ import lombok.experimental.FieldDefaults;
* @date 2022/5/6
*/
@ApiModel
(
"KeyAlarmRule
s
AddParam"
)
@ApiModel
(
"KeyAlarmRuleAddParam"
)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
KeyAlarmRule
s
ModifyParam
implements
Serializable
{
public
class
KeyAlarmRuleModifyParam
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
3526756145220971363L
;
...
...
app/src/main/java/com/yiring/app/param/key/KeyAlarmRule
s
PageParam.java
→
app/src/main/java/com/yiring/app/param/key/KeyAlarmRulePageParam.java
浏览文件 @
52704c34
...
...
@@ -15,13 +15,13 @@ import lombok.experimental.FieldDefaults;
* @date 2022/5/7
*/
@ApiModel
(
"KeyAlarmRule
s
PageParam"
)
@ApiModel
(
"KeyAlarmRulePageParam"
)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
KeyAlarmRule
s
PageParam
implements
Serializable
{
public
class
KeyAlarmRulePageParam
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
2876239519436815639L
;
...
...
app/src/main/java/com/yiring/app/param/location/beacon/LocationBeaconAddParam.java
浏览文件 @
52704c34
...
...
@@ -2,6 +2,7 @@
package
com
.
yiring
.
app
.
param
.
location
.
beacon
;
import
com.yiring.app.domain.location.LocationBeacon
;
import
com.yiring.app.util.GeoUtils
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serial
;
...
...
@@ -65,9 +66,13 @@ public class LocationBeaconAddParam implements Serializable {
.
x
(
locationBeaconAddParam
.
getX
())
.
y
(
locationBeaconAddParam
.
getY
())
.
z
(
locationBeaconAddParam
.
getZ
())
// .point(GeoUtils.xyzToPoint(
// locationBeaconAddParam.getPointX().doubleValue(),locationBeaconAddParam.getPointY().doubleValue(),locationBeaconAddParam.getPointZ().doubleValue()
// ))
.
point
(
GeoUtils
.
xyzToPoint
(
locationBeaconAddParam
.
getX
().
doubleValue
(),
locationBeaconAddParam
.
getY
().
doubleValue
(),
locationBeaconAddParam
.
getZ
().
doubleValue
()
)
)
.
time
(
locationBeaconAddParam
.
getTime
())
.
volt
(
locationBeaconAddParam
.
getVolt
())
.
voltUnit
(
locationBeaconAddParam
.
getVoltUnit
())
...
...
app/src/main/java/com/yiring/app/param/location/fence/LocationFenceAddParam.java
浏览文件 @
52704c34
...
...
@@ -17,11 +17,12 @@ import org.hibernate.validator.constraints.Range;
import
org.locationtech.jts.geom.Geometry
;
/**
* 添加围栏信息的param
* @author tml
* @version 1.0
* @date 2022/4/28 10:52
*/
@ApiModel
(
"LocationFenceAddParam
(添加围栏信息的param)
"
)
@ApiModel
(
"LocationFenceAddParam"
)
@Data
@AllArgsConstructor
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/param/location/fence/LocationFenceConditionParam.java
浏览文件 @
52704c34
...
...
@@ -11,11 +11,12 @@ import lombok.Data;
import
lombok.NoArgsConstructor
;
/**
* 查询围栏信息的条件param
* @author tml
* @version 1.0
* @date 2022/4/28 13:35
*/
@ApiModel
(
"LocationFenceConditionParam
(查询围栏信息的条件param)
"
)
@ApiModel
(
"LocationFenceConditionParam"
)
@Data
@AllArgsConstructor
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/param/location/fence/LocationFenceModifyParam.java
浏览文件 @
52704c34
...
...
@@ -16,11 +16,12 @@ import org.hibernate.validator.constraints.Range;
import
org.locationtech.jts.geom.Geometry
;
/**
* 修改围栏信息的param
* @author tml
* @version 1.0
* @date 2022/4/28 10:52
*/
@ApiModel
(
"LocationFenceModifyParam
(修改围栏信息的param)
"
)
@ApiModel
(
"LocationFenceModifyParam"
)
@Data
@AllArgsConstructor
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/param/location/rule/LocationFenceRuleAddParam.java
浏览文件 @
52704c34
...
...
@@ -18,11 +18,12 @@ import lombok.NoArgsConstructor;
import
org.hibernate.validator.constraints.Range
;
/**
* 添加配置报警类别的报警规则,根据不同类型传入不同参数
* @author tml
* @version 1.0
* @date 2022/4/28 16:16
*/
@ApiModel
(
"
添加配置报警类别的报警规则,根据不同类型传入不同参数
"
)
@ApiModel
(
"
LocationFenceRuleAddParam
"
)
@Data
@Builder
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/param/location/rule/LocationFenceRuleModifyParam.java
浏览文件 @
52704c34
...
...
@@ -10,12 +10,13 @@ import javax.validation.constraints.NotNull;
import
lombok.*
;
/**
* 修改配置报警类别的报警规则,根据不同类型传入不同参数
* @author tml
* @version 1.0
* @date 2022/4/28 16:16
*/
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
"
修改配置报警类别的报警规则,根据不同类型传入不同参数
"
)
@ApiModel
(
"
LocationFenceRuleModifyParam
"
)
@Data
@NoArgsConstructor
@AllArgsConstructor
...
...
app/src/main/java/com/yiring/app/param/location/rule/RuleParam.java
浏览文件 @
52704c34
...
...
@@ -12,11 +12,12 @@ import lombok.Data;
import
lombok.NoArgsConstructor
;
/**
* 报警规则,根据不同类型传入不同参数
* @author tml
* @version 1.0
* @date 2022/4/29 14:12
*/
@ApiModel
(
"
报警规则,根据不同类型传入不同参数
"
)
@ApiModel
(
"
RuleParam
"
)
@Data
@Builder
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/service/broadcast/BroadcastAudioService.java
浏览文件 @
52704c34
...
...
@@ -6,11 +6,13 @@ import com.yiring.app.param.broadcast.BroadcastAudioFindParam;
import
com.yiring.app.param.broadcast.BroadcastAudioModifyParam
;
import
com.yiring.app.vo.broadcast.BroadcastAudioIndexVo
;
import
com.yiring.app.vo.broadcast.BroadcastAudioVo
;
import
com.yiring.auth.param.IdsParam
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.IdParam
;
import
com.yiring.common.param.IndexParam
;
import
com.yiring.common.param.PageParam
;
import
com.yiring.common.vo.PageVo
;
import
javax.servlet.http.HttpServletResponse
;
/**
* 播报语音
...
...
@@ -55,4 +57,11 @@ public interface BroadcastAudioService {
* @return Result<PageVo<BroadcastAudioIndexVo>>
*/
Result
<
PageVo
<
BroadcastAudioIndexVo
>>
index
(
IndexParam
indexParam
);
/**
* 批量下载
* @param idsParam IdsParam
* @param response HttpServletResponse
*/
void
download
(
IdsParam
idsParam
,
HttpServletResponse
response
);
}
app/src/main/java/com/yiring/app/service/broadcast/impl/BroadcastAudioServiceImpl.java
浏览文件 @
52704c34
...
...
@@ -2,6 +2,8 @@
package
com
.
yiring
.
app
.
service
.
broadcast
.
impl
;
import
cn.hutool.core.collection.ListUtil
;
import
cn.hutool.core.convert.Convert
;
import
cn.hutool.core.io.FileUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.yiring.app.domain.broadcast.BroadcastAudio
;
import
com.yiring.app.domain.broadcast.BroadcastAudioRepository
;
...
...
@@ -9,8 +11,11 @@ import com.yiring.app.param.broadcast.BroadcastAudioAddParam;
import
com.yiring.app.param.broadcast.BroadcastAudioFindParam
;
import
com.yiring.app.param.broadcast.BroadcastAudioModifyParam
;
import
com.yiring.app.service.broadcast.BroadcastAudioService
;
import
com.yiring.app.util.ZipUtils
;
import
com.yiring.app.vo.broadcast.BroadcastAudioIndexVo
;
import
com.yiring.app.vo.broadcast.BroadcastAudioVo
;
import
com.yiring.auth.param.IdsParam
;
import
com.yiring.common.core.Minio
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Status
;
import
com.yiring.common.domain.BasicEntity
;
...
...
@@ -18,12 +23,17 @@ import com.yiring.common.param.IdParam;
import
com.yiring.common.param.IndexParam
;
import
com.yiring.common.param.PageParam
;
import
com.yiring.common.vo.PageVo
;
import
java.util.List
;
import
java.util.Optional
;
import
io.minio.GetObjectResponse
;
import
java.io.File
;
import
java.io.IOException
;
import
java.net.URLEncoder
;
import
java.nio.charset.StandardCharsets
;
import
java.util.*
;
import
java.util.stream.Collectors
;
import
javax.annotation.Resource
;
import
javax.persistence.criteria.Order
;
import
javax.persistence.criteria.Predicate
;
import
javax.servlet.http.HttpServletResponse
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.data.domain.Page
;
import
org.springframework.data.domain.PageRequest
;
...
...
@@ -47,6 +57,9 @@ public class BroadcastAudioServiceImpl implements BroadcastAudioService {
@Resource
BroadcastAudioRepository
broadcastAudioRepository
;
@Resource
Minio
minio
;
@Override
public
Result
<
String
>
save
(
BroadcastAudioAddParam
param
)
{
broadcastAudioRepository
.
save
(
BroadcastAudioAddParam
.
transform
(
param
));
...
...
@@ -122,4 +135,37 @@ public class BroadcastAudioServiceImpl implements BroadcastAudioService {
return
Result
.
ok
(
pageVo
);
}
@Override
public
void
download
(
IdsParam
idsParam
,
HttpServletResponse
response
)
{
String
[]
split
=
idsParam
.
getIds
().
split
(
","
);
Long
[]
ids
=
Convert
.
toLongArray
(
split
);
List
<
BroadcastAudio
>
broadcastAudios
=
broadcastAudioRepository
.
findAllById
(
Arrays
.
asList
(
ids
));
HashMap
<
String
,
File
>
map
=
new
HashMap
<>();
broadcastAudios
.
forEach
(
broadcastAudio
->
{
String
uri
=
broadcastAudio
.
getUri
();
int
i
=
uri
.
lastIndexOf
(
"upload/"
);
uri
=
uri
.
substring
(
i
);
try
{
GetObjectResponse
getObjectResponse
=
minio
.
getObject
(
uri
);
File
file
=
FileUtil
.
writeFromStream
(
getObjectResponse
,
FileUtil
.
createTempFile
());
int
j
=
uri
.
lastIndexOf
(
"."
);
uri
=
uri
.
substring
(
j
);
map
.
put
(
broadcastAudio
.
getName
()
+
uri
,
file
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
});
String
fileName
=
URLEncoder
.
encode
(
"音频文件.zip"
,
StandardCharsets
.
UTF_8
);
response
.
setContentType
(
"application/octet-stream"
);
response
.
setHeader
(
"Content-Disposition"
,
"attachment;filename="
+
fileName
);
try
{
ZipUtils
.
packet
(
map
,
response
.
getOutputStream
());
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
}
}
app/src/main/java/com/yiring/app/service/dept/impl/DepartmentServiceImpl.java
浏览文件 @
52704c34
...
...
@@ -76,11 +76,11 @@ public class DepartmentServiceImpl implements DepartmentService {
@Override
public
Result
<
String
>
addDepartment
(
DepartmentAddParam
departmentAddParam
)
{
// 查询用户相关信息
Optional
<
User
>
userOptional
=
userRepository
.
findOne
(
Example
.
of
(
User
.
builder
().
id
(
departmentAddParam
.
getLeaderId
()).
build
())
);
Department
department
=
DepartmentAddParam
.
transform
(
departmentAddParam
);
userOptional
.
ifPresent
(
department:
:
setLeader
);
if
(
ObjectUtil
.
isNotEmpty
(
departmentAddParam
.
getLeaderId
()))
{
Optional
<
User
>
userOptional
=
userRepository
.
findById
(
departmentAddParam
.
getLeaderId
());
userOptional
.
ifPresent
(
department:
:
setLeader
);
}
// 查询zy上级部门id
Optional
<
Department
>
departmentOptional
=
departmentRepository
.
findOne
(
...
...
@@ -157,13 +157,16 @@ public class DepartmentServiceImpl implements DepartmentService {
@Override
public
void
exportDepartment
(
DepartmentExportParam
departmentExportParam
,
HttpServletResponse
response
)
{
List
<
Department
>
departments
=
departmentRepository
.
findAll
(
Example
.
of
(
Department
.
builder
().
enable
(
departmentExportParam
.
getEnable
()).
build
())
);
List
<
DepartmentExportExcel
>
departmentExportExcels
=
departments
.
stream
()
.
map
(
DepartmentExportExcel:
:
transform
)
.
collect
(
Collectors
.
toList
());
HashMap
<
String
,
Department
>
hashMap
=
getStringDepartmentHashMap
();
List
<
DepartmentExportExcel
>
departmentExportExcels
=
ListUtil
.
toList
();
hashMap
.
forEach
((
k
,
v
)
->
{
DepartmentExportExcel
departmentExportExcel
=
DepartmentExportExcel
.
transform
(
v
);
if
(
v
.
getEnable
()
==
departmentExportParam
.
getEnable
())
{
departmentExportExcel
.
setName
(
k
);
departmentExportExcels
.
add
(
departmentExportExcel
);
}
});
try
(
DefaultStreamExcelBuilder
<
DepartmentExportExcel
>
streamExcelBuilder
=
DefaultStreamExcelBuilder
.
of
(
DepartmentExportExcel
.
class
)
...
...
app/src/main/java/com/yiring/app/service/key/KeyAlarmLogService.java
0 → 100644
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
service
.
key
;
import
com.yiring.app.param.key.KeyAlarmLogFindParam
;
import
com.yiring.app.vo.key.KeyAlarmLogVo
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.PageParam
;
import
com.yiring.common.vo.PageVo
;
/**
* 按键报警推送
*
* @author LJ-2204
* @date 2022/5/13
*/
public
interface
KeyAlarmLogService
{
/**
* 表格查询
* @param param KeyAlarmLogFindParam
* @param pageParam PageParam
* @return Result<PageVo<KeyAlarmLogVo>>
*/
Result
<
PageVo
<
KeyAlarmLogVo
>>
page
(
KeyAlarmLogFindParam
param
,
PageParam
pageParam
);
}
app/src/main/java/com/yiring/app/service/key/KeyAlarmRule
s
Service.java
→
app/src/main/java/com/yiring/app/service/key/KeyAlarmRuleService.java
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
service
.
key
;
import
com.yiring.app.param.key.KeyAlarmRule
s
AddParam
;
import
com.yiring.app.param.key.KeyAlarmRule
s
ExportParam
;
import
com.yiring.app.param.key.KeyAlarmRule
s
ModifyParam
;
import
com.yiring.app.param.key.KeyAlarmRule
s
PageParam
;
import
com.yiring.app.vo.key.KeyAlarmRule
s
Vo
;
import
com.yiring.app.param.key.KeyAlarmRuleAddParam
;
import
com.yiring.app.param.key.KeyAlarmRuleExportParam
;
import
com.yiring.app.param.key.KeyAlarmRuleModifyParam
;
import
com.yiring.app.param.key.KeyAlarmRulePageParam
;
import
com.yiring.app.vo.key.KeyAlarmRuleVo
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.IdParam
;
import
com.yiring.common.param.PageParam
;
...
...
@@ -18,13 +18,13 @@ import javax.servlet.http.HttpServletResponse;
* @author LJ-2204
* @date 2022/5/6
*/
public
interface
KeyAlarmRule
s
Service
{
public
interface
KeyAlarmRuleService
{
/**
* 添加报警类型
* @param keyAlarmRule
sAddParam KeyAlarmRules
AddParam
* @param keyAlarmRule
AddParam KeyAlarmRule
AddParam
* @return Result<String>
*/
Result
<
String
>
add
(
KeyAlarmRule
sAddParam
keyAlarmRules
AddParam
);
Result
<
String
>
add
(
KeyAlarmRule
AddParam
keyAlarmRule
AddParam
);
/**
* 删除报警规则
...
...
@@ -35,23 +35,23 @@ public interface KeyAlarmRulesService {
/**
* 修改报警规则
* @param keyAlarmRule
sModifyParam KeyAlarmRules
ModifyParam
* @param keyAlarmRule
ModifyParam KeyAlarmRule
ModifyParam
* @return Result<String>
*/
Result
<
String
>
modify
(
KeyAlarmRule
sModifyParam
keyAlarmRules
ModifyParam
);
Result
<
String
>
modify
(
KeyAlarmRule
ModifyParam
keyAlarmRule
ModifyParam
);
/**
* 导出
* @param keyAlarmRule
sExportParam KeyAlarmRules
ExportParam
* @param keyAlarmRule
ExportParam KeyAlarmRule
ExportParam
* @param response HttpServletResponse
*/
void
export
(
KeyAlarmRule
sExportParam
keyAlarmRules
ExportParam
,
HttpServletResponse
response
);
void
export
(
KeyAlarmRule
ExportParam
keyAlarmRule
ExportParam
,
HttpServletResponse
response
);
/**
* 分页
* @param keyAlarmRule
sPageParam KeyAlarmRules
PageParam
* @param keyAlarmRule
PageParam KeyAlarmRule
PageParam
* @param pageParam PageParam
* @return Result<PageVo<KeyAlarmRule
s
Vo>>
* @return Result<PageVo<KeyAlarmRuleVo>>
*/
Result
<
PageVo
<
KeyAlarmRule
sVo
>>
page
(
KeyAlarmRulesPageParam
keyAlarmRules
PageParam
,
PageParam
pageParam
);
Result
<
PageVo
<
KeyAlarmRule
Vo
>>
page
(
KeyAlarmRulePageParam
keyAlarmRule
PageParam
,
PageParam
pageParam
);
}
app/src/main/java/com/yiring/app/service/key/KeyAlarmService.java
浏览文件 @
52704c34
...
...
@@ -6,6 +6,7 @@ import com.yiring.app.vo.key.KeyAlarmVo;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.PageParam
;
import
com.yiring.common.vo.PageVo
;
import
javax.servlet.http.HttpServletResponse
;
/**
* 部门信息控制器
...
...
@@ -21,4 +22,11 @@ public interface KeyAlarmService {
* @return Result<PageVo<KeyAlarmVo>>
*/
Result
<
PageVo
<
KeyAlarmVo
>>
page
(
KeyAlarmFindParam
param
,
PageParam
pageParam
);
/**
* 导出
* @param param KeyAlarmFindParam
* @param response HttpServletResponse
*/
void
export
(
KeyAlarmFindParam
param
,
HttpServletResponse
response
);
}
app/src/main/java/com/yiring/app/service/key/impl/KeyAlarmLogServiceImpl.java
0 → 100644
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
service
.
key
.
impl
;
import
cn.hutool.core.collection.ListUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.yiring.app.domain.key.KeyAlarmLog
;
import
com.yiring.app.domain.key.KeyAlarmLogRepository
;
import
com.yiring.app.param.key.KeyAlarmLogFindParam
;
import
com.yiring.app.service.key.KeyAlarmLogService
;
import
com.yiring.app.vo.key.KeyAlarmLogVo
;
import
com.yiring.auth.domain.user.User
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.domain.BasicEntity
;
import
com.yiring.common.param.PageParam
;
import
com.yiring.common.vo.PageVo
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
javax.annotation.Resource
;
import
javax.persistence.criteria.Order
;
import
javax.persistence.criteria.Predicate
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.data.domain.Page
;
import
org.springframework.data.domain.PageRequest
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.data.jpa.domain.Specification
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
/**
* 按键报警推送
*
* @author LJ-2204
* @date 2022/5/13
*/
@Transactional
(
rollbackFor
=
RuntimeException
.
class
)
@Service
@Slf4j
public
class
KeyAlarmLogServiceImpl
implements
KeyAlarmLogService
{
@Resource
KeyAlarmLogRepository
keyAlarmLogRepository
;
@Override
public
Result
<
PageVo
<
KeyAlarmLogVo
>>
page
(
KeyAlarmLogFindParam
param
,
PageParam
pageParam
)
{
Specification
<
KeyAlarmLog
>
specification
=
(
root
,
cq
,
cb
)
->
{
List
<
Predicate
>
predicates
=
ListUtil
.
toList
();
if
(
ObjectUtil
.
isNotEmpty
(
param
.
getMobile
()))
{
predicates
.
add
(
cb
.
like
(
root
.
get
(
KeyAlarmLog
.
Fields
.
user
).
get
(
User
.
Fields
.
mobile
),
"%"
+
param
.
getMobile
()
+
"%"
)
);
}
if
(
ObjectUtil
.
isNotEmpty
(
param
.
getStatus
()))
{
predicates
.
add
(
cb
.
equal
(
root
.
get
(
KeyAlarmLog
.
Fields
.
status
),
param
.
getStatus
()));
}
if
(
ObjectUtil
.
isNotEmpty
(
param
.
getType
()))
{
predicates
.
add
(
cb
.
equal
(
root
.
get
(
KeyAlarmLog
.
Fields
.
types
),
param
.
getType
()));
}
Order
order
=
cb
.
desc
(
root
.
get
(
BasicEntity
.
Fields
.
createTime
));
return
cq
.
orderBy
(
order
).
where
(
predicates
.
toArray
(
new
Predicate
[
0
])).
getRestriction
();
};
Pageable
pageable
=
PageRequest
.
of
(
pageParam
.
getPageNo
()
-
1
,
pageParam
.
getPageSize
());
Page
<
KeyAlarmLog
>
keyAlarmLogs
=
keyAlarmLogRepository
.
findAll
(
specification
,
pageable
);
List
<
KeyAlarmLogVo
>
keyAlarmLogVos
=
keyAlarmLogs
.
getContent
()
.
stream
()
.
map
(
KeyAlarmLogVo:
:
transform
)
.
collect
(
Collectors
.
toList
());
PageVo
<
KeyAlarmLogVo
>
pageVo
=
PageVo
.
build
(
keyAlarmLogVos
,
keyAlarmLogs
.
getTotalElements
());
return
Result
.
ok
(
pageVo
);
}
}
app/src/main/java/com/yiring/app/service/key/impl/KeyAlarmRule
s
ServiceImpl.java
→
app/src/main/java/com/yiring/app/service/key/impl/KeyAlarmRuleServiceImpl.java
浏览文件 @
52704c34
差异被折叠。
点击展开。
app/src/main/java/com/yiring/app/service/key/impl/KeyAlarmServiceImpl.java
浏览文件 @
52704c34
...
...
@@ -4,10 +4,12 @@ package com.yiring.app.service.key.impl;
import
cn.hutool.core.collection.ListUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.StrUtil
;
import
com.github.liaochong.myexcel.core.DefaultStreamExcelBuilder
;
import
com.yiring.app.domain.key.KeyAlarm
;
import
com.yiring.app.domain.key.KeyAlarmRepository
;
import
com.yiring.app.domain.key.KeyAlarmRules
;
import
com.yiring.app.domain.key.KeyAlarmRulesRepository
;
import
com.yiring.app.domain.key.KeyAlarmRule
;
import
com.yiring.app.domain.key.KeyAlarmRuleRepository
;
import
com.yiring.app.excel.key.KeyAlarmExportExcel
;
import
com.yiring.app.param.key.KeyAlarmFindParam
;
import
com.yiring.app.service.key.KeyAlarmService
;
import
com.yiring.app.vo.key.KeyAlarmVo
;
...
...
@@ -17,14 +19,20 @@ import com.yiring.common.core.Result;
import
com.yiring.common.domain.BasicEntity
;
import
com.yiring.common.param.PageParam
;
import
com.yiring.common.vo.PageVo
;
import
java.io.OutputStream
;
import
java.net.URLEncoder
;
import
java.nio.charset.StandardCharsets
;
import
java.util.List
;
import
java.util.Optional
;
import
java.util.Set
;
import
java.util.concurrent.Executors
;
import
java.util.stream.Collectors
;
import
javax.annotation.Resource
;
import
javax.persistence.criteria.Order
;
import
javax.persistence.criteria.Predicate
;
import
javax.servlet.http.HttpServletResponse
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.poi.ss.usermodel.Workbook
;
import
org.springframework.data.domain.Page
;
import
org.springframework.data.domain.PageRequest
;
import
org.springframework.data.domain.Pageable
;
...
...
@@ -48,7 +56,7 @@ public class KeyAlarmServiceImpl implements KeyAlarmService {
KeyAlarmRepository
keyAlarmRepository
;
@Resource
KeyAlarmRule
sRepository
keyAlarmRules
Repository
;
KeyAlarmRule
Repository
keyAlarmRule
Repository
;
@Override
public
Result
<
PageVo
<
KeyAlarmVo
>>
page
(
KeyAlarmFindParam
param
,
PageParam
pageParam
)
{
...
...
@@ -101,13 +109,13 @@ public class KeyAlarmServiceImpl implements KeyAlarmService {
.
build
();
keyAlarmVo
.
setUser
(
userVo
);
}
Optional
<
KeyAlarmRule
s
>
keyAlarmRulesOptional
=
keyAlarmRules
Repository
.
findById
(
Optional
<
KeyAlarmRule
>
keyAlarmRuleOptional
=
keyAlarmRule
Repository
.
findById
(
leader
.
getDepartment
().
getId
()
);
if
(
keyAlarmRule
s
Optional
.
isPresent
())
{
KeyAlarmRule
s
keyAlarmRules
=
keyAlarmRules
Optional
.
get
();
Set
<
User
>
users
=
keyAlarmRule
s
.
getUsers
();
if
(
keyAlarmRuleOptional
.
isPresent
())
{
KeyAlarmRule
keyAlarmRule
=
keyAlarmRule
Optional
.
get
();
Set
<
User
>
users
=
keyAlarmRule
.
getUsers
();
List
<
String
>
names
=
users
.
stream
().
map
(
User:
:
getRealName
).
collect
(
Collectors
.
toList
());
keyAlarmVo
.
setReceiver
(
StrUtil
.
join
(
","
,
names
));
}
...
...
@@ -119,4 +127,94 @@ public class KeyAlarmServiceImpl implements KeyAlarmService {
return
Result
.
ok
(
pageVo
);
}
@Override
public
void
export
(
KeyAlarmFindParam
param
,
HttpServletResponse
response
)
{
Specification
<
KeyAlarm
>
specification
=
(
root
,
cq
,
cb
)
->
{
List
<
Predicate
>
predicates
=
ListUtil
.
toList
();
if
(
ObjectUtil
.
isNotEmpty
(
param
.
getAreaId
()))
{
predicates
.
add
(
cb
.
equal
(
root
.
get
(
KeyAlarm
.
Fields
.
areaId
),
param
.
getAreaId
()));
}
if
(
ObjectUtil
.
isNotEmpty
(
param
.
getName
()))
{
predicates
.
add
(
cb
.
like
(
root
.
get
(
KeyAlarm
.
Fields
.
leader
).
get
(
User
.
Fields
.
realName
),
"%"
+
param
.
getName
()
+
"%"
)
);
}
if
(
ObjectUtil
.
isNotEmpty
(
param
.
getEnable
()))
{
predicates
.
add
(
cb
.
equal
(
root
.
get
(
KeyAlarm
.
Fields
.
enable
),
param
.
getEnable
()));
}
if
(
ObjectUtil
.
isNotEmpty
(
param
.
getCreateTime
()))
{
predicates
.
add
(
cb
.
lessThan
(
root
.
get
(
BasicEntity
.
Fields
.
createTime
),
param
.
getCreateTime
()));
}
if
(
ObjectUtil
.
isNotEmpty
(
param
.
getEndTime
()))
{
predicates
.
add
(
cb
.
greaterThan
(
root
.
get
(
BasicEntity
.
Fields
.
updateTime
),
param
.
getEndTime
()));
}
Order
order
=
cb
.
desc
(
root
.
get
(
BasicEntity
.
Fields
.
createTime
));
return
cq
.
orderBy
(
order
).
where
(
predicates
.
toArray
(
new
Predicate
[
0
])).
getRestriction
();
};
List
<
KeyAlarm
>
keyAlarms
=
keyAlarmRepository
.
findAll
(
specification
);
List
<
KeyAlarmExportExcel
>
keyAlarmExportExcels
=
keyAlarms
.
stream
()
.
map
(
keyAlarm
->
{
KeyAlarmExportExcel
keyAlarmExportExcel
=
KeyAlarmExportExcel
.
transform
(
keyAlarm
);
User
leader
=
keyAlarm
.
getLeader
();
if
(
ObjectUtil
.
isNotEmpty
(
leader
))
{
keyAlarmExportExcel
.
setRealName
(
leader
.
getRealName
());
keyAlarmExportExcel
.
setUuid
(
leader
.
getUuid
());
}
Optional
<
KeyAlarmRule
>
keyAlarmRuleOptional
=
keyAlarmRuleRepository
.
findById
(
leader
.
getDepartment
().
getId
()
);
if
(
keyAlarmRuleOptional
.
isPresent
())
{
KeyAlarmRule
keyAlarmRule
=
keyAlarmRuleOptional
.
get
();
Set
<
User
>
users
=
keyAlarmRule
.
getUsers
();
List
<
String
>
names
=
users
.
stream
().
map
(
User:
:
getRealName
).
collect
(
Collectors
.
toList
());
keyAlarmExportExcel
.
setReceiver
(
StrUtil
.
join
(
","
,
names
));
}
return
keyAlarmExportExcel
;
})
.
collect
(
Collectors
.
toList
());
try
(
DefaultStreamExcelBuilder
<
KeyAlarmExportExcel
>
streamExcelBuilder
=
DefaultStreamExcelBuilder
.
of
(
KeyAlarmExportExcel
.
class
)
.
threadPool
(
Executors
.
newFixedThreadPool
(
2
))
.
rowHeight
(
14
)
.
titleRowHeight
(
14
)
.
style
(
"cell->vertical-align:center;text-align:center"
,
"title->vertical-align:center;text-align:center;font-weight:bold;font-family:等线"
)
.
start
()
)
{
streamExcelBuilder
.
append
(
keyAlarmExportExcels
);
String
fileName
=
URLEncoder
.
encode
(
"按键报警信息.xlsx"
,
StandardCharsets
.
UTF_8
);
response
.
setContentType
(
"application/octet-stream"
);
response
.
setHeader
(
"Access-Control-Expose-Headers"
,
"Content-Disposition"
);
response
.
setHeader
(
"Content-Disposition"
,
"attachment;filename="
+
fileName
);
OutputStream
out
=
response
.
getOutputStream
();
Workbook
workbook
=
streamExcelBuilder
.
fixedTitles
().
build
();
workbook
.
write
(
out
);
workbook
.
close
();
out
.
flush
();
out
.
close
();
}
catch
(
Exception
e
)
{
log
.
error
(
e
.
getMessage
(),
e
);
throw
new
RuntimeException
(
"导出按键报警信息失败: "
+
e
.
getMessage
());
}
}
}
app/src/main/java/com/yiring/app/service/message/impl/PositionMessageServiceImpl.java
浏览文件 @
52704c34
...
...
@@ -6,12 +6,16 @@ import com.alibaba.fastjson.JSONArray;
import
com.alibaba.fastjson.JSONObject
;
import
com.yiring.app.domain.district.District
;
import
com.yiring.app.domain.district.DistrictRepository
;
import
com.yiring.app.domain.key.*
;
import
com.yiring.app.domain.location.*
;
import
com.yiring.app.domain.log.ZyRealtimeLog
;
import
com.yiring.app.domain.log.ZyRealtimeLogRepository
;
import
com.yiring.app.param.key.KeyAlarmAddParam
;
import
com.yiring.app.service.message.PositionMessageService
;
import
com.yiring.app.util.GeoUtils
;
import
com.yiring.auth.domain.dept.Department
;
import
com.yiring.auth.domain.user.User
;
import
com.yiring.auth.domain.user.UserRepository
;
import
com.yiring.common.annotation.Times
;
import
java.time.Instant
;
import
java.time.LocalDateTime
;
...
...
@@ -63,6 +67,18 @@ public class PositionMessageServiceImpl implements PositionMessageService {
@Resource
ZyRealtimeLogRepository
zyRealtimeLogRepository
;
@Resource
KeyAlarmRepository
keyAlarmRepository
;
@Resource
KeyAlarmLogRepository
keyAlarmLogRepository
;
@Resource
KeyAlarmRuleRepository
keyAlarmRuleRepository
;
@Resource
UserRepository
userRepository
;
@Times
(
"Message Consume"
)
@Override
public
void
consume
(
String
message
)
{
...
...
@@ -137,6 +153,7 @@ public class PositionMessageServiceImpl implements PositionMessageService {
.
silent
(
data
.
getBoolean
(
"silent"
))
.
volt
(
data
.
getInteger
(
"volt"
))
.
voltUnit
(
data
.
getString
(
"voltUnit"
))
.
out
(
data
.
getBoolean
(
"out"
))
.
build
();
// 获取定位卡当前绑定的用户
...
...
@@ -166,8 +183,8 @@ public class PositionMessageServiceImpl implements PositionMessageService {
// 计算出入标记(围栏、区域)
List
<
LocationTurnover
>
turnovers
=
new
ArrayList
<>();
// 查询定位在围栏内的围栏信息
List
<
LocationFence
>
fences
=
locationFenceRepository
.
findByGeometryContains
(
point
);
// 查询定位在围栏内的围栏信息
(同时根据地图区域查询,用来区分不同楼层的围栏)
List
<
LocationFence
>
fences
=
locationFenceRepository
.
findByGeometryContains
(
locationLog
.
getAreaId
(),
point
);
Set
<
Long
>
fenceIds
=
fences
.
stream
().
map
(
LocationFence:
:
getId
).
collect
(
Collectors
.
toSet
());
locationLog
.
setFences
(
new
JSONArray
().
fluentAddAll
(
fenceIds
));
// 计算围栏进出
...
...
@@ -201,18 +218,13 @@ public class PositionMessageServiceImpl implements PositionMessageService {
.
sourceId
(
fence
.
getId
())
.
tag
(
id
.
getTag
())
.
time
(
id
.
getTime
())
.
user
(
id
.
getTag
().
getUser
())
.
isLatest
(
true
)
.
build
();
turnovers
.
add
(
turnover
);
// 更新围栏内的标签
Set
<
LocationTag
>
tags
=
fence
.
getTags
();
if
(
Boolean
.
TRUE
.
equals
(
isEnter
))
{
tags
.
add
(
id
.
getTag
());
}
else
{
tags
.
remove
(
id
.
getTag
());
}
fence
.
setTags
(
tags
);
fence
.
setTags
(
resetInTags
(
tag
,
isEnter
,
fence
.
getTags
()));
// 有人员进出围栏,需要检查是否触发围栏报警规则
// TODO: 通过定时任务调度异步实现,提高定位消息消费能力
// 1. 判断是否触发围栏报警规则,触发则记录报警记录,同时记录报警记录触发所需推送的消息
...
...
@@ -256,9 +268,13 @@ public class PositionMessageServiceImpl implements PositionMessageService {
.
sourceId
(
district
.
getId
())
.
tag
(
id
.
getTag
())
.
time
(
id
.
getTime
())
.
user
(
id
.
getTag
().
getUser
())
.
isLatest
(
true
)
.
build
();
turnovers
.
add
(
turnover
);
// 更新区域内的标签
district
.
setTags
(
resetInTags
(
tag
,
isEnter
,
district
.
getTags
()));
}
}
}
...
...
@@ -267,14 +283,17 @@ public class PositionMessageServiceImpl implements PositionMessageService {
locationLogRepository
.
saveAndFlush
(
locationLog
);
// 更新定位标签卡状态信息
tag
.
setOut
(
locationLog
.
getOut
());
tag
.
setPoint
(
locationLog
.
getPoint
());
tag
.
setVolt
(
locationLog
.
getVolt
());
tag
.
setVoltUnit
(
locationLog
.
getVoltUnit
());
tag
.
setSilent
(
locationLog
.
getSilent
());
locationTagRepository
.
save
(
tag
);
// 更新围栏
记录
的标签数据
// 更新围栏
内
的标签数据
locationFenceRepository
.
saveAll
(
fences
);
// 更新区域内的标签数据
districtRepository
.
saveAll
(
districts
);
// 写入围栏/区域进出记录
locationTurnoverRepository
.
saveAll
(
turnovers
);
...
...
@@ -378,6 +397,15 @@ public class PositionMessageServiceImpl implements PositionMessageService {
}
}
public
Set
<
LocationTag
>
resetInTags
(
LocationTag
tag
,
Boolean
enter
,
Set
<
LocationTag
>
tags
)
{
if
(
Boolean
.
TRUE
.
equals
(
enter
))
{
tags
.
add
(
tag
);
}
else
{
tags
.
remove
(
tag
);
}
return
tags
;
}
/**
* 处理低电量报警消息
* @param data 消息内容
...
...
@@ -403,5 +431,57 @@ public class PositionMessageServiceImpl implements PositionMessageService {
public
void
processKeyWarningMessage
(
JSONObject
data
)
{
// TODO
log
.
info
(
"KeyWarning Message: {}"
,
data
);
KeyAlarmAddParam
keyAlarmAddParam
=
data
.
toJavaObject
(
KeyAlarmAddParam
.
class
);
KeyAlarm
keyAlarm
=
KeyAlarmAddParam
.
transform
(
keyAlarmAddParam
);
keyAlarm
.
setPoint
(
GeoUtils
.
xyzToPoint
(
keyAlarm
.
getX
().
doubleValue
(),
keyAlarm
.
getY
().
doubleValue
(),
keyAlarm
.
getZ
().
doubleValue
()
)
);
Optional
<
User
>
userRepositoryOne
=
userRepository
.
findOne
(
Example
.
of
(
User
.
builder
().
linkId
(
keyAlarmAddParam
.
getEntityId
()).
build
())
);
if
(
userRepositoryOne
.
isEmpty
())
{
// throw new RuntimeException("没找到该用户");
log
.
error
(
"没找到该用户"
);
return
;
}
User
user
=
userRepositoryOne
.
get
();
keyAlarm
.
setLeader
(
user
);
keyAlarm
.
setEnable
(
true
);
Optional
<
KeyAlarmRule
>
keyAlarmRuleOptional
=
keyAlarmRuleRepository
.
findOne
(
Example
.
of
(
KeyAlarmRule
.
builder
().
department
(
Department
.
builder
().
id
(
user
.
getDepartment
().
getId
()).
build
()).
build
()
)
);
if
(
keyAlarmRuleOptional
.
isEmpty
())
{
// throw new RuntimeException("该部门未设置报警规则");
log
.
error
(
"该部门未设置报警规则"
);
return
;
}
final
KeyAlarm
finalKeyAlarm
=
keyAlarmRepository
.
save
(
keyAlarm
);
KeyAlarmRule
keyAlarmRule
=
keyAlarmRuleOptional
.
get
();
Set
<
User
>
users
=
keyAlarmRule
.
getUsers
();
HashSet
<
KeyAlarmLog
>
keyAlarmLogs
=
new
HashSet
<>();
users
.
forEach
(
leader
->
{
String
[]
split
=
keyAlarmRule
.
getTypes
().
split
(
","
);
for
(
String
type
:
split
)
{
keyAlarmLogs
.
add
(
KeyAlarmLog
.
builder
().
status
(
false
).
user
(
leader
).
types
(
type
).
keyAlarm
(
finalKeyAlarm
).
build
()
);
}
});
keyAlarmLogRepository
.
saveAll
(
keyAlarmLogs
);
}
}
app/src/main/java/com/yiring/app/service/user/impl/UserAppServiceImpl.java
浏览文件 @
52704c34
...
...
@@ -435,12 +435,6 @@ public class UserAppServiceImpl implements UserAppService {
.
filter
(
userImportExcel
->
userRepository
.
count
(
Example
.
of
(
User
.
builder
().
uuid
(
userImportExcel
.
getUuid
()).
build
()))
==
0
)
.
filter
(
userImportExcel
->
locationTagRepository
.
count
(
Example
.
of
(
LocationTag
.
builder
().
code
(
userImportExcel
.
getCode
()).
used
(
true
).
build
())
)
==
0
)
.
collect
(
Collectors
.
toList
());
userImportExcels
.
forEach
(
userImportExcel
->
{
...
...
@@ -476,14 +470,11 @@ public class UserAppServiceImpl implements UserAppService {
Object
id
=
JSONUtil
.
parseObj
(
records
.
get
(
0
)).
get
(
"id"
);
Post
post
=
postMap
.
get
(
userImportExcel
.
getPostName
()).
get
(
0
);
user
.
setLinkId
(
Convert
.
toLong
(
id
));
user
.
setDepartment
(
department
);
user
.
setPost
(
post
);
User
saveUser
=
userRepository
.
save
(
user
);
if
(
StrUtil
.
isNotEmpty
(
userImportExcel
.
getCode
()))
{
LocationTag
locationTag
=
LocationTag
.
builder
().
code
(
userImportExcel
.
getCode
()).
user
(
saveUser
).
build
();
locationTagRepository
.
save
(
locationTag
);
}
userRepository
.
save
(
user
);
});
return
Result
.
ok
();
...
...
app/src/main/java/com/yiring/app/util/ZipUtils.java
0 → 100644
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
util
;
import
java.io.*
;
import
java.nio.file.*
;
import
java.nio.file.attribute.BasicFileAttributes
;
import
java.util.LinkedList
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
import
java.util.zip.ZipEntry
;
import
java.util.zip.ZipFile
;
import
java.util.zip.ZipInputStream
;
import
java.util.zip.ZipOutputStream
;
public
class
ZipUtils
{
/**
* 解压文件
* @param file 压缩文件
* @param targetDir 解压文件输出的目录
* @throws IOException IOException
*/
public
static
void
unPacket
(
Path
file
,
Path
targetDir
)
throws
IOException
{
if
(!
Files
.
exists
(
targetDir
))
{
Files
.
createDirectories
(
targetDir
);
}
// 创建zip对象
try
(
ZipFile
zipFile
=
new
ZipFile
(
file
.
toFile
()))
{
// 读取zip流
try
(
ZipInputStream
zipInputStream
=
new
ZipInputStream
(
Files
.
newInputStream
(
file
)))
{
ZipEntry
zipEntry
;
// 遍历每一个zip项
while
((
zipEntry
=
zipInputStream
.
getNextEntry
())
!=
null
)
{
// 获取zip项目名称
String
entryName
=
zipEntry
.
getName
();
// 构建绝对路径
Path
entryFile
=
targetDir
.
resolve
(
entryName
);
if
(
zipEntry
.
isDirectory
())
{
// 文件夹
if
(!
Files
.
isDirectory
(
entryFile
))
{
Files
.
createDirectories
(
entryFile
);
}
}
else
{
// 文件
// 读取zip项数据流
try
(
InputStream
zipEntryInputStream
=
zipFile
.
getInputStream
(
zipEntry
))
{
try
(
OutputStream
fileOutputStream
=
Files
.
newOutputStream
(
entryFile
,
StandardOpenOption
.
CREATE_NEW
)
)
{
byte
[]
buffer
=
new
byte
[
4096
];
int
length
;
while
((
length
=
zipEntryInputStream
.
read
(
buffer
))
!=
-
1
)
{
fileOutputStream
.
write
(
buffer
,
0
,
length
);
}
fileOutputStream
.
flush
();
}
}
}
}
}
}
}
/**
* 压缩指定的文件
* @param files Path[]
* @param zipFile Path
* @throws IOException IOException
*/
public
static
void
packet
(
Path
[]
files
,
Path
zipFile
)
throws
IOException
{
OutputStream
outputStream
=
Files
.
newOutputStream
(
zipFile
,
StandardOpenOption
.
CREATE_NEW
);
try
(
outputStream
;
ZipOutputStream
zipOutputStream
=
new
ZipOutputStream
(
outputStream
))
{
for
(
Path
file
:
files
)
{
if
(
Files
.
isDirectory
(
file
))
{
continue
;
}
try
(
InputStream
inputStream
=
Files
.
newInputStream
(
file
))
{
// 创建一个压缩项,指定名称
ZipEntry
zipEntry
=
new
ZipEntry
(
file
.
getFileName
().
toString
());
// 添加到压缩流
zipOutputStream
.
putNextEntry
(
zipEntry
);
// 写入数据
int
len
;
byte
[]
buffer
=
new
byte
[
1024
*
10
];
while
((
len
=
inputStream
.
read
(
buffer
))
>
0
)
{
zipOutputStream
.
write
(
buffer
,
0
,
len
);
}
zipOutputStream
.
flush
();
}
}
// 完成所有压缩项的添加
zipOutputStream
.
closeEntry
();
}
}
/**
* 压缩指定的文件
* @param files Map<String, File>
* @param outputStream OutputStream
*/
public
static
void
packet
(
Map
<
String
,
File
>
files
,
OutputStream
outputStream
)
{
try
(
outputStream
;
ZipOutputStream
zipOutputStream
=
new
ZipOutputStream
(
outputStream
))
{
for
(
Map
.
Entry
<
String
,
File
>
file
:
files
.
entrySet
())
{
String
fileName
=
file
.
getKey
();
File
fileValue
=
file
.
getValue
();
try
(
InputStream
inputStream
=
new
BufferedInputStream
(
new
FileInputStream
(
fileValue
)))
{
// 创建一个压缩项,指定名称
ZipEntry
zipEntry
=
new
ZipEntry
(
fileName
);
// 添加到压缩流
zipOutputStream
.
putNextEntry
(
zipEntry
);
// 写入数据
int
len
;
byte
[]
buffer
=
new
byte
[
1024
*
10
];
while
((
len
=
inputStream
.
read
(
buffer
))
>
0
)
{
zipOutputStream
.
write
(
buffer
,
0
,
len
);
}
zipOutputStream
.
flush
();
}
}
// 完成所有压缩项的添加
zipOutputStream
.
closeEntry
();
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
e
);
}
}
/**
* 压缩指定的目录
* @param folder Path
* @param zipFile Path
* @throws IOException IOException
*/
public
static
void
packet
(
Path
folder
,
Path
zipFile
)
throws
IOException
{
if
(!
Files
.
isDirectory
(
folder
))
{
throw
new
IllegalArgumentException
(
folder
+
" 不是合法的文件夹"
);
}
OutputStream
outputStream
=
Files
.
newOutputStream
(
zipFile
,
StandardOpenOption
.
CREATE_NEW
);
LinkedList
<
String
>
path
=
new
LinkedList
<>();
try
(
outputStream
;
ZipOutputStream
zipOutputStream
=
new
ZipOutputStream
(
outputStream
))
{
Files
.
walkFileTree
(
folder
,
new
FileVisitor
<>()
{
@Override
public
FileVisitResult
preVisitDirectory
(
Path
dir
,
BasicFileAttributes
attrs
)
{
if
(!
dir
.
equals
(
folder
))
{
// 开始遍历目录
String
folder
=
dir
.
getFileName
().
toString
();
path
.
addLast
(
folder
);
// 写入目录
ZipEntry
zipEntry
=
new
ZipEntry
(
path
.
stream
().
collect
(
Collectors
.
joining
(
"/"
,
""
,
"/"
)));
try
{
zipOutputStream
.
putNextEntry
(
zipEntry
);
zipOutputStream
.
flush
();
}
catch
(
IOException
e
)
{
throw
new
RuntimeException
(
e
);
}
}
return
FileVisitResult
.
CONTINUE
;
}
@Override
public
FileVisitResult
visitFile
(
Path
file
,
BasicFileAttributes
attrs
)
{
// 开始遍历文件
try
(
InputStream
inputStream
=
Files
.
newInputStream
(
file
))
{
// 创建一个压缩项,指定名称
String
fileName
=
path
.
size
()
>
0
?
path
.
stream
().
collect
(
Collectors
.
joining
(
"/"
,
""
,
""
))
+
"/"
+
file
.
getFileName
().
toString
()
:
file
.
getFileName
().
toString
();
ZipEntry
zipEntry
=
new
ZipEntry
(
fileName
);
// 添加到压缩流
zipOutputStream
.
putNextEntry
(
zipEntry
);
// 写入数据
int
len
;
byte
[]
buffer
=
new
byte
[
1024
*
10
];
while
((
len
=
inputStream
.
read
(
buffer
))
>
0
)
{
zipOutputStream
.
write
(
buffer
,
0
,
len
);
}
zipOutputStream
.
flush
();
}
catch
(
IOException
e
)
{
throw
new
RuntimeException
(
e
);
}
return
FileVisitResult
.
CONTINUE
;
}
@Override
public
FileVisitResult
visitFileFailed
(
Path
file
,
IOException
exc
)
{
return
FileVisitResult
.
CONTINUE
;
}
@Override
public
FileVisitResult
postVisitDirectory
(
Path
dir
,
IOException
exc
)
{
// 结束遍历目录
if
(!
path
.
isEmpty
())
{
path
.
removeLast
();
}
return
FileVisitResult
.
CONTINUE
;
}
}
);
zipOutputStream
.
closeEntry
();
}
}
}
app/src/main/java/com/yiring/app/vo/alarm/AlarmTypeVo.java
浏览文件 @
52704c34
...
...
@@ -20,7 +20,7 @@ import lombok.NoArgsConstructor;
* @version 1.0
* @date 2022/4/27 11:55
*/
@ApiModel
(
"
AlarmTypeVo(报警信息)
"
)
@ApiModel
(
"
报警信息
"
)
@Data
@Builder
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/vo/analysis/history/HistoryRouteVo.java
浏览文件 @
52704c34
...
...
@@ -14,13 +14,14 @@ import lombok.NoArgsConstructor;
import
org.locationtech.jts.geom.Point
;
/**
* 历史轨迹信息VO
* @author tml
* @version 1.0
* @date 2022/5/6 14:18
*/
@Data
@Builder
@ApiModel
(
"
历史轨迹信息VO
"
)
@ApiModel
(
"
HistoryRouteVo
"
)
@NoArgsConstructor
@AllArgsConstructor
public
class
HistoryRouteVo
implements
Serializable
{
...
...
app/src/main/java/com/yiring/app/vo/district/DistrictVo.java
浏览文件 @
52704c34
...
...
@@ -19,7 +19,7 @@ import lombok.NoArgsConstructor;
* @version 1.0
* @date 2022/4/27 9:10
*/
@ApiModel
(
"DistrictVo
(区域信息)
"
)
@ApiModel
(
"DistrictVo"
)
@Data
@Builder
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/vo/key/KeyAlarmLogVo.java
0 → 100644
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
vo
.
key
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
import
com.fasterxml.jackson.databind.ser.std.ToStringSerializer
;
import
com.yiring.app.domain.key.KeyAlarmLog
;
import
com.yiring.app.vo.user.UserVo
;
import
com.yiring.auth.domain.user.User
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
/**
* 按键报警推送
*
* @author LJ-2204
* @date 2022/5/13
*/
@ApiModel
(
"KeyAlarmLogVo"
)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
KeyAlarmLogVo
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
9135155632502530938L
;
@JsonSerialize
(
using
=
ToStringSerializer
.
class
)
@ApiModelProperty
(
value
=
"主键"
,
example
=
"111"
)
Long
id
;
@ApiModelProperty
(
value
=
"用户"
,
example
=
"111"
)
UserVo
userVo
;
@ApiModelProperty
(
value
=
"通知方式"
,
example
=
"SMS/APP"
)
String
type
;
@ApiModelProperty
(
value
=
"接收状态"
,
example
=
"T/F"
)
Boolean
status
;
@ApiModelProperty
(
value
=
"接收时间"
,
example
=
"2011-11-11 22:22:22"
)
LocalDateTime
updateTime
;
public
static
KeyAlarmLogVo
transform
(
KeyAlarmLog
keyAlarmLog
)
{
KeyAlarmLogVo
keyAlarmLogVo
=
KeyAlarmLogVo
.
builder
()
.
id
(
keyAlarmLog
.
getId
())
.
type
(
keyAlarmLog
.
getTypes
())
.
status
(
keyAlarmLog
.
getStatus
())
.
updateTime
(
keyAlarmLog
.
getUpdateTime
())
.
build
();
if
(
ObjectUtil
.
isNotEmpty
(
keyAlarmLog
.
getUser
()))
{
User
user
=
keyAlarmLog
.
getUser
();
keyAlarmLogVo
.
setUserVo
(
UserVo
.
builder
().
id
(
user
.
getId
()).
realName
(
user
.
getRealName
()).
mobile
(
user
.
getMobile
()).
build
()
);
}
return
keyAlarmLogVo
;
}
}
app/src/main/java/com/yiring/app/vo/key/KeyAlarmRule
s
Vo.java
→
app/src/main/java/com/yiring/app/vo/key/KeyAlarmRuleVo.java
浏览文件 @
52704c34
...
...
@@ -3,7 +3,7 @@ package com.yiring.app.vo.key;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
import
com.fasterxml.jackson.databind.ser.std.ToStringSerializer
;
import
com.yiring.app.domain.key.KeyAlarmRule
s
;
import
com.yiring.app.domain.key.KeyAlarmRule
;
import
com.yiring.app.vo.user.UserInfoVo
;
import
com.yiring.auth.domain.user.User
;
import
io.swagger.annotations.ApiModel
;
...
...
@@ -23,13 +23,13 @@ import lombok.experimental.FieldDefaults;
* @date 2022/5/7
*/
@ApiModel
(
"KeyAlarmRule
s
Vo"
)
@ApiModel
(
"KeyAlarmRuleVo"
)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
KeyAlarmRule
s
Vo
implements
Serializable
{
public
class
KeyAlarmRuleVo
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
5083435104462641333L
;
...
...
@@ -51,17 +51,17 @@ public class KeyAlarmRulesVo implements Serializable {
@ApiModelProperty
(
value
=
"推送类型"
,
example
=
"111"
)
String
[]
types
;
public
static
KeyAlarmRule
sVo
transform
(
KeyAlarmRules
keyAlarmRules
)
{
Set
<
User
>
users
=
keyAlarmRule
s
.
getUsers
();
public
static
KeyAlarmRule
Vo
transform
(
KeyAlarmRule
keyAlarmRule
)
{
Set
<
User
>
users
=
keyAlarmRule
.
getUsers
();
List
<
UserInfoVo
>
userInfoVos
=
users
.
stream
().
map
(
UserInfoVo:
:
transform
).
collect
(
Collectors
.
toList
());
return
KeyAlarmRule
s
Vo
return
KeyAlarmRuleVo
.
builder
()
.
id
(
keyAlarmRule
s
.
getId
())
.
deptId
(
keyAlarmRule
s
.
getDepartment
().
getId
())
.
deptName
(
keyAlarmRule
s
.
getDepartment
().
getName
())
.
id
(
keyAlarmRule
.
getId
())
.
deptId
(
keyAlarmRule
.
getDepartment
().
getId
())
.
deptName
(
keyAlarmRule
.
getDepartment
().
getName
())
.
users
(
userInfoVos
)
.
types
(
keyAlarmRule
s
.
getTypes
().
split
(
","
))
.
types
(
keyAlarmRule
.
getTypes
().
split
(
","
))
.
build
();
}
}
app/src/main/java/com/yiring/app/vo/location/fence/LocationFenceVo.java
浏览文件 @
52704c34
...
...
@@ -20,11 +20,12 @@ import lombok.Data;
import
lombok.NoArgsConstructor
;
/**
* 围栏信息VO
* @author tml
* @version 1.0
* @date 2022/4/28 11:07
*/
@ApiModel
(
"
围栏信息VO
"
)
@ApiModel
(
"
LocationFenceVo
"
)
@Data
@Builder
@AllArgsConstructor
...
...
app/src/main/java/com/yiring/app/vo/location/rule/LocationFenceRuleVo.java
浏览文件 @
52704c34
...
...
@@ -19,11 +19,12 @@ import lombok.Data;
import
lombok.NoArgsConstructor
;
/**
* 修改配置报警类别的报警规则,根据不同类型传入不同参数
* @author tml
* @version 1.0
* @date 2022/4/28 16:16
*/
@ApiModel
(
"
修改配置报警类别的报警规则,根据不同类型传入不同参数
"
)
@ApiModel
(
"
LocationFenceRuleVo
"
)
@Data
@Builder
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/vo/location/rule/RuleVo.java
浏览文件 @
52704c34
...
...
@@ -14,11 +14,12 @@ import lombok.Data;
import
lombok.NoArgsConstructor
;
/**
* 报警规则,根据不同类型传入不同参数
* @author tml
* @version 1.0
* @date 2022/4/29 14:12
*/
@ApiModel
(
"
报警规则,根据不同类型传入不同参数
"
)
@ApiModel
(
"
RuleVo
"
)
@Data
@Builder
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/vo/rehearsal/AccidentSpotVo.java
浏览文件 @
52704c34
...
...
@@ -15,6 +15,7 @@ import lombok.NoArgsConstructor;
import
org.locationtech.jts.geom.Geometry
;
/**
* 事故点VO
* @author tml
* @version 1.0
* @date 2022/5/7 11:25
...
...
@@ -23,7 +24,7 @@ import org.locationtech.jts.geom.Geometry;
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel
(
"
事故点VO
"
)
@ApiModel
(
"
AccidentSpotVo
"
)
public
class
AccidentSpotVo
implements
Serializable
{
@Serial
...
...
app/src/main/java/com/yiring/app/web/
Hello
Controller.java
→
app/src/main/java/com/yiring/app/web/
Example
Controller.java
浏览文件 @
52704c34
/* (C) 2021 YiRing, Inc. */
package
com
.
yiring
.
app
.
web
;
import
com.github.xiaoymin.knife4j.annotations.ApiSupport
;
import
com.yiring.app.constant.Code
;
import
com.yiring.app.exception.CodeException
;
import
com.yiring.app.util.zy.ZyUtil
;
...
...
@@ -23,10 +24,12 @@ import org.springframework.web.bind.annotation.RestController;
@Slf4j
@Validated
@Api
(
tags
=
"Hello"
)
@RequestMapping
(
"/hello/"
)
@SuppressWarnings
({
"deprecation"
})
@ApiSupport
(
order
=
0
)
@Api
(
tags
=
"示例"
,
description
=
"Example"
)
@RequestMapping
(
"/example/"
)
@RestController
public
class
Hello
Controller
{
public
class
Example
Controller
{
String
text
=
"😎 Hello World"
;
...
...
app/src/main/java/com/yiring/app/web/alarm/AlarmTypeController.java
浏览文件 @
52704c34
...
...
@@ -20,7 +20,6 @@ import java.util.Objects;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.data.domain.Sort
;
import
org.springframework.http.MediaType
;
import
org.springframework.validation.annotation.Validated
;
...
...
@@ -35,9 +34,10 @@ import org.springframework.web.bind.annotation.RestController;
* @version 1.0
* @date 2022/4/27 14:18
*/
@Slf4j
@Validated
@Api
(
tags
=
"AlarmType(报警类型)"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"报警类型"
,
description
=
"AlarmType"
)
@RestController
@RequestMapping
(
"/alarm/type"
)
public
class
AlarmTypeController
{
...
...
app/src/main/java/com/yiring/app/web/analysis/history/HistoryRouteController.java
浏览文件 @
52704c34
...
...
@@ -22,8 +22,10 @@ import org.springframework.web.bind.annotation.RestController;
* @version 1.0
* @date 2022/5/6 10:36
*/
@Api
(
tags
=
"HistoryRoute(历史轨迹)"
)
@Validated
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"历史轨迹"
,
description
=
"HistoryRoute"
)
@RestController
@RequestMapping
(
"/history/route"
)
public
class
HistoryRouteController
{
...
...
app/src/main/java/com/yiring/app/web/appUser/AppletUserController.java
浏览文件 @
52704c34
...
...
@@ -9,7 +9,6 @@ import io.swagger.annotations.Api;
import
io.swagger.annotations.ApiOperation
;
import
javax.annotation.Resource
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
...
...
@@ -22,9 +21,10 @@ import org.springframework.web.bind.annotation.RestController;
* @description:
* @date 2022/4/28 13:48
*/
@Slf4j
@Validated
@Api
(
tags
=
"小程序用户"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"小程序用户"
,
description
=
"AppletUser"
)
@RestController
@RequestMapping
(
"/appUser/"
)
public
class
AppletUserController
{
...
...
app/src/main/java/com/yiring/app/web/broadcast/BroadcastAudioController.java
浏览文件 @
52704c34
...
...
@@ -7,6 +7,7 @@ import com.yiring.app.param.broadcast.BroadcastAudioModifyParam;
import
com.yiring.app.service.broadcast.BroadcastAudioService
;
import
com.yiring.app.vo.broadcast.BroadcastAudioIndexVo
;
import
com.yiring.app.vo.broadcast.BroadcastAudioVo
;
import
com.yiring.auth.param.IdsParam
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.IdParam
;
import
com.yiring.common.param.IndexParam
;
...
...
@@ -15,8 +16,9 @@ import com.yiring.common.vo.PageVo;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.http.MediaType
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
...
...
@@ -27,9 +29,9 @@ import org.springframework.web.bind.annotation.*;
* @date 2022/5/7
*/
@Slf4j
@Api
(
tags
=
"播报音频"
)
@Validated
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"播报音频"
,
description
=
"BroadcastAudio"
)
@RestController
@RequestMapping
(
"/broadcast/audio"
)
public
class
BroadcastAudioController
{
...
...
@@ -67,7 +69,9 @@ public class BroadcastAudioController {
return
broadcastAudioService
.
index
(
indexParam
);
}
@ApiOperation
(
"批量下载"
)
@ApiOperation
(
value
=
"批量下载"
,
produces
=
MediaType
.
APPLICATION_OCTET_STREAM_VALUE
)
@GetMapping
(
"download"
)
public
void
download
()
{}
public
void
download
(
@Valid
IdsParam
idsParam
,
HttpServletResponse
response
)
{
broadcastAudioService
.
download
(
idsParam
,
response
);
}
}
app/src/main/java/com/yiring/app/web/broadcast/BroadcastController.java
浏览文件 @
52704c34
...
...
@@ -17,7 +17,6 @@ import io.swagger.annotations.ApiOperation;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.locationtech.jts.geom.Point
;
import
org.springframework.http.MediaType
;
import
org.springframework.validation.annotation.Validated
;
...
...
@@ -33,9 +32,10 @@ import org.springframework.web.multipart.MultipartFile;
* @description:
* @date 2022/5/6 10:15
*/
@Slf4j
@Validated
@Api
(
tags
=
"Broadcast(播报设备管理)"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"播报设备管理"
,
description
=
"Broadcast"
)
@RestController
@RequestMapping
(
"/broadcast/"
)
public
class
BroadcastController
{
...
...
app/src/main/java/com/yiring/app/web/dept/DepartmentController.java
浏览文件 @
52704c34
...
...
@@ -17,7 +17,7 @@ import io.swagger.annotations.ApiOperation;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.http.MediaType
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
...
...
@@ -28,9 +28,9 @@ import org.springframework.web.multipart.MultipartFile;
* @date 2022/4/19
*/
@Slf4j
@Validated
@Api
(
tags
=
"部门信息"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"部门信息"
,
description
=
"Department"
)
@RestController
@RequestMapping
(
"/dept/"
)
public
class
DepartmentController
{
...
...
@@ -56,7 +56,7 @@ public class DepartmentController {
return
departmentService
.
findDepartmentInfo
(
idParam
);
}
@ApiOperation
(
"部门导出"
)
@ApiOperation
(
value
=
"部门导出"
,
produces
=
MediaType
.
APPLICATION_OCTET_STREAM_VALUE
)
@GetMapping
(
"exportDepartment"
)
public
void
exportDepartment
(
@Valid
DepartmentExportParam
departmentExportParam
,
HttpServletResponse
response
)
{
departmentService
.
exportDepartment
(
departmentExportParam
,
response
);
...
...
app/src/main/java/com/yiring/app/web/dict/DictController.java
浏览文件 @
52704c34
...
...
@@ -15,7 +15,6 @@ import io.swagger.annotations.ApiOperation;
import
java.util.ArrayList
;
import
javax.annotation.Resource
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
...
...
@@ -28,9 +27,10 @@ import org.springframework.web.bind.annotation.RestController;
* @author tzl
* 2022/4/13 17:10
*/
@Slf4j
@Validated
@Api
(
tags
=
"Dict"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"数据字典"
,
description
=
"Dict"
)
@RestController
@RequestMapping
(
"/Dict/"
)
public
class
DictController
{
...
...
app/src/main/java/com/yiring/app/web/dict/DictTypeController.java
浏览文件 @
52704c34
...
...
@@ -2,7 +2,6 @@
package
com
.
yiring
.
app
.
web
.
dict
;
import
io.swagger.annotations.Api
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
...
...
@@ -14,9 +13,9 @@ import org.springframework.web.bind.annotation.RestController;
* 2022/4/14 15:14
*/
@Slf4j
@Validated
@Api
(
tags
=
"DictType"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"数据字典类型"
,
description
=
"DictType"
)
@RestController
@RequestMapping
(
"/DictType/"
)
public
class
DictTypeController
{
...
...
app/src/main/java/com/yiring/app/web/district/DistrictController.java
浏览文件 @
52704c34
...
...
@@ -13,7 +13,6 @@ import io.swagger.annotations.ApiImplicitParam;
import
io.swagger.annotations.ApiOperation
;
import
javax.annotation.Resource
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
...
...
@@ -23,9 +22,10 @@ import org.springframework.web.bind.annotation.*;
* @version 1.0
* @date 2022/4/26 10:15
*/
@Slf4j
@Validated
@Api
(
tags
=
"District(区域管理)"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"区域管理"
,
description
=
"District"
)
@RestController
@RequestMapping
(
"/district/"
)
public
class
DistrictController
{
...
...
app/src/main/java/com/yiring/app/web/icon/IconController.java
浏览文件 @
52704c34
...
...
@@ -12,7 +12,6 @@ import io.swagger.annotations.Api;
import
io.swagger.annotations.ApiOperation
;
import
javax.annotation.Resource
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
...
...
@@ -25,9 +24,10 @@ import org.springframework.web.bind.annotation.RestController;
* @description:
* @date 2022/5/5 15:18
*/
@Slf4j
@Validated
@Api
(
tags
=
"Icon(图标管理)"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"图标管理"
,
description
=
"Icon"
)
@RestController
@RequestMapping
(
"/icon/"
)
public
class
IconController
{
...
...
app/src/main/java/com/yiring/app/web/key/KeyAlarmController.java
浏览文件 @
52704c34
...
...
@@ -10,7 +10,7 @@ import com.yiring.common.vo.PageVo;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
javax.annotation.Resource
;
import
lombok.extern.slf4j.Slf4j
;
import
javax.servlet.http.HttpServletResponse
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
...
...
@@ -23,9 +23,9 @@ import org.springframework.web.bind.annotation.RestController;
* @date 2022/5/10
*/
@Slf4j
@Validated
@Api
(
tags
=
"按键报警"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"按键报警"
,
description
=
"KeyAlarm"
)
@RestController
@RequestMapping
(
"/key/alarm"
)
public
class
KeyAlarmController
{
...
...
@@ -38,4 +38,10 @@ public class KeyAlarmController {
public
Result
<
PageVo
<
KeyAlarmVo
>>
page
(
KeyAlarmFindParam
param
,
PageParam
pageParam
)
{
return
keyAlarmService
.
page
(
param
,
pageParam
);
}
@ApiOperation
(
"导出"
)
@GetMapping
public
void
export
(
KeyAlarmFindParam
param
,
HttpServletResponse
response
)
{
keyAlarmService
.
export
(
param
,
response
);
}
}
app/src/main/java/com/yiring/app/web/key/KeyAlarmLogController.java
0 → 100644
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
web
.
key
;
import
com.yiring.app.param.key.KeyAlarmLogFindParam
;
import
com.yiring.app.service.key.KeyAlarmLogService
;
import
com.yiring.app.vo.key.KeyAlarmLogVo
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.PageParam
;
import
com.yiring.common.vo.PageVo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
javax.annotation.Resource
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* 按键报警推送信息
*
* @author LJ-2204
* @date 2022/5/13
*/
@Validated
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"按键报警推送"
,
description
=
"KeyAlarmLog"
)
@RestController
@RequestMapping
(
"/key/alarm/log"
)
public
class
KeyAlarmLogController
{
@Resource
KeyAlarmLogService
keyAlarmLogService
;
@ApiOperation
(
"表格查询"
)
@GetMapping
(
"page"
)
public
Result
<
PageVo
<
KeyAlarmLogVo
>>
page
(
KeyAlarmLogFindParam
param
,
PageParam
pageParam
)
{
return
keyAlarmLogService
.
page
(
param
,
pageParam
);
}
}
app/src/main/java/com/yiring/app/web/key/KeyAlarmRule
s
Controller.java
→
app/src/main/java/com/yiring/app/web/key/KeyAlarmRuleController.java
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
web
.
key
;
import
com.yiring.app.param.key.KeyAlarmRule
s
AddParam
;
import
com.yiring.app.param.key.KeyAlarmRule
s
ExportParam
;
import
com.yiring.app.param.key.KeyAlarmRule
s
ModifyParam
;
import
com.yiring.app.param.key.KeyAlarmRule
s
PageParam
;
import
com.yiring.app.service.key.KeyAlarmRule
s
Service
;
import
com.yiring.app.vo.key.KeyAlarmRule
s
Vo
;
import
com.yiring.app.param.key.KeyAlarmRuleAddParam
;
import
com.yiring.app.param.key.KeyAlarmRuleExportParam
;
import
com.yiring.app.param.key.KeyAlarmRuleModifyParam
;
import
com.yiring.app.param.key.KeyAlarmRulePageParam
;
import
com.yiring.app.service.key.KeyAlarmRuleService
;
import
com.yiring.app.vo.key.KeyAlarmRuleVo
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.IdParam
;
import
com.yiring.common.param.PageParam
;
...
...
@@ -15,7 +15,6 @@ import io.swagger.annotations.Api;
import
io.swagger.annotations.ApiOperation
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletResponse
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
...
...
@@ -26,43 +25,43 @@ import org.springframework.web.bind.annotation.*;
* @date 2022/5/6
*/
@Slf4j
@Validated
@Api
(
tags
=
"按键报警规则"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"按键报警规则"
,
description
=
"KeyAlarmRule"
)
@RestController
@RequestMapping
(
"/key/alarm/rules"
)
public
class
KeyAlarmRule
s
Controller
{
public
class
KeyAlarmRuleController
{
@Resource
KeyAlarmRule
sService
keyAlarmRules
Service
;
KeyAlarmRule
Service
keyAlarmRule
Service
;
@ApiOperation
(
"新增报警规则"
)
@PostMapping
(
"add"
)
public
Result
<
String
>
add
(
KeyAlarmRule
sAddParam
keyAlarmRules
AddParam
)
{
return
keyAlarmRule
sService
.
add
(
keyAlarmRules
AddParam
);
public
Result
<
String
>
add
(
KeyAlarmRule
AddParam
keyAlarmRule
AddParam
)
{
return
keyAlarmRule
Service
.
add
(
keyAlarmRule
AddParam
);
}
@ApiOperation
(
"删除报警规则"
)
@DeleteMapping
(
"delete"
)
public
Result
<
String
>
delete
(
IdParam
idParam
)
{
return
keyAlarmRule
s
Service
.
delete
(
idParam
);
return
keyAlarmRuleService
.
delete
(
idParam
);
}
@ApiOperation
(
"更新报警规则"
)
@PutMapping
(
"modify"
)
public
Result
<
String
>
modify
(
KeyAlarmRule
sModifyParam
keyAlarmRules
ModifyParam
)
{
return
keyAlarmRule
sService
.
modify
(
keyAlarmRules
ModifyParam
);
public
Result
<
String
>
modify
(
KeyAlarmRule
ModifyParam
keyAlarmRule
ModifyParam
)
{
return
keyAlarmRule
Service
.
modify
(
keyAlarmRule
ModifyParam
);
}
@ApiOperation
(
"导出"
)
@GetMapping
(
"export"
)
public
void
export
(
KeyAlarmRule
sExportParam
keyAlarmRules
ExportParam
,
HttpServletResponse
response
)
{
keyAlarmRule
sService
.
export
(
keyAlarmRules
ExportParam
,
response
);
public
void
export
(
KeyAlarmRule
ExportParam
keyAlarmRule
ExportParam
,
HttpServletResponse
response
)
{
keyAlarmRule
Service
.
export
(
keyAlarmRule
ExportParam
,
response
);
}
@ApiOperation
(
"表格查询"
)
@GetMapping
(
"page"
)
public
Result
<
PageVo
<
KeyAlarmRule
sVo
>>
page
(
KeyAlarmRulesPageParam
keyAlarmRules
PageParam
,
PageParam
pageParam
)
{
return
keyAlarmRule
sService
.
page
(
keyAlarmRules
PageParam
,
pageParam
);
public
Result
<
PageVo
<
KeyAlarmRule
Vo
>>
page
(
KeyAlarmRulePageParam
keyAlarmRule
PageParam
,
PageParam
pageParam
)
{
return
keyAlarmRule
Service
.
page
(
keyAlarmRule
PageParam
,
pageParam
);
}
}
app/src/main/java/com/yiring/app/web/location/beacon/LocationBeaconController.java
浏览文件 @
52704c34
...
...
@@ -13,7 +13,6 @@ import io.swagger.annotations.ApiOperation;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
...
...
@@ -27,9 +26,9 @@ import org.springframework.web.bind.annotation.RestController;
* @date 2022/4/27
*/
@Slf4j
@Validated
@Api
(
tags
=
"定位信标"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"定位信标"
,
description
=
"LocationBeacon"
)
@RestController
@RequestMapping
(
"/location/beacon/"
)
public
class
LocationBeaconController
{
...
...
app/src/main/java/com/yiring/app/web/location/fence/LocationFenceController.java
浏览文件 @
52704c34
...
...
@@ -19,7 +19,6 @@ import io.swagger.annotations.ApiOperation;
import
java.util.Objects
;
import
javax.annotation.Resource
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.data.domain.Sort
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
...
...
@@ -32,11 +31,12 @@ import org.springframework.web.bind.annotation.RestController;
* @version 1.0
* @date 2022/4/28 11:50
*/
@RestController
@Api
(
tags
=
"Fence(围栏信息)"
)
@Validated
@Slf4j
@RequestMapping
(
"location/fence"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"围栏信息"
,
description
=
"LocationFence"
)
@RestController
@RequestMapping
(
"/location/fence"
)
public
class
LocationFenceController
{
@Resource
...
...
app/src/main/java/com/yiring/app/web/location/rule/LocationAlarmRuleController.java
浏览文件 @
52704c34
...
...
@@ -20,7 +20,6 @@ import java.util.Objects;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.data.domain.Sort
;
import
org.springframework.http.MediaType
;
import
org.springframework.validation.annotation.Validated
;
...
...
@@ -31,9 +30,10 @@ import org.springframework.web.bind.annotation.*;
* @version 1.0
* @date 2022/5/5 14:19
*/
@Slf4j
@Validated
@Api
(
tags
=
"AlarmRule(电子围栏报警规则,配置报警给谁)"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"电子围栏报警规则,配置报警给谁"
,
description
=
"AlarmRule"
)
@RestController
@RequestMapping
(
"/alarm/rule"
)
public
class
LocationAlarmRuleController
{
...
...
app/src/main/java/com/yiring/app/web/location/rule/LocationFenceRuleController.java
浏览文件 @
52704c34
...
...
@@ -13,7 +13,6 @@ import io.swagger.annotations.Api;
import
io.swagger.annotations.ApiOperation
;
import
javax.annotation.Resource
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
...
...
@@ -25,9 +24,10 @@ import org.springframework.web.bind.annotation.RestController;
* @version 1.0
* @date 2022/4/29 9:05
*/
@Slf4j
@Validated
@Api
(
tags
=
"FenceRule(电子围栏报警规则,什么情况下会报警)"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"电子围栏报警规则,什么情况下会报警"
,
description
=
"FenceRule"
)
@RestController
@RequestMapping
(
"/location/rule"
)
public
class
LocationFenceRuleController
{
...
...
app/src/main/java/com/yiring/app/web/location/tag/LocationTagController.java
浏览文件 @
52704c34
...
...
@@ -14,7 +14,6 @@ import io.swagger.annotations.ApiOperation;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
...
...
@@ -25,9 +24,9 @@ import org.springframework.web.multipart.MultipartFile;
* @date 2022/4/13
*/
@Slf4j
@Validated
@Api
(
tags
=
"定位标签"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"定位标签"
,
description
=
"LocationTag"
)
@RestController
@RequestMapping
(
"/location/tag/"
)
public
class
LocationTagController
{
...
...
app/src/main/java/com/yiring/app/web/location/tag/LocationTagTypeController.java
浏览文件 @
52704c34
...
...
@@ -12,7 +12,6 @@ import io.swagger.annotations.Api;
import
io.swagger.annotations.ApiOperation
;
import
javax.annotation.Resource
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PutMapping
;
...
...
@@ -26,9 +25,9 @@ import org.springframework.web.bind.annotation.RestController;
* @date 2022/4/27
*/
@Slf4j
@Validated
@Api
(
tags
=
"标签分配"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"标签分配"
,
description
=
"LocationTagType"
)
@RestController
@RequestMapping
(
"/location/tag/type"
)
public
class
LocationTagTypeController
{
...
...
app/src/main/java/com/yiring/app/web/map/MapController.java
浏览文件 @
52704c34
...
...
@@ -12,10 +12,8 @@ import com.yiring.common.core.Status;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
java.io.Serializable
;
import
java.util.List
;
import
javax.annotation.Resource
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
...
...
@@ -28,9 +26,10 @@ import org.springframework.web.bind.annotation.RestController;
* @version 1.0
* @date 2022/4/24 13:48
*/
@Slf4j
@Validated
@Api
(
tags
=
"Map(地图)"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"地图"
,
description
=
"Map"
)
@RestController
@RequestMapping
(
"/map/"
)
public
class
MapController
{
...
...
@@ -40,7 +39,7 @@ public class MapController {
@GetMapping
(
"/mapSelect"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
value
=
"orgId"
,
required
=
true
,
name
=
"orgId"
)
})
public
Result
<
Serializable
>
fail
(
String
orgId
)
{
public
Result
<
MapVo
>
select
(
String
orgId
)
{
String
login
=
ZyUtil
.
openLogin
();
JSONObject
jsonObject
=
mapClient
.
selectMap
(
orgId
,
"bearer "
+
login
);
// if (ObjectUtil.isNotNull(jsonObject.getJSONArray("data"))) {
...
...
app/src/main/java/com/yiring/app/web/post/PostController.java
浏览文件 @
52704c34
...
...
@@ -19,7 +19,6 @@ import io.swagger.annotations.ApiOperation;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
...
...
@@ -29,9 +28,9 @@ import org.springframework.web.bind.annotation.*;
* @date 2022/4/12
*/
@Slf4j
@Validated
@Api
(
tags
=
"职位信息"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"职位信息"
,
description
=
"Post"
)
@RestController
@RequestMapping
(
"/post/"
)
public
class
PostController
{
...
...
app/src/main/java/com/yiring/app/web/rehearsal/AccidentSpotController.java
浏览文件 @
52704c34
...
...
@@ -31,8 +31,9 @@ import org.springframework.web.bind.annotation.*;
*/
@Slf4j
@Validated
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"事故点管理"
,
description
=
"AccidentSpot"
)
@RestController
@Api
(
tags
=
"AccidentSpot(事故点管理)"
)
@RequestMapping
(
"/accident/spot"
)
public
class
AccidentSpotController
{
...
...
app/src/main/java/com/yiring/app/web/rehearsal/EvacuationZoneController.java
浏览文件 @
52704c34
...
...
@@ -16,6 +16,7 @@ import io.swagger.annotations.Api;
import
io.swagger.annotations.ApiOperation
;
import
javax.annotation.Resource
;
import
javax.validation.Valid
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
/**
...
...
@@ -23,7 +24,10 @@ import org.springframework.web.bind.annotation.*;
* @version 1.0
* @date 2022/5/9 10:19
*/
@Api
(
tags
=
"EvacuationZone(撤离区)"
)
@Validated
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"撤离区"
,
description
=
"EvacuationZone"
)
@RestController
@RequestMapping
(
"/evacuation/zone"
)
public
class
EvacuationZoneController
{
...
...
app/src/main/java/com/yiring/app/web/rehearsal/RehearsalPlanController.java
浏览文件 @
52704c34
...
...
@@ -19,6 +19,7 @@ import com.yiring.common.param.PageParam;
import
com.yiring.common.vo.PageVo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.Optional
;
...
...
@@ -28,6 +29,7 @@ import javax.validation.Valid;
import
org.locationtech.jts.geom.Geometry
;
import
org.springframework.data.domain.Sort
;
import
org.springframework.http.MediaType
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
/**
...
...
@@ -35,8 +37,10 @@ import org.springframework.web.bind.annotation.*;
* @version 1.0
* @date 2022/5/10 14:08
*/
@Validated
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"演练计划"
,
description
=
"RehearsalPlan"
)
@RestController
@Api
(
tags
=
"RehearsalPlan(演练计划)"
)
@RequestMapping
(
"/rehearsal/plan"
)
public
class
RehearsalPlanController
{
...
...
@@ -123,11 +127,11 @@ public class RehearsalPlanController {
}
@GetMapping
(
"/get"
)
public
List
<
LocationTag
>
get
()
{
public
Result
<
ArrayList
<
LocationTag
>
>
get
()
{
Optional
<
AccidentSpot
>
optional
=
accidentSpotRepository
.
findById
(
1524292027951353856L
);
Geometry
geometry
=
optional
.
get
().
getGeometry
();
List
<
LocationTag
>
inArea
=
locationTagRepository
.
findInArea
(
geometry
);
System
.
out
.
println
(
inArea
);
return
inArea
;
return
Result
.
ok
(
new
ArrayList
<>(
inArea
))
;
}
}
app/src/main/java/com/yiring/app/web/user/UserAppController.java
浏览文件 @
52704c34
...
...
@@ -17,6 +17,7 @@ import javax.annotation.Resource;
import
javax.servlet.http.HttpServletResponse
;
import
javax.validation.Valid
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.http.MediaType
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
...
...
@@ -31,7 +32,8 @@ import org.springframework.web.multipart.MultipartFile;
@Slf4j
@Validated
@Api
(
tags
=
"人员管理"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"人员管理"
,
description
=
"user"
)
@RestController
@RequestMapping
(
"/user/app/"
)
public
class
UserAppController
{
...
...
@@ -69,7 +71,7 @@ public class UserAppController {
return
userService
.
deleteUser
(
idsParam
);
}
@ApiOperation
(
"用户导出"
)
@ApiOperation
(
value
=
"用户导出"
,
produces
=
MediaType
.
APPLICATION_OCTET_STREAM_VALUE
)
@GetMapping
(
"exportUser"
)
public
void
exportUser
(
@Valid
UserFindParam
userFindParam
,
HttpServletResponse
response
)
{
userService
.
exportUser
(
userFindParam
,
response
);
...
...
app/src/main/java/com/yiring/app/web/video/VideoController.java
浏览文件 @
52704c34
...
...
@@ -35,7 +35,8 @@ import org.springframework.web.multipart.MultipartFile;
*/
@Slf4j
@Validated
@Api
(
tags
=
"Video(监控设备)"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"监控设备"
,
description
=
"Video"
)
@RestController
@RequestMapping
(
"/video/"
)
public
class
VideoController
{
...
...
app/src/main/java/com/yiring/app/web/visitor/CarController.java
浏览文件 @
52704c34
...
...
@@ -28,10 +28,11 @@ import org.springframework.web.bind.annotation.RestController;
* 2022/4/11 17:02
*/
@Slf4j
@Api
(
tags
=
"Car(车辆)"
)
@Validated
@RestController
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"车辆"
,
description
=
"Car"
)
@RequestMapping
(
"/Car/"
)
@RestController
public
class
CarController
{
@Resource
...
...
app/src/main/java/com/yiring/app/web/visitor/InvitationController.java
浏览文件 @
52704c34
...
...
@@ -30,7 +30,8 @@ import org.springframework.web.bind.annotation.RestController;
*/
@Slf4j
@Validated
@Api
(
tags
=
"Invitation(邀请)"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"邀请"
,
description
=
"Invitation"
)
@RestController
@RequestMapping
(
"/invitation/"
)
public
class
InvitationController
{
...
...
app/src/main/java/com/yiring/app/web/visitor/VisitorController.java
浏览文件 @
52704c34
...
...
@@ -31,7 +31,8 @@ import org.springframework.web.bind.annotation.RestController;
*/
@Slf4j
@Validated
@Api
(
tags
=
"Visitor(访客)"
)
@SuppressWarnings
({
"deprecation"
})
@Api
(
tags
=
"访客"
,
description
=
"Visitor"
)
@RestController
@RequestMapping
(
"/visitor/"
)
public
class
VisitorController
{
...
...
basic-auth/build.gradle
浏览文件 @
52704c34
...
...
@@ -9,8 +9,8 @@ dependencies {
// 本地依赖
implementation
fileTree
(
dir:
project
.
rootDir
.
getPath
()
+
'\\libs'
,
includes:
[
'*jar'
])
// swagger
annotations
implementation
"
io.swagger:swagger-annotations:${swaggerAnnotations
Version}"
// swagger
(knife4j)
implementation
"
com.github.xiaoymin:knife4j-spring-boot-starter:${knife4j
Version}"
// sa-token
implementation
"cn.dev33:sa-token-spring-boot-starter:${saTokenVersion}"
...
...
basic-auth/src/main/java/com/yiring/auth/service/user/UserService.java
浏览文件 @
52704c34
...
...
@@ -5,6 +5,7 @@ import com.yiring.auth.param.user.UserFindParam;
import
com.yiring.auth.param.user.UserSaveParam
;
import
com.yiring.auth.vo.user.UserVo
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.IdParam
;
import
com.yiring.common.param.PageParam
;
import
com.yiring.common.vo.PageVo
;
...
...
@@ -29,4 +30,11 @@ public interface UserService {
* @return Result<PageVo<UserVo>>
*/
Result
<
PageVo
<
UserVo
>>
page
(
UserFindParam
param
,
PageParam
pageParam
);
/**
* 重置密码
* @param idParam IdParam
* @return Result<String>
*/
Result
<
String
>
reset
(
IdParam
idParam
);
}
basic-auth/src/main/java/com/yiring/auth/service/user/impl/UserServiceImpl.java
浏览文件 @
52704c34
...
...
@@ -12,10 +12,13 @@ import com.yiring.auth.param.user.UserSaveParam;
import
com.yiring.auth.service.user.UserService
;
import
com.yiring.auth.vo.user.UserVo
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Status
;
import
com.yiring.common.domain.BasicEntity
;
import
com.yiring.common.param.IdParam
;
import
com.yiring.common.param.PageParam
;
import
com.yiring.common.vo.PageVo
;
import
java.util.List
;
import
java.util.Optional
;
import
java.util.stream.Collectors
;
import
javax.annotation.Resource
;
import
javax.persistence.criteria.CriteriaBuilder
;
...
...
@@ -87,4 +90,18 @@ public class UserServiceImpl implements UserService {
PageVo
<
UserVo
>
pageVo
=
PageVo
.
build
(
userVos
,
users
.
getTotalElements
());
return
Result
.
ok
(
pageVo
);
}
@Override
public
Result
<
String
>
reset
(
IdParam
idParam
)
{
Optional
<
User
>
userOptional
=
userRepository
.
findById
(
idParam
.
getId
());
if
(
userOptional
.
isPresent
())
{
User
user
=
userOptional
.
get
();
user
.
setPassword
(
"123456"
);
userRepository
.
save
(
user
);
return
Result
.
ok
();
}
return
Result
.
no
(
Status
.
BAD_REQUEST
);
}
}
basic-auth/src/main/java/com/yiring/auth/web/auth/AuthController.java
浏览文件 @
52704c34
...
...
@@ -4,6 +4,7 @@ package com.yiring.auth.web.auth;
import
cn.dev33.satoken.secure.SaSecureUtil
;
import
cn.dev33.satoken.stp.StpUtil
;
import
cn.hutool.core.util.StrUtil
;
import
com.github.xiaoymin.knife4j.annotations.ApiSupport
;
import
com.yiring.auth.domain.user.User
;
import
com.yiring.auth.domain.user.UserRepository
;
import
com.yiring.auth.param.auth.LoginParam
;
...
...
@@ -36,7 +37,9 @@ import org.springframework.web.bind.annotation.RestController;
@Slf4j
@Validated
@Api
(
tags
=
"Auth"
)
@SuppressWarnings
({
"deprecation"
})
@ApiSupport
(
order
=
-
99
)
@Api
(
tags
=
"身份认证"
,
description
=
"Auth"
)
@RestController
@RequestMapping
(
"/auth/"
)
public
class
AuthController
{
...
...
basic-auth/src/main/java/com/yiring/auth/web/permission/PermissionController.java
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
auth
.
web
.
permission
;
import
com.github.xiaoymin.knife4j.annotations.ApiSupport
;
import
com.yiring.auth.domain.permission.Permission
;
import
com.yiring.auth.domain.permission.PermissionRepository
;
import
com.yiring.auth.param.permission.PermissionParam
;
...
...
@@ -38,7 +39,9 @@ import org.springframework.web.bind.annotation.*;
@Slf4j
@Validated
@Api
(
tags
=
"Permission"
)
@SuppressWarnings
({
"deprecation"
})
@ApiSupport
(
order
=
-
97
)
@Api
(
tags
=
"权限管理"
,
description
=
"Permission"
)
@RestController
@RequestMapping
(
"/manage/permission/"
)
public
class
PermissionController
{
...
...
basic-auth/src/main/java/com/yiring/auth/web/role/RoleController.java
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
auth
.
web
.
role
;
import
com.github.xiaoymin.knife4j.annotations.ApiSupport
;
import
com.yiring.auth.domain.permission.Permission
;
import
com.yiring.auth.domain.permission.PermissionRepository
;
import
com.yiring.auth.domain.role.Role
;
...
...
@@ -40,7 +41,9 @@ import org.springframework.web.bind.annotation.RestController;
@Slf4j
@Validated
@Api
(
tags
=
"Role"
)
@SuppressWarnings
({
"deprecation"
})
@ApiSupport
(
order
=
-
96
)
@Api
(
tags
=
"角色管理"
,
description
=
"Role"
)
@RestController
@RequestMapping
(
"/manage/role/"
)
public
class
RoleController
{
...
...
basic-auth/src/main/java/com/yiring/auth/web/user/UserController.java
浏览文件 @
52704c34
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
auth
.
web
.
user
;
import
com.github.xiaoymin.knife4j.annotations.ApiSupport
;
import
com.yiring.auth.domain.permission.Permission
;
import
com.yiring.auth.domain.role.Role
;
import
com.yiring.auth.domain.role.RoleRepository
;
...
...
@@ -46,7 +47,9 @@ import org.springframework.web.bind.annotation.RestController;
@Slf4j
@Validated
@Api
(
tags
=
"User"
)
@SuppressWarnings
({
"deprecation"
})
@ApiSupport
(
order
=
-
95
)
@Api
(
tags
=
"用户管理"
,
description
=
"User"
)
@RestController
@RequestMapping
(
"/user/"
)
public
class
UserController
{
...
...
@@ -145,4 +148,10 @@ public class UserController {
public
Result
<
String
>
add
(
@Valid
UserSaveParam
param
)
{
return
userService
.
add
(
param
);
}
@ApiOperation
(
"重置密码"
)
@PostMapping
(
"reset"
)
public
Result
<
String
>
reset
(
@Valid
IdParam
idParam
)
{
return
userService
.
reset
(
idParam
);
}
}
basic-common/minio/build.gradle
浏览文件 @
52704c34
...
...
@@ -3,8 +3,8 @@ dependencies {
implementation
'org.springframework.boot:spring-boot-starter-web'
// swagger
implementation
"
io.swagger:swagger-annotations:${swaggerAnnotations
Version}"
// swagger
(knife4j)
implementation
"
com.github.xiaoymin:knife4j-spring-boot-starter:${knife4j
Version}"
// minio
implementation
"io.minio:minio:${minioVersion}"
...
...
basic-common/minio/src/main/java/com/yiring/common/web/MinioController.java
浏览文件 @
52704c34
...
...
@@ -3,6 +3,7 @@ package com.yiring.common.web;
import
cn.hutool.core.lang.Snowflake
;
import
cn.hutool.core.util.IdUtil
;
import
com.github.xiaoymin.knife4j.annotations.ApiSupport
;
import
com.yiring.common.core.Minio
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Status
;
...
...
@@ -15,10 +16,7 @@ import java.time.format.DateTimeFormatter;
import
javax.annotation.Resource
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestPart
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
/**
...
...
@@ -27,7 +25,9 @@ import org.springframework.web.multipart.MultipartFile;
@Slf4j
@Validated
@Api
(
tags
=
"Minio"
)
@SuppressWarnings
({
"deprecation"
})
@ApiSupport
(
order
=
-
98
)
@Api
(
tags
=
"文件管理"
,
description
=
"file"
)
@RestController
@RequestMapping
(
"/common/minio/"
)
public
class
MinioController
{
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论