forked from integrated_whb/integrated_whb_vue
ai视频报警
parent
41f08a759e
commit
04f28b4acc
|
@ -818,13 +818,13 @@ export default [
|
|||
path: "/keyprojects/inspection/record_list",
|
||||
meta: {
|
||||
title: "查看列表",
|
||||
activeMenu: "/keyprojects/inspection"
|
||||
activeMenu: "/keyprojects/inspection",
|
||||
},
|
||||
component: "children",
|
||||
children: [
|
||||
{
|
||||
path: "",
|
||||
component: "keyprojects/inspection/record_list"
|
||||
component: "keyprojects/inspection/record_list",
|
||||
},
|
||||
{
|
||||
path: "/keyprojects/inspection/record_view",
|
||||
|
@ -834,9 +834,9 @@ export default [
|
|||
},
|
||||
component: "keyprojects/inspection/record_view",
|
||||
},
|
||||
]
|
||||
],
|
||||
},
|
||||
]
|
||||
],
|
||||
},
|
||||
{
|
||||
path: "/keyprojects/hidden",
|
||||
|
@ -851,13 +851,13 @@ export default [
|
|||
path: "/keyprojects/hidden/record_list",
|
||||
meta: {
|
||||
title: "查看列表",
|
||||
activeMenu: "/keyprojects/hidden"
|
||||
activeMenu: "/keyprojects/hidden",
|
||||
},
|
||||
component: "children",
|
||||
children: [
|
||||
{
|
||||
path: "",
|
||||
component: "keyprojects/hidden/record_list"
|
||||
component: "keyprojects/hidden/record_list",
|
||||
},
|
||||
{
|
||||
path: "/keyprojects/hidden/record_view",
|
||||
|
@ -867,9 +867,9 @@ export default [
|
|||
},
|
||||
component: "keyprojects/hidden/record_view",
|
||||
},
|
||||
]
|
||||
],
|
||||
},
|
||||
]
|
||||
],
|
||||
},
|
||||
{
|
||||
path: "/keyprojects/punish",
|
||||
|
@ -884,13 +884,13 @@ export default [
|
|||
path: "/keyprojects/punish/record_list",
|
||||
meta: {
|
||||
title: "查看列表",
|
||||
activeMenu: "/keyprojects/punish"
|
||||
activeMenu: "/keyprojects/punish",
|
||||
},
|
||||
component: "children",
|
||||
children: [
|
||||
{
|
||||
path: "",
|
||||
component: "keyprojects/punish/record_list"
|
||||
component: "keyprojects/punish/record_list",
|
||||
},
|
||||
{
|
||||
path: "/keyprojects/punish/record_view",
|
||||
|
@ -900,9 +900,9 @@ export default [
|
|||
},
|
||||
component: "keyprojects/punish/record_view",
|
||||
},
|
||||
]
|
||||
],
|
||||
},
|
||||
]
|
||||
],
|
||||
},
|
||||
{
|
||||
path: "/keyprojects/aiwarning",
|
||||
|
@ -1969,6 +1969,11 @@ export default [
|
|||
meta: { title: "视频设备列表", isSubMenu: false },
|
||||
component: "video_manager/video_manager/index",
|
||||
},
|
||||
{
|
||||
path: "/video_manager/ai_warning",
|
||||
meta: { title: "Ai报警", isSubMenu: false },
|
||||
component: "video_manager/ai_warning/index",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
import { post } from "@/request/axios.js";
|
||||
|
||||
export const getAiWarningList = (params) => post("/aiwarning/list", params); // ai报警列表
|
||||
|
||||
export const getAiWarningView = (params) => post("/aiwarning/goEdit", params); // 台账添加
|
||||
export const setAiWarningDelete = (params) =>
|
||||
post("/aiwarning/removeByIds", params); // 删除
|
||||
export const setAiWarningEdit = (params) => post("/aiwarning/edit", params); // 修改
|
|
@ -58,8 +58,8 @@
|
|||
<el-form-item label="定位卡号" prop="CARDNO">
|
||||
<el-input
|
||||
v-model="data.form.CARDNO"
|
||||
maxlength="4"
|
||||
minlength="4"
|
||||
maxlength="5"
|
||||
minlength="5"
|
||||
show-word-limit
|
||||
placeholder="请输入"
|
||||
/>
|
||||
|
|
|
@ -33,7 +33,10 @@
|
|||
style="width: 240px"
|
||||
disabled
|
||||
/>
|
||||
<el-button type="primary" @click="fnRegName" style="margin-left: 10px"
|
||||
<el-button
|
||||
type="primary"
|
||||
@click="data.drawer = true"
|
||||
style="margin-left: 10px"
|
||||
>添加</el-button
|
||||
>
|
||||
<el-button
|
||||
|
@ -48,84 +51,24 @@
|
|||
<el-button @click="fnClose">取消</el-button>
|
||||
<el-button type="primary" @click="fnSubmit"> 确定 </el-button>
|
||||
</template>
|
||||
<electronic-fence v-model:visible="data.drawer" v-model:form="form" />
|
||||
</el-dialog>
|
||||
<el-drawer
|
||||
v-model="data.drawer"
|
||||
title="电子围栏台账"
|
||||
direction="rtl"
|
||||
:before-close="handleClose"
|
||||
size="50%"
|
||||
>
|
||||
<el-card>
|
||||
<el-form
|
||||
:model="searchForm"
|
||||
label-width="20px"
|
||||
@submit.prevent="fnResetPagination"
|
||||
>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="关键字" prop="KEYWORDS" label-width="60px">
|
||||
<el-input
|
||||
v-model="searchForm.KEYWORDS"
|
||||
placeholder="请输入关键字"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label-width="30px">
|
||||
<el-button type="primary" native-type="submit">搜索</el-button>
|
||||
<el-button native-type="reset" @click="fnResetPagination">
|
||||
重置
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</el-card>
|
||||
<layout-card>
|
||||
<layout-table
|
||||
ref="tableRef"
|
||||
:data="list"
|
||||
v-model:pagination="pagination"
|
||||
@get-data="fnGetData"
|
||||
>
|
||||
<el-table-column reserve-selection type="selection" width="55" />
|
||||
<el-table-column label="序号" width="70">
|
||||
<template v-slot="{ $index }">
|
||||
{{ serialNumber(pagination, $index) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column property="layName" label="所属图层" width="150" />
|
||||
<el-table-column property="regName" label="名称" />
|
||||
<el-table-column label="操作" width="200">
|
||||
<template v-slot="{ row }">
|
||||
<el-button type="primary" text link @click="handleJoin(row)"
|
||||
>绑定</el-button
|
||||
>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</layout-table>
|
||||
</layout-card>
|
||||
</el-drawer>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { serialNumber } from "@/assets/js/utils.js";
|
||||
import { nextTick, reactive, ref } from "vue";
|
||||
import { reactive, ref } from "vue";
|
||||
import { useVModels } from "@vueuse/core";
|
||||
import { debounce } from "throttle-debounce";
|
||||
import useFormValidate from "@/assets/js/useFormValidate.js";
|
||||
import { ElMessage } from "element-plus";
|
||||
import {
|
||||
getRiskPointListAll,
|
||||
getRyRegionList,
|
||||
setIdentifyingPartsAdd,
|
||||
setIdentifyingPartsEdit,
|
||||
} from "@/request/risk_control.js";
|
||||
import LayoutUpload from "@/components/upload/index.vue";
|
||||
import useListData from "@/assets/js/useListData.js";
|
||||
const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } =
|
||||
useListData(getRyRegionList);
|
||||
import ElectronicFence from "./electronic_fence.vue";
|
||||
|
||||
const props = defineProps({
|
||||
visible: {
|
||||
type: Boolean,
|
||||
|
@ -177,16 +120,7 @@ const fnClose = () => {
|
|||
formRef.value.resetFields();
|
||||
visible.value = false;
|
||||
};
|
||||
const handleJoin = debounce(
|
||||
1000,
|
||||
async (row) => {
|
||||
form.value.ELECTRONIC_FENCE = row.regName;
|
||||
form.value.ELECTRONIC_FENCE_ID = row.uuid;
|
||||
data.drawer = false;
|
||||
await nextTick();
|
||||
},
|
||||
{ atBegin: true }
|
||||
);
|
||||
|
||||
const fnRemoveRegName = debounce(
|
||||
1000,
|
||||
async () => {
|
||||
|
@ -195,18 +129,7 @@ const fnRemoveRegName = debounce(
|
|||
},
|
||||
{ atBegin: true }
|
||||
);
|
||||
const fnRegName = debounce(
|
||||
1000,
|
||||
async () => {
|
||||
data.drawer = true;
|
||||
await fnResetPagination();
|
||||
},
|
||||
{ atBegin: true }
|
||||
);
|
||||
|
||||
const handleClose = () => {
|
||||
data.drawer = false;
|
||||
};
|
||||
const fnSubmit = debounce(
|
||||
1000,
|
||||
async () => {
|
||||
|
|
|
@ -0,0 +1,81 @@
|
|||
<template>
|
||||
<el-drawer v-model="visible" title="电子围栏台账" direction="rtl" size="50%">
|
||||
<el-card>
|
||||
<el-form
|
||||
:model="searchForm"
|
||||
label-width="20px"
|
||||
@submit.prevent="fnResetPagination"
|
||||
>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="关键字" prop="KEYWORDS" label-width="60px">
|
||||
<el-input
|
||||
v-model="searchForm.KEYWORDS"
|
||||
placeholder="请输入关键字"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label-width="30px">
|
||||
<el-button type="primary" native-type="submit">搜索</el-button>
|
||||
<el-button native-type="reset" @click="fnResetPagination">
|
||||
重置
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</el-card>
|
||||
<layout-card>
|
||||
<layout-table
|
||||
ref="tableRef"
|
||||
:data="list"
|
||||
v-model:pagination="pagination"
|
||||
@get-data="fnGetData"
|
||||
>
|
||||
<el-table-column reserve-selection type="selection" width="55" />
|
||||
<el-table-column label="序号" width="70">
|
||||
<template v-slot="{ $index }">
|
||||
{{ serialNumber(pagination, $index) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column property="layName" label="所属图层" width="150" />
|
||||
<el-table-column property="regName" label="名称" />
|
||||
<el-table-column label="操作" width="200">
|
||||
<template v-slot="{ row }">
|
||||
<el-button type="primary" text link @click="handleJoin(row)"
|
||||
>绑定</el-button
|
||||
>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</layout-table>
|
||||
</layout-card>
|
||||
</el-drawer>
|
||||
</template>
|
||||
<script setup>
|
||||
import { serialNumber } from "@/assets/js/utils.js";
|
||||
import useListData from "@/assets/js/useListData.js";
|
||||
import { getRyRegionList } from "@/request/risk_control.js";
|
||||
import { useVModels } from "@vueuse/core";
|
||||
const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } =
|
||||
useListData(getRyRegionList);
|
||||
const props = defineProps({
|
||||
visible: {
|
||||
type: Boolean,
|
||||
required: true,
|
||||
default: false,
|
||||
},
|
||||
form: {
|
||||
type: Object,
|
||||
required: true,
|
||||
default: () => {},
|
||||
},
|
||||
});
|
||||
const emits = defineEmits(["update:visible", "update:form"]);
|
||||
const { visible, form } = useVModels(props, emits);
|
||||
const handleJoin = (row) => {
|
||||
form.value.ELECTRONIC_FENCE = row.regName;
|
||||
form.value.ELECTRONIC_FENCE_ID = row.uuid;
|
||||
visible.value = false;
|
||||
};
|
||||
</script>
|
|
@ -0,0 +1,155 @@
|
|||
<template>
|
||||
<el-dialog
|
||||
v-model="visible"
|
||||
:title="type === 'edit' ? '审核' : '新增'"
|
||||
:before-close="fnClose"
|
||||
>
|
||||
<el-form ref="formRef" :rules="rules" :model="form" label-width="150px">
|
||||
<el-form-item label="监控设备名称" prop="VIDEONAME">
|
||||
<el-input v-model="form.VIDEONAME" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="监控设备编码" prop="CODE">
|
||||
<el-input v-model="form.CODE" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="报警类型" prop="TYPE">
|
||||
<el-input v-model="form.TYPE" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="报警时间" prop="CREATTIME">
|
||||
<el-input v-model="form.CREATTIME" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item v-if="form.IMG_PATH" label="报警截图" prop="IMG_PATH">
|
||||
<img
|
||||
v-viewer
|
||||
:src="VITE_FILE_URL + form.IMG_PATH"
|
||||
width="100"
|
||||
height="100"
|
||||
alt=""
|
||||
class="ml-10"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="form.VIDEO_PATH" label="报警视频" prop="VIDEO_PATH">
|
||||
<el-icon
|
||||
size="30px"
|
||||
@click="
|
||||
data.videoDialog.visible = true;
|
||||
data.videoDialog.src = form.VIDEO_PATH;
|
||||
"
|
||||
style="cursor: pointer"
|
||||
>
|
||||
<video-play />
|
||||
</el-icon>
|
||||
</el-form-item>
|
||||
<el-form-item label="是否真实报警" prop="ISTRUE">
|
||||
<el-select
|
||||
v-model="form.ISTRUE"
|
||||
class="m-2"
|
||||
placeholder="Select"
|
||||
size="large"
|
||||
style="width: 240px"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in options"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<el-button @click="fnClose">取消</el-button>
|
||||
<el-button type="primary" @click="fnSubmit"> 确定 </el-button>
|
||||
</template>
|
||||
<layout-video
|
||||
v-model:visible="data.videoDialog.visible"
|
||||
:src="data.videoDialog.src"
|
||||
/>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { reactive, ref } from "vue";
|
||||
import { useVModels } from "@vueuse/core";
|
||||
import { debounce } from "throttle-debounce";
|
||||
import useFormValidate from "@/assets/js/useFormValidate.js";
|
||||
import { ElMessage } from "element-plus";
|
||||
import { VideoPlay } from "@element-plus/icons-vue";
|
||||
import LayoutVideo from "@/components/video/index.vue";
|
||||
import { setAiWarningEdit } from "@/request/aiwarning_manager.js";
|
||||
const VITE_FILE_URL = import.meta.env.VITE_FILE_URL;
|
||||
|
||||
const props = defineProps({
|
||||
visible: {
|
||||
type: Boolean,
|
||||
required: true,
|
||||
default: false,
|
||||
},
|
||||
form: {
|
||||
type: Object,
|
||||
required: true,
|
||||
default: () => ({}),
|
||||
},
|
||||
type: {
|
||||
type: String,
|
||||
required: true,
|
||||
default: "",
|
||||
},
|
||||
});
|
||||
|
||||
const options = [
|
||||
{
|
||||
value: 1,
|
||||
label: "是",
|
||||
},
|
||||
{
|
||||
value: 2,
|
||||
label: "否",
|
||||
},
|
||||
{
|
||||
value: 3,
|
||||
label: "请选择",
|
||||
},
|
||||
];
|
||||
const data = reactive({
|
||||
videoDialog: {
|
||||
visible: false,
|
||||
src: "",
|
||||
},
|
||||
});
|
||||
|
||||
const emits = defineEmits(["update:visible", "update:form", "get-data"]);
|
||||
const { visible, form } = useVModels(props, emits);
|
||||
const rules = {
|
||||
VIDEONAME: [{ required: true, message: "视频名称不能为空", trigger: "blur" }],
|
||||
VIDEOURL: [
|
||||
{ required: true, message: "播放地址不能为空", trigger: "change" },
|
||||
],
|
||||
CODE: [
|
||||
{ required: true, message: "监控设备编码不能为空", trigger: "change" },
|
||||
],
|
||||
};
|
||||
const formRef = ref(null);
|
||||
|
||||
const fnClose = () => {
|
||||
formRef.value.resetFields();
|
||||
visible.value = false;
|
||||
};
|
||||
|
||||
const fnSubmit = debounce(
|
||||
1000,
|
||||
async () => {
|
||||
if (form.value.ISTRUE === 3) {
|
||||
ElMessage.warning("请选是否真实报警");
|
||||
return;
|
||||
}
|
||||
await useFormValidate(formRef);
|
||||
await setAiWarningEdit({ ...form.value });
|
||||
ElMessage.success("操作成功");
|
||||
fnClose();
|
||||
emits("get-data");
|
||||
},
|
||||
{ atBegin: true }
|
||||
);
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss"></style>
|
|
@ -0,0 +1,174 @@
|
|||
<template>
|
||||
<div>
|
||||
<el-card>
|
||||
<el-form
|
||||
:model="searchForm"
|
||||
label-width="50px"
|
||||
@submit.prevent="fnResetPagination"
|
||||
>
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item prop="KEYWORDS">
|
||||
<el-input
|
||||
v-model="searchForm.KEYWORDS"
|
||||
placeholder="请输入关键字"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label-width="10px">
|
||||
<el-button type="primary" native-type="submit">搜索</el-button>
|
||||
<el-button native-type="reset" @click="fnResetPagination">
|
||||
重置
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</el-card>
|
||||
<layout-card>
|
||||
<layout-table
|
||||
ref="tableRef"
|
||||
:data="list"
|
||||
v-model:pagination="pagination"
|
||||
@get-data="fnGetData"
|
||||
row-key="AIWARNING_ID"
|
||||
>
|
||||
<el-table-column reserve-selection type="selection" width="55" />
|
||||
<el-table-column label="序号" width="70">
|
||||
<template v-slot="{ $index }">
|
||||
{{ serialNumber(pagination, $index) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="VIDEONAME" label="监控设备名称" />
|
||||
<el-table-column prop="CODE" label="监控设备编码" />
|
||||
<el-table-column prop="TYPE" label="报警类型" />
|
||||
<el-table-column prop="CREATTIME" label="报警时间" />
|
||||
<el-table-column prop="IMG_PATH" label="报警截图">
|
||||
<template v-slot="{ row }">
|
||||
<layout-tooltip-img
|
||||
:imgs="row.IMG_PATH ? fnToArray(row.IMG_PATH) : []"
|
||||
/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="ISTRUE" label="是否审核">
|
||||
<template v-slot="{ row }">
|
||||
<span v-if="row.ISTRUE === 3">未审核</span>
|
||||
<span v-if="row.ISTRUE === 2">已审核 忽略报警</span>
|
||||
<span v-if="row.ISTRUE === 1">已审核 真实报警</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" width="250">
|
||||
<template v-slot="{ row }">
|
||||
<el-button
|
||||
v-if="row.ISTRUE === 3"
|
||||
type="primary"
|
||||
text
|
||||
link
|
||||
@click="fnAddOrEdit(row.AIWARNING_ID, 'edit')"
|
||||
>
|
||||
审核
|
||||
</el-button>
|
||||
<el-button type="primary" text link @click="fnDeleteAiWarning(row)">
|
||||
删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<template #button>
|
||||
<el-button type="danger" @click="fnBatchDelete()">
|
||||
批量删除
|
||||
</el-button>
|
||||
</template>
|
||||
</layout-table>
|
||||
</layout-card>
|
||||
<add
|
||||
v-model:visible="data.addDialog.Visible"
|
||||
v-model:form="data.addDialog.form"
|
||||
:type="data.addDialog.type"
|
||||
@get-data="fnResetPagination"
|
||||
/>
|
||||
<video-view
|
||||
v-model:visible="data.videoDialog.visible"
|
||||
:src="data.videoDialog.src"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { serialNumber } from "@/assets/js/utils.js";
|
||||
import useListData from "@/assets/js/useListData.js";
|
||||
import LayoutTooltipImg from "@/components/tooltip_img/index.vue";
|
||||
|
||||
import {
|
||||
getAiWarningList,
|
||||
getAiWarningView,
|
||||
setAiWarningDelete,
|
||||
} from "@/request/aiwarning_manager.js";
|
||||
import Add from "./components/add.vue";
|
||||
import { nextTick, reactive } from "vue";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import { debounce } from "throttle-debounce";
|
||||
|
||||
const data = reactive({
|
||||
addDialog: {
|
||||
Visible: false,
|
||||
type: "",
|
||||
form: {
|
||||
VIDEONAME: "",
|
||||
VIDEOURL: "",
|
||||
CODE: "",
|
||||
},
|
||||
},
|
||||
videoDialog: {
|
||||
visible: false,
|
||||
src: "",
|
||||
},
|
||||
});
|
||||
|
||||
const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } =
|
||||
useListData(getAiWarningList);
|
||||
const fnDeleteAiWarning = async (row) => {
|
||||
if (row) {
|
||||
const ids = [];
|
||||
ids.push(row.AIWARNING_ID);
|
||||
await ElMessageBox.confirm("确定要删除吗?", { type: "warning" });
|
||||
await setAiWarningDelete({
|
||||
AIWARNING_IDS: ids.join(","),
|
||||
});
|
||||
ElMessage.success("删除成功");
|
||||
fnResetPagination();
|
||||
}
|
||||
};
|
||||
const fnToArray = (value) => {
|
||||
const arr = [];
|
||||
arr.push({ FILEPATH: value });
|
||||
return arr;
|
||||
};
|
||||
const fnBatchDelete = debounce(
|
||||
1000,
|
||||
async () => {
|
||||
const selectionData = tableRef.value.getSelectionRows();
|
||||
if (selectionData.length === 0) {
|
||||
ElMessage.warning("请选中要删除的项");
|
||||
return;
|
||||
}
|
||||
await ElMessageBox.confirm("确定要删除选中的数据吗?", { type: "warning" });
|
||||
const DATA_IDS = selectionData.map((item) => item.AIWARNING_ID).join(",");
|
||||
await setAiWarningDelete({ AIWARNING_IDS: DATA_IDS });
|
||||
ElMessage.success("删除成功");
|
||||
fnResetPagination();
|
||||
},
|
||||
{ atBegin: true }
|
||||
);
|
||||
const fnAddOrEdit = async (AIWARNING_ID, type) => {
|
||||
data.addDialog.Visible = true;
|
||||
await nextTick();
|
||||
data.addDialog.type = type;
|
||||
if (type === "edit") {
|
||||
const resData = await getAiWarningView({ AIWARNING_ID });
|
||||
data.addDialog.form = resData.pd;
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped></style>
|
Loading…
Reference in New Issue