From 5a1616f169d75ece07d2d12a8edac3e5f660a920 Mon Sep 17 00:00:00 2001 From: Your Name <123456> Date: 星期四, 08 九月 2022 09:36:16 +0800 Subject: [PATCH] 合并 --- src/views/contingencyManagement/panManagement/component/initiateApproval.vue | 159 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 159 insertions(+), 0 deletions(-) diff --git a/src/views/contingencyManagement/panManagement/component/initiateApproval.vue b/src/views/contingencyManagement/panManagement/component/initiateApproval.vue index e69de29..eb2afa2 100644 --- a/src/views/contingencyManagement/panManagement/component/initiateApproval.vue +++ b/src/views/contingencyManagement/panManagement/component/initiateApproval.vue @@ -0,0 +1,159 @@ +<template> + <div class="system-edit-user-container"> + <el-dialog title="发起审批" v-model="isShowDialog" width="40%" draggable :fullscreen="full" :close-on-click-modal="false"> + <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> + <el-form ref="ruleFormRef" :model="ruleForm" size="default" label-width="120px"> + <el-row :gutter="35"> + <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> + <el-form-item label="审批名称" prop="workName"> + <el-input v-model="ruleForm.workName" 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="title"> + <el-input v-model="ruleForm.title" 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="approvePersonId"> + <el-input v-model="ruleForm.approvePersonName" placeholder="请选择" class="input-with-select"> + <template #append> + <el-button :icon="Search" @click="openUser" /> + </template> + </el-input> + </el-form-item> + </el-col> + </el-row> + </el-form> + <template #footer> + <span class="dialog-footer"> + <el-button @click="resetForm" size="default">关闭</el-button> + <el-button size="default" type="primary" @click="submitForm">确定</el-button> + </span> + </template> + </el-dialog> + <DailogSearchUserManger ref="userRef" @SearchUser="onUser" /> + </div> +</template> + +<script lang="ts"> +import { ref, defineComponent } from 'vue'; + +import type { FormInstance } from 'element-plus'; +import { ElMessage } from 'element-plus'; +import { Search, FullScreen } from '@element-plus/icons-vue'; +import DailogSearchUserManger from '/@/components/DailogSearchUserManger/index.vue'; +import { emergencyPlanApi } from '/@/api/contingencyManagement/emergencyPlan'; + +export default defineComponent({ + name: 'openAdd', + components: { + DailogSearchUserManger, + }, + setup(prop, { emit }) { + const isShowDialog = ref(false); + const ruleFormRef = ref<FormInstance>(); + const ruleForm = ref({ + workName: '', // 审批名称 + title: '', //审批标题 + approvePersonId: '', + approvePersonName: '', + approveStatus: 2, + relateType: 1, + relateId: '', + }); + const titles = ref(); + + // 打开弹窗 + const openDialog = (title: string, id: number) => { + isShowDialog.value = true; + titles.value = title; + ruleForm.value.relateId = id; + uid.value = id; + }; + const uid = ref(); + const submitForm = async () => { + isShowDialog.value = false; + + emergencyPlanApi() + .approvalEmergencyPlan(ruleForm.value) + .then((res) => { + if (res.data.code == 200) { + ElMessage({ + showClose: true, + message: res.data.msg, + type: 'success', + }); + emit('myAdd', true); + } else { + ElMessage({ + showClose: true, + message: res.data.msg, + type: 'error', + }); + emit('myAdd', true); + } + }); + }; + const resetForm = () => { + isShowDialog.value = false; + }; + // 打开用户选择弹窗 + const userRef = ref(); + const openUser = () => { + userRef.value.openDailog(); + }; + //回显 + const onUser = (e: any) => { + ruleForm.value.approvePersonId = e[0].uid; + ruleForm.value.approvePersonName = e[0].realName; + }; + //全屏 + const full = ref(false); + const toggleFullscreen = () => { + if (full.value == false) { + full.value = true; + } else { + full.value = false; + } + }; + return { + openDialog, + Search, + submitForm, + openUser, + userRef, + toggleFullscreen, + FullScreen, + full, + titles, + emit, + isShowDialog, + ruleFormRef, + ruleForm, + resetForm, + onUser, + uid, + }; + }, +}); +</script> +<style scoped lang="scss"> +.textarea { + height: 168px !important; +} +.textarea ::v-deep .el-textarea__inner { + height: 168px !important; +} +::v-deep .el-table__cell { + font-weight: 400; +} +.el-divider--horizontal { + height: 0; + margin: 0; + border-top: transparent; +} +.el-select { + width: 100%; +} +</style> \ No newline at end of file -- Gitblit v1.9.2