技术监督 页面联调
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
<el-divider content-position="left">第一步 基本信息填报</el-divider>
|
||||
<el-form :inline="true" ref="ruleForm" :rules="rules" :model="addData">
|
||||
<el-form-item label="所属单位">
|
||||
<Area ref="areaRef" v-model="addData.orgName" disabled />
|
||||
<Area ref="areaRef" v-model="addData.orgNo" disabled />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="问题来源" prop="problemSources">
|
||||
@@ -30,7 +30,7 @@
|
||||
</el-dialog>
|
||||
<!-- 新增第二步(在线监测超标问题新增) -->
|
||||
<el-dialog title="在线监测超标问题新增" v-model="onlineAdd" width="70%" :before-close="handleClose">
|
||||
<el-divider content-position="left">第二步 选择问题测点(请选择需要生成问题的告警监测点)</el-divider>
|
||||
<el-divider content-position="left">第二步 选择问题测点</el-divider>
|
||||
<el-form :inline="true" class="form">
|
||||
<el-form-item label="告警时间">
|
||||
<DatePicker ref="DateRef" />
|
||||
@@ -56,9 +56,7 @@
|
||||
|
||||
<!-- 新增第二步(普测超标问题新增) -->
|
||||
<el-dialog title="普测超标问题新增" v-model="ordinaryAdd" width="70%" :before-close="handleClose">
|
||||
<el-divider content-position="left">
|
||||
第二步 选择普测计划及问题类型(请查找需要生成问题的普测计划并选择一条需要生成问题的测试线路)
|
||||
</el-divider>
|
||||
<el-divider content-position="left">第二步 选择普测计划及问题类型</el-divider>
|
||||
<el-form :model="ordinaryA" :inline="true" class="form">
|
||||
<el-form-item>
|
||||
<Area v-model="ordinaryA.orgNo"></Area>
|
||||
@@ -129,10 +127,8 @@
|
||||
</el-dialog>
|
||||
<!-- 新增第二步(运维异常问题新增) -->
|
||||
<el-dialog title="运维异常问题新增" v-model="operationAdd" width="70%" :before-close="handleClose">
|
||||
<el-divider content-position="left">
|
||||
第二步 选择普测计划及问题类型(请查找需要生成问题的普测计划并选择一条需要生成问题的测试线路)
|
||||
</el-divider>
|
||||
<el-form :model="operationAdddata" :inline="true" :rules="rules">
|
||||
<el-divider content-position="left">第二步 选择普测计划及问题类型</el-divider>
|
||||
<el-form :model="operationAdddata" ref="operationAddRef" :inline="true" :rules="rules">
|
||||
<el-form-item label="异常设备名称:" prop="abnormalDevName">
|
||||
<el-input
|
||||
v-model="operationAdddata.abnormalDevName"
|
||||
@@ -187,7 +183,7 @@
|
||||
|
||||
<!-- 新增第二步(用户投诉问题新增) -->
|
||||
<el-dialog title="用户投诉问题新增" v-model="userAdd" width="70%" :before-close="handleClose">
|
||||
<el-divider content-position="left">第二步 选择投诉用户(请精确查找用户户号并选中投诉用户)</el-divider>
|
||||
<el-divider content-position="left">第二步 选择投诉用户</el-divider>
|
||||
<el-form :model="userA" :inline="true" :rules="rules">
|
||||
<el-form-item label="用户类型:">
|
||||
<el-select v-model="userA.userType" placeholder="请选择用户类型">
|
||||
@@ -286,42 +282,18 @@ const problemData = dictData.getBasicData('Problem_Sources')
|
||||
const alarmList = dictData.getBasicData('alarm_Type')
|
||||
const Voltage = dictData.getBasicData('Dev_Voltage')
|
||||
const userTypeData = dictData.getBasicData('User_Category')
|
||||
// const steadyStateList = dictData.getBasicData('Steady_Indicator')
|
||||
// const transientIndicatorsList = dictData.getBasicData('Transient_Indicators')
|
||||
import {
|
||||
getAllAlarmDetailList,
|
||||
querySurveyPlanName,
|
||||
querySurveyPlanOnQuestion,
|
||||
getGenerateElectricityUserList,
|
||||
getPowerUtilizationUserList,
|
||||
addAbnormalIssues
|
||||
} from '@/api/process-boot/electricitymanagement'
|
||||
import { ElMessage } from 'element-plus'
|
||||
const steadyStateList = dictData.getBasicData('Steady_Indicator')
|
||||
const transientIndicatorsList = dictData.getBasicData('Transient_Indicators')
|
||||
|
||||
const steadyStateList = [
|
||||
{
|
||||
name: '负序电压不平衡度',
|
||||
id: '137d08f4f29d4f781b0d2a8fabbd3c5c',
|
||||
code: 'Negative_Voltage',
|
||||
value: null,
|
||||
sort: 5
|
||||
},
|
||||
{
|
||||
name: '间谐波电压',
|
||||
id: '218da5cb747413d4cf92e2b37651e13f',
|
||||
code: 'Interhar_Voltage',
|
||||
value: null,
|
||||
sort: 4
|
||||
},
|
||||
{ name: '负序电流', id: '396c27f91281fbd41f93fe034038aa52', code: 'Neg_Current', value: null, sort: 6 },
|
||||
{ name: '频率偏差', id: '74a3943e802ed7fa4252887788682818', code: 'Fre_Deviation', value: null, sort: 0 },
|
||||
{ name: '电压偏差', id: '8ff1545d3bacee9c0f834901cebcbd23', code: 'Voltage_Dev', value: null, sort: 1 },
|
||||
{ name: '谐波电流', id: '9177bf292f22f8c27f1ceeeceaea7000', code: 'Har_Current', value: null, sort: 3 },
|
||||
{
|
||||
name: '电压波动与闪变',
|
||||
id: '9267dfbe8a6eac561e29d8377e159c3c',
|
||||
code: 'Voltage_Fluc',
|
||||
value: null,
|
||||
sort: 7
|
||||
},
|
||||
{ name: '谐波电压', id: 'ef42e7cb71b667bb06a5c10e1bdb27de', code: 'Har_Voltage', value: null, sort: 2 }
|
||||
]
|
||||
const transientIndicatorsList = [
|
||||
{ name: '电压暂降', id: '2eee1cb8c62b8e1bef3992e3f4d0c95b', code: 'Voltage_Sag', value: null, sort: 0 },
|
||||
{ name: '短时中断', id: '9ab8c44a757f3c5e86f4ac10905496a8', code: 'Interruptions', value: null, sort: 2 },
|
||||
{ name: '电压暂升', id: 'a25ff36c30155699288256960bc22eb9', code: 'Voltage_Rises', value: null, sort: 1 }
|
||||
]
|
||||
const add = ref(true)
|
||||
const onlineAdd = ref(false)
|
||||
const isLoading1 = ref(false)
|
||||
@@ -333,16 +305,18 @@ const userAdd = ref(false)
|
||||
const operationAdd = ref(false)
|
||||
const ruleForm = ref()
|
||||
const DateRef = ref()
|
||||
const operationAddRef = ref()
|
||||
const xTableRef = ref()
|
||||
|
||||
const addData = ref({
|
||||
orgName: dictData.state.area[0].id,
|
||||
orgName: '',
|
||||
problemSources: '',
|
||||
problemName: '',
|
||||
orgNo: ''
|
||||
problemName: dictData.state.area[0].name,
|
||||
orgNo: dictData.state.area[0].id
|
||||
})
|
||||
const ordinaryA = ref({
|
||||
orgNo: '',
|
||||
orgName: '',
|
||||
planName: '',
|
||||
planStartTime: '',
|
||||
uploadTime: '',
|
||||
@@ -402,6 +376,7 @@ const nextStep = () => {
|
||||
}, 0)
|
||||
} else if (addData.value.problemSources == 'General') {
|
||||
ordinaryA.value.orgNo = dictData.state.area[0].id
|
||||
ordinaryA.value.orgName = dictData.state.area[0].name
|
||||
|
||||
add.value = false
|
||||
ordinaryAdd.value = true
|
||||
@@ -437,11 +412,31 @@ const OnlineMonitoring = () => {
|
||||
}
|
||||
// 在线监测告警查询
|
||||
const searchOnLine = () => {
|
||||
// isLoading1.value = true
|
||||
isLoading1.value = true
|
||||
getAllAlarmDetailList({
|
||||
startTime: DateRef.value.timeValue[0],
|
||||
endTime: DateRef.value.timeValue[1]
|
||||
}).then(res => {
|
||||
isLoading1.value = false
|
||||
onlineAddData.value = res.data
|
||||
})
|
||||
}
|
||||
// 普通监测超标问题新增
|
||||
const queryPlanName = () => {}
|
||||
const searchFnExcessive = () => {}
|
||||
const queryPlanName = () => {
|
||||
querySurveyPlanName({
|
||||
orgNo: ordinaryA.value.orgNo,
|
||||
planStartTime: ordinaryA.value.planStartTime
|
||||
}).then(res => {
|
||||
planNameList.value = res.data
|
||||
})
|
||||
}
|
||||
const searchFnExcessive = () => {
|
||||
isLoading2.value = true
|
||||
querySurveyPlanOnQuestion(ordinaryA.value).then(res => {
|
||||
isLoading2.value = false
|
||||
ordinaryAddData.value = res.data
|
||||
})
|
||||
}
|
||||
// 普测超标生成问题
|
||||
const GeneralSurvey = () => {}
|
||||
const formatter = (row: any) => {
|
||||
@@ -458,26 +453,38 @@ const formatter = (row: any) => {
|
||||
}
|
||||
}
|
||||
// 运维异常问题新增
|
||||
const generateAbnormal = () => {}
|
||||
const generateAbnormal = () => {
|
||||
operationAddRef.value.validate(valid => {
|
||||
if (valid) {
|
||||
addAbnormalIssues({
|
||||
...operationAdddata.value,
|
||||
...addData.value
|
||||
})
|
||||
ElMessage.success('新增成功!')
|
||||
emit('handleClose')
|
||||
emit('onSubmit')
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
//用户投诉问题
|
||||
const searchFnComplain = () => {
|
||||
// isLoading3.value = true
|
||||
// userAddDataList.value=[]
|
||||
// if (userA.value.userType == 'Elec_User') {
|
||||
// // 发电用户
|
||||
// showUserType.value = false
|
||||
// getGenerateElectricityUserList({ id: userA.value.id }).then(res => {
|
||||
// this.userAddDataList = res.data
|
||||
// })
|
||||
// } else {
|
||||
// showUserType.value = true
|
||||
// // 用电用户
|
||||
// getPowerUtilizationUserList({ id: userA.value.id }).then(res => {
|
||||
// this.userAddDataList = res.data
|
||||
// })
|
||||
// }
|
||||
// this.isLoading3 = false
|
||||
isLoading3.value = true
|
||||
userAddDataList.value = []
|
||||
if (userA.value.userType == 'Elec_User') {
|
||||
// 发电用户
|
||||
showUserType.value = false
|
||||
getGenerateElectricityUserList({ id: userA.value.id }).then(res => {
|
||||
userAddDataList.value = res.data
|
||||
})
|
||||
} else {
|
||||
showUserType.value = true
|
||||
// 用电用户
|
||||
getPowerUtilizationUserList({ id: userA.value.id }).then(res => {
|
||||
userAddDataList.value = res.data
|
||||
})
|
||||
}
|
||||
isLoading3.value = false
|
||||
}
|
||||
// 用户投诉新增
|
||||
const userAddProblem = () => {}
|
||||
|
||||
@@ -0,0 +1,87 @@
|
||||
<template>
|
||||
<el-dialog title="详情" v-model="dialogVisible" width="70%" :before-close="handleClose">
|
||||
<el-divider content-position="left" style="font-size: 18px; font-weight: bolder">问题基本信息</el-divider>
|
||||
<el-form :model="addData" :inline="true" disabled label-width="120px">
|
||||
<el-form-item label="所属单位:">
|
||||
<el-input v-model="addData.orgName" clearable placeholder="请填写"></el-input>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="问题名称:">
|
||||
<el-input v-model="addData.problemName" clearable placeholder="请填写"></el-input>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="问题编号:">
|
||||
<el-input v-model="addData.powerQualityProblemNo" clearable placeholder="请填写"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="问题来源:">
|
||||
<el-select v-model="addData.problemSources" placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in problemData"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.code"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<br />
|
||||
<el-form-item label="异常设备名称:">
|
||||
<el-input v-model="addData.abnormalDevName" clearable placeholder="请填写"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="发现异常时间:">
|
||||
<el-input v-model="addData.abnormalDevTime" clearable placeholder="请填写"></el-input>
|
||||
</el-form-item>
|
||||
<br />
|
||||
<el-form-item label="设备异常描述:" style="margin-top: 10px">
|
||||
<el-input
|
||||
type="textarea"
|
||||
style="width: 400px"
|
||||
:autosize="{ minRows: 2, maxRows: 4 }"
|
||||
v-model="addData.eventDescription"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-divider content-position="left" style="font-size: 18px; font-weight: bolder">问题指标</el-divider>
|
||||
|
||||
<el-form-item label="稳态指标:" style="margin-top: 10px">
|
||||
<el-checkbox-group v-model="addData.steadyIndicator" disabled>
|
||||
<el-checkbox v-for="(item, ind) in steadyIndicatorList" :key="ind" :label="item.code">
|
||||
{{ item.name }}
|
||||
</el-checkbox>
|
||||
</el-checkbox-group>
|
||||
</el-form-item>
|
||||
<br />
|
||||
<el-form-item label="暂态指标:" style="margin-top: 10px">
|
||||
<el-checkbox-group v-model="addData.transientIndicators" disabled>
|
||||
<el-checkbox v-for="(item, ind) in transientIndicatorsList" :key="ind" :label="item.code">
|
||||
{{ item.name }}
|
||||
</el-checkbox>
|
||||
</el-checkbox-group>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-dialog>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import { ref, reactive } from 'vue'
|
||||
import { getAbnormalDetail } from '@/api/process-boot/electricitymanagement'
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
const dictData = useDictData()
|
||||
const addData: any = ref({})
|
||||
|
||||
const dialogVisible: any = ref(false)
|
||||
|
||||
const problemData = dictData.getBasicData('Problem_Sources')
|
||||
const steadyIndicatorList = dictData.getBasicData('Steady_Indicator')
|
||||
const transientIndicatorsList = dictData.getBasicData('Transient_Indicators')
|
||||
const open = (row: any) => {
|
||||
const data = getAbnormalDetail(row.powerQualityProblemNo)
|
||||
addData.value = data
|
||||
// console.log('🚀 ~ open ~ data:', data)
|
||||
dialogVisible.value = true
|
||||
}
|
||||
|
||||
// 取消
|
||||
const handleClose = () => {
|
||||
dialogVisible.value = false
|
||||
}
|
||||
defineExpose({ open })
|
||||
</script>
|
||||
<style lang="scss" scoped></style>
|
||||
165
src/views/pqs/supervise/electricalEnergy/components/filling.vue
Normal file
165
src/views/pqs/supervise/electricalEnergy/components/filling.vue
Normal file
@@ -0,0 +1,165 @@
|
||||
<template>
|
||||
<el-dialog title="填报" v-model="dialogVisible" width="70%" :before-close="handleClose">
|
||||
<el-divider content-position="left" style="font-size: 18px; font-weight: bolder">问题基本信息</el-divider>
|
||||
<el-form :inline="true">
|
||||
<el-form-item label="所属单位:">
|
||||
<el-input v-model="addData.orgName" clearable placeholder="请填写" disabled></el-input>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="问题来源:">
|
||||
<el-select disabled v-model="addData.problemSources" placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in problemData"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.code"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="问题名称:">
|
||||
<el-input v-model="addData.problemName" clearable placeholder="请填写" disabled></el-input>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="问题编号:">
|
||||
<el-input v-model="addData.powerQualityProblemNo" disabled clearable placeholder="请填写"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<el-divider content-position="left" style="font-size: 18px; font-weight: bolder">填报流程</el-divider>
|
||||
|
||||
<el-steps :active="active" finish-status="success" simple>
|
||||
<el-step>
|
||||
<template #title><span @click="step(0)">原因分析</span></template>
|
||||
</el-step>
|
||||
<el-step>
|
||||
<template #title><span @click="step(1)">计划整改措施</span></template>
|
||||
</el-step>
|
||||
<el-step>
|
||||
<template #title><span @click="step(2)">实际采取措施</span></template>
|
||||
</el-step>
|
||||
<el-step>
|
||||
<template #title><span @click="step(3)">成效分析</span></template>
|
||||
</el-step>
|
||||
</el-steps>
|
||||
|
||||
<!-- 原因分析 0 -->
|
||||
<el-form :model="causeAnalysisData" v-if="control == 0" :rules="rules" ref="form" label-width="140px" class="form">
|
||||
<el-form-item label="电网侧原因:" prop="reportProcessContentYyfx">
|
||||
<el-checkbox-group v-model="causeAnalysisData.reportProcessContentYyfx">
|
||||
<el-checkbox v-for="(item, ind) in CauseList" :key="ind" :label="item.code">
|
||||
{{ item.name }}
|
||||
</el-checkbox>
|
||||
</el-checkbox-group>
|
||||
</el-form-item>
|
||||
|
||||
<el-divider></el-divider>
|
||||
|
||||
<el-form-item label="用户侧原因:" prop="userReportProcessContentYyfx">
|
||||
<el-checkbox-group v-model="causeAnalysisData.userReportProcessContentYyfx">
|
||||
<el-checkbox v-for="(item, ind) in userCauseList" :key="ind" :label="item.code">
|
||||
{{ item.name }}
|
||||
</el-checkbox>
|
||||
</el-checkbox-group>
|
||||
</el-form-item>
|
||||
<el-row v-if="addData.problemSources == '用户投诉' || addData.problemSources == '设备异常'">
|
||||
<el-divider></el-divider>
|
||||
|
||||
<el-form-item label="电网侧受影响设备:" prop="powerGridAffectDev">
|
||||
<el-checkbox-group v-model="causeAnalysisData.powerGridAffectDev">
|
||||
<el-checkbox v-for="(item, ind) in powerGridAffectDevList" :key="ind" :label="item.code">
|
||||
{{ item.name }}
|
||||
</el-checkbox>
|
||||
</el-checkbox-group>
|
||||
</el-form-item>
|
||||
<el-divider></el-divider>
|
||||
|
||||
<el-form-item label="用户侧受影响设备:" prop="userAffectDev">
|
||||
<el-checkbox-group v-model="causeAnalysisData.userAffectDev">
|
||||
<el-checkbox v-for="(item, ind) in userAffectDevList" :key="ind" :label="item.code">
|
||||
{{ item.name }}
|
||||
</el-checkbox>
|
||||
</el-checkbox-group>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
|
||||
<el-divider></el-divider>
|
||||
|
||||
<el-form-item label="事件描述:" prop="eventDescriptionYyfx">
|
||||
<el-input
|
||||
style="width: 400px"
|
||||
:autosize="{ minRows: 2, maxRows: 4 }"
|
||||
type="textarea"
|
||||
placeholder="请输入内容"
|
||||
v-model="causeAnalysisData.eventDescriptionYyfx"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item class="item" label="原因分析报告:" style="margin-top: 10px" prop="fileNameYyfx">
|
||||
<!-- <File ref="File" /> -->
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<!-- 计划整改措施 1-->
|
||||
|
||||
<el-row :gutter="20"></el-row>
|
||||
<div style="display: flex; justify-content: center; margin-top: 10px">
|
||||
<el-button type="primary" class="ml20" @click="Submit">提交审核</el-button>
|
||||
<el-button type="primary" class="ml20" @click="handleClose">取消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import { ref, reactive } from 'vue'
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
const dictData = useDictData()
|
||||
const addData: any = ref({})
|
||||
const active = ref(1)
|
||||
const control = ref()
|
||||
const dialogVisible: any = ref(false)
|
||||
const causeAnalysisData = ref({
|
||||
reportProcessContentYyfx: [],
|
||||
userReportProcessContentYyfx: [],
|
||||
eventDescriptionYyfx: '',
|
||||
fileNameYyfx: '', //原因分析报告文件名称
|
||||
filePathYyfx: '', //原因分析报告文件路径
|
||||
powerGridAffectDev: [],
|
||||
userAffectDev: []
|
||||
})
|
||||
const rules = {
|
||||
reportProcessContentYyfx: [{ required: true, message: '请选择', trigger: 'change' }],
|
||||
userReportProcessContentYyfx: [{ required: true, message: '请选择', trigger: 'change' }],
|
||||
eventDescriptionYyfx: [{ required: true, message: '请填写事件描述', trigger: 'blur' }],
|
||||
powerGridAffectDev: [{ required: true, message: '请选择', trigger: 'change' }],
|
||||
userAffectDev: [{ required: true, message: '请选择', trigger: 'change' }],
|
||||
fileNameYyfx: [{ required: true, message: '请上传文件', trigger: 'blur' }]
|
||||
}
|
||||
|
||||
// 电网侧原因
|
||||
const CauseList = dictData.getBasicData('Grid-side_Reasons')
|
||||
// 用户侧原因
|
||||
const userCauseList = dictData.getBasicData('User_Reasons')
|
||||
// 电网侧受影响设备
|
||||
const powerGridAffectDevList = dictData.getBasicData('Grid_Unit')
|
||||
// 用户侧受影响设备
|
||||
const userAffectDevList = dictData.getBasicData('Customer_Unit')
|
||||
const OnlineList = dictData.getBasicData('Problem_Sources')
|
||||
|
||||
const problemData = dictData.getBasicData('Problem_Sources')
|
||||
const open = (row: any) => {
|
||||
dialogVisible.value = true
|
||||
addData.value = row
|
||||
}
|
||||
const step = (e: number) => {
|
||||
if (active.value >= e) {
|
||||
control.value=e
|
||||
}
|
||||
}
|
||||
|
||||
// 提交
|
||||
const Submit = () => {}
|
||||
// 取消
|
||||
const handleClose = () => {
|
||||
dialogVisible.value = false
|
||||
}
|
||||
defineExpose({ open })
|
||||
</script>
|
||||
<style lang="scss" scoped></style>
|
||||
@@ -2,57 +2,59 @@
|
||||
<TableHeader area datePicker ref="TableHeaderRef">
|
||||
<template #select>
|
||||
<el-form-item label="问题来源">
|
||||
<el-select v-model="tableStore.table.params.searchState1" placeholder="请选择问题来源">
|
||||
<el-select v-model="tableStore.table.params.problemSources" placeholder="请选择问题来源">
|
||||
<el-option
|
||||
v-for="item in uploadData"
|
||||
v-for="item in problemData"
|
||||
:key="item.id"
|
||||
:label="item.label"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="填报进度">
|
||||
<el-select v-model="tableStore.table.params.searchState2" placeholder="请选择填报进度">
|
||||
<el-select v-model="tableStore.table.params.reportProcess" placeholder="请选择填报进度">
|
||||
<el-option
|
||||
v-for="item in uploadData"
|
||||
v-for="item in fillingProgress"
|
||||
:key="item.id"
|
||||
:label="item.label"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="审核状态">
|
||||
<el-select v-model="tableStore.table.params.searchState3" placeholder="请选择审核状态">
|
||||
<el-select v-model="tableStore.table.params.reportProcessStatus" placeholder="请选择审核状态">
|
||||
<el-option
|
||||
v-for="item in uploadData"
|
||||
v-for="item in auditStatus"
|
||||
:key="item.id"
|
||||
:label="item.label"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="问题名称">
|
||||
<el-select v-model="tableStore.table.params.searchState4" placeholder="请输入问题名称">
|
||||
<el-option
|
||||
v-for="item in uploadData"
|
||||
:key="item.id"
|
||||
:label="item.label"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
<el-input
|
||||
v-model="tableStore.table.params.problemName"
|
||||
clearable
|
||||
placeholder="请填写问题名称"
|
||||
style="width: 100%"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template #operation>
|
||||
<el-button icon="el-icon-Plus" type="primary" @click="add">新增</el-button>
|
||||
<el-button icon="el-icon-EditPen" type="primary">填报</el-button>
|
||||
<!-- <el-button icon="el-icon-EditPen" type="primary" @click="filling">填报</el-button> -->
|
||||
<el-button icon="el-icon-Delete" type="primary">删除</el-button>
|
||||
<el-button icon="el-icon-SuccessFilled" type="primary">归档</el-button>
|
||||
<el-button icon="el-icon-PieChart" type="primary">历史审核记录</el-button>
|
||||
<!-- <el-button icon="el-icon-SuccessFilled" type="primary">归档</el-button>
|
||||
<el-button icon="el-icon-PieChart" type="primary">历史审核记录</el-button> -->
|
||||
</template>
|
||||
</TableHeader>
|
||||
<Table ref="tableRef" />
|
||||
<!-- 新增 -->
|
||||
<NewlyAdd v-if="showNewlyAdded" @handleClose="handleClose" @onSubmit="onSubmit" />
|
||||
<NewlyAdd v-if="showNewlyAdded" @handleClose="handleClose" @onSubmit="onSubmit" />
|
||||
<!-- 填报 -->
|
||||
<Filling ref="FillingRef" />
|
||||
<!-- 详情 -->
|
||||
<Detail ref="detailRef" />
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import { ref, onMounted, provide, nextTick } from 'vue'
|
||||
@@ -60,28 +62,23 @@ import TableStore from '@/utils/tableStore'
|
||||
import Table from '@/components/table/index.vue'
|
||||
import TableHeader from '@/components/table/header/index.vue'
|
||||
import { ElMessage, ElMessageBox } from 'element-plus'
|
||||
import { mainHeight } from '@/utils/layout'
|
||||
import { deleteIssues } from '@/api/process-boot/electricitymanagement'
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
import NewlyAdd from './NewlyAdd.vue'
|
||||
import Filling from './filling.vue'
|
||||
import Detail from './detail.vue'
|
||||
const dictData = useDictData()
|
||||
const uploadData = [
|
||||
{
|
||||
id: 0,
|
||||
|
||||
label: '未上传'
|
||||
},
|
||||
{
|
||||
id: 1,
|
||||
|
||||
label: '已上传'
|
||||
}
|
||||
]
|
||||
const FillingRef = ref()
|
||||
|
||||
const showNewlyAdded = ref(false)
|
||||
const TableHeaderRef = ref()
|
||||
const ruleFormRef = ref()
|
||||
const tableStore:any = new TableStore({
|
||||
url: '/system-boot/area/areaSelect',
|
||||
const detailRef = ref()
|
||||
const problemData = dictData.getBasicData('Problem_Sources')
|
||||
const fillingProgress = dictData.getBasicData('Fill_Progress')
|
||||
const auditStatus = dictData.getBasicData('Audit_Status')
|
||||
|
||||
const tableStore: any = new TableStore({
|
||||
url: '/process-boot/electricityQuality/getIssues',
|
||||
publicHeight: 65,
|
||||
method: 'POST',
|
||||
column: [
|
||||
@@ -102,8 +99,20 @@ const tableStore:any = new TableStore({
|
||||
{ field: 'powerQualityProblemNo', title: '问题编号' },
|
||||
{ field: 'problemName', title: '问题名称' },
|
||||
{ field: 'dataDate', title: '问题新建时间' },
|
||||
{ field: 'reportProcess', title: '填报进度' },
|
||||
{ field: 'reportProcessStatus', title: '审核状态' },
|
||||
// {
|
||||
// field: 'reportProcess',
|
||||
// title: '填报进度',
|
||||
// formatter: (row: any) => {
|
||||
// return fillingProgress.filter(item => item.code == row.cellValue)[0]?.name
|
||||
// }
|
||||
// },
|
||||
// {
|
||||
// field: 'reportProcessStatus',
|
||||
// title: '审核状态',
|
||||
// formatter: (row: any) => {
|
||||
// return auditStatus.filter(item => item.code == row.cellValue)[0]?.name
|
||||
// }
|
||||
// },
|
||||
{
|
||||
title: '详情',
|
||||
width: '120',
|
||||
@@ -113,41 +122,115 @@ const tableStore:any = new TableStore({
|
||||
name: 'edit',
|
||||
title: '查看',
|
||||
type: 'primary',
|
||||
disabled: row => {
|
||||
return row.reportProcess != 'Not_Reported' && row.reportProcess != 'Archived'
|
||||
},
|
||||
// disabled: row => {
|
||||
// return row.reportProcess != 'Not_Reported' && row.reportProcess != 'Archived'
|
||||
// },
|
||||
icon: 'el-icon-Plus',
|
||||
render: 'basicButton',
|
||||
click: async row => {}
|
||||
click: async row => {
|
||||
detailRef.value.open(row)
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'del',
|
||||
text: '删除',
|
||||
type: 'danger',
|
||||
icon: 'el-icon-Delete',
|
||||
render: 'confirmButton',
|
||||
popconfirm: {
|
||||
confirmButtonText: '确认',
|
||||
cancelButtonText: '取消',
|
||||
confirmButtonType: 'danger',
|
||||
title: '确定删除?'
|
||||
},
|
||||
click: row => {
|
||||
deleteIssues(row.powerQualityProblemNo).then(() => {
|
||||
ElMessage.success('删除成功')
|
||||
tableStore.index()
|
||||
})
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
|
||||
loadCallback: () => {
|
||||
tableStore.table.data = [
|
||||
{
|
||||
status: 2
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
})
|
||||
|
||||
tableStore.table.params.searchState1 = ''
|
||||
tableStore.table.params.searchState2 = ''
|
||||
tableStore.table.params.searchState3 = ''
|
||||
tableStore.table.params.searchState4 = ''
|
||||
|
||||
tableStore.table.params.orgNo = dictData.state.area[0].id
|
||||
tableStore.table.params.problemName = ''
|
||||
tableStore.table.params.problemSources = ''
|
||||
tableStore.table.params.reportProcess = ''
|
||||
tableStore.table.params.reportProcessStatus = ''
|
||||
|
||||
provide('tableStore', tableStore)
|
||||
onMounted(() => {
|
||||
tableStore.index()
|
||||
TableHeaderRef.value.setDatePicker([
|
||||
{ label: '年', value: 1 },
|
||||
{ label: '季', value: 2 },
|
||||
{ label: '月', value: 3 }
|
||||
])
|
||||
|
||||
setTimeout(() => {
|
||||
tableStore.table.params.dataType = TableHeaderRef.value.datePickerRef.interval
|
||||
tableStore.table.params.dataDate = TableHeaderRef.value.datePickerRef.timeValue[0]
|
||||
tableStore.index()
|
||||
}, 100)
|
||||
})
|
||||
// 新增
|
||||
const add = () => {
|
||||
showNewlyAdded.value = true
|
||||
}
|
||||
const onSubmit = () => {
|
||||
console.log(123)
|
||||
tableStore.index()
|
||||
}
|
||||
// 填报
|
||||
const filling = () => {
|
||||
if (tableStore.table.selection.length == 1) {
|
||||
FillingRef.value.open(tableStore.table.selection[0])
|
||||
if (tableStore.table.selection[0].reportProcess == 'Not_Reported') {
|
||||
// 原因分析
|
||||
// this.showCauseAnalysisJP = true
|
||||
// setTimeout(() => {
|
||||
// this.$refs.CauseAnalysisJP.causeAnalysis = true
|
||||
// }, 0)
|
||||
} else if (
|
||||
tableStore.table.selection[0].reportProcess == 'Cause_Analysis' &&
|
||||
tableStore.table.selection[0].reportProcessStatus == 'Success'
|
||||
) {
|
||||
// 计划整改措施
|
||||
// this.showPlannedRectification = true
|
||||
// setTimeout(() => {
|
||||
// this.$refs.PlannedRectification.rectificationMeasures = true
|
||||
// }, 0)
|
||||
} else if (
|
||||
tableStore.table.selection[0].reportProcess == 'Plan_Measures' &&
|
||||
tableStore.table.selection[0].reportProcessStatus == 'Success'
|
||||
) {
|
||||
// 实际采取措施
|
||||
// this.showActualMeasures = true
|
||||
// setTimeout(() => {
|
||||
// this.$refs.ActualMeasures.rectificationMeasures = true
|
||||
// }, 0)
|
||||
} else if (
|
||||
tableStore.table.selection[0].reportProcess == 'Actual_Measures' &&
|
||||
tableStore.table.selection[0].reportProcessStatus == 'Success'
|
||||
) {
|
||||
// 成效分析
|
||||
// this.showEffectiveness = true
|
||||
// setTimeout(() => {
|
||||
// this.$refs.Effectiveness.effectivenessAnalysis = true
|
||||
// }, 0)
|
||||
} else if (
|
||||
tableStore.table.selection[0].reportProcess == 'Insights' &&
|
||||
tableStore.table.selection[0].reportProcessStatus == 'Success'
|
||||
) {
|
||||
ElMessage.warning('填报已结束,无需填报!')
|
||||
} else {
|
||||
ElMessage.warning('审核未通过,不能进行填报!')
|
||||
}
|
||||
} else {
|
||||
ElMessage.warning('请选择1条数据,进行填报!')
|
||||
}
|
||||
}
|
||||
// 关闭弹框
|
||||
const handleClose = () => {
|
||||
|
||||
@@ -31,7 +31,7 @@ const layout = mainHeight(63) as any
|
||||
width: 100%;
|
||||
height: 500px;
|
||||
}
|
||||
::v-deep(.el-tabs__content) {
|
||||
:deep(.el-tabs__content) {
|
||||
height: v-bind('layout.height');
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user