4251a3c9 by xu

可信空间连接器入住接口

1 parent 9d5f44b0
......@@ -7,6 +7,7 @@ import com.fasterxml.jackson.annotation.JsonFormat;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import jdk.jfr.Name;
import lombok.Data;
import java.util.Date;
import java.util.List;
......@@ -103,7 +104,14 @@ public class TdsConnectorIdentityRQVO extends FlowRQBaseVO {
*/
@Schema(description = "原始数据Guid")
@NotBlank(message = "原始数据Guid为空。")
private String oldBizGuid;
private String sourceBizGuid;
/**
* 是否变更数据【N 正常数据,Y 变更数据】
*/
@Schema(description = "是否变更数据【N 正常数据,Y 变更数据】")
private String isChangeData;
/******** 库表存储属性 需处理 *****/
......
......@@ -4,6 +4,7 @@ import com.csbr.cloud.workflow.domain.vo.appove.BizApproveVO;
import csbr.cloud.entity.domain.base.vo.BaseVO;
import io.swagger.v3.oas.annotations.media.Schema;
import com.fasterxml.jackson.annotation.JsonFormat;
import jdk.jfr.Name;
import lombok.Data;
import java.util.Date;
import java.util.List;
......@@ -89,6 +90,18 @@ public class TdsConnectorIdentityRSVO extends BaseVO {
@Schema(title = "跨平台审批状态(N 初始 A 审批中 Y 已通过 R 驳回 C 已撤销)")
private String crossPlatformApproveState;
/**
* 原始数据Guid
*/
@Schema(description = "原始数据Guid")
private String sourceBizGuid;
/**
* 是否变更数据【N 正常数据,Y 变更数据】
*/
@Schema(description = "是否变更数据【N 正常数据,Y 变更数据】")
private String isChangeData;
/******** 库表存储属性 需处理 *****/
/******** 自定义扩展 *****/
......
......@@ -7,6 +7,8 @@ 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 io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jdk.jfr.Name;
import lombok.Data;
import lombok.EqualsAndHashCode;
......@@ -92,4 +94,15 @@ public class MfTdsConnectorIdentity extends BaseShardingDO {
@Name("业务审批状态")
private String bizApproveState;
/**
* 是否变更数据【N 正常数据,Y 变更数据】
*/
@Name("是否变更数据")
private String isChangeData;
/**
* 原始数据Guid
*/
@Name("原始数据Guid")
private String sourceBizGuid;
}
......
......@@ -275,11 +275,62 @@ public class TdsConnectorIdentityServiceImpl extends FlowAbstractImpl implements
// 同步更新审批状态
entity.setBizApproveState(bizApproveVO.getApprovalState());
if(ApprovalStateEnum.PASSED.getValue().equals(bizApproveVO.getApprovalState())) {
if("N".equals(entity.getIsChangeData())) {
entity.setConnectorIdentity(IdentificationCodeUtil.genConnectorCode(entity.getLegalSocialCreditCode(), IdentificationCodeUtil.medIndustry));
}
//如果是变更数据需要更新原来数据信息
if("Y".equals(entity.getIsChangeData())) {
changSourceConnectorInentity(entity);
}
}
//驳回和撤销是,修改原来数据状态
if(ApprovalStateEnum.REJECT.getValue().equals(bizApproveVO.getApprovalState())
|| ApprovalStateEnum.CANCEL.getValue().equals(bizApproveVO.getApprovalState())) {
MfTdsConnectorIdentity sourceEntity = mfTdsConnectorIdentityService.getById(entity.getSourceBizGuid());
sourceEntity.setBizApproveState(ApprovalStateEnum.PASSED.getValue());
mfTdsConnectorIdentityService.updateById(sourceEntity);
}
mfTdsConnectorIdentityService.updateById(entity);
}
@Transactional
public void changSourceConnectorInentity(MfTdsConnectorIdentity entity) {
TdsConnectorIdentityRSVO tdsConnectorIdentityDetail = getTdsConnectorIdentityDetail(entity.getGuid());
String sourceBizGuid = entity.getSourceBizGuid();
TdsConnectorIdentityRSVO oldIdentityDetail = getTdsConnectorIdentityDetail(sourceBizGuid);
MfTdsConnectorIdentity mfTdsConnectorIdentity = csbrBeanUtil.convert(tdsConnectorIdentityDetail, MfTdsConnectorIdentity.class);
mfTdsConnectorIdentity.setGuid(oldIdentityDetail.getGuid());
mfTdsConnectorIdentity.setBizApproveState(ApprovalStateEnum.PASSED.getValue());
mfTdsConnectorIdentity.setIsChangeData("N");
mfTdsConnectorIdentityService.updateById(mfTdsConnectorIdentity);
TdsConnectorAdditionalRSVO tdsConnectorAdditional = tdsConnectorIdentityDetail.getTdsConnectorAdditional();
if(ObjectUtils.isEmpty(tdsConnectorAdditional)){
tdsConnectorAdditionalService.removeByConnectorGuids(Arrays.asList(sourceBizGuid));
}else {
TdsConnectorAdditionalRQVO connectorAdditionalRQVO = csbrBeanUtil.convert(tdsConnectorAdditional, TdsConnectorAdditionalRQVO.class);
connectorAdditionalRQVO.setConnectorGuid(sourceBizGuid);
if (ObjectUtils.isEmpty(oldIdentityDetail.getTdsConnectorAdditional())) {
tdsConnectorAdditionalService.saveTdsConnectorAdditional(connectorAdditionalRQVO);
}else{
connectorAdditionalRQVO.setGuid(oldIdentityDetail.getTdsConnectorAdditional().getGuid());
tdsConnectorAdditionalService.updateTdsConnectorAdditional(connectorAdditionalRQVO);
}
}
TdsConnectorVerifiableRSVO tdsConnectorVerifiable = tdsConnectorIdentityDetail.getTdsConnectorVerifiable();
if(ObjectUtils.isEmpty(tdsConnectorVerifiable)){
tdsConnectorVerifiableService.removeByConnectorGuids(Arrays.asList(sourceBizGuid));
}else{
TdsConnectorVerifiableRQVO tdsConnectorVerifiableRQVO = csbrBeanUtil.convert(tdsConnectorVerifiable, TdsConnectorVerifiableRQVO.class);
tdsConnectorVerifiableRQVO.setConnectorGuid(sourceBizGuid);
if (ObjectUtils.isEmpty(oldIdentityDetail.getTdsConnectorVerifiable())) {
tdsConnectorVerifiableService.saveTdsConnectorVerifiable(tdsConnectorVerifiableRQVO);
}else{
tdsConnectorVerifiableRQVO.setGuid(oldIdentityDetail.getTdsConnectorVerifiable().getGuid());
tdsConnectorVerifiableService.updateTdsConnectorVerifiable(tdsConnectorVerifiableRQVO);
}
}
}
@Override
public TdsConnectorIdentityRSVO getEffectiveConnector() {
LambdaQueryWrapper<MfTdsConnectorIdentity> queryWrapper = Wrappers.lambdaQuery();
......@@ -334,7 +385,7 @@ public class TdsConnectorIdentityServiceImpl extends FlowAbstractImpl implements
//region 2.2.业务数据验证
//验证接入连接器名称唯一性
if("ZQ".equals(platformType)) {
if(verifyUniqueness(rqVO)){
if(verifyUniqueness(rqVO) && StringUtils.isBlank(rqVO.getSourceBizGuid())){
throw new CsbrSystemException(SystemError.DATA_ALREADY_EXISTS,"该企业下已经存在连接器,无法新增。");
}
}
......@@ -370,6 +421,7 @@ public class TdsConnectorIdentityServiceImpl extends FlowAbstractImpl implements
public Boolean verifyUniqueness(TdsConnectorIdentityRQVO rqVO) {
//1、验证是否已经存在连接器
LambdaQueryWrapper<MfTdsConnectorIdentity> queryWrapper = Wrappers.lambdaQuery();
queryWrapper.eq(MfTdsConnectorIdentity::getIsChangeData,"N");
queryWrapper.notIn(MfTdsConnectorIdentity::getBizApproveState,ApprovalStateEnum.CANCEL.getValue(),ApprovalStateEnum.REJECT.getValue(),ApprovalStateEnum.DISABLE.getValue());
return mfTdsConnectorIdentityService.count(queryWrapper)>0;
}
......@@ -380,6 +432,7 @@ public class TdsConnectorIdentityServiceImpl extends FlowAbstractImpl implements
TdsConnectorIdentityRQVO rqVO = (TdsConnectorIdentityRQVO) flowBaseVO;
MfTdsConnectorIdentity oldTdsConnectorIdentity = beforeChangeSaveTdsConnectorIdentity(rqVO);
//发起连接器入住申请
rqVO.setIsChangeData("Y");
saveTdsConnectorIdentity(rqVO);
afterChangeSaveTdsConnectorIdentity(rqVO,oldTdsConnectorIdentity);
}
......@@ -387,8 +440,10 @@ public class TdsConnectorIdentityServiceImpl extends FlowAbstractImpl implements
@Override
public TdsConnectorIdentityRSVO checkConnector() {
LambdaQueryWrapper<MfTdsConnectorIdentity> queryWrapper = Wrappers.lambdaQuery();
queryWrapper.eq(MfTdsConnectorIdentity::getIsChangeData,"N");
queryWrapper.notIn(MfTdsConnectorIdentity::getBizApproveState,ApprovalStateEnum.CANCEL.getValue(),ApprovalStateEnum.REJECT.getValue(),ApprovalStateEnum.DISABLE.getValue());
queryWrapper.select(MfTdsConnectorIdentity::getGuid,MfTdsConnectorIdentity::getBizApproveState,MfTdsConnectorIdentity::getCrossPlatformApproveState);
queryWrapper.select(MfTdsConnectorIdentity::getGuid,MfTdsConnectorIdentity::getBizApproveState,MfTdsConnectorIdentity::getCrossPlatformApproveState,
MfTdsConnectorIdentity::getConnectorName);
List<MfTdsConnectorIdentity> list = mfTdsConnectorIdentityService.list(queryWrapper);
if(ObjectUtils.isEmpty(list)){
return null;
......@@ -399,7 +454,7 @@ public class TdsConnectorIdentityServiceImpl extends FlowAbstractImpl implements
@Transactional
public void afterChangeSaveTdsConnectorIdentity(TdsConnectorIdentityRQVO rqVO,MfTdsConnectorIdentity oldTdsConnectorIdentity) {
//修改变更前数据状态为已废弃
oldTdsConnectorIdentity.setBizApproveState(ApprovalStateEnum.DISABLE.getValue());
oldTdsConnectorIdentity.setBizApproveState("B");
mfTdsConnectorIdentityService.updateById(oldTdsConnectorIdentity);
}
......@@ -412,7 +467,7 @@ public class TdsConnectorIdentityServiceImpl extends FlowAbstractImpl implements
if(ObjectUtils.isEmpty(rqVO)){
throw new CsbrSystemException(SystemError.DATA_INPUT_ERROR, String.format("%s参数为空。",FUNCTION_NAME));
}
MfTdsConnectorIdentity tdsConnectorIdentity = mfTdsConnectorIdentityService.getById(rqVO.getOldBizGuid());
MfTdsConnectorIdentity tdsConnectorIdentity = mfTdsConnectorIdentityService.getById(rqVO.getSourceBizGuid());
if(ObjectUtils.isEmpty(tdsConnectorIdentity)){
throw new CsbrSystemException(SystemError.DATA_NOT_EXISTS,"变更数据不存在。");
}
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!