-
+
- 批量加入
+ 批量加入
分发列表
+ >分发列表
+
-
+
- 查询
- 重置
+ 查询
+ 重置
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
+
{{ row.involveParentDepartName }}
{{ row.involveDepartName }}
-
+
-
- {{ item }}
-
+
{{ item }}
略
-
-
+
+
- {{
- getDictLable(
- dict.distributionState,
- row.distributionState
- )
- }}
+ 未分发
+ 已分发({{ getDictLable(dict.processingStatus, row.processingStatus) }})
+ 已处置
+ 查否
-
+
- 加入分发列表
- 从分发列表移除
+
+ 加入分发列表
+ 从分发列表移除
+ 查否
+
+
+ 查看详情
+ 恢复
+
+
+ 查看详情
+ 处理详情
+ 查看提醒
+
-
+ :total="currentManualTotal"
+ />
@@ -1005,7 +972,7 @@ import { listModelClue } from "@/api/sensitivePerception/modelClue";
import { alarmDetails } from "@/api/work/alarm";
import { listModelClueTask, listModelClueByDepart, listModelClues } from "@/api/sensitivePerception/modelClueTask";
import { DistributionMethod } from "@/enums/dictEnums";
-import { manuelModelClueTask, updateDepartModelClue } from "@/api/sensitivePerception/modelClue";
+import { manuelModelClueTask, updateDepartModelClue, checkUntrueModelClue } from "@/api/sensitivePerception/modelClue";
import useCatchStore from "@/stores/modules/catch";
import { getDictLable } from "@/utils/util";
import feedback from "@/utils/feedback";
@@ -1041,9 +1008,105 @@ const modelClueManualQuery = ref({
distributionMethod: DistributionMethod.MANUALLY_DISTRIBUTE,
distributionState: "0",
});
+
+// 人工核验 - 按分发状态分组查询参数
+const modelClueManualQueryUndistributed = ref({
+ distributionMethod: DistributionMethod.MANUALLY_DISTRIBUTE,
+ distributionState: "0",
+ current: 1,
+ size: 10
+});
+
+const modelClueManualQueryDistributed = ref({
+ distributionMethod: DistributionMethod.MANUALLY_DISTRIBUTE,
+ distributionState: "1",
+ current: 1,
+ size: 10
+});
+
+const modelClueManualQueryDisposed = ref({
+ distributionMethod: DistributionMethod.MANUALLY_DISTRIBUTE,
+ distributionState: "2",
+ current: 1,
+ size: 10
+});
+
+const modelClueManualQueryUntrue = ref({
+ distributionMethod: DistributionMethod.MANUALLY_DISTRIBUTE,
+ distributionState: "3",
+ current: 1,
+ size: 10
+});
+
+// 人工核验 - 按分发状态分组数据
+const modelClueManualListUndistributed = ref([]);
+const modelClueManualTotalUndistributed = ref(0);
+const modelClueManualListDistributed = ref([]);
+const modelClueManualTotalDistributed = ref(0);
+const modelClueManualListDisposed = ref([]);
+const modelClueManualTotalDisposed = ref(0);
+const modelClueManualListUntrue = ref([]);
+const modelClueManualTotalUntrue = ref(0);
+
+// 人工核验 - 内部 tab 切换
+const modelClueManualInnerTab = ref('undistributed');
+
+// 人工核验 - 当前激活tab的数据
+const currentManualTableData = computed(() => {
+ switch (modelClueManualInnerTab.value) {
+ case 'undistributed': return modelClueManualListUndistributed.value;
+ case 'distributed': return modelClueManualListDistributed.value;
+ case 'disposed': return modelClueManualListDisposed.value;
+ case 'untrue': return modelClueManualListUntrue.value;
+ default: return modelClueManualListUndistributed.value;
+ }
+});
+
+const currentManualQuery = computed(() => {
+ switch (modelClueManualInnerTab.value) {
+ case 'undistributed': return modelClueManualQueryUndistributed.value;
+ case 'distributed': return modelClueManualQueryDistributed.value;
+ case 'disposed': return modelClueManualQueryDisposed.value;
+ case 'untrue': return modelClueManualQueryUntrue.value;
+ default: return modelClueManualQueryUndistributed.value;
+ }
+});
+
+const currentManualTotal = computed(() => {
+ switch (modelClueManualInnerTab.value) {
+ case 'undistributed': return modelClueManualTotalUndistributed.value;
+ case 'distributed': return modelClueManualTotalDistributed.value;
+ case 'disposed': return modelClueManualTotalDisposed.value;
+ case 'untrue': return modelClueManualTotalUntrue.value;
+ default: return modelClueManualTotalUndistributed.value;
+ }
+});
+
+const currentGetListFunc = computed(() => {
+ switch (modelClueManualInnerTab.value) {
+ case 'undistributed': return getModelClueManualListUndistributed;
+ case 'distributed': return getModelClueManualListDistributed;
+ case 'disposed': return getModelClueManualListDisposed;
+ case 'untrue': return getModelClueManualListUntrue;
+ default: return getModelClueManualListUndistributed;
+ }
+});
+
+const currentResetFunc = computed(() => {
+ switch (modelClueManualInnerTab.value) {
+ case 'undistributed': return resetModelClueManualUndistributed;
+ case 'distributed': return resetModelClueManualDistributed;
+ case 'disposed': return resetModelClueManualDisposed;
+ case 'untrue': return resetModelClueManualUntrue;
+ default: return resetModelClueManualUndistributed;
+ }
+});
+
+// 人工核验 - 批量选择列表
const modelClueManualList = ref([]);
const modelClueManualTotal = ref(0);
const modelClueManualLoading = ref(false);
+// 人工核验 - 批量选择列表
const manualList = ref([]);
const manualShow = ref(false);
const manualQuery = ref({});
@@ -1053,13 +1116,19 @@ const form = ref({
thingFiles: [],
problems: []
});
+// 表格 refs 对象
+const tableRefs = ref({
+ undistributed: null,
+ distributed: null,
+ disposed: null,
+ untrue: null
+});
const formRef = ref(null);
const submitLoading = ref(false);
const editDepartShow = ref(false);
const editDepartForm = ref({});
const editDepartFormRef = ref();
let activeModelClueId = 0;
-const tableRef = ref();
// 路由和生命周期
const route = useRoute();
@@ -1067,11 +1136,17 @@ onMounted(() => {
if (route.query.modelId) {
modelClueQuery.value.modelIds = [route.query.modelId];
modelTaskQuery.value.modelIds = [route.query.modelId];
- modelClueManualQuery.value.modelIds = [route.query.modelId];
+ modelClueManualQueryUndistributed.value.modelIds = [route.query.modelId];
+ modelClueManualQueryDistributed.value.modelIds = [route.query.modelId];
+ modelClueManualQueryDisposed.value.modelIds = [route.query.modelId];
+ modelClueManualQueryUntrue.value.modelIds = [route.query.modelId];
}
getModelClueList();
getModelTaskList();
- getModelClueManualList();
+ getModelClueManualListUndistributed();
+ getModelClueManualListDistributed();
+ getModelClueManualListDisposed();
+ getModelClueManualListUntrue();
});
// 模型预警问题相关方法
@@ -1136,22 +1211,100 @@ async function handleModelTaskStatisticsShow(id) {
modelTaskStatisticsShow.value = true;
}
-// 人工核验相关方法
-function getModelClueManualList() {
+// 人工核验相关方法 - 未分发
+function getModelClueManualListUndistributed() {
modelClueManualLoading.value = true
- listModelClue(modelClueManualQuery.value).then((data) => {
- modelClueManualList.value = data.records;
- modelClueManualTotal.value = data.total;
+ listModelClue(modelClueManualQueryUndistributed.value).then((data) => {
+ modelClueManualListUndistributed.value = data.records;
+ modelClueManualTotalUndistributed.value = data.total;
modelClueManualLoading.value = false
});
}
-function resetModelClueManual() {
- modelClueManualQuery.value = {
+function resetModelClueManualUndistributed() {
+ modelClueManualQueryUndistributed.value = {
distributionMethod: DistributionMethod.MANUALLY_DISTRIBUTE,
distributionState: "0",
+ current: 1,
+ size: 10
};
- getModelClueManualList();
+ getModelClueManualListUndistributed();
+}
+
+// 人工核验相关方法 - 已分发
+function getModelClueManualListDistributed() {
+ modelClueManualLoading.value = true
+ listModelClue(modelClueManualQueryDistributed.value).then((data) => {
+ modelClueManualListDistributed.value = data.records;
+ modelClueManualTotalDistributed.value = data.total;
+ modelClueManualLoading.value = false
+ });
+}
+
+function resetModelClueManualDistributed() {
+ modelClueManualQueryDistributed.value = {
+ distributionMethod: DistributionMethod.MANUALLY_DISTRIBUTE,
+ distributionState: "1",
+ current: 1,
+ size: 10
+ };
+ getModelClueManualListDistributed();
+}
+
+// 人工核验相关方法 - 已处置
+function getModelClueManualListDisposed() {
+ modelClueManualLoading.value = true
+ listModelClue(modelClueManualQueryDisposed.value).then((data) => {
+ modelClueManualListDisposed.value = data.records;
+ modelClueManualTotalDisposed.value = data.total;
+ modelClueManualLoading.value = false
+ });
+}
+
+function resetModelClueManualDisposed() {
+ modelClueManualQueryDisposed.value = {
+ distributionMethod: DistributionMethod.MANUALLY_DISTRIBUTE,
+ distributionState: "2",
+ current: 1,
+ size: 10
+ };
+ getModelClueManualListDisposed();
+}
+
+// 人工核验相关方法 - 查否
+function getModelClueManualListUntrue() {
+ modelClueManualLoading.value = true
+ listModelClue(modelClueManualQueryUntrue.value).then((data) => {
+ modelClueManualListUntrue.value = data.records;
+ modelClueManualTotalUntrue.value = data.total;
+ modelClueManualLoading.value = false
+ });
+}
+
+function resetModelClueManualUntrue() {
+ modelClueManualQueryUntrue.value = {
+ distributionMethod: DistributionMethod.MANUALLY_DISTRIBUTE,
+ distributionState: "3",
+ current: 1,
+ size: 10
+ };
+ getModelClueManualListUntrue();
+}
+
+// 查否处理
+async function handleCheckUntrue(row) {
+ await checkUntrueModelClue(row.id, "3");
+ feedback.msgSuccess("查否成功");
+ getModelClueManualListUndistributed();
+ getModelClueManualListUntrue();
+}
+
+// 恢复处理
+async function handleRecover(row) {
+ await checkUntrueModelClue(row.id, "0");
+ feedback.msgSuccess("恢复成功");
+ getModelClueManualListUntrue();
+ getModelClueManualListUndistributed();
}
async function handleAddManuel(row) {
@@ -1243,7 +1396,10 @@ async function handleSubmitManuelModelClueTask() {
distributeShow.value = false;
manualShow.value = false;
manualList.value = [];
- getModelClueManualList();
+ getModelClueManualListUndistributed();
+ getModelClueManualListDistributed();
+ getModelClueManualListDisposed();
+ getModelClueManualListUntrue();
}
async function handleUpdatDepartModelClue() {
@@ -1251,15 +1407,17 @@ async function handleUpdatDepartModelClue() {
await updateDepartModelClue(activeModelClueId, editDepartForm.value);
editDepartShow.value = false;
editDepartForm.value = {};
- getModelClueManualList();
+ getModelClueManualListUndistributed();
+ getModelClueManualListDistributed();
+ getModelClueManualListDisposed();
+ getModelClueManualListUntrue();
}
function handleBathJoin() {
- const rows = tableRef.value.getSelectionRows();
+ const tableRef = tableRefs.value[modelClueManualInnerTab.value];
+ const rows = tableRef?.getSelectionRows() || [];
rows.forEach((row) => {
- if (
- manualList.value.filter((item) => item.id === row.id).length === 0
- ) {
+ if (manualList.value.filter((item) => item.id === row.id).length === 0) {
manualList.value.push(row);
}
});
From b0bf4b322dc905e9f2dd455027497f6444efce78 Mon Sep 17 00:00:00 2001
From: buaixuexideshitongxue <2936013465@qq.com>
Date: Tue, 14 Apr 2026 17:35:20 +0800
Subject: [PATCH 2/4] =?UTF-8?q?fix=EF=BC=9A=E7=A7=BB=E5=8A=A8=E7=9D=A3?=
=?UTF-8?q?=E5=AF=9FAPP=E5=BD=95=E5=85=A5=E5=AE=A1=E6=A0=B8=E6=95=B0?=
=?UTF-8?q?=E6=8D=AE=EF=BC=8C=E5=A2=9E=E5=8A=A0=E2=80=9C=E6=9F=A5=E5=90=A6?=
=?UTF-8?q?=E3=80=81=E6=9F=A5=E5=AE=9E=E2=80=9D=E5=8A=9F=E8=83=BD=20+=20?=
=?UTF-8?q?=E9=A2=84=E8=AD=A6=E6=A8=A1=E5=9E=8B=E5=A2=9E=E5=8A=A0=E5=B7=B2?=
=?UTF-8?q?=E6=A0=B8=E3=80=81=E6=9F=A5=E5=90=A6=E5=8A=9F=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/mobileSupervise/TaskProblem.vue | 10 +++++-----
src/views/sensitivePerception/ModelClueTotal.vue | 8 ++++----
2 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/src/views/mobileSupervise/TaskProblem.vue b/src/views/mobileSupervise/TaskProblem.vue
index e563703..78a334d 100644
--- a/src/views/mobileSupervise/TaskProblem.vue
+++ b/src/views/mobileSupervise/TaskProblem.vue
@@ -57,8 +57,8 @@
-
-
+
+
@@ -108,13 +108,13 @@
type="primary"
link
@click="issueMatterFun(row)"
- >问题下发
+ >查实
- {{ row.problemState == "1" ? "删除" : "恢复" }}
+ {{ row.problemState == "1" ? "查否" : "恢复" }}
@@ -638,7 +638,7 @@ async function upProblemStateFun(row) {
await feedback.confirm(
`确定要${
row.problemState == "1" ? "删除" : "恢复"
- }该问题项(可在回收站中查看已删除的问题项)?`
+ }该问题项(可在查否中查看该问题项)?`
);
upProblemState(row.id).then((res) => {
getList();
diff --git a/src/views/sensitivePerception/ModelClueTotal.vue b/src/views/sensitivePerception/ModelClueTotal.vue
index 77c5883..42e8e53 100644
--- a/src/views/sensitivePerception/ModelClueTotal.vue
+++ b/src/views/sensitivePerception/ModelClueTotal.vue
@@ -358,7 +358,7 @@
type="primary"
:disabled="manualList.length === 0"
@click="manualShow = true"
- >分发列表
+ >查实列表
@@ -377,7 +377,7 @@
-
+
@@ -415,8 +415,8 @@
加入分发列表
- 从分发列表移除
+ v-if="manualList.filter((item) => item.id === row.id).length === 0">查实
+ 从查实列表移除
查否
From 763b215aef41a8021f7aef0a5072a181503dc7b9 Mon Sep 17 00:00:00 2001
From: buaixuexideshitongxue <2936013465@qq.com>
Date: Wed, 15 Apr 2026 16:15:36 +0800
Subject: [PATCH 3/4] =?UTF-8?q?feat:=E7=BB=BC=E5=90=88=E6=9F=A5=E8=AF=A2?=
=?UTF-8?q?=E4=B8=AD=E7=9A=84=E4=BA=8B=E6=83=85=E7=AE=80=E8=A6=81=E6=8F=8F?=
=?UTF-8?q?=E8=BF=B0=EF=BC=8C=E5=BA=94=E5=AF=B9=E9=97=AE=E9=A2=98=E6=A0=B8?=
=?UTF-8?q?=E6=9F=A5=E6=83=85=E5=86=B5=E4=B8=80=E8=A7=88=E4=B8=80=E5=B9=B6?=
=?UTF-8?q?=E6=A3=80=E7=B4=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/work/Query.vue | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/views/work/Query.vue b/src/views/work/Query.vue
index 417013a..c8e75f0 100644
--- a/src/views/work/Query.vue
+++ b/src/views/work/Query.vue
@@ -16,7 +16,7 @@
Date: Wed, 15 Apr 2026 16:54:55 +0800
Subject: [PATCH 4/4] =?UTF-8?q?feat:=E9=AB=98=E4=BA=AE=E5=AE=A1=E6=89=B9?=
=?UTF-8?q?=E8=B6=85=E6=97=B6=E7=9A=84=E6=95=B0=E6=8D=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/components/negative/action-history.vue | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/src/components/negative/action-history.vue b/src/components/negative/action-history.vue
index 072cd60..2954198 100644
--- a/src/components/negative/action-history.vue
+++ b/src/components/negative/action-history.vue
@@ -17,7 +17,7 @@