|
|
|
|
@ -312,23 +312,24 @@
|
|
|
|
|
<div class="h100"> |
|
|
|
|
<el-row :gutter="20" class="h100"> |
|
|
|
|
<el-col :span="6"> |
|
|
|
|
<model-tree v-model="modelClueManualQuery.modelIds" /> |
|
|
|
|
<model-tree v-model="modelClueManualQueryUndistributed.modelIds" /> |
|
|
|
|
</el-col> |
|
|
|
|
<el-col :span="18"> |
|
|
|
|
<!-- 查询表单 --> |
|
|
|
|
<header> |
|
|
|
|
<el-form :label-width="140"> |
|
|
|
|
<el-row> |
|
|
|
|
<el-col :span="8"> |
|
|
|
|
<el-form-item label="预警时间"> |
|
|
|
|
<date-time-range-picker-ext |
|
|
|
|
v-model="modelClueManualQuery.createTime" |
|
|
|
|
v-model="currentManualQuery.createTime" |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
</el-col> |
|
|
|
|
<el-col :span="8"> |
|
|
|
|
<el-form-item label="涉及单位"> |
|
|
|
|
<depart-tree-select |
|
|
|
|
v-model="modelClueManualQuery.involveDepartId" |
|
|
|
|
v-model="currentManualQuery.involveDepartId" |
|
|
|
|
:check-strictly="false" |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
@ -337,144 +338,110 @@
|
|
|
|
|
<el-form-item label="预警内容"> |
|
|
|
|
<el-input |
|
|
|
|
placeholder="请输入" |
|
|
|
|
v-model="modelClueManualQuery.thingDesc" |
|
|
|
|
v-model="currentManualQuery.thingDesc" |
|
|
|
|
clearable |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
</el-col> |
|
|
|
|
</el-row> |
|
|
|
|
</el-form> |
|
|
|
|
<!-- 按钮行 --> |
|
|
|
|
<div class="flex between mb-20"> |
|
|
|
|
<div class="flex gap"> |
|
|
|
|
<div class="flex gap" v-if="modelClueManualInnerTab === 'undistributed'"> |
|
|
|
|
<el-button type="primary" @click="handleBathJoin"> |
|
|
|
|
<template #icon> |
|
|
|
|
<icon name="el-icon-Plus" /> |
|
|
|
|
</template> |
|
|
|
|
批量加入</el-button |
|
|
|
|
> |
|
|
|
|
批量加入</el-button> |
|
|
|
|
<el-badge :value="manualList.length"> |
|
|
|
|
<el-button |
|
|
|
|
type="primary" |
|
|
|
|
:disabled="manualList.length === 0" |
|
|
|
|
@click="manualShow = true" |
|
|
|
|
>分发列表</el-button |
|
|
|
|
> |
|
|
|
|
>分发列表</el-button> |
|
|
|
|
</el-badge> |
|
|
|
|
</div> |
|
|
|
|
<div v-else></div> |
|
|
|
|
<div> |
|
|
|
|
<el-button type="primary" @click="getModelClueManualList"> |
|
|
|
|
<el-button type="primary" @click="currentGetListFunc()"> |
|
|
|
|
<template #icon> |
|
|
|
|
<icon name="el-icon-Search" /> |
|
|
|
|
</template> |
|
|
|
|
查询</el-button |
|
|
|
|
> |
|
|
|
|
<el-button @click="resetModelClueManual">重置</el-button> |
|
|
|
|
查询</el-button> |
|
|
|
|
<el-button @click="currentResetFunc()">重置</el-button> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</header> |
|
|
|
|
|
|
|
|
|
<!-- 子tab --> |
|
|
|
|
<el-tabs v-model="modelClueManualInnerTab" class="mb-20"> |
|
|
|
|
<el-tab-pane label="未分发" name="undistributed" /> |
|
|
|
|
<el-tab-pane label="已分发" name="distributed" /> |
|
|
|
|
<el-tab-pane label="已处置" name="disposed" /> |
|
|
|
|
<el-tab-pane label="查否" name="untrue" /> |
|
|
|
|
</el-tabs> |
|
|
|
|
|
|
|
|
|
<!-- 共享表格 --> |
|
|
|
|
<div class="table-container" v-loading="modelClueManualLoading"> |
|
|
|
|
<el-table :data="modelClueManualList" ref="tableRef" max-height="600"> |
|
|
|
|
<el-table-column type="selection" width="55" /> |
|
|
|
|
<el-table-column |
|
|
|
|
label="预警时间" |
|
|
|
|
prop="createTime" |
|
|
|
|
width="150" |
|
|
|
|
/> |
|
|
|
|
<el-table-column |
|
|
|
|
label="预警模型" |
|
|
|
|
prop="modelName" |
|
|
|
|
width="180" |
|
|
|
|
show-overflow-tooltip |
|
|
|
|
/> |
|
|
|
|
<el-table-column |
|
|
|
|
label="涉及单位" |
|
|
|
|
show-overflow-tooltip |
|
|
|
|
width="200" |
|
|
|
|
> |
|
|
|
|
<el-table :data="currentManualTableData" :ref="(el) => { tableRefs[modelClueManualInnerTab] = el }" max-height="500"> |
|
|
|
|
<!-- 未分发:带选择列 --> |
|
|
|
|
<el-table-column type="selection" width="55" v-if="modelClueManualInnerTab === 'undistributed'" /> |
|
|
|
|
<el-table-column label="预警时间" prop="createTime" width="150" /> |
|
|
|
|
<el-table-column label="预警模型" prop="modelName" width="180" show-overflow-tooltip /> |
|
|
|
|
<el-table-column label="涉及单位" show-overflow-tooltip width="200"> |
|
|
|
|
<template #default="{ row }"> |
|
|
|
|
<span>{{ row.involveParentDepartName }}</span> |
|
|
|
|
<span>{{ row.involveDepartName }}</span> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column |
|
|
|
|
label="涉及人员" |
|
|
|
|
prop="involvePoliceName" |
|
|
|
|
width="120" |
|
|
|
|
> |
|
|
|
|
<el-table-column label="涉及人员" prop="involvePoliceName" width="120"> |
|
|
|
|
<template #default="{ row }"> |
|
|
|
|
<div v-if="row.involvePoliceName"> |
|
|
|
|
<div v-for="item in row.involvePoliceName.split( |
|
|
|
|
' ') |
|
|
|
|
" |
|
|
|
|
class="text-nowrap" |
|
|
|
|
> |
|
|
|
|
{{ item }} |
|
|
|
|
</div> |
|
|
|
|
<div v-for="item in row.involvePoliceName.split(' ')" class="text-nowrap">{{ item }}</div> |
|
|
|
|
</div> |
|
|
|
|
<div v-else>略</div> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column |
|
|
|
|
label="预警内容" |
|
|
|
|
prop="thingDesc" |
|
|
|
|
show-overflow-tooltip |
|
|
|
|
/> |
|
|
|
|
<el-table-column |
|
|
|
|
label="分发状态" |
|
|
|
|
align="center" |
|
|
|
|
width="120" |
|
|
|
|
> |
|
|
|
|
<el-table-column label="预警内容" prop="thingDesc" show-overflow-tooltip /> |
|
|
|
|
<el-table-column label="分发状态" align="center" width="130"> |
|
|
|
|
<template #default="{ row }"> |
|
|
|
|
<span |
|
|
|
|
:class=" |
|
|
|
|
row.involveDepartId |
|
|
|
|
? '' |
|
|
|
|
: 'text-warning' |
|
|
|
|
" |
|
|
|
|
>{{ |
|
|
|
|
getDictLable( |
|
|
|
|
dict.distributionState, |
|
|
|
|
row.distributionState |
|
|
|
|
) |
|
|
|
|
}}</span |
|
|
|
|
> |
|
|
|
|
<el-tag v-if="row.distributionState === '0'" type="info">未分发</el-tag> |
|
|
|
|
<el-tag v-if="row.distributionState === '1'" type="success">已分发<span v-if="row.processingStatus">({{ getDictLable(dict.processingStatus, row.processingStatus) }})</span></el-tag> |
|
|
|
|
<el-tag v-if="row.distributionState === '2'">已处置</el-tag> |
|
|
|
|
<el-tag v-if="row.distributionState === '3'" type="danger">查否</el-tag> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column label="操作" width="200"> |
|
|
|
|
<el-table-column label="操作" width="260"> |
|
|
|
|
<template #default="{ row }"> |
|
|
|
|
<el-button |
|
|
|
|
type="primary" |
|
|
|
|
link |
|
|
|
|
@click="handleAddManuel(row)" |
|
|
|
|
v-if=" |
|
|
|
|
manualList.filter( |
|
|
|
|
(item) => item.id === row.id |
|
|
|
|
).length === 0 |
|
|
|
|
" |
|
|
|
|
>加入分发列表</el-button |
|
|
|
|
> |
|
|
|
|
<el-button |
|
|
|
|
link |
|
|
|
|
type="info" |
|
|
|
|
@click="handleRemoveManuel(row)" |
|
|
|
|
v-else |
|
|
|
|
>从分发列表移除</el-button |
|
|
|
|
> |
|
|
|
|
<template v-if="modelClueManualInnerTab === 'undistributed'"> |
|
|
|
|
<el-button type="primary" link @click="handleAddManuel(row)" |
|
|
|
|
v-if="manualList.filter((item) => item.id === row.id).length === 0">加入分发列表</el-button> |
|
|
|
|
<el-button link type="info" @click="handleRemoveManuel(row)" v-else>从分发列表移除</el-button> |
|
|
|
|
<el-button type="warning" link @click="handleCheckUntrue(row)">查否</el-button> |
|
|
|
|
</template> |
|
|
|
|
<template v-else-if="modelClueManualInnerTab === 'untrue'"> |
|
|
|
|
<el-button type="primary" link @click="handleModelClueShowDetail(row)">查看详情</el-button> |
|
|
|
|
<el-button type="success" link @click="handleRecover(row)">恢复</el-button> |
|
|
|
|
</template> |
|
|
|
|
<template v-else> |
|
|
|
|
<el-button type="primary" link @click="handleModelClueShowDetail(row)">查看详情</el-button> |
|
|
|
|
<el-button type="primary" link v-if="modelClueManualInnerTab === 'disposed' || row.negativeId" @click="handleModelClueAction(row)">处理详情</el-button> |
|
|
|
|
<el-button type="primary" link v-if="row.notificationId" @click="handleModelClueClue(row)">查看提醒</el-button> |
|
|
|
|
</template> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
</el-table> |
|
|
|
|
</div> |
|
|
|
|
<div class="flex end mt-8"> |
|
|
|
|
<el-pagination |
|
|
|
|
@size-change="getModelClueManualList" |
|
|
|
|
@current-change="getModelClueManualList" |
|
|
|
|
@size-change="currentGetListFunc()" |
|
|
|
|
@current-change="currentGetListFunc()" |
|
|
|
|
:page-sizes="[10, 20, 50, 100]" |
|
|
|
|
v-model:page-size="modelClueManualQuery.size" |
|
|
|
|
v-model:current-page="modelClueManualQuery.current" |
|
|
|
|
v-model:page-size="currentManualQuery.size" |
|
|
|
|
v-model:current-page="currentManualQuery.current" |
|
|
|
|
layout="total, sizes, prev, pager, next" |
|
|
|
|
:total="modelClueManualTotal" |
|
|
|
|
> |
|
|
|
|
</el-pagination> |
|
|
|
|
:total="currentManualTotal" |
|
|
|
|
/> |
|
|
|
|
</div> |
|
|
|
|
</el-col> |
|
|
|
|
</el-row> |
|
|
|
|
@ -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); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
|