Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
B
basic-api-boot
概览
概览
详情
活动
周期分析
版本库
存储库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Basic
basic-api-boot
Commits
856966b6
提交
856966b6
authored
4月 27, 2022
作者:
Administrator
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat : 邀请,访客,车辆,访客小程序,功能添加
上级
3510b233
全部展开
显示空白字符变更
内嵌
并排
正在显示
28 个修改的文件
包含
785 行增加
和
416 行删除
+785
-416
CarRepository.java
...rc/main/java/com/yiring/app/domain/car/CarRepository.java
+0
-32
Car.java
app/src/main/java/com/yiring/app/domain/visitor/Car.java
+3
-21
CarRepository.java
...ain/java/com/yiring/app/domain/visitor/CarRepository.java
+24
-0
Invitation.java
...c/main/java/com/yiring/app/domain/visitor/Invitation.java
+71
-0
InvitationRepository.java
...a/com/yiring/app/domain/visitor/InvitationRepository.java
+15
-0
Visitor.java
app/src/main/java/com/yiring/app/domain/visitor/Visitor.java
+21
-9
VisitorRepository.java
...java/com/yiring/app/domain/visitor/VisitorRepository.java
+3
-1
CarExportExcel.java
...ain/java/com/yiring/app/excel/visitor/CarExportExcel.java
+1
-1
InvitationExportExcel.java
...a/com/yiring/app/excel/visitor/InvitationExportExcel.java
+62
-0
CarParam.java
app/src/main/java/com/yiring/app/param/visitor/CarParam.java
+5
-23
CarQueryParam.java
...main/java/com/yiring/app/param/visitor/CarQueryParam.java
+1
-1
InvitationParam.java
...in/java/com/yiring/app/param/visitor/InvitationParam.java
+41
-8
InvitationQueryParam.java
...va/com/yiring/app/param/visitor/InvitationQueryParam.java
+58
-0
VisitorListParam.java
...n/java/com/yiring/app/param/visitor/VisitorListParam.java
+0
-49
VisitorParam.java
.../main/java/com/yiring/app/param/visitor/VisitorParam.java
+21
-22
CarService.java
.../main/java/com/yiring/app/service/visitor/CarService.java
+23
-25
InvitationService.java
...ava/com/yiring/app/service/visitor/InvitationService.java
+68
-0
VisitorService.java
...n/java/com/yiring/app/service/visitor/VisitorService.java
+15
-14
CarServiceImpl.java
...a/com/yiring/app/service/visitor/impl/CarServiceImpl.java
+25
-53
InvitationServiceImpl.java
...iring/app/service/visitor/impl/InvitationServiceImpl.java
+0
-0
VisitorServiceImpl.java
...m/yiring/app/service/visitor/impl/VisitorServiceImpl.java
+78
-87
VideoNameVo.java
app/src/main/java/com/yiring/app/vo/video/VideoNameVo.java
+49
-0
CarVo.java
app/src/main/java/com/yiring/app/vo/visitor/CarVo.java
+28
-40
InvitationVo.java
...src/main/java/com/yiring/app/vo/visitor/InvitationVo.java
+59
-0
VisitorVo.java
app/src/main/java/com/yiring/app/vo/visitor/VisitorVo.java
+4
-0
CarController.java
...c/main/java/com/yiring/app/web/visitor/CarController.java
+24
-25
InvitationController.java
...java/com/yiring/app/web/visitor/InvitationController.java
+81
-0
VisitorController.java
...in/java/com/yiring/app/web/visitor/VisitorController.java
+5
-5
没有找到文件。
app/src/main/java/com/yiring/app/domain/car/CarRepository.java
deleted
100644 → 0
浏览文件 @
3510b233
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
domain
.
car
;
import
java.io.Serializable
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaSpecificationExecutor
;
import
org.springframework.stereotype.Repository
;
/**
* @author tzl
* 2022/4/11 13:42
*/
@Repository
public
interface
CarRepository
extends
JpaRepository
<
Car
,
Serializable
>,
JpaSpecificationExecutor
<
Car
>
{
// /**
// * 检查是否存在相同车牌号登记
// *
// * @param param String 车牌号码
// * @return 是否存在
// */
// @Query("SELECT COUNT(c.id) FROM bs_car c where car_num=?1 and label_card_status <>'已收卡'")
// boolean hasCarInfoByCarNum(String param);
//
// /**
// * 检查是否存在相同手机号码登记
// *
// * @param param String 手机号码
// * @return 是否存在
// */
// @Query("SELECT COUNT(c.id) FROM bs_car c where driver_mobile=?1 and label_card_status <>'已收卡'")
// boolean hasCarInfoByMobile(String param);
}
app/src/main/java/com/yiring/app/domain/
ca
r/Car.java
→
app/src/main/java/com/yiring/app/domain/
visito
r/Car.java
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
domain
.
ca
r
;
package
com
.
yiring
.
app
.
domain
.
visito
r
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
java.io.Serial
;
import
java.io.Serial
;
...
@@ -48,24 +48,6 @@ public class Car implements Serializable {
...
@@ -48,24 +48,6 @@ public class Car implements Serializable {
@Comment
(
"车辆类型"
)
@Comment
(
"车辆类型"
)
String
carType
;
String
carType
;
@Comment
(
"司机名称"
)
String
driverName
;
@Comment
(
"司机电话"
)
String
driverMobile
;
@Comment
(
"标签卡"
)
String
labelCard
;
@Comment
(
"所属单位id"
)
String
orgId
;
@Comment
(
"被访人id"
)
String
intervieweeId
;
@Comment
(
"来访原因"
)
String
reason
;
@Comment
(
"收卡时间"
)
@Comment
(
"收卡时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
LocalDateTime
cardRecTime
;
LocalDateTime
cardRecTime
;
...
@@ -77,6 +59,6 @@ public class Car implements Serializable {
...
@@ -77,6 +59,6 @@ public class Car implements Serializable {
@Comment
(
"发卡时间"
)
@Comment
(
"发卡时间"
)
LocalDateTime
cardSendTime
;
LocalDateTime
cardSendTime
;
@Comment
(
"
备用字段
"
)
@Comment
(
"
标签卡
"
)
String
reserve4
;
String
labelCard
;
}
}
app/src/main/java/com/yiring/app/domain/visitor/CarRepository.java
0 → 100644
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
domain
.
visitor
;
import
java.io.Serializable
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaSpecificationExecutor
;
import
org.springframework.data.jpa.repository.Query
;
import
org.springframework.stereotype.Repository
;
/**
* @author tzl
* 2022/4/11 13:42
*/
@Repository
public
interface
CarRepository
extends
JpaRepository
<
Car
,
Serializable
>,
JpaSpecificationExecutor
<
Car
>
{
/**
* 检查车牌号车辆是否已经在园内
*
* @param param String 车牌号码
* @return 是否存在
*/
@Query
(
"SELECT COUNT(c.id) FROM Car c where carNum=?1 and cardRecTime is null"
)
int
hasCarInfoByCarNum
(
String
param
);
}
app/src/main/java/com/yiring/app/domain/visitor/Invitation.java
0 → 100644
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
domain
.
visitor
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
import
javax.persistence.*
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
import
lombok.experimental.FieldNameConstants
;
import
org.hibernate.annotations.Comment
;
import
org.hibernate.annotations.GenericGenerator
;
import
org.hibernate.snowflake.SnowflakeId
;
/**
* 邀请管理
*
* @author Administrator
* @version 1.0
* @description: 邀请信息实体
* @date 2022/4/24 16:43
*/
@Getter
@Setter
@ToString
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldNameConstants
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
@Entity
@Table
(
name
=
"BS_INVITATION"
)
@Comment
(
"邀请信息"
)
public
class
Invitation
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
-
1330887992216252468L
;
@Id
@Comment
(
"主键id"
)
@GeneratedValue
(
generator
=
SnowflakeId
.
GENERATOR
)
@GenericGenerator
(
name
=
SnowflakeId
.
GENERATOR
,
strategy
=
SnowflakeId
.
Strategy
.
LONG
)
Long
id
;
@Comment
(
"邀请方式"
)
String
InvitationMethod
;
@Comment
(
"状态"
)
String
status
;
@Comment
(
"邀请人id"
)
Long
inviterId
;
@Comment
(
"邀请人数"
)
Integer
numOfVisitor
;
@Comment
(
"创建时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
LocalDateTime
createTime
;
// @Comment("访客id")
// Long visitorId;
@Comment
(
"被邀请访客"
)
@JsonIgnore
@OneToOne
@JoinColumn
(
name
=
"visitor_id"
,
referencedColumnName
=
"id"
)
Visitor
visitor
;
}
app/src/main/java/com/yiring/app/domain/visitor/InvitationRepository.java
0 → 100644
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
domain
.
visitor
;
import
java.io.Serializable
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaSpecificationExecutor
;
import
org.springframework.stereotype.Repository
;
/**
* @author tzl
* 2022/4/24 16:53
*/
@Repository
public
interface
InvitationRepository
extends
JpaRepository
<
Invitation
,
Serializable
>,
JpaSpecificationExecutor
<
Invitation
>
{}
app/src/main/java/com/yiring/app/domain/visitor/Visitor.java
浏览文件 @
856966b6
...
@@ -6,11 +6,13 @@ import java.io.Serial;
...
@@ -6,11 +6,13 @@ import java.io.Serial;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
javax.persistence.*
;
import
javax.persistence.*
;
import
javax.persistence.CascadeType
;
import
javax.persistence.Entity
;
import
javax.persistence.Table
;
import
lombok.*
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
import
lombok.experimental.FieldDefaults
;
import
lombok.experimental.FieldNameConstants
;
import
lombok.experimental.FieldNameConstants
;
import
org.hibernate.annotations.Comment
;
import
org.hibernate.annotations.*
;
import
org.hibernate.annotations.GenericGenerator
;
import
org.hibernate.snowflake.SnowflakeId
;
import
org.hibernate.snowflake.SnowflakeId
;
/**
/**
...
@@ -26,6 +28,8 @@ import org.hibernate.snowflake.SnowflakeId;
...
@@ -26,6 +28,8 @@ import org.hibernate.snowflake.SnowflakeId;
@FieldNameConstants
@FieldNameConstants
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
@Entity
@Entity
@DynamicInsert
@DynamicUpdate
@Table
(
name
=
"BS_VISITOR"
)
@Table
(
name
=
"BS_VISITOR"
)
@Comment
(
"访客信息"
)
@Comment
(
"访客信息"
)
public
class
Visitor
implements
Serializable
{
public
class
Visitor
implements
Serializable
{
...
@@ -49,10 +53,10 @@ public class Visitor implements Serializable {
...
@@ -49,10 +53,10 @@ public class Visitor implements Serializable {
String
visitorCarNum
;
String
visitorCarNum
;
@Comment
(
"是否特殊作业"
)
@Comment
(
"是否特殊作业"
)
boolean
taskType
;
String
taskType
;
@Comment
(
"邀请人数"
)
//
@Comment("邀请人数")
Integer
numOfVisitor
;
//
Integer numOfVisitor;
@Comment
(
"访客来源"
)
@Comment
(
"访客来源"
)
String
visitorSource
;
String
visitorSource
;
...
@@ -69,7 +73,7 @@ public class Visitor implements Serializable {
...
@@ -69,7 +73,7 @@ public class Visitor implements Serializable {
@Comment
(
"被访人id"
)
@Comment
(
"被访人id"
)
String
intervieweeId
;
String
intervieweeId
;
@Comment
(
"来访原因"
)
@Comment
(
"来访原因
/邀请原因
"
)
String
reason
;
String
reason
;
@Comment
(
"收卡时间"
)
@Comment
(
"收卡时间"
)
...
@@ -89,11 +93,19 @@ public class Visitor implements Serializable {
...
@@ -89,11 +93,19 @@ public class Visitor implements Serializable {
LocalDateTime
cardSendTime
;
LocalDateTime
cardSendTime
;
@Comment
(
"备用字段"
)
@Comment
(
"备用字段"
)
Stri
ng
reserve1
;
Lo
ng
reserve1
;
@Comment
(
"备用字段"
)
@Comment
(
"是否已删除:Y是 N否"
)
String
reserve2
;
@Column
(
columnDefinition
=
"VARCHAR DEFAULT 'N'"
)
String
deleted
;
@Comment
(
"主访人员id"
)
Long
mainVisitorId
;
@Comment
(
"备用字段"
)
@Comment
(
"备用字段"
)
String
reserve3
;
String
reserve3
;
@Comment
(
"访客车辆"
)
@OneToOne
(
cascade
=
{
CascadeType
.
ALL
})
Car
car
;
}
}
app/src/main/java/com/yiring/app/domain/visitor/VisitorRepository.java
浏览文件 @
856966b6
...
@@ -11,4 +11,6 @@ import org.springframework.stereotype.Repository;
...
@@ -11,4 +11,6 @@ import org.springframework.stereotype.Repository;
* 2022/4/19 14:06
* 2022/4/19 14:06
*/
*/
@Repository
@Repository
public
interface
VisitorRepository
extends
JpaRepository
<
Visitor
,
Serializable
>,
JpaSpecificationExecutor
<
Visitor
>
{}
public
interface
VisitorRepository
extends
JpaRepository
<
Visitor
,
Serializable
>,
JpaSpecificationExecutor
<
Visitor
>
{
Visitor
findByIdAndDeleted
(
Long
id
,
String
deleted
);
}
app/src/main/java/com/yiring/app/excel/
ca
r/CarExportExcel.java
→
app/src/main/java/com/yiring/app/excel/
visito
r/CarExportExcel.java
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
excel
.
ca
r
;
package
com
.
yiring
.
app
.
excel
.
visito
r
;
import
com.github.liaochong.myexcel.core.annotation.ExcelColumn
;
import
com.github.liaochong.myexcel.core.annotation.ExcelColumn
;
import
com.github.liaochong.myexcel.core.annotation.ExcelModel
;
import
com.github.liaochong.myexcel.core.annotation.ExcelModel
;
...
...
app/src/main/java/com/yiring/app/excel/visitor/InvitationExportExcel.java
0 → 100644
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
excel
.
visitor
;
import
com.github.liaochong.myexcel.core.annotation.ExcelColumn
;
import
com.github.liaochong.myexcel.core.annotation.ExcelModel
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
/**
* @author tzl
* @version 1.0
* @description: TODO
* @date 2022/4/25 11:53
*/
@ExcelModel
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
InvitationExportExcel
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
-
8861639917182472169L
;
@ExcelColumn
(
title
=
"邀请原因"
)
String
reason
;
@ExcelColumn
(
title
=
"邀请方式"
)
String
InvitationMethod
;
@ExcelColumn
(
title
=
"邀请人数"
)
Integer
numOfVisitor
;
@ExcelColumn
(
title
=
"所属单位"
)
String
orgId
;
@ExcelColumn
(
title
=
"到访人姓名"
)
String
visitorName
;
@ExcelColumn
(
title
=
"到访人电话"
)
String
visitorMobile
;
@ExcelColumn
(
title
=
"是否特殊任务"
)
String
taskType
;
// Long inviterId;
@ExcelColumn
(
title
=
"邀请人姓名"
)
String
inviterName
;
@ExcelColumn
(
title
=
"邀请人部门"
)
String
inviterDept
;
@ExcelColumn
(
title
=
"预约到访时间"
,
format
=
"yyyy-MM-dd HH:mm:ss"
,
width
=
15
)
LocalDateTime
appOfVisitTime
;
@ExcelColumn
(
title
=
"状态"
)
String
status
;
}
app/src/main/java/com/yiring/app/param/
ca
r/CarParam.java
→
app/src/main/java/com/yiring/app/param/
visito
r/CarParam.java
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
param
.
ca
r
;
package
com
.
yiring
.
app
.
param
.
visito
r
;
import
com.yiring.common.constant.RegEx
;
import
com.yiring.common.constant.RegEx
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
...
@@ -8,7 +8,6 @@ import java.io.Serial;
...
@@ -8,7 +8,6 @@ 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.Pattern
;
import
javax.validation.constraints.Pattern
;
import
javax.validation.constraints.Size
;
import
lombok.*
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
import
lombok.experimental.FieldDefaults
;
...
@@ -35,25 +34,8 @@ public class CarParam implements Serializable {
...
@@ -35,25 +34,8 @@ public class CarParam implements Serializable {
@ApiModelProperty
(
value
=
"车辆类型"
,
example
=
"1"
)
@ApiModelProperty
(
value
=
"车辆类型"
,
example
=
"1"
)
String
carType
;
String
carType
;
@ApiModelProperty
(
value
=
"司机名称"
,
example
=
"张三"
,
required
=
true
)
@ApiModelProperty
(
value
=
"车辆类型"
,
example
=
"1"
)
@NotEmpty
(
message
=
"司机名称不能为空"
)
String
labelCard
;
String
driverName
;
// @ApiModelProperty(value = "对应访客id", example = "1", required = true)
// Long visitorId;
@ApiModelProperty
(
value
=
"司机电话"
,
example
=
"17688888888"
,
required
=
true
)
@NotEmpty
(
message
=
"司机电话不能为空"
)
@Pattern
(
regexp
=
RegEx
.
MOBILE
,
message
=
"手机号码格式不正确"
)
String
driverMobile
;
@ApiModelProperty
(
value
=
"所属单位id"
,
example
=
"1"
,
required
=
true
)
@NotEmpty
(
message
=
"所属单位id不能为空"
)
String
orgId
;
@ApiModelProperty
(
value
=
"被访人id"
,
example
=
"1"
,
required
=
true
)
@NotEmpty
(
message
=
"被访人id不能为空"
)
String
intervieweeId
;
@ApiModelProperty
(
value
=
"来访原因"
,
example
=
"视察"
,
required
=
true
)
@NotEmpty
(
message
=
"来访原因不能为空"
)
@Size
(
min
=
1
,
max
=
20
,
message
=
"来访原因超出范围"
)
String
reason
;
}
}
app/src/main/java/com/yiring/app/param/
ca
r/CarQueryParam.java
→
app/src/main/java/com/yiring/app/param/
visito
r/CarQueryParam.java
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
param
.
ca
r
;
package
com
.
yiring
.
app
.
param
.
visito
r
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
...
...
app/src/main/java/com/yiring/app/param/visitor/
VisitorInfo
Param.java
→
app/src/main/java/com/yiring/app/param/visitor/
Invitation
Param.java
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
param
.
visitor
;
package
com
.
yiring
.
app
.
param
.
visitor
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
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
java.time.LocalDateTime
;
import
javax.validation.constraints.NotEmpty
;
import
javax.validation.constraints.NotEmpty
;
import
javax.validation.constraints.Pattern
;
import
javax.validation.constraints.Size
;
import
lombok.*
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
import
lombok.experimental.FieldDefaults
;
/**
/**
* 邀请信息入参
*
* @author tzl
* @author tzl
* 2022/4/21 14:04
* @version 1.0
* @description: 邀请信息入参
* @date 2022/4/24 17:30
*/
*/
@ApiModel
(
"VisitorInfo"
)
@ApiModel
(
"VisitorInfo"
)
@Data
@Data
...
@@ -19,23 +28,47 @@ import lombok.experimental.FieldDefaults;
...
@@ -19,23 +28,47 @@ import lombok.experimental.FieldDefaults;
@NoArgsConstructor
@NoArgsConstructor
@AllArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
VisitorInfo
Param
implements
Serializable
{
public
class
Invitation
Param
implements
Serializable
{
@Serial
@Serial
private
static
final
long
serialVersionUID
=
3419577080791245488L
;
private
static
final
long
serialVersionUID
=
3394438557179083143L
;
@ApiModelProperty
(
value
=
"邀请方式:个人 公司"
,
example
=
"个人"
,
required
=
true
)
@NotEmpty
(
message
=
"邀请方式不能为空"
)
String
InvitationMethod
;
@ApiModelProperty
(
value
=
"邀请原因/来访原因"
,
example
=
"随便看看"
,
required
=
true
)
@Size
(
min
=
1
,
max
=
20
,
message
=
"邀请原因"
)
String
reason
;
@ApiModelProperty
(
value
=
"到访人姓名"
,
example
=
"张三"
,
required
=
true
)
@ApiModelProperty
(
value
=
"到访人姓名"
,
example
=
"张三"
,
required
=
true
)
@NotEmpty
(
message
=
"到访人姓名
不能为空
"
)
@NotEmpty
(
message
=
"到访人姓名"
)
String
visitorName
;
String
visitorName
;
@ApiModelProperty
(
value
=
"到访人电话"
,
example
=
"17688888888"
,
required
=
true
)
@ApiModelProperty
(
value
=
"到访人电话"
,
example
=
"17688888888"
,
required
=
true
)
@Pattern
(
regexp
=
RegEx
.
MOBILE
,
message
=
"手机号码格式不正确"
)
@NotEmpty
(
message
=
"到访人电话不能为空"
)
@NotEmpty
(
message
=
"到访人电话不能为空"
)
String
visitorMobile
;
String
visitorMobile
;
@ApiModelProperty
(
value
=
"到访人身份证"
,
example
=
"430441190001255417"
,
required
=
true
)
@ApiModelProperty
(
value
=
"到访人身份证"
,
example
=
"430441190001255417"
)
@NotEmpty
(
message
=
"到访人身份证不能为空"
)
String
visitorCarNum
;
String
visitorCarNum
;
@ApiModelProperty
(
value
=
"是否特殊作业"
,
example
=
"fasle"
,
required
=
true
)
@ApiModelProperty
(
value
=
"是否特殊作业"
,
example
=
"否"
,
required
=
true
)
boolean
taskType
;
String
taskType
;
// @ApiModelProperty(value = "访客来源", example = "外部邀请", required = true)
// String visitorSource;
@ApiModelProperty
(
value
=
"访客公司"
,
example
=
"壹润科技"
)
String
orgId
;
@ApiModelProperty
(
value
=
"预约时间"
,
example
=
"2022-04-19 14:28:00"
,
required
=
true
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
LocalDateTime
appOfVisitTime
;
@ApiModelProperty
(
value
=
"邀请人id"
,
example
=
"1"
,
required
=
true
)
Long
inviterId
;
@ApiModelProperty
(
value
=
"邀请人数"
,
example
=
"1"
)
Integer
numOfVisitor
;
}
}
app/src/main/java/com/yiring/app/param/visitor/InvitationQueryParam.java
0 → 100644
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
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.*
;
import
lombok.experimental.FieldDefaults
;
/**
* @author tzl
* @version 1.0
* @description: TODO
* @date 2022/4/25 9:36
*/
@ApiModel
(
"InvitationQueryParam"
)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
InvitationQueryParam
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
-
8217270866091799814L
;
@ApiModelProperty
(
value
=
"到访人姓名"
,
example
=
"张三"
)
String
visitorName
;
@ApiModelProperty
(
value
=
"到访人电话"
,
example
=
"17688888888"
)
String
visitorMobile
;
@ApiModelProperty
(
value
=
"访客公司"
,
example
=
"壹润科技"
)
String
orgId
;
@ApiModelProperty
(
value
=
"是否特殊作业"
,
example
=
"fasle"
)
String
taskType
;
@ApiModelProperty
(
value
=
"邀请人id"
,
example
=
"1"
)
Long
inviterId
;
// @ApiModelProperty(value = "邀请人部门id", example = "1")
// Long deptId;
@ApiModelProperty
(
value
=
"预约到访时间(开始)"
,
example
=
"2022-04-19 14:28:00"
)
LocalDateTime
appOfVisitTimeStart
;
@ApiModelProperty
(
value
=
"预约到访时间(结束)"
,
example
=
"2022-04-19 14:28:00"
)
LocalDateTime
appOfVisitTimeEnd
;
@ApiModelProperty
(
value
=
"分页条数"
,
example
=
"10"
)
Integer
pageSize
;
@ApiModelProperty
(
value
=
"当前页数"
,
example
=
"1"
)
Integer
pageNo
;
}
app/src/main/java/com/yiring/app/param/visitor/VisitorListParam.java
deleted
100644 → 0
浏览文件 @
3510b233
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
param
.
visitor
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
import
java.util.List
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
/**
* @author tzl
* 2022/4/21 13:51
*/
@ApiModel
(
"VisitorParam"
)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
VisitorListParam
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
6356324790945367160L
;
@ApiModelProperty
(
value
=
"访客来源"
,
example
=
"内部邀请"
,
required
=
true
)
String
visitorSource
;
@ApiModelProperty
(
value
=
"来访原因"
,
example
=
"2022-04-19 14:28:00"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
LocalDateTime
appOfVisitTime
;
@ApiModelProperty
(
value
=
"被访人id"
,
example
=
"1"
,
required
=
true
)
String
intervieweeId
;
@ApiModelProperty
(
value
=
"来访原因"
,
example
=
"看看"
,
required
=
true
)
String
reason
;
@ApiModelProperty
(
value
=
"访客所属公司"
,
example
=
"壹润科技"
,
required
=
true
)
String
orgId
;
@ApiModelProperty
(
value
=
"邀请人数"
,
example
=
"1"
,
required
=
true
)
Integer
numOfVisitor
;
List
<
VisitorInfoParam
>
visitorInfos
;
}
app/src/main/java/com/yiring/app/param/visitor/VisitorParam.java
浏览文件 @
856966b6
...
@@ -2,11 +2,14 @@
...
@@ -2,11 +2,14 @@
package
com
.
yiring
.
app
.
param
.
visitor
;
package
com
.
yiring
.
app
.
param
.
visitor
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
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.Serializable
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
javax.validation.constraints.NotEmpty
;
import
javax.validation.constraints.NotEmpty
;
import
javax.validation.constraints.Pattern
;
import
lombok.*
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
import
lombok.experimental.FieldDefaults
;
...
@@ -22,6 +25,7 @@ import lombok.experimental.FieldDefaults;
...
@@ -22,6 +25,7 @@ import lombok.experimental.FieldDefaults;
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
VisitorParam
implements
Serializable
{
public
class
VisitorParam
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
1444009404727514785L
;
private
static
final
long
serialVersionUID
=
1444009404727514785L
;
@ApiModelProperty
(
value
=
"到访人姓名"
,
example
=
"张三"
,
required
=
true
)
@ApiModelProperty
(
value
=
"到访人姓名"
,
example
=
"张三"
,
required
=
true
)
...
@@ -37,20 +41,11 @@ public class VisitorParam implements Serializable {
...
@@ -37,20 +41,11 @@ public class VisitorParam implements Serializable {
String
visitorCarNum
;
String
visitorCarNum
;
@ApiModelProperty
(
value
=
"是否特殊作业"
,
example
=
"fasle"
,
required
=
true
)
@ApiModelProperty
(
value
=
"是否特殊作业"
,
example
=
"fasle"
,
required
=
true
)
boolean
taskType
;
String
taskType
;
// @Comment("邀请人数")
// Integer numOfVisitor;
@ApiModelProperty
(
value
=
"访客来源"
,
example
=
"外部邀请"
,
required
=
true
)
@ApiModelProperty
(
value
=
"访客来源"
,
example
=
"外部邀请"
,
required
=
true
)
String
visitorSource
;
String
visitorSource
;
// @Comment("标签卡")
// String labelCard;
//
// @Comment("标签卡状态")
// String labelCardStatus;
@ApiModelProperty
(
value
=
"访客所属公司"
,
example
=
"壹润科技"
)
@ApiModelProperty
(
value
=
"访客所属公司"
,
example
=
"壹润科技"
)
String
orgId
;
String
orgId
;
...
@@ -60,19 +55,23 @@ public class VisitorParam implements Serializable {
...
@@ -60,19 +55,23 @@ public class VisitorParam implements Serializable {
@ApiModelProperty
(
value
=
"来访原因"
,
example
=
"看看"
,
required
=
true
)
@ApiModelProperty
(
value
=
"来访原因"
,
example
=
"看看"
,
required
=
true
)
String
reason
;
String
reason
;
// @ApiModelProperty(value = "发卡时间", example = "看看", required = true)
@ApiModelProperty
(
value
=
"来访时间"
,
example
=
"2022-04-19 14:28:00"
)
// @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
// LocalDateTime cardRecTime;
@ApiModelProperty
(
value
=
"来访原因"
,
example
=
"2022-04-19 14:28:00"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
LocalDateTime
appOfVisitTime
;
LocalDateTime
appOfVisitTime
;
// @Comment("创建时间")
// @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
// LocalDateTime createTime;
//
// @Comment("发卡时间")
// @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
// LocalDateTime cardSendTime;
@ApiModelProperty
(
value
=
"是否有车(是 1 ,否 2)"
,
example
=
"2"
)
Integer
hasCar
;
@ApiModelProperty
(
value
=
"车牌号码"
,
example
=
"湘A99999"
)
@Pattern
(
regexp
=
RegEx
.
CARNUM
,
message
=
"车牌号码格式不正确"
)
String
carNum
;
@ApiModelProperty
(
value
=
"车辆类型"
,
example
=
"货车"
)
String
carType
;
@ApiModelProperty
(
value
=
"车辆标签卡"
,
example
=
"1"
)
String
labelCard
;
@ApiModelProperty
(
value
=
"主访人员id"
,
example
=
"1"
)
Long
mainVisitorId
;
}
}
app/src/main/java/com/yiring/app/service/
ca
r/CarService.java
→
app/src/main/java/com/yiring/app/service/
visito
r/CarService.java
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
service
.
ca
r
;
package
com
.
yiring
.
app
.
service
.
visito
r
;
import
com.yiring.app.domain.car.Car
;
import
com.yiring.app.domain.visitor.Car
;
import
com.yiring.app.param.car.CarParam
;
import
com.yiring.app.param.visitor.CarQueryParam
;
import
com.yiring.app.param.car.CarQueryParam
;
import
com.yiring.app.vo.visitor.CarVo
;
import
com.yiring.app.vo.car.CarVo
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.IdParam
;
import
com.yiring.common.param.IdParam
;
import
com.yiring.common.vo.PageVo
;
import
com.yiring.common.vo.PageVo
;
...
@@ -19,19 +18,18 @@ public interface CarService {
...
@@ -19,19 +18,18 @@ public interface CarService {
/**
/**
* 添加车辆来访信息
* 添加车辆来访信息
*
*
* @param car
Param CarParam
* @param car
Car
* @return 车辆来访信息id
* @return 车辆来访信息id
*/
*/
Result
<
Long
>
saveCarInfo
(
Car
Param
carParam
);
Result
<
Long
>
saveCarInfo
(
Car
car
);
/**
/**
* 修改车辆来访信息
* 修改车辆来访信息
*
*
* @param carParam CarParam
* @param car Car
* @param idParam IdParam
* @return 修改的车辆来访信息id
* @return 修改的车辆来访信息id
*/
*/
Result
<
Long
>
updateCarInfo
(
Car
Param
carParam
,
IdParam
idParam
);
Result
<
Long
>
updateCarInfo
(
Car
car
);
/**
/**
* 收卡
* 收卡
...
@@ -81,21 +79,21 @@ public interface CarService {
...
@@ -81,21 +79,21 @@ public interface CarService {
*/
*/
void
export
(
CarQueryParam
carParam
,
HttpServletResponse
response
);
void
export
(
CarQueryParam
carParam
,
HttpServletResponse
response
);
/**
/
/ /
**
* 检查是否存在相同车牌号登记
//
* 检查是否存在相同车牌号登记
*
//
*
* @param param String 车牌号码
//
* @param param String 车牌号码
* @return 是否存在
//
* @return 是否存在
*/
//
*/
boolean
hasCarInfoByCarNum
(
String
param
);
//
boolean hasCarInfoByCarNum(String param);
//
/**
/
/ /
**
* 检查是否存在相同手机号码登记
//
* 检查是否存在相同手机号码登记
*
//
*
* @param param String 手机号码
//
* @param param String 手机号码
* @return 是否存在
//
* @return 是否存在
*/
//
*/
boolean
hasCarInfoByMobile
(
String
param
);
//
boolean hasCarInfoByMobile(String param);
/**
/**
* 筛选条件
* 筛选条件
...
...
app/src/main/java/com/yiring/app/service/visitor/InvitationService.java
0 → 100644
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
service
.
visitor
;
import
com.yiring.app.param.visitor.InvitationParam
;
import
com.yiring.app.param.visitor.InvitationQueryParam
;
import
com.yiring.app.vo.visitor.InvitationVo
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.IdParam
;
import
com.yiring.common.vo.PageVo
;
import
javax.servlet.http.HttpServletResponse
;
/**
* @author tzl
* @date 2022/4/24 16:57
*/
public
interface
InvitationService
{
/**
* 发起邀请
* @param invitationParam 新增邀请入参
* @return 是否成功
*/
Result
<
String
>
saveInv
(
InvitationParam
invitationParam
);
/**
* 修改邀请
* @date 2022/4/24 17:50
* @return com.yiring.common.core.Result<java.lang.String>
*/
Result
<
String
>
updateInv
(
InvitationParam
invitationParam
,
IdParam
idParam
);
/**
* 删除邀请
* @date 2022/4/24 17:52
* @return com.yiring.common.core.Result<java.lang.String>
*/
Result
<
String
>
deleteInv
(
IdParam
idParam
);
/**
* 分页
* @date 2022/4/24 17:56
* @return com.yiring.common.core.Result<com.yiring.common.vo.PageVo<java.lang.String>>
*/
Result
<
PageVo
<
InvitationVo
>>
pageInv
(
InvitationQueryParam
invitationQueryParam
);
/**
* 撤回邀请
* @author tzl
* @date 2022/4/25 11:30
* @param idParam 主键id
* @return com.yiring.common.core.Result<java.lang.String>
*/
Result
<
String
>
recallInv
(
IdParam
idParam
);
/**
* 发送邀请
* @author tzl
* @date 2022/4/25 11:31
* @param idParam 主键id
* @return com.yiring.common.core.Result<java.lang.String>
*/
Result
<
String
>
sendInv
(
IdParam
idParam
);
/**
* 导出邀请信息
* @author tzl
* @date 2022/4/25 11:34
* @param invitationQueryParam 筛选条件
*/
void
exportInv
(
InvitationQueryParam
invitationQueryParam
,
HttpServletResponse
response
);
}
app/src/main/java/com/yiring/app/service/visitor/VisitorService.java
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
service
.
visitor
;
package
com
.
yiring
.
app
.
service
.
visitor
;
import
com.yiring.app.param.visitor.VisitorListParam
;
import
com.yiring.app.param.visitor.VisitorParam
;
import
com.yiring.app.param.visitor.VisitorParam
;
import
com.yiring.app.param.visitor.VisitorQueryParam
;
import
com.yiring.app.param.visitor.VisitorQueryParam
;
import
com.yiring.app.vo.visitor.VisitorVo
;
import
com.yiring.app.vo.visitor.VisitorVo
;
...
@@ -22,19 +21,12 @@ public interface VisitorService {
...
@@ -22,19 +21,12 @@ public interface VisitorService {
*/
*/
Result
<
String
>
saveVisitor
(
VisitorParam
visitorParam
);
Result
<
String
>
saveVisitor
(
VisitorParam
visitorParam
);
/**
// /**
* 访客批量新增
// * 访客删除
* @param visitorListParam 批量访客新增入参
// * @param idParam 主键id
* @return 是否成功
// * @return 是否成功
*/
// */
Result
<
String
>
saveVisitor
(
VisitorListParam
visitorListParam
);
// Result<String> deleteVisitor(IdParam idParam);
/**
* 访客删除
* @param idParam 主键id
* @return 是否成功
*/
Result
<
String
>
deleteVisitor
(
IdParam
idParam
);
/**
/**
* 修改访客信息
* 修改访客信息
...
@@ -79,4 +71,13 @@ public interface VisitorService {
...
@@ -79,4 +71,13 @@ public interface VisitorService {
* @return 是否成功
* @return 是否成功
*/
*/
Result
<
String
>
cardRec
(
IdParam
idParam
);
Result
<
String
>
cardRec
(
IdParam
idParam
);
/**
* 查看详情,并且带出该访客的随访人信息
* @author tzl
* @date 2022/4/25 16:48
* @param idParam 主键id
* @return com.yiring.common.core.Result<com.yiring.app.vo.visitor.VisitorVo>
*/
Result
<
VisitorVo
>
selectInfo
(
IdParam
idParam
);
}
}
app/src/main/java/com/yiring/app/service/
ca
r/impl/CarServiceImpl.java
→
app/src/main/java/com/yiring/app/service/
visito
r/impl/CarServiceImpl.java
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
service
.
ca
r
.
impl
;
package
com
.
yiring
.
app
.
service
.
visito
r
.
impl
;
import
cn.hutool.core.util.StrUtil
;
import
cn.hutool.core.util.StrUtil
;
import
com.github.liaochong.myexcel.core.DefaultStreamExcelBuilder
;
import
com.github.liaochong.myexcel.core.DefaultStreamExcelBuilder
;
import
com.yiring.app.domain.car.Car
;
import
com.yiring.app.domain.visitor.Car
;
import
com.yiring.app.domain.car.CarRepository
;
import
com.yiring.app.domain.visitor.CarRepository
;
import
com.yiring.app.excel.car.CarExportExcel
;
import
com.yiring.app.excel.visitor.CarExportExcel
;
import
com.yiring.app.param.car.CarParam
;
import
com.yiring.app.param.visitor.CarQueryParam
;
import
com.yiring.app.param.car.CarQueryParam
;
import
com.yiring.app.service.visitor.CarService
;
import
com.yiring.app.service.car.CarService
;
import
com.yiring.app.vo.visitor.CarVo
;
import
com.yiring.app.vo.car.CarVo
;
import
com.yiring.auth.domain.role.Role
;
import
com.yiring.auth.domain.role.Role
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Status
;
import
com.yiring.common.core.Status
;
...
@@ -49,50 +48,37 @@ public class CarServiceImpl implements CarService {
...
@@ -49,50 +48,37 @@ public class CarServiceImpl implements CarService {
CarRepository
carRepository
;
CarRepository
carRepository
;
@Override
@Override
public
Result
<
Long
>
saveCarInfo
(
Car
Param
carParam
)
{
public
Result
<
Long
>
saveCarInfo
(
Car
car
)
{
// 检查车牌号
是否已存在
// 检查车牌号
车辆是否已经在园内
if
(
hasCarInfoByCarNum
(
carParam
.
getCarNum
())
)
{
if
(
carRepository
.
hasCarInfoByCarNum
(
car
.
getCarNum
())
>
0
)
{
return
Result
.
no
(
Status
.
BAD_REQUEST
,
"您的车牌号已存在"
);
return
Result
.
no
(
Status
.
BAD_REQUEST
,
"您的车牌号已存在"
);
}
}
// 检查司机手机号码号是否已存在
// Car car = Car
if
(
hasCarInfoByMobile
(
carParam
.
getDriverMobile
()))
{
// .builder()
return
Result
.
no
(
Status
.
BAD_REQUEST
,
"您的联系方式已存在"
);
// .carNum(carParam.getCarNum())
}
// .carType(carParam.getCarType())
Car
car
=
Car
// .labelCard(carParam.getLabelCard())
.
builder
()
// .createTime(LocalDateTime.now())
.
carNum
(
carParam
.
getCarNum
())
// // .visitorId(carParam.getVisitorId())
.
carType
(
carParam
.
getCarType
())
// .build();
.
driverMobile
(
carParam
.
getDriverMobile
())
.
driverName
(
carParam
.
getDriverName
())
.
intervieweeId
(
carParam
.
getIntervieweeId
())
.
orgId
(
carParam
.
getOrgId
())
.
reason
(
carParam
.
getReason
())
.
createTime
(
LocalDateTime
.
now
())
.
build
();
Car
carReuslt
=
carRepository
.
saveAndFlush
(
car
);
Car
carReuslt
=
carRepository
.
saveAndFlush
(
car
);
return
Result
.
ok
(
carReuslt
.
getId
());
return
Result
.
ok
(
carReuslt
.
getId
());
}
}
@Override
@Override
public
Result
<
Long
>
updateCarInfo
(
Car
Param
carParam
,
IdParam
idParam
)
{
public
Result
<
Long
>
updateCarInfo
(
Car
car
)
{
Optional
<
Car
>
optional
=
carRepository
.
findById
(
idParam
.
getId
());
Optional
<
Car
>
optional
=
carRepository
.
findById
(
car
.
getId
());
if
(
optional
.
isEmpty
())
{
if
(
optional
.
isEmpty
())
{
return
Result
.
no
(
Status
.
NOT_FOUND
);
return
Result
.
no
(
Status
.
NOT_FOUND
);
}
}
Car
car
=
optional
.
get
();
Car
car
Optional
=
optional
.
get
();
if
(!
car
.
getCarNum
().
equals
(
car
Param
.
getCarNum
()))
{
if
(!
car
.
getCarNum
().
equals
(
car
Optional
.
getCarNum
()))
{
// 当修改车牌号时才检查重复
// 当修改车牌号时才检查重复
if
(
hasCarInfoByCarNum
(
carParam
.
getCarNum
())
)
{
if
(
carRepository
.
hasCarInfoByCarNum
(
carOptional
.
getCarNum
())
>
0
)
{
return
Result
.
no
(
Status
.
BAD_REQUEST
,
"您的车牌号
信息已存在
"
);
return
Result
.
no
(
Status
.
BAD_REQUEST
,
"您的车牌号
已在园区内
"
);
}
}
}
}
if
(!
car
.
getDriverMobile
().
equals
(
carParam
.
getDriverMobile
()))
{
BeanUtils
.
copyProperties
(
car
,
car
);
// 当修改联系方式时才检查重复
if
(
hasCarInfoByMobile
(
carParam
.
getDriverMobile
()))
{
return
Result
.
no
(
Status
.
BAD_REQUEST
,
"您的联系方式已存在"
);
}
}
BeanUtils
.
copyProperties
(
carParam
,
car
);
Car
carReuslt
=
carRepository
.
saveAndFlush
(
car
);
Car
carReuslt
=
carRepository
.
saveAndFlush
(
car
);
return
Result
.
ok
(
carReuslt
.
getId
());
return
Result
.
ok
(
carReuslt
.
getId
());
}
}
...
@@ -224,20 +210,6 @@ public class CarServiceImpl implements CarService {
...
@@ -224,20 +210,6 @@ public class CarServiceImpl implements CarService {
}
}
@Override
@Override
public
boolean
hasCarInfoByCarNum
(
String
param
)
{
Car
entity
=
Car
.
builder
().
carNum
(
param
).
build
();
long
count
=
carRepository
.
count
(
Example
.
of
(
entity
));
return
count
>
0
;
}
@Override
public
boolean
hasCarInfoByMobile
(
String
param
)
{
Car
entity
=
Car
.
builder
().
driverMobile
(
param
).
build
();
long
count
=
carRepository
.
count
(
Example
.
of
(
entity
));
return
count
>
0
;
}
@Override
public
Specification
<
Car
>
condition
(
CarQueryParam
carParam
)
{
public
Specification
<
Car
>
condition
(
CarQueryParam
carParam
)
{
return
(
root
,
query
,
criteriaBuilder
)
->
{
return
(
root
,
query
,
criteriaBuilder
)
->
{
List
<
Predicate
>
list
=
new
ArrayList
<>();
List
<
Predicate
>
list
=
new
ArrayList
<>();
...
...
app/src/main/java/com/yiring/app/service/visitor/impl/InvitationServiceImpl.java
0 → 100644
浏览文件 @
856966b6
差异被折叠。
点击展开。
app/src/main/java/com/yiring/app/service/visitor/impl/VisitorServiceImpl.java
浏览文件 @
856966b6
差异被折叠。
点击展开。
app/src/main/java/com/yiring/app/vo/video/VideoNameVo.java
0 → 100644
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
vo
.
video
;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
import
com.fasterxml.jackson.databind.ser.std.ToStringSerializer
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
/**
* 监控名称模糊查询反参Vo
* @author tzl
* 2022/4/15 10:48
*/
@ApiModel
(
"VideoNameVo"
)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
VideoNameVo
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
3968078657827350557L
;
@JsonSerialize
(
using
=
ToStringSerializer
.
class
)
@ApiModelProperty
(
value
=
"id"
,
example
=
"1548548545755"
)
Long
id
;
// @ApiModelProperty(value = "坐标点", example = "坐标点")
// Point point;
// @ApiModelProperty(value = "编号", example = "88888888")
// String uuid;
// @ApiModelProperty(value = "m3u8地址", example = "m3u8地址")
// String m3u8;
// @ApiModelProperty(value = "备注", example = "备注")
// String remark;
@ApiModelProperty
(
value
=
"摄像头名称"
,
example
=
"摄像头1"
)
String
videoName
;
// @ApiModelProperty(value = "状态", example = "正常")
// String status;
}
app/src/main/java/com/yiring/app/vo/
ca
r/CarVo.java
→
app/src/main/java/com/yiring/app/vo/
visito
r/CarVo.java
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
vo
.
ca
r
;
package
com
.
yiring
.
app
.
vo
.
visito
r
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
import
com.fasterxml.jackson.databind.ser.std.ToStringSerializer
;
import
com.fasterxml.jackson.databind.ser.std.ToStringSerializer
;
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
java.time.LocalDateTime
;
import
lombok.*
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
import
lombok.experimental.FieldDefaults
;
...
@@ -40,8 +38,8 @@ public class CarVo implements Serializable {
...
@@ -40,8 +38,8 @@ public class CarVo implements Serializable {
/**
/**
* 车辆类型翻译
* 车辆类型翻译
*/
*/
@ApiModelProperty
(
value
=
"车辆类型(字典翻译)"
,
example
=
"货车"
)
//
@ApiModelProperty(value = "车辆类型(字典翻译)", example = "货车")
String
carTypeName
;
//
String carTypeName;
// public String getCarTypeName() {
// public String getCarTypeName() {
// if (StrUtil.isNotBlank(carType)) {
// if (StrUtil.isNotBlank(carType)) {
...
@@ -50,23 +48,13 @@ public class CarVo implements Serializable {
...
@@ -50,23 +48,13 @@ public class CarVo implements Serializable {
// return null;
// return null;
// }
// }
@ApiModelProperty
(
value
=
"司机名称"
,
example
=
"张三"
)
String
driverName
;
@ApiModelProperty
(
value
=
"司机电话"
,
example
=
"17688888888"
)
String
driverMobile
;
@ApiModelProperty
(
value
=
"标签卡"
,
example
=
"DT8875666"
)
@ApiModelProperty
(
value
=
"标签卡"
,
example
=
"DT8875666"
)
String
labelCard
;
String
labelCard
;
// /**
@ApiModelProperty
(
value
=
"标签卡状态"
,
example
=
"1"
)
// * 车辆类型翻译
String
labelCardStatus
;
// */
// @ApiModelProperty(value = "标签卡状态", example = "未发卡")
/**
// String labelCardStatusName;
* 车辆类型翻译
*/
@ApiModelProperty
(
value
=
"标签卡状态"
,
example
=
"未发卡"
)
String
labelCardStatusName
;
// public String getLabelCardStatusName() {
// public String getLabelCardStatusName() {
// if (StrUtil.isNotBlank(carType)) {
// if (StrUtil.isNotBlank(carType)) {
...
@@ -75,24 +63,24 @@ public class CarVo implements Serializable {
...
@@ -75,24 +63,24 @@ public class CarVo implements Serializable {
// return null;
// return null;
// }
// }
@ApiModelProperty
(
value
=
"单位id"
,
example
=
"湖南壹润科技"
)
//
@ApiModelProperty(value = "单位id", example = "湖南壹润科技")
String
orgId
;
//
String orgId;
//
@ApiModelProperty
(
value
=
"被访人id"
,
example
=
"1"
)
//
@ApiModelProperty(value = "被访人id", example = "1")
String
intervieweeId
;
//
String intervieweeId;
//
@ApiModelProperty
(
value
=
"来访原因"
,
example
=
"装货"
)
//
@ApiModelProperty(value = "来访原因", example = "装货")
String
reason
;
//
String reason;
//
@ApiModelProperty
(
value
=
"收卡时间"
,
example
=
"2022-04-11 17:25:33"
)
//
@ApiModelProperty(value = "收卡时间", example = "2022-04-11 17:25:33")
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
//
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
LocalDateTime
cardRecTime
;
//
LocalDateTime cardRecTime;
@ApiModelProperty
(
value
=
"创建时间"
,
example
=
"2022-04-11 17:25:33"
)
//
@ApiModelProperty(value = "创建时间", example = "2022-04-11 17:25:33")
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
//
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
LocalDateTime
createTime
;
//
LocalDateTime createTime;
//
@ApiModelProperty
(
value
=
"发卡时间"
,
example
=
"2022-04-11 17:25:33"
)
//
@ApiModelProperty(value = "发卡时间", example = "2022-04-11 17:25:33")
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
//
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
LocalDateTime
cardSendTime
;
//
LocalDateTime cardSendTime;
}
}
app/src/main/java/com/yiring/app/vo/visitor/InvitationVo.java
0 → 100644
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
vo
.
visitor
;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
import
com.fasterxml.jackson.databind.ser.std.ToStringSerializer
;
import
com.yiring.app.domain.visitor.Visitor
;
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 tzl
* @version 1.0
* @description:
* @date 2022/4/25 11:14
*/
@ApiModel
(
"InvitationVo"
)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
InvitationVo
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
5496232471863298479L
;
@JsonSerialize
(
using
=
ToStringSerializer
.
class
)
@ApiModelProperty
(
value
=
"id"
,
example
=
"1548548545755"
)
Long
id
;
@ApiModelProperty
(
value
=
"邀请原因/来访原因"
,
example
=
"随便看看"
)
String
reason
;
@ApiModelProperty
(
value
=
"邀请方式:个人 公司"
,
example
=
"个人"
)
String
InvitationMethod
;
@ApiModelProperty
(
value
=
"邀请人数"
,
example
=
"1"
)
Integer
numOfVisitor
;
@ApiModelProperty
(
value
=
"邀请人id"
,
example
=
"1"
)
Long
inviterId
;
@ApiModelProperty
(
value
=
"邀请人姓名"
,
example
=
"李四"
)
String
inviterName
;
@ApiModelProperty
(
value
=
"邀请人所属部门"
,
example
=
"开发部"
)
String
inviterDept
;
@ApiModelProperty
(
value
=
"状态"
,
example
=
"撤回"
)
String
status
;
@ApiModelProperty
(
value
=
"被邀请访客"
)
Visitor
visitor
;
}
app/src/main/java/com/yiring/app/vo/visitor/VisitorVo.java
浏览文件 @
856966b6
...
@@ -4,6 +4,7 @@ package com.yiring.app.vo.visitor;
...
@@ -4,6 +4,7 @@ package com.yiring.app.vo.visitor;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
import
com.fasterxml.jackson.databind.ser.std.ToStringSerializer
;
import
com.fasterxml.jackson.databind.ser.std.ToStringSerializer
;
import
com.yiring.app.domain.visitor.Car
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serializable
;
import
java.io.Serializable
;
...
@@ -77,4 +78,7 @@ public class VisitorVo implements Serializable {
...
@@ -77,4 +78,7 @@ public class VisitorVo implements Serializable {
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"发卡时间"
,
example
=
"2022-04-19 14:28:00"
)
@ApiModelProperty
(
value
=
"发卡时间"
,
example
=
"2022-04-19 14:28:00"
)
LocalDateTime
cardSendTime
;
LocalDateTime
cardSendTime
;
@ApiModelProperty
(
value
=
"车辆反参"
)
Car
car
;
}
}
app/src/main/java/com/yiring/app/web/
ca
r/CarController.java
→
app/src/main/java/com/yiring/app/web/
visito
r/CarController.java
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
web
.
ca
r
;
package
com
.
yiring
.
app
.
web
.
visito
r
;
import
com.yiring.app.param.car.CarParam
;
import
com.yiring.app.param.visitor.CarQueryParam
;
import
com.yiring.app.param.car.CarQueryParam
;
import
com.yiring.app.service.visitor.CarService
;
import
com.yiring.app.service.car.CarService
;
import
com.yiring.app.vo.visitor.CarVo
;
import
com.yiring.app.vo.car.CarVo
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.IdParam
;
import
com.yiring.common.param.IdParam
;
import
com.yiring.common.vo.PageVo
;
import
com.yiring.common.vo.PageVo
;
...
@@ -38,17 +37,17 @@ public class CarController {
...
@@ -38,17 +37,17 @@ public class CarController {
@Resource
@Resource
CarService
carService
;
CarService
carService
;
@ApiOperation
(
value
=
"新增车辆来访信息"
)
//
@ApiOperation(value = "新增车辆来访信息")
@PostMapping
(
"saveCarInfo"
)
//
@PostMapping("saveCarInfo")
public
Result
<
Long
>
saveCarInfo
(
@Valid
CarParam
carParam
)
{
//
public Result<Long> saveCarInfo(@Valid CarParam carParam) {
return
carService
.
saveCarInfo
(
carParam
);
//
return carService.saveCarInfo(carParam);
}
//
}
@ApiOperation
(
value
=
"修改车辆来访信息"
)
//
@ApiOperation(value = "修改车辆来访信息")
@PostMapping
(
"updateCarInfo"
)
//
@PostMapping("updateCarInfo")
public
Result
<
Long
>
updateCarInfo
(
@Valid
CarParam
carParam
,
@Valid
IdParam
idParam
)
{
//
public Result<Long> updateCarInfo(@Valid CarParam carParam, @Valid IdParam idParam) {
return
carService
.
updateCarInfo
(
carParam
,
idParam
);
//
return carService.updateCarInfo(carParam, idParam);
}
//
}
@ApiOperation
(
value
=
"收卡"
)
@ApiOperation
(
value
=
"收卡"
)
@PostMapping
(
"cardRec"
)
@PostMapping
(
"cardRec"
)
...
@@ -63,17 +62,17 @@ public class CarController {
...
@@ -63,17 +62,17 @@ public class CarController {
return
carService
.
cardSend
(
idParam
,
labelCard
);
return
carService
.
cardSend
(
idParam
,
labelCard
);
}
}
@ApiOperation
(
value
=
"删除车辆来访信息"
)
//
@ApiOperation(value = "删除车辆来访信息")
@PostMapping
(
"deleteCarInfo"
)
//
@PostMapping("deleteCarInfo")
public
Result
<
String
>
deleteCarInfo
(
@Valid
IdParam
idParam
)
{
//
public Result<String> deleteCarInfo(@Valid IdParam idParam) {
return
carService
.
deleteCarInfo
(
idParam
);
//
return carService.deleteCarInfo(idParam);
}
//
}
@ApiOperation
(
value
=
"查看车辆来访信息详情"
)
//
@ApiOperation(value = "查看车辆来访信息详情")
@GetMapping
(
"getCarInfo"
)
//
@GetMapping("getCarInfo")
public
Result
<
CarVo
>
getCarInfo
(
@Valid
IdParam
idParam
)
{
//
public Result<CarVo> getCarInfo(@Valid IdParam idParam) {
return
carService
.
getCarInfo
(
idParam
);
//
return carService.getCarInfo(idParam);
}
//
}
@ApiOperation
(
value
=
"查看车辆来访信息(分页)"
)
@ApiOperation
(
value
=
"查看车辆来访信息(分页)"
)
@GetMapping
(
"pageCarInfo"
)
@GetMapping
(
"pageCarInfo"
)
...
...
app/src/main/java/com/yiring/app/web/visitor/InvitationController.java
0 → 100644
浏览文件 @
856966b6
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
app
.
web
.
visitor
;
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.InvitationVo
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.IdParam
;
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.GetMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* @author tzl
* @version 1.0
* @description:
* @date 2022/4/25 11:35
*/
@Slf4j
@Validated
@Api
(
tags
=
"Invitation(邀请)"
)
@RestController
@RequestMapping
(
"/invitation/"
)
public
class
InvitationController
{
@Resource
InvitationService
invitationService
;
@ApiOperation
(
value
=
"新增邀请信息"
)
@PostMapping
(
"saveInv"
)
public
Result
<
String
>
saveInv
(
@Valid
InvitationParam
invitationParam
)
{
return
invitationService
.
saveInv
(
invitationParam
);
}
@ApiOperation
(
value
=
"修改邀请信息"
)
@PostMapping
(
"updateInv"
)
public
Result
<
String
>
updateInv
(
@Valid
InvitationParam
invitationParam
,
@Valid
IdParam
idParam
)
{
return
invitationService
.
updateInv
(
invitationParam
,
idParam
);
}
@ApiOperation
(
value
=
"撤回"
)
@PostMapping
(
"recallInv"
)
public
Result
<
String
>
recallInv
(
@Valid
IdParam
idParam
)
{
return
invitationService
.
recallInv
(
idParam
);
}
@ApiOperation
(
value
=
"发起邀请"
)
@PostMapping
(
"sendInv"
)
public
Result
<
String
>
sendInv
(
@Valid
IdParam
idParam
)
{
return
invitationService
.
sendInv
(
idParam
);
}
@ApiOperation
(
value
=
"删除邀请"
)
@PostMapping
(
"deleteInv"
)
public
Result
<
String
>
deleteInv
(
@Valid
IdParam
idParam
)
{
return
invitationService
.
deleteInv
(
idParam
);
}
@ApiOperation
(
value
=
"查看邀请信息(分页)"
)
@GetMapping
(
"pageInv"
)
public
Result
<
PageVo
<
InvitationVo
>>
pageInv
(
@Valid
InvitationQueryParam
invitationQueryParam
)
{
return
invitationService
.
pageInv
(
invitationQueryParam
);
}
@ApiOperation
(
value
=
"导出邀请信息"
,
produces
=
MediaType
.
APPLICATION_OCTET_STREAM_VALUE
)
@PostMapping
(
"exportInv"
)
public
void
exportInv
(
HttpServletResponse
response
,
@Valid
InvitationQueryParam
invitationQueryParam
)
{
invitationService
.
exportInv
(
invitationQueryParam
,
response
);
}
}
app/src/main/java/com/yiring/app/web/visitor/VisitorController.java
浏览文件 @
856966b6
...
@@ -61,11 +61,11 @@ public class VisitorController {
...
@@ -61,11 +61,11 @@ public class VisitorController {
return
visitorService
.
cardSend
(
labelCard
,
idParam
);
return
visitorService
.
cardSend
(
labelCard
,
idParam
);
}
}
@ApiOperation
(
value
=
"删除访客信息"
)
//
@ApiOperation(value = "删除访客信息")
@PostMapping
(
"deleteVisitor"
)
//
@PostMapping("deleteVisitor")
public
Result
<
String
>
deleteVisitor
(
@Valid
IdParam
idParam
)
{
//
public Result<String> deleteVisitor(@Valid IdParam idParam) {
return
visitorService
.
deleteVisitor
(
idParam
);
//
return visitorService.deleteVisitor(idParam);
}
//
}
@ApiOperation
(
value
=
"查看访客信息详情"
)
@ApiOperation
(
value
=
"查看访客信息详情"
)
@GetMapping
(
"selectVisitor"
)
@GetMapping
(
"selectVisitor"
)
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论