From 1b9fea7d4af68d8f933b2dc42bf6084b9646f64c Mon Sep 17 00:00:00 2001 From: 马宇豪 <978517621@qq.com> Date: 星期二, 04 三月 2025 08:39:55 +0800 Subject: [PATCH] 修改作业等级名称 --- src/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue | 305 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 305 insertions(+), 0 deletions(-) diff --git a/src/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue b/src/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue index e69de29..cafe13e 100644 --- a/src/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue +++ b/src/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue @@ -0,0 +1,305 @@ +<template> + <div class="system-edit-user-container"> + <el-dialog + :title="titles" + v-model="isShowDialog" + width="40%" + draggable + :fullscreen="full" + @close="resetForm(ruleFormRef)" + > + <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> + <el-form + ref="ruleFormRef" + :model="ruleForm" + size="default" + :rules="rules" + :disabled="disabled" + label-width="90px"> + <el-row :gutter="35"> + <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> + <el-form-item label="选择人员" prop="name"> + <el-input + v-model="ruleForm.name" + placeholder="请选择" + class="input-with-select" + > + <template #append> + <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="jobNumber"> + <el-input v-model="ruleForm.jobNumber" 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="name"> + <el-input v-model="ruleForm.name" 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="gender"> + <el-radio-group v-model="ruleForm.gender"> + <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="12" :md="12" :lg="12" :xl="12" class="mb20"> + <el-form-item label="手机号码" prop="phone"> + <el-input v-model="ruleForm.phone" 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="position"> + <el-input v-model="ruleForm.position" placeholder="请填写职位"></el-input> + </el-form-item> + </el-col> + </el-row> + </el-form> + <template #footer> + <span class="dialog-footer"> +<!-- <el-button size="default" type="primary" @click="addForm(ruleFormRef)">继续添加</el-button>--> + <el-button size="default" @click="resetForm(ruleFormRef)">关闭</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, + reactive, + defineComponent +} from 'vue'; + +import type { + FormRules, + 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 {contingencyApi} from "/@/api/contingencyManagement/contingency"; + +export default defineComponent({ + name: 'addTeamLeader', + components: { + // Search, + DailogSearchUserManger + }, + setup(props, { emit }) { + const isShowDialog = ref(false) + const ruleFormRef = ref<FormInstance>() + const ruleForm = ref ({ + teamId: '', + userUid: '', + gender: '', + jobNumber: '', // 人员工号 + name: '', // 人员名称 + phone: '', // 手机号码 + position: '', // 职位 + }); + const rules = reactive<FormRules>({ + jobNumber: [ + { + required: true, + message: '人员工号不能为空', + trigger: 'change', + }, + ], + personnelName: [ + { + required: true, + message: '人员名称不能为空', + trigger: 'change', + }, + ], + personnelGender: [ + { + required: true, + message: '人员性别不能为空', + trigger: 'change', + }, + ], + phone: [ + { + required: true, + message: '手机号码不能为空', + trigger: 'change', + }, + ], + position: [ + { + required: true, + message: '职位不能为空', + trigger: 'change', + }, + ], + }) + const titles = ref(); + const disabled = ref(); + const submitForm = async (title: string, formEl: FormInstance | undefined) => { + if (title == '新建应急队伍人员') { + if (!formEl) return; + await formEl.validate((valid, fields) => { + if (valid) { + isShowDialog.value = false; + // console.log('-------',ruleForm.value) + // emit('myAdd', ruleForm.value); + contingencyApi() + .addEmergencyTeamPersonnel(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); + } + formEl.resetFields(); + }); + } else { + console.log('error submit!', fields); + } + }); + } + else if (title == '修改应急队伍人员') { + if (!formEl) return; + await formEl.validate((valid, fields) => { + if (valid) { + isShowDialog.value = false; + contingencyApi() + .editEmergencyTeamPersonnel(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); + } + }); + formEl.resetFields(); + ruleForm.value = { + teamId: '', + userUid: '', + gender: '', + jobNumber: '', // 人员工号 + name: '', // 人员名称 + phone: '', // 手机号码 + position: '', // 职位 + }; + } + } + const resetForm = (formEl: FormInstance | undefined) => { + isShowDialog.value = false; + if (!formEl) return; + formEl.resetFields(); + }; + + // 打开弹窗 + const openDialog = (title: string, id: number,teamId:number, type: boolean) => { + isShowDialog.value = true; + titles.value = title; + disabled.value = type; + ruleForm.value.teamId = teamId + + if (title == '查看应急队伍人员' || title == '修改应急队伍人员') { + contingencyApi() + .seeEmergencyTeamPersonnel(id) + .then((res) => { + if (res.data.code == 200) { + ruleForm.value = res.data.data; + } + }); + } + }; + // 打开用户选择弹窗 + const userRef = ref(); + const openUser = () => { + userRef.value.openDailog(); + }; + const onUser = (e:any) => { + ruleForm.value.userUid=e[0].uid + ruleForm.value.gender=e[0].sex + ruleForm.value.name=e[0].realName + ruleForm.value.jobNumber=e[0].jobNumber + ruleForm.value.phone=e[0].phone + ruleForm.value.position=e[0].position + }; + //全屏 + const full = ref(false); + const toggleFullscreen = () => { + if (full.value == false) { + full.value = true; + } else { + full.value = false; + } + }; + return { + openDialog, + // closeDialog, + isShowDialog, + ruleFormRef, + // submitForm, + // onCancel, + ruleForm, + rules, + Search, + toggleFullscreen, + FullScreen, + full, + resetForm, + titles, + disabled, + emit, + openUser, + userRef, + onUser, + submitForm, + }; + }, +}); +</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; +} +</style> \ No newline at end of file -- Gitblit v1.9.2