xuhaoyun 1 year ago
commit abdb629143

@ -23,4 +23,36 @@ export function get_backlog(data) {
method: 'post',
data
})
}
// 待办任务公司树查询
export function get_backlog_company_tree(params) {
return request({
url: '/closedloopdisposal/workflow/dept/list',
method: 'get',
params
})
}
// 审批流程
export function get_backlog_approve(data) {
return request({
url: '/workflow/external/task/approve',
method: 'post',
data
})
}
// 已办任务查询
export function get_complete(data) {
return request({
url: '/workflow/external/finishedList',
method: 'post',
data
})
}
// 抄送我的查询
export function get_copy(data) {
return request({
url: '/workflow/external/copyList',
method: 'post',
data
})
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 341 KiB

@ -7,7 +7,7 @@ const request = axios.create({
baseURL: 'http://172.18.113.50:8080/zhapi',
//baseURL: 'http://172.18.113.13:8080/zhapi', // 孙强
//baseURL: 'http://192.168.0.188:8888/zhapi',
// baseURL: `http://${window.location.host}/zhapi`,
baseURL: `http://${window.location.host}/zhapi`,
timeout: 50000,
headers: { 'content-type': 'application/json' },
})

@ -39,10 +39,10 @@
</el-table-column>
<el-table-column prop="course_type" label="流程类型" width="280">
</el-table-column>
<el-table-column prop="course_status" label="流程状态" width="220">
<el-table-column prop="process_status" label="流程状态" width="220">
<template slot-scope="scope">
<div :style="{ color: styleChange(scope.row.course_status) }">
{{ scope.row.course_status }}
<div :style="{ color: styleChange(scope.row.process_status) }">
{{ scope.row.process_status }}
</div>
</template>
</el-table-column>
@ -126,6 +126,9 @@ export default {
total: 0,
};
},
created() {
this.search_data();
},
methods: {
search_data() {
let param = {
@ -142,6 +145,11 @@ export default {
searchKey: this.search.word,
};
get_backlog(param).then((res) => {
//
for( let i = 0; i<res.rows.length;i++) {
res.rows[i].process_status = this.process_change(res.rows[i].alarmStatus)
}
console.log('res.rows',res.rows);
this.table_data = res.rows;
this.total = res.total;
})
@ -208,16 +216,27 @@ export default {
//
styleChange(val) {
switch (val) {
case "进行中":
case "审核中":
return "#3eba75";
// case "yellow":
// return "#FDA722";
case "处置成功":
case "审核完成":
return "#2eb9ef";
case "处置失败":
case "驳回完成":
return "#e55b5b";
}
},
//
process_change(val) {
switch(val) {
case 1 :
return "审核中";
case 2 :
return "审核完成";
case 3 :
return "驳回完成";
}
},
handleSizeChange(val) {
console.log(`每页 ${val}`);
this.pageNum = 1;
@ -235,7 +254,7 @@ export default {
<style lang="less" scoped>
/deep/.el-table {
// width: 96vw;
height: 60vh;
height: 57vh;
background: rgba(0, 0, 0, 0);
border: 0.1px solid #3f5564;
thead {

@ -6,6 +6,7 @@
<BacklogDetailForm
ref="backlogDetailForm"
:backlog_detail="backlog_detail"
@back_home_page="back_home_page"
></BacklogDetailForm>
</el-tab-pane>
<el-tab-pane label="流程图" name="second">
@ -39,6 +40,11 @@ export default {
activeName: "first",
};
},
methods:{
back_home_page() {
this.$emit('back_home_page')
},
}
};
</script>
<style lang="less" scoped>

@ -0,0 +1,294 @@
<template>
<!-- 请选择抄送部门 -->
<el-dialog
class="dialog"
title="请选择抄送部门"
:visible.sync="visible"
:close-on-click-modal="false"
width="600px"
@close="close"
>
<div class="tree_title">宁波市公安局镇海分局</div>
<div class="tree_body">
<div class="tree_input">
<el-input
v-model="section_search"
placeholder="请输入部门名称查询"
></el-input>
<div class="section_btn" @click="handle_click()">
<i class="el-icon-search"></i>
</div>
</div>
<!-- 部门树 -->
<div class="section_tree">
<el-tree
ref="company_tree"
:data="tree_data"
:props="defaultProps"
show-checkbox
node-key="id"
:default-expand-all="defaultExpandAll"
:default-checked-keys="default_keys"
@check="handle_check"
>
<span
slot-scope="{ node }"
:title="node.label"
class="el-tree-node__label node-label"
>
{{ node.label }}
</span>
</el-tree>
</div>
</div>
<div class="form_btn" slot="footer">
<el-button @click="close"> </el-button>
<el-button @click="enter"> </el-button>
</div>
</el-dialog>
</template>
<script>
import { get_backlog_company_tree } from "@/api/closeLoopDispose";
export default {
name: "backlogDetailDialog",
data() {
return {
visible: false,
section_search: "",
tree_data: [],
defaultProps: {
children: "children",
label: "name",
},
defaultExpandAll: true, //
company_list: [],
default_keys: [], //
};
},
methods: {
open() {
this.visible = true;
this.handle_click();
console.log("this.company_list", this.company_list);
//
if (this.company_list != []) {
this.default_keys = this.company_list.map((item) => item.id);
console.log('this.default_keys',this.default_keys);
}
},
handle_click() {
let param = {
deptName: this.section_search,
};
get_backlog_company_tree(param).then((res) => {
this.tree_data = res.data;
});
},
handle_check(data, checkedData) {
console.log("data", data);
console.log("checkedData", checkedData);
this.company_list = checkedData.checkedNodes; //
},
//
enter() {
this.$emit("push_data", this.company_list);
this.visible = false;
},
close() {
this.visible = false;
},
},
};
</script>
<style lang="less" scoped>
/deep/.el-dialog {
.el-dialog__title {
color: #fff;
font-size: 19px;
text-shadow: 0 0 9px rgba(21, 255, 198, 0.64);
}
background-image: url("~@/assets/companyFile/dialogBack.png");
background-size: 100% 100%;
background-repeat: no-repeat;
height: 800px;
/* 关闭弹窗叉号 */
.el-dialog__headerbtn {
.el-dialog__close {
color: #e55b5b;
font-size: 18px;
font-weight: 500;
}
}
.el-dialog__body {
padding: 0px;
padding-left: 15px;
padding-right: 15px;
.tree_title {
color: #fff;
margin-top: 3vh;
font-size: 19px;
// border: 1px solid #4a6072;
}
.tree_body {
margin-top: 1vh;
height: 600px;
border: 1px solid #4a6072;
background: url("~@/assets/companyFile/09091.png") no-repeat;
background-size: 100% 100%;
.tree_input {
display: flex;
border: 0.1px solid #5b748c;
margin-left: 8px;
margin-top: 10px;
width: 550px;
.el-input__inner {
// margin-left: 8px;
// margin-top: 10px;
width: 500px;
border-radius: 0px;
background: rgba(0, 0, 0, 0);
color: #fff;
border: 0.1px solid #5b748c;
}
/* 查询框点击颜色变化 */
.el-input__inner:focus,
.el-input__inner:hover {
border-color: #5b748c;
}
.section_btn {
width: 50px;
border-radius: 0px;
background: #0e3936;
text-align: center;
font-size: 28px;
border: 0.1px solid #5b748c;
cursor: pointer;
.el-icon-search {
color: #fff;
padding: 12% 0;
}
}
.section_btn:focus,
.section_btn:hover {
/* 放大镜点击特效 */
background: #126a58;
}
}
}
.section_tree {
margin-top: 1vh;
margin-left: 8px;
width: 550px;
// border: 0.1px solid #5b748c;
height: 49vh;
// overflow-y: auto;
}
// .section_tree::-webkit-scrollbar {
// display: none;
// width: 6px;
// background-color: #5e666a;
// border-radius: 4px;
// }
// .section_tree::-webkit-scrollbar-thumb {
// display: none;
// width: 5px;
// background-color: #3c4b4a;
// border-radius: 4px;
// }
}
.el-button {
width: 120px;
border: 1px solid #4a6072;
color: #fff;
border-radius: 0px !important;
background: #323f43;
}
.el-button:focus,
.el-button:hover {
color: #34e1b3;
background: url("~@/assets/companyFile/btn05.png") no-repeat !important;
background-size: 100% 100% !important;
}
.el-tree {
/* 树形数据过长添加滚动条 */
height: 49vh;
overflow: auto;
// box-shadow: 5px 5px 10px #126a58;
border-radius: 0px;
// background: #293738;
background: rgba(0, 0, 0, 0);
border: 0.1px solid #485f6c;
color: #fff !important;
.el-tree-node__content {
height: 50px;
}
.el-tree-node__label.node-label {
display: flex;
font-size: 18px;
}
/* 去掉树形数据前面的三角形 */
.el-icon-caret-right:before {
content: "";
}
.node-label {
/* 树形数据横向过长添加展开 */
width: 100%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
/* hover节点时的背景颜色 */
.el-tree-node__content:hover {
background: #495461;
color: #fff;
text-shadow: 0 0 9px rgba(21, 255, 198, 0.64);
}
/* 节点选中的背景颜色 */
.el-tree-node:focus > .el-tree-node__content {
background: #495461;
color: #fff;
text-shadow: 0 0 9px rgba(21, 255, 198, 0.64);
}
//
.el-tree.el-icon-caret-right:before {
background: url("~@/assets/companyFile/add.png") no-repeat;
content: "";
display: block;
width: 23px;
height: 23px;
font-size: 23px;
background-size: 23px;
}
//
.el-tree.el-tree-node__expand-icon.expanded.el-icon-caret-right:before {
background: url("~@/assets/companyFile/add.png") no-repeat;
content: "";
display: block;
width: 23px;
height: 23px;
font-size: 23px;
background-size: 23px;
}
// minus
.el-tree.el-tree-node__expand-icon.is-leaf::before {
background: url("~@/assets/companyFile/minus.png") no-repeat;
content: "";
display: block;
width: 23px;
height: 23px;
font-size: 23px;
background-size: 23px;
}
}
.el-tree::-webkit-scrollbar {
width: 9px;
background-color: #5e666a;
border-radius: 4px;
}
.el-tree::-webkit-scrollbar-thumb {
width: 8px;
background-color: #3c4b4a;
border-radius: 4px;
}
}
</style>

@ -68,15 +68,25 @@
<el-input type="textarea" v-model="form.suggest"></el-input>
</el-form-item>
<el-form-item label="抄送部门">
<el-input
<!-- <el-input
v-model="form.section"
>
<i slot="suffix" class="el-input__icon el-icon-date" @click="handle_click()"></i>
</el-input>
<i slot="suffix" class="el-input__icon el-icon-search" @click="handle_click()"></i>
</el-input> -->
<div class="push_company">
<div class="push_tags">
<el-tag v-for="tag in tags" :key="tag.name">
{{ tag.name }}
</el-tag>
</div>
<div class="icon_btn">
<i class="el-icon-search" @click="handle_click()"></i>
</div>
</div>
</el-form-item>
<el-form-item>
<el-button>处置完成</el-button>
<el-button class="dispose_lose">处置失败</el-button>
<el-button @click="dispose_complete"></el-button>
<el-button class="dispose_lose" @click="dispose_fail"></el-button>
</el-form-item>
</el-form>
</div>
@ -86,8 +96,8 @@
<div class="backlog_idea_body">
<!-- 遍历展示人员信息 -->
<div
v-for="item in backlog_list"
:key="item.id"
v-for="item in opinion_list"
:key="item.taskDefKey"
class="backlog_idea_person"
>
<div class="backlog_idea_person_img">
@ -97,42 +107,51 @@
</div>
</el-image>
<div class="backlog_idea_person_information">
<div class="backlog_idea_person_name">{{ item.name }}</div>
<div class="backlog_idea_person_team">{{ item.team }}</div>
<div class="backlog_idea_person_name">{{ item.assigneeName }}</div>
<div class="backlog_idea_person_team">{{ item.candidate }}</div>
</div>
</div>
<div class="backlog_idea_person_text">
<!-- 第一行处理意见 -->
<div class="dispose_idea">
<div class="backlog_text">处理意见:</div>
<div class="backlog_value">{{ item.backlog_value }}</div>
<div class="backlog_value">{{ item.comment }}</div>
</div>
<!-- 第二行附件 按需显示或者隐藏 -->
<div v-if="attachment_show" class="attachment">
<div class="backlog_text">附件:</div>
<!-- <div v-if="attachment_show" class="attachment">
<div class="backlog_text">附件:</div> -->
<!-- 此处后面会改为下载图片链接 -->
<div class="backlog_value">{{ item.attachment_value }}</div>
</div>
<!-- <div class="backlog_value">{{ item.attachment_value }}</div>
</div> -->
<!-- 第三行抄送人 -->
<div class="send_person">
<div class="backlog_text">抄送人:</div>
<div class="backlog_value">{{ item.send_person }}</div>
<div class="backlog_value">{{ item.assigneeName }}</div>
</div>
<!-- 第四行时间 -->
<div class="backlog_time">
<div class="backlog_text">时间:</div>
<div class="backlog_value">{{ item.backlog_time }}</div>
<div class="backlog_value">{{ item.createTime }}</div>
</div>
</div>
</div>
</div>
</div>
<BacklogDetailDialog
ref="backlogDetailDialog"
@push_data="push_data"
></BacklogDetailDialog>
</div>
</template>
<script>
import BacklogDetailDialog from "./backlogDetailDialog";
import { get_my_course_record } from "@/api/closeLoopDispose";
import { get_backlog_approve } from "@/api/closeLoopDispose";
export default {
name: "BacklogDetailForm",
components: {
BacklogDetailDialog,
},
props: {
backlog_detail: {},
},
@ -190,7 +209,9 @@ export default {
{ label: "驳回", value: "3" },
{ label: "处置中", value: "4" },
],
tags: [],
process_status: "", //
opinion_list: [], //
};
},
created() {
@ -206,12 +227,50 @@ export default {
this.process_status = this.status_list.find(
(item) => item.value == this.basic_message.alarmStatus
).label;
this.opinion_list = res.data.doneTaskVoList; //
});
},
methods: {
handle_click() {
console.log('11111');
this.$refs.backlogDetailDialog.open();
},
//
push_data(val) {
console.log("dalog", val);
this.tags = val;
// let list = val.map((item) => item.name);
// this.form.section = list.slice(0, 3).toString();
},
//
dispose_complete() {
let param = {
procInsId: this.backlog_detail.procInsId,
taskId: this.backlog_detail.taskId,
comment:this.form.suggest,
approveType:'2',
copyDeptIds: this.tags.map(item =>item.id)
};
get_backlog_approve(param).then(res=>{
console.log('res_approve',res);
this.$message.success('处置通过')
this.$emit('back_home_page') //
});
},
//
dispose_fail() {
let param = {
procInsId: this.backlog_detail.procInsId,
taskId: this.backlog_detail.taskId,
comment:this.form.suggest,
approveType:'3',
copyDeptIds: this.tags.map(item =>item.id)
};
get_backlog_approve(param).then(res=>{
console.log('res_approve',res);
this.$message.warning('处置失败')
this.$emit('back_home_page') //
});
}
},
};
</script>
@ -465,7 +524,7 @@ export default {
margin-left: 1vw;
display: flex;
.backlog_idea_person_img {
width: 10vw;
width: 15vw;
height: 7vh;
margin-left: 1.5vw;
// border: 0.1px solid #3f5564;
@ -521,14 +580,37 @@ export default {
}
/deep/.el-form {
margin-top: 1vh;
overflow: auto;
height: 24.5vh;
// border: 0.1px solid #3f5564;
.el-form-item {
.push_company {
border: 0.1px solid #3f5564;
// height: 4vh;
display: flex;
justify-content: space-between;
.icon_btn {
width: 42px !important;
height: 4vh;
// border: 0.1px solid #3f5564;
color: #3f5564;
text-align: center;
line-height: 4vh;
cursor: pointer;
font-size: 16px;
}
.icon_btn:focus,
.icon_btn:hover {
text-shadow: 0 0 9px rgba(21, 255, 198, 0.64);
}
}
.el-form-item__label {
text-align: center;
color: #fff;
}
}
.el-form-item__content {
width: 25vw;
width: 26vw;
.el-input__inner {
width: 25vw;
border-radius: 0px;
@ -597,4 +679,23 @@ export default {
background: #323f43 !important;
}
}
.el-form::-webkit-scrollbar {
display: none;
width: 6px;
background-color: #5e666a;
border-radius: 4px;
}
.el-form::-webkit-scrollbar-thumb {
display: none;
width: 5px;
background-color: #3c4b4a;
border-radius: 4px;
}
.el-tag {
color: #fff;
border-radius: 0px;
background: rgba(0, 0, 0, 0);
border: 0.1px solid #3f5564;
text-shadow: 0 0 9px rgba(21, 255, 198, 0.64);
}
</style>

@ -0,0 +1,303 @@
<template>
<!-- 流程记录 -->
<div class="record_body">
<div class="all_step">
<div class="record_step" v-for="item in record_list" :key="item.taskId">
<!-- 侧边进度图标 -->
<div class="step">
<div class="step_icon">
<!-- assigneeId为空的时候为待选图标,为数值的时候为确定图标 -->
<i v-if="item.assigneeId != ''" class="el-icon-success"></i>
<i v-else class="el-icon-time"></i>
</div>
<!-- 进度线 -->
<div class="step_line"></div>
</div>
<div class="step_table">
<div class="step_table_top">
<div class="step_table_top_name">{{ item.taskName }}</div>
<div class="step_table_top_opeartion">
<div class="opeartion_num">
<div class="opeartion_num_text">操作者总计:</div>
<div class="opeartion_num_val">{{ item.doTotal }}</div>
</div>
<div class="opeartion_num">
<div class="opeartion_num_text">已操作:</div>
<div class="opeartion_num_val">
{{ item.finishTotal }}
</div>
</div>
<div class="opeartion_num">
<div class="opeartion_num_text">未操作:</div>
<div class="not_opeartion_num_val">
{{ item.todoTotal }}
</div>
</div>
</div>
</div>
<el-table
height="250"
:data="item.historyTaskList"
:header-cell-style="table_header"
:cell-style="{ background: 'revert', 'text-align': 'center' }"
>
<el-table-column prop="assigneeName" label="实际办理" width="280">
</el-table-column>
<el-table-column prop="candidate" label="候选办理" width="280">
</el-table-column>
<el-table-column prop="processType" label="操作状态" width="280">
</el-table-column>
<el-table-column prop="finishTime" label="接收时间" width="280">
</el-table-column>
<el-table-column
prop="createTime"
label="操作时间"
width="280"
>
</el-table-column>
<el-table-column prop="duration" label="耗时"> </el-table-column>
</el-table>
</div>
</div>
</div>
</div>
</template>
<script>
import { get_my_course_record } from "@/api/closeLoopDispose";
export default {
name: "BacklogDetailRecords",
props: {
backlog_detail: {},
},
data() {
return {
record_list: [
// {
// id: "1",
// name: "",
// opeartion_num: "2",
// have_opeartion_num: "1",
// not_opeartion_num: "1",
// table_list: [
// {
// change: "",
// under_change: "",
// type: "",
// load_time: "2023-06-06 12:53:30",
// time: "2023-06-06 12:53:30",
// use_time: "2",
// },
// ],
// },
// {
// id: "2",
// },
// {
// id: "3",
// name: "",
// },
],
src: require("../../../assets/companyFile/loadtrue.png"),
icon_show: true, //
step_line_show: true,
};
},
created() {
console.log("backlog_detail2", this.backlog_detail);
let param = {
definitionId: this.backlog_detail.procDefId,
deployId: this.backlog_detail.deployId,
procInsId: this.backlog_detail.procInsId,
taskId: this.backlog_detail.taskId,
};
get_my_course_record(param).then((res) => {
this.record_list = res.data.wfDetailVo.recordList;
console.log("this.record_list", this.record_list);
// for(let i = 0; i < this.record_list.length;i++) {
// if ( i + 1 == this.record_list.length ) {
// this.step_line_show = false
// } else {
// this.step_line_show = true
// }
// console.log('i + 1', i + 1);
// console.log('this.record_list', this.record_list.length);
// }
});
},
methods: {
//
table_header({ row, rowIndex }) {
console.log(row);
console.log(rowIndex);
return {
"text-align": "center", //
color: "#fff",
border: "0.1px solid #3b4f5c",
};
},
},
};
</script>
<style lang='less' scoped>
.record_body {
width: 95.9vw;
height: 70vh;
background: url("~@/assets/companyFile/09091.png") no-repeat !important;
background-size: 100% 100% !important;
overflow-y: scroll;
}
.record_body::-webkit-scrollbar {
display: none;
width: 6px;
background-color: #5e666a;
border-radius: 4px;
}
.record_body::-webkit-scrollbar-thumb {
display: none;
width: 5px;
background-color: #3c4b4a;
border-radius: 4px;
}
.all_step {
margin-top: 1vh;
}
/* 不固定高度,给自由展示空间 */
.record_step {
width: 94vw;
height: 31vh;
margin-left: 1vw;
// border: 0.1px solid #3f5564;
display: flex;
.step {
width: 30px;
// margin-top: 10%;
margin-left: 1vw;
height: 100%;
// border: 0.1px solid #fff;
display: flex;
flex-direction: column;
.step_icon {
width: 30px;
height: 30px;
// border: 0.1px solid #fff;
border-radius: 50%;
.el-icon-success {
font-size: 30px;
color: #41ffc4;
}
.el-icon-time {
font-size: 30px;
color: #38eafc;
}
}
.step_line {
flex-grow: 1;
width: 2px;
background: #56808f;
margin: auto;
}
}
.step_table {
margin-left: 1vw;
// border: 0.1px solid #fff;
width: 90vw;
// height: 30vh;
.step_table_top {
// border: 0.1px solid #fff;
width: 90vw;
height: 5vh;
display: flex;
justify-content: space-between;
.step_table_top_name {
width: 10vw;
color: #fff;
text-align: left;
font-size: 19px;
line-height: 3.5vh;
height: 5vh;
text-shadow: 0 0 9px rgba(21, 255, 198, 0.64);
}
.step_table_top_opeartion {
width: 21vw;
height: 5vh;
// border: 0.1px solid #fff;
display: flex;
.opeartion_num {
width: 7vw;
height: 5vh;
display: flex;
.opeartion_num_text {
width: 4vw;
height: 5vh;
color: #fff;
font-size: 16px;
line-height: 5vh;
text-align: center;
}
.opeartion_num_val {
width: 3vw;
height: 5vh;
color: #fff;
font-size: 16px;
line-height: 5vh;
text-align: center;
}
.not_opeartion_num_val {
width: 3vw;
height: 5vh;
color: #e75c5d;
font-size: 16px;
line-height: 5vh;
text-align: center;
}
}
}
}
}
}
/deep/.el-table {
// width: 96vw;
height: 25vh;
background: rgba(0, 0, 0, 0);
border: 0.1px solid #3f5564;
thead {
color: #fff;
font-weight: 500;
border: 0.1px solid #3f5564;
background: linear-gradient(
to right,
#284f49,
#2f6363 5%,
#233b38 80%
) !important;
& th {
background-color: transparent;
}
& tr {
background-color: transparent;
}
}
tr {
color: #fff;
background: rgba(0, 0, 0, 0);
}
}
/deep/ .el-table td.el-table__cell,
.el-table th.el-table__cell.is-leaf {
border: 0.1px solid #3f5564;
}
/deep/.el-table__body-wrapper::-webkit-scrollbar {
width: 6px;
background-color: #5e666a;
border-radius: 4px;
}
/deep/.el-table__body-wrapper::-webkit-scrollbar-thumb {
width: 5px;
background-color: #3c4b4a;
border-radius: 4px;
}
</style>

@ -51,16 +51,16 @@
</el-table-column>
<el-table-column prop="createTime" label="创建时间" width="240">
</el-table-column>
<el-table-column prop="course_type" label="流程类型" width="200">
<el-table-column prop="processType" label="流程类型" width="160">
</el-table-column>
<el-table-column prop="build_person" label="创建者" width="200">
<el-table-column prop="startUserName" label="创建者" width="200">
</el-table-column>
<el-table-column prop="build_unit" label="创建单位" width="200">
<el-table-column prop="startDeptName" label="创建单位" width="220">
</el-table-column>
<el-table-column prop="course_status" label="流程状态" width="200">
<el-table-column prop="process_status" label="流程状态" width="200">
<template slot-scope="scope">
<div :style="{ color: styleChange(scope.row.course_status) }">
{{ scope.row.course_status }}
<div :style="{ color: styleChange(scope.row.process_status) }">
{{ scope.row.process_status }}
</div>
</template>
</el-table-column>
@ -98,6 +98,7 @@
</div>
</template>
<script>
import { get_complete } from "@/api/closeLoopDispose";
export default {
name: "Complete",
data() {
@ -109,10 +110,10 @@ export default {
word: "",
},
complete_list: [
{ label: "待审核", value: "1" },
{ label: "通过", value: "2" },
{ label: "驳回", value: "3" },
{ label: "处置中", value: "4" },
// { label: "", value: "1" },
{ label: "审核中", value: "1" },
{ label: "审核完成", value: "2" },
{ label: "驳回完成", value: "3" },
],
pickerOptions: {
shortcuts: [
@ -151,6 +152,9 @@ export default {
total: 0,
};
},
created() {
this.search_data();
},
methods: {
change_complete(val) {
this.search.procStatus = this.complete_list.find(
@ -162,23 +166,49 @@ export default {
pageSize: this.pageSize,
page: this.pageNum,
startTime:
this.search.course_time == null
this.search.complete_time == null
? ""
: this.dateConversion(this.search.course_time[0]),
: this.dateConversion(this.search.complete_time[0]),
endTime:
this.search.course_time == null
this.search.complete_time == null
? ""
: this.dateConversion(this.search.course_time[1]),
: this.dateConversion(this.search.complete_time[1]),
searchKey: this.search.word,
procStatus: this.search.procStatus,
};
console.log(param);
get_complete(param).then((res) => {
//
for( let i = 0; i<res.rows.length;i++) {
res.rows[i].process_status = this.process_change(res.rows[i].alarmStatus)
}
console.log('res.rows',res.rows);
this.table_data = res.rows;
this.total = res.total;
});
},
reset() {
this.search.procStatus = "0";
this.search.complete_status = "";
this.search.complete_time = [this.get_today(), this.get_tomorrow()];
this.search.word = "";
this.search_data();
},
//
dateConversion(value) {
let date = new Date(value);
let y = date.getFullYear();
let m = date.getMonth() + 1;
m = m < 10 ? "0" + m : m;
let d = date.getDate();
d = d < 10 ? "0" + d : d;
let h = date.getHours();
h = h < 10 ? "0" + h : h;
let M = date.getMinutes();
M = M < 10 ? "0" + M : M;
let s = date.getSeconds();
s = s < 10 ? "0" + s : s;
let dateTime = y + "-" + m + "-" + d + " " + h + ":" + M + ":" + s;
return dateTime;
},
//
get_today() {
@ -221,24 +251,37 @@ export default {
//
styleChange(val) {
switch (val) {
case "进行中":
case "审核中":
return "#3eba75";
// case "yellow":
// return "#FDA722";
case "处置成功":
case "审核完成":
return "#2eb9ef";
case "处置失败":
case "驳回完成":
return "#e55b5b";
}
},
//
process_change(val) {
switch(val) {
case 1 :
return "审核中";
case 2 :
return "审核完成";
case 3 :
return "驳回完成";
}
},
handleSizeChange(val) {
console.log(`每页 ${val}`);
this.pageNum = 1;
this.pageSize = val;
this.search_data();
},
handleCurrentChange(val) {
console.log(`当前页: ${val}`);
this.pageNum = val;
this.search_data();
},
},
};
@ -246,7 +289,7 @@ export default {
<style lang="less" scoped>
/deep/.el-table {
// width: 96vw;
height: 60vh;
height: 57vh;
background: rgba(0, 0, 0, 0);
border: 0.1px solid #3f5564;
thead {

@ -3,33 +3,43 @@
<div>
<el-tabs v-model="activeName">
<el-tab-pane label="表单信息" name="first">
<CompleteDetailForm :complete_detail="complete_detail" ref="completeDetailForm"></CompleteDetailForm>
<CompleteDetailForm
:complete_detail="complete_detail"
ref="completeDetailForm"
></CompleteDetailForm>
</el-tab-pane>
<el-tab-pane label="流程图" name="second">
<CompleteDetailPicture ref="copyDetailPicture"></CompleteDetailPicture>
</el-tab-pane>
<el-tab-pane label="流转记录" name="third">
<CompleteDetailRecords
:complete_detail="complete_detail"
ref="completeDetailRecords"
></CompleteDetailRecords>
</el-tab-pane>
</el-tabs>
</div>
</template>
<script>
import CompleteDetailForm from "./completeDetailForm"
import CompleteDetailForm from "./completeDetailForm";
import CompleteDetailPicture from "./completeDetailPicture";
import CompleteDetailRecords from "./completeDetailRecords";
export default {
name: "CompleteDetail",
components:{
components: {
CompleteDetailForm,
CompleteDetailPicture,
CompleteDetailRecords,
},
props:{
complete_detail:{}, // -> complete
props: {
complete_detail: {}, // -> complete
},
data() {
return {
activeName: "first",
};
},
methods:{},
methods: {},
};
</script>
<style lang="less" scoped>

@ -33,7 +33,24 @@
<!-- 此列为数据展示 -->
<div class="basic_message_value_two">
<div class="basic_message_value_tag">
{{ this.basic_message.companyName }}
<div class="basic_message_value_company">
{{ this.basic_message.companyName }}
</div>
<div class="basic_message_value_list">
<div
:class="{
shewei: val == '剧毒' || val == '易制毒',
zhongdian: val == '消防重点' || val == '所管消防',
zhibao: val == '放射源' || val == '易制爆',
zhian:
val == '治安重点' || val == '创安单位' || val == '外资合资',
}"
v-for="(val, index) in this.basic_message.companyTypeList"
:key="index"
>
{{ val }}
</div>
</div>
</div>
<div class="basic_message_value">
{{ this.process_status }}
@ -49,8 +66,8 @@
<div class="complete_idea_body">
<!-- 遍历展示人员信息 -->
<div
v-for="item in complete_list"
:key="item.id"
v-for="item in opinion_list"
:key="item.taskDefKey"
class="complete_idea_person"
>
<div class="complete_idea_person_img">
@ -60,31 +77,31 @@
</div>
</el-image>
<div class="complete_idea_person_information">
<div class="complete_idea_person_name">{{ item.name }}</div>
<div class="complete_idea_person_team">{{ item.team }}</div>
<div class="complete_idea_person_name">{{ item.assigneeName }}</div>
<div class="complete_idea_person_team">{{ item.candidate }}</div>
</div>
</div>
<div class="complete_idea_person_text">
<!-- 第一行处理意见 -->
<div class="dispose_idea">
<div class="complete_text">处理意见:</div>
<div class="complete_value">{{ item.complete_value }}</div>
<div class="complete_value">{{ item.comment }}</div>
</div>
<!-- 第二行附件 按需显示或者隐藏 -->
<div v-if="attachment_show" class="attachment">
<div class="complete_text">附件:</div>
<!-- <div v-if="attachment_show" class="attachment"> -->
<!-- <div class="complete_text">附件:</div> -->
<!-- 此处后面会改为下载图片链接 -->
<div class="complete_value">{{ item.attachment_value }}</div>
</div>
<!-- <div class="complete_value">{{ item.attachment_value }}</div> -->
<!-- </div> -->
<!-- 第三行抄送人 -->
<div class="complete_person">
<div class="complete_text">抄送人:</div>
<div class="complete_value">{{ item.complete_person }}</div>
<div class="complete_value">{{ item.assigneeName }}</div>
</div>
<!-- 第四行时间 -->
<div class="complete_time">
<div class="complete_text">时间:</div>
<div class="complete_value">{{ item.complete_time }}</div>
<div class="complete_value">{{ item.createTime }}</div>
</div>
</div>
</div>
@ -93,7 +110,7 @@
</div>
</template>
<script>
// import { get_my_complete_record } from "@/api/closeLoopDispose";
import { get_my_course_record } from "@/api/closeLoopDispose";
export default {
name: "CompleteDetailForm",
props: {
@ -103,53 +120,13 @@ export default {
return {
attachment_show: true, //
basic_message: {},
complete_list: [
{
id: "1",
personUrl: "../../../assets/companyFile/avatar.png",
name: "吴沁",
team: "技侦大队",
complete_value:
"2022年8月20日0时32分,我队接到预警称浙江浙江鑫甬生物化工股份有限公司存在运输车辆频繁违章情况。接报后值班民警于立即到达现场,经现场了解到:危化品运输车(浙B2M50R)为外来租赁货车,司机王某(身份证号:42109119880717****)疑似前科重点人员。目前司机已经带回所以便进一步调查。2022年8月20日0时32分,我队接到预警称浙江浙江鑫甬生物化工股份有限公司存在运输车辆频繁违章情况。接报后值班民警于立即到达现场,经现场了解到:危化品运输车(浙B2M50R)为外来租赁货车,司机王某(身份证号:42109119880717****)疑似前科重点人员。目前司机已经带回所以便进一步调查。",
attachment_value: "20220820现场处置照片.jpg",
complete_person: "蔡坤、黄毅、李丹丹、张强强",
complete_time: "2022-11-13 12:10:08",
},
{
id: "2",
personUrl: "../../../assets/companyFile/avatar.png",
name: "吴沁",
team: "技侦大队",
complete_value:
"2022年8月26日12时许,经过分析,我队决定对浙江浙江鑫甬生物化工股份有限公司的外来租赁危化品运输车(浙B2M50R)司机王某(身份证号:42109119880717****)做出吊销货车驾照处罚,立即执行。",
},
{
id: "3",
personUrl: "../../../assets/companyFile/avatar.png",
name: "吴沁",
team: "技侦大队",
complete_value:
"2022年8月26日12时许,经过分析,我队决定对浙江浙江鑫甬生物化工股份有限公司的外来租赁危化品运输车(浙B2M50R)司机王某(身份证号:42109119880717****)做出吊销货车驾照处罚,立即执行。",
},
{
id: "4",
personUrl: "../../../assets/companyFile/avatar.png",
name: "吴沁",
team: "技侦大队",
complete_value:
"2022年8月20日0时32分,我队接到预警称浙江浙江鑫甬生物化工股份有限公司存在运输车辆频繁违章情况。接报后值班民警于立即到达现场,经现场了解到:危化品运输车(浙B2M50R)为外来租赁货车,司机王某(身份证号:42109119880717****)疑似前科重点人员。目前司机已经带回所以便进一步调查。2022年8月20日0时32分,我队接到预警称浙江浙江鑫甬生物化工股份有限公司存在运输车辆频繁违章情况。接报后值班民警于立即到达现场,经现场了解到:危化品运输车(浙B2M50R)为外来租赁货车,司机王某(身份证号:42109119880717****)疑似前科重点人员。目前司机已经带回所以便进一步调查。",
attachment_value: "20220820现场处置照片.jpg",
complete_person: "蔡坤、黄毅、李丹丹、张强强",
complete_time: "2022-11-13 12:10:08",
},
],
status_list: [
{ label: "待审核", value: "1" },
{ label: "通过", value: "2" },
{ label: "驳回", value: "3" },
{ label: "处置中", value: "4" },
],
process_status:'', //
process_status: "", //
};
},
created() {
@ -160,11 +137,11 @@ export default {
procInsId: this.complete_detail.procInsId,
taskId: this.complete_detail.taskId,
};
// get_my_complete_record(param).then((res) => {
// this.basic_message = res.data;
// this.process_status = this.status_list.find(item=>item.value === this.basic_message.alarmStatus).label
// });
console.log(param);
get_my_course_record(param).then((res) => {
this.basic_message = res.data;
this.process_status = this.status_list.find(item=>item.value == this.basic_message.alarmStatus).label
this.opinion_list = res.data.doneTaskVoList; //
});
},
methods: {},
};
@ -232,7 +209,86 @@ export default {
width: 52vw;
height: 4vh;
line-height: 4vh;
color: #409eff;
display: flex;
.basic_message_value_company {
color: #409eff;
}
.basic_message_value_list {
display: flex;
.shewei {
height: 26px;
line-height: 26px;
width: 60px;
margin-top: 9px;
margin-left: 5px;
background: url("~@/assets/companyFile/编组 11991.png") no-repeat;
padding: 1px 5px;
font-size: 14px;
color: #b5ebff;
letter-spacing: 0.44px;
font-weight: 400;
background-size: 100% 100%;
margin-right: 5px;
margin-bottom: 5px;
text-align: center;
}
.zhongdian {
height: 26px;
line-height: 26px;
width: 80px;
margin-top: 9px;
margin-left: 5px;
background: url("~@/assets/companyFile/编组 11222221.png") no-repeat;
padding: 1px 5px;
font-size: 14px;
color: #e3deff;
letter-spacing: 0.44px;
font-weight: 400;
background-size: 100% 100%;
margin-right: 5px;
margin-bottom: 5px;
text-align: center;
}
.zhibao {
height: 26px;
line-height: 26px;
width: 60px;
margin-top: 9px;
margin-left: 5px;
background: url("~@/assets/companyFile/编组 11991备份 10.png")
no-repeat;
padding: 1px 5px;
font-size: 14px;
color: #e3deff;
letter-spacing: 0.44px;
font-weight: 400;
background-size: 100% 100%;
margin-right: 5px;
margin-bottom: 5px;
text-align: center;
}
.zhian {
height: 26px;
line-height: 26px;
width: 80px;
margin-top: 9px;
margin-left: 5px;
background: url("~@/assets/companyFile/编组 11991备份 21.png")
no-repeat;
padding: 1px 5px;
font-size: 14px;
color: #e3deff;
letter-spacing: 0.44px;
font-weight: 400;
background-size: 100% 100%;
margin-right: 5px;
margin-bottom: 5px;
text-align: center;
}
}
}
.basic_message_value {
width: 52vw;
@ -303,7 +359,7 @@ export default {
margin-left: 1vw;
display: flex;
.complete_idea_person_img {
width: 10vw;
width: 15vw;
height: 7vh;
margin-left: 1.5vw;
// border: 0.1px solid #3f5564;

@ -45,7 +45,7 @@
</el-table-column>
<el-table-column prop="candidate" label="候选办理" width="280">
</el-table-column>
<el-table-column prop="type" label="操作状态" width="280">
<el-table-column prop="processType" label="操作状态" width="280">
</el-table-column>
<el-table-column prop="finishTime" label="接收时间" width="280">
</el-table-column>
@ -63,7 +63,7 @@
</div>
</template>
<script>
// import { get_my_course_record } from "@/api/closeLoopDispose";
import { get_my_course_record } from "@/api/closeLoopDispose";
export default {
name: "CompleteDetailRecords",
props: {
@ -72,30 +72,6 @@ export default {
data() {
return {
record_list: [
// {
// id: "1",
// name: "",
// opeartion_num: "2",
// have_opeartion_num: "1",
// not_opeartion_num: "1",
// table_list: [
// {
// change: "",
// under_change: "",
// type: "",
// load_time: "2023-06-06 12:53:30",
// time: "2023-06-06 12:53:30",
// use_time: "2",
// },
// ],
// },
// {
// id: "2",
// },
// {
// id: "3",
// name: "",
// },
],
src: require("../../../assets/companyFile/loadtrue.png"),
icon_show: true, //
@ -110,20 +86,10 @@ export default {
procInsId: this.complete_detail.procInsId,
taskId: this.complete_detail.taskId,
};
console.log(param);
// get_my_course_record(param).then((res) => {
// this.record_list = res.data.wfDetailVo.recordList;
// console.log("this.record_list", this.record_list);
// // for(let i = 0; i < this.record_list.length;i++) {
// // if ( i + 1 == this.record_list.length ) {
// // this.step_line_show = false
// // } else {
// // this.step_line_show = true
// // }
// // console.log('i + 1', i + 1);
// // console.log('this.record_list', this.record_list.length);
// // }
// });
get_my_course_record(param).then((res) => {
this.record_list = res.data.wfDetailVo.recordList;
console.log("this.record_list", this.record_list);
});
},
methods: {
//

@ -11,7 +11,7 @@
<el-form-item label="流程状态">
<el-select
v-model="search.copy_status"
@change="change_complete"
@change="change_copy"
>
<el-option
v-for="item in copy_list"
@ -47,20 +47,20 @@
:header-cell-style="table_header"
:cell-style="{ background: 'revert', 'text-align': 'center' }"
>
<el-table-column prop="procDefName" label="流程名称" width="420">
<el-table-column prop="processName" label="流程名称" width="420">
</el-table-column>
<el-table-column prop="createTime" label="创建时间" width="240">
</el-table-column>
<el-table-column prop="course_type" label="流程类型" width="200">
</el-table-column>
<el-table-column prop="build_person" label="创建者" width="200">
<el-table-column prop="originatorName" label="创建者" width="200">
</el-table-column>
<el-table-column prop="build_unit" label="创建单位" width="200">
</el-table-column>
<el-table-column prop="course_status" label="流程状态" width="200">
<el-table-column prop="process_status" label="流程状态" width="200">
<template slot-scope="scope">
<div :style="{ color: styleChange(scope.row.course_status) }">
{{ scope.row.course_status }}
<div :style="{ color: styleChange(scope.row.process_status) }">
{{ scope.row.process_status }}
</div>
</template>
</el-table-column>
@ -97,8 +97,9 @@
</div>
</template>
<script>
import { get_copy } from "@/api/closeLoopDispose";
export default {
name: "Complete",
name: "Copy",
data() {
return {
search: {
@ -108,10 +109,10 @@ export default {
word: "",
},
copy_list: [
{ label: "待审核", value: "1" },
{ label: "通过", value: "2" },
{ label: "驳回", value: "3" },
{ label: "处置中", value: "4" },
// { label: "", value: "1" },
{ label: "审核中", value: "1" },
{ label: "审核完成", value: "2" },
{ label: "驳回完成", value: "3" },
],
pickerOptions: {
shortcuts: [
@ -150,6 +151,9 @@ export default {
total: 0,
};
},
created() {
this.search_data();
},
methods: {
change_copy(val) {
this.search.procStatus = this.copy_list.find(
@ -161,23 +165,31 @@ export default {
pageSize: this.pageSize,
page: this.pageNum,
startTime:
this.search.course_time == null
this.search.copy_time == null
? ""
: this.dateConversion(this.search.course_time[0]),
: this.dateConversion(this.search.copy_time[0]),
endTime:
this.search.course_time == null
this.search.copy_time == null
? ""
: this.dateConversion(this.search.course_time[1]),
: this.dateConversion(this.search.copy_time[1]),
searchKey: this.search.word,
procStatus: this.search.procStatus,
};
console.log(param);
get_copy(param).then((res) => {
//
for( let i = 0; i<res.rows.length;i++) {
res.rows[i].process_status = this.process_change(res.rows[i].alarmStatus)
}
this.table_data = res.rows;
this.total = res.total;
});
},
reset() {
this.search.procStatus = "0";
this.search.copy_status = "";
this.search.copy_time = [this.get_today(), this.get_tomorrow()];
this.search.word = "";
this.search_data();
},
//
get_today() {
@ -203,6 +215,22 @@ export default {
y + "-" + m + "-" + d + " " + "00" + ":" + "00" + ":" + "00";
return dateTime;
},
dateConversion(value) {
let date = new Date(value);
let y = date.getFullYear();
let m = date.getMonth() + 1;
m = m < 10 ? "0" + m : m;
let d = date.getDate();
d = d < 10 ? "0" + d : d;
let h = date.getHours();
h = h < 10 ? "0" + h : h;
let M = date.getMinutes();
M = M < 10 ? "0" + M : M;
let s = date.getSeconds();
s = s < 10 ? "0" + s : s;
let dateTime = y + "-" + m + "-" + d + " " + h + ":" + M + ":" + s;
return dateTime;
},
//
check_details(val) {
this.$emit("change_copy_detail", val); //
@ -220,24 +248,37 @@ export default {
//
styleChange(val) {
switch (val) {
case "进行中":
case "审核中":
return "#3eba75";
// case "yellow":
// return "#FDA722";
case "处置成功":
case "审核完成":
return "#2eb9ef";
case "处置失败":
case "驳回完成":
return "#e55b5b";
}
},
//
process_change(val) {
switch(val) {
case 1 :
return "审核中";
case 2 :
return "审核完成";
case 3 :
return "驳回完成";
}
},
handleSizeChange(val) {
console.log(`每页 ${val}`);
this.pageNum = 1;
this.pageSize = val;
this.search_data();
},
handleCurrentChange(val) {
console.log(`当前页: ${val}`);
this.pageNum = val;
this.search_data();
},
},
};
@ -245,7 +286,7 @@ export default {
<style lang="less" scoped>
/deep/.el-table {
// width: 96vw;
height: 60vh;
height: 57vh;
background: rgba(0, 0, 0, 0);
border: 0.1px solid #3f5564;
thead {

@ -133,9 +133,9 @@ export default {
created() {
console.log("copy_detail11", this.copy_detail); // -> copy
let param = {
definitionId: this.copy_detail.procDefId,
deployId: this.copy_detail.deployId,
procInsId: this.copy_detail.procInsId,
definitionId: this.copy_detail.processId,
deployId: this.copy_detail.deploymentId,
procInsId: this.copy_detail.instanceId,
taskId: this.copy_detail.taskId,
};
get_my_course_record(param).then((res) => {
@ -362,7 +362,7 @@ export default {
margin-left: 1vw;
display: flex;
.course_idea_person_img {
width: 10vw;
width: 15vw;
height: 7vh;
margin-left: 1.5vw;
// border: 0.1px solid #3f5564;

@ -45,7 +45,7 @@
</el-table-column>
<el-table-column prop="candidate" label="候选办理" width="280">
</el-table-column>
<el-table-column prop="type" label="操作状态" width="280">
<el-table-column prop="processType" label="操作状态" width="280">
</el-table-column>
<el-table-column prop="finishTime" label="接收时间" width="280">
</el-table-column>
@ -105,9 +105,9 @@ export default {
created() {
console.log("copy_detail2", this.copy_detail);
let param = {
definitionId: this.copy_detail.procDefId,
deployId: this.copy_detail.deployId,
procInsId: this.copy_detail.procInsId,
definitionId: this.copy_detail.processId,
deployId: this.copy_detail.deploymentId,
procInsId: this.copy_detail.instanceId,
taskId: this.copy_detail.taskId,
};
get_my_course_record(param).then((res) => {

@ -48,12 +48,12 @@
</el-table-column>
<el-table-column prop="createTime" label="创建时间" width="280">
</el-table-column>
<el-table-column prop="course_type" label="流程类型" width="280">
<el-table-column prop="processType" label="流程类型" width="280">
</el-table-column>
<el-table-column prop="course_status" label="流程状态" width="220">
<el-table-column prop="process_status" label="流程状态" width="220">
<template slot-scope="scope">
<div :style="{ color: styleChange(scope.row.course_status) }">
{{ scope.row.course_status }}
<div :style="{ color: styleChange(scope.row.process_status) }">
{{ scope.row.process_status }}
</div>
</template>
</el-table-column>
@ -103,10 +103,10 @@ export default {
word: "",
},
course_list: [
{ label: "待审核", value: "1" },
{ label: "通过", value: "2" },
{ label: "驳回", value: "3" },
{ label: "处置中", value: "4" },
// { label: "", value: "1" },
{ label: "审核中", value: "1" },
{ label: "审核完成", value: "2" },
{ label: "驳回完成", value: "3" },
],
pickerOptions: {
shortcuts: [
@ -174,7 +174,11 @@ export default {
procStatus: this.search.procStatus,
};
get_my_course(param).then((res) => {
console.log("get_data", res);
//
for( let i = 0; i<res.rows.length;i++) {
res.rows[i].process_status = this.process_change(res.rows[i].alarmStatus)
}
console.log('res.rows',res.rows);
this.table_data = res.rows;
this.total = res.total;
});
@ -246,16 +250,27 @@ export default {
//
styleChange(val) {
switch (val) {
case "进行中":
case "审核中":
return "#3eba75";
// case "yellow":
// return "#FDA722";
case "处置成功":
case "审核完成":
return "#2eb9ef";
case "处置失败":
case "驳回完成":
return "#e55b5b";
}
},
//
process_change(val) {
switch(val) {
case 1 :
return "审核中";
case 2 :
return "审核完成";
case 3 :
return "驳回完成";
}
},
handleSizeChange(val) {
console.log(`每页 ${val}`);
this.pageNum = 1;
@ -273,7 +288,7 @@ export default {
<style lang="less" scoped>
/deep/.el-table {
// width: 96vw;
height: 60vh;
height: 57vh;
background: rgba(0, 0, 0, 0);
border: 0.1px solid #3f5564;
thead {
@ -304,7 +319,6 @@ export default {
background-color: #5e666a;
border-radius: 4px;
}
/deep/.el-table__body-wrapper::-webkit-scrollbar-thumb {
display: none;
width: 5px;

@ -402,7 +402,7 @@ export default {
margin-left: 1vw;
display: flex;
.course_idea_person_img {
width: 10vw;
width: 15vw;
height: 7vh;
margin-left: 1.5vw;
// border: 0.1px solid #3f5564;

@ -45,7 +45,7 @@
</el-table-column>
<el-table-column prop="candidate" label="候选办理" width="280">
</el-table-column>
<el-table-column prop="type" label="操作状态" width="280">
<el-table-column prop="processType" label="操作状态" width="280">
</el-table-column>
<el-table-column prop="finishTime" label="接收时间" width="280">
</el-table-column>

@ -19,7 +19,7 @@
@change_to_detail="change_to_detail"
></MyCourse>
</el-tab-pane>
<el-tab-pane label="办任务" name="second">
<el-tab-pane label="办任务" name="second">
<Backlog
ref="backlog"
@change_backlog_detail="change_backlog_detail"
@ -45,6 +45,7 @@
<BacklogDetail
:backlog_detail="backlog_detail"
ref="backlogDetail"
@back_home_page="back_home_page"
v-else-if="is_flag === '2'"
></BacklogDetail>
<!-- 已办流程详情tab页 -->

@ -248,7 +248,7 @@ export default {
{ prop: "deviceName", label: "设备名称", width: "270" },
{ prop: "devicePerceptionSubTypeCn", label: "设备类型" },
{ prop: "deviceIp", label: "设备IP" },
{ prop: "orientationCn", label: "进出方向" },
{ prop: "directionCn", label: "进出方向" },
],
handle_video: "", //
handle_perception: "", //

@ -15,9 +15,9 @@
<!-- 综合指数算法表单 -->
<div class="index_form">
<el-form v-if="!btn_flag" ref="form" :model="form" class="form">
<el-form-item label="内部治安管理 ×" prop="rate_one">
<el-form-item label="内部治安安全 ×" prop="rate_one">
<label slot="label"
>内部治安管理&nbsp;&nbsp;&nbsp;&nbsp;×</label
>内部治安安全&nbsp;&nbsp;&nbsp;&nbsp;×</label
>
<el-input v-model="form.rate_one"></el-input>
</el-form-item>
@ -33,21 +33,21 @@
>
<el-input v-model="form.rate_three"></el-input>
</el-form-item>
<el-form-item label="+ 道路交通安全秩序管理 ×" prop="rate_four">
<el-form-item label="+ 道路安全 ×" prop="rate_four">
<label slot="label"
>+&nbsp;&nbsp;&nbsp;&nbsp;道路交通安全秩序管理&nbsp;&nbsp;&nbsp;&nbsp;×</label
>+&nbsp;&nbsp;&nbsp;&nbsp;道路安全&nbsp;&nbsp;&nbsp;&nbsp;×</label
>
<el-input v-model="form.rate_four"></el-input>
</el-form-item>
<el-form-item label="+ 防攻击安全管理 ×" prop="rate_five">
<el-form-item label="+ 防攻击安全 ×" prop="rate_five">
<label slot="label"
>+&nbsp;&nbsp;&nbsp;&nbsp;防攻击安全管理&nbsp;&nbsp;&nbsp;&nbsp;×</label
>+&nbsp;&nbsp;&nbsp;&nbsp;防攻击安全&nbsp;&nbsp;&nbsp;&nbsp;×</label
>
<el-input v-model="form.rate_five"></el-input>
</el-form-item>
<el-form-item label="+ 网络安全管理 ×" prop="rate_six">
<el-form-item label="+ 网络安全 ×" prop="rate_six">
<label slot="label"
>+&nbsp;&nbsp;&nbsp;&nbsp;网络安全管理&nbsp;&nbsp;&nbsp;&nbsp;×</label
>+&nbsp;&nbsp;&nbsp;&nbsp;网络安全&nbsp;&nbsp;&nbsp;&nbsp;×</label
>
<el-input v-model="form.rate_six"></el-input>
</el-form-item>
@ -63,9 +63,9 @@
>
<el-input v-model="form.rate_eight"></el-input>
</el-form-item>
<el-form-item label="+ 列管物品 ×" prop="rate_nine">
<el-form-item label="+ 列管物品安全 ×" prop="rate_nine">
<label slot="label"
>+&nbsp;&nbsp;&nbsp;&nbsp;列管物品&nbsp;&nbsp;&nbsp;&nbsp;×</label
>+&nbsp;&nbsp;&nbsp;&nbsp;列管物品安全&nbsp;&nbsp;&nbsp;&nbsp;×</label
>
<el-input v-model="form.rate_nine"></el-input>
</el-form-item>
@ -77,9 +77,9 @@
class="text_form"
:disabled="disabled"
>
<el-form-item label="内部治安管理 ×" prop="rate_one">
<el-form-item label="内部治安安全 ×" prop="rate_one">
<label slot="label"
>内部治安管理&nbsp;&nbsp;&nbsp;&nbsp;×</label
>内部治安安全&nbsp;&nbsp;&nbsp;&nbsp;×</label
>
<el-input v-model="form.rate_one"></el-input>
</el-form-item>
@ -95,21 +95,21 @@
>
<el-input v-model="form.rate_three"></el-input>
</el-form-item>
<el-form-item label="+ 道路交通安全秩序管理 ×" prop="rate_four">
<el-form-item label="+ 道路安全 ×" prop="rate_four">
<label slot="label"
>+&nbsp;&nbsp;&nbsp;&nbsp;道路交通安全秩序管理&nbsp;&nbsp;&nbsp;&nbsp;×</label
>+&nbsp;&nbsp;&nbsp;&nbsp;道路安全&nbsp;&nbsp;&nbsp;&nbsp;×</label
>
<el-input v-model="form.rate_four"></el-input>
</el-form-item>
<el-form-item label="+ 防攻击安全管理 ×" prop="rate_five">
<el-form-item label="+ 防攻击安全 ×" prop="rate_five">
<label slot="label"
>+&nbsp;&nbsp;&nbsp;&nbsp;防攻击安全管理&nbsp;&nbsp;&nbsp;&nbsp;×</label
>+&nbsp;&nbsp;&nbsp;&nbsp;防攻击安全&nbsp;&nbsp;&nbsp;&nbsp;×</label
>
<el-input v-model="form.rate_five"></el-input>
</el-form-item>
<el-form-item label="+ 网络安全管理 ×" prop="rate_six">
<el-form-item label="+ 网络安全 ×" prop="rate_six">
<label slot="label"
>+&nbsp;&nbsp;&nbsp;&nbsp;网络安全管理&nbsp;&nbsp;&nbsp;&nbsp;×</label
>+&nbsp;&nbsp;&nbsp;&nbsp;网络安全&nbsp;&nbsp;&nbsp;&nbsp;×</label
>
<el-input v-model="form.rate_six"></el-input>
</el-form-item>
@ -125,9 +125,9 @@
>
<el-input v-model="form.rate_eight"></el-input>
</el-form-item>
<el-form-item label="+ 列管物品 ×" prop="rate_nine">
<el-form-item label="+ 列管物品安全 ×" prop="rate_nine">
<label slot="label"
>+&nbsp;&nbsp;&nbsp;&nbsp;列管物品&nbsp;&nbsp;&nbsp;&nbsp;×</label
>+&nbsp;&nbsp;&nbsp;&nbsp;列管物品安全&nbsp;&nbsp;&nbsp;&nbsp;×</label
>
<el-input v-model="form.rate_nine"></el-input>
</el-form-item>

Loading…
Cancel
Save