feat(REQ-3769) - 增加文档列表根据 ID 返回的接口
This commit is contained in:
parent
e4bc13f060
commit
3248dcd36a
@ -263,6 +263,15 @@ public interface ProcessModelApi {
|
||||
@InvokeMode(SYNC)
|
||||
CommonResponse<BpmPageResult<DocBaseVO>> docPage(@Validated @RequestBody DocSearchDTO dto);
|
||||
|
||||
/**
|
||||
* 获取指定 docIds 文档列表
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Operation(summary = "获取指定 docIds 文档列表")
|
||||
@PostMapping(value = "/api/process/model/doc/ids")
|
||||
@InvokeMode(SYNC)
|
||||
CommonResponse<List<DocBaseVO>> docByIds(@RequestParam List<Long> ids);
|
||||
/**
|
||||
* 获取指定模板的原始文档列表
|
||||
*
|
||||
|
||||
@ -122,4 +122,6 @@ public interface ExtAxModelDocService {
|
||||
* @return
|
||||
*/
|
||||
Boolean requireDoc(DocStatusDTO dto);
|
||||
|
||||
List<DocBaseVO> getIds(List<Long> ids);
|
||||
}
|
||||
|
||||
@ -65,14 +65,16 @@ public class ExtAxModelDocServiceImpl implements ExtAxModelDocService {
|
||||
public BpmPageResult<DocBaseVO> docPage(DocSearchDTO dto) {
|
||||
Page<ExtAxModelDoc> page = extAxModelDocMapper.selectPage(new Page<>(dto.getPageNo(), dto.getPageSize()),
|
||||
buildQueryWrapper(BeanMapper.copyBean(dto, ExtAxModelDoc.class)));
|
||||
List<DocBaseVO> list = BeanMapper.copyList(page.getRecords(), DocBaseVO.class, (s, t) -> t.setFileType(FileTypeEnum.valueOfType(s.getFileType())));
|
||||
List<DocBaseVO> list = BeanMapper.copyList(page.getRecords(), DocBaseVO.class,
|
||||
(s, t) -> t.setFileType(FileTypeEnum.valueOfType(s.getFileType())));
|
||||
return new BpmPageResult<>(list, page.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DocBaseVO> docList(DocQueryDTO dto) {
|
||||
CommandExecutor commandExecutor = springProcessEngineConfiguration.getCommandExecutor();
|
||||
return commandExecutor.execute(new CustomGetModelDocsCmd(dto.getProcessInstanceId(), dto.getProcessDefinitionKey(), dto.getTenantId(), extAxModelDocMapper));
|
||||
return commandExecutor.execute(new CustomGetModelDocsCmd(dto.getProcessInstanceId(),
|
||||
dto.getProcessDefinitionKey(), dto.getTenantId(), extAxModelDocMapper));
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -110,7 +112,8 @@ public class ExtAxModelDocServiceImpl implements ExtAxModelDocService {
|
||||
return new LambdaQueryWrapper<ExtAxModelDoc>()
|
||||
.eq(StringUtils.hasText(entity.getModelId()), ExtAxModelDoc::getModelId, entity.getModelId())
|
||||
.eq(StringUtils.hasText(entity.getModelKey()), ExtAxModelDoc::getModelKey, entity.getModelKey())
|
||||
.eq(StringUtils.hasText(entity.getFileRelationId()), ExtAxModelDoc::getFileRelationId, entity.getFileRelationId())
|
||||
.eq(StringUtils.hasText(entity.getFileRelationId()), ExtAxModelDoc::getFileRelationId,
|
||||
entity.getFileRelationId())
|
||||
.eq(StringUtils.hasText(entity.getFileType()), ExtAxModelDoc::getFileType, entity.getFileType())
|
||||
.eq(StringUtils.hasText(entity.getTag()), ExtAxModelDoc::getTag, entity.getTag())
|
||||
.eq(Objects.nonNull(entity.getStatus()), ExtAxModelDoc::getStatus, entity.getStatus())
|
||||
@ -156,14 +159,16 @@ public class ExtAxModelDocServiceImpl implements ExtAxModelDocService {
|
||||
entity.setOrder(maxOrder(dto));
|
||||
extAxModelDocMapper.insert(entity);
|
||||
if (Objects.equals(FileTypeEnum.HIPRINT, dto.getFileType())) {
|
||||
ExtAxDocContent content = extAxDocContentService.createContent(dto.getContent(), dto.getFileType(), entity.getId());
|
||||
ExtAxDocContent content = extAxDocContentService.createContent(dto.getContent(), dto.getFileType(),
|
||||
entity.getId());
|
||||
entity.setFileRelationId(String.valueOf(content.getId()));
|
||||
extAxModelDocMapper.updateById(entity);
|
||||
}
|
||||
|
||||
if (fireEvent) {
|
||||
// 发送文档变更事件
|
||||
eventPublisher.publishEvent(new DocChangeEventImpl(dto.getModelKey(), dto.getTenantId(), oldSettings, querySetting(dto.getModelKey(), dto.getTenantId())));
|
||||
eventPublisher.publishEvent(new DocChangeEventImpl(dto.getModelKey(), dto.getTenantId(), oldSettings,
|
||||
querySetting(dto.getModelKey(), dto.getTenantId())));
|
||||
}
|
||||
return entity.getId();
|
||||
}
|
||||
@ -196,7 +201,8 @@ public class ExtAxModelDocServiceImpl implements ExtAxModelDocService {
|
||||
int flat = extAxModelDocMapper.updateById(entity);
|
||||
|
||||
// 发送文档变更事件
|
||||
eventPublisher.publishEvent(new DocChangeEventImpl(dto.getModelKey(), dto.getTenantId(), oldSettings, querySetting(dto.getModelKey(), dto.getTenantId())));
|
||||
eventPublisher.publishEvent(new DocChangeEventImpl(dto.getModelKey(), dto.getTenantId(), oldSettings,
|
||||
querySetting(dto.getModelKey(), dto.getTenantId())));
|
||||
return flat > 0;
|
||||
}
|
||||
|
||||
@ -239,7 +245,8 @@ public class ExtAxModelDocServiceImpl implements ExtAxModelDocService {
|
||||
|
||||
if (!Objects.equals(Boolean.TRUE, tempFile)) {
|
||||
// 发送文档变更事件
|
||||
eventPublisher.publishEvent(new DocChangeEventImpl(origin.getModelKey(), origin.getTenantId(), oldSettings, querySetting(origin.getModelKey(), origin.getTenantId())));
|
||||
eventPublisher.publishEvent(new DocChangeEventImpl(origin.getModelKey(), origin.getTenantId(),
|
||||
oldSettings, querySetting(origin.getModelKey(), origin.getTenantId())));
|
||||
}
|
||||
return newDocId;
|
||||
} else {
|
||||
@ -260,7 +267,8 @@ public class ExtAxModelDocServiceImpl implements ExtAxModelDocService {
|
||||
int flat = extAxModelDocMapper.deleteById(docId);
|
||||
|
||||
// 发送文档变更事件
|
||||
eventPublisher.publishEvent(new DocChangeEventImpl(origin.getModelKey(), origin.getTenantId(), oldSettings, querySetting(origin.getModelKey(), origin.getTenantId())));
|
||||
eventPublisher.publishEvent(new DocChangeEventImpl(origin.getModelKey(), origin.getTenantId(), oldSettings,
|
||||
querySetting(origin.getModelKey(), origin.getTenantId())));
|
||||
return flat > 0;
|
||||
}
|
||||
|
||||
@ -284,7 +292,8 @@ public class ExtAxModelDocServiceImpl implements ExtAxModelDocService {
|
||||
int flat = extAxModelDocMapper.deleteBatchIds(docIds);
|
||||
|
||||
// 发送文档变更事件
|
||||
eventPublisher.publishEvent(new DocChangeEventImpl(entities.get(0).getModelKey(), entities.get(0).getTenantId(), entities, Collections.emptyList()));
|
||||
eventPublisher.publishEvent(new DocChangeEventImpl(entities.get(0).getModelKey(),
|
||||
entities.get(0).getTenantId(), entities, Collections.emptyList()));
|
||||
return flat > 0;
|
||||
}
|
||||
|
||||
@ -337,7 +346,8 @@ public class ExtAxModelDocServiceImpl implements ExtAxModelDocService {
|
||||
int flat = extAxModelDocMapper.updateById(origin);
|
||||
|
||||
// 发送文档变更事件
|
||||
eventPublisher.publishEvent(new DocChangeEventImpl(origin.getModelKey(), origin.getTenantId(), oldSettings, querySetting(origin.getModelKey(), origin.getTenantId())));
|
||||
eventPublisher.publishEvent(new DocChangeEventImpl(origin.getModelKey(), origin.getTenantId(), oldSettings,
|
||||
querySetting(origin.getModelKey(), origin.getTenantId())));
|
||||
return flat > 0;
|
||||
}
|
||||
|
||||
@ -351,4 +361,17 @@ public class ExtAxModelDocServiceImpl implements ExtAxModelDocService {
|
||||
origin.setRequire(Objects.equals(Boolean.TRUE, dto.getStatus()));
|
||||
return extAxModelDocMapper.updateById(origin) > 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DocBaseVO> getIds(List<Long> ids) {
|
||||
if (CollectionUtils.isEmpty(ids)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
List<ExtAxModelDoc> docs = extAxModelDocMapper.selectList(new LambdaQueryWrapper<ExtAxModelDoc>()
|
||||
.in(ExtAxModelDoc::getId, ids)
|
||||
.eq(ExtAxModelDoc::getTempFile, false)
|
||||
.eq(ExtAxModelDoc::getIsDelete, 0));
|
||||
return BeanMapper.copyList(docs, DocBaseVO.class,
|
||||
(s, t) -> t.setFileType(FileTypeEnum.valueOfType(s.getFileType())));
|
||||
}
|
||||
}
|
||||
|
||||
@ -465,6 +465,12 @@ public class BpmnProcessModelController implements ProcessModelApi {
|
||||
return success(modelDocService.docPage(dto));
|
||||
}
|
||||
|
||||
@Override
|
||||
@Operation(summary = "获取指定 docIds 文档列表")
|
||||
@PostMapping("/doc/ids")
|
||||
public CommonResponse<List<DocBaseVO>> docByIds(@RequestParam List<Long> ids) {
|
||||
return success(modelDocService.getIds(ids));
|
||||
}
|
||||
/**
|
||||
* 根据业务 ID 获取模型文档列表,自动适配公共模板和代运营
|
||||
*
|
||||
|
||||
Loading…
Reference in New Issue
Block a user