记得上下班打卡 | git大法好,push需谨慎
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liquidnet-bus-v1
Project
Project
Details
Activity
Releases
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
董敬伟
liquidnet-bus-v1
Commits
ffbdc6a2
Commit
ffbdc6a2
authored
Jun 25, 2024
by
jiangxiulong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
正在 1.1 增加校验
parent
b484cc29
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
148 additions
and
1 deletion
+148
-1
KylinOrderTicketsController.java
...ontroller/zhengzai/kylin/KylinOrderTicketsController.java
+49
-1
AdamIdCodeService.java
...t/admin/zhengzai/adam/service/impl/AdamIdCodeService.java
+99
-0
No files found.
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/java/com/liquidnet/client/admin/web/controller/zhengzai/kylin/KylinOrderTicketsController.java
View file @
ffbdc6a2
...
...
@@ -9,8 +9,12 @@ import com.liquidnet.client.admin.common.core.page.TableDataInfo;
import
com.liquidnet.client.admin.common.enums.BannersTargetType
;
import
com.liquidnet.client.admin.common.enums.BusinessType
;
import
com.liquidnet.client.admin.common.utils.ShiroUtils
;
import
com.liquidnet.client.admin.zhengzai.adam.service.impl.AdamIdCodeService
;
import
com.liquidnet.client.admin.zhengzai.kylin.service.IToolService
;
import
com.liquidnet.commons.lang.constant.LnsRegex
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.service.base.ErrorMapping
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.kylin.dao.OrderTicketsListDao
;
import
com.liquidnet.service.kylin.dao.PerformanceSponsorDao
;
import
com.liquidnet.service.kylin.dto.param.admin.EntitiesEditParam
;
...
...
@@ -31,6 +35,7 @@ import org.springframework.web.bind.annotation.*;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.regex.Pattern
;
import
java.util.stream.Collectors
;
/**
...
...
@@ -59,6 +64,9 @@ public class KylinOrderTicketsController extends BaseController {
@Autowired
private
IToolService
toolService
;
@Autowired
private
AdamIdCodeService
adamIdCodeService
;
@Autowired
private
KylinOrderTicketEntitiesMapper
kylinOrderTicketEntitiesMapper
;
...
...
@@ -126,7 +134,47 @@ public class KylinOrderTicketsController extends BaseController {
String
enterIdCode
=
param
.
getEnterIdCode
();
Integer
enterType
=
param
.
getEnterType
();
String
orderId
=
entities
.
getOrderId
();
// 验证 todo
// 验证
switch
(
param
.
getEnterType
())
{
case
1
:
if
(!
Pattern
.
matches
(
LnsRegex
.
Valid
.
CN_HANZI
,
enterName
))
{
return
error
(
"观演人姓名只能为中文"
);
}
if
(!
Pattern
.
matches
(
LnsRegex
.
Valid
.
CN_ID_CARD_REF
,
enterIdCode
))
{
return
error
(
"身份证号码不合规"
);
}
try
{
adamIdCodeService
.
identityHandler1
(
enterName
,
enterIdCode
);
}
catch
(
Exception
e
)
{
return
error
(
e
.
getMessage
());
}
break
;
case
2
:
if
(!
Pattern
.
matches
(
LnsRegex
.
Valid
.
CN_ID_CARD_HM
,
enterIdCode
))
{
return
error
(
"港澳居民来往内地通行证号码不合规"
);
}
break
;
case
3
:
if
(!
Pattern
.
matches
(
LnsRegex
.
Valid
.
CN_ID_CARD_TW
,
enterIdCode
))
{
return
error
(
"台湾居民来往大陆通行证号码不合规"
);
}
break
;
case
4
:
if
(
Pattern
.
matches
(
LnsRegex
.
Valid
.
CN_ID_CARD_PP
,
enterIdCode
))
{
return
error
(
"不支持中国大陆护照"
);
}
if
(!
Pattern
.
matches
(
LnsRegex
.
Valid
.
CN_ID_CARD_PP_NON
,
enterIdCode
))
{
return
error
(
"护照号码不合规"
);
}
break
;
case
5
:
if
(!
Pattern
.
matches
(
LnsRegex
.
Valid
.
CN_ID_CARD_MO
,
enterIdCode
))
{
return
error
(
"军官证号不合规"
);
}
break
;
default
:
return
error
(
"证件类型不正确"
);
}
// 修改
toolService
.
supplementEnter
(
orderTicketEntitiesId
,
enterName
,
enterMobile
,
enterIdCode
,
enterType
,
orderId
);
// 记录
...
...
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/adam/service/impl/AdamIdCodeService.java
0 → 100644
View file @
ffbdc6a2
package
com
.
liquidnet
.
client
.
admin
.
zhengzai
.
adam
.
service
.
impl
;
import
com.fasterxml.jackson.databind.JsonNode
;
import
com.liquidnet.common.cache.redis.util.RedisDataSourceUtil
;
import
com.liquidnet.common.exception.LiquidnetServiceException
;
import
com.liquidnet.commons.lang.util.IdentityUtils
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.service.adam.constant.AdamRedisConst
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.StringUtils
;
@Slf4j
@Service
public
class
AdamIdCodeService
{
@Autowired
RedisDataSourceUtil
redisDataSourceUtil
;
public
boolean
setCertificationJunk
(
int
idType
,
String
idNo
,
String
idName
)
{
return
redisDataSourceUtil
.
getRedisAdamUtil
().
set
(
AdamRedisConst
.
INFO_CERTIFICATION_JUNK
+
idType
+
idNo
,
idName
,
604800
);
}
public
boolean
isCertificationJunk
(
int
idType
,
String
idNo
,
String
idName
)
{
String
o
=
(
String
)
redisDataSourceUtil
.
getRedisAdamUtil
().
get
(
AdamRedisConst
.
INFO_CERTIFICATION_JUNK
+
idType
+
idNo
);
return
!
StringUtils
.
isEmpty
(
o
)
&&
o
.
equals
(
idName
);
}
/**
* 目前只针对身份证类型三方服务认证成功的标记
*
* @param idType
* @param idNo
* @param idName
* @return
*/
public
boolean
setCertification
(
int
idType
,
String
idNo
,
String
idName
)
{
return
redisDataSourceUtil
.
getRedisAdamUtil
().
set
(
AdamRedisConst
.
INFO_CERTIFICATION
+
idType
+
idNo
,
idName
);
}
/**
* 目前只针对身份证类型三方服务认证成功的标记
*
* @param idType
* @param idNo
* @param idName
* @return
*/
public
int
isCertification
(
int
idType
,
String
idNo
,
String
idName
)
{
String
o
=
(
String
)
redisDataSourceUtil
.
getRedisAdamUtil
().
get
(
AdamRedisConst
.
INFO_CERTIFICATION
+
idType
+
idNo
);
if
(
StringUtils
.
isEmpty
(
o
))
{
return
-
1
;
}
return
o
.
equals
(
idName
)
?
1
:
0
;
}
/**
* 身份证实名处理
*
* @param name
* @param idCard
*/
public
void
identityHandler1
(
String
name
,
String
idCard
)
{
String
msg
=
"身份证号与姓名不符"
;
String
code
=
"10102"
;
int
rst
=
this
.
isCertification
(
1
,
idCard
,
name
);
switch
(
rst
)
{
// 本地存在,验证不通过 改名字了重新验证
case
0
:
// 本地不存在
case
-
1
:
if
(
this
.
isCertificationJunk
(
1
,
idCard
,
name
))
{
throw
new
LiquidnetServiceException
(
code
,
msg
);
}
String
respStr
=
IdentityUtils
.
aliThird
(
name
,
idCard
),
respErrorCode
=
null
;
JsonNode
respJNode
=
JsonUtils
.
fromJson
(
respStr
,
JsonNode
.
class
);
if
(
null
==
respJNode
||
!
"0"
.
equals
(
respErrorCode
=
String
.
valueOf
(
respJNode
.
get
(
"error_code"
))))
{
log
.
info
(
"###实名认证失败[{}]"
,
respStr
);
if
(!
StringUtils
.
isEmpty
(
respErrorCode
)
&&
org
.
apache
.
commons
.
lang3
.
StringUtils
.
indexOf
(
"3000290033"
,
respErrorCode
)
<
0
)
{
// 认证服务商'30002'、'90033'为运营商导致的失败,这里不做缓存标记
this
.
setCertificationJunk
(
1
,
idCard
,
name
);
}
throw
new
LiquidnetServiceException
(
code
,
msg
);
}
this
.
setCertification
(
1
,
idCard
,
name
);
break
;
// 本地存在,验证通过
case
1
:
break
;
default
:
throw
new
LiquidnetServiceException
(
code
,
"认证失败标记类型错误"
);
}
}
}
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