From d0b275ac9b4b071359356edf238e7d0c9114dbd1 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期二, 11 二月 2025 19:33:47 +0800
Subject: [PATCH] 流程列表增加分页接口
---
flowable/src/main/java/com/ycl/domain/query/ProcessConfigInfoQuery.java | 3 +
flowable/src/main/resources/mapper/FlowDeployMapper.xml | 29 ++++++++++++++
business/src/main/java/com/ycl/controller/ProcessConfigInfoController.java | 10 ++++
business/src/main/java/com/ycl/service/ProcessConfigInfoService.java | 8 ++++
flowable/src/main/java/com/ycl/mapper/FlowDeployMapper.java | 10 +++++
business/src/main/java/com/ycl/service/impl/ProcessConfigInfoServiceImpl.java | 27 ++++++++-----
6 files changed, 75 insertions(+), 12 deletions(-)
diff --git a/business/src/main/java/com/ycl/controller/ProcessConfigInfoController.java b/business/src/main/java/com/ycl/controller/ProcessConfigInfoController.java
index 7b4ded0..d63490e 100644
--- a/business/src/main/java/com/ycl/controller/ProcessConfigInfoController.java
+++ b/business/src/main/java/com/ycl/controller/ProcessConfigInfoController.java
@@ -43,8 +43,16 @@
@GetMapping("list")
@ApiOperation(value = "鍒楄〃", notes = "鍒楄〃")
- @PreAuthorize("@ss.hasPermi('processConfigInfo:list')")
+// @PreAuthorize("@ss.hasPermi('processConfigInfo:list')")
public Result list(ProcessConfigInfoQuery query) {
return processConfigInfoService.list(query);
}
+
+
+ @GetMapping("page")
+ @ApiOperation(value = "鍒楄〃", notes = "鍒楄〃")
+// @PreAuthorize("@ss.hasPermi('processConfigInfo:list')")
+ public Result page(ProcessConfigInfoQuery query) {
+ return processConfigInfoService.getPage(query);
+ }
}
diff --git a/business/src/main/java/com/ycl/service/ProcessConfigInfoService.java b/business/src/main/java/com/ycl/service/ProcessConfigInfoService.java
index 95e56af..a1171e5 100644
--- a/business/src/main/java/com/ycl/service/ProcessConfigInfoService.java
+++ b/business/src/main/java/com/ycl/service/ProcessConfigInfoService.java
@@ -37,4 +37,12 @@
* @return
*/
Result list(ProcessConfigInfoQuery query);
+
+ /**
+ * 鏌ヨ鍒嗛〉鏁版嵁
+ *
+ * @param query
+ * @return
+ */
+ Result getPage(ProcessConfigInfoQuery query);
}
diff --git a/business/src/main/java/com/ycl/service/impl/ProcessConfigInfoServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProcessConfigInfoServiceImpl.java
index 9927f1c..d16c1be 100644
--- a/business/src/main/java/com/ycl/service/impl/ProcessConfigInfoServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProcessConfigInfoServiceImpl.java
@@ -1,5 +1,6 @@
package com.ycl.service.impl;
+import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.github.pagehelper.PageInfo;
@@ -8,6 +9,7 @@
import com.ycl.domain.entity.ProcessConfigInfo;
import com.ycl.domain.entity.SysForm;
import com.ycl.domain.query.ProcessConfigInfoQuery;
+import com.ycl.framework.utils.PageUtil;
import com.ycl.mapper.FlowDeployMapper;
import com.ycl.mapper.ProcessConfigInfoMapper;
import com.ycl.service.ISysDeployFormService;
@@ -91,19 +93,8 @@
public Result list(ProcessConfigInfoQuery query) {
List<FlowProcDefWithConfigDto> dataList = flowDeployMapper.selectDeployListWithConfig(query);
-// // 鏍规嵁 processDefId 鍒嗙粍锛屽苟鍙栨瘡缁勪腑 鐗堟湰鍙� 鏈�澶х殑閭d竴涓�
-// Map<String, FlowProcDefWithConfigDto> groupedByProcessDefId = dataList.stream()
-// .collect(Collectors.toMap(
-// FlowProcDefWithConfigDto::getProcessDefId, // keyMapper: 鎻愬彇 processDefId 浣滀负閿�
-// Function.identity(), // valueMapper: 鐩存帴浣跨敤瀵硅薄浣滀负鍊�
-// BinaryOperator.maxBy(Comparator.comparingInt(FlowProcDefWithConfigDto::getProcessDefVersion)) // mergeFunction: 姣旇緝 processDefVersion锛屽彇鏈�澶х殑
-// ));
-// List<FlowProcDefWithConfigDto> resultList = new ArrayList<>(groupedByProcessDefId.values());
-
// 鍔犺浇鎸傝〃鍗�
for (FlowProcDefWithConfigDto procDef : dataList) {
- // 鎺掗櫎鏆傚仠鐨�
-
SysForm sysForm = sysDeployFormService.selectSysDeployFormByDeployId(procDef.getDeploymentId());
if (Objects.nonNull(sysForm)) {
procDef.setFormName(sysForm.getFormName());
@@ -112,4 +103,18 @@
}
return Result.ok().data(dataList);
}
+
+ @Override
+ public Result getPage(ProcessConfigInfoQuery query) {
+ IPage<FlowProcDefWithConfigDto> page = PageUtil.getPage(query, FlowProcDefWithConfigDto.class);
+ flowDeployMapper.selectDeployListWithConfigPage(page,query);
+ for (FlowProcDefWithConfigDto procDef : page.getRecords()) {
+ SysForm sysForm = sysDeployFormService.selectSysDeployFormByDeployId(procDef.getDeploymentId());
+ if (Objects.nonNull(sysForm)) {
+ procDef.setFormName(sysForm.getFormName());
+ procDef.setFormId(sysForm.getFormId());
+ }
+ }
+ return Result.ok().data(page.getRecords()).total(page.getTotal());
+ }
}
diff --git a/flowable/src/main/java/com/ycl/domain/query/ProcessConfigInfoQuery.java b/flowable/src/main/java/com/ycl/domain/query/ProcessConfigInfoQuery.java
index deb8e97..68595f9 100644
--- a/flowable/src/main/java/com/ycl/domain/query/ProcessConfigInfoQuery.java
+++ b/flowable/src/main/java/com/ycl/domain/query/ProcessConfigInfoQuery.java
@@ -26,5 +26,8 @@
/** 閲嶇偣鍒嗙被 */
private String importanceType;
+ /** 娴佺▼鍚嶇О */
+ private String name;
+
}
diff --git a/flowable/src/main/java/com/ycl/mapper/FlowDeployMapper.java b/flowable/src/main/java/com/ycl/mapper/FlowDeployMapper.java
index 6e4f4a3..0c87247 100644
--- a/flowable/src/main/java/com/ycl/mapper/FlowDeployMapper.java
+++ b/flowable/src/main/java/com/ycl/mapper/FlowDeployMapper.java
@@ -1,8 +1,10 @@
package com.ycl.mapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
import com.ycl.domain.dto.FlowProcDefDto;
import com.ycl.domain.dto.FlowProcDefWithConfigDto;
import com.ycl.domain.query.ProcessConfigInfoQuery;
+import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -29,4 +31,12 @@
* @return
*/
List<FlowProcDefWithConfigDto> selectDeployListWithConfig(ProcessConfigInfoQuery query);
+
+ /**
+ * 鍒嗛〉
+ *
+ * @param page
+ * @param query
+ */
+ IPage selectDeployListWithConfigPage(IPage<FlowProcDefWithConfigDto> page, @Param("query") ProcessConfigInfoQuery query);
}
diff --git a/flowable/src/main/resources/mapper/FlowDeployMapper.xml b/flowable/src/main/resources/mapper/FlowDeployMapper.xml
index f8e81fd..f1d880a 100644
--- a/flowable/src/main/resources/mapper/FlowDeployMapper.xml
+++ b/flowable/src/main/resources/mapper/FlowDeployMapper.xml
@@ -53,4 +53,33 @@
order by rd.deploy_time_ desc
</select>
+ <select id="selectDeployListWithConfigPage" resultType="com.ycl.domain.dto.FlowProcDefWithConfigDto">
+ SELECT
+ rp.id_ as id,
+ rp.deployment_id_ as deploymentId,
+ rd.name_ as name,
+ rd.category_ as category,
+ rp.key_ as flowKey,
+ rp.version_ as version,
+ rp.suspension_state_ as suspensionState,
+ rd.deploy_time_ as deploymentTime,
+ pc.project_type,
+ pc.fund_type,
+ pc.invest_type,
+ pc.importance_type,
+ pc.process_def_id,
+ pc.process_def_version,
+ pc.deploy_id
+ FROM
+ act_re_procdef rp
+ LEFT JOIN act_re_deployment rd ON rp.deployment_id_ = rd.id_
+ LEFT JOIN t_process_config_info pc ON pc.process_def_id = rp.id_ AND pc.process_def_version = rp.version_
+ <where>
+ <if test="query.name != null and query.name != ''">
+ AND rd.name_ like concat('%', #{query.name}, '%')
+ </if>
+ </where>
+ order by rd.deploy_time_ desc
+ </select>
+
</mapper>
--
Gitblit v1.8.0