Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
B
basic-api-boot
概览
概览
详情
活动
周期分析
版本库
存储库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Basic
basic-api-boot
Commits
33192def
提交
33192def
authored
5月 19, 2022
作者:
涂茂林
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat:区域信息实时查询
上级
6411c95b
显示空白字符变更
内嵌
并排
正在显示
11 个修改的文件
包含
149 行增加
和
6 行删除
+149
-6
District.java
...rc/main/java/com/yiring/app/domain/district/District.java
+3
-0
HistoryRouteConditionParam.java
...pp/param/analysis/history/HistoryRouteConditionParam.java
+4
-4
DistrictAddParam.java
.../java/com/yiring/app/param/district/DistrictAddParam.java
+9
-1
DistrictConditionParam.java
...com/yiring/app/param/district/DistrictConditionParam.java
+30
-0
DistrictModifyParam.java
...va/com/yiring/app/param/district/DistrictModifyParam.java
+6
-0
DistrictService.java
...java/com/yiring/app/service/district/DistrictService.java
+9
-0
DistrictServiceImpl.java
...yiring/app/service/district/impl/DistrictServiceImpl.java
+22
-0
DistrictUserVo.java
.../main/java/com/yiring/app/vo/district/DistrictUserVo.java
+55
-0
DistrictVo.java
app/src/main/java/com/yiring/app/vo/district/DistrictVo.java
+1
-1
DistrictController.java
.../java/com/yiring/app/web/district/DistrictController.java
+8
-0
RegEx.java
.../core/src/main/java/com/yiring/common/constant/RegEx.java
+2
-0
没有找到文件。
app/src/main/java/com/yiring/app/domain/district/District.java
浏览文件 @
33192def
...
@@ -51,6 +51,9 @@ public class District implements Serializable {
...
@@ -51,6 +51,9 @@ public class District implements Serializable {
@Comment
(
"区域信息名称"
)
@Comment
(
"区域信息名称"
)
private
String
name
;
private
String
name
;
@Comment
(
"地图id"
)
private
Integer
mapId
;
@Comment
(
"风险等级"
)
@Comment
(
"风险等级"
)
private
String
riskGrade
;
private
String
riskGrade
;
...
...
app/src/main/java/com/yiring/app/param/analysis/history/HistoryRouteConditionParam.java
浏览文件 @
33192def
...
@@ -29,20 +29,20 @@ public class HistoryRouteConditionParam implements Serializable {
...
@@ -29,20 +29,20 @@ public class HistoryRouteConditionParam implements Serializable {
@Serial
@Serial
private
static
final
long
serialVersionUID
=
2386493816691457426L
;
private
static
final
long
serialVersionUID
=
2386493816691457426L
;
@ApiModelProperty
(
value
=
"地图id"
,
example
=
"1"
,
required
=
true
)
@ApiModelProperty
(
value
=
"地图id"
,
example
=
"1
0019
"
,
required
=
true
)
@NotNull
(
message
=
"请选择地图"
)
@NotNull
(
message
=
"请选择地图"
)
private
Long
mapId
;
private
Long
mapId
;
@ApiModelProperty
(
value
=
"用户id"
,
example
=
"1"
,
required
=
true
)
@ApiModelProperty
(
value
=
"用户id"
,
example
=
"1
522770547178475520
"
,
required
=
true
)
@NotNull
(
message
=
"请选择员工"
)
@NotNull
(
message
=
"请选择员工"
)
private
Long
userId
;
private
Long
userId
;
@ApiModelProperty
(
value
=
"开始时间"
,
example
=
"2022-05-0
6
14:00:00"
,
required
=
true
)
@ApiModelProperty
(
value
=
"开始时间"
,
example
=
"2022-05-0
1
14:00:00"
,
required
=
true
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@NotNull
(
message
=
"请选择开始时间"
)
@NotNull
(
message
=
"请选择开始时间"
)
private
LocalDateTime
beginTime
;
private
LocalDateTime
beginTime
;
@ApiModelProperty
(
value
=
"结束时间"
,
example
=
"2022-05-
06
14:05:00"
,
required
=
true
)
@ApiModelProperty
(
value
=
"结束时间"
,
example
=
"2022-05-
20
14:05:00"
,
required
=
true
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@NotNull
(
message
=
"请选择结束时间"
)
@NotNull
(
message
=
"请选择结束时间"
)
private
LocalDateTime
endTime
;
private
LocalDateTime
endTime
;
...
...
app/src/main/java/com/yiring/app/param/district/DistrictAddParam.java
浏览文件 @
33192def
...
@@ -2,12 +2,14 @@
...
@@ -2,12 +2,14 @@
package
com
.
yiring
.
app
.
param
.
district
;
package
com
.
yiring
.
app
.
param
.
district
;
import
com.yiring.app.domain.district.District
;
import
com.yiring.app.domain.district.District
;
import
com.yiring.common.constant.RegEx
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serial
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
javax.validation.constraints.NotEmpty
;
import
javax.validation.constraints.NotEmpty
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.Pattern
;
import
lombok.*
;
import
lombok.*
;
import
org.hibernate.validator.constraints.Length
;
import
org.hibernate.validator.constraints.Length
;
import
org.locationtech.jts.geom.Geometry
;
import
org.locationtech.jts.geom.Geometry
;
...
@@ -33,9 +35,14 @@ public class DistrictAddParam implements Serializable {
...
@@ -33,9 +35,14 @@ public class DistrictAddParam implements Serializable {
@Length
(
max
=
10
,
message
=
"区域名称不能超过10个字符"
)
@Length
(
max
=
10
,
message
=
"区域名称不能超过10个字符"
)
private
String
name
;
private
String
name
;
@ApiModelProperty
(
value
=
"风险等级"
,
example
=
"1"
,
required
=
true
)
@ApiModelProperty
(
value
=
"地图id"
,
example
=
"1"
,
required
=
true
)
@NotNull
(
message
=
"地图id不能为空"
)
private
Integer
mapId
;
@ApiModelProperty
(
value
=
"风险等级"
,
example
=
"#FF0000"
,
required
=
true
)
@NotEmpty
(
message
=
"风险等级不能为空"
)
@NotEmpty
(
message
=
"风险等级不能为空"
)
@Length
(
min
=
6
,
max
=
7
,
message
=
"请选择正确的颜色"
)
@Length
(
min
=
6
,
max
=
7
,
message
=
"请选择正确的颜色"
)
@Pattern
(
regexp
=
RegEx
.
COLOUR_RGB
,
message
=
"颜色格式不正确"
)
private
String
riskGrade
;
private
String
riskGrade
;
@ApiModelProperty
(
value
=
"消抖时间(秒)"
,
example
=
"10"
,
required
=
true
)
@ApiModelProperty
(
value
=
"消抖时间(秒)"
,
example
=
"10"
,
required
=
true
)
...
@@ -54,6 +61,7 @@ public class DistrictAddParam implements Serializable {
...
@@ -54,6 +61,7 @@ public class DistrictAddParam implements Serializable {
return
District
return
District
.
builder
()
.
builder
()
.
name
(
name
)
.
name
(
name
)
.
mapId
(
mapId
)
.
deleted
(
false
)
.
deleted
(
false
)
.
riskGrade
(
riskGrade
)
.
riskGrade
(
riskGrade
)
.
debouncingDuration
(
debouncingDuration
)
.
debouncingDuration
(
debouncingDuration
)
...
...
app/src/main/java/com/yiring/app/param/district/DistrictConditionParam.java
0 → 100644
浏览文件 @
33192def
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
param
.
district
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @author tml
* @version 1.0
* @date 2022/5/19 15:57
*/
@ApiModel
(
"区域查询条件"
)
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public
class
DistrictConditionParam
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
5749083087928117992L
;
@ApiModelProperty
(
value
=
"地图id"
,
example
=
"1"
)
private
Integer
mapId
;
}
app/src/main/java/com/yiring/app/param/district/DistrictModifyParam.java
浏览文件 @
33192def
...
@@ -2,11 +2,13 @@
...
@@ -2,11 +2,13 @@
package
com
.
yiring
.
app
.
param
.
district
;
package
com
.
yiring
.
app
.
param
.
district
;
import
com.yiring.app.domain.district.District
;
import
com.yiring.app.domain.district.District
;
import
com.yiring.common.constant.RegEx
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serial
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.Pattern
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.Data
;
...
@@ -38,8 +40,12 @@ public class DistrictModifyParam implements Serializable {
...
@@ -38,8 +40,12 @@ public class DistrictModifyParam implements Serializable {
@Length
(
max
=
10
,
message
=
"区域名称不能超过10个字符"
)
@Length
(
max
=
10
,
message
=
"区域名称不能超过10个字符"
)
private
String
name
;
private
String
name
;
@ApiModelProperty
(
value
=
"地图id"
,
example
=
"1"
)
private
Integer
mapId
;
@ApiModelProperty
(
value
=
"风险等级"
,
example
=
"1"
,
required
=
true
)
@ApiModelProperty
(
value
=
"风险等级"
,
example
=
"1"
,
required
=
true
)
@Length
(
min
=
6
,
max
=
7
,
message
=
"请选择正确的颜色"
)
@Length
(
min
=
6
,
max
=
7
,
message
=
"请选择正确的颜色"
)
@Pattern
(
regexp
=
RegEx
.
COLOUR_RGB
,
message
=
"颜色格式不正确"
)
private
String
riskGrade
;
private
String
riskGrade
;
@ApiModelProperty
(
value
=
"消抖时间(秒)"
,
example
=
"10"
,
required
=
true
)
@ApiModelProperty
(
value
=
"消抖时间(秒)"
,
example
=
"10"
,
required
=
true
)
...
...
app/src/main/java/com/yiring/app/service/district/DistrictService.java
浏览文件 @
33192def
...
@@ -2,7 +2,9 @@
...
@@ -2,7 +2,9 @@
package
com
.
yiring
.
app
.
service
.
district
;
package
com
.
yiring
.
app
.
service
.
district
;
import
com.yiring.app.param.district.DistrictAddParam
;
import
com.yiring.app.param.district.DistrictAddParam
;
import
com.yiring.app.param.district.DistrictConditionParam
;
import
com.yiring.app.param.district.DistrictModifyParam
;
import
com.yiring.app.param.district.DistrictModifyParam
;
import
com.yiring.app.vo.district.DistrictUserVo
;
import
com.yiring.app.vo.district.DistrictVo
;
import
com.yiring.app.vo.district.DistrictVo
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.IdParam
;
import
com.yiring.common.param.IdParam
;
...
@@ -42,4 +44,11 @@ public interface DistrictService {
...
@@ -42,4 +44,11 @@ public interface DistrictService {
* @return 区域信息
* @return 区域信息
*/
*/
Result
<
PageVo
<
DistrictVo
>>
findByNameLike
(
String
name
);
Result
<
PageVo
<
DistrictVo
>>
findByNameLike
(
String
name
);
/**
* 查询实时围栏列表信息
* @param param 条件
* @return 区域列表
*/
Result
<
PageVo
<
DistrictUserVo
>>
findList
(
DistrictConditionParam
param
);
}
}
app/src/main/java/com/yiring/app/service/district/impl/DistrictServiceImpl.java
浏览文件 @
33192def
...
@@ -4,19 +4,25 @@ package com.yiring.app.service.district.impl;
...
@@ -4,19 +4,25 @@ package com.yiring.app.service.district.impl;
import
com.yiring.app.domain.district.District
;
import
com.yiring.app.domain.district.District
;
import
com.yiring.app.domain.district.DistrictRepository
;
import
com.yiring.app.domain.district.DistrictRepository
;
import
com.yiring.app.param.district.DistrictAddParam
;
import
com.yiring.app.param.district.DistrictAddParam
;
import
com.yiring.app.param.district.DistrictConditionParam
;
import
com.yiring.app.param.district.DistrictModifyParam
;
import
com.yiring.app.param.district.DistrictModifyParam
;
import
com.yiring.app.service.district.DistrictService
;
import
com.yiring.app.service.district.DistrictService
;
import
com.yiring.app.util.JpaUtil
;
import
com.yiring.app.util.JpaUtil
;
import
com.yiring.app.vo.district.DistrictUserVo
;
import
com.yiring.app.vo.district.DistrictVo
;
import
com.yiring.app.vo.district.DistrictVo
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Status
;
import
com.yiring.common.core.Status
;
import
com.yiring.common.param.IdParam
;
import
com.yiring.common.param.IdParam
;
import
com.yiring.common.util.Commons
;
import
com.yiring.common.util.Commons
;
import
com.yiring.common.vo.PageVo
;
import
com.yiring.common.vo.PageVo
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Optional
;
import
java.util.Optional
;
import
java.util.stream.Collectors
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
javax.persistence.criteria.Predicate
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.data.jpa.domain.Specification
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
...
@@ -90,4 +96,20 @@ public class DistrictServiceImpl implements DistrictService {
...
@@ -90,4 +96,20 @@ public class DistrictServiceImpl implements DistrictService {
PageVo
<
DistrictVo
>
pageVo
=
PageVo
.
build
(
voList
,
voList
.
size
());
PageVo
<
DistrictVo
>
pageVo
=
PageVo
.
build
(
voList
,
voList
.
size
());
return
Result
.
ok
(
pageVo
);
return
Result
.
ok
(
pageVo
);
}
}
@Override
public
Result
<
PageVo
<
DistrictUserVo
>>
findList
(
DistrictConditionParam
param
)
{
Specification
<
District
>
specification
=
(
root
,
query
,
criteriaBuilder
)
->
{
ArrayList
<
Predicate
>
list
=
new
ArrayList
<>();
if
(
param
.
getMapId
()
!=
null
)
{
list
.
add
(
criteriaBuilder
.
equal
(
root
.
get
(
District
.
Fields
.
mapId
),
param
.
getMapId
()));
}
Predicate
[]
array
=
list
.
toArray
(
new
Predicate
[
0
]);
return
criteriaBuilder
.
and
(
array
);
};
List
<
District
>
districtList
=
districtRepository
.
findAll
(
specification
);
List
<
DistrictUserVo
>
voList
=
districtList
.
stream
().
map
(
DistrictUserVo:
:
transform
).
collect
(
Collectors
.
toList
());
PageVo
<
DistrictUserVo
>
pageVo
=
PageVo
.
build
(
voList
,
voList
.
size
());
return
Result
.
ok
(
pageVo
);
}
}
}
app/src/main/java/com/yiring/app/vo/district/DistrictUserVo.java
0 → 100644
浏览文件 @
33192def
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
vo
.
district
;
import
com.yiring.app.domain.district.District
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.locationtech.jts.geom.Geometry
;
/**
* @author tml
* @version 1.0
* @date 2022/5/19 16:02
*/
@ApiModel
(
"区域信息和区域内员工数量"
)
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public
class
DistrictUserVo
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
3900485837172743182L
;
@ApiModelProperty
(
value
=
"区域名称"
,
example
=
"生产区域"
)
private
String
name
;
@ApiModelProperty
(
value
=
"风险等级(区域颜色)"
,
example
=
"f##0000"
)
private
String
riskGrade
;
@ApiModelProperty
(
value
=
"空间信息"
,
dataType
=
"java.lang.String"
)
private
Geometry
geometry
;
@ApiModelProperty
(
value
=
"地图id"
,
example
=
"1"
)
private
Integer
mapId
;
@ApiModelProperty
(
value
=
"此区域的员工数量"
,
example
=
"20"
)
private
Integer
userNum
;
public
static
DistrictUserVo
transform
(
District
district
)
{
return
DistrictUserVo
.
builder
()
.
name
(
district
.
getName
())
.
riskGrade
(
district
.
getRiskGrade
())
.
geometry
(
district
.
getGeometry
())
.
mapId
(
builder
().
mapId
)
.
userNum
(
district
.
getTags
().
size
())
.
build
();
}
}
app/src/main/java/com/yiring/app/vo/district/DistrictVo.java
浏览文件 @
33192def
...
@@ -19,7 +19,7 @@ import lombok.NoArgsConstructor;
...
@@ -19,7 +19,7 @@ import lombok.NoArgsConstructor;
* @version 1.0
* @version 1.0
* @date 2022/4/27 9:10
* @date 2022/4/27 9:10
*/
*/
@ApiModel
(
"
DistrictVo
"
)
@ApiModel
(
"
区域信息
"
)
@Data
@Data
@Builder
@Builder
@NoArgsConstructor
@NoArgsConstructor
...
...
app/src/main/java/com/yiring/app/web/district/DistrictController.java
浏览文件 @
33192def
...
@@ -2,8 +2,10 @@
...
@@ -2,8 +2,10 @@
package
com
.
yiring
.
app
.
web
.
district
;
package
com
.
yiring
.
app
.
web
.
district
;
import
com.yiring.app.param.district.DistrictAddParam
;
import
com.yiring.app.param.district.DistrictAddParam
;
import
com.yiring.app.param.district.DistrictConditionParam
;
import
com.yiring.app.param.district.DistrictModifyParam
;
import
com.yiring.app.param.district.DistrictModifyParam
;
import
com.yiring.app.service.district.DistrictService
;
import
com.yiring.app.service.district.DistrictService
;
import
com.yiring.app.vo.district.DistrictUserVo
;
import
com.yiring.app.vo.district.DistrictVo
;
import
com.yiring.app.vo.district.DistrictVo
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.IdParam
;
import
com.yiring.common.param.IdParam
;
...
@@ -60,4 +62,10 @@ public class DistrictController {
...
@@ -60,4 +62,10 @@ public class DistrictController {
}
}
return
districtService
.
findByNameLike
(
name
);
return
districtService
.
findByNameLike
(
name
);
}
}
@ApiOperation
(
value
=
"查询实时围栏列表"
)
@GetMapping
(
"/findList"
)
public
Result
<
PageVo
<
DistrictUserVo
>>
findList
(
@Valid
DistrictConditionParam
param
)
{
return
districtService
.
findList
(
param
);
}
}
}
basic-common/core/src/main/java/com/yiring/common/constant/RegEx.java
浏览文件 @
33192def
...
@@ -27,4 +27,6 @@ public class RegEx {
...
@@ -27,4 +27,6 @@ public class RegEx {
* 报警规则的时间格式
* 报警规则的时间格式
*/
*/
public
static
final
String
TIME_RULE
=
"^星期[一二三四五六日]\\ (2[0-4]|[0-1]\\d)(\\:[0-5]\\d){2}$"
;
public
static
final
String
TIME_RULE
=
"^星期[一二三四五六日]\\ (2[0-4]|[0-1]\\d)(\\:[0-5]\\d){2}$"
;
public
static
final
String
COLOUR_RGB
=
"^#(\\d|[A-F a-f]){6}$"
;
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论