feat(制品库功能完善): 产品库不提供直接上传产品操作,文档需要从知识库中选取
产品库上传文档时增加校验规则: 1. 上传文档时需要增加属性:制品标识(为文档id) 2. 校验文档是否存在 3. 校验产品库中是否已存在该文档
This commit is contained in:
parent
cc39a7637f
commit
248102b5a4
|
|
@ -84,7 +84,7 @@ public class PmsDocumentServiceImpl implements IPmsDocumentService
|
|||
public PmsDocumentDetailVo selectPmsDocumentDetailVoByIdAndEnterpriseId(Long id, Long enterpriseId) {
|
||||
PmsDocument pmsDocument = this.selectPmsDocumentByIdAndEnterpriseId(id, enterpriseId);
|
||||
if (pmsDocument == null) {
|
||||
throw new ServiceException("The entered parameter is incorrect");
|
||||
throw new ServiceException("组织知识库下不存在该文档(文档标识[%s])", id);
|
||||
}
|
||||
PmsDocumentDetailVo pmsDocumentDetailVo = new PmsDocumentDetailVo();
|
||||
BeanUtils.copyProperties(pmsDocument, pmsDocumentDetailVo);
|
||||
|
|
|
|||
|
|
@ -127,7 +127,7 @@ public class PmsProductLibraryController extends BaseController {
|
|||
componentRawInputVo.setRepoName(name);
|
||||
componentRawInputVo.setEnterpriseIdentifier(enterpriseIdentifier);
|
||||
componentRawInputVo.setFormat(ProductLibraryRepositoriesFormatEnum.PRODUCT.getKey());
|
||||
return toAjax(pmsProductLibraryComponentService.insertRawComponent(componentRawInputVo));
|
||||
return toAjax(pmsProductLibraryService.uploadProductAsset(componentRawInputVo));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -24,6 +24,6 @@ public class AssetRawInputVo {
|
|||
private String fileIdentifier;
|
||||
@ApiModelProperty(value = "文件流", hidden = true)
|
||||
private SysFileBytes fileBytes;
|
||||
@ApiModelProperty(value = "制品标识", hidden = true)
|
||||
@ApiModelProperty(value = "制品标识")
|
||||
private String assetIdentifier;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -86,7 +86,6 @@ public class ComponentRawInputVo {
|
|||
throw new ServiceException("用户提供的制品额外属性格式错误,请确保为JSON格式");
|
||||
}
|
||||
}
|
||||
|
||||
pmsProductLibraryComponent.setPmsEnterpriseIdentifier(enterpriseIdentifier);
|
||||
return pmsProductLibraryComponent;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
package com.microservices.pms.productLibrary.service;
|
||||
|
||||
import com.microservices.pms.productLibrary.domain.PmsProductLibraryComponent;
|
||||
import com.microservices.pms.productLibrary.domain.PmsProductLibraryRepositories;
|
||||
import com.microservices.pms.productLibrary.domain.vo.*;
|
||||
|
||||
import java.util.List;
|
||||
|
|
@ -121,8 +120,6 @@ public interface IPmsProductLibraryComponentService {
|
|||
*/
|
||||
List<PmsProductLibraryComponent> selectPmsProductLibraryComponentListByDatabase(Long repoId);
|
||||
|
||||
PmsProductLibraryRepositories getPmsProductLibraryRepositories(Boolean isProduct, String enterpriseIdentifier, String repositoryName, String snapshotName);
|
||||
|
||||
/**
|
||||
* 批量锁定制品,防止重复移入
|
||||
*
|
||||
|
|
|
|||
|
|
@ -131,4 +131,6 @@ public interface IPmsProductLibraryRepositoriesService {
|
|||
List<Long> getLockStatusRepositoryList(String enterpriseIdentifier, String repoIds);
|
||||
|
||||
PmsProductLibraryRepositories selectPmsProductLibraryRepositoriesById(Long repoId);
|
||||
|
||||
PmsProductLibraryRepositories getPmsProductLibraryRepositories(Boolean isProduct, String enterpriseIdentifier, String repositoryName, String snapshotName);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -91,4 +91,12 @@ public interface IPmsProductLibraryService {
|
|||
* @return 产品库打包对象
|
||||
*/
|
||||
ProductPackagedResultVo getPackagedProduct(String enterpriseIdentifier, String productRepoName);
|
||||
|
||||
/**
|
||||
* 上传产品库制品
|
||||
*
|
||||
* @param componentRawInputVo 产品库制品输入对象
|
||||
* @return 结果
|
||||
*/
|
||||
Boolean uploadProductAsset(ComponentRawInputVo componentRawInputVo);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -75,24 +75,6 @@ public class PmsProductLibraryComponentServiceImpl implements IPmsProductLibrary
|
|||
return pmsProductLibraryComponentMapper.selectPmsProductLibraryComponentById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PmsProductLibraryRepositories getPmsProductLibraryRepositories(Boolean isProduct, String enterpriseIdentifier, String repoName, String snapshotName) {
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories;
|
||||
if (isProduct) {
|
||||
pmsProductLibraryRepositories =
|
||||
pmsProductLibraryProductRepoService.selectPmsProductLibraryByName(enterpriseIdentifier, repoName);
|
||||
} else {
|
||||
if (StringUtils.isNotEmpty(snapshotName)) {
|
||||
pmsProductLibraryRepositories =
|
||||
pmsProductLibrarySnapshotRepoService.selectPmsProductLibrarySnapshotByName(enterpriseIdentifier, repoName, snapshotName);
|
||||
} else {
|
||||
pmsProductLibraryRepositories =
|
||||
pmsProductLibraryRepositoriesService.selectPmsProductLibraryRepositoriesByName(enterpriseIdentifier, repoName);
|
||||
}
|
||||
}
|
||||
return pmsProductLibraryRepositories;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询制品库-制品列表
|
||||
*
|
||||
|
|
@ -104,7 +86,7 @@ public class PmsProductLibraryComponentServiceImpl implements IPmsProductLibrary
|
|||
@Override
|
||||
public NexusComponentResultVo<List<NexusResultDataVo>> selectPmsProductLibraryComponentListByNexus(String enterpriseIdentifier, ComponentSearchVo componentSearchVo, boolean isProduct) {
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories =
|
||||
getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, componentSearchVo.getRepositoryName(), componentSearchVo.getSnapshotRepoName());
|
||||
pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, componentSearchVo.getRepositoryName(), componentSearchVo.getSnapshotRepoName());
|
||||
componentSearchVo.setRepositoryName(pmsProductLibraryRepositories.getNexusRepositoriesName());
|
||||
|
||||
NexusComponentSearchVo<ComponentSearchVo> nexusComponentSearchVo = NexusComponentSearchVo.toRead(componentSearchVo, nexusRequestHelper.getNexusTid());
|
||||
|
|
@ -126,7 +108,7 @@ public class PmsProductLibraryComponentServiceImpl implements IPmsProductLibrary
|
|||
|
||||
@Override
|
||||
public NexusComponentResultVo<NexusAssetResultDataVo> getAssetDetailByAssetId(String enterpriseIdentifier, String repoName, String snapshotName, String assetId, boolean isProduct) {
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, repoName, snapshotName);
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, repoName, snapshotName);
|
||||
NexusComponentSearchVo<String> nexusComponentSearchVo =
|
||||
NexusComponentSearchVo.toReadAsset(pmsProductLibraryRepositories.getNexusRepositoriesName(), assetId, nexusRequestHelper.getNexusTid());
|
||||
NexusComponentResultVo<NexusAssetResultDataVo> assetResultDataVo =
|
||||
|
|
@ -179,7 +161,7 @@ public class PmsProductLibraryComponentServiceImpl implements IPmsProductLibrary
|
|||
|
||||
@Override
|
||||
public NexusComponentResultVo<NexusComponentResultDataVo> getComponentDetailByComponentId(String enterpriseIdentifier, String repoName, String snapshotName, String componentId, boolean isProduct) {
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, repoName, snapshotName);
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, repoName, snapshotName);
|
||||
NexusComponentSearchVo<String> nexusComponentSearchVo =
|
||||
NexusComponentSearchVo.toReadComponent(pmsProductLibraryRepositories.getNexusRepositoriesName(), componentId, nexusRequestHelper.getNexusTid());
|
||||
NexusComponentResultVo<NexusComponentResultDataVo> componentResultVo =
|
||||
|
|
@ -216,7 +198,7 @@ public class PmsProductLibraryComponentServiceImpl implements IPmsProductLibrary
|
|||
|
||||
@Override
|
||||
public NexusComponentResultVo<Boolean> getCanDeleteFolderByNode(String enterpriseIdentifier, ComponentSearchVo componentSearchVo, boolean isProduct) {
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, componentSearchVo.getRepositoryName(), componentSearchVo.getSnapshotRepoName());
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, componentSearchVo.getRepositoryName(), componentSearchVo.getSnapshotRepoName());
|
||||
NexusComponentSearchVo<String> nexusComponentSearchVo =
|
||||
NexusComponentSearchVo.toCanDeleteFolder(pmsProductLibraryRepositories.getNexusRepositoriesName(), componentSearchVo.getNode(), nexusRequestHelper.getNexusTid());
|
||||
return nexusRequestHelper.doRequestToJavaObject(
|
||||
|
|
@ -229,7 +211,7 @@ public class PmsProductLibraryComponentServiceImpl implements IPmsProductLibrary
|
|||
|
||||
@Override
|
||||
public NexusComponentResultVo<Boolean> getCanDeleteComponentByComponentId(String enterpriseIdentifier, String repoName, String snapshotName, String componentId, boolean isProduct) {
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, repoName, snapshotName);
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, repoName, snapshotName);
|
||||
NexusComponentSearchVo<String> nexusComponentSearchVo =
|
||||
NexusComponentSearchVo.toCanDeleteComponent(pmsProductLibraryRepositories.getNexusRepositoriesName(), componentId, nexusRequestHelper.getNexusTid());
|
||||
return nexusRequestHelper.doRequestToJavaObject(
|
||||
|
|
@ -242,7 +224,7 @@ public class PmsProductLibraryComponentServiceImpl implements IPmsProductLibrary
|
|||
|
||||
@Override
|
||||
public NexusComponentResultVo<Boolean> getCanDeleteAssetByAssetId(String enterpriseIdentifier, String repoName, String snapshotName, String assetId, boolean isProduct) {
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, repoName, snapshotName);
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, repoName, snapshotName);
|
||||
NexusComponentSearchVo<String> nexusComponentSearchVo =
|
||||
NexusComponentSearchVo.toCanDeleteAsset(pmsProductLibraryRepositories.getNexusRepositoriesName(), assetId, nexusRequestHelper.getNexusTid());
|
||||
return nexusRequestHelper.doRequestToJavaObject(
|
||||
|
|
@ -255,7 +237,7 @@ public class PmsProductLibraryComponentServiceImpl implements IPmsProductLibrary
|
|||
|
||||
@Override
|
||||
public NexusComponentResultVo<List<String>> deleteAssetByAssetId(String enterpriseIdentifier, String repoName, String snapshotName, String assetId, boolean isProduct) {
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, repoName, snapshotName);
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, repoName, snapshotName);
|
||||
pmsProductLibraryRepositoriesService.checkLockRepositoryStatus(enterpriseIdentifier, pmsProductLibraryRepositories.getId());
|
||||
NexusComponentSearchVo<String> nexusComponentSearchVo =
|
||||
NexusComponentSearchVo.toDeleteAsset(pmsProductLibraryRepositories.getNexusRepositoriesName(), assetId, nexusRequestHelper.getNexusTid());
|
||||
|
|
@ -272,7 +254,7 @@ public class PmsProductLibraryComponentServiceImpl implements IPmsProductLibrary
|
|||
|
||||
@Override
|
||||
public NexusComponentResultVo<List<String>> deleteComponentByComponentId(String enterpriseIdentifier, String repoName, String snapshotName, String componentId, boolean isProduct) {
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, repoName, snapshotName);
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, repoName, snapshotName);
|
||||
pmsProductLibraryRepositoriesService.checkLockRepositoryStatus(enterpriseIdentifier, pmsProductLibraryRepositories.getId());
|
||||
NexusComponentSearchVo<String> nexusComponentSearchVo =
|
||||
NexusComponentSearchVo.toDeleteComponent(pmsProductLibraryRepositories.getNexusRepositoriesName(), componentId, nexusRequestHelper.getNexusTid());
|
||||
|
|
@ -289,7 +271,7 @@ public class PmsProductLibraryComponentServiceImpl implements IPmsProductLibrary
|
|||
|
||||
@Override
|
||||
public NexusComponentResultVo<Object> deleteFolderByNode(String enterpriseIdentifier, ComponentSearchVo componentSearchVo, boolean isProduct) {
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, componentSearchVo.getRepositoryName(), componentSearchVo.getSnapshotRepoName());
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories = pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(isProduct, enterpriseIdentifier, componentSearchVo.getRepositoryName(), componentSearchVo.getSnapshotRepoName());
|
||||
pmsProductLibraryRepositoriesService.checkLockRepositoryStatus(enterpriseIdentifier, pmsProductLibraryRepositories.getId());
|
||||
NexusComponentSearchVo<String> nexusComponentSearchVo =
|
||||
NexusComponentSearchVo.toDeleteFolder(pmsProductLibraryRepositories.getNexusRepositoriesName(), componentSearchVo.getNode(), nexusRequestHelper.getNexusTid());
|
||||
|
|
@ -384,7 +366,7 @@ public class PmsProductLibraryComponentServiceImpl implements IPmsProductLibrary
|
|||
public Boolean insertMavenComponent(ComponentMavenInputVo componentMavenInputVo) {
|
||||
// 构建制品列表,用于数据库记录
|
||||
List<PmsProductLibraryComponent> pmsProductLibraryComponents = new ArrayList<>();
|
||||
PmsProductLibraryRepositories repo = getPmsProductLibraryRepositories(
|
||||
PmsProductLibraryRepositories repo = pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(
|
||||
false,
|
||||
componentMavenInputVo.getEnterpriseIdentifier(),
|
||||
componentMavenInputVo.getRepoName(),
|
||||
|
|
@ -452,7 +434,7 @@ public class PmsProductLibraryComponentServiceImpl implements IPmsProductLibrary
|
|||
componentRawInputVo.setDirectory(EscapeUtil.encodeChineseCharacters(componentRawInputVo.getDirectory()));
|
||||
// 构建制品列表,用于数据库记录
|
||||
List<PmsProductLibraryComponent> pmsProductLibraryComponents = new ArrayList<>();
|
||||
PmsProductLibraryRepositories repo = getPmsProductLibraryRepositories(
|
||||
PmsProductLibraryRepositories repo = pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(
|
||||
ProductLibraryRepositoriesFormatEnum.isProduct(componentRawInputVo.getFormat()),
|
||||
componentRawInputVo.getEnterpriseIdentifier(),
|
||||
componentRawInputVo.getRepoName(),
|
||||
|
|
@ -507,7 +489,7 @@ public class PmsProductLibraryComponentServiceImpl implements IPmsProductLibrary
|
|||
|
||||
@Override
|
||||
public Boolean insertNpmComponent(ComponentInputVo componentInputVo) {
|
||||
PmsProductLibraryRepositories repo = getPmsProductLibraryRepositories(
|
||||
PmsProductLibraryRepositories repo = pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(
|
||||
false,
|
||||
componentInputVo.getEnterpriseIdentifier(),
|
||||
componentInputVo.getRepoName(),
|
||||
|
|
@ -545,7 +527,7 @@ public class PmsProductLibraryComponentServiceImpl implements IPmsProductLibrary
|
|||
|
||||
@Override
|
||||
public Boolean insertPypiComponent(ComponentInputVo componentInputVo) {
|
||||
PmsProductLibraryRepositories repo = getPmsProductLibraryRepositories(
|
||||
PmsProductLibraryRepositories repo = pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(
|
||||
false,
|
||||
componentInputVo.getEnterpriseIdentifier(),
|
||||
componentInputVo.getRepoName(),
|
||||
|
|
|
|||
|
|
@ -15,6 +15,8 @@ import com.microservices.pms.productLibrary.domain.*;
|
|||
import com.microservices.pms.productLibrary.domain.vo.*;
|
||||
import com.microservices.pms.productLibrary.mapper.PmsProductLibraryRepositoriesMapper;
|
||||
import com.microservices.pms.productLibrary.service.IPmsProductLibraryRepositoriesService;
|
||||
import com.microservices.pms.productLibrary.service.IPmsProductLibraryService;
|
||||
import com.microservices.pms.productLibrary.service.IPmsProductLibrarySnapshotRepoService;
|
||||
import com.microservices.pms.utils.NexusRequestHelper;
|
||||
import com.microservices.pms.utils.NexusRequestUrl;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
|
@ -39,6 +41,10 @@ public class PmsProductLibraryRepositoriesServiceImpl implements IPmsProductLibr
|
|||
private NexusRequestHelper nexusRequestHelper;
|
||||
@Autowired
|
||||
private RedisService redisService;
|
||||
@Autowired
|
||||
private IPmsProductLibrarySnapshotRepoService pmsProductLibrarySnapshotRepoService;
|
||||
@Autowired
|
||||
private IPmsProductLibraryService pmsProductLibraryService;
|
||||
|
||||
@Override
|
||||
public PmsProductLibraryRepositories selectPmsProductLibraryRepositoriesByName(String enterpriseIdentifier, String name) {
|
||||
|
|
@ -405,4 +411,22 @@ public class PmsProductLibraryRepositoriesServiceImpl implements IPmsProductLibr
|
|||
throw new ServiceException("该制品库锁定中,无法进行操作(制品库Id[%s])", repoId);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public PmsProductLibraryRepositories getPmsProductLibraryRepositories(Boolean isProduct, String enterpriseIdentifier, String repoName, String snapshotName) {
|
||||
PmsProductLibraryRepositories pmsProductLibraryRepositories;
|
||||
if (isProduct) {
|
||||
pmsProductLibraryRepositories =
|
||||
pmsProductLibraryService.selectPmsProductLibraryByName(enterpriseIdentifier, repoName);
|
||||
} else {
|
||||
if (StringUtils.isNotEmpty(snapshotName)) {
|
||||
pmsProductLibraryRepositories =
|
||||
pmsProductLibrarySnapshotRepoService.selectPmsProductLibrarySnapshotByName(enterpriseIdentifier, repoName, snapshotName);
|
||||
} else {
|
||||
pmsProductLibraryRepositories =
|
||||
selectPmsProductLibraryRepositoriesByName(enterpriseIdentifier, repoName);
|
||||
}
|
||||
}
|
||||
return pmsProductLibraryRepositories;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import com.microservices.common.core.utils.StringUtils;
|
|||
import com.microservices.common.core.utils.html.EscapeUtil;
|
||||
import com.microservices.common.core.web.page.GenericsTableDataInfo;
|
||||
import com.microservices.common.security.utils.SecurityUtils;
|
||||
import com.microservices.pms.document.service.IPmsDocumentService;
|
||||
import com.microservices.pms.enterprise.domain.PmsEnterprise;
|
||||
import com.microservices.pms.enterprise.service.IPmsEnterpriseService;
|
||||
import com.microservices.pms.productLibrary.domain.PmsProductLibraryComponent;
|
||||
|
|
@ -30,6 +31,7 @@ import com.microservices.system.api.utils.FeignUtils;
|
|||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
|
@ -54,11 +56,15 @@ public class PmsProductLibraryServiceImpl implements IPmsProductLibraryService {
|
|||
@Autowired
|
||||
private IPmsProductLibraryAsyncService pmsProductLibraryAsyncService;
|
||||
@Autowired
|
||||
@Lazy
|
||||
private IPmsProductLibraryComponentService pmsProductLibraryComponentService;
|
||||
@Autowired
|
||||
@Lazy
|
||||
private IPmsProductLibraryRepositoriesService pmsProductLibraryRepositoriesService;
|
||||
@Autowired
|
||||
private RemoteFileService remoteFileService;
|
||||
@Autowired
|
||||
private IPmsDocumentService pmsDocumentService;
|
||||
|
||||
@Override
|
||||
public GenericsTableDataInfo<PmsProductLibraryComponentDataVo> selectComponentList(PmsProductLibraryComponentSearchVo search) {
|
||||
|
|
@ -158,6 +164,31 @@ public class PmsProductLibraryServiceImpl implements IPmsProductLibraryService {
|
|||
return productPackagedResultVo;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean uploadProductAsset(ComponentRawInputVo componentRawInputVo) {
|
||||
PmsProductLibraryRepositories repo = pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(
|
||||
ProductLibraryRepositoriesFormatEnum.isProduct(componentRawInputVo.getFormat()),
|
||||
componentRawInputVo.getEnterpriseIdentifier(),
|
||||
componentRawInputVo.getRepoName(),
|
||||
componentRawInputVo.getSnapshotName());
|
||||
|
||||
PmsEnterprise pmsEnterprise = pmsEnterpriseService.selectPmsEnterpriseByIdentifier(componentRawInputVo.getEnterpriseIdentifier());
|
||||
for (AssetRawInputVo assetRawInputVo : componentRawInputVo.getAssetList()) {
|
||||
if (!StringUtils.isNumeric(assetRawInputVo.getAssetIdentifier())) {
|
||||
throw new ServiceException("制品标识格式错误,产品库的制品标识应该为文档Id(制品文件名称[%s])", assetRawInputVo.getFilename());
|
||||
}
|
||||
|
||||
PmsProductLibraryComponent pmsProductLibraryComponent =
|
||||
pmsProductLibraryComponentMapper.selectPmsProductLibraryComponentByIdentifier(repo.getId(), assetRawInputVo.getAssetIdentifier());
|
||||
if (pmsProductLibraryComponent != null) {
|
||||
throw new ServiceException("产品库已存在该文档,请勿重复上传(文档文件名称[%s])", assetRawInputVo.getFilename());
|
||||
}
|
||||
pmsDocumentService.selectPmsDocumentDetailVoByIdAndEnterpriseId(Long.parseLong(assetRawInputVo.getAssetIdentifier()), pmsEnterprise.getId());
|
||||
}
|
||||
|
||||
return pmsProductLibraryComponentService.insertRawComponent(componentRawInputVo);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public int insertPmsProductLibrary(ProductRepositoriesInputVo productRepositoriesInputVo) {
|
||||
|
|
@ -233,11 +264,11 @@ public class PmsProductLibraryServiceImpl implements IPmsProductLibraryService {
|
|||
|
||||
@Override
|
||||
public NexusComponentResultVo<List<NexusResultDataVo>> selectPmsProductLibraryKeyComponentList(String enterpriseIdentifier, ComponentSearchVo componentSearchVo) {
|
||||
PmsProductLibraryRepositories productRepo = pmsProductLibraryComponentService.getPmsProductLibraryRepositories(true, enterpriseIdentifier, componentSearchVo.getProductRepoName(), null);
|
||||
PmsProductLibraryRepositories productRepo = pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(true, enterpriseIdentifier, componentSearchVo.getProductRepoName(), null);
|
||||
PmsProductLibraryComponent productComponentSearch = new PmsProductLibraryComponent();
|
||||
productComponentSearch.setRepoId(productRepo.getId());
|
||||
List<PmsProductLibraryComponent> productComponentList = pmsProductLibraryComponentMapper.selectPmsProductLibraryComponentList(productComponentSearch);
|
||||
PmsProductLibraryRepositories repo = pmsProductLibraryComponentService.getPmsProductLibraryRepositories(false, enterpriseIdentifier, componentSearchVo.getRepositoryName(), null);
|
||||
PmsProductLibraryRepositories repo = pmsProductLibraryRepositoriesService.getPmsProductLibraryRepositories(false, enterpriseIdentifier, componentSearchVo.getRepositoryName(), null);
|
||||
componentSearchVo.setRepositoryName(repo.getNexusRepositoriesName());
|
||||
// Docker类型调用Nexus获取制品列表接口获取
|
||||
if (ProductLibraryRepositoriesFormatEnum.DOCKER.getKey().equals(repo.getFormat())) {
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@ import com.microservices.pms.productLibrary.service.IPmsProductLibrarySnapshotRe
|
|||
import com.microservices.pms.utils.NexusRequestHelper;
|
||||
import com.microservices.pms.utils.NexusRequestUrl;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
|
|
@ -31,6 +32,7 @@ public class PmsProductLibrarySnapshotRepoServiceImpl implements IPmsProductLibr
|
|||
private PmsProductLibraryRepositoriesMapper pmsProductLibraryRepositoriesMapper;
|
||||
|
||||
@Autowired
|
||||
@Lazy
|
||||
private IPmsProductLibraryRepositoriesService pmsProductLibraryRepositoriesService;
|
||||
@Autowired
|
||||
private IPmsProductLibraryAsyncService pmsProductLibraryAsyncService;
|
||||
|
|
|
|||
Loading…
Reference in New Issue