提交
This commit is contained in:
@@ -0,0 +1,178 @@
|
||||
<template>
|
||||
<!-- <div> -->
|
||||
<!-- <el-form :inline="true" :model="form" class="demo-form-inline"> -->
|
||||
<!-- <el-form-item label="组织机构名称:" prop="valueTitle" :rules="{ required: true, message: '物业公司名称不能为空', trigger: 'blur' }"> -->
|
||||
<el-select
|
||||
ref="selectTree1"
|
||||
v-model="form.valueTitle"
|
||||
placeholder="请输入组织机构名称"
|
||||
>
|
||||
<el-option
|
||||
:value="form.editCheckCode"
|
||||
:label="form.valueTitle"
|
||||
class="options"
|
||||
>
|
||||
<el-tree
|
||||
id="tree-option"
|
||||
ref="selectTree"
|
||||
:accordion="form.accordion"
|
||||
:data="form.options"
|
||||
:highlight-current="true"
|
||||
:expand-on-click-node="false"
|
||||
:default-expanded-keys="form.defaultExpandedKey"
|
||||
@node-click="handleNodeClick"
|
||||
>
|
||||
<span slot-scope="{ node, data }">
|
||||
<i
|
||||
:class="[data.color != null ? 'ification_col' : '']"
|
||||
:style="{ 'background-color': data.color }"
|
||||
></i
|
||||
> {{ data.name }}
|
||||
</span>
|
||||
</el-tree>
|
||||
</el-option>
|
||||
</el-select>
|
||||
<!-- </el-form-item> -->
|
||||
<!-- </el-form> -->
|
||||
<!-- </div> -->
|
||||
</template>
|
||||
<script>
|
||||
import { deptTree } from "@/api/admin/dept";
|
||||
export default {
|
||||
props: {
|
||||
valueTitle: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
editCheckCode: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
},
|
||||
watch: {
|
||||
'valueTitle': {
|
||||
handler(Value) {
|
||||
// newValue 和 oldValue 是一样的
|
||||
// console.log(Value,'++++++++++++++++++');
|
||||
this.form.valueTitle=Value
|
||||
},
|
||||
deep: true
|
||||
},
|
||||
'editCheckCode': {
|
||||
handler(Value) {
|
||||
// newValue 和 oldValue 是一样的
|
||||
// console.log(Value,'++++++++++++++++++');
|
||||
this.form.editCheckCode=Value
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
vh: "",
|
||||
IdData: "",
|
||||
form: {
|
||||
value: "",
|
||||
valueTitle: "",
|
||||
editCheckCode: "",//选择的id
|
||||
accordion: true,
|
||||
defaultExpandedKey: [],
|
||||
//区域
|
||||
options: [],
|
||||
default: {
|
||||
value: "id",
|
||||
children: "children",
|
||||
label: "name",
|
||||
},
|
||||
},
|
||||
|
||||
};
|
||||
},
|
||||
created() {
|
||||
// this.form.valueTitle = JSON.parse(
|
||||
// window.sessionStorage.getItem("Info")
|
||||
// ).deptName;
|
||||
this.area();
|
||||
},
|
||||
beforeMount(){
|
||||
// this.form.valueTitle=this.valueTitle
|
||||
// this.form.editCheckCode=this.editCheckCode
|
||||
},
|
||||
mounted() {
|
||||
|
||||
this.form.valueTitle=this.valueTitle
|
||||
this.form.editCheckCode=this.editCheckCode
|
||||
|
||||
},
|
||||
computed: {},
|
||||
methods: {
|
||||
//区域
|
||||
area() {
|
||||
deptTree().then((res) => {
|
||||
if (res.code == "A0000") {
|
||||
this.form.options = res.data;
|
||||
//this.$emit("click", res.data[0]);
|
||||
}
|
||||
// debugger
|
||||
this.IdData = this.form.options[0].children[0].id;
|
||||
this.$emit("sendMessage", this.IdData);
|
||||
|
||||
//用于子组件向父组件传递部门id非code
|
||||
});
|
||||
},
|
||||
// 切换选项
|
||||
handleNodeClick(data) {
|
||||
this.form.editCheckCode = data.id;
|
||||
this.form.valueTitle = data.name;
|
||||
|
||||
this.form.defaultExpandedKey = [];
|
||||
this.$emit("click", data);
|
||||
this.$refs.selectTree1.blur();
|
||||
|
||||
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
@import url("../../../../styles/comStyle.less");
|
||||
.el-scrollbar .el-scrollbar__view .el-select-dropdown__item {
|
||||
height: auto;
|
||||
// max-height: 1000px;
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
overflow-y: hidden;
|
||||
}
|
||||
|
||||
.el-select-dropdown__item.selected {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
ul li > .el-tree .el-tree-node__content {
|
||||
height: auto;
|
||||
padding: 0 20px;
|
||||
}
|
||||
|
||||
.el-tree-node__label {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.el-tree > .is-current .el-tree-node__label {
|
||||
font-weight: 700;
|
||||
color: #409eff;
|
||||
}
|
||||
|
||||
.el-tree > .is-current .el-tree-node__children .el-tree-node__label {
|
||||
font-weight: normal;
|
||||
color: #606266;
|
||||
}
|
||||
|
||||
.el-popper {
|
||||
z-index: 9999;
|
||||
}
|
||||
.ification_col {
|
||||
display: inline-block;
|
||||
width: 20px;
|
||||
height: 10px;
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,168 @@
|
||||
<template>
|
||||
<!-- <div> -->
|
||||
<!-- <el-form :inline="true" :model="form" class="demo-form-inline"> -->
|
||||
<!-- <el-form-item label="运维单位名称:"> -->
|
||||
<el-select
|
||||
ref="selectTree1"
|
||||
v-model="form.valueTitle"
|
||||
placeholder="请输入运维单位名称"
|
||||
>
|
||||
<el-option
|
||||
:value="form.editCheckCode"
|
||||
:label="form.valueTitle"
|
||||
class="options"
|
||||
>
|
||||
<el-tree
|
||||
id="tree-option"
|
||||
ref="selectTree"
|
||||
:accordion="form.accordion"
|
||||
:data="form.options"
|
||||
:highlight-current="true"
|
||||
:expand-on-click-node="false"
|
||||
:default-expanded-keys="form.defaultExpandedKey"
|
||||
@node-click="handleNodeClick"
|
||||
>
|
||||
<span slot-scope="{ node, data }">
|
||||
<i
|
||||
:class="[data.color != null ? 'ification_col' : '']"
|
||||
:style="{ 'background-color': data.color }"
|
||||
></i
|
||||
> {{ data.name }}
|
||||
</span>
|
||||
</el-tree>
|
||||
</el-option>
|
||||
</el-select>
|
||||
<!-- </el-form-item> -->
|
||||
<!-- </el-form> -->
|
||||
<!-- </div> -->
|
||||
</template>
|
||||
<script>
|
||||
import { deptTree } from "@/api/admin/dept";
|
||||
export default {
|
||||
props: {
|
||||
valueTitle: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
editCheckCode: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
|
||||
},
|
||||
watch: {
|
||||
'valueTitle': {
|
||||
handler(Value) {
|
||||
// newValue 和 oldValue 是一样的
|
||||
// console.log(Value,'++++++++++++++++++');
|
||||
this.form.valueTitle=Value
|
||||
},
|
||||
deep: true
|
||||
},
|
||||
'editCheckCode': {
|
||||
handler(Value) {
|
||||
// newValue 和 oldValue 是一样的
|
||||
// console.log(Value,'++++++++++++++++++');
|
||||
this.form.editCheckCode=Value
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
vh: "",
|
||||
IdData: "",
|
||||
form: {
|
||||
value: "",
|
||||
valueTitle: "",
|
||||
editCheckCode: null,//选择的id
|
||||
accordion: true,
|
||||
defaultExpandedKey: [],
|
||||
//区域
|
||||
options: [],
|
||||
default: {
|
||||
value: "id",
|
||||
children: "children",
|
||||
label: "name",
|
||||
},
|
||||
},
|
||||
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.area();
|
||||
},
|
||||
mounted() {
|
||||
this.form.valueTitle = JSON.parse(
|
||||
window.sessionStorage.getItem("Info")
|
||||
).deptName;
|
||||
this.form.valueTitle=this.valueTitle
|
||||
this.form.editCheckCode=this.editCheckCode
|
||||
},
|
||||
computed: {},
|
||||
methods: {
|
||||
//区域
|
||||
area() {
|
||||
deptTree().then((res) => {
|
||||
if (res.code == "A0000") {
|
||||
this.form.options = res.data;
|
||||
|
||||
}
|
||||
// debugger
|
||||
this.IdData = this.form.options[0].children[0].id;
|
||||
this.$emit("sendMessage", this.IdData);
|
||||
});
|
||||
},
|
||||
// 切换选项
|
||||
handleNodeClick(data) {
|
||||
this.form.editCheckCode = data.id;
|
||||
this.form.valueTitle = data.name;
|
||||
this.form.defaultExpandedKey = [];
|
||||
this.$emit("click", data);
|
||||
this.$refs.selectTree1.blur();
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
@import url("../../../../styles/comStyle.less");
|
||||
.el-scrollbar .el-scrollbar__view .el-select-dropdown__item {
|
||||
height: auto;
|
||||
// max-height: 1000px;
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
overflow-y: hidden;
|
||||
}
|
||||
|
||||
.el-select-dropdown__item.selected {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
ul li > .el-tree .el-tree-node__content {
|
||||
height: auto;
|
||||
padding: 0 20px;
|
||||
}
|
||||
|
||||
.el-tree-node__label {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.el-tree > .is-current .el-tree-node__label {
|
||||
font-weight: 700;
|
||||
color: #409eff;
|
||||
}
|
||||
|
||||
.el-tree > .is-current .el-tree-node__children .el-tree-node__label {
|
||||
font-weight: normal;
|
||||
color: #606266;
|
||||
}
|
||||
|
||||
.el-popper {
|
||||
z-index: 9999;
|
||||
}
|
||||
.ification_col {
|
||||
display: inline-block;
|
||||
width: 20px;
|
||||
height: 10px;
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,179 @@
|
||||
<template>
|
||||
<!-- <div> -->
|
||||
<!-- <el-form :inline="true" :model="form" class="demo-form-inline"> -->
|
||||
<!-- <el-form-item label="组织机构名称:" prop="valueTitle" :rules="{ required: true, message: '物业公司名称不能为空', trigger: 'blur' }"> -->
|
||||
<el-select
|
||||
ref="selectTree1"
|
||||
v-model="form.valueTitle"
|
||||
placeholder="请输入组织机构名称"
|
||||
>
|
||||
<el-option
|
||||
:value="form.editCheckCode"
|
||||
:label="form.valueTitle"
|
||||
class="options"
|
||||
>
|
||||
<el-tree
|
||||
id="tree-option"
|
||||
ref="selectTree"
|
||||
:accordion="form.accordion"
|
||||
:data="form.options"
|
||||
:highlight-current="true"
|
||||
:expand-on-click-node="false"
|
||||
:default-expanded-keys="form.defaultExpandedKey"
|
||||
@node-click="handleNodeClick"
|
||||
>
|
||||
<span slot-scope="{ node, data }">
|
||||
<i
|
||||
:class="[data.color != null ? 'ification_col' : '']"
|
||||
:style="{ 'background-color': data.color }"
|
||||
></i
|
||||
> {{ data.name }}
|
||||
</span>
|
||||
</el-tree>
|
||||
</el-option>
|
||||
</el-select>
|
||||
<!-- </el-form-item> -->
|
||||
<!-- </el-form> -->
|
||||
<!-- </div> -->
|
||||
</template>
|
||||
<script>
|
||||
import { deptTree } from "@/api/admin/dept";
|
||||
export default {
|
||||
props: {
|
||||
valueTitle: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
editCheckCode: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
|
||||
},
|
||||
watch: {
|
||||
'valueTitle': {
|
||||
handler(Value) {
|
||||
// newValue 和 oldValue 是一样的
|
||||
// console.log(Value,'++++++++++++++++++');
|
||||
this.form.valueTitle=Value
|
||||
},
|
||||
deep: true
|
||||
},
|
||||
'editCheckCode': {
|
||||
handler(Value) {
|
||||
// newValue 和 oldValue 是一样的
|
||||
// console.log(Value,'++++++++++++++++++');
|
||||
this.form.editCheckCode=Value
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
vh: "",
|
||||
IdData: "",
|
||||
form: {
|
||||
value: "",
|
||||
valueTitle: "",
|
||||
editCheckCode: "",//选择的id
|
||||
accordion: true,
|
||||
defaultExpandedKey: [],
|
||||
//区域
|
||||
options: [],
|
||||
default: {
|
||||
value: "id",
|
||||
children: "children",
|
||||
label: "name",
|
||||
},
|
||||
},
|
||||
|
||||
};
|
||||
},
|
||||
created() {
|
||||
// this.form.valueTitle = JSON.parse(
|
||||
// window.sessionStorage.getItem("Info")
|
||||
// ).deptName;
|
||||
this.area();
|
||||
},
|
||||
beforeMount(){
|
||||
// this.form.valueTitle=this.valueTitle
|
||||
// this.form.editCheckCode=this.editCheckCode
|
||||
},
|
||||
mounted() {
|
||||
|
||||
this.form.valueTitle=this.valueTitle
|
||||
this.form.editCheckCode=this.editCheckCode
|
||||
|
||||
},
|
||||
computed: {},
|
||||
methods: {
|
||||
//区域
|
||||
area() {
|
||||
deptTree().then((res) => {
|
||||
if (res.code == "A0000") {
|
||||
this.form.options = res.data;
|
||||
//this.$emit("click", res.data[0]);
|
||||
}
|
||||
// debugger
|
||||
this.IdData = this.form.options[0].children[0].id;
|
||||
this.$emit("sendMessage", this.IdData);
|
||||
|
||||
//用于子组件向父组件传递部门id非code
|
||||
});
|
||||
},
|
||||
// 切换选项
|
||||
handleNodeClick(data) {
|
||||
this.form.editCheckCode = data.id;
|
||||
this.form.valueTitle = data.name;
|
||||
|
||||
this.form.defaultExpandedKey = [];
|
||||
this.$emit("click", data);
|
||||
this.$refs.selectTree1.blur();
|
||||
|
||||
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
@import url("../../../../styles/comStyle.less");
|
||||
.el-scrollbar .el-scrollbar__view .el-select-dropdown__item {
|
||||
height: auto;
|
||||
// max-height: 1000px;
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
overflow-y: hidden;
|
||||
}
|
||||
|
||||
.el-select-dropdown__item.selected {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
ul li > .el-tree .el-tree-node__content {
|
||||
height: auto;
|
||||
padding: 0 20px;
|
||||
}
|
||||
|
||||
.el-tree-node__label {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.el-tree > .is-current .el-tree-node__label {
|
||||
font-weight: 700;
|
||||
color: #409eff;
|
||||
}
|
||||
|
||||
.el-tree > .is-current .el-tree-node__children .el-tree-node__label {
|
||||
font-weight: normal;
|
||||
color: #606266;
|
||||
}
|
||||
|
||||
.el-popper {
|
||||
z-index: 9999;
|
||||
}
|
||||
.ification_col {
|
||||
display: inline-block;
|
||||
width: 20px;
|
||||
height: 10px;
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,186 @@
|
||||
<template>
|
||||
<!-- <div> -->
|
||||
<!-- <el-form :inline="true" :model="form" class="demo-form-inline"> -->
|
||||
<!-- <el-form-item label="组织机构名称:" prop="valueTitle" :rules="{ required: true, message: '物业公司名称不能为空', trigger: 'blur' }"> -->
|
||||
<el-select
|
||||
ref="selectTree1"
|
||||
v-model="form.valueTitle"
|
||||
clearable
|
||||
placeholder="请输入组织机构名称"
|
||||
@clear="clear('valueTitle','editCheckCode')"
|
||||
>
|
||||
<el-option
|
||||
:value="form.editCheckCode"
|
||||
:label="form.valueTitle"
|
||||
class="options"
|
||||
>
|
||||
<el-tree
|
||||
id="tree-option"
|
||||
ref="selectTree"
|
||||
:accordion="form.accordion"
|
||||
:data="form.options"
|
||||
:highlight-current="true"
|
||||
:expand-on-click-node="false"
|
||||
:default-expanded-keys="form.defaultExpandedKey"
|
||||
@node-click="handleNodeClick"
|
||||
>
|
||||
<span slot-scope="{ node, data }">
|
||||
<i
|
||||
:class="[data.color != null ? 'ification_col' : '']"
|
||||
:style="{ 'background-color': data.color }"
|
||||
></i
|
||||
> {{ data.name }}
|
||||
</span>
|
||||
</el-tree>
|
||||
</el-option>
|
||||
</el-select>
|
||||
<!-- </el-form-item> -->
|
||||
<!-- </el-form> -->
|
||||
<!-- </div> -->
|
||||
</template>
|
||||
<script>
|
||||
import { deptTree } from "@/api/admin/dept";
|
||||
export default {
|
||||
props: {
|
||||
valueTitle: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
editCheckCode: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
|
||||
},
|
||||
watch: {
|
||||
'valueTitle': {
|
||||
handler(Value) {
|
||||
// newValue 和 oldValue 是一样的
|
||||
// console.log(Value,'++++++++++++++++++');
|
||||
this.form.valueTitle=Value
|
||||
},
|
||||
deep: true
|
||||
},
|
||||
'editCheckCode': {
|
||||
handler(Value) {
|
||||
// newValue 和 oldValue 是一样的
|
||||
// console.log(Value,'++++++++++++++++++');
|
||||
this.form.editCheckCode=Value
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
vh: "",
|
||||
IdData: "",
|
||||
form: {
|
||||
value: "",
|
||||
valueTitle: "",
|
||||
editCheckCode: "",//选择的id
|
||||
accordion: true,
|
||||
defaultExpandedKey: [],
|
||||
//区域
|
||||
options: [],
|
||||
default: {
|
||||
value: "id",
|
||||
children: "children",
|
||||
label: "name",
|
||||
},
|
||||
},
|
||||
|
||||
};
|
||||
},
|
||||
created() {
|
||||
// this.form.valueTitle = JSON.parse(
|
||||
// window.sessionStorage.getItem("Info")
|
||||
// ).deptName;
|
||||
this.area();
|
||||
},
|
||||
beforeMount(){
|
||||
// this.form.valueTitle=this.valueTitle
|
||||
// this.form.editCheckCode=this.editCheckCode
|
||||
},
|
||||
mounted() {
|
||||
|
||||
this.form.valueTitle=this.valueTitle
|
||||
this.form.editCheckCode=this.editCheckCode
|
||||
|
||||
},
|
||||
computed: {},
|
||||
methods: {
|
||||
clear(key,key1) {
|
||||
this.form[key] = ''
|
||||
this.form[key1] = ''
|
||||
this.$emit("clear", key,key1);
|
||||
},
|
||||
//区域
|
||||
area() {
|
||||
deptTree().then((res) => {
|
||||
if (res.code == "A0000") {
|
||||
this.form.options = res.data;
|
||||
//this.$emit("click", res.data[0]);
|
||||
}
|
||||
// debugger
|
||||
this.IdData = this.form.options[0].children[0].id;
|
||||
this.$emit("sendMessage", this.IdData);
|
||||
|
||||
//用于子组件向父组件传递部门id非code
|
||||
});
|
||||
},
|
||||
// 切换选项
|
||||
handleNodeClick(data) {
|
||||
this.form.editCheckCode = data.id;
|
||||
this.form.valueTitle = data.name;
|
||||
|
||||
this.form.defaultExpandedKey = [];
|
||||
this.$emit("click", data);
|
||||
this.$refs.selectTree1.blur();
|
||||
|
||||
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
@import url("../../../../styles/comStyle.less");
|
||||
.el-scrollbar .el-scrollbar__view .el-select-dropdown__item {
|
||||
height: auto;
|
||||
// max-height: 1000px;
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
overflow-y: hidden;
|
||||
}
|
||||
|
||||
.el-select-dropdown__item.selected {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
ul li > .el-tree .el-tree-node__content {
|
||||
height: auto;
|
||||
padding: 0 20px;
|
||||
}
|
||||
|
||||
.el-tree-node__label {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.el-tree > .is-current .el-tree-node__label {
|
||||
font-weight: 700;
|
||||
color: #409eff;
|
||||
}
|
||||
|
||||
.el-tree > .is-current .el-tree-node__children .el-tree-node__label {
|
||||
font-weight: normal;
|
||||
color: #606266;
|
||||
}
|
||||
|
||||
.el-popper {
|
||||
z-index: 9999;
|
||||
}
|
||||
.ification_col {
|
||||
display: inline-block;
|
||||
width: 20px;
|
||||
height: 10px;
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,186 @@
|
||||
<template>
|
||||
<!-- <div> -->
|
||||
<!-- <el-form :inline="true" :model="form" class="demo-form-inline"> -->
|
||||
<!-- <el-form-item label="组织机构名称:" prop="valueTitle" :rules="{ required: true, message: '物业公司名称不能为空', trigger: 'blur' }"> -->
|
||||
<el-select
|
||||
ref="selectTree1"
|
||||
v-model="form.valueTitle"
|
||||
clearable
|
||||
@clear="clear('valueTitle','editCheckCode')"
|
||||
placeholder="请输入组织机构名称"
|
||||
>
|
||||
<el-option
|
||||
:value="form.editCheckCode"
|
||||
:label="form.valueTitle"
|
||||
class="options"
|
||||
>
|
||||
<el-tree
|
||||
id="tree-option"
|
||||
ref="selectTree"
|
||||
:accordion="form.accordion"
|
||||
:data="form.options"
|
||||
:highlight-current="true"
|
||||
:expand-on-click-node="false"
|
||||
:default-expanded-keys="form.defaultExpandedKey"
|
||||
@node-click="handleNodeClick"
|
||||
>
|
||||
<span slot-scope="{ node, data }">
|
||||
<i
|
||||
:class="[data.color != null ? 'ification_col' : '']"
|
||||
:style="{ 'background-color': data.color }"
|
||||
></i
|
||||
> {{ data.name }}
|
||||
</span>
|
||||
</el-tree>
|
||||
</el-option>
|
||||
</el-select>
|
||||
<!-- </el-form-item> -->
|
||||
<!-- </el-form> -->
|
||||
<!-- </div> -->
|
||||
</template>
|
||||
<script>
|
||||
import { deptTree } from "@/api/admin/dept";
|
||||
export default {
|
||||
props: {
|
||||
valueTitle: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
editCheckCode: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
|
||||
},
|
||||
watch: {
|
||||
'valueTitle': {
|
||||
handler(Value) {
|
||||
// newValue 和 oldValue 是一样的
|
||||
// console.log(Value,'++++++++++++++++++');
|
||||
this.form.valueTitle=Value
|
||||
},
|
||||
deep: true
|
||||
},
|
||||
'editCheckCode': {
|
||||
handler(Value) {
|
||||
// newValue 和 oldValue 是一样的
|
||||
// console.log(Value,'++++++++++++++++++');
|
||||
this.form.editCheckCode=Value
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
vh: "",
|
||||
IdData: "",
|
||||
form: {
|
||||
value: "",
|
||||
valueTitle: "",
|
||||
editCheckCode: "",//选择的id
|
||||
accordion: true,
|
||||
defaultExpandedKey: [],
|
||||
//区域
|
||||
options: [],
|
||||
default: {
|
||||
value: "id",
|
||||
children: "children",
|
||||
label: "name",
|
||||
},
|
||||
},
|
||||
|
||||
};
|
||||
},
|
||||
created() {
|
||||
// this.form.valueTitle = JSON.parse(
|
||||
// window.sessionStorage.getItem("Info")
|
||||
// ).deptName;
|
||||
this.area();
|
||||
},
|
||||
beforeMount(){
|
||||
// this.form.valueTitle=this.valueTitle
|
||||
// this.form.editCheckCode=this.editCheckCode
|
||||
},
|
||||
mounted() {
|
||||
|
||||
this.form.valueTitle=this.valueTitle
|
||||
this.form.editCheckCode=this.editCheckCode
|
||||
|
||||
},
|
||||
computed: {},
|
||||
methods: {
|
||||
clear(key,key1) {
|
||||
this.form[key] = ''
|
||||
this.form[key1] = ''
|
||||
this.$emit("clear", key,key1);
|
||||
},
|
||||
//区域
|
||||
area() {
|
||||
deptTree().then((res) => {
|
||||
if (res.code == "A0000") {
|
||||
this.form.options = res.data;
|
||||
//this.$emit("click", res.data[0]);
|
||||
}
|
||||
// debugger
|
||||
this.IdData = this.form.options[0].children[0].id;
|
||||
this.$emit("sendMessage", this.IdData);
|
||||
|
||||
//用于子组件向父组件传递部门id非code
|
||||
});
|
||||
},
|
||||
// 切换选项
|
||||
handleNodeClick(data) {
|
||||
this.form.editCheckCode = data.id;
|
||||
this.form.valueTitle = data.name;
|
||||
|
||||
this.form.defaultExpandedKey = [];
|
||||
this.$emit("click", data);
|
||||
this.$refs.selectTree1.blur();
|
||||
|
||||
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
@import url("../../../../styles/comStyle.less");
|
||||
.el-scrollbar .el-scrollbar__view .el-select-dropdown__item {
|
||||
height: auto;
|
||||
// max-height: 1000px;
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
overflow-y: hidden;
|
||||
}
|
||||
|
||||
.el-select-dropdown__item.selected {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
ul li > .el-tree .el-tree-node__content {
|
||||
height: auto;
|
||||
padding: 0 20px;
|
||||
}
|
||||
|
||||
.el-tree-node__label {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.el-tree > .is-current .el-tree-node__label {
|
||||
font-weight: 700;
|
||||
color: #409eff;
|
||||
}
|
||||
|
||||
.el-tree > .is-current .el-tree-node__children .el-tree-node__label {
|
||||
font-weight: normal;
|
||||
color: #606266;
|
||||
}
|
||||
|
||||
.el-popper {
|
||||
z-index: 9999;
|
||||
}
|
||||
.ification_col {
|
||||
display: inline-block;
|
||||
width: 20px;
|
||||
height: 10px;
|
||||
}
|
||||
</style>
|
||||
3278
src/views/Process-supervision/Supervisionmanage2/Workplan.vue
Normal file
3278
src/views/Process-supervision/Supervisionmanage2/Workplan.vue
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,612 @@
|
||||
<template>
|
||||
<div class="pd10" v-loading="isLoading" element-loading-text="数据加载中">
|
||||
<el-form :inline="true" :model="formData" class="demo-form-inline">
|
||||
<el-form-item>
|
||||
<Area @click="handleNodeClick" ref="area" @send="takeover"></Area>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<Timeinterval ref="Timeinterval" :interval="3"></Timeinterval>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" @click="onSubmit">查询</el-button>
|
||||
<el-button size="small" type="primary" v-if="biaoCode === 'tjrbpush'" @click="push">上送网公司</el-button>
|
||||
<el-button size="small" type="primary" icon="el-icon-download" @click="exportEvent">导出</el-button>
|
||||
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item style="float: right;margin-right: 10px">
|
||||
<el-button size="small" type="primary" @click="reportStatistics">
|
||||
月报手动重新统计
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<vxe-table stripe :data="tableData" size="mini" ref="Workstatistics"
|
||||
:row-config="{ isCurrent: true, isHover: true }" :height="vh" border style="width: 100%"
|
||||
header-cell-class-name="table_header" :header-cell-style="{
|
||||
height: '25px',
|
||||
padding: '0px'
|
||||
}" :row-style="{ height: '28px' }" :cell-style="{ padding: '0px' }" @checkbox-all="selectAllChangeEvent"
|
||||
@checkbox-change="handleSelectionChange">
|
||||
<vxe-table-column type="checkbox" align="center" width="55"></vxe-table-column>
|
||||
<template v-for="(item, index) in Workstatistics">
|
||||
<vxe-table-colgroup v-if="item.prop == 'isUploadHead'" :field="item.prop" :title="item.label"
|
||||
:key="index" :min-width="item.width" show-overflow align="center" fixed="right">
|
||||
<template slot-scope="scope">
|
||||
<el-tag type="primary" size="small" style="color: #409eff; background: #ecf5ff"
|
||||
v-if="scope.row.isUploadHead == 0">
|
||||
未上送
|
||||
</el-tag>
|
||||
<el-tag type="primary" size="small" style="color: #67c23a; background: #f0f9eb"
|
||||
v-if="scope.row.isUploadHead == 1">
|
||||
已上送
|
||||
</el-tag>
|
||||
<el-tag type="primary" size="small" style="color: #909399; background: #f4f4f5"
|
||||
v-if="scope.row.isUploadHead == 2">
|
||||
取消上送
|
||||
</el-tag>
|
||||
</template>
|
||||
</vxe-table-colgroup>
|
||||
<vxe-table-colgroup v-else-if="item.prop == 'cityName'" :field="item.prop" :title="item.label"
|
||||
:key="index" :min-width="item.width" show-overflow align="center">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.cityName == null ? '/' : scope.row.cityName }}
|
||||
</template>
|
||||
</vxe-table-colgroup>
|
||||
<vxe-table-colgroup v-else-if="item.prop == 'countyName'" :field="item.prop" :title="item.label"
|
||||
:key="index" :min-width="item.width" show-overflow align="center">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.countyName == null ? '/' : scope.row.countyName }}
|
||||
</template>
|
||||
</vxe-table-colgroup>
|
||||
<vxe-table-colgroup v-else :field="item.prop" :title="item.label" :key="index" :min-width="item.width"
|
||||
show-overflow align="center">
|
||||
<template v-for="(item, index) in item.children">
|
||||
<vxe-table-column :field="item.prop" :title="item.label" :key="index" :min-width="item.width"
|
||||
show-overflow align="center"></vxe-table-column>
|
||||
</template>
|
||||
</vxe-table-colgroup>
|
||||
</template>
|
||||
</vxe-table>
|
||||
<el-pagination background align="right" @size-change="handleSizeChange" @current-change="handleCurrentChange"
|
||||
:current-page="formData.pageNum" :page-sizes="[20, 30, 50, 100]" :page-size="formData.pageSize"
|
||||
layout="total, sizes, prev, pager, next, jumper" :total="total" class="mt10"></el-pagination>
|
||||
<el-dialog :close-on-click-modal="false" title="统计时间" :visible.sync="problemTime" width="20%">
|
||||
<el-form label-width="90px">
|
||||
<el-form-item label="选择时间:" class="mt20">
|
||||
<el-date-picker v-model="problemTimeValue" type="month" value-format="yyyy-MM"
|
||||
:picker-options="pickerOptions" @change="changeFn" placeholder="选择月"></el-date-picker>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="problemTime = false">取 消</el-button>
|
||||
<el-button type="primary" @click="timeQuery">确 定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import Area from '@/views/components/Area/Area.vue'
|
||||
import Timeinterval from '@/views/components/TimePicker/index4'
|
||||
import { statisticReportPage, pushMonthReportStatistic, statisticReport } from '@/api/Supervisionmanage2/Workplan'
|
||||
import { listRoleMenu, updateRoleMenu } from '@/api/admin/role'
|
||||
export default {
|
||||
components: { Area, Timeinterval },
|
||||
props: {},
|
||||
data() {
|
||||
return {
|
||||
biaoCode: '',
|
||||
id: JSON.parse(window.sessionStorage.getItem('Info')).roleList[0],
|
||||
isLoading: false,
|
||||
problemTime: false,
|
||||
zoom: '', //图表焦点校验
|
||||
vh: undefined,
|
||||
problemTimeValue: '',
|
||||
timeData: '',
|
||||
formData: {
|
||||
searchValue: '',
|
||||
searchBeginTime: '',
|
||||
searchEndTime: '',
|
||||
pageNum: 1,
|
||||
pageSize: 20
|
||||
},
|
||||
pickerOptions: {
|
||||
disabledDate: time => {
|
||||
return this.checkTime(time)
|
||||
}
|
||||
},
|
||||
|
||||
total: 0,
|
||||
tableData: [],
|
||||
multipleSelection: [],
|
||||
Workstatistics: [
|
||||
{ prop: 'provinceName', label: '所属网省', width: 150 },
|
||||
{ prop: 'cityName', label: '所属地市', width: 150 },
|
||||
{ prop: 'countyName', label: '所属县区', width: 150 },
|
||||
{
|
||||
prop: 'converterStation',
|
||||
label: '特高压换流站',
|
||||
children: [
|
||||
{
|
||||
prop: 'convertYearSupvNum',
|
||||
label: '本年计划监督数量',
|
||||
width: 140
|
||||
},
|
||||
{ prop: 'convertMonthSupvNum', label: '本月监督数量', width: 120 },
|
||||
{ prop: 'convertTotalSupvNum', label: '累计监督数量', width: 120 },
|
||||
{ prop: 'convertMonthQuesNum', label: '本月问题数量', width: 120 },
|
||||
{ prop: 'convertTotalQuesNum', label: '累计问题数量', width: 120 },
|
||||
{
|
||||
prop: 'convertMonthReformNum',
|
||||
label: '本月整改问题数量',
|
||||
width: 140
|
||||
},
|
||||
{
|
||||
prop: 'convertTotalReformNum',
|
||||
label: '累计整改问题数量',
|
||||
width: 140
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
prop: 'newEnergy',
|
||||
label: '新能源场站(在运站)',
|
||||
children: [
|
||||
{
|
||||
prop: 'energyYearSupvNum',
|
||||
label: '本年计划监督数量',
|
||||
width: 140
|
||||
},
|
||||
{ prop: 'energyMonthSupvNum', label: '本月监督数量', width: 120 },
|
||||
{ prop: 'energyTotalSupvNum', label: '累计监督数量', width: 120 },
|
||||
{ prop: 'energyMonthQuesNum', label: '本月问题数量', width: 120 },
|
||||
{ prop: 'energyTotalQuesNum', label: '累计问题数量', width: 120 },
|
||||
{
|
||||
prop: 'energyMonthReformNum',
|
||||
label: '本月整改问题数量',
|
||||
width: 140
|
||||
},
|
||||
{
|
||||
prop: 'energyTotalReformNum',
|
||||
label: '累计整改问题数量',
|
||||
width: 140
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
prop: 'extension',
|
||||
label: '新能源场站(改扩建)',
|
||||
children: [
|
||||
{
|
||||
prop: 'energyYearSupvNewNum',
|
||||
label: '本年计划监督数量',
|
||||
width: 140
|
||||
},
|
||||
{
|
||||
prop: 'energyMonthSupvNewNum',
|
||||
label: '本月监督数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'energyTotalSupvNewNum',
|
||||
label: '累计监督数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'energyMonthQuesNewNum',
|
||||
label: '本月问题数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'energyTotalQuesNewNum',
|
||||
label: '累计问题数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'energyMonthReformNewNum',
|
||||
label: '本月整改问题数量',
|
||||
width: 140
|
||||
},
|
||||
{
|
||||
prop: 'energyTotalReformNewNum',
|
||||
label: '累计整改问题数量',
|
||||
width: 140
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
prop: 'sensitive ',
|
||||
label: '电能质量敏感用户',
|
||||
children: [
|
||||
{
|
||||
prop: 'sensitiveYearSupvNum',
|
||||
label: '本年计划监督数量',
|
||||
width: 140
|
||||
},
|
||||
{
|
||||
prop: 'sensitiveMonthSupvNum',
|
||||
label: '本月监督数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'sensitiveTotalSupvNum',
|
||||
label: '累计监督数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'sensitiveMonthQuesNum',
|
||||
label: '本月问题数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'sensitiveTotalQuesNum',
|
||||
label: '累计问题数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'sensitiveMonthReformNum',
|
||||
label: '本月整改问题数量',
|
||||
width: 140
|
||||
},
|
||||
{
|
||||
prop: 'sensitiveTotalReformNum',
|
||||
label: '累计整改问题数量',
|
||||
width: 140
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
prop: 'plan',
|
||||
label: '供电电压计划',
|
||||
children: [
|
||||
{
|
||||
prop: 'powerMonthPlanNum',
|
||||
label: '本月前计划开展数量',
|
||||
width: 150
|
||||
},
|
||||
{
|
||||
prop: 'powerMonthConductedNum',
|
||||
label: '本月前已开展数量',
|
||||
width: 140
|
||||
},
|
||||
{ prop: 'powerMonthQuesNum', label: '本月问题数量', width: 140 },
|
||||
{ prop: 'powerTotalQuesNum', label: '累计问题数量', width: 140 },
|
||||
{
|
||||
prop: 'powerMonthReformNum',
|
||||
label: '本月整改问题数量',
|
||||
width: 140
|
||||
},
|
||||
{
|
||||
prop: 'powerTotalReformNum',
|
||||
label: '累计整改问题数量',
|
||||
width: 140
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
prop: 'capacitor ',
|
||||
label: '电容器组监督',
|
||||
children: [
|
||||
{
|
||||
prop: 'capacitorYearSupvNum',
|
||||
label: '本年计划监督数量',
|
||||
width: 140
|
||||
},
|
||||
{
|
||||
prop: 'capacitorMonthSupvNum',
|
||||
label: '本月监督数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'capacitorTotalSupvNum',
|
||||
label: '累计监督数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'capacitorMonthQuesNum',
|
||||
label: '本月问题数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'capacitorTotalQuesNum',
|
||||
label: '累计问题数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'capacitorMonthReformNum',
|
||||
label: '本月整改问题数量',
|
||||
width: 140
|
||||
},
|
||||
{
|
||||
prop: 'capacitorTotalReformNum',
|
||||
label: '累计整改问题数量',
|
||||
width: 140
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
prop: 'capacitor ',
|
||||
label: '评估报告监督',
|
||||
children: [
|
||||
{
|
||||
prop: 'appraisalReportYearSupvNum',
|
||||
label: '本年计划监督数量',
|
||||
width: 140
|
||||
},
|
||||
{
|
||||
prop: 'appraisalReportMonthSupvNum',
|
||||
label: '本月监督数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'appraisalReportTotalSupvNum',
|
||||
label: '累计监督数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'appraisalReportMonthQuesNum',
|
||||
label: '本月问题数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'appraisalReportTotalQuesNum',
|
||||
label: '累计问题数量',
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
prop: 'appraisalReportMonthReformNum',
|
||||
label: '本月整改问题数量',
|
||||
width: 140
|
||||
},
|
||||
{
|
||||
prop: 'appraisalReportTotalReformNum',
|
||||
label: '累计整改问题数量',
|
||||
width: 140
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{ prop: 'planYearCountNum', label: '总本年监督数量', width: 130 },
|
||||
{ prop: 'planCountNum', label: '总累计监督数量', width: 130 },
|
||||
{ prop: 'problemCountNum', label: '总累计问题数量', width: 130 },
|
||||
{ prop: 'reformCountNum', label: '总整改问题数量', width: 130 },
|
||||
{ prop: 'alarmCountNum', label: '总预告警单数量', width: 130 },
|
||||
{ prop: 'alarmBackCountNum', label: '总反馈单数量', width: 110 },
|
||||
{ prop: 'isUploadHead', label: '上送标识', width: 100 },
|
||||
]
|
||||
}
|
||||
},
|
||||
created() { },
|
||||
mounted() {
|
||||
this.listmenuRoleList()
|
||||
this.zoom = 1 / document.body.style.zoom
|
||||
|
||||
// this.onSubmit();
|
||||
this.setHeight()
|
||||
window.addEventListener('resize', this.setHeight)
|
||||
},
|
||||
beforeDestroy() {
|
||||
window.removeEventListener('resize', this.setHeight)
|
||||
},
|
||||
methods: {
|
||||
setHeight() {
|
||||
this.zoom = 1 / document.body.style.zoom
|
||||
this.vh = window.sessionStorage.getItem('appheight') - 95
|
||||
},
|
||||
checkTime(time) {
|
||||
let t = new Date().getDate()
|
||||
// 如果想包含本月本月 - 8.64e7 * t 就不需要了,
|
||||
// 如果想之前的不能选择把 > 换成 <
|
||||
return time.getTime() > Date.now()
|
||||
},
|
||||
//获取权限
|
||||
listmenuRoleList() {
|
||||
let p = { id: this.id }
|
||||
listRoleMenu(p).then(response => {
|
||||
let ids = []
|
||||
//console.log("权限资源",response.data)
|
||||
response.data.forEach(item => {
|
||||
if (item.code === 'tjrbpush') {
|
||||
this.biaoCode = item.code
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
takeover(val) {
|
||||
this.formData.searchValue = val[0].id
|
||||
this.onSubmit()
|
||||
},
|
||||
handleSelectionChange(val) {
|
||||
// console.log(val);
|
||||
this.multipleSelection = val.records
|
||||
},
|
||||
selectAllChangeEvent(val) {
|
||||
// console.log(val);
|
||||
this.multipleSelection = val.records
|
||||
},
|
||||
//查询
|
||||
onSubmit() {
|
||||
this.isLoading = true
|
||||
this.$refs.Timeinterval.timeOptions = [
|
||||
// { label: "年份", value: 1 },
|
||||
// { label: "季度", value: 2 },
|
||||
{ label: '月份', value: 3 }
|
||||
// { label: "周", value: 4 },
|
||||
// // { label: "自定义", value: 5 },
|
||||
]
|
||||
this.item = this.$refs.Timeinterval.timeValue
|
||||
this.formData.searchBeginTime = this.item[0]
|
||||
this.formData.searchEndTime = this.item[1]
|
||||
statisticReportPage(this.formData).then(res => {
|
||||
this.tableData = res.data.records
|
||||
this.total = res.data.total
|
||||
this.isLoading = false
|
||||
})
|
||||
},
|
||||
changeFn(val) {
|
||||
// console.log(val);
|
||||
let year = parseInt(val.substring(0, 4))
|
||||
let month = parseInt(val.substring(5, 7))
|
||||
// console.log(year, month);
|
||||
if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) {
|
||||
if (month < 10) {
|
||||
this.timeData = year + '-' + '0' + month + '-31'
|
||||
} else {
|
||||
this.timeData = year + '-' + month + '-31'
|
||||
}
|
||||
} else if (month == 4 || month == 6 || month == 9 || month == 11) {
|
||||
if (month < 10) {
|
||||
this.timeData = year + '-' + '0' + month + '-30'
|
||||
} else {
|
||||
this.timeData = year + '-' + month + '-30'
|
||||
}
|
||||
} else if (month == 2) {
|
||||
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
|
||||
this.timeData = year + '-' + '0' + month + '-29'
|
||||
} else {
|
||||
this.timeData = year + '-' + '0' + month + '-28'
|
||||
}
|
||||
}
|
||||
// console.log(this.timeData);
|
||||
},
|
||||
//月报统计
|
||||
reportStatistics() {
|
||||
this.problemTime = true
|
||||
// let form = {
|
||||
// timeId: this.formData.searchEndTime
|
||||
// }
|
||||
// statisticReport(form).then(res=>{
|
||||
// if ((res.code = "A0000")) {
|
||||
// this.$message({
|
||||
// type: "success",
|
||||
// message: res.message,
|
||||
// });
|
||||
// }
|
||||
// })
|
||||
},
|
||||
//确认
|
||||
timeQuery() {
|
||||
let form = {
|
||||
timeId: this.timeData
|
||||
}
|
||||
statisticReport(form).then(res => {
|
||||
if ((res.code == 'A0000')) {
|
||||
this.$message({
|
||||
type: 'success',
|
||||
message: res.message
|
||||
})
|
||||
}
|
||||
// this.problemTime = false;
|
||||
})
|
||||
},
|
||||
//导出
|
||||
exportEvent() {
|
||||
this.item = this.$refs.Timeinterval.timeValue
|
||||
this.formData.searchBeginTime = this.item[0]
|
||||
this.formData.searchEndTime = this.item[1]
|
||||
statisticReportPage(this.formData).then(res => {
|
||||
res.data.records.forEach(item => {
|
||||
if (item.isUploadHead == 0) {
|
||||
item.isUploadHead = '未上送'
|
||||
} else if (item.isUploadHead == 1) {
|
||||
item.isUploadHead = '已上送'
|
||||
} else if (item.isUploadHead == 2) {
|
||||
item.isUploadHead = '取消上送'
|
||||
}
|
||||
})
|
||||
let month = parseInt(this.formData.searchBeginTime.substring(5, 7))
|
||||
// if(month <10)
|
||||
this.$refs.Workstatistics.exportData({
|
||||
filename: month + '月统计月报', // 文件名字
|
||||
sheetName: 'Sheet1',
|
||||
type: 'xlsx', //导出文件类型 xlsx 和 csv
|
||||
useStyle: true,
|
||||
data: res.data.records, // 数据源 // 过滤那个字段导出
|
||||
columnFilterMethod: function (column, $columnIndex) {
|
||||
return !(column.$columnIndex === 0)
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
//计划上送网公司
|
||||
push() {
|
||||
if (this.multipleSelection.length == 0) {
|
||||
this.$message({
|
||||
showClose: true,
|
||||
message: '请选择一条数据上送网公司!!!',
|
||||
type: 'warning'
|
||||
})
|
||||
return
|
||||
}
|
||||
let isUpload = []
|
||||
this.multipleSelection.forEach(item => {
|
||||
isUpload.push(item.isUploadHead)
|
||||
})
|
||||
// if(isUpload.includes(1) == true){
|
||||
// this.$message({
|
||||
// type: "warning",
|
||||
// message: '已上送,无需重复上送',
|
||||
// });
|
||||
// return
|
||||
// }else{
|
||||
this.$confirm('是否确认上送网公司?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
})
|
||||
.then(() => {
|
||||
let monthReportId = []
|
||||
this.multipleSelection.forEach(item => {
|
||||
monthReportId.push(item.monthReportId)
|
||||
})
|
||||
|
||||
pushMonthReportStatistic(monthReportId).then(res => {
|
||||
if ((res.code == 'A0000')) {
|
||||
this.$message({
|
||||
type: 'success',
|
||||
message: res.message
|
||||
})
|
||||
}
|
||||
this.onSubmit()
|
||||
})
|
||||
})
|
||||
.catch(() => {
|
||||
this.$message({
|
||||
type: 'info',
|
||||
message: '已取消上送'
|
||||
})
|
||||
})
|
||||
// }
|
||||
},
|
||||
//每页条数改变时触发 选择一页显示多少行
|
||||
handleSizeChange(val) {
|
||||
this.formData.pageSize = val
|
||||
this.onSubmit()
|
||||
},
|
||||
//当前页改变时触发 跳转其他页
|
||||
handleCurrentChange(val) {
|
||||
this.formData.pageNum = val
|
||||
this.onSubmit()
|
||||
},
|
||||
handleNodeClick(data) {
|
||||
this.formData.searchValue = data.id
|
||||
}
|
||||
},
|
||||
|
||||
computed: {},
|
||||
|
||||
watch: {}
|
||||
}
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
@import url('../../../styles/comStyle.less');
|
||||
|
||||
::v-deep .el-form-item--small .el-form-item__content,
|
||||
.el-form-item--small .el-form-item__label {
|
||||
height: 32px;
|
||||
}
|
||||
|
||||
::v-deep .vxe-table .cell {
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,514 @@
|
||||
<template>
|
||||
<div class="pd10" v-loading="isLoading" element-loading-text="数据加载中">
|
||||
<el-form :inline="true" :model="formData" class="demo-form-inline">
|
||||
<!-- <el-form-item>
|
||||
<Area @click="handleNodeClick" ref="area" @send="takeover"></Area>
|
||||
</el-form-item> -->
|
||||
<el-form-item>
|
||||
<Timeinterval ref="Timeinterval" :interval="3"></Timeinterval>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" @click="onSubmit">查询</el-button>
|
||||
<!-- <el-button size="small" type="primary" icon="el-icon-circle-plus" @click="addFn">新增</el-button> -->
|
||||
<el-button size="small" type="primary" icon="el-icon-delete" @click="deleteFn">删除</el-button>
|
||||
<el-button size="small" type="primary" v-if="biaoCode === 'tjrbpush'" @click="push">上送网公司</el-button>
|
||||
<el-button size="small" type="primary" icon="el-icon-download" @click="exportEvent">导出</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<vxe-table stripe :data="tableData" size="mini" ref="prealarmData"
|
||||
:row-config="{ isCurrent: true, isHover: true }" :height="vh" border style="width: 100%"
|
||||
header-cell-class-name="table_header" :header-cell-style="{
|
||||
height: '25px',
|
||||
padding: '0px'
|
||||
}" :row-style="{ height: '28px' }" :cell-style="{ padding: '0px' }" @checkbox-all="selectAllChangeEvent"
|
||||
@checkbox-change="handleSelectionChange">
|
||||
<vxe-table-column type="checkbox" align="center" width="55"></vxe-table-column>
|
||||
<vxe-table-column field="billNo" show-overflow align="center" title="单据编号"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<vxe-table-column field="billName" show-overflow align="center" title="单据名称"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<vxe-table-column field="executeOrgName" show-overflow align="center" title="项目执行单位名称"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<vxe-table-column field="treatmentMeasures" show-overflow align="center" title="采取措施"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<vxe-table-column field="fillUserName" show-overflow align="center" title="填报人名称"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<vxe-table-column field="completeTime" show-overflow align="center" title="完成时间"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<!-- <vxe-table-column field="workAlarmId" show-overflow align="center" title="告预警单id" min-width="120px"></vxe-table-column> -->
|
||||
<vxe-table-column field="feedbackOrgName" show-overflow align="center" title="反馈单位名称"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<vxe-table-column field="provinceName" show-overflow align="center" title="省名称"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<vxe-table-column field="province" show-overflow align="center" title="操作" min-width="120px">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="primary" size="mini" @click="modifyFn(scope.row)">修改</el-button>
|
||||
</template>
|
||||
</vxe-table-column>
|
||||
</vxe-table>
|
||||
<el-pagination background align="right" @size-change="handleSizeChange" @current-change="handleCurrentChange"
|
||||
:current-page="formData.pageNum" :page-sizes="[20, 30, 50, 100]" :page-size="formData.pageSize"
|
||||
layout="total, sizes, prev, pager, next, jumper" :total="total" class="mt10"></el-pagination>
|
||||
<!-- 新增/修改 -->
|
||||
<el-dialog :close-on-click-modal="false" title="修改反馈数据" :visible.sync="modifyInformation" width="40%"
|
||||
height="80%">
|
||||
<el-form :inline="true" :model="form1" class="form" ref="form" label-width="130px" :rules="rules">
|
||||
<el-form-item label="项目执行单位名称:" class="mt10" prop="executeOrgName">
|
||||
<Organization2 @click="handleNodeClick6" ref="Organization2" :valueTitle="valueTitle5"
|
||||
@clear="clear('executeOrgId', 'executeOrgName')" :editCheckCode="editCheckCode5">
|
||||
</Organization2>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="填报人名称:" prop="fillUserId" class="mt10">
|
||||
<el-select v-model="form1.fillUserId" clearable placeholder="请选择接收人名称" @change="changeFn">
|
||||
<el-option v-for="item in ImplementationPeople" :key="item.id" :label="item.name"
|
||||
:value="item.id"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="完成时间:" prop="completeTime" class="mt10">
|
||||
<el-date-picker v-model="form1.completeTime" value-format="yyyy-MM-dd HH:mm:ss" type="datetime"
|
||||
placeholder="选择日期"></el-date-picker>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="告预警单id:" prop="workAlarmId" class="mt10">
|
||||
<el-input v-model="form1.workAlarmId" ></el-input>
|
||||
</el-form-item> -->
|
||||
<el-form-item label="反馈单位名称:" class="mt10" prop="feedbackOrgName">
|
||||
<Organization1 @click="handleNodeClick7" ref="Organization1" :valueTitle="valueTitle6"
|
||||
@clear="clear('feedbackOrgId', 'feedbackOrgName')" :editCheckCode="editCheckCode6">
|
||||
</Organization1>
|
||||
</el-form-item>
|
||||
<el-form-item label="采取措施:" prop="treatmentMeasures" class="mt10">
|
||||
<el-input v-model="form1.treatmentMeasures" autosize type="textarea"></el-input>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="省名称:" class="mt10" prop="provinceName" >
|
||||
<Organization1
|
||||
@click="handleNodeClick8" ref="Organization1" :valueTitle="valueTitle7"
|
||||
:editCheckCode="editCheckCode7"></Organization1>
|
||||
</el-form-item> -->
|
||||
</el-form>
|
||||
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="modifyInformation = false">取 消</el-button>
|
||||
<el-button type="primary" @click="modifyinformationFn">确 定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import Area from '@/views/components/Area/Area.vue'
|
||||
import Organization2 from './Area/Organization2.vue'
|
||||
import Organization1 from './Area/Organization1.vue'
|
||||
import Company from './Area/Company.vue'
|
||||
import Timeinterval from '@/views/components/TimePicker/index4'
|
||||
// import { dicData } from "@/assets/commjs/dictypeData";
|
||||
import {
|
||||
getUserListByDeptId,
|
||||
pageAlarmBack,
|
||||
updateAlarmBack,
|
||||
delAlarmBack,
|
||||
pushAlarmHis,
|
||||
downAlarmBack
|
||||
} from '@/api/Supervisionmanage2/feedbackdata'
|
||||
import { listRoleMenu, updateRoleMenu } from '@/api/admin/role'
|
||||
export default {
|
||||
components: { Area, Timeinterval, Organization2, Organization1 },
|
||||
props: {},
|
||||
data() {
|
||||
return {
|
||||
biaoCode: '',
|
||||
id: JSON.parse(window.sessionStorage.getItem('Info')).roleList[0],
|
||||
isLoading: false,
|
||||
modifyInformation: false,
|
||||
zoom: '', //图表焦点校验
|
||||
vh: undefined,
|
||||
editCheckCode6: '',
|
||||
valueTitle6: '',
|
||||
editCheckCode5: '',
|
||||
valueTitle5: '',
|
||||
formData: {
|
||||
searchBeginTime: '',
|
||||
searchEndTime: '',
|
||||
pageNum: 1,
|
||||
pageSize: 20
|
||||
},
|
||||
form1: {
|
||||
completeTime: '',
|
||||
executeOrgId: '',
|
||||
executeOrgName: '',
|
||||
feedbackOrgId: '',
|
||||
feedbackOrgName: '',
|
||||
fillUserId: '',
|
||||
fillUserName: '',
|
||||
treatmentMeasures: '',
|
||||
workAlarmId: ''
|
||||
},
|
||||
rules: {
|
||||
treatmentMeasures: [{ required: true, message: '请输入采取措施', trigger: 'blur' }],
|
||||
fillUserId: [{ required: true, message: '请选择接收人名称', trigger: 'change' }],
|
||||
completeTime: [{ required: true, message: '选择日期', trigger: 'change' }]
|
||||
},
|
||||
total: 0,
|
||||
tableData: [],
|
||||
multipleSelection: [],
|
||||
ImplementationPeople: []
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getUserId()
|
||||
},
|
||||
mounted() {
|
||||
this.setHeight()
|
||||
window.addEventListener('resize', this.setHeight)
|
||||
this.listmenuRoleList()
|
||||
|
||||
this.onSubmit()
|
||||
this.getUserId()
|
||||
},
|
||||
beforeDestroy() {
|
||||
window.removeEventListener('resize', this.setHeight)
|
||||
},
|
||||
methods: {
|
||||
setHeight() {
|
||||
this.vh = window.sessionStorage.getItem('appheight') - 95
|
||||
},
|
||||
clear(key, key1) {
|
||||
this.form1[key] = ''
|
||||
this.form1[key1] = ''
|
||||
},
|
||||
//获取权限
|
||||
listmenuRoleList() {
|
||||
let p = { id: this.id }
|
||||
listRoleMenu(p).then(response => {
|
||||
let ids = []
|
||||
//console.log("权限资源",response.data)
|
||||
response.data.forEach(item => {
|
||||
if (item.code === 'tjrbpush') {
|
||||
this.biaoCode = item.code
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
// //获取类型
|
||||
// getclassificationData() {
|
||||
// //计划状态
|
||||
// this.planStatus = dicData("plan_status", []);
|
||||
// },
|
||||
// takeover(val){
|
||||
// this.formData.searchValue = val[0].id
|
||||
// this.onSubmit();
|
||||
// },
|
||||
getUserId() {
|
||||
let form = {
|
||||
deptId: JSON.parse(window.sessionStorage.getItem('Info')).deptId
|
||||
}
|
||||
getUserListByDeptId(form).then(res => {
|
||||
this.ImplementationPeople = res.data
|
||||
})
|
||||
},
|
||||
handleSelectionChange(val) {
|
||||
// console.log(val);
|
||||
this.multipleSelection = val.records
|
||||
},
|
||||
selectAllChangeEvent(val) {
|
||||
// console.log(val);
|
||||
this.multipleSelection = val.records
|
||||
},
|
||||
//查询
|
||||
onSubmit() {
|
||||
this.isLoading = true
|
||||
// this.$refs.Timeinterval.timeOptions = [
|
||||
// // { label: "年份", value: 1 },
|
||||
// // { label: "季度", value: 2 },
|
||||
// { label: "月份", value: 3 },
|
||||
// // { label: "周", value: 4 },
|
||||
// // // { label: "自定义", value: 5 },
|
||||
// ]
|
||||
this.item = this.$refs.Timeinterval.timeValue
|
||||
this.formData.searchBeginTime = this.item[0]
|
||||
this.formData.searchEndTime = this.item[1]
|
||||
pageAlarmBack(this.formData).then(res => {
|
||||
this.tableData = res.data.records
|
||||
this.total = res.data.total
|
||||
this.isLoading = false
|
||||
})
|
||||
},
|
||||
//数据过滤
|
||||
// formFilter(row,column){
|
||||
// if(row.column.property == "planStatus"){
|
||||
// let title = ''
|
||||
// this.planStatus.forEach(item=>{
|
||||
// if( item.id == row.row.planStatus ){
|
||||
// title =item.name
|
||||
// }
|
||||
// })
|
||||
// return title
|
||||
// }else {
|
||||
// return row.row[row.column.property];
|
||||
// }
|
||||
// },
|
||||
//新增
|
||||
// addFn(){
|
||||
// this.modifyInformation = true
|
||||
// this.valueTitle = ''
|
||||
// this.editCheckCode = ''
|
||||
// this.form = {
|
||||
// billNo:'',
|
||||
// billName:'',
|
||||
// billType:'',
|
||||
// createrOrgName:'',
|
||||
// specialityType:'',
|
||||
// orgName:'',
|
||||
// receiveUserName:'',
|
||||
// createrTime:'',
|
||||
// managerDeptName:'',
|
||||
// mainSenderName:'',
|
||||
// copySenderName:'',
|
||||
// techSupvBasis:'',
|
||||
// problemDesc:'',
|
||||
// dealAdvise:'',
|
||||
// }
|
||||
// },
|
||||
//修改
|
||||
modifyFn(val) {
|
||||
this.modifyInformation = true
|
||||
this.valueTitle5 = val.executeOrgName
|
||||
this.editCheckCode5 = val.executeOrgId
|
||||
this.valueTitle6 = val.feedbackOrgName
|
||||
this.editCheckCode6 = val.feedbackOrgId
|
||||
this.form1 = JSON.parse(JSON.stringify(val))
|
||||
},
|
||||
//修改确定
|
||||
modifyinformationFn() {
|
||||
this.$confirm('是否确认修改?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
})
|
||||
.then(() => {
|
||||
updateAlarmBack(this.form1).then(res => {
|
||||
if (res.code == 'A0000') {
|
||||
this.$message({
|
||||
type: 'success',
|
||||
message: res.message
|
||||
})
|
||||
}
|
||||
this.onSubmit()
|
||||
this.modifyInformation = false
|
||||
})
|
||||
})
|
||||
.catch(() => {
|
||||
this.$message({
|
||||
type: 'info',
|
||||
message: '已取消修改'
|
||||
})
|
||||
})
|
||||
},
|
||||
//导出
|
||||
exportEvent() {
|
||||
// pageAlarmBack({
|
||||
// searchBeginTime:this.formData.searchBeginTime,
|
||||
// searchEndTime:this.formData.searchEndTime,
|
||||
// orgId:this.formData.orgId ,
|
||||
// pageNum: 1,
|
||||
// pageSize: this.total,
|
||||
// }).then((res) => {
|
||||
// res.data.records.forEach(item=>{
|
||||
// if(item.isUploadHead == 0){
|
||||
// item.isUploadHead = '未上送'
|
||||
// }else if(item.isUploadHead == 1){
|
||||
// item.isUploadHead = '已上送'
|
||||
// }else if(item.isUploadHead == 2){
|
||||
// item.isUploadHead = '取消上送'
|
||||
// }
|
||||
// })
|
||||
// this.$refs.prealarmData.exportData({
|
||||
// filename: '技术监督预告警单反馈数据', // 文件名字
|
||||
// sheetName: "Sheet1",
|
||||
// type: "xlsx", //导出文件类型 xlsx 和 csv
|
||||
// useStyle: true,
|
||||
// data: res.data.records, // 数据源 // 过滤那个字段导出
|
||||
// columnFilterMethod: function (column, $columnIndex) {
|
||||
// return !(column.$columnIndex === 0);
|
||||
// },
|
||||
// });
|
||||
// });
|
||||
downAlarmBack().then(res => {
|
||||
let blob = new Blob([res], {
|
||||
type: 'application/vnd.ms-excel'
|
||||
})
|
||||
const url = window.URL.createObjectURL(blob)
|
||||
const link = document.createElement('a') // 创建a标签
|
||||
link.href = url // link.download = "电压暂降事件分析报告"; // 设置下载的文件名
|
||||
link.download = '技术监督预告警单反馈数据.xls' // 设置下载的文件名
|
||||
document.body.appendChild(link)
|
||||
link.click() //执行下载
|
||||
document.body.removeChild(link)
|
||||
})
|
||||
},
|
||||
//计划上送网公司
|
||||
push() {
|
||||
if (this.multipleSelection.length == 0) {
|
||||
this.$message({
|
||||
showClose: true,
|
||||
message: '请选择一条数据上送网公司!!!',
|
||||
type: 'warning'
|
||||
})
|
||||
return
|
||||
}
|
||||
// let isUpload = []
|
||||
// this.multipleSelection.forEach(item=>{
|
||||
// isUpload.push(item.isUploadHead)
|
||||
// })
|
||||
// if(isUpload.includes(1) == true){
|
||||
// this.$message({
|
||||
// type: "warning",
|
||||
// message: '已上送,无需重复上送',
|
||||
// });
|
||||
// return
|
||||
// }else{
|
||||
this.$confirm('是否确认上送网公司?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
})
|
||||
.then(() => {
|
||||
let ids = []
|
||||
this.multipleSelection.forEach(item => {
|
||||
ids.push(item.alarmBackId)
|
||||
})
|
||||
|
||||
pushAlarmHis(ids).then(res => {
|
||||
if ((res.code == 'A0000')) {
|
||||
this.$message({
|
||||
type: 'success',
|
||||
message: res.message
|
||||
})
|
||||
}
|
||||
this.onSubmit()
|
||||
})
|
||||
})
|
||||
.catch(() => {
|
||||
this.$message({
|
||||
type: 'info',
|
||||
message: '已取消上送'
|
||||
})
|
||||
})
|
||||
// }
|
||||
},
|
||||
// 删除
|
||||
deleteFn() {
|
||||
if (this.multipleSelection.length == 0) {
|
||||
this.$message({
|
||||
showClose: true,
|
||||
message: '请选择一条数据删除!!!',
|
||||
type: 'warning'
|
||||
})
|
||||
return
|
||||
}
|
||||
this.$confirm('是否确认删除?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
})
|
||||
.then(() => {
|
||||
let planIds = []
|
||||
this.multipleSelection.forEach(item => {
|
||||
planIds.push(item.alarmBackId)
|
||||
})
|
||||
|
||||
delAlarmBack(planIds).then(res => {
|
||||
if ((res.code == 'A0000')) {
|
||||
this.$message({
|
||||
type: 'success',
|
||||
message: res.message
|
||||
})
|
||||
}
|
||||
this.onSubmit()
|
||||
})
|
||||
})
|
||||
.catch(() => {
|
||||
this.$message({
|
||||
type: 'info',
|
||||
message: '已取消删除'
|
||||
})
|
||||
})
|
||||
},
|
||||
changeFn(val) {
|
||||
this.ImplementationPeople.forEach(item => {
|
||||
if (val == item.id) {
|
||||
this.form1.fillUserName = item.name
|
||||
}
|
||||
})
|
||||
},
|
||||
//每页条数改变时触发 选择一页显示多少行
|
||||
handleSizeChange(val) {
|
||||
this.formData.pageSize = val
|
||||
this.onSubmit()
|
||||
},
|
||||
//当前页改变时触发 跳转其他页
|
||||
handleCurrentChange(val) {
|
||||
this.formData.pageNum = val
|
||||
this.onSubmit()
|
||||
},
|
||||
handleNodeClick(data) {
|
||||
// this.formData.searchValue = data.id
|
||||
},
|
||||
handleNodeClick6(data) {
|
||||
this.form1.executeOrgId = data.code
|
||||
this.form1.executeOrgName = data.name
|
||||
},
|
||||
handleNodeClick7(data) {
|
||||
this.form1.feedbackOrgId = data.code
|
||||
this.form1.feedbackOrgName = data.name
|
||||
}
|
||||
},
|
||||
|
||||
computed: {},
|
||||
|
||||
watch: {}
|
||||
}
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
@import url('../../../styles/comStyle.less');
|
||||
|
||||
::v-deep .el-form-item--small .el-form-item__content,
|
||||
.el-form-item--small .el-form-item__label {
|
||||
height: 32px;
|
||||
}
|
||||
|
||||
::v-deep .form {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
justify-content: space-between;
|
||||
|
||||
.el-form-item {
|
||||
display: flex;
|
||||
width: 48%;
|
||||
|
||||
.el-form-item__content {
|
||||
flex: 1 !important;
|
||||
|
||||
.el-select {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.el-input__inner {
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
.el-date-editor {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep .el-form-item--small .el-form-item__error {
|
||||
padding-top: 8px;
|
||||
}
|
||||
|
||||
::v-deep .vxe-table .cell {
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
||||
505
src/views/Process-supervision/Supervisionmanage2/historyData.vue
Normal file
505
src/views/Process-supervision/Supervisionmanage2/historyData.vue
Normal file
@@ -0,0 +1,505 @@
|
||||
<template>
|
||||
<div class="pd10" v-loading="isLoading" element-loading-text="数据加载中">
|
||||
<el-form :inline="true" :model="formData" class="demo-form-inline">
|
||||
<el-form-item>
|
||||
<Area @click="handleNodeClick" ref="area" @send="takeover"></Area>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<Timeinterval ref="Timeinterval" :interval="3"></Timeinterval>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" @click="onSubmit1">查询</el-button>
|
||||
<el-button size="small" type="primary" icon="el-icon-delete" @click="deleteFn">删除</el-button>
|
||||
<el-button size="small" type="primary" v-if="biaoCode === 'tjrbpush'" @click="push">上送网公司</el-button>
|
||||
<el-button size="small" type="primary" icon="el-icon-download" @click="exportEvent">导出</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<vxe-table stripe :data="tableData" size="mini" ref="historyData"
|
||||
:row-config="{ isCurrent: true, isHover: true }" :height="vh" border style="width: 100%"
|
||||
header-cell-class-name="table_header" :header-cell-style="{
|
||||
height: '25px',
|
||||
padding: '0px'
|
||||
}" :row-style="{ height: '28px' }" :cell-style="{ padding: '0px' }" @checkbox-all="selectAllChangeEvent"
|
||||
@checkbox-change="handleSelectionChange">
|
||||
<vxe-table-column type="checkbox" align="center" width="55"></vxe-table-column>
|
||||
<vxe-table-column field="workPlanName" show-overflow align="center" title="计划名称"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<vxe-table-column field="supvOrgName" show-overflow align="center" title="监督单位"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<vxe-table-column field="planSupvDate" show-overflow align="center" title="计划监督时间"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<vxe-table-column field="applyComment" show-overflow align="center" title="调整原因"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<vxe-table-column field="adjustTime" show-overflow align="center" title="调整时间"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<vxe-table-column field="otherRemark" show-overflow align="center" title="其他要求"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<vxe-table-column field="planStatus" show-overflow align="center" title="计划状态" min-width="120px"
|
||||
:formatter="formFilter"></vxe-table-column>
|
||||
<!-- <vxe-table-column field="province" show-overflow align="center" title="上次调整时间" min-width="120px"></vxe-table-column> -->
|
||||
<vxe-table-column field="isUploadHead" show-overflow align="center" title="上送标识" min-width="120px">
|
||||
<template slot-scope="scope">
|
||||
<el-tag type="primary" size="small" style="color: #409eff; background: #ecf5ff"
|
||||
v-if="scope.row.isUploadHead == 0">
|
||||
未上送
|
||||
</el-tag>
|
||||
<el-tag type="primary" size="small" style="color: #67c23a; background: #f0f9eb"
|
||||
v-if="scope.row.isUploadHead == 1">
|
||||
已上送
|
||||
</el-tag>
|
||||
<el-tag type="primary" size="small" style="color: #909399; background: #f4f4f5"
|
||||
v-if="scope.row.isUploadHead == 2">
|
||||
取消上送
|
||||
</el-tag>
|
||||
<el-tag type="primary" size="small" style="color: orange; background: #f4f4f5"
|
||||
v-if="scope.row.isUploadHead == 3">
|
||||
待重新上送
|
||||
</el-tag>
|
||||
</template>
|
||||
</vxe-table-column>
|
||||
<vxe-table-column field="updateUserName" show-overflow align="center" title="更新人"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<vxe-table-column field="updateTime" show-overflow align="center" title="更新时间"
|
||||
min-width="120px"></vxe-table-column>
|
||||
<vxe-table-column field="province" show-overflow align="center" title="操作" min-width="120px">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="primary" size="mini" @click="modifyFn(scope.row)">修改</el-button>
|
||||
</template>
|
||||
</vxe-table-column>
|
||||
</vxe-table>
|
||||
<el-pagination background align="right" @size-change="handleSizeChange" @current-change="handleCurrentChange"
|
||||
:current-page="formData.pageNum" :page-sizes="[20, 30, 50, 100]" :page-size="formData.pageSize"
|
||||
layout="total, sizes, prev, pager, next, jumper" :total="total" class="mt10"></el-pagination>
|
||||
<!-- 修改 -->
|
||||
<el-dialog :close-on-click-modal="false" title="修改" :visible.sync="modifyInformation" width="40%" height="80%">
|
||||
<el-form :inline="true" :model="form" class="form" ref="form" label-width="120px" :rules="rules">
|
||||
<el-form-item label="计划名称:" prop="workPlanName" class="mt10">
|
||||
<el-input v-model="form.workPlanName" :disabled="disabled"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="监督单位:" class="mt10" prop="supvOrgName">
|
||||
<Organization @click="handleNodeClick1" ref="Organization" :valueTitle="valueTitle"
|
||||
:disabled="disabled" :editCheckCode="editCheckCode"></Organization>
|
||||
</el-form-item>
|
||||
<el-form-item label="计划监督时间:" prop="planSupvDate" class="mt10">
|
||||
<el-date-picker v-model="form.planSupvDate" value-format="yyyy-MM-dd" type="month"
|
||||
:disabled="disabled" placeholder="选择日期"></el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="调整原因:" prop="applyComment" class="mt10">
|
||||
<el-input v-model="form.applyComment"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="调整时间:" prop="adjustTime" class="mt10">
|
||||
<el-date-picker v-model="form.adjustTime" value-format="yyyy-MM-dd HH:mm:ss" type="datetime"
|
||||
placeholder="选择日期"></el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="其他要求:" prop="otherRemark" class="mt10">
|
||||
<el-input v-model="form.otherRemark"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="计划状态:" prop="planStatus" class="mt10">
|
||||
<el-select v-model="form.planStatus" clearable placeholder="请选择计划状态">
|
||||
<el-option v-for="item in planStatus" :key="item.id" :label="item.name"
|
||||
:value="item.id"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="上次调整时间:" prop="adjustTime" class="mt10">
|
||||
<el-date-picker
|
||||
v-model="form.adjustTime"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
type="datetime"
|
||||
:disabled="disabled"
|
||||
placeholder="选择日期"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item> -->
|
||||
<!-- <el-form-item label="更新人:" prop="updateUserName" class="mt10">
|
||||
<el-input v-model="form.updateUserName" :disabled="disabled"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="更新时间:" prop="updateTime" class="mt10">
|
||||
<el-date-picker
|
||||
v-model="form.updateTime"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
type="datetime"
|
||||
:disabled="disabled"
|
||||
placeholder="选择日期"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item> -->
|
||||
</el-form>
|
||||
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="modifyInformation = false">取 消</el-button>
|
||||
<el-button type="primary" @click="modifyinformationFn">确 定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import Area from '@/views/components/Area/Area.vue'
|
||||
import Organization from './Area/Organization.vue'
|
||||
import Timeinterval from '@/views/components/TimePicker/index4'
|
||||
import { dicData } from '@/assets/commjs/dictypeData'
|
||||
import { pagePlanHis, updatePlanHis, delPlanHis, pushPlanHis } from '@/api/Supervisionmanage2/history'
|
||||
import { listRoleMenu, updateRoleMenu } from '@/api/admin/role'
|
||||
export default {
|
||||
components: { Area, Timeinterval, Organization },
|
||||
props: {},
|
||||
data() {
|
||||
return {
|
||||
biaoCode: '',
|
||||
id: JSON.parse(window.sessionStorage.getItem('Info')).roleList[0],
|
||||
isLoading: false,
|
||||
modifyInformation: false,
|
||||
disabled: false,
|
||||
zoom: '', //图表焦点校验
|
||||
vh: undefined,
|
||||
editCheckCode: '',
|
||||
valueTitle: '',
|
||||
formData: {
|
||||
orgId: '',
|
||||
searchBeginTime: '',
|
||||
searchEndTime: '',
|
||||
pageNum: 1,
|
||||
pageSize: 20
|
||||
},
|
||||
form: {
|
||||
id: '',
|
||||
workPlanName: '',
|
||||
supvOrgName: '',
|
||||
supvOrgId: '',
|
||||
planSupvDate: '',
|
||||
applyComment: '',
|
||||
adjustTime: '',
|
||||
otherRemark: '',
|
||||
planStatus: '',
|
||||
updateUserName: '',
|
||||
updateTime: ''
|
||||
},
|
||||
rules: {
|
||||
applyComment: [{ required: true, message: '请输入调整原因', trigger: 'blur' }],
|
||||
adjustTime: [{ required: true, message: '请输入调整时间', trigger: 'change' }],
|
||||
otherRemark: [{ required: true, message: '请输入其他要求', trigger: 'blur' }],
|
||||
planStatus: [{ required: true, message: '请选择计划状态', trigger: 'change' }]
|
||||
},
|
||||
total: 0,
|
||||
tableData: [],
|
||||
planStatus: [],
|
||||
multipleSelection: []
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getclassificationData()
|
||||
},
|
||||
mounted() {
|
||||
this.listmenuRoleList()
|
||||
this.zoom = 1 / document.body.style.zoom
|
||||
|
||||
// this.onSubmit();
|
||||
this.setHeight()
|
||||
window.addEventListener('resize', this.setHeight)
|
||||
},
|
||||
beforeDestroy() {
|
||||
window.removeEventListener('resize', this.setHeight)
|
||||
},
|
||||
methods: {
|
||||
setHeight() {
|
||||
this.vh = window.sessionStorage.getItem('appheight') - 95
|
||||
this.zoom = 1 / document.body.style.zoom
|
||||
},
|
||||
//获取权限
|
||||
listmenuRoleList() {
|
||||
let p = { id: this.id }
|
||||
listRoleMenu(p).then(response => {
|
||||
let ids = []
|
||||
//console.log("权限资源",response.data)
|
||||
response.data.forEach(item => {
|
||||
if (item.code === 'tjrbpush') {
|
||||
this.biaoCode = item.code
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
takeover(val) {
|
||||
this.formData.orgId = val[0].code
|
||||
this.onSubmit()
|
||||
},
|
||||
//获取类型
|
||||
getclassificationData() {
|
||||
//计划状态
|
||||
this.planStatus = dicData('plan_status', [])
|
||||
},
|
||||
handleSelectionChange(val) {
|
||||
// console.log(val);
|
||||
this.multipleSelection = val.records
|
||||
},
|
||||
selectAllChangeEvent(val) {
|
||||
// console.log(val);
|
||||
this.multipleSelection = val.records
|
||||
},
|
||||
onSubmit1() {
|
||||
this.formData.pageNum = 1
|
||||
this.onSubmit()
|
||||
},
|
||||
//查询
|
||||
onSubmit() {
|
||||
this.isLoading = true
|
||||
// this.$refs.Timeinterval.timeOptions = [
|
||||
// // { label: "年份", value: 1 },
|
||||
// // { label: "季度", value: 2 },
|
||||
// { label: "月份", value: 3 },
|
||||
// // { label: "周", value: 4 },
|
||||
// // // { label: "自定义", value: 5 },
|
||||
// ]
|
||||
this.item = this.$refs.Timeinterval.timeValue
|
||||
this.formData.searchBeginTime = this.item[0]
|
||||
this.formData.searchEndTime = this.item[1]
|
||||
pagePlanHis(this.formData).then(res => {
|
||||
this.tableData = res.data.records
|
||||
this.total = res.data.total
|
||||
this.isLoading = false
|
||||
})
|
||||
},
|
||||
//数据过滤
|
||||
formFilter(row, column) {
|
||||
if (row.column.property == 'planStatus') {
|
||||
let title = ''
|
||||
this.planStatus.forEach(item => {
|
||||
if (item.id == row.row.planStatus) {
|
||||
title = item.name
|
||||
}
|
||||
})
|
||||
return title
|
||||
} else {
|
||||
return row.row[row.column.property]
|
||||
}
|
||||
},
|
||||
//修改
|
||||
modifyFn(val) {
|
||||
this.modifyInformation = true
|
||||
this.form = JSON.parse(JSON.stringify(val))
|
||||
// this.planStatus.forEach(item=>{
|
||||
// if( item.gvalue == this.form.planStatus ){
|
||||
// this.form.planStatus =item.name
|
||||
// }
|
||||
// })
|
||||
this.disabled = true
|
||||
this.valueTitle = val.supvOrgName
|
||||
this.editCheckCode = val.supvOrgId
|
||||
},
|
||||
//修改确定
|
||||
modifyinformationFn() {
|
||||
this.$refs.form.validate(value => {
|
||||
// console.log(value);
|
||||
if (value == true) {
|
||||
this.$confirm('是否确认修改?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
})
|
||||
.then(() => {
|
||||
// this.planStatus.forEach(item=>{
|
||||
// // console.log(item);
|
||||
// if(this.form.planStatus == item.id){
|
||||
// this.form.planStatus = item.gvalue
|
||||
// }
|
||||
// })
|
||||
updatePlanHis(this.form).then(res => {
|
||||
if (res.code == 'A0000') {
|
||||
this.$message({
|
||||
type: 'success',
|
||||
message: res.message
|
||||
})
|
||||
}
|
||||
this.onSubmit()
|
||||
this.modifyInformation = false
|
||||
})
|
||||
})
|
||||
.catch(() => {
|
||||
this.$message({
|
||||
type: 'info',
|
||||
message: '已取消修改'
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
//导出
|
||||
exportEvent() {
|
||||
pagePlanHis({
|
||||
searchBeginTime: this.formData.searchBeginTime,
|
||||
searchEndTime: this.formData.searchEndTime,
|
||||
orgId: this.formData.orgId,
|
||||
pageNum: 1,
|
||||
pageSize: this.total
|
||||
}).then(res => {
|
||||
res.data.records.forEach(item => {
|
||||
if (item.isUploadHead == 0) {
|
||||
item.isUploadHead = '未上送'
|
||||
} else if (item.isUploadHead == 1) {
|
||||
item.isUploadHead = '已上送'
|
||||
} else if (item.isUploadHead == 2) {
|
||||
item.isUploadHead = '取消上送'
|
||||
}
|
||||
})
|
||||
this.$refs.historyData.exportData({
|
||||
filename: '监督计划变更历史数据', // 文件名字
|
||||
sheetName: 'Sheet1',
|
||||
type: 'xlsx', //导出文件类型 xlsx 和 csv
|
||||
useStyle: true,
|
||||
data: res.data.records, // 数据源 // 过滤那个字段导出
|
||||
columnFilterMethod: function (column, $columnIndex) {
|
||||
return !(column.$columnIndex === 0)
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
//计划上送网公司
|
||||
push() {
|
||||
if (this.multipleSelection.length == 0) {
|
||||
this.$message({
|
||||
showClose: true,
|
||||
message: '请选择一条数据上送网公司!!!',
|
||||
type: 'warning'
|
||||
})
|
||||
return
|
||||
}
|
||||
// let isUpload = []
|
||||
// this.multipleSelection.forEach(item=>{
|
||||
// isUpload.push(item.isUploadHead)
|
||||
// })
|
||||
// if(isUpload.includes(1) == true){
|
||||
// this.$message({
|
||||
// type: "warning",
|
||||
// message: '已上送,无需重复上送',
|
||||
// });
|
||||
// return
|
||||
// }else{
|
||||
this.$confirm('是否确认上送网公司?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
})
|
||||
.then(() => {
|
||||
let ids = []
|
||||
this.multipleSelection.forEach(item => {
|
||||
ids.push(item.id)
|
||||
})
|
||||
|
||||
pushPlanHis(ids).then(res => {
|
||||
if ((res.code == 'A0000')) {
|
||||
this.$message({
|
||||
type: 'success',
|
||||
message: res.message
|
||||
})
|
||||
}
|
||||
this.onSubmit()
|
||||
})
|
||||
})
|
||||
.catch(() => {
|
||||
this.$message({
|
||||
type: 'info',
|
||||
message: '已取消上送'
|
||||
})
|
||||
})
|
||||
// }
|
||||
},
|
||||
// 删除
|
||||
deleteFn() {
|
||||
if (this.multipleSelection.length == 0) {
|
||||
this.$message({
|
||||
showClose: true,
|
||||
message: '请选择一条数据删除!!!',
|
||||
type: 'warning'
|
||||
})
|
||||
return
|
||||
}
|
||||
this.$confirm('是否确认删除?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
})
|
||||
.then(() => {
|
||||
let planIds = []
|
||||
this.multipleSelection.forEach(item => {
|
||||
planIds.push(item.id)
|
||||
})
|
||||
|
||||
delPlanHis(planIds).then(res => {
|
||||
if ((res.code == 'A0000')) {
|
||||
this.$message({
|
||||
type: 'success',
|
||||
message: res.message
|
||||
})
|
||||
}
|
||||
this.onSubmit()
|
||||
})
|
||||
})
|
||||
.catch(() => {
|
||||
this.$message({
|
||||
type: 'info',
|
||||
message: '已取消删除'
|
||||
})
|
||||
})
|
||||
},
|
||||
//每页条数改变时触发 选择一页显示多少行
|
||||
handleSizeChange(val) {
|
||||
this.formData.pageSize = val
|
||||
this.onSubmit()
|
||||
},
|
||||
//当前页改变时触发 跳转其他页
|
||||
handleCurrentChange(val) {
|
||||
this.formData.pageNum = val
|
||||
this.onSubmit()
|
||||
},
|
||||
handleNodeClick(data) {
|
||||
this.formData.orgId = data.code
|
||||
},
|
||||
handleNodeClick1(data) {
|
||||
this.form.supvOrgId = data.code
|
||||
this.form.supvOrgName = data.name
|
||||
}
|
||||
},
|
||||
|
||||
computed: {},
|
||||
|
||||
watch: {}
|
||||
}
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
@import url('../../../styles/comStyle.less');
|
||||
|
||||
::v-deep .el-form-item--small .el-form-item__content,
|
||||
.el-form-item--small .el-form-item__label {
|
||||
height: 32px;
|
||||
}
|
||||
|
||||
::v-deep .form {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
justify-content: space-between;
|
||||
|
||||
.el-form-item {
|
||||
display: flex;
|
||||
width: 48%;
|
||||
|
||||
.el-form-item__content {
|
||||
flex: 1 !important;
|
||||
|
||||
.el-select {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.el-input__inner {
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
.el-date-editor {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep .vxe-table .cell {
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
||||
1122
src/views/Process-supervision/Supervisionmanage2/prealarmData.vue
Normal file
1122
src/views/Process-supervision/Supervisionmanage2/prealarmData.vue
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user