From 7df64634d3d7b292713eebfa008c40b3f5f9f65f Mon Sep 17 00:00:00 2001
From: shj <1790240199@qq.com>
Date: Tue, 20 Sep 2022 15:57:03 +0800
Subject: [PATCH] 修改
---
src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue | 869 +++++++++++++++++++++++++++++++++++----------------------
1 files changed, 528 insertions(+), 341 deletions(-)
diff --git a/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue b/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue
index 8bc2c51..4323f55 100644
--- a/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue
+++ b/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue
@@ -1,11 +1,12 @@
<template>
<div class="system-edit-user-container">
<el-dialog
- title="查看演练实施评价"
+ :title="titles"
v-model="isShowDialog"
width="900px"
draggable
:fullscreen="full"
+ @close="resetForm(ruleFormRef)"
>
<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
<el-form
@@ -16,214 +17,200 @@
>
<el-row :gutter="35">
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="演练名称" prop="teamName">
- <el-input v-model="ruleForm.teamName" placeholder="请填写队伍名称" disabled></el-input>
+ <el-form-item label="演练名称" prop="emergencyPlanName">
+ <el-input :disabled="true" v-model="ruleForm.emergencyPlanName" placeholder="请填写队伍名称"></el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="演练地点" prop="teamName">
- <el-input v-model="ruleForm.teamName" placeholder="请填写队伍名称" disabled></el-input>
+ <el-form-item label="演练地点" prop="drillAddress">
+ <el-input :disabled="true" v-model="ruleForm.drillAddress" placeholder="请填写队伍名称"></el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="主办部门" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
+ <el-form-item label="主办部门" placeholder="请选择" prop="departmentId">
+ <!--<el-tree-select-->
+ <!--v-model="ruleForm.departmentId"-->
+ <!--:data="data" class="w100"-->
+ <!--placeholder="请选择"/>-->
+
+ <el-tree-select :disabled="true" v-model="ruleForm.departmentId"
+ :data="newTreeList" :props="propse" class="w100" placeholder="请选择" />
+ </el-form-item>
+
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="演练方式" prop="drillWay">
+ <el-select :disabled="true" v-model="ruleForm.drillWay" class="w100" placeholder="请选择">
+ <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 :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="演练方式" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="应急预案" prop="telephone" >
+ <el-form-item label="应急预案" prop="drillName" >
<el-input
- v-model="ruleForm.teamLeader"
+ :disabled="true"
+ v-model="ruleForm.drillName"
placeholder="请选择"
class="input-with-select"
- disabled
>
<template #append>
- <el-button :icon="Search" @click="daiInpt" disabled/>
+ <el-button :disabled="true" :icon="Search" @click="daiInpt"/>
</template>
</el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="演练级别" prop="teamPhone">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="公司级" value="admin"></el-option>
- <el-option label="分厂级" value="common"></el-option>
- <el-option label="车间级" value="common"></el-option>
+ <el-form-item label="演练级别" prop="drillLevel">
+ <el-select :disabled="true" v-model="ruleForm.drillLevel" class="w100" placeholder="请选择">
+ <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 :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="计划定制日期" prop="telephone">
- <el-date-picker
- v-model="value1"
- class="w100"
- type="datetime"
- placeholder="选择日期时间"
- disabled
- />
+ <el-form-item label="计划定制日期" prop="makingPlanDate">
+ <el-date-picker :disabled="true" v-model="ruleForm.makingPlanDate"
+ value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="计划演练日期" prop="telephone">
- <el-date-picker
- v-model="value1"
- class="w100"
- type="datetime"
- placeholder="选择日期时间"
- disabled
- />
+ <el-form-item label="计划演练日期" prop="drillPlanDate">
+ <el-date-picker :disabled="true" v-model="ruleForm.drillPlanDate"
+ value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="修改时间" prop="telephone">
- <el-date-picker
- v-model="value1"
- class="w100"
- type="datetime"
- placeholder="选择日期时间"
- disabled
- />
+ <el-form-item label="修改时间" prop="updateDate">
+ <el-date-picker :disabled="true" v-model="ruleForm.updateDate" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="计划定制人" prop="teamName">
- <el-input v-model="ruleForm.teamName" placeholder="请填写队伍名称" disabled></el-input>
+ <el-form-item label="计划定制人" prop="makingUserUid">
+ <el-input :disabled="true" v-model="ruleForm.makingUserName" placeholder="请填写计划定制人"></el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="制定部门" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
- </el-select>
+ <el-form-item label="制定部门" prop="makingDepartmentId">
+ <!--<el-tree-select-->
+ <!--v-model="ruleForm.makingDepartmentId"-->
+ <!--:data="data" class="w100"-->
+ <!--placeholder="请选择"/>-->
+
+ <el-tree-select :disabled="true" v-model="ruleForm.makingDepartmentId"
+ :data="newTreeList" :props="propse" class="w100" placeholder="请选择" />
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="演练人员" prop="telephone" >
+ <el-form-item label="演练人员" prop="planUserListString" >
<el-input
- v-model="ruleForm.teamLeader"
+ :disabled="true"
+ v-model="ruleForm.planUserListString"
placeholder="请选择"
class="input-with-select"
- disabled
>
<template #append>
- <el-button :icon="Search" @click="openUser" disabled/>
+ <el-button :disabled="true" :icon="Search" @click="openUser"/>
</template>
</el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
- <el-form-item label="演练目的" prop="teamLevel">
- <el-input v-model="ruleForm.name" class="textarea" type="textarea" disabled></el-input>
+ <el-form-item label="演练目的" prop="purpose">
+ <el-input
+ :disabled="true"
+ v-model="ruleForm.purpose"
+ placeholder="请填写演练目的"
+ class="input-with-select textarea"
+ type="textarea"
+ >
+ </el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="演练负责人" prop="telephone" >
+ <el-form-item label="演练负责人" prop="chargeUserListString" >
<el-input
- v-model="ruleForm.teamLeader"
+ :disabled="true"
+ v-model="ruleForm.chargeUserListString"
placeholder="请选择"
class="input-with-select"
- disabled
>
<template #append>
- <el-button :icon="Search" @click="openUser" disabled/>
+ <el-button :disabled="true" :icon="Search" @click="openUser"/>
</template>
</el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="保险措施" prop="teamName">
- <el-input v-model="ruleForm.teamName" placeholder="请填写队伍名称" disabled></el-input>
+ <el-form-item label="保险措施" prop="insuranceMeasures">
+ <el-input :disabled="true" v-model="ruleForm.insuranceMeasures" placeholder="请填写保险措施"></el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="演练经费" prop="teamName">
- <el-input v-model="ruleForm.teamName" placeholder="请填写队伍名称" disabled></el-input>
+ <el-form-item label="演练经费" prop="drillExpense">
+ <el-input :disabled="true" v-model="ruleForm.drillExpense" placeholder="请填写演练经费"></el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
- <el-form-item label="备注信息" prop="teamLevel">
- <el-input v-model="ruleForm.name" class="textarea" type="textarea" placeholder="请填写备注信息" disabled></el-input>
+ <el-form-item label="备注信息" prop="remark">
+ <el-input
+ :disabled="true"
+ v-model="ruleForm.remark"
+ placeholder="请填写备注信息"
+ class="input-with-select textarea"
+ type="textarea"
+ >
+ </el-input>
</el-form-item>
</el-col>
- <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+ <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" style="margin-bottom: 0!important;">
<el-form-item label="预案附件">
- <el-upload
- v-model:file-list="fileList"
- class="upload-demo"
- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15"
- :on-change="handleChange"
- disabled
- >
- <el-button type="primary" disabled
- >点击上传</el-button>
- <template #tip>
- <div class="el-upload__tip">
- 添加相关附件
- </div>
- </template>
- </el-upload>
+ <uploaderFile :fileList="ruleForm.planFileList" :disabled="true"></uploaderFile>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="实际到场人员" prop="telephone" >
+ <el-form-item label="实际到场人员" prop="executeUserListString" >
<el-input
- v-model="ruleForm.teamLeader"
+ v-model="ruleForm.executeUserListString"
placeholder="请选择"
class="input-with-select"
- disabled
+ :disabled="true"
>
<template #append>
- <el-button :icon="Search" @click="openUser" disabled/>
+ <el-button :icon="Search" @click="openUser"/>
</template>
</el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
- <el-form-item label="演练过程描述" prop="teamLevel">
- <el-input v-model="ruleForm.name" class="textarea" type="textarea" placeholder="请填写备注信息" disabled></el-input>
+ <el-form-item label="演练过程描述" prop="processDesc">
+ <el-input :disabled="true" v-model="ruleForm.processDesc" class="textarea" type="textarea" placeholder="请填写演练过程描述"></el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="演练记录人" prop="telephone" >
+ <el-form-item label="演练记录人" prop="recordUserName" >
<el-input
- v-model="ruleForm.teamLeader"
+ v-model="ruleForm.recordUserName"
placeholder="请选择"
class="input-with-select"
- disabled
+ :disabled="true"
>
<template #append>
- <el-button :icon="Search" @click="openUser" disabled/>
+ <el-button :icon="Search" @click="openUser"/>
</template>
</el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="演练记录时间" prop="telephone">
+ <el-form-item label="演练记录时间" prop="drillRecordDate">
<el-date-picker
- v-model="value1"
+ v-model="ruleForm.drillRecordDate"
class="w100"
type="datetime"
placeholder="选择日期时间"
- disabled
+ :disabled="true"
/>
</el-form-item>
</el-col>
@@ -235,187 +222,155 @@
</div>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="演练负责人" prop="telephone" >
+ <el-form-item label="演练负责人" prop="evaluationUserListString" >
<el-input
- v-model="ruleForm.teamLeader"
+ v-model="ruleForm.evaluationUserListString"
placeholder="请选择"
class="input-with-select"
- disabled
+ :disabled="disabled"
>
<template #append>
- <el-button :icon="Search" @click="openUser" disabled/>
+ <el-button :icon="Search" @click="openUser"/>
</template>
</el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="预案评审-适宜性" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
+ <el-form-item label="预案评审-适宜性" prop="suitable">
+ <el-select :disabled="disabled" v-model="ruleForm.suitable" class="w100" placeholder="请选择">
+ <el-option label="全部能够执行" :value="1"></el-option>
+ <el-option label="全部不能够执行" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="预案评审-充分性" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
+ <el-form-item label="预案评审-充分性" prop="sufficient">
+ <el-select :disabled="disabled" v-model="ruleForm.sufficient" class="w100" placeholder="请选择">
+ <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 :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="人员到位情况" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
+ <el-form-item label="人员到位情况" prop="arrival">
+ <el-select :disabled="disabled" v-model="ruleForm.arrival" class="w100" placeholder="请选择">
+ <el-option label="迅速准确,基本按时到位" :value="1"></el-option>
+ <el-option label="未按时到位" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="物资到位情况-现场物资" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
+ <el-form-item label="物资到位情况-现场物资" prop="supplies">
+ <el-select :disabled="disabled" v-model="ruleForm.supplies" class="w100" placeholder="请选择">
+ <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 :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="物资到位情况-个人防护" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
+ <el-form-item label="物资到位情况-个人防护" prop="protection">
+ <el-select :disabled="disabled" v-model="ruleForm.protection" class="w100" placeholder="请选择">
+ <el-option label="全部人员防护到位" :value="1"></el-option>
+ <el-option label="人员未防护到位" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="协调组织情况-整体组织" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
+ <el-form-item label="协调组织情况-整体组织" prop="whole">
+ <el-select :disabled="disabled" v-model="ruleForm.whole" class="w100" placeholder="请选择">
+ <el-option label="协调基本顺利,能够满足要求" :value="1"></el-option>
+ <el-option label="协调不顺利" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="协调组织情况-疏散组分工" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
+ <el-form-item label="协调组织情况-疏散组分工" prop="division">
+ <el-select :disabled="disabled" v-model="ruleForm.division" class="w100" placeholder="请选择">
+ <el-option label="安全,快速" :value="1"></el-option>
+ <el-option label="安全,不快速" :value="2"></el-option>
+ <el-option label="不安全,快速" :value="3"></el-option>
+ <el-option label="不安全,不快速" :value="4"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="实战效果评价" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
+ <el-form-item label="实战效果评价" prop="effect">
+ <el-select :disabled="disabled" v-model="ruleForm.effect" class="w100" placeholder="请选择">
+ <el-option label="基本达到目的,部分环节有待改进" :value="1"></el-option>
+ <el-option label="未达到目的" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="支援部门和协作有效性-报告上级" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
+ <el-form-item label="支援部门和协作有效性-报告上级" prop="report">
+ <el-select :disabled="disabled" v-model="ruleForm.report" class="w100" placeholder="请选择">
+ <el-option label="报告及时" :value="1"></el-option>
+ <el-option label="报告不及时" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="支援部门和协作有效性-安全部门" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
+ <el-form-item label="支援部门和协作有效性-安全部门" prop="safety">
+ <el-select :disabled="disabled" v-model="ruleForm.safety" class="w100" placeholder="请选择">
+ <el-option label="按要求协作" :value="1"></el-option>
+ <el-option label="未按要求协作" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="支援部门和协作有效性-救援后勤部门" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
+ <el-form-item label="支援部门和协作有效性-救援后勤部门" prop="rescue">
+ <el-select :disabled="disabled" v-model="ruleForm.rescue" class="w100" placeholder="请选择">
+ <el-option label="按要求协作" :value="1"></el-option>
+ <el-option label="未按要求协作" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="支援部门和协作有效性-警戒撤离配合" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="综合应急预案" value="admin"></el-option>
- <el-option label="现场处置方案" value="common"></el-option>
- <el-option label="专项应急预案" value="common"></el-option>
- <el-option label="其他预案" value="common"></el-option>
+ <el-form-item label="支援部门和协作有效性-警戒撤离配合" prop="evacuate">
+ <el-select :disabled="disabled" v-model="ruleForm.evacuate" class="w100" placeholder="请选择">
+ <el-option label="按要求配合" :value="1"></el-option>
+ <el-option label="未按要求配合" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="是否需要修改应急预案" prop="teamLeader">
- <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择" disabled>
- <el-option label="是" value="admin"></el-option>
- <el-option label="否" value="common"></el-option>
+ <el-form-item label="是否需要修改应急预案" prop="needModify">
+ <el-select :disabled="disabled" v-model="ruleForm.needModify" class="w100" placeholder="请选择">
+ <el-option label="是" :value="true"></el-option>
+ <el-option label="否" :value="false"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
- <el-form-item label="存在问题和改进措施" prop="teamLevel">
- <el-input v-model="ruleForm.name" class="textarea" type="textarea" placeholder="请填写备注信息" disabled></el-input>
+ <el-form-item label="存在问题和改进措施" prop="questionAndImprove">
+ <el-input :disabled="disabled" v-model="ruleForm.questionAndImprove" class="textarea" type="textarea" placeholder="请填写备注信息"></el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
- <el-form-item label="修改内容" prop="teamLevel">
- <el-input v-model="ruleForm.name" class="textarea" type="textarea" placeholder="请填写修改内容" disabled></el-input>
+ <el-form-item label="修改内容" prop="modifyContent">
+ <el-input :disabled="disabled" v-model="ruleForm.modifyContent" class="textarea" type="textarea" placeholder="请填写修改内容"></el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
<el-form-item label="附件列表">
- <el-upload
- v-model:file-list="fileList"
- class="upload-demo"
- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15"
- :on-change="handleChange"
- disabled
- >
- <el-button type="primary" disabled
- >点击上传</el-button>
- <template #tip>
- <div class="el-upload__tip">
- 添加相关附件
- </div>
- </template>
- </el-upload>
+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled"
+ @successUploader="successUploader"></uploaderFile>
</el-form-item>
</el-col>
</el-row>
</el-form>
<template #footer>
<span class="dialog-footer">
- <el-button @click="onCancel" size="default">关闭</el-button>
+ <el-button @click="resetForm(ruleFormRef)" size="default">关闭</el-button>
+ <el-button v-if="!disabled" size="default" type="primary" @click="submitForm(titles, ruleFormRef)">确定</el-button>
</span>
</template>
</el-dialog>
- <CheckTemplate ref="Shows"/>
- <userSelections ref="userRef"/>
- <RegionsDialog ref="openRef"/>
+ <RegionsDialog ref="Shows" @SearchUser="onUser"/>
+ <DailogSearchUser ref="userRef" @SearchUser="selectUser"/>
+<!-- <RegionsDialog ref="openRef"/>-->
</div>
</template>
@@ -423,45 +378,228 @@
import {
reactive,
ref,
- defineComponent
+ defineComponent,
+ onMounted,
} from 'vue';
-import type {
+import {
UploadUserFile,
FormInstance,
+ ElMessage
} from 'element-plus'
-
import {
Search,
FullScreen
} from '@element-plus/icons-vue'
import UserSelections from "/@/components/userSelections/index.vue"
-import CheckTemplate from '/@/components/checkTemplate/index.vue'
-import RegionsDialog from '/@/components/regionsDialog/index.vue'
-
+import RegionsDialog from "/@/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue"
+import DailogSearchUser from "/@/components/DailogSearchUser/index.vue"
+import {emergencyDrillEvaluationApi} from "/@/api/contingencyManagement/emergencyDrillEvaluation";
+import {goalManagementApi} from "/@/api/goalManagement";
+import uploaderFile from '/@/components/uploaderFile/index.vue';
export default defineComponent({
name: 'approvalProgress',
components: {
- CheckTemplate,
UserSelections,
RegionsDialog,
+ DailogSearchUser,
+ uploaderFile
},
- setup() {
+ setup(props, { emit }) {
const isShowDialog = ref(false)
const ruleFormRef = ref<FormInstance>()
//定义表单
- const ruleForm = reactive({
- teamName: '', // 队伍名称
- teamLeader: '', //队伍负责人
- department: [], // 负责人部门
- phone: '', // 负责人手机
- telephone: '', // 固定电话
+ const ruleForm = ref ({
+ drillExecuteId: '',
+ suitable: '',
+ sufficient: '',
+ arrival: '',
+ supplies: '',
+ protection: '',
+ whole: '',
+ division: '',
+ effect: '',
+ report: '',
+ safety: '',
+ rescue: '',
+ evacuate: '',
+ needModify: '',
+ questionAndImprove: '',
+ modifyContent: '',
+ fileList: [
+ ],
+ userList: [
+ ]
});
+ //定义表单
+ const realRuleForm = ref ({
+ drillExecuteId: '',
+ suitable: '',
+ sufficient: '',
+ arrival: '',
+ supplies: '',
+ protection: '',
+ whole: '',
+ division: '',
+ effect: '',
+ report: '',
+ safety: '',
+ rescue: '',
+ evacuate: '',
+ needModify: '',
+ questionAndImprove: '',
+ modifyContent: '',
+ fileList: [
+ ],
+ userList: [
+ ]
+ });
+ const titles = ref();
+ const disabled = ref();
// 打开弹窗
- const openDialog = () => {
- // state.ruleForm = row;
+ const openDialog = (title: string, id: number, type: boolean) => {
isShowDialog.value = true;
+ titles.value = title;
+ disabled.value = type;
+ if (title == '查看演练实施评价') {
+ emergencyDrillEvaluationApi()
+ .seeEmergencyDrillEvaluation(id)
+ .then((res) => {
+ if (res.data.code == 200) {
+ ruleForm.value = res.data.data;
+ ruleForm.value.planUserListString=''
+ ruleForm.value.chargeUserListString=''
+ ruleForm.value.executeUserListString=''
+ ruleForm.value.evaluationUserListString=''
+ //演练人员
+ for(var a = 0;a<res.data.data.planUserList.length;a++){
+ ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'
+ }
+ //演练负责人员
+ for(var a = 0;a<res.data.data.planChargeUserList.length;a++){
+ ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'
+ }
+ //实际到场人员
+ for(var a = 0;a<res.data.data.executeUserList.length;a++){
+ ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'
+ }
+ //演练负责人(评价)
+ for(var a = 0;a<res.data.data.evaluationUserList.length;a++){
+ ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'
+ }
+ }
+ fileList.value = (res.data.data.evaluationFileList?res.data.data.evaluationFileList:[])
+ initFileListData()
+ });
+ }
+ if(title=='演练实施评价'){
+ emergencyDrillEvaluationApi()
+ .seeEmergencyDrillEvaluation(id)
+ .then((res) => {
+ if (res.data.code == 200) {
+ ruleForm.value = res.data.data;
+ ruleForm.value.planUserListString=''
+ ruleForm.value.chargeUserListString=''
+ ruleForm.value.executeUserListString=''
+ ruleForm.value.evaluationUserListString=''
+ if(res.data.data.planUserList){
+ for(var a = 0;a<res.data.data.planUserList.length;a++){
+ ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'
+ }
+ }
+
+ if(res.data.data.planChargeUserList){
+ for(var a = 0;a<res.data.data.planChargeUserList.length;a++){
+ ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'
+ }
+ }
+
+ if(res.data.data.executeUserList){
+ for(var a = 0;a<res.data.data.executeUserList.length;a++){
+ ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'
+ }
+ }
+ //演练负责人(评价)
+ if(res.data.data.evaluationUserList){
+ for(var a = 0;a<res.data.data.evaluationUserList.length;a++){
+ ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'
+ }
+ }
+ }
+ fileList.value = (res.data.data.evaluationFileList?res.data.data.evaluationFileList:[])
+ initFileListData()
+ });
+ }
+ if(title=='演练实施查看评价'){
+ emergencyDrillEvaluationApi()
+ .seeEmergencyDrillEvaluation(id)
+ .then((res) => {
+ if (res.data.code == 200) {
+ ruleForm.value = res.data.data;
+ ruleForm.value.planUserListString=''
+ ruleForm.value.chargeUserListString=''
+ ruleForm.value.executeUserListString=''
+ ruleForm.value.evaluationUserListString=''
+
+ if(res.data.data.planUserList){
+ for(var a = 0;a<res.data.data.planUserList.length;a++){
+ ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'
+ }
+ }
+
+ if(res.data.data.planChargeUserList){
+ for(var a = 0;a<res.data.data.planChargeUserList.length;a++){
+ ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'
+ }
+ }
+
+ if(res.data.data.executeUserList){
+ for(var a = 0;a<res.data.data.executeUserList.length;a++){
+ ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'
+ }
+ }
+ //演练负责人(评价)
+ if(res.data.data.evaluationUserList){
+ for(var a = 0;a<res.data.data.evaluationUserList.length;a++){
+ ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'
+ }
+ }
+ fileList.value = (res.data.data.evaluationFileList?res.data.data.evaluationFileList:[])
+ initFileListData()
+ }
+ });
+ }
+
+ };
+ const initFileListData = async () => {
+ for(var a = 0;a<ruleForm.value.planFileList.length;a++){
+ ruleForm.value.planFileList[a].name = ruleForm.value.planFileList[a].fileName
+ }
+ // 事故分析会议纪要
+ for(var a = 0;a<fileList.value.length;a++){
+ fileList.value[a].name = fileList.value[a].fileName
+ }
+ }
+ // 上传成功组装数据
+ const successUploader = (list) =>{
+ fileList.value = list
+ const formFileList = []
+ for(var a = 0;a<fileList.value.length;a++){
+ formFileList.push(
+ {
+ fileName:fileList.value[a].fileName,
+ fileUrl:''
+ }
+ )
+ }
+ ruleForm.value.fileList = formFileList
+ }
+ const resetForm = (formEl: FormInstance | undefined) => {
+ isShowDialog.value = false;
+ if (!formEl) return;
+ formEl.resetFields();
+ fileList.value = []
};
// 关闭弹窗
const closeDialog = () => {
@@ -474,125 +612,16 @@
//日期选择器
const value1 = ref('')
// 上传附件
- const fileList = ref<UploadUserFile[]>([])
+ const fileList = ref([])
// 可选择树
const treeSelect = ref()
const tree = [
- {
- value: '1',
- label: 'Level one 1',
- children: [
- {
- value: '1-1',
- label: 'Level two 1-1',
- children: [
- {
- value: '1-1-1',
- label: 'Level three 1-1-1',
- },
- ],
- },
- ],
- },
- {
- value: '2',
- label: 'Level one 2',
- children: [
- {
- value: '2-1',
- label: 'Level two 2-1',
- children: [
- {
- value: '2-1-1',
- label: 'Level three 2-1-1',
- },
- ],
- },
- {
- value: '2-2',
- label: 'Level two 2-2',
- children: [
- {
- value: '2-2-1',
- label: 'Level three 2-2-1',
- },
- ],
- },
- ],
- },
- {
- value: '3',
- label: 'Level one 3',
- children: [
- {
- value: '3-1',
- label: 'Level two 3-1',
- children: [
- {
- value: '3-1-1',
- label: 'Level three 3-1-1',
- },
- ],
- },
- {
- value: '3-2',
- label: 'Level two 3-2',
- children: [
- {
- value: '3-2-1',
- label: 'Level three 3-2-1',
- },
- ],
- },
- ],
- },
+ ,
]
//定义树形下拉框
const responsibleDepartment = ref()
const data = [
- {
- value: '1',
- label: '广汇能源综合物流发展有限责任公司',
- children: [
- {
- value: '1-1',
- label: '经营班子',
- children: [],
- },
- ],
- },
- {
- value: '2',
- label: '生产运行部',
- children: [
- {
- value: '2-1',
- label: '灌装一班',
- children: []
- },
- {
- value: '2-2',
- label: '工艺四班',
- children: [],
- },
- ],
- },
- {
- value: '3',
- label: '设备部',
- children: [
- {
- value: '3-1',
- label: '仪表班',
- children: [],
- },
- {
- value: '3-2',
- label: '机修班',
- children: [],
- },
- ],
- },
+
]
// 必填项提示
// const rules = reactive<FormRules>({
@@ -639,11 +668,104 @@
// },
// ],
// })
+
+ const submitForm = async (title: string, formEl: FormInstance | undefined) => {
+ if(!ruleForm.value.fileList){
+ ruleForm.value.fileList = []
+ }
+ //演练负责人(评价)
+ ruleForm.value.userList = ruleForm.value.evaluationUserList
+
+
+
+ realRuleForm.value.drillExecuteId=ruleForm.value.drillExecuteId
+ realRuleForm.value.suitable=ruleForm.value.suitable
+ realRuleForm.value.sufficient=ruleForm.value.sufficient
+ realRuleForm.value.arrival=ruleForm.value.arrival
+ realRuleForm.value.supplies=ruleForm.value.supplies
+ realRuleForm.value.protection=ruleForm.value.protection
+ realRuleForm.value.whole=ruleForm.value.whole
+ realRuleForm.value.division=ruleForm.value.division
+ realRuleForm.value.effect=ruleForm.value.effect
+ realRuleForm.value.report=ruleForm.value.report
+ realRuleForm.value.safety=ruleForm.value.safety
+ realRuleForm.value.rescue=ruleForm.value.rescue
+ realRuleForm.value.evacuate=ruleForm.value.evacuate
+ realRuleForm.value.needModify=ruleForm.value.needModify
+ realRuleForm.value.questionAndImprove=ruleForm.value.questionAndImprove
+ realRuleForm.value.modifyContent=ruleForm.value.modifyContent
+ realRuleForm.value.fileList=ruleForm.value.fileList
+ if(ruleForm.value.userList){
+ for(var a = 0;a<ruleForm.value.userList.length;a++){
+ realRuleForm.value.userList.push({
+ userUid:ruleForm.value.userList[a].userUid,
+ userName:ruleForm.value.userList[a].userName
+ })
+ }
+ }
+ // console.log(ruleForm.value.evaluationUserList)
+ // ruleForm.value.userList=[]
+ // for(var a = 0;a<ruleForm.value.evaluationUserList.length;a++){
+ // // += res.data.data.evaluationUserList[a].userName+';'
+ // }
+ if (title == '演练实施评价') {
+ if (!formEl) return;
+ await formEl.validate((valid, fields) => {
+ if (valid) {
+ // console.log(ruleForm.value)
+ emergencyDrillEvaluationApi()
+ .editEmergencyDrillEvaluation(realRuleForm.value)
+ // emergencyDrillExecuteApi()
+ // .editEmergencyDrillExecute(ruleForm.value)
+ .then((res) => {
+ if (res.data.code == 200) {
+ ElMessage({
+ showClose: true,
+ message: '评价成功',
+ type: 'success',
+ });
+ emit('myAdd', true);
+ } else {
+ ElMessage({
+ showClose: true,
+ message: res.data.msg,
+ type: 'error',
+ });
+ emit('myAdd', true);
+ }
+ formEl.resetFields();
+ });
+ } else {
+ console.log('error submit!', fields);
+ }
+ });
+ isShowDialog.value = false;
+ formEl.resetFields();
+ ruleForm.value = {
+ drillRecordDate: '', // 演练记录时间
+ drillPlanId: '', //演练计划ID
+ drillName:'',
+ recordUserUid: '', // 记录人ID
+ processDesc: '', // 演练过程描述
+ userList: [
+ {
+ userUid: '',
+ },
+ {
+ userUid: '',
+ }
+ ]
+ };
+ }
+ }
// 应急队伍弹窗
const Shows=ref()
const daiInpt=()=>{
Shows.value.openDailog()
}
+ const onUser = (e:any) => {
+ ruleForm.value.drillPlanId=e.id
+ };
// 选择区域弹窗
const openRef=ref()
const regionsDialog=()=>{
@@ -652,8 +774,60 @@
// 打开用户选择弹窗
const userRef = ref();
const openUser = () => {
- userRef.value.openDialog();
+ userRef.value.openDailog(0);
};
+
+ const selectUser = (e) =>{
+ ruleForm.value.evaluationUserListString=''
+ ruleForm.value.evaluationUserList=[]
+ for(var a = 0;a<e.length;a++){
+ ruleForm.value.evaluationUserList.push(
+ {
+ userName: e[a].realName,
+ userUid: e[a].uid,
+ }
+ )
+ ruleForm.value.evaluationUserListString+=e[a].realName+';'
+ }
+ console.log(ruleForm.value.evaluationUserList)
+ }
+ //el-tree-select回显
+ const propse = {
+ label: 'depName',
+ children: 'children',
+ };
+ const newTreeList = [];
+ //得到部门树
+ const department = async () => {
+ await goalManagementApi()
+ .getTreedepartment()
+ .then((res) => {
+ if (res.data.code == 200) {
+ data.value = res.data.data;
+ getTreeList(res.data.data, newTreeList);
+ } else {
+ ElMessage.error(res.data.msg);
+ }
+ });
+ };
+ // 递归树状数据且修改字段名
+ const getTreeList = (treeList, newTreeList) => {
+ treeList.map((c) => {
+ let tempData = {
+ depName: c.depName,
+ value: c.depId,
+ children: [],
+ };
+ if (c.children && c.children.length > 0) {
+ tempData.children = [];
+ getTreeList(c.children, tempData.children);
+ }
+ newTreeList.push(tempData);
+ });
+ };
+ onMounted(() => {
+ department();
+ });
//全屏
const full = ref(false);
const toggleFullscreen = () => {
@@ -678,6 +852,7 @@
tree,
daiInpt,
Shows,
+ onUser,
ruleFormRef,
// rules,
openUser,
@@ -687,6 +862,18 @@
toggleFullscreen,
FullScreen,
full,
+ resetForm,
+ titles,
+ disabled,
+ emit,
+ propse,
+ department,
+ newTreeList,
+ selectUser,
+ submitForm,
+ realRuleForm,
+ successUploader,
+ initFileListData
};
},
});
@@ -735,4 +922,4 @@
font-weight: 500;
font-size: 14px;
}
-</style>
\ No newline at end of file
+</style>
--
Gitblit v1.9.2