Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
csbr-daop
/
ms-data-circulation-portal-service
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
3235f0b9
authored
2025-09-25 11:26:40 +0800
by
xu
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
可信空间连接器入住接口
1 parent
06ecf3b7
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
93 additions
and
45 deletions
src/main/java/com/csbr/qingcloud/portal/controller/TdsConnectorIdentityController.java
src/main/java/com/csbr/qingcloud/portal/domain/vo/TdsConnectorIdentityManagementRSVO.java
src/main/java/com/csbr/qingcloud/portal/mybatis/entity/MfTdsConnectorAdditional.java
src/main/java/com/csbr/qingcloud/portal/mybatis/entity/MfTdsConnectorIdentity.java
src/main/java/com/csbr/qingcloud/portal/mybatis/entity/MfTdsConnectorIdentityManagement.java
src/main/java/com/csbr/qingcloud/portal/mybatis/entity/MfTdsConnectorVerifiable.java
src/main/java/com/csbr/qingcloud/portal/service/TdsConnectorIdentityService.java
src/main/java/com/csbr/qingcloud/portal/service/impl/TdsConnectorAdditionalServiceImpl.java
src/main/java/com/csbr/qingcloud/portal/service/impl/TdsConnectorIdentityManagementServiceImpl.java
src/main/java/com/csbr/qingcloud/portal/service/impl/TdsConnectorIdentityServiceImpl.java
src/main/java/com/csbr/qingcloud/portal/service/impl/TdsConnectorVerifiableServiceImpl.java
src/main/java/com/csbr/qingcloud/portal/controller/TdsConnectorIdentityController.java
View file @
3235f0b
...
...
@@ -84,6 +84,13 @@ public class TdsConnectorIdentityController {
return
CommonRes
.
success
(
true
);
}
@GetMapping
(
"/get-effective-connector"
)
@SystemLog
(
value
=
"连接器身份信息-查询有效的连接器信息"
)
public
CommonRes
<
TdsConnectorIdentityRSVO
>
getEffectiveConnector
()
{
TdsConnectorIdentityRSVO
vo
=
tdsConnectorIdentityService
.
getEffectiveConnector
();
return
CommonRes
.
success
(
vo
);
}
//endregion
}
...
...
src/main/java/com/csbr/qingcloud/portal/domain/vo/TdsConnectorIdentityManagementRSVO.java
View file @
3235f0b
package
com
.
csbr
.
qingcloud
.
portal
.
domain
.
vo
;
import
com.alibaba.fastjson.JSONArray
;
import
com.csbr.cloud.common.annotations.SystemParamsDict
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
lombok.Data
;
...
...
@@ -35,6 +36,14 @@ public class TdsConnectorIdentityManagementRSVO {
@Schema
(
description
=
"使用场景(数据字典使用场景)"
)
private
String
useScenariosCode
;
/**
* 使用场景名称
*/
@Schema
(
description
=
"使用场景"
)
@SystemParamsDict
(
dictTypeName
=
"可信空间使用场景"
,
codeFieldName
=
"useScenariosCode"
)
private
String
useScenariosName
;
/**
* 期望效期
*/
...
...
src/main/java/com/csbr/qingcloud/portal/mybatis/entity/MfTdsConnectorAdditional.java
View file @
3235f0b
...
...
@@ -3,6 +3,7 @@ package com.csbr.qingcloud.portal.mybatis.entity;
import
com.baomidou.mybatisplus.annotation.FieldStrategy
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
csbr.cloud.entity.domain.base.dao.BaseDO
;
import
csbr.cloud.entity.domain.base.dao.BaseShardingDO
;
import
jdk.jfr.Name
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
...
...
@@ -19,13 +20,7 @@ import java.util.Date;
@EqualsAndHashCode
(
callSuper
=
true
)
@Accessors
(
chain
=
true
)
@Name
(
"连接器附加信息"
)
public
class
MfTdsConnectorAdditional
extends
BaseDO
{
/**
* 会员Guid
*/
@Name
(
"会员Guid"
)
private
String
tenantGuid
;
public
class
MfTdsConnectorAdditional
extends
BaseShardingDO
{
/**
* 连接器Guid
...
...
src/main/java/com/csbr/qingcloud/portal/mybatis/entity/MfTdsConnectorIdentity.java
View file @
3235f0b
...
...
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler
;
import
csbr.cloud.entity.domain.base.dao.BaseDO
;
import
csbr.cloud.entity.domain.base.dao.BaseShardingDO
;
import
jdk.jfr.Name
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
...
...
@@ -24,13 +25,7 @@ import java.util.List;
@Accessors
(
chain
=
true
)
@Name
(
"连接器身份信息"
)
@TableName
(
autoResultMap
=
true
)
public
class
MfTdsConnectorIdentity
extends
BaseDO
{
/**
* 会员Guid
*/
@Name
(
"会员Guid"
)
private
String
tenantGuid
;
public
class
MfTdsConnectorIdentity
extends
BaseShardingDO
{
/**
* 接入连接器名称
...
...
@@ -80,6 +75,7 @@ public class MfTdsConnectorIdentity extends BaseDO {
* 可信身份凭证
*/
@Name
(
"可信身份凭证"
)
@TableField
(
typeHandler
=
FastjsonTypeHandler
.
class
)
private
JSONArray
trustedIdentityCredential
;
/**
...
...
src/main/java/com/csbr/qingcloud/portal/mybatis/entity/MfTdsConnectorIdentityManagement.java
View file @
3235f0b
...
...
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler
;
import
csbr.cloud.entity.domain.base.dao.BaseDO
;
import
csbr.cloud.entity.domain.base.dao.BaseShardingDO
;
import
jdk.jfr.Name
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
...
...
@@ -22,7 +23,7 @@ import java.util.Date;
@Accessors
(
chain
=
true
)
@Name
(
"连接器身份管理"
)
@TableName
(
autoResultMap
=
true
)
public
class
MfTdsConnectorIdentityManagement
extends
BaseDO
{
public
class
MfTdsConnectorIdentityManagement
extends
Base
Sharding
DO
{
/**
* 节点Guid
...
...
src/main/java/com/csbr/qingcloud/portal/mybatis/entity/MfTdsConnectorVerifiable.java
View file @
3235f0b
...
...
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
import
com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
csbr.cloud.entity.domain.base.dao.BaseDO
;
import
csbr.cloud.entity.domain.base.dao.BaseShardingDO
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
jakarta.validation.constraints.NotNull
;
import
jdk.jfr.Name
;
...
...
@@ -27,13 +28,7 @@ import java.util.Map;
@Accessors
(
chain
=
true
)
@Name
(
"连接器可验信息"
)
@TableName
(
autoResultMap
=
true
)
public
class
MfTdsConnectorVerifiable
extends
BaseDO
{
/**
* 会员Guid
*/
@Name
(
"会员Guid"
)
private
String
tenantGuid
;
public
class
MfTdsConnectorVerifiable
extends
BaseShardingDO
{
/**
* 连接器Guid
...
...
src/main/java/com/csbr/qingcloud/portal/service/TdsConnectorIdentityService.java
View file @
3235f0b
...
...
@@ -76,4 +76,10 @@ public interface TdsConnectorIdentityService {
* @param bizApproveVO
*/
void
flowComplete
(
BizCallbackDTO
bizApproveVO
);
/**
* 查询有效的连接器信息
* @return
*/
TdsConnectorIdentityRSVO
getEffectiveConnector
();
}
...
...
src/main/java/com/csbr/qingcloud/portal/service/impl/TdsConnectorAdditionalServiceImpl.java
View file @
3235f0b
...
...
@@ -202,7 +202,7 @@ public class TdsConnectorAdditionalServiceImpl implements TdsConnectorAdditional
if
(
ObjectUtils
.
isEmpty
(
connectorGuids
)){
return
;
}
LambdaUpdateWrapper
<
MfTdsConnectorAdditional
>
removeWrapper
=
Wrappers
.
lambdaUpdate
(
);
LambdaUpdateWrapper
<
MfTdsConnectorAdditional
>
removeWrapper
=
mfTdsConnectorAdditionalService
.
csbrUpdateWrapper
(
MfTdsConnectorAdditional
.
class
);
removeWrapper
.
in
(
MfTdsConnectorAdditional:
:
getConnectorGuid
,
connectorGuids
);
mfTdsConnectorAdditionalService
.
remove
(
removeWrapper
);
}
...
...
src/main/java/com/csbr/qingcloud/portal/service/impl/TdsConnectorIdentityManagementServiceImpl.java
View file @
3235f0b
package
com
.
csbr
.
qingcloud
.
portal
.
service
.
impl
;
import
com.baomidou.mybatisplus.core.conditions.Wrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.csbr.cloud.common.enums.SystemError
;
import
com.csbr.cloud.common.enums.WorkFlowBizEnum
;
import
com.csbr.qingcloud.portal.domain.vo.TdsConnectorIdentityManagementVoucherRQVO
;
...
...
@@ -27,6 +29,7 @@ import jakarta.annotation.Resource;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Service
;
import
io.seata.spring.annotation.GlobalTransactional
;
import
org.springframework.transaction.annotation.Transactional
;
...
...
@@ -67,6 +70,9 @@ public class TdsConnectorIdentityManagementServiceImpl extends FlowAbstractImpl
@Resource
private
MessageSourceUtil
messageSourceUtil
;
@Value
(
"${csbr.platform-type:''}"
)
private
String
platformType
;
/**
* 连接器身份管理分页查询
* @author xup
...
...
@@ -82,6 +88,7 @@ public class TdsConnectorIdentityManagementServiceImpl extends FlowAbstractImpl
queryWrapper
.
in
(
CollectionUtils
.
isNotEmpty
(
queryVO
.
getGuidList
()),
MfTdsConnectorIdentityManagement:
:
getGuid
,
queryVO
.
getGuidList
());
queryWrapper
.
orderByDesc
(
MfTdsConnectorIdentityManagement:
:
getCreateTime
);
mfTdsConnectorIdentityManagementService
.
csbrExcludeShardingLambdaQueryWrapper
(
queryWrapper
);
PageListVO
<
MfTdsConnectorIdentityManagement
>
pageList
=
mfTdsConnectorIdentityManagementService
.
csbrPageList
(
queryVO
,
queryWrapper
);
PageListVO
<
TdsConnectorIdentityManagementRSVO
>
rsPageList
=
csbrBeanUtil
.
convert
(
pageList
,
PageListVO
.
class
);
afterQuery
(
pageList
,
rsPageList
);
...
...
@@ -241,14 +248,8 @@ public class TdsConnectorIdentityManagementServiceImpl extends FlowAbstractImpl
if
(
ApprovalStateEnum
.
PASSED
.
getValue
().
equals
(
dto
.
getApprovalState
()))
{
// todo
}
// 同步更新审批状态
LambdaUpdateWrapper
<
MfTdsConnectorIdentityManagement
>
updateWrapper
=
mfTdsConnectorIdentityManagementService
.
csbrUpdateWrapper
(
MfTdsConnectorIdentityManagement
.
class
);
updateWrapper
.
set
(
MfTdsConnectorIdentityManagement:
:
getBizApproveState
,
dto
.
getApprovalState
());
updateWrapper
.
eq
(
MfTdsConnectorIdentityManagement:
:
getGuid
,
dto
.
getBizGuid
());
boolean
flag
=
mfTdsConnectorIdentityManagementService
.
update
(
updateWrapper
);
if
(!
flag
)
{
throw
new
CsbrSystemException
(
SystemError
.
DATA_UPDATE_ERROR
,
messageSourceUtil
.
updateMessage
(
String
.
format
(
"%s的业务审批状态"
,
FUNCTION_NAME
)));
}
entity
.
setBizApproveState
(
dto
.
getApprovalState
());
mfTdsConnectorIdentityManagementService
.
updateById
(
entity
);
}
@Override
...
...
@@ -301,6 +302,9 @@ public class TdsConnectorIdentityManagementServiceImpl extends FlowAbstractImpl
//region 2.数据验证特殊处理
//region 2.1.业务合规性验证
if
(
"ZQ"
.
equals
(
platformType
))
{
verifyDuplication
(
rqVO
);
}
//endregion 2.1.业务合规性验证
//region 2.2.业务数据验证
...
...
@@ -331,6 +335,29 @@ public class TdsConnectorIdentityManagementServiceImpl extends FlowAbstractImpl
}
/**
* 验证重复
* @param rqVO
*/
private
void
verifyDuplication
(
TdsConnectorIdentityManagementRQVO
rqVO
)
{
//验证统一使用场景下是否存在没过期的
//1、验证重复
LambdaQueryWrapper
<
MfTdsConnectorIdentityManagement
>
queryWrapper
=
Wrappers
.
lambdaQuery
(
MfTdsConnectorIdentityManagement
.
class
);
if
(
StringUtils
.
isNotBlank
(
rqVO
.
getGuid
())){
queryWrapper
.
ne
(
MfTdsConnectorIdentityManagement:
:
getGuid
,
rqVO
.
getGuid
());
}
//排除驳回、撤回的数据
queryWrapper
.
notIn
(
MfTdsConnectorIdentityManagement:
:
getBizApproveState
,
ApprovalStateEnum
.
CANCEL
.
getValue
(),
ApprovalStateEnum
.
REJECT
.
getValue
());
//根据使用场景查询
queryWrapper
.
eq
(
MfTdsConnectorIdentityManagement:
:
getUseScenariosCode
,
rqVO
.
getUseScenariosCode
());
//期望效期有效的
queryWrapper
.
gt
(
MfTdsConnectorIdentityManagement:
:
getExpirationTime
,
new
Date
());
if
(
mfTdsConnectorIdentityManagementService
.
count
(
queryWrapper
)>
0
){
throw
new
CsbrSystemException
(
SystemError
.
DATA_ALREADY_EXISTS
,
"该连接器的使用场景已经存在。"
);
}
}
/**
* 连接器身份管理新增后置处理
* @author xup
* @date 2025-09-23 17:35
...
...
@@ -457,7 +484,7 @@ public class TdsConnectorIdentityManagementServiceImpl extends FlowAbstractImpl
rqQueryVO
.
setIsNeedQuery
(
true
);
if
(
approvalFlowUtil
.
isQueryBizGuid
(
rqQueryVO
))
{
rqQueryVO
.
setFlowType
(
FLOW_TYPE
);
List
<
String
>
bizGuidList
=
approvalFlowUtil
.
getApprovalBizGuids
(
rqQueryVO
);
List
<
String
>
bizGuidList
=
approvalFlowUtil
.
getApproval
CrossTenant
BizGuids
(
rqQueryVO
);
if
(
CollectionUtils
.
isEmpty
(
bizGuidList
))
{
rqQueryVO
.
setIsNeedQuery
(
false
);
}
else
{
...
...
src/main/java/com/csbr/qingcloud/portal/service/impl/TdsConnectorIdentityServiceImpl.java
View file @
3235f0b
...
...
@@ -29,6 +29,7 @@ import lombok.extern.slf4j.Slf4j;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang3.ObjectUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
...
...
@@ -79,6 +80,9 @@ public class TdsConnectorIdentityServiceImpl extends FlowAbstractImpl implements
@Resource
private
BizCommonRedisUtil
bizCommonRedisUtil
;
@Value
(
"${csbr.platform-type:''}"
)
private
String
platformType
;
/**
* 连接器身份信息分页查询
* @author xup
...
...
@@ -94,6 +98,7 @@ public class TdsConnectorIdentityServiceImpl extends FlowAbstractImpl implements
queryWrapper
.
in
(
CollectionUtils
.
isNotEmpty
(
queryVO
.
getGuidList
()),
MfTdsConnectorIdentity:
:
getGuid
,
queryVO
.
getGuidList
());
queryWrapper
.
orderByDesc
(
MfTdsConnectorIdentity:
:
getCreateTime
);
mfTdsConnectorIdentityService
.
csbrExcludeShardingLambdaQueryWrapper
(
queryWrapper
);
PageListVO
<
MfTdsConnectorIdentity
>
pageList
=
mfTdsConnectorIdentityService
.
csbrPageList
(
queryVO
,
queryWrapper
);
PageListVO
<
TdsConnectorIdentityRSVO
>
rsPageList
=
csbrBeanUtil
.
convert
(
pageList
,
PageListVO
.
class
);
afterQuery
(
pageList
,
rsPageList
);
...
...
@@ -263,10 +268,19 @@ public class TdsConnectorIdentityServiceImpl extends FlowAbstractImpl implements
throw
new
CsbrSystemException
(
SystemError
.
DATA_NOT_EXISTS
,
messageSourceUtil
.
notExistsToSelectMessage
(
FUNCTION_NAME
));
}
// 同步更新审批状态
LambdaUpdateWrapper
<
MfTdsConnectorIdentity
>
updateWrapper
=
mfTdsConnectorIdentityService
.
csbrUpdateWrapper
(
MfTdsConnectorIdentity
.
class
);
updateWrapper
.
set
(
MfTdsConnectorIdentity:
:
getBizApproveState
,
bizApproveVO
.
getApprovalState
());
updateWrapper
.
eq
(
MfTdsConnectorIdentity:
:
getGuid
,
bizApproveVO
.
getBizGuid
());
mfTdsConnectorIdentityService
.
update
(
updateWrapper
);
entity
.
setBizApproveState
(
bizApproveVO
.
getApprovalState
());
mfTdsConnectorIdentityService
.
updateById
(
entity
);
}
@Override
public
TdsConnectorIdentityRSVO
getEffectiveConnector
()
{
LambdaQueryWrapper
<
MfTdsConnectorIdentity
>
queryWrapper
=
Wrappers
.
lambdaQuery
();
queryWrapper
.
eq
(
MfTdsConnectorIdentity:
:
getBizApproveState
,
ApprovalStateEnum
.
PASSED
.
getValue
());
List
<
MfTdsConnectorIdentity
>
list
=
mfTdsConnectorIdentityService
.
list
(
queryWrapper
);
if
(
ObjectUtils
.
isNotEmpty
(
list
)){
return
convertToVO
(
list
.
get
(
0
));
}
return
null
;
}
/**
...
...
@@ -289,7 +303,9 @@ public class TdsConnectorIdentityServiceImpl extends FlowAbstractImpl implements
//region 2.2.业务数据验证
//验证接入连接器名称唯一性
if
(
"ZQ"
.
equals
(
platformType
))
{
verifyUniqueness
(
rqVO
);
}
//endregion 2.数据验证特殊处理
//region 3.数据转换处理
...
...
@@ -315,17 +331,15 @@ public class TdsConnectorIdentityServiceImpl extends FlowAbstractImpl implements
}
/**
* 验证
接入连接器名称唯一性
* 验证
是否已经存在连接器
* @param rqVO
*/
private
void
verifyUniqueness
(
TdsConnectorIdentityRQVO
rqVO
)
{
//1、验证是否已经存在连接器
LambdaQueryWrapper
<
MfTdsConnectorIdentity
>
queryWrapper
=
Wrappers
.
lambdaQuery
();
if
(
StringUtils
.
isNotBlank
(
rqVO
.
getGuid
())){
queryWrapper
.
ne
(
MfTdsConnectorIdentity:
:
getGuid
,
rqVO
.
getGuid
());
}
queryWrapper
.
eq
(
MfTdsConnectorIdentity:
:
getConnectorName
,
rqVO
.
getConnectorName
());
queryWrapper
.
notIn
(
MfTdsConnectorIdentity:
:
getBizApproveState
,
ApprovalStateEnum
.
CANCEL
.
getValue
(),
ApprovalStateEnum
.
REJECT
.
getValue
());
if
(
mfTdsConnectorIdentityService
.
count
(
queryWrapper
)>
0
){
throw
new
CsbrSystemException
(
SystemError
.
DATA_ALREADY_EXISTS
,
"
接入连接器名称已经存在
。"
);
throw
new
CsbrSystemException
(
SystemError
.
DATA_ALREADY_EXISTS
,
"
该企业下已经存在连接器,无法新增
。"
);
}
}
...
...
@@ -379,8 +393,6 @@ public class TdsConnectorIdentityServiceImpl extends FlowAbstractImpl implements
//endregion 2.2.业务数据验证
//endregion 2.数据验证特殊处理
//验证接入连接器名称唯一性
verifyUniqueness
(
rqVO
);
//region 3.数据转换处理
//region 3.1.数据过程转换
...
...
src/main/java/com/csbr/qingcloud/portal/service/impl/TdsConnectorVerifiableServiceImpl.java
View file @
3235f0b
...
...
@@ -202,7 +202,7 @@ public class TdsConnectorVerifiableServiceImpl implements TdsConnectorVerifiable
if
(
ObjectUtils
.
isEmpty
(
connectorGuids
)){
return
;
}
LambdaUpdateWrapper
<
MfTdsConnectorVerifiable
>
removeWrapper
=
Wrappers
.
lambdaUpdate
(
);
LambdaUpdateWrapper
<
MfTdsConnectorVerifiable
>
removeWrapper
=
mfTdsConnectorVerifiableService
.
csbrUpdateWrapper
(
MfTdsConnectorVerifiable
.
class
);
removeWrapper
.
in
(
MfTdsConnectorVerifiable:
:
getConnectorGuid
,
connectorGuids
);
mfTdsConnectorVerifiableService
.
remove
(
removeWrapper
);
}
...
...
Write
Preview
Styling with
Markdown
is supported
Attach a file
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 post a comment