|
@@ -71,6 +71,12 @@
|
|
|
<template #status="scope">
|
|
<template #status="scope">
|
|
|
<span>{{ scope.row.statusName || '-' }}</span>
|
|
<span>{{ scope.row.statusName || '-' }}</span>
|
|
|
</template>
|
|
</template>
|
|
|
|
|
+ <template #issueCount="scope">
|
|
|
|
|
+ <span>{{ scope.row.issueCount || '-' }}</span>
|
|
|
|
|
+ </template>
|
|
|
|
|
+ <template #feedbackCount="scope">
|
|
|
|
|
+ <span>{{ scope.row.feedbackCount || '-' }}</span>
|
|
|
|
|
+ </template>
|
|
|
<template #feedbackRatio="scope">
|
|
<template #feedbackRatio="scope">
|
|
|
<span>{{ scope.row.feedbackRatio ?? (scope.row.issueCount ? `${scope.row.feedbackCount ?? 0}/${scope.row.issueCount}` : '-') }}</span>
|
|
<span>{{ scope.row.feedbackRatio ?? (scope.row.issueCount ? `${scope.row.feedbackCount ?? 0}/${scope.row.issueCount}` : '-') }}</span>
|
|
|
</template>
|
|
</template>
|
|
@@ -145,10 +151,8 @@
|
|
|
@change="onIssueGroupChange"
|
|
@change="onIssueGroupChange"
|
|
|
>
|
|
>
|
|
|
<el-option
|
|
<el-option
|
|
|
- v-for="d in groupOptions"
|
|
|
|
|
- :key="d.id"
|
|
|
|
|
- :label="d.deptName"
|
|
|
|
|
- :value="d.id"
|
|
|
|
|
|
|
+ v-for="item in groupOptions"
|
|
|
|
|
+ :key="item.id" :label="item.name" :value="item.id"
|
|
|
/>
|
|
/>
|
|
|
</el-select>
|
|
</el-select>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
@@ -211,7 +215,7 @@
|
|
|
import { downloadByData } from '@/utils/file/download';
|
|
import { downloadByData } from '@/utils/file/download';
|
|
|
import { useGlobSetting } from '@/hooks/setting';
|
|
import { useGlobSetting } from '@/hooks/setting';
|
|
|
import urlJoin from 'url-join';
|
|
import urlJoin from 'url-join';
|
|
|
-
|
|
|
|
|
|
|
+ import { queryUserGroupPage } from '@/api/system/person-group';
|
|
|
const router = useRouter();
|
|
const router = useRouter();
|
|
|
|
|
|
|
|
// 表格
|
|
// 表格
|
|
@@ -412,16 +416,32 @@
|
|
|
return list;
|
|
return list;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- async function loadGroupOptions() {
|
|
|
|
|
|
|
+
|
|
|
|
|
+ // 获取用户组列表(用于下发时选择用户名称)
|
|
|
|
|
+ const getUserGroupOptions = async () => {
|
|
|
try {
|
|
try {
|
|
|
- const res = await getAllDepartments();
|
|
|
|
|
- const tree = (res as DeptTree[]) ?? [];
|
|
|
|
|
- groupOptions.value = flattenDeptTree(Array.isArray(tree) && tree[0]?.children ? tree[0].children : tree);
|
|
|
|
|
|
|
+ const res = await queryUserGroupPage({
|
|
|
|
|
+ pageNumber: 1,
|
|
|
|
|
+ pageSize: 9999,
|
|
|
|
|
+ queryParam: '',
|
|
|
|
|
+ });
|
|
|
|
|
+ groupOptions.value = res?.records ?? [];
|
|
|
} catch (e) {
|
|
} catch (e) {
|
|
|
- console.error('获取分组列表失败:', e);
|
|
|
|
|
|
|
+ console.error('获取用户组列表失败:', e);
|
|
|
groupOptions.value = [];
|
|
groupOptions.value = [];
|
|
|
}
|
|
}
|
|
|
- }
|
|
|
|
|
|
|
+ };
|
|
|
|
|
+
|
|
|
|
|
+// async function loadGroupOptions() {
|
|
|
|
|
+// try {
|
|
|
|
|
+// const res = await getAllDepartments();
|
|
|
|
|
+// const tree = (res as DeptTree[]) ?? [];
|
|
|
|
|
+// groupOptions.value = flattenDeptTree(Array.isArray(tree) && tree[0]?.children ? tree[0].children : tree);
|
|
|
|
|
+// } catch (e) {
|
|
|
|
|
+// console.error('获取分组列表失败:', e);
|
|
|
|
|
+// groupOptions.value = [];
|
|
|
|
|
+// }
|
|
|
|
|
+// }
|
|
|
|
|
|
|
|
function onIssueGroupChange(deptId: number) {
|
|
function onIssueGroupChange(deptId: number) {
|
|
|
const d = groupOptions.value.find((x) => x.id === deptId);
|
|
const d = groupOptions.value.find((x) => x.id === deptId);
|
|
@@ -480,7 +500,7 @@
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
onMounted(() => {
|
|
onMounted(() => {
|
|
|
- loadGroupOptions();
|
|
|
|
|
|
|
+ getUserGroupOptions();
|
|
|
getTableData();
|
|
getTableData();
|
|
|
});
|
|
});
|
|
|
</script>
|
|
</script>
|