b8d6a41e by xu

Merge branch 'feature-tds-v1.0.0' into 'develop'

可信空间连接器入住接口

See merge request !9
2 parents 24e81108 9d5f44b0
......@@ -41,6 +41,14 @@ public class TdsConnectorIdentityController {
return CommonRes.success(true);
}
@PostMapping("/change-save")
@SystemLog(value = "连接器身份信息-变更")
@Operation(summary = "连接器身份信息-变更")
public CommonRes<Boolean> changeSaveTdsConnectorIdentity(@RequestBody @Valid TdsConnectorIdentityRQVO vo) {
tdsConnectorIdentityService.changeSaveTdsConnectorIdentity(vo);
return CommonRes.success(true);
}
@PutMapping("/update")
@SystemLog(value = "连接器身份信息-修改")
@Operation(summary = "连接器身份信息-修改")
......@@ -93,8 +101,8 @@ public class TdsConnectorIdentityController {
@GetMapping("/check-connector")
@SystemLog(value = "连接器身份信息-检查连接器是否已经存在")
public CommonRes<Boolean> checkConnector() {
Boolean vo = tdsConnectorIdentityService.verifyUniqueness(null);
public CommonRes<TdsConnectorIdentityRSVO> checkConnector() {
TdsConnectorIdentityRSVO vo = tdsConnectorIdentityService.checkConnector();
return CommonRes.success(vo);
}
//endregion
......
......@@ -97,6 +97,13 @@ public class TdsConnectorIdentityRQVO extends FlowRQBaseVO {
*/
@Schema(description = "业务审批状态")
private String bizApproveState;
/**
* 原始数据Guid
*/
@Schema(description = "原始数据Guid")
@NotBlank(message = "原始数据Guid为空。")
private String oldBizGuid;
/******** 库表存储属性 需处理 *****/
......
......@@ -94,4 +94,16 @@ public interface TdsConnectorIdentityService {
Map<String, MfTdsConnectorIdentity> getCrossTenantTdsConnectorIdentitys(Set<String> guidSet);
Boolean verifyUniqueness(TdsConnectorIdentityRQVO rqVO);
/**
* 变更数据申请
* @param flowBaseVO
*/
void changeSaveTdsConnectorIdentity(FlowRQBaseVO flowBaseVO);
/**
* 检查连接器是否已经存在
* @return
*/
TdsConnectorIdentityRSVO checkConnector();
}
......
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;
import com.csbr.qingcloud.portal.mybatis.entity.MfTdsConnectorIdentity;
import com.csbr.qingcloud.portal.service.TdsConnectorIdentityService;
import csbr.cloud.entity.enums.ApprovalStateEnum;
import com.csbr.cloud.common.exception.CsbrSystemException;
import com.csbr.cloud.common.util.CommonUtil;
import com.csbr.cloud.common.util.CsbrBeanUtil;
import com.csbr.cloud.workflow.util.ApprovalFlowUtil;
import com.csbr.cloud.workflow.util.FlowAbstractImpl;
import com.csbr.cloud.common.util.MessageSourceUtil;
import csbr.cloud.entity.domain.base.vo.PageListVO;
import com.csbr.cloud.workflow.domain.vo.appove.FlowRQBaseVO;
import com.csbr.cloud.workflow.domain.vo.appove.BizApproveVO;
import com.csbr.cloud.workflow.domain.dto.appove.AddApprovalDTO;
import com.csbr.cloud.workflow.domain.dto.callback.BizCallbackDTO;
import com.csbr.cloud.workflow.domain.vo.appove.BizApproveVO;
import com.csbr.cloud.workflow.domain.vo.appove.FlowRQBaseVO;
import com.csbr.cloud.workflow.util.ApprovalFlowUtil;
import com.csbr.cloud.workflow.util.FlowAbstractImpl;
import com.csbr.qingcloud.portal.domain.vo.TdsConnectorIdentityManagementQueryVO;
import com.csbr.qingcloud.portal.domain.vo.TdsConnectorIdentityManagementRQVO;
import com.csbr.qingcloud.portal.domain.vo.TdsConnectorIdentityManagementRSVO;
import com.csbr.qingcloud.portal.domain.vo.TdsConnectorIdentityManagementVoucherRQVO;
import com.csbr.qingcloud.portal.mybatis.entity.MfTdsConnectorIdentityManagement;
import com.csbr.qingcloud.portal.mybatis.service.MfTdsConnectorIdentityManagementService;
import com.csbr.qingcloud.portal.service.TdsConnectorIdentityManagementService;
import csbr.cloud.entity.domain.base.vo.PageListVO;
import csbr.cloud.entity.enums.ApprovalStateEnum;
import io.seata.spring.annotation.GlobalTransactional;
import jakarta.annotation.Resource;
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 io.seata.spring.annotation.GlobalTransactional;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
......@@ -76,9 +71,6 @@ public class TdsConnectorIdentityManagementServiceImpl extends FlowAbstractImpl
@Value("${csbr.platform-type:''}")
private String platformType;
@Resource
private TdsConnectorIdentityService tdsConnectorIdentityService;
/**
* 连接器身份管理分页查询
* @author xup
......@@ -354,7 +346,7 @@ public class TdsConnectorIdentityManagementServiceImpl extends FlowAbstractImpl
}
//排除驳回、撤回的数据
queryWrapper.notIn(MfTdsConnectorIdentityManagement::getBizApproveState,ApprovalStateEnum.CANCEL.getValue(),
ApprovalStateEnum.REJECT.getValue());
ApprovalStateEnum.REJECT.getValue(),ApprovalStateEnum.DISABLE.getValue());
//根据使用场景查询
queryWrapper.eq(MfTdsConnectorIdentityManagement::getUseScenariosCode,rqVO.getUseScenariosCode());
//期望效期有效的
......
......@@ -374,6 +374,55 @@ public class TdsConnectorIdentityServiceImpl extends FlowAbstractImpl implements
return mfTdsConnectorIdentityService.count(queryWrapper)>0;
}
@Override
@Transactional
public void changeSaveTdsConnectorIdentity(FlowRQBaseVO flowBaseVO) {
TdsConnectorIdentityRQVO rqVO = (TdsConnectorIdentityRQVO) flowBaseVO;
MfTdsConnectorIdentity oldTdsConnectorIdentity = beforeChangeSaveTdsConnectorIdentity(rqVO);
//发起连接器入住申请
saveTdsConnectorIdentity(rqVO);
afterChangeSaveTdsConnectorIdentity(rqVO,oldTdsConnectorIdentity);
}
@Override
public TdsConnectorIdentityRSVO checkConnector() {
LambdaQueryWrapper<MfTdsConnectorIdentity> queryWrapper = Wrappers.lambdaQuery();
queryWrapper.notIn(MfTdsConnectorIdentity::getBizApproveState,ApprovalStateEnum.CANCEL.getValue(),ApprovalStateEnum.REJECT.getValue(),ApprovalStateEnum.DISABLE.getValue());
queryWrapper.select(MfTdsConnectorIdentity::getGuid,MfTdsConnectorIdentity::getBizApproveState,MfTdsConnectorIdentity::getCrossPlatformApproveState);
List<MfTdsConnectorIdentity> list = mfTdsConnectorIdentityService.list(queryWrapper);
if(ObjectUtils.isEmpty(list)){
return null;
}
return convertToVO(list.get(0));
}
@Transactional
public void afterChangeSaveTdsConnectorIdentity(TdsConnectorIdentityRQVO rqVO,MfTdsConnectorIdentity oldTdsConnectorIdentity) {
//修改变更前数据状态为已废弃
oldTdsConnectorIdentity.setBizApproveState(ApprovalStateEnum.DISABLE.getValue());
mfTdsConnectorIdentityService.updateById(oldTdsConnectorIdentity);
}
/**
* 变更申请校验
* @param rqVO
*/
private MfTdsConnectorIdentity beforeChangeSaveTdsConnectorIdentity(TdsConnectorIdentityRQVO rqVO) {
//region 1.输入基础验证
if(ObjectUtils.isEmpty(rqVO)){
throw new CsbrSystemException(SystemError.DATA_INPUT_ERROR, String.format("%s参数为空。",FUNCTION_NAME));
}
MfTdsConnectorIdentity tdsConnectorIdentity = mfTdsConnectorIdentityService.getById(rqVO.getOldBizGuid());
if(ObjectUtils.isEmpty(tdsConnectorIdentity)){
throw new CsbrSystemException(SystemError.DATA_NOT_EXISTS,"变更数据不存在。");
}
//置空Guid
rqVO.setGuid(null);
rqVO.getTdsConnectorAdditional().setGuid(null);
rqVO.getTdsConnectorVerifiable().setGuid(null);
return tdsConnectorIdentity;
}
/**
* 连接器身份信息新增后置处理
* @author xup
......
......@@ -49,4 +49,7 @@ management:
enabled: false
feign:
sentinel:
enabled: true
\ No newline at end of file
enabled: true
csbr:
# 平台类型:ENTERPRISE,ZQ,MAIN
platform-type: ZQ
\ No newline at end of file
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!