Browse Source

子流程列表查询

hubin 1 year ago
parent
commit
3646c028bc

+ 11 - 0
src/main/java/com/aizuda/boot/modules/flw/controller/ProcessController.java

@@ -5,6 +5,7 @@ import com.aizuda.boot.modules.flw.entity.dto.ProcessStartDTO;
 import com.aizuda.boot.modules.flw.entity.vo.FlwProcessCategoryVO;
 import com.aizuda.boot.modules.flw.flow.FlowHelper;
 import com.aizuda.boot.modules.flw.service.IFlwProcessService;
+import com.aizuda.bpm.engine.entity.FlwProcess;
 import com.aizuda.core.api.ApiController;
 import com.baomidou.kisso.annotation.Permission;
 import io.swagger.v3.oas.annotations.Operation;
@@ -49,6 +50,16 @@ public class ProcessController extends ApiController {
         return flwProcessService.listLaunch(keyword);
     }
 
+    @Operation(summary = "查询满足条件前10条子流程列表")
+    @Permission("flw:process:listStart")
+    @Parameters({
+            @Parameter(name = "keyword", description = "关键词")
+    })
+    @PostMapping("/list-child-top10")
+    public List<FlwProcess> listChildTop10(@RequestParam(required = false) String keyword) {
+        return flwProcessService.listChildTop10(keyword);
+    }
+
     @Operation(summary = "发起流程")
     @Permission("flw:process:launch")
     @PostMapping("/launch")

+ 7 - 0
src/main/java/com/aizuda/boot/modules/flw/service/IFlwProcessService.java

@@ -31,6 +31,13 @@ public interface IFlwProcessService extends IBaseService<FlwProcess> {
      */
     List<FlwProcessCategoryVO> listLaunch(String keyword);
 
+    /**
+     * 查询满足条件前10条子流程列表
+     *
+     * @param keyword 搜索关键词
+     */
+    List<FlwProcess> listChildTop10(String keyword);
+
     /**
      * 发起流程
      *

+ 9 - 0
src/main/java/com/aizuda/boot/modules/flw/service/impl/FlwProcessServiceImpl.java

@@ -27,6 +27,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.AllArgsConstructor;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.collections.MapUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -125,6 +126,14 @@ public class FlwProcessServiceImpl extends ServiceImpl<FlwProcessMapper, FlwProc
         return this.listCategoryVO(keyword, true);
     }
 
+    @Override
+    public List<FlwProcess> listChildTop10(String keyword) {
+        return lambdaQuery().select(FlwProcess::getId, FlwProcess::getProcessName)
+                .eq(StringUtils.isNotEmpty(keyword), FlwProcess::getProcessName, keyword)
+                .eq(FlwProcess::getProcessType, "child")
+                .orderByDesc(FlwProcess::getCreateTime).last("LIMIT 10").list();
+    }
+
     @Transactional(rollbackFor = Exception.class)
     @Override
     public boolean launchProcess(ProcessStartDTO dto, FlowCreator flowCreator) {