This commit is contained in:
zlwu committed 2026-07-01 12:02:18 +08:00
commit 70902dd436
3 files changed
+48 -8

No files matched your search

@@ -27,6 +27,8 @@ import java.util.Date;
import java.util.Set;
import java.util.ArrayList;
import java.util.LinkedHashSet;
import java.util.Arrays;
import java.util.Map;
import java.text.SimpleDateFormat;
/**
@@ -77,6 +79,8 @@ public class ZsjyEnrollmentProcessServiceImpl implements IZsjyEnrollmentProcessS
// 计算分页偏移量
long offset = (page.getCurrent() - 1) * page.getSize();
normalizeCurrentStatusListParam(bo);
// 获取总记录数,这里我们需要先执行一次查询
List<ZsjyEnrollmentProcessVo> allRecords = baseMapper.selectAllProcessWithInfoAudit(bo);
@@ -99,6 +103,23 @@ public class ZsjyEnrollmentProcessServiceImpl implements IZsjyEnrollmentProcessS
return TableDataInfo.build(result);
}
/**
* 将 params.currentStatusList(逗号分隔字符串)转换为 List,供 Mapper IN 查询使用
*/
private void normalizeCurrentStatusListParam(ZsjyEnrollmentProcessBo bo) {
if (bo == null || bo.getParams() == null) {
return;
}
Map<String, Object> params = bo.getParams();
Object statusList = params.get("currentStatusList");
if (statusList instanceof String str && StringUtils.isNotBlank(str)) {
params.put("currentStatusList", Arrays.stream(str.split(","))
.map(String::trim)
.filter(StringUtils::isNotBlank)
.toList());
}
}
/**
* 查询符合条件的招生录取流程状态列表
*
@@ -166,6 +166,18 @@
<if test="currentStatus != null and currentStatus != ''">
AND (ei.enrollment_status = #{currentStatus} OR p.current_status = #{currentStatus})
</if>
<if test="params != null and params.currentStatusList != null and params.currentStatusList.size() > 0">
AND (
ei.enrollment_status IN
<foreach collection="params.currentStatusList" item="status" open="(" separator="," close=")">
#{status}
</foreach>
OR p.current_status IN
<foreach collection="params.currentStatusList" item="status" open="(" separator="," close=")">
#{status}
</foreach>
)
</if>
<if test="params != null and params.majorId != null and params.majorId != ''">
AND ei.major_code = #{params.majorId}
</if>
+15 -8
View File
@@ -286,13 +286,24 @@ const formDialogVisible = ref(false);
const isEdit = ref(false);
const currentProcess = ref<Partial<EnrollmentProcessVO>>({});
/** 本页列表展示的状态:录取处理中(2)、待最终确认(3) */
const LIST_STATUS_VALUES = '2,3';
/** 设置列表默认查询条件 */
const applyListStatusFilter = () => {
queryParams.value.currentStatus = undefined;
queryParams.value.isCompleted = 0;
queryParams.value.params = {
...(queryParams.value.params || {}),
currentStatusList: LIST_STATUS_VALUES
};
};
/** 查询流程列表 */
const getList = async () => {
loading.value = true;
try {
// 设置查询参数,只查询录取处理中且未完成的数据
queryParams.value.currentStatus = '2'; // 只查询录取处理中的数据
queryParams.value.isCompleted = 0; // 只查询未完成的数据
applyListStatusFilter();
const res = await listEnrollmentProcess(queryParams.value);
@@ -327,7 +338,7 @@ const getList = async () => {
});
processList.value = processedList;
total.value = processedList.length; // 更新总数为过滤后的数量
total.value = res.total ?? processedList.length;
} catch (error) {
console.error('获取流程列表失败:', error);
@@ -674,10 +685,6 @@ const isCompleted = (row: any): boolean => {
/** 初始化 */
onMounted(async () => {
try {
// 设置默认查询参数
queryParams.value.currentStatus = '2'; // 录取处理中
queryParams.value.isCompleted = 0; // 未完成
// 处理路由参数
const route = useRoute();
if (route && route.query) {