| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226 |
- <template>
- <ele-modal
- :visible.sync="visible"
- title="处理"
- width="70%"
- append-to-body
- :maxable="true"
- @close="cancel"
- >
- <el-form
- ref="form"
- :model="form"
- :rules="rules"
- label-width="120px"
- class="el-form-box"
- >
- <!-- 告警详细 -->
- <header-title title="告警详细"></header-title>
- <el-row>
- <el-col :span="8">
- <el-form-item label="告警名称:">
- <el-input disabled v-model="form.name" placeholder=" " />
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="告警级别:">
- <el-input disabled :value="getLevel(form.alarmLevel)" placeholder=" " />
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="能源分类:">
- <el-input disabled v-model="form.energyTypeName" placeholder=" " />
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="用能分区:">
- <el-input disabled v-model="form.areaName" placeholder=" " />
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="告警描述:">
- <el-input disabled v-model="form.description" placeholder=" " />
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="告警时间:">
- <el-input disabled v-model="form.createTime" placeholder=" " />
- </el-form-item>
- </el-col>
- </el-row>
- <!-- 告警处理意见 -->
- <header-title title="告警处理意见"></header-title>
- <el-row>
- <el-col :span="8">
- <el-form-item label="处理时间:" prop="processTime">
- <el-date-picker
- v-model="form.processTime"
- type="datetime"
- placeholder="时间 "
- style="width: 100%"
- format="yyyy-MM-dd HH:mm:ss"
- value-format="yyyy-MM-dd HH:mm:ss"
- :disabled="type == 'view'"
- ></el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="处理方式:" prop="handleType">
- <el-select
- v-model="form.handleType"
- placeholder="请选择"
- :disabled="type == 'view'"
- style="width: 100%"
- >
- <el-option label="现场处理" :value="1"></el-option>
- <el-option label="远程处理" :value="2"></el-option>
- <el-option label="转派处理" :value="3"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <!-- <el-col :span="8">
- <el-form-item label="增加用量:">
- <el-input
- v-model="form.increaseDosage"
- placeholder="请输入"
- ></el-input>
- </el-form-item>
- </el-col> -->
- </el-row>
- <el-row>
- <el-col :span="24">
- <el-form-item label="处理意见:">
- <el-input
- v-model="form.handleOpinion"
- :disabled="type == 'view'"
- type="textarea"
- :rows="4"
- placeholder="请输入"
- ></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="24">
- <el-form-item label="处理定性:">
- <el-radio-group
- v-model="form.qualitativeProcessing"
- :disabled="type == 'view'"
- >
- <el-radio :label="1">已核查,没问题</el-radio>
- <el-radio :label="2">请现场核查确定</el-radio>
- </el-radio-group>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="24">
- <el-form-item label="处理照片:">
- <fileMain
- v-model="handleImg"
- :type="type == 'view' ? 'view' : 'add'"
- ></fileMain>
- </el-form-item>
- </el-col>
- </el-row>
- </el-form>
- <template v-slot:footer>
- <el-button
- type="primary"
- @click="save()"
- v-loading="loading"
- v-if="type != 'view'"
- >保存</el-button
- >
- <el-button @click="cancel">关闭</el-button>
- </template>
- </ele-modal>
- </template>
- <script>
- import {
- powerusagealarmlogsheetGetById,
- powerusagealarmlogsheetHandle
- } from '@/api/alarmConfiguration/index.js';
- const defForm = {
- name: '',
- levelText: '',
- energyClassificationName: '',
- areaName: '',
- description: '',
- warningTime: '',
- processTime: '',
- handleType: '',
- increaseDate: '',
- increaseUnit: 'degree',
- increaseDosage: '',
- qualitativeProcessing: 'needCheck'
- };
- export default {
- data() {
- return {
- visible: false,
- loading: false,
- form: { ...defForm },
- type: 'edit',
- fileList: [],
- rules: {
- processTime: [
- { required: true, message: '请选择处理时间', trigger: 'change' }
- ],
- handleType: [
- { required: true, message: '请选择处理方式', trigger: 'change' }
- ]
- }
- };
- },
- methods: {
- async open(row, type) {
- this.visible = true;
- this.type = type;
- if (row) {
- this.form = await powerusagealarmlogsheetGetById(row.id);
- }
- },
- getLevel(val) {
- return { 1: '提示', 2: '一般', 3: '严重', 4: '紧急', 5: '致命' }[val];
- },
- cancel() {
- this.form = { ...defForm };
- this.visible = false;
- },
- save() {
- this.$refs.form.validate((valid) => {
- if (valid) {
- this.loading = true;
- // let api = this.form.id ? update : save;
- powerusagealarmlogsheetHandle(this.form)
- .then((res) => {
- this.loading = false;
- this.$message.success('操作成功');
- this.cancel();
- this.$emit('reload');
- })
- .finally(() => {
- this.loading = false;
- });
- }
- });
- }
- }
- };
- </script>
- <style lang="scss" scoped>
- .el-form-box {
- ::v-deep .el-input.is-disabled .el-input__inner {
- background-color: #f5f7fa;
- color: #606266;
- }
- }
- </style>
|