From 1be21989c76f0eb9a43b9ebcab322d7171dbccd6 Mon Sep 17 00:00:00 2001
From: zhaojiale <631455805@qq.com>
Date: 星期四, 08 九月 2022 17:08:57 +0800
Subject: [PATCH] json转换取消
---
src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue | 301 +++++++++++++++++++++++++++-----------------------
1 files changed, 162 insertions(+), 139 deletions(-)
diff --git a/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue b/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue
index 207411a..8f988a3 100644
--- a/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue
+++ b/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/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
@@ -41,16 +42,16 @@
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
<el-form-item label="演练方式" prop="drillWay">
<el-select v-model="ruleForm.drillWay" class="w100" placeholder="请选择">
- <el-option label="综合" value="综合"></el-option>
- <el-option label="桌面" value="桌面"></el-option>
- <el-option label="专项" value="专项"></el-option>
+ <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="planId" >
+ <el-form-item label="应急预案" prop="planName" >
<el-input
- v-model="ruleForm.planId"
+ v-model="ruleForm.planName"
placeholder="请选择"
class="input-with-select"
>
@@ -63,9 +64,9 @@
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
<el-form-item label="演练级别" prop="drillLevel">
<el-select v-model="ruleForm.drillLevel" class="w100" placeholder="请选择">
- <el-option label="公司级" value="公司级"></el-option>
- <el-option label="分厂级" value="分厂级"></el-option>
- <el-option label="车间级" value="车间级"></el-option>
+ <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>
@@ -79,14 +80,14 @@
<el-date-picker 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="gmtModitify">-->
+ <!--<el-date-picker v-model="ruleForm.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="updateDate">
- <el-date-picker 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="makingUserUid">
- <el-input v-model="ruleForm.makingUserUid" placeholder="请填写计划定制人" disabled></el-input>
+ <el-form-item label="计划定制人" prop="makingUserName">
+ <el-input v-model="ruleForm.makingUserName" placeholder="请填写计划定制人" disabled></el-input>
</el-form-item>
</el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
@@ -102,14 +103,14 @@
</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="userListString" >
<el-input
- v-model="ruleForm.teamLeader"
+ v-model="ruleForm.userListString"
placeholder="请选择"
class="input-with-select"
>
<template #append>
- <el-button :icon="Search" @click="openUser"/>
+ <el-button :icon="Search" @click="openUser(0)"/>
</template>
</el-input>
</el-form-item>
@@ -126,14 +127,14 @@
</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"
+ v-model="ruleForm.chargeUserListString"
placeholder="请选择"
class="input-with-select"
>
<template #append>
- <el-button :icon="Search" @click="openUser"/>
+ <el-button :icon="Search" @click="openUser(1)"/>
</template>
</el-input>
</el-form-item>
@@ -161,20 +162,8 @@
</el-col>
<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"
- >
- <el-button type="primary"
- >点击上传</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>
@@ -186,8 +175,9 @@
</span>
</template>
</el-dialog>
- <RegionsDialog ref="Shows" @SearchUser="onUser"/>
- <UserCheckbox ref="userRef"/>
+ <RegionsDialog ref="Shows" @SearchUser="onUser" />
+ <DailogSearchUser ref="userRef" @SearchUser="SearchUser" />
+ <DailogSearchUser ref="userFZRef" @SearchUser="SearchFZUser" />
</div>
</template>
@@ -208,16 +198,18 @@
Search,
FullScreen
} from '@element-plus/icons-vue'
-import UserCheckbox from "/@/components/userCheckbox/index.vue"
+import DailogSearchUser from "/@/components/DailogSearchUser/index.vue"
import RegionsDialog from "/@/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue"
-import {releaseDrillPlanApi} from "/@/api/emergencyDrillPlan";
+import {releaseDrillPlanApi} from "/@/api/contingencyManagement/emergencyDrillPlan";
import {goalManagementApi} from "/@/api/goalManagement";
-
+import { Session } from '/@/utils/storage';
+import uploaderFile from '/@/components/uploaderFile/index.vue';
export default defineComponent({
name: 'openAdd',
components: {
RegionsDialog,
- UserCheckbox,
+ DailogSearchUser,
+ uploaderFile
},
setup(props, { emit }) {
const isShowDialog = ref(false)
@@ -228,8 +220,10 @@
makingPlanDate: '', // 计划制定日期
drillPlanDate: '', //计划演练日期
makingUserUid: '', //计划制定人ID
+ makingUserName: '', //计划制定人Name
makingDepartmentId: '', // 计划制定部门ID
planId: '', // 应急预案ID
+ planName: '', // 应急预案name
departmentId: '', // 主办部门ID
drillExpense: '', // 演练经费
drillLevel: '', //演练级别
@@ -240,26 +234,19 @@
remark: '', // 备注
purpose: '', // 演练目的
fileList: [
- {
- fileName: 'name',
- fileUrl: 'url',
- }
],
userList: [
- {
- userUid: '',
- type: 1
- },
- {
- userUid: '',
- type: 2
- }
- ]
+ ],
+ chargeUserList:[],
+ userListString:'',//演练人员字段(回填使用)
+ chargeUserListString:'',//演练负责人字段(回填使用)
});
const titles = ref();
const disabled = ref();
// 打开弹窗
const openDialog = (title: string, id: number, type: boolean) => {
+ ruleForm.value.makingUserUid = Session.get('uid');
+ ruleForm.value.makingUserName = Session.get('realName');
isShowDialog.value = true;
titles.value = title;
disabled.value = type;
@@ -269,85 +256,52 @@
.then((res) => {
if (res.data.code == 200) {
ruleForm.value = res.data.data;
+ ruleForm.value.userListString=''
+ ruleForm.value.chargeUserListString=''
+ for(var a = 0;a<res.data.data.userList.length;a++){
+ if(res.data.data.userList[a].type==1){
+ ruleForm.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++){
+ ruleForm.value.chargeUserListString += res.data.data.chargeUserList[a].userName+';'
+ }
+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[])
+ initFileListData()
}
});
}
};
+ const initFileListData = async () => {
+ 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 value1 = ref('')
// 上传附件
- const fileList = ref<UploadUserFile[]>([])
+ const fileList = ref([])
// 可选择树
const treeSelect = ref()
const tree = [
- {
- value: '1',
- label: 'Level one 1',
- children: [
- {
- value: '11',
- label: 'Level two 1-1',
- children: [
- {
- value: '111',
- label: 'Level three 1-1-1',
- },
- ],
- },
- ],
- },
- {
- value: '2',
- label: 'Level one 2',
- children: [
- {
- value: '22',
- label: 'Level two 2-1',
- children: [
- {
- value: '222',
- label: 'Level three 2-1-1',
- },
- ],
- },
- {
- value: '223',
- label: 'Level two 2-2',
- children: [
- {
- value: '2233',
- label: 'Level three 2-2-1',
- },
- ],
- },
- ],
- },
- {
- value: '3',
- label: 'Level one 3',
- children: [
- {
- value: '33',
- label: 'Level two 3-1',
- children: [
- {
- value: '3333',
- label: 'Level three 3-1-1',
- },
- ],
- },
- {
- value: '3334',
- label: 'Level two 3-2',
- children: [
- {
- value: '333',
- label: 'Level three 3-2-1',
- },
- ],
- },
- ],
- },
]
//部门树
const department = () => {
@@ -374,6 +328,15 @@
});
// 表单提交验证必填项
const submitForm = async (title: string, formEl: FormInstance | undefined) => {
+ if(!ruleForm.value.fileList){
+ ruleForm.value.fileList = []
+ }
+ ruleForm.value.userList = ruleForm.value.userList.concat(ruleForm.value.chargeUserList)
+ delete ruleForm.value.planName
+ delete ruleForm.value.chargeUserListString
+ delete ruleForm.value.userListString
+ delete ruleForm.value.chargeUserList
+ delete ruleForm.value.gmtModitify
if (title == '新建应急演练计划发布') {
if (!formEl) return;
await formEl.validate((valid, fields) => {
@@ -440,6 +403,7 @@
makingUserUid: '', //计划制定人ID
makingDepartmentId: '', // 计划制定部门ID
planId: '', // 应急预案ID
+ planName: '', // 应急预案name
departmentId: '', // 主办部门ID
drillExpense: '', // 演练经费
drillLevel: '', //演练级别
@@ -450,27 +414,43 @@
remark: '', // 备注
purpose: '', // 演练目的
fileList: [
- {
- fileName: 'name',
- fileUrl: 'url',
- }
],
userList: [
- {
- userUid: '',
- type: 1
- },
- {
- userUid: '',
- type: 2
- }
- ]
+ ],
+ chargeUserList:[],
+ userListString:'',//演练人员字段(回填使用)
+ chargeUserListString:'',//演练负责人字段(回填使用)
};
}
}
const resetForm = (formEl: FormInstance | undefined) => {
isShowDialog.value = false;
+ fileList.value=[]
if (!formEl) return;
+ ruleForm.value = {
+ makingPlanDate: '', // 计划制定日期
+ drillPlanDate: '', //计划演练日期
+ makingUserUid: '', //计划制定人ID
+ makingDepartmentId: '', // 计划制定部门ID
+ planId: '', // 应急预案ID
+ planName: '', // 应急预案name
+ departmentId: '', // 主办部门ID
+ drillExpense: '', // 演练经费
+ drillLevel: '', //演练级别
+ drillAddress: '', //演练地点
+ drillName: '', // 演练名称
+ drillWay: '', // 演练方式
+ insuranceMeasures: '', // 保险措施
+ remark: '', // 备注
+ purpose: '', // 演练目的
+ fileList: [
+ ],
+ userList: [
+ ],
+ chargeUserList:[],
+ userListString:'',//演练人员字段(回填使用)
+ chargeUserListString:'',//演练负责人字段(回填使用)
+ };
formEl.resetFields();
};
// 应急队伍弹窗
@@ -480,14 +460,52 @@
}
const onUser = (e:any) => {
ruleForm.value.planId=e.id
+ ruleForm.value.planName=e.name
};
// 打开用户选择弹窗
const userRef = ref();
- const openUser = () => {
- userRef.value.openDialog();
+ const userFZRef = ref();
+ //打开演练人员和演练负责人弹窗 type 0 演练人员 1 演练负责人
+ const openUser = (type:number) => {
+ if(type==0){
+ userRef.value.openDailog(0);
+ }else if(type==1){
+ userFZRef.value.openDailog(0);
+ }
+ };
+ const SearchUser = (e:any) => {
+ console.log('演练人员',e)
+ ruleForm.value.userListString=''
+ ruleForm.value.userList=[]
+ for(var a = 0;a<e.length;a++){
+ ruleForm.value.userList.push(
+ {
+ type: 1,
+ userName: e[a].realName,
+ userUid: e[a].uid,
+ }
+ )
+ ruleForm.value.userListString+=e[a].realName+';'
+ }
+ };
+ const SearchFZUser = (e:any) => {
+ console.log('演练负责人员',e[0].userName)
+ ruleForm.value.chargeUserListString=''
+ ruleForm.value.chargeUserList=[]
+ // ruleForm.value.chargeUserList = []
+ for(var a = 0;a<e.length;a++){
+ ruleForm.value.chargeUserList.push(
+ {
+ type: 2,
+ userName: e[a].realName,
+ userUid: e[a].uid,
+ }
+ )
+ ruleForm.value.chargeUserListString+=e[a].realName+';'
+ }
};
// 计划定制日期
- const datetime = ref('')
+ const datetime = ref('');
//全屏
const full = ref(false);
const toggleFullscreen = () => {
@@ -525,6 +543,11 @@
resetForm,
emit,
onUser,
+ userFZRef,
+ SearchUser,
+ SearchFZUser,
+ successUploader,
+ initFileListData
};
},
});
--
Gitblit v1.9.2