From b5207f617870bb7e6a513abd430e3f68c9ed0ea1 Mon Sep 17 00:00:00 2001
From: zhaojiale <631455805@qq.com>
Date: Sat, 06 Aug 2022 18:02:00 +0800
Subject: [PATCH] 应急演练修改
---
src/views/contingencyManagement/emergencyDrill/implementationOfEmergencyDrill/component/openAdd.vue | 323 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 312 insertions(+), 11 deletions(-)
diff --git a/src/views/contingencyManagement/emergencyDrill/implementationOfEmergencyDrill/component/openAdd.vue b/src/views/contingencyManagement/emergencyDrill/implementationOfEmergencyDrill/component/openAdd.vue
index 8b3ea93..37c6b87 100644
--- a/src/views/contingencyManagement/emergencyDrill/implementationOfEmergencyDrill/component/openAdd.vue
+++ b/src/views/contingencyManagement/emergencyDrill/implementationOfEmergencyDrill/component/openAdd.vue
@@ -6,6 +6,7 @@
width="769px"
draggable
:fullscreen="full"
+ @close="resetForm(ruleFormRef)"
>
<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
<el-form
@@ -17,9 +18,9 @@
>
<el-row :gutter="35">
<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
- <el-form-item label="演练名称" prop="drillPlanId">
+ <el-form-item label="演练名称" prop="drillName">
<el-input
- v-model="ruleForm.drillPlanId"
+ v-model="ruleForm.drillName"
placeholder="请选择"
class="input-with-select"
>
@@ -29,10 +30,169 @@
</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="autualUser" >
+ </el-row>
+
+
+ <el-row :gutter="35">
+ <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="演练地点" prop="drillAddress">
+ <el-input :disabled="true" v-model="drillRuleForm.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="主办部门" placeholder="请选择" prop="departmentId">
+ <el-tree-select
+ :disabled="true"
+ v-model="drillRuleForm.departmentId"
+ :data="deptData"
+ check-strictly
+ class="w100"
+ :props="propse"
+ clearable
+ 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="drillRuleForm.drillWay" class="w100" placeholder="请选择">
+
+ <el-option label="综合" value="0"></el-option>
+ <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="planName" >
<el-input
- v-model="ruleForm.autualUser"
+ :disabled="true"
+ v-model="drillRuleForm.planName"
+ placeholder="请选择"
+ class="input-with-select"
+ >
+ <template #append>
+ <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="drillLevel">
+ <el-select :disabled="true" v-model="drillRuleForm.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="makingPlanDate">
+ <el-date-picker :disabled="true" v-model="drillRuleForm.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="drillPlanDate">
+ <el-date-picker :disabled="true" v-model="drillRuleForm.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="gmtModitify">
+ <el-date-picker :disabled="true" v-model="drillRuleForm.gmtModitify"
+ 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="makingUserName">
+ <el-input :disabled="true" v-model="drillRuleForm.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="makingDepartmentId">
+ <el-tree-select
+ :disabled="true"
+ v-model="drillRuleForm.makingDepartmentId"
+ check-strictly
+ :data="deptData"
+ class="w100"
+ :props="propse"
+ clearable
+ 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="userListString" >
+ <el-input
+ :disabled="true"
+ v-model="drillRuleForm.userListString"
+ placeholder="请选择"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :disabled="true" :icon="Search" @click="openUser(0)"/>
+ </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="purpose">
+ <el-input
+ :disabled="true"
+ v-model="drillRuleForm.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="chargeUserListString" >
+ <el-input
+ :disabled="true"
+ v-model="drillRuleForm.chargeUserListString"
+ placeholder="请选择"
+ class="input-with-select"
+ >
+ <template #append>
+ <el-button :disabled="true" :icon="Search" @click="openUser(1)"/>
+ </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="insuranceMeasures">
+ <el-input :disabled="true" v-model="drillRuleForm.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="drillExpense">
+ <el-input :disabled="true" v-model="drillRuleForm.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="remark">
+ <el-input
+ :disabled="true"
+ v-model="drillRuleForm.remark"
+ placeholder="请填写备注信息"
+ class="input-with-select textarea"
+ type="textarea"
+ >
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+
+
+
+
+ <el-row :gutter="35">
+ <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+ <el-form-item label="实际到场人员" prop="autualUserListString" >
+ <el-input
+ v-model="ruleForm.autualUserListString"
placeholder="请选择"
class="input-with-select"
>
@@ -53,9 +213,9 @@
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
- <el-form-item label="演练记录人" prop="recordUserUid" >
+ <el-form-item label="演练记录人" prop="recordUserName" >
<el-input
- v-model="ruleForm.recordUserUid"
+ v-model="ruleForm.recordUserName"
placeholder="请选择"
class="input-with-select"
>
@@ -85,8 +245,10 @@
</span>
</template>
</el-dialog>
+ <!--记录人-->
<DailogSearchUser ref="Shows" @SearchUser="onUser"/>
- <UserCheckbox ref="userRef"/>
+ <!--到场人员-->
+ <DailogSearchUser ref="userRef" @SearchUser="selectDCuser"/>
<RegionsDialog ref="openRef" @SearchUser="onUsers"/>
</div>
</template>
@@ -95,7 +257,8 @@
import {
// reactive,
ref,
- defineComponent
+ defineComponent,
+ onMounted,
} from 'vue';
import type {
@@ -111,6 +274,8 @@
import DailogSearchUser from '/@/components/DailogSearchUser/index.vue'
import RegionsDialog from '/@/views/contingencyManagement/emergencyDrill/implementationOfEmergencyDrill/component/regionsDialog.vue'
import {emergencyDrillExecuteApi} from "/@/api/emergencyDrillExecute";
+import {releaseDrillPlanApi} from "/@/api/emergencyDrillPlan";
+import {goalManagementApi} from "/@/api/goalManagement";
export default defineComponent({
name: 'openAdd',
@@ -127,8 +292,12 @@
const ruleForm = ref ({
drillRecordDate: '', // 演练记录时间
drillPlanId: '', //演练计划ID
+ drillName:'',
recordUserUid: '', // 记录人ID
+ recordUserName:'',
processDesc: '', // 演练过程描述
+
+ autualUserListString:'',
userList: [
{
userUid: '',
@@ -151,10 +320,95 @@
.then((res) => {
if (res.data.code == 200) {
ruleForm.value = res.data.data;
+ ruleForm.value.autualUserListString=''
+ for(var a = 0;a<res.data.data.userList.length;a++){
+ ruleForm.value.autualUserListString += res.data.data.userList[a].userName+';'
+ }
+
+ releaseDrillPlanApi()
+ .seeReleaseDrillPlan(res.data.data.drillPlanId)
+ .then((res1) => {
+ if (res1.data.code == 200) {
+ drillRuleForm.value = res1.data.data;
+
+ drillRuleForm.value.userListString=''
+ drillRuleForm.value.chargeUserListString=''
+ for(var a = 0;a<res1.data.data.userList.length;a++){
+ if(res1.data.data.userList[a].type==1){
+ drillRuleForm.value.userListString += res1.data.data.userList[a].userName+';'
+ }
+ // if(res.data.data.userList[a].type==2){
+ // ruleForm.value.chargeUserListString += res.data.data.userList[a].userName+';'
+ // }
+ }
+ // alert(res.data.data.chargeUserList.length)
+ for(var a = 0;a<res1.data.data.chargeUserList.length;a++){
+ drillRuleForm.value.chargeUserListString += res1.data.data.chargeUserList[a].userName+';'
+ }
+ }
+ })
}
});
}
};
+ const data = [];
+ const deptData = []
+ //部门树
+ // const department = () => {
+ // goalManagementApi()
+ // .getTreedepartment()
+ // .then((res) => {
+ // if (res.data.code == 200) {
+ // deptData.value = res.data.data;
+ // console.log('-------',deptData.value)
+ // } else {
+ // ElMessage.error(res.data.msg);
+ // }
+ // });
+ // };
+ //
+ // const propse = {
+ // label: 'depName',
+ // children: 'children',
+ // value: 'depId',
+ // };
+ //el-tree-select回显
+ const propse = {
+ label: 'depName',
+ children: 'children',
+ };
+ //得到部门树
+ const department = async () => {
+ await goalManagementApi()
+ .getTreedepartment()
+ .then((res) => {
+ if (res.data.code == 200) {
+ data.value = res.data.data;
+ getTreeList(res.data.data, deptData);
+ console.log('deptData',deptData)
+ } else {
+ ElMessage.error(res.data.msg);
+ }
+ });
+ };
+ // 递归树状数据且修改字段名
+ const getTreeList = (treeList, deptData) => {
+ 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);
+ }
+ deptData.push(tempData);
+ });
+ };
+ onMounted(() => {
+ department();
+ });
//日期选择器
const drillRecordDate = ref('')
// 表单提交验证必填项
@@ -222,6 +476,7 @@
ruleForm.value = {
drillRecordDate: '', // 演练记录时间
drillPlanId: '', //演练计划ID
+ drillName:'',
recordUserUid: '', // 记录人ID
processDesc: '', // 演练过程描述
userList: [
@@ -238,6 +493,7 @@
const resetForm = (formEl: FormInstance | undefined) => {
isShowDialog.value = false;
if (!formEl) return;
+ drillRuleForm.value={}
formEl.resetFields();
};
@@ -246,15 +502,53 @@
const regionsDialog = () => {
openRef.value.openDailog()
}
+ //定义表单
+ const drillRuleForm = ref ({})
const onUsers = (e:any) => {
+ console.log(e)
+ releaseDrillPlanApi()
+ .seeReleaseDrillPlan(e.id)
+ .then((res) => {
+ if (res.data.code == 200) {
+ drillRuleForm.value = res.data.data;
+
+ drillRuleForm.value.userListString=''
+ drillRuleForm.value.chargeUserListString=''
+ for(var a = 0;a<res.data.data.userList.length;a++){
+ if(res.data.data.userList[a].type==1){
+ drillRuleForm.value.userListString += res.data.data.userList[a].userName+';'
+ }
+ // if(res.data.data.userList[a].type==2){
+ // ruleForm.value.chargeUserListString += res.data.data.userList[a].userName+';'
+ // }
+ }
+ // alert(res.data.data.chargeUserList.length)
+ for(var a = 0;a<res.data.data.chargeUserList.length;a++){
+ drillRuleForm.value.chargeUserListString += res.data.data.chargeUserList[a].userName+';'
+ }
+ }
+ })
ruleForm.value.drillPlanId=e.id
+ ruleForm.value.drillName=e.drillName
};
// 实际到场人员弹窗
const userRef = ref();
const openUser = () => {
- userRef.value.openDialog();
+ userRef.value.openDailog(0);
};
-
+ const selectDCuser = (e) => {
+ ruleForm.value.autualUserListString=''
+ ruleForm.value.userList=[]
+ for(var a = 0;a<e.length;a++){
+ ruleForm.value.userList.push(
+ {
+ userName: e[a].realName,
+ userUid: e[a].uid,
+ }
+ )
+ ruleForm.value.autualUserListString+=e[a].realName+';'
+ }
+ }
// 演练记录人弹窗
const Shows=ref()
const daiInpt=()=>{
@@ -262,6 +556,7 @@
}
const onUser = (e:any) => {
ruleForm.value.recordUserUid=e.uid
+ ruleForm.value.recordUserName=e.realName
};
//全屏
const full = ref(false);
@@ -296,6 +591,12 @@
titles,
disabled,
emit,
+ selectDCuser,
+ drillRuleForm,
+ deptData,
+ propse,
+ data,
+ department
};
},
});
--
Gitblit v1.9.2