Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
B
basic-api-boot
概览
概览
详情
活动
周期分析
版本库
存储库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Basic
basic-api-boot
Commits
02cfe448
提交
02cfe448
authored
4月 29, 2022
作者:
Administrator
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat : 访客 被放人信息翻译、被访人id条件搜索, 邀请, 按照部门条件搜索
上级
19d7e4e4
隐藏空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
86 行增加
和
30 行删除
+86
-30
Invitation.java
...c/main/java/com/yiring/app/domain/visitor/Invitation.java
+1
-1
Visitor.java
app/src/main/java/com/yiring/app/domain/visitor/Visitor.java
+8
-2
VisitorQueryParam.java
.../java/com/yiring/app/param/visitor/VisitorQueryParam.java
+4
-2
InvitationServiceImpl.java
...iring/app/service/visitor/impl/InvitationServiceImpl.java
+15
-12
VisitorServiceImpl.java
...m/yiring/app/service/visitor/impl/VisitorServiceImpl.java
+29
-11
VisitorDetailsVo.java
...main/java/com/yiring/app/vo/visitor/VisitorDetailsVo.java
+29
-2
没有找到文件。
app/src/main/java/com/yiring/app/domain/visitor/Invitation.java
浏览文件 @
02cfe448
...
...
@@ -74,7 +74,7 @@ public class Invitation implements Serializable {
@Comment
(
"被邀请访客"
)
@JsonIgnore
@OneToOne
@OneToOne
(
cascade
=
CascadeType
.
REMOVE
)
@JoinColumn
(
name
=
"visitor_id"
,
referencedColumnName
=
"id"
)
Visitor
visitor
;
...
...
app/src/main/java/com/yiring/app/domain/visitor/Visitor.java
浏览文件 @
02cfe448
...
...
@@ -2,6 +2,7 @@
package
com
.
yiring
.
app
.
domain
.
visitor
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.yiring.auth.domain.user.User
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
...
...
@@ -70,8 +71,8 @@ public class Visitor implements Serializable {
@Comment
(
"所属单位id"
)
String
orgId
;
@Comment
(
"被访人id"
)
Long
intervieweeId
;
//
@Comment("被访人id")
//
Long intervieweeId;
@Comment
(
"来访原因/邀请原因"
)
String
reason
;
...
...
@@ -109,6 +110,11 @@ public class Visitor implements Serializable {
@OneToOne
(
cascade
=
{
CascadeType
.
ALL
})
Car
car
;
@Comment
(
"被访人信息"
)
@OneToOne
@JoinColumn
(
name
=
"interviewee_id"
,
referencedColumnName
=
"id"
)
User
user
;
@Comment
(
"修改时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
LocalDateTime
updateTime
;
...
...
app/src/main/java/com/yiring/app/param/visitor/VisitorQueryParam.java
浏览文件 @
02cfe448
...
...
@@ -3,6 +3,7 @@ package com.yiring.app.param.visitor;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
import
lombok.*
;
...
...
@@ -20,6 +21,7 @@ import lombok.experimental.FieldDefaults;
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
VisitorQueryParam
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
-
4314254785949101573L
;
@ApiModelProperty
(
value
=
"访客姓名"
,
example
=
"张三"
)
...
...
@@ -46,8 +48,8 @@ public class VisitorQueryParam implements Serializable {
@ApiModelProperty
(
value
=
"标签卡"
,
example
=
"DS41234231"
)
String
labelCard
;
@ApiModelProperty
(
value
=
"
标签卡状态"
,
example
=
"1
"
)
String
labelCardStatus
;
@ApiModelProperty
(
value
=
"
是否主访人"
,
example
=
"1:是,2否
"
)
String
isMain
;
@ApiModelProperty
(
value
=
"预约到访时间(开始)"
,
example
=
"2022-04-19 14:28:00"
)
LocalDateTime
appOfVisitTimeStart
;
...
...
app/src/main/java/com/yiring/app/service/visitor/impl/InvitationServiceImpl.java
浏览文件 @
02cfe448
...
...
@@ -13,6 +13,7 @@ import com.yiring.app.param.visitor.InvitationParam;
import
com.yiring.app.param.visitor.InvitationQueryParam
;
import
com.yiring.app.service.visitor.InvitationService
;
import
com.yiring.app.vo.visitor.InvitationDetailsVo
;
import
com.yiring.auth.domain.dept.Department
;
import
com.yiring.auth.domain.user.User
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Status
;
...
...
@@ -64,7 +65,7 @@ public class InvitationServiceImpl implements InvitationService {
User
user
=
User
.
builder
().
id
(
invitationParam
.
getInviterId
()).
build
();
Visitor
visitor
=
new
Visitor
();
BeanUtils
.
copyProperties
(
invitationParam
,
visitor
);
visitor
.
set
IntervieweeId
(
invitationParam
.
getInviterId
()
);
visitor
.
set
User
(
user
);
visitor
.
setCreateTime
(
LocalDateTime
.
now
());
//身份证验证
// if(StrUtil.isNotBlank(invitationParam.getVisitorCarNum())){
...
...
@@ -120,7 +121,8 @@ public class InvitationServiceImpl implements InvitationService {
visitor2
=
new
Visitor
();
}
BeanUtils
.
copyProperties
(
invitationParam
,
visitor2
);
visitor2
.
setIntervieweeId
(
invitationParam
.
getInviterId
());
visitor2
.
setUser
(
invitation
.
getUser
());
// visitor2.setIntervieweeId(invitationParam.getInviterId());
visitorRepository
.
saveAndFlush
(
visitor2
);
//短信通知该手机用户
//
...
...
@@ -137,7 +139,7 @@ public class InvitationServiceImpl implements InvitationService {
}
Invitation
invitation
=
optional
.
get
();
invitationRepository
.
delete
(
invitation
);
visitorRepository
.
delete
(
invitation
.
getVisitor
());
//
visitorRepository.delete(invitation.getVisitor());
//短信通知该手机用户邀请取消
//
//
...
...
@@ -381,7 +383,8 @@ public class InvitationServiceImpl implements InvitationService {
public
Specification
<
Invitation
>
condition
(
InvitationQueryParam
invitationQueryParam
)
{
return
(
root
,
query
,
criteriaBuilder
)
->
{
Join
<
Invitation
,
Visitor
>
joinVisitor
=
root
.
join
(
"visitor"
,
JoinType
.
LEFT
);
Join
<
Invitation
,
User
>
joinUser
=
root
.
join
(
"user"
,
JoinType
.
LEFT
);
Join
<
Invitation
,
User
>
joinUser
=
joinVisitor
.
join
(
"user"
,
JoinType
.
LEFT
);
Join
<
User
,
Department
>
departmentJoin
=
joinUser
.
join
(
"department"
,
JoinType
.
LEFT
);
// Join<User, Department> joinDepartment = root.join(User.Fields.department, JoinType.LEFT);
List
<
Predicate
>
list
=
new
ArrayList
<>();
if
(
StrUtil
.
isNotBlank
(
invitationQueryParam
.
getVisitorName
()))
{
...
...
@@ -428,14 +431,14 @@ public class InvitationServiceImpl implements InvitationService {
);
}
//
if (invitationQueryParam.getDeptName() != null) {
//
list.add(
//
criteriaBuilder.like(
// joinDepartment
.get(Department.Fields.name).as(String.class),
// "%"+invitationQueryParam.getDeptName()+
"%"
//
)
//
);
//
}
if
(
invitationQueryParam
.
getDeptName
()
!=
null
)
{
list
.
add
(
criteriaBuilder
.
like
(
departmentJoin
.
get
(
Department
.
Fields
.
name
).
as
(
String
.
class
),
"%"
+
invitationQueryParam
.
getDeptName
()
+
"%"
)
);
}
if
(
Objects
.
nonNull
(
invitationQueryParam
.
getAppOfVisitTimeStart
())
&&
...
...
app/src/main/java/com/yiring/app/service/visitor/impl/VisitorServiceImpl.java
浏览文件 @
02cfe448
...
...
@@ -19,6 +19,7 @@ import com.yiring.auth.domain.user.UserRepository;
import
com.yiring.common.constant.RegEx
;
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.vo.PageVo
;
import
java.io.OutputStream
;
...
...
@@ -32,6 +33,8 @@ import java.util.Optional;
import
java.util.concurrent.Executors
;
import
java.util.stream.Collectors
;
import
javax.annotation.Resource
;
import
javax.persistence.criteria.Join
;
import
javax.persistence.criteria.JoinType
;
import
javax.persistence.criteria.Order
;
import
javax.persistence.criteria.Predicate
;
import
javax.servlet.http.HttpServletResponse
;
...
...
@@ -179,6 +182,13 @@ public class VisitorServiceImpl implements VisitorService {
}
VisitorDetailsVo
vo
=
new
VisitorDetailsVo
();
BeanUtils
.
copyProperties
(
visitor
,
vo
);
VisitorDetailsVo
.
UserVo
userVo
=
VisitorDetailsVo
.
UserVo
.
builder
()
.
realName
(
visitor
.
getUser
().
getRealName
())
.
mobile
(
visitor
.
getUser
().
getMobile
())
.
deptName
(
visitor
.
getUser
().
getDepartment
().
getName
())
.
build
();
vo
.
setUserVo
(
userVo
);
vo
.
setList
(
listResult
);
return
Result
.
ok
(
vo
);
}
...
...
@@ -323,6 +333,7 @@ public class VisitorServiceImpl implements VisitorService {
public
Specification
<
Visitor
>
condition
(
VisitorQueryParam
visitorQueryParam
)
{
return
(
root
,
query
,
criteriaBuilder
)
->
{
List
<
Predicate
>
list
=
new
ArrayList
<>();
Join
<
Visitor
,
User
>
join
=
root
.
join
(
"user"
,
JoinType
.
LEFT
);
//查询条件
if
(
StrUtil
.
isNotBlank
(
visitorQueryParam
.
getVisitorName
()))
{
//访客姓名
...
...
@@ -380,9 +391,7 @@ public class VisitorServiceImpl implements VisitorService {
if
(
StrUtil
.
isNotBlank
(
visitorQueryParam
.
getIntervieweeId
()))
{
//被访人
list
.
add
(
criteriaBuilder
.
equal
(
root
.
get
(
Visitor
.
Fields
.
intervieweeId
),
visitorQueryParam
.
getIntervieweeId
())
);
list
.
add
(
criteriaBuilder
.
equal
(
join
.
get
(
BasicEntity
.
Fields
.
id
),
visitorQueryParam
.
getIntervieweeId
()));
}
if
(
StrUtil
.
isNotBlank
(
visitorQueryParam
.
getLabelCard
()))
{
...
...
@@ -395,16 +404,25 @@ public class VisitorServiceImpl implements VisitorService {
);
}
if
(
StrUtil
.
isNotBlank
(
visitorQueryParam
.
getLabelCardStatus
()))
{
//标签卡状态
list
.
add
(
criteriaBuilder
.
like
(
root
.
get
(
Visitor
.
Fields
.
labelCardStatus
),
"%"
+
visitorQueryParam
.
getLabelCardStatus
()
+
"%"
)
);
if
(
StrUtil
.
isNotBlank
(
visitorQueryParam
.
getIsMain
()))
{
//标签卡号查询
if
(
visitorQueryParam
.
getIsMain
().
equals
(
"1"
))
{
list
.
add
(
criteriaBuilder
.
isNull
(
root
.
get
(
Visitor
.
Fields
.
mainVisitorId
)));
}
else
{
list
.
add
(
criteriaBuilder
.
isNotNull
(
root
.
get
(
Visitor
.
Fields
.
mainVisitorId
)));
}
}
// if (StrUtil.isNotBlank(visitorQueryParam.getLabelCardStatus())) {
// //标签卡状态
// list.add(
// criteriaBuilder.like(
// root.get(Visitor.Fields.labelCardStatus),
// "%" + visitorQueryParam.getLabelCardStatus() + "%"
// )
// );
// }
if
(
Objects
.
nonNull
(
visitorQueryParam
.
getAppOfVisitTimeStart
())
&&
Objects
.
nonNull
(
visitorQueryParam
.
getAppOfVisitTimeEnd
())
...
...
app/src/main/java/com/yiring/app/vo/visitor/VisitorDetailsVo.java
浏览文件 @
02cfe448
...
...
@@ -62,8 +62,8 @@ public class VisitorDetailsVo implements Serializable {
@ApiModelProperty
(
value
=
"所属单位id"
,
example
=
"壹润科技"
)
String
orgId
;
@ApiModelProperty
(
value
=
"被访人id"
,
example
=
"1"
)
Long
intervieweeId
;
//
@ApiModelProperty(value = "被访人id", example = "1")
//
Long intervieweeId;
@ApiModelProperty
(
value
=
"被访人姓名"
,
example
=
"李四"
)
String
intervieweeName
;
...
...
@@ -90,6 +90,8 @@ public class VisitorDetailsVo implements Serializable {
@ApiModelProperty
(
value
=
"车辆反参"
)
Car
car
;
UserVo
userVo
;
@ApiModelProperty
(
value
=
"主访人id"
)
Long
mainVisitorId
;
...
...
@@ -119,4 +121,29 @@ public class VisitorDetailsVo implements Serializable {
@ApiModelProperty
(
value
=
"主访人id"
)
Long
mainVisitorId
;
}
@ApiModel
(
"UserVo"
)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
static
class
UserVo
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
4115779013003587949L
;
@JsonSerialize
(
using
=
ToStringSerializer
.
class
)
@ApiModelProperty
(
value
=
"id"
,
example
=
"1"
)
Long
id
;
@ApiModelProperty
(
value
=
"被访人姓名"
,
example
=
"张三"
)
String
realName
;
@ApiModelProperty
(
value
=
"被访人电话"
,
example
=
"17688888888"
)
String
mobile
;
@ApiModelProperty
(
value
=
"被访人部门"
)
String
deptName
;
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论