xialashijian

This commit is contained in:
2309368887@qq.com 2022-07-05 09:14:57 +08:00
parent cf9f738a3d
commit 6de230462d
8 changed files with 247 additions and 259 deletions

View File

@ -66,8 +66,16 @@ export default {
);
}
},
read:{
name: "详情",
req: async function (id) {
return await http.get(
`${config.API_URL}/ecm/event/${id}/`);
}
},
}
,
myevent:{
list: {
name: "获取",

View File

@ -84,6 +84,28 @@ const routes = [
"icon": "el-icon-menu",
},
"component": "ecm/event"
}
,
{
"name": "eventfrom",
"path": "/ecm/event_from",
"meta": {
"title": "作业详情",
"icon": "el-icon-menu",
"hidden": true
},
"component": "ecm/event_from"
}
,
{
"name": "eventhandlefrom",
"path": "/ecm/event_handlefrom",
"meta": {
"title": "处理作业",
"icon": "el-icon-menu",
"hidden": true
},
"component": "ecm/event_handlefrom"
},
{
"name": "myevent",

View File

@ -37,9 +37,6 @@
:value="items.id"
>事件种类{{ items.name }}</el-span>
</div>
<div style="width:100px">
<p v-if="item.can_handle">可处理</p>
@ -122,7 +119,7 @@ export default {
getMyVents() {
this.$API.ecm.myevent.list.req({ page: 0 }).then((res) => {
this.msgList = res;
console.log(this.msgList.event_);
});
},
//

View File

@ -136,7 +136,7 @@ export default {
setData(data) {
Object.assign(this.form, data);
debugger;
console.log(this.form);
},
},
};

View File

@ -116,22 +116,16 @@
</scTable>
</el-main>
</el-container>
<save-dialog
v-if="dialog.save"
ref="saveDialog"
@closed="dialog.save = false"
></save-dialog>
</template>
<script>
import { CircleCheckFilled, CircleCloseFilled } from "@element-plus/icons-vue";
import saveDialog from "./event_from.vue";
export default {
name: "event",
components: {
CircleCheckFilled,
CircleCloseFilled,
saveDialog
},
data() {
return {
@ -150,17 +144,23 @@ export default {
methods: {
//
table_show(row) {
this.dialog.save = true;
this.$nextTick(() => {
this.$refs.saveDialog.open("show").setData(row);
this.$router.push({
name: "eventfrom",
query: {
id: row.id,
},
});
},
//
table_handle(row) {
this.dialog.save = true;
this.$nextTick(() => {
this.$refs.saveDialog.open("show").setData(row);
this.$router.push({
name: "eventhandlefrom",
query: {
id: row.id,
},
});
},
//
upsearch() {},

View File

@ -1,45 +1,41 @@
<template>
<el-drawer
:title="titleMap[mode]"
v-model="visible"
:size="1000"
destroy-on-close
@closed="closeDrawer"
>
<el-container v-loading="loading">
<!--<sc-title title="详细信息"></sc-title>-->
<el-main style="padding: 0 20px 20px 20px">
<el-container v-loading="loading">
<!--<sc-title title="详细信息"></sc-title>-->
<el-main style="padding: 0 20px 20px 20px">
<el-card class="box-card">
<sc-title title="事件基本信息"></sc-title>
<el-form :model="form" :disabled="mode === 'show'" label-width="120px">
<el-row>
<el-col :md="12" :sm="24">
<el-col :md="8" :sm="24">
<el-form-item label="事件种类" prop="cates">
<el-tag v-for="item in form.cates_"
:key="item.id"
:label="item.name"
:value="item.id">{{item.name}}</el-tag>
<el-tag
v-for="item in form.cates_"
:key="item.id"
:label="item.name"
:value="item.id"
>{{ item.name }}</el-tag
>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24" v-if="form.area">
<el-col :md="8" :sm="24" v-if="form.area">
<el-form-item label="发生区域" prop="area">
<el-input v-model="form.area_.name" clearable></el-input>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24" v-if="form.employee">
<el-col :md="8" :sm="24" >
<el-form-item label="当事人" prop="employee">
<el-input v-model="form.employee_.name" clearable></el-input>
<el-tag v-if="form.employee" clearable>{{ form.employee_.name }}</el-tag>
<el-tag v-else clearable>未知人员</el-tag>
</el-form-item>
</el-col>
<el-col
:md="12"
:md="8"
:sm="24"
v-if="form.employee && form.employee_.type"
>
<el-form-item label="人员类型" prop="employee">
<el-select v-model="form.employee_.type" style="width: 100%">
<el-select v-model="form.employee_.type" style="width: 100%">
<el-option
v-for="item in type_options"
:key="item.id"
@ -47,45 +43,34 @@
:value="item.id"
/>
</el-select>
</el-form-item>
</el-col>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-col :md="8" :sm="24">
<el-form-item label="发生时间">
<el-input
v-model="form.create_time"
clearable
></el-input>
<el-input v-model="form.create_time" clearable></el-input>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-col :md="8" :sm="24">
<el-form-item label="处理人">
<el-input v-model="form.handle_user" />
<el-input v-model="form.handle_user_name" />
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-col :md="8" :sm="24">
<el-form-item label="处理时间">
<el-input
v-model="form.handle_time"
clearable
></el-input>
<el-input v-model="form.handle_time" clearable></el-input>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-col :md="8" :sm="24">
<el-form-item label="处理描述">
<el-input
v-model="form.handle_desc"
clearable
></el-input>
<el-input v-model="form.handle_desc" clearable></el-input>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-col :md="6" :sm="24">
<el-form-item label="事件标记">
<el-select v-model="form.mark " style="width: 100%">
<el-select v-model="form.mark" style="width: 100%">
<el-option
v-for="item in mark_options"
:key="item.id"
@ -93,40 +78,36 @@
:value="item.id"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-col :md="6" :sm="24">
<el-form-item label="是否超时">
<el-switch v-model="form.is_timeout" />
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-col :md="6" :sm="24">
<el-form-item label="人脸照">
<sc-upload
v-model="form.face_img"
title="人脸照"
></sc-upload>
<sc-upload v-model="form.face_img" title="人脸照"></sc-upload>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-col :md="6" :sm="24">
<el-form-item label="全景照">
<sc-upload v-model="form.global_img" title="全景照"></sc-upload>
</el-form-item>
</el-col>
</el-row>
</el-form>
<scTable
<sc-title title="事件推送列表"></sc-title>
<scTable
ref="table"
:data="remindData"
row-key="id"
height="250px"
height="300px"
fit
stripe
@resetQuery="resetQuery"
hidePagination
>
<el-table-column label="#" type="index" width="50"></el-table-column>
<el-table-column label="事件种类">
@ -140,17 +121,17 @@
>
</template>
</el-table-column>
<el-table-column
label="警报信息"
prop="event_.voice_msg"
></el-table-column>
<el-table-column
label="接收人"
prop="recipient_.name"
></el-table-column>
<el-table-column label="是否可处理" prop="can_handle">
<template #default="scope">
<el-span v-if="scope.row.can_handle"></el-span>
@ -165,28 +146,22 @@
</el-table-column>
<el-table-column label="创建时间" prop="create_time"></el-table-column>
</scTable>
</el-main>
</el-container>
</el-drawer>
</el-card>
</el-main>
</el-container>
</template>
<script>
const defaultForm = {
id: null,
};
export default {
name: "eventfrom",
emits: ["success", "closed"],
data() {
return {
loading: false,
visible: false,
isSaveing: false,
form: defaultForm,
mode: "show",
titleMap: {
show: "事件信息查看",
@ -196,53 +171,56 @@ export default {
{ id: "remployee", name: "相关方" },
{ id: "visitor", name: "访客" },
],
mark_options: [
mark_options: [
{ id: 10, name: "正常" },
{ id: 20, name: "误报" }
{ id: 20, name: "误报" },
],
remindData:[],
eventID:""
form: [],
remindData: [],
eventID: "",
};
},
mounted() {
this.eventID = this.$route.query.id; //ID
this.getEvent();
this.getRemind();
},
methods: {
getRemind() {
console.log(this.eventID)
this.$API.ecm.remind.list.req({event:this.eventID,page: 0 }).then((res) => {
this.remindData = res;
getEvent() {
this.$API.ecm.event.read.req(this.eventID).then((res) => {
this.form = res;
});
},
//
open(mode) {
this.mode = mode;
this.visible = true;
return this;
},
closeDrawer() {
this.visible = false;
this.$emit("closed");
},
//
setData(data) {
//debugger;
console.log(defaultForm);
// this.form = defaultForm;
Object.assign(this.form, data);
this.eventID=this.form.id;
this.getRemind();
},
//
setFilters(filters) {
this.selectionFilters = filters;
this.setFiltersVisible = true;
getRemind() {
this.$API.ecm.remind.list
.req({ event: this.eventID, page: 0 })
.then((res) => {
this.remindData = res;
});
},
},
};
</script>
<style>
<style scoped>
.text {
font-size: 14px;
}
.item {
margin-bottom: 18px;
}
.clearfix:before,
.clearfix:after {
display: table;
content: "";
}
.clearfix:after {
clear: both
}
.box-card {
width: 100%;
}
</style>

View File

@ -1,45 +1,43 @@
<template>
<el-drawer
:title="titleMap[mode]"
v-model="visible"
:size="1000"
destroy-on-close
@closed="closeDrawer"
>
<el-container v-loading="loading">
<!--<sc-title title="详细信息"></sc-title>-->
<el-main style="padding: 0 20px 20px 20px">
<el-form :model="form" :disabled="mode === 'show'" label-width="120px">
<el-container v-loading="loading">
<!--<sc-title title="详细信息"></sc-title>-->
<el-main style="padding: 0 20px 20px 20px">
<el-card class="box-card">
<sc-title title="事件基本信息"> </sc-title>
<el-form :model="form" label-width="120px">
<el-row>
<el-col :md="12" :sm="24">
<el-form-item label="事件种类" prop="cates">
<el-tag v-for="item in form.cates_"
:key="item.id"
:label="item.name"
:value="item.id">{{item.name}}</el-tag>
<el-col :md="4" :sm="24">
<el-form-item label="事件种类" prop="cates">
<el-tag
v-for="item in form.cates_"
:key="item.id"
:label="item.name"
:value="item.id"
>{{ item.name }}</el-tag
>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24" v-if="form.area">
<el-form-item label="发生区域" prop="area">
<el-input v-model="form.area_.name" clearable></el-input>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24" v-if="form.employee">
<el-col :md="4" :sm="24" >
<el-form-item label="当事人" prop="employee">
<el-input v-model="form.employee_.name" clearable></el-input>
<el-tag v-if="form.employee" clearable>{{ form.employee_.name }}</el-tag>
<el-tag v-else clearable>未知人员</el-tag>
</el-form-item>
</el-col>
<el-col :md="8" :sm="24" v-if="form.area">
<el-form-item label="发生区域" prop="area">
<el-input v-model="form.area_.name" clearable :disabled="true"></el-input>
</el-form-item>
</el-col>
<el-col
:md="12"
:md="8"
:sm="24"
v-if="form.employee && form.employee_.type"
>
<el-form-item label="人员类型" prop="employee">
<el-select v-model="form.employee_.type" style="width: 100%">
<el-select v-model="form.employee_.type" style="width: 100%" :disabled="true">
<el-option
v-for="item in type_options"
:key="item.id"
@ -47,45 +45,41 @@
:value="item.id"
/>
</el-select>
</el-form-item>
</el-col>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-col :md="8" :sm="24">
<el-form-item label="发生时间">
<el-input
v-model="form.create_time"
clearable
></el-input>
<el-input v-model="form.create_time" clearable :disabled="true"></el-input>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-col :md="8" :sm="24">
<el-form-item label="是否超时">
<el-switch v-model="form.is_timeout" :disabled="true"/>
</el-form-item>
</el-col>
<el-col :md="8" :sm="24">
<el-form-item label="人脸照">
<sc-upload v-model="form.face_img" title="人脸照" :disabled="true"></sc-upload>
</el-form-item>
</el-col>
<el-col :md="8" :sm="24">
<el-form-item label="全景照">
<sc-upload v-model="form.global_img" title="全景照" :disabled="true"></sc-upload>
</el-form-item>
</el-col>
<el-col :md="8" :sm="24">
<el-form-item label="处理人">
<el-input v-model="form.handle_user" />
<el-input v-model="form.handle_user_name" />
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="处理时间">
<el-input
v-model="form.handle_time"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="处理描述">
<el-input
v-model="form.handle_desc"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-col :md="6" :sm="24">
<el-form-item label="事件标记">
<el-select v-model="form.mark " style="width: 100%">
<el-select v-model="form.mark" style="width: 100%" >
<el-option
v-for="item in mark_options"
:key="item.id"
@ -93,40 +87,27 @@
:value="item.id"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="是否超时">
<el-switch v-model="form.is_timeout" />
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="人脸照">
<sc-upload
v-model="form.face_img"
title="人脸照"
></sc-upload>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="全景照">
<sc-upload v-model="form.global_img" title="全景照"></sc-upload>
<el-col :md="8" :sm="24">
<el-form-item label="处理描述">
<el-input v-model="form.handle_desc" clearable ></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row><el-col> <el-button type="primary" style="float:right" @click="submit()">提交</el-button></el-col></el-row>
</el-form>
<scTable
<sc-title title="事件推送列表"></sc-title>
<scTable
ref="table"
:data="remindData"
row-key="id"
height="250px"
height="300px"
fit
stripe
@resetQuery="resetQuery"
hidePagination
>
<el-table-column label="#" type="index" width="50"></el-table-column>
<el-table-column label="事件种类">
@ -140,17 +121,17 @@
>
</template>
</el-table-column>
<el-table-column
label="警报信息"
prop="event_.voice_msg"
></el-table-column>
<el-table-column
label="接收人"
prop="recipient_.name"
></el-table-column>
<el-table-column label="是否可处理" prop="can_handle">
<template #default="scope">
<el-span v-if="scope.row.can_handle"></el-span>
@ -165,28 +146,22 @@
</el-table-column>
<el-table-column label="创建时间" prop="create_time"></el-table-column>
</scTable>
</el-main>
</el-container>
</el-drawer>
</el-card>
</el-main>
</el-container>
</template>
<script>
const defaultForm = {
id: null,
};
export default {
name: "eventfrom",
emits: ["success", "closed"],
data() {
return {
loading: false,
visible: false,
isSaveing: false,
form: defaultForm,
mode: "show",
titleMap: {
show: "事件信息查看",
@ -196,53 +171,61 @@ export default {
{ id: "remployee", name: "相关方" },
{ id: "visitor", name: "访客" },
],
mark_options: [
mark_options: [
{ id: 10, name: "正常" },
{ id: 20, name: "误报" }
{ id: 20, name: "误报" },
],
remindData:[],
eventID:""
form: [],
remindData: [],
eventID: "",
};
},
mounted() {
this.eventID = this.$route.query.id; //ID
this.getEvent();
this.getRemind();
},
methods: {
getRemind() {
console.log(this.eventID)
this.$API.ecm.remind.list.req({event:this.eventID,page: 0 }).then((res) => {
this.remindData = res;
getEvent() {
this.$API.ecm.event.read.req(this.eventID).then((res) => {
this.form = res;
});
},
//
open(mode) {
this.mode = mode;
this.visible = true;
return this;
},
closeDrawer() {
this.visible = false;
this.$emit("closed");
getRemind() {
this.$API.ecm.remind.list
.req({ event: this.eventID, page: 0 })
.then((res) => {
this.remindData = res;
});
},
submit(){
//
setData(data) {
//debugger;
console.log(defaultForm);
// this.form = defaultForm;
Object.assign(this.form, data);
this.eventID=this.form.id;
this.getRemind();
},
//
setFilters(filters) {
this.selectionFilters = filters;
this.setFiltersVisible = true;
},
}
},
};
</script>
<style>
<style scoped>
.text {
font-size: 14px;
}
.item {
margin-bottom: 18px;
}
.clearfix:before,
.clearfix:after {
display: table;
content: "";
}
.clearfix:after {
clear: both
}
.box-card {
width: 100%;
}
</style>