From 5a1616f169d75ece07d2d12a8edac3e5f660a920 Mon Sep 17 00:00:00 2001
From: Your Name <123456>
Date: Thu, 08 Sep 2022 09:36:16 +0800
Subject: [PATCH] 合并
---
src/views/contingencyManagement/panManagement/component/approval.vue | 239 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 239 insertions(+), 0 deletions(-)
diff --git a/src/views/contingencyManagement/panManagement/component/approval.vue b/src/views/contingencyManagement/panManagement/component/approval.vue
index e69de29..aed57e8 100644
--- a/src/views/contingencyManagement/panManagement/component/approval.vue
+++ b/src/views/contingencyManagement/panManagement/component/approval.vue
@@ -0,0 +1,239 @@
+<template>
+ <div class="system-edit-user-container">
+ <el-dialog :title="titles" 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" :disabled="disabled">
+ <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="请填写队伍名称" disabled></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="请填写审批名称" disabled></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" disabled>
+ <template #append>
+ <el-button :icon="Search" @click="openUser" :disabled="disabled"/>
+ </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="authorUid">
+ <el-radio-group v-model="ruleForm.approveResult">
+ <el-radio :label="false">不通过</el-radio>
+ <el-radio :label="true">通过</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+ <el-form-item label="审批意见" prop="approveMemo">
+ <el-input v-model="ruleForm.approveMemo" 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="complete" @change="typeChang">
+ <el-radio-group v-model="ruleForm.complete">
+ <el-radio :label="false">是</el-radio>
+ <el-radio :label="true">否</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ <el-col v-if="ruleForm.complete" :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="审批名称" prop="twoWorkName">
+ <el-input v-model="ruleForm.twoWorkName" placeholder="请填写队伍名称"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col v-if="ruleForm.complete" :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="审批标题" prop="twoTitle">
+ <el-input v-model="ruleForm.twoTitle" placeholder="请填写审批名称"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col v-if="ruleForm.complete" :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+ <el-form-item label="审批人" prop="twoApprovePersonName">
+ <el-input v-model="ruleForm.twoApprovePersonName" 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(ruleFormRef)" size="default">关闭</el-button>
+ <el-button size="default" type="primary" v-if="disabled == true ? false : true" @click="submitForm(titles, ruleFormRef)">确定</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({
+ approveId: '',
+ workName: '', // 审批名称
+ title: '', //审批标题
+ approvePersonId: '', //
+ approvePersonName: '', // 审批人
+ approveStatus: 2, //审批状态
+ relateType: 1, //业务类型
+ approveResult: false, //审批结果
+ approveMemo: '', //审批意见
+ relateId: '',
+ twoWorkName: '',
+ twoTitle: '',
+ twoApprovePersonId: '',
+ twoApprovePersonName: '',
+ });
+ const titles = ref();
+ const disabled = ref();
+ const uid = ref();
+ // 打开弹窗
+ const openDialog = (title: string, approveId: number, type: boolean, id: number) => {
+ isShowDialog.value = true;
+ titles.value = title;
+ disabled.value = type;
+
+ uid.value = approveId;
+ if (title == '查看审批' || title == '审批') {
+ emergencyPlanApi()
+ .approvalProcessEmergencyPlan(approveId)
+ .then((res) => {
+ if (res.data.code == 200) {
+ ruleForm.value = res.data.data;
+ ruleForm.value.relateId = id;
+ }
+ });
+ }
+ };
+ const submitForm = async () => {
+ console.log(ruleForm.value);
+
+ ruleForm.value.workName = ruleForm.value.twoWorkName;
+ ruleForm.value.title = ruleForm.value.twoTitle;
+ ruleForm.value.approvePersonId = ruleForm.value.twoApprovePersonId;
+ ruleForm.value.approvePersonName = ruleForm.value.twoApprovePersonName;
+ ruleForm.value.relateType = 1;
+ isShowDialog.value = false;
+ if(ruleForm.value.complete == false) {
+ ruleForm.value.approveStatus=3
+ }
+ delete ruleForm.value.gmtCreate
+ delete ruleForm.value.complete
+ delete ruleForm.value.submitPersonName
+
+ delete ruleForm.value.twoApprovePersonId
+ delete ruleForm.value.twoApprovePersonName
+ delete ruleForm.value.twoTitle
+ delete ruleForm.value.twoWorkName
+ emergencyPlanApi()
+ .editApprovalEmergencyPlan(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);
+ }
+ });
+ };
+ const resetForm = () => {
+ isShowDialog.value = false;
+ };
+ // 打开用户选择弹窗
+ const userRef = ref();
+ const openUser = () => {
+ userRef.value.openDailog();
+ };
+ //回显
+ const onUser = (e: any) => {
+ ruleForm.value.twoApprovePersonId = e[0].uid;
+ ruleForm.value.twoApprovePersonName = e[0].realName;
+ };
+ const typeChang = () => {
+ console.log('tag', ruleForm);
+ };
+ //全屏
+ 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,
+ disabled,
+ emit,
+ isShowDialog,
+ ruleFormRef,
+ ruleForm,
+ resetForm,
+ onUser,
+ typeChang,
+ 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