Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
extend
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
park
extend
Commits
e4ba83db
Commit
e4ba83db
authored
Jun 29, 2020
by
牟邦恺
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
✨
添加驾驶证二维码信息
parent
23a46388
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
88 additions
and
15 deletions
+88
-15
domain/src/main/java/com/hikcreate/edl/pub/web/mobile/domain/impl/BindServiceImpl.java
+26
-12
infra/src/main/java/com/hikcreate/edl/pub/web/mobile/infra/core/Result/ResultCode.java
+1
-3
infra/src/main/java/com/hikcreate/edl/pub/web/mobile/infra/data/feign/edl_pvt_service_drivinglicense/DrivingLicenseQrFeign.java
+20
-0
infra/src/main/java/com/hikcreate/edl/pub/web/mobile/infra/data/feign/edl_pvt_service_drivinglicense/request/IdCardMicReq.java
+23
-0
infra/src/main/java/com/hikcreate/edl/pub/web/mobile/infra/data/feign/edl_pvt_service_drivinglicense/response/DlQrRes.java
+18
-0
No files found.
domain/src/main/java/com/hikcreate/edl/pub/web/mobile/domain/impl/BindServiceImpl.java
View file @
e4ba83db
...
@@ -5,6 +5,7 @@ import cn.hutool.core.date.DateUtil;
...
@@ -5,6 +5,7 @@ import cn.hutool.core.date.DateUtil;
import
cn.hutool.core.util.StrUtil
;
import
cn.hutool.core.util.StrUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.hikcreate.common.sdk.response.apiparam.Response
;
import
com.hikcreate.common.sdk.response.statuscode.StatusCode
;
import
com.hikcreate.common.sdk.response.statuscode.StatusCode
;
import
com.hikcreate.edl.common.distributed.lock.annotation.DistributedLock
;
import
com.hikcreate.edl.common.distributed.lock.annotation.DistributedLock
;
import
com.hikcreate.edl.pub.web.mobile.domain.IBindService
;
import
com.hikcreate.edl.pub.web.mobile.domain.IBindService
;
...
@@ -21,6 +22,9 @@ import com.hikcreate.edl.pub.web.mobile.infra.data.feign.dcp_service_vehicle.par
...
@@ -21,6 +22,9 @@ import com.hikcreate.edl.pub.web.mobile.infra.data.feign.dcp_service_vehicle.par
import
com.hikcreate.edl.pub.web.mobile.infra.data.feign.dcp_service_vehicle.param.request.PlateNumQueryReq
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.feign.dcp_service_vehicle.param.request.PlateNumQueryReq
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.feign.dcp_service_vehicle.param.response.DrivingLicenseRes
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.feign.dcp_service_vehicle.param.response.DrivingLicenseRes
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.feign.dcp_service_vehicle.param.response.VehicleRes
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.feign.dcp_service_vehicle.param.response.VehicleRes
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.feign.edl_pvt_service_drivinglicense.DrivingLicenseQrFeign
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.feign.edl_pvt_service_drivinglicense.request.IdCardMicReq
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.feign.edl_pvt_service_drivinglicense.response.DlQrRes
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.feign.pvt_service_traffic.parm.request.ViolationListByTimeReq
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.feign.pvt_service_traffic.parm.request.ViolationListByTimeReq
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.feign.pvt_service_traffic.parm.response.ViolationMicRes
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.feign.pvt_service_traffic.parm.response.ViolationMicRes
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.mapper.BindInfoMapper
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.mapper.BindInfoMapper
;
...
@@ -74,6 +78,8 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
...
@@ -74,6 +78,8 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
DrivingLicenseCache
drivingLicenseCache
;
DrivingLicenseCache
drivingLicenseCache
;
@Autowired
@Autowired
UnqIdUtil
unqIdUtil
;
UnqIdUtil
unqIdUtil
;
@Autowired
private
DrivingLicenseQrFeign
drivingLicenseQrFeign
;
/**
/**
* 解除绑定时间限制
* 解除绑定时间限制
...
@@ -91,7 +97,7 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
...
@@ -91,7 +97,7 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
* 验证有效性限制时间
* 验证有效性限制时间
* 单位:小时
* 单位:小时
*/
*/
@Value
(
"${biz.check.validity.limit.time:24}"
)
@Value
(
"${biz.check.validity.limit.time:24}"
)
Integer
checkValidityLimitTime
;
Integer
checkValidityLimitTime
;
...
@@ -136,7 +142,7 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
...
@@ -136,7 +142,7 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
if
(
phones
!=
null
&&
!
phones
.
isEmpty
())
{
if
(
phones
!=
null
&&
!
phones
.
isEmpty
())
{
boolean
phoneExist
=
phones
.
get
(
0
).
getUserId
().
equals
(
info
.
getUserId
());
boolean
phoneExist
=
phones
.
get
(
0
).
getUserId
().
equals
(
info
.
getUserId
());
if
(!
phoneExist
)
{
if
(!
phoneExist
)
{
return
ResultGenerator
.
fail
(
StatusCode
.
DATA_ERROR
.
getCode
(),
"当前手机号已被其他客户绑定"
);
return
ResultGenerator
.
fail
(
StatusCode
.
DATA_ERROR
.
getCode
(),
"当前手机号已被其他客户绑定"
);
}
}
}
}
...
@@ -185,7 +191,7 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
...
@@ -185,7 +191,7 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@DistributedLock
(
key
=
"'park:extend:lock:unbind:unqId:'+#req.unqId+':userId:'+#req.userId+':timestamp:'+#req"
+
@DistributedLock
(
key
=
"'park:extend:lock:unbind:unqId:'+#req.unqId+':userId:'+#req.userId+':timestamp:'+#req"
+
".timestamp"
,
isSpin
=
false
)
".timestamp"
,
isSpin
=
false
)
public
Result
unbindInfo
(
UnBindReq
req
)
{
public
Result
unbindInfo
(
UnBindReq
req
)
{
ParkBindInfo
bindInfo
=
bindCache
.
getById
(
req
.
getUnqId
());
ParkBindInfo
bindInfo
=
bindCache
.
getById
(
req
.
getUnqId
());
if
(
bindInfo
==
null
||
"0"
.
equals
(
bindInfo
.
getStatus
()))
{
if
(
bindInfo
==
null
||
"0"
.
equals
(
bindInfo
.
getStatus
()))
{
return
ResultGenerator
.
fail
(
ResultCode
.
BIND_INFO_UNKNOWN
);
return
ResultGenerator
.
fail
(
ResultCode
.
BIND_INFO_UNKNOWN
);
...
@@ -228,8 +234,8 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
...
@@ -228,8 +234,8 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
if
(
bindInfo
==
null
||
"0"
.
equals
(
bindInfo
.
getStatus
()))
{
if
(
bindInfo
==
null
||
"0"
.
equals
(
bindInfo
.
getStatus
()))
{
return
ResultGenerator
.
fail
(
ResultCode
.
BIND_INFO_UNKNOWN
);
return
ResultGenerator
.
fail
(
ResultCode
.
BIND_INFO_UNKNOWN
);
}
}
if
(
!
bindInfo
.
getUserId
().
equals
(
query
.
getUserId
())
||
!
bindInfo
.
getPhone
().
equals
(
query
.
getPhone
())
)
{
if
(!
bindInfo
.
getUserId
().
equals
(
query
.
getUserId
())
||
!
bindInfo
.
getPhone
().
equals
(
query
.
getPhone
())
)
{
return
ResultGenerator
.
fail
(
StatusCode
.
PARAM_ERROR
.
getCode
(),
"客户唯一编码或手机号不正确"
);
return
ResultGenerator
.
fail
(
StatusCode
.
PARAM_ERROR
.
getCode
(),
"客户唯一编码或手机号不正确"
);
}
}
PlateNumAndTypeQueryReq
req
=
new
PlateNumAndTypeQueryReq
();
PlateNumAndTypeQueryReq
req
=
new
PlateNumAndTypeQueryReq
();
...
@@ -260,8 +266,8 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
...
@@ -260,8 +266,8 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
return
ResultGenerator
.
fail
(
ResultCode
.
BIND_INFO_UNKNOWN
);
return
ResultGenerator
.
fail
(
ResultCode
.
BIND_INFO_UNKNOWN
);
}
}
if
(
!
bindInfo
.
getUserId
().
equals
(
query
.
getUserId
())
||
!
bindInfo
.
getPhone
().
equals
(
query
.
getPhone
())
)
{
if
(!
bindInfo
.
getUserId
().
equals
(
query
.
getUserId
())
||
!
bindInfo
.
getPhone
().
equals
(
query
.
getPhone
())
)
{
return
ResultGenerator
.
fail
(
StatusCode
.
PARAM_ERROR
.
getCode
(),
"客户唯一编码或手机号不正确"
);
return
ResultGenerator
.
fail
(
StatusCode
.
PARAM_ERROR
.
getCode
(),
"客户唯一编码或手机号不正确"
);
}
}
PlateNumAndTypeQueryReq
req
=
new
PlateNumAndTypeQueryReq
();
PlateNumAndTypeQueryReq
req
=
new
PlateNumAndTypeQueryReq
();
...
@@ -303,8 +309,8 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
...
@@ -303,8 +309,8 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
return
ResultGenerator
.
fail
(
ResultCode
.
BIND_INFO_UNKNOWN
);
return
ResultGenerator
.
fail
(
ResultCode
.
BIND_INFO_UNKNOWN
);
}
}
if
(
!
bindInfo
.
getUserId
().
equals
(
query
.
getUserId
())
||
!
bindInfo
.
getPhone
().
equals
(
query
.
getPhone
())
)
{
if
(!
bindInfo
.
getUserId
().
equals
(
query
.
getUserId
())
||
!
bindInfo
.
getPhone
().
equals
(
query
.
getPhone
())
)
{
return
ResultGenerator
.
fail
(
StatusCode
.
PARAM_ERROR
.
getCode
(),
"客户唯一编码或手机号不正确"
);
return
ResultGenerator
.
fail
(
StatusCode
.
PARAM_ERROR
.
getCode
(),
"客户唯一编码或手机号不正确"
);
}
}
/**
/**
...
@@ -343,8 +349,8 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
...
@@ -343,8 +349,8 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
if
(
bindInfo
==
null
||
"0"
.
equals
(
bindInfo
.
getStatus
()))
{
if
(
bindInfo
==
null
||
"0"
.
equals
(
bindInfo
.
getStatus
()))
{
return
ResultGenerator
.
fail
(
ResultCode
.
BIND_INFO_UNKNOWN
);
return
ResultGenerator
.
fail
(
ResultCode
.
BIND_INFO_UNKNOWN
);
}
}
if
(
!
bindInfo
.
getUserId
().
equals
(
query
.
getUserId
())
||
!
bindInfo
.
getPhone
().
equals
(
query
.
getPhone
())
)
{
if
(!
bindInfo
.
getUserId
().
equals
(
query
.
getUserId
())
||
!
bindInfo
.
getPhone
().
equals
(
query
.
getPhone
())
)
{
return
ResultGenerator
.
fail
(
StatusCode
.
PARAM_ERROR
.
getCode
(),
"客户唯一编码或手机号不正确"
);
return
ResultGenerator
.
fail
(
StatusCode
.
PARAM_ERROR
.
getCode
(),
"客户唯一编码或手机号不正确"
);
}
}
/**
/**
...
@@ -378,13 +384,21 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
...
@@ -378,13 +384,21 @@ public class BindServiceImpl extends ServiceImpl<BindInfoMapper, ParkBindInfo> i
}
}
/**
/**
* 获取二维码信息
*/
Response
<
DlQrRes
>
qrInfo
=
drivingLicenseQrFeign
.
getQrInfo
(
new
IdCardMicReq
().
setIdCard
(
byPlateNumAndType
.
getSfzmhm
()));
if
(!
qrInfo
.
isSuccess
()
||
qrInfo
.
getData
()
==
null
)
{
return
ResultGenerator
.
fail
(
ResultCode
.
DRIVING_LICENSE_UNKNOWN
);
}
/**
* 构建驾照信息查询结果
* 构建驾照信息查询结果
*/
*/
DrivingLicenseInfoRes
result
=
new
DrivingLicenseInfoRes
();
DrivingLicenseInfoRes
result
=
new
DrivingLicenseInfoRes
();
result
.
setDriverName
(
drivingLicenseRes
.
getXm
());
result
.
setDriverName
(
drivingLicenseRes
.
getXm
());
result
.
setPlateNum
(
byPlateNumAndType
.
getHphm
());
result
.
setPlateNum
(
byPlateNumAndType
.
getHphm
());
result
.
setDlQr
(
qrInfo
.
getData
().
getQr
());
String
validityTime
=
drivingLicenseRes
.
getYxqz
();
String
validityTime
=
drivingLicenseRes
.
getYxqz
();
if
(
StrUtil
.
isNotBlank
(
validityTime
)
&&
!
"null"
.
equalsIgnoreCase
(
validityTime
)
)
{
if
(
StrUtil
.
isNotBlank
(
validityTime
)
&&
!
"null"
.
equalsIgnoreCase
(
validityTime
)
)
{
validityTime
=
validityTime
.
substring
(
0
,
10
);
validityTime
=
validityTime
.
substring
(
0
,
10
);
}
}
result
.
setValidityTime
(
validityTime
);
result
.
setValidityTime
(
validityTime
);
...
...
infra/src/main/java/com/hikcreate/edl/pub/web/mobile/infra/core/Result/ResultCode.java
View file @
e4ba83db
...
@@ -3,9 +3,7 @@ package com.hikcreate.edl.pub.web.mobile.infra.core.Result;
...
@@ -3,9 +3,7 @@ package com.hikcreate.edl.pub.web.mobile.infra.core.Result;
import
com.hikcreate.common.sdk.response.statuscode.IStatusCode
;
import
com.hikcreate.common.sdk.response.statuscode.IStatusCode
;
import
com.hikcreate.common.sdk.response.statuscode.ProductCode
;
import
com.hikcreate.common.sdk.response.statuscode.ProductCode
;
import
com.hikcreate.common.sdk.response.statuscode.StatusCodeHelper
;
import
com.hikcreate.common.sdk.response.statuscode.StatusCodeHelper
;
import
com.hikcreate.edl.common.sdk.enums.EdlServiceCode
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
import
lombok.Getter
;
/**
/**
* @author: xieshixiang
* @author: xieshixiang
...
@@ -28,7 +26,7 @@ public enum ResultCode implements IStatusCode {
...
@@ -28,7 +26,7 @@ public enum ResultCode implements IStatusCode {
CAR_PHONE_UNMATCHED
(
5
,
"手机号与车辆备案手机号不一致"
),
CAR_PHONE_UNMATCHED
(
5
,
"手机号与车辆备案手机号不一致"
),
CAR_HAVE_BIND
(
6
,
"车辆已被绑定"
),
CAR_HAVE_BIND
(
6
,
"车辆已被绑定"
),
BIND_INFO_UNKNOWN
(
7
,
"绑定认证不存在"
),
BIND_INFO_UNKNOWN
(
7
,
"绑定认证不存在"
),
DRIVING_LICENSE_UNKNOWN
(
8
,
"车主
驾照信息不存在
"
);
DRIVING_LICENSE_UNKNOWN
(
8
,
"车主
信息不存在或非贵阳驾驶证
"
);
private
int
customCode
;
private
int
customCode
;
private
String
msg
;
private
String
msg
;
...
...
infra/src/main/java/com/hikcreate/edl/pub/web/mobile/infra/data/feign/edl_pvt_service_drivinglicense/DrivingLicenseQrFeign.java
0 → 100644
View file @
e4ba83db
package
com
.
hikcreate
.
edl
.
pub
.
web
.
mobile
.
infra
.
data
.
feign
.
edl_pvt_service_drivinglicense
;
import
com.hikcreate.common.sdk.response.apiparam.Response
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.feign.edl_pvt_service_drivinglicense.request.IdCardMicReq
;
import
com.hikcreate.edl.pub.web.mobile.infra.data.feign.edl_pvt_service_drivinglicense.response.DlQrRes
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
/**
*
*/
@FeignClient
(
value
=
"edl-pvt-service-dl"
,
path
=
"drivingLicense/qr"
)
public
interface
DrivingLicenseQrFeign
{
@PostMapping
(
"getQrInfo"
)
Response
<
DlQrRes
>
getQrInfo
(
@RequestBody
@Validated
IdCardMicReq
req
);
}
infra/src/main/java/com/hikcreate/edl/pub/web/mobile/infra/data/feign/edl_pvt_service_drivinglicense/request/IdCardMicReq.java
0 → 100644
View file @
e4ba83db
package
com
.
hikcreate
.
edl
.
pub
.
web
.
mobile
.
infra
.
data
.
feign
.
edl_pvt_service_drivinglicense
.
request
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.experimental.Accessors
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.Pattern
;
import
static
com
.
hikcreate
.
edl
.
common
.
constant
.
ValidateConstant
.
ID_CARD_CONSTRAINT_REGEXP
;
/**
* @author MOUBK
* @create 2019/4/8 19:43
*/
@Data
@NoArgsConstructor
@Accessors
(
chain
=
true
)
public
class
IdCardMicReq
{
@Pattern
(
regexp
=
ID_CARD_CONSTRAINT_REGEXP
,
message
=
"身份证号不正确"
)
@NotNull
private
String
idCard
;
}
infra/src/main/java/com/hikcreate/edl/pub/web/mobile/infra/data/feign/edl_pvt_service_drivinglicense/response/DlQrRes.java
0 → 100644
View file @
e4ba83db
package
com
.
hikcreate
.
edl
.
pub
.
web
.
mobile
.
infra
.
data
.
feign
.
edl_pvt_service_drivinglicense
.
response
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.experimental.Accessors
;
/**
* @author MOUBK
* @create 2019/6/20 11:21
*/
@Data
@NoArgsConstructor
@Accessors
(
chain
=
true
)
public
class
DlQrRes
{
private
String
qr
;
private
Integer
cumulativeScore
;
private
Integer
residualScore
;
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment