release_1.0.0
liu 8 months ago
parent 2581d63a3d
commit be1a84581d

@ -58,14 +58,14 @@ public class KnowledgeManageController {
knowledgeManageService.saveKnowledge(reqVO);
}
@Operation(summary = "修改知识库(已撤回和草稿状态才能编辑)")
@Operation(summary = "修改知识库(status:1草稿/3驳回/4已撤回/5已失效,才能修改)")
@PostMapping("updateKnowledge")
public void updateKnowledge(@RequestBody ModifyKnowledgeReqVO reqVO) {
Assert.notBlank(reqVO.getKnowledgeId(), "知识ID不能为空");
knowledgeManageService.updateKnowledge(reqVO);
}
@Operation(summary = "撤回知识库")
@Operation(summary = "撤回知识库(status:2通过/5已失效)")
@GetMapping("recallKnowledge")
public void recallKnowledge(String knowledgeId,String remark) {
knowledgeManageService.recallKnowledge(knowledgeId,remark);
@ -77,7 +77,7 @@ public class KnowledgeManageController {
return knowledgeManageService.queryKnowledgeDetail(knowledgeId);
}
@Operation(summary = "删除知识库-逻辑删除")
@Operation(summary = "删除知识库-逻辑删除(status:1草稿/2通过/3驳回/4已撤回/5已失效)")
@GetMapping("deleteKnowledge")
public void deleteKnowledge(String knowledgeId,String remark) {
knowledgeManageService.deleteKnowledge(knowledgeId,remark);

@ -1,11 +1,14 @@
package com.supervision.knowsub.entity.vo.knowledge;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
@Data
@Schema(description = "修改知识库请求参数 ")
public class ModifyKnowledgeReqVO extends SaveKnowledgeReqVO{
@Schema(description = "知识ID")
private String knowledgeId;
}

@ -89,14 +89,14 @@ public class KnowledgeFlowServiceImpl implements KnowledgeFlowService {
List<SystemFlowRule> roleOrderList = queryFlowRuleWithOrder(systemFlowTypeRelation.getFlowId());
// 首先获取第一个节点,校验当前用户是否有权限提交
SystemFlowRule firstRule = roleOrderList.get(0);
Optional<SystemFlowRuleUser> systemFlowRuleUserOpt = systemFlowRuleUserService.lambdaQuery().eq(SystemFlowRuleUser::getFlowId, firstRule.getId())
Optional<SystemFlowRuleUser> systemFlowRuleUserOpt = systemFlowRuleUserService.lambdaQuery().eq(SystemFlowRuleUser::getFlowId, firstRule.getFlowId())
.eq(SystemFlowRuleUser::getUserId, userId).eq(SystemFlowRuleUser::getRuleId, firstRule.getId()).oneOpt();
if (systemFlowRuleUserOpt.isEmpty()) {
throw new BusinessException("当前用户没有权限提交:" + flowTypeEnum.getDesc() + " 流程,请联系管理员确认");
}
// 然后找到下一个节点
SystemFlowRule nextRule = roleOrderList.get(1);
List<SystemFlowRuleUser> nextRuleUserList = systemFlowRuleUserService.lambdaQuery().eq(SystemFlowRuleUser::getFlowId, nextRule.getId()).eq(SystemFlowRuleUser::getRuleId, nextRule.getId()).list();
List<SystemFlowRuleUser> nextRuleUserList = systemFlowRuleUserService.lambdaQuery().eq(SystemFlowRuleUser::getFlowId, nextRule.getFlowId()).eq(SystemFlowRuleUser::getRuleId, nextRule.getId()).list();
if (CollUtil.isEmpty(nextRuleUserList)) {
throw new BusinessException("审批节点未配置审批用户,流程提交失败");
}

@ -283,7 +283,7 @@ public class KnowledgeManageServiceImpl implements KnowledgeManageService {
public void deleteKnowledge(String knowledgeId, String remark) {
// 删除是逻辑删除,如果当前状态是草稿,且没有走过审批流程,则可以直接删除
Knowledge knowledge = knowledgeService.getOptById(knowledgeId).orElseThrow(() -> new BusinessException("未找到知识"));
// 如果非草稿,则校验是否是通过/驳回/已失效状态,如果是,则需要走审批流程进行删除
// 如果非草稿,则校验是否是通过/驳回/已撤回/已失效状态,如果是,则需要走审批流程进行删除
Set<Integer> canDeleteStatusSet = Set.of(StatusEnum.PASS.getStatus(), StatusEnum.REJECT.getStatus(), StatusEnum.INVALID.getStatus());
if (Objects.equals(StatusEnum.DRAFT.getStatus(), knowledge.getStatus())) {
// 需要判断之前是否走过审批流程
@ -298,7 +298,7 @@ public class KnowledgeManageServiceImpl implements KnowledgeManageService {
fileService.listByFileId(fileIdList);
knowledgeAttachmentService.lambdaUpdate().eq(KnowledgeAttachment::getKnowledgeId, knowledgeId).remove();
} else {
// 如果有过审批记录,则直接修改状态为删除
// 如果有过审批记录,则直接修改状态为逻辑删除
knowledge.setStatus(StatusEnum.DELETE.getStatus());
knowledgeService.updateById(knowledge);
}

Loading…
Cancel
Save