fix(xispeak): 修复前端页面 QA 审查发现的问题
- P0 添加下级保留父节点 pid,恢复树形层级功能 - P1 新增表单占位模板文本置空,必填校验不再被绕过 - P1 JBR 批量流程部分失败时保存状态并刷新列表,避免孤儿流程 - P1 编辑反馈记录时保留原部门归属,仅新增时填充登录人部门 - P2 讲话指示批示搜索输入防抖 500ms - P2 清理 BPMForm/FeedbackForm 调试 console.log 与日期死代码 - P2 清理 List 死代码(未用 import/computed/函数) - P2 孤儿组件 searchReset 空指针保护 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -9,7 +9,7 @@
|
||||
<template #label>
|
||||
<a-tooltip title="支持模糊查询,输入重要讲话指示批示情况关键词">讲话指示批示</a-tooltip>
|
||||
</template>
|
||||
<a-tooltip title="支持模糊查询,输入重要讲话指示批示情况关键词"><JInput v-model:value="queryParam.speakStatus" type="like" placeholder="请输入重要讲话指示批示情况" allow-clear trim @change="searchQuery" /></a-tooltip>
|
||||
<a-tooltip title="支持模糊查询,输入重要讲话指示批示情况关键词"><JInput v-model:value="queryParam.speakStatus" type="like" placeholder="请输入重要讲话指示批示情况" allow-clear trim @change="debouncedSearchQuery" /></a-tooltip>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="6" :md="8" :sm="12">
|
||||
@@ -135,17 +135,17 @@
|
||||
|
||||
<script lang="ts" name="bg.xispeak-bgXiSpeak" setup>
|
||||
import { ref, reactive, unref, computed, provide, nextTick, onMounted } from 'vue';
|
||||
import { useDebounceFn } from '@vueuse/core';
|
||||
import { BasicTable, useTable } from '/@/components/Table';
|
||||
import { Dropdown } from '/@/components/Dropdown';
|
||||
import { useListPage } from '/@/hooks/system/useListPage';
|
||||
import { useModal } from '/@/components/Modal';
|
||||
import { defHttp } from '/@/utils/http/axios';
|
||||
import { defHttp } from '/@/utils/http/axios';
|
||||
import { useMessage } from '/@/hooks/web/useMessage';
|
||||
import { showImportValidationErrors } from '/@/utils/helper/importError';
|
||||
import { startProcessSchedules } from '/@/api/common/api';
|
||||
import { dateUtil } from '/@/utils/dateUtil';
|
||||
|
||||
import JDictSelectTag from '/@/components/Form/src/jeecg/components/JDictSelectTag.vue';
|
||||
import JInput from '/@/components/Form/src/jeecg/components/JInput.vue';
|
||||
import SzSelectDept from '/@/components/Form/src/jeecg/components/SzSelectDept.vue';
|
||||
import DeptRoleUserSelectDropDown from '/@/components/semri/userComponent/DeptRoleUserSelectDropDown.vue';
|
||||
@@ -198,8 +198,6 @@ import { PARTY_COMMITTEE_DEPT_ID, SDW_LEADER_ROLE_ID } from '/@/constant/supervi
|
||||
const pendingFeedbackRightNow = ref(0);
|
||||
const statsData = reactive({ notStarted: 0, inProgress: 0, overdue: 0, completed: 0 });
|
||||
const processColumns = taskTaskColumns;
|
||||
// 是否显示DW领导列表选择
|
||||
const showSdwLeaderSelect = computed(() => queryParam.value.needSdwApproval === '1');
|
||||
|
||||
const { prefixCls, tableContext, onExportXls, onImportXls } = useListPage({
|
||||
tableProps: {
|
||||
@@ -780,15 +778,23 @@ import { PARTY_COMMITTEE_DEPT_ID, SDW_LEADER_ROLE_ID } from '/@/constant/supervi
|
||||
try {
|
||||
await startProcessSchedules(params);
|
||||
successCount++;
|
||||
if (successCount === total) {
|
||||
await saveOrUpdateDict({ id: record.id, bpmStatus: '2', supervisionCount: nextSuperviseCount, completionStatus: 0 }, true);
|
||||
createMessage.success(`成功发起 ${total} 个经办人执行反馈流程`);
|
||||
reload();
|
||||
}
|
||||
} catch (e) {
|
||||
createMessage.error(`部门 ${deptId} 流程发起失败`);
|
||||
}
|
||||
}
|
||||
|
||||
// 部分/全部失败时也要保存状态并刷新列表,避免已成功发起的流程成为无主流程
|
||||
if (successCount > 0) {
|
||||
await saveOrUpdateDict({ id: record.id, bpmStatus: '2', supervisionCount: nextSuperviseCount, completionStatus: 0 }, true);
|
||||
}
|
||||
if (successCount === total) {
|
||||
createMessage.success(`成功发起 ${total} 个经办人执行反馈流程`);
|
||||
} else if (successCount > 0) {
|
||||
createMessage.warning(`部分部门流程发起失败:成功 ${successCount}/${total} 个`);
|
||||
} else {
|
||||
createMessage.error(`所有部门流程发起失败(共 ${total} 个)`);
|
||||
}
|
||||
reload();
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -901,6 +907,9 @@ import { PARTY_COMMITTEE_DEPT_ID, SDW_LEADER_ROLE_ID } from '/@/constant/supervi
|
||||
reload({ page: 1 });
|
||||
}
|
||||
|
||||
// 输入框逐字触发的查询做防抖,查询按钮仍走未防抖的 searchQuery
|
||||
const debouncedSearchQuery = useDebounceFn(searchQuery, 500);
|
||||
|
||||
/**
|
||||
* 重置
|
||||
*/
|
||||
@@ -930,15 +939,6 @@ import { PARTY_COMMITTEE_DEPT_ID, SDW_LEADER_ROLE_ID } from '/@/constant/supervi
|
||||
}
|
||||
reload({ page: 1 });
|
||||
}
|
||||
|
||||
/**
|
||||
* form点击事件(以逗号分割)
|
||||
*/
|
||||
function handleFormJoinChange(key, value) {
|
||||
if (typeof value != 'string') {
|
||||
queryParam.value[key] = value.join(',');
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
|
||||
Reference in New Issue
Block a user