From b59d7d4f48f84dc856d46f6ee6c8e9300376d272 Mon Sep 17 00:00:00 2001
From: Your Name <123456>
Date: Thu, 08 Sep 2022 09:33:43 +0800
Subject: [PATCH] 合并
---
src/views/contingencyManagement/contingency/component/openAdd.vue | 569 --------------------------------------------------------
1 files changed, 0 insertions(+), 569 deletions(-)
diff --git a/src/views/contingencyManagement/contingency/component/openAdd.vue b/src/views/contingencyManagement/contingency/component/openAdd.vue
index 2d9e986..e69de29 100644
--- a/src/views/contingencyManagement/contingency/component/openAdd.vue
+++ b/src/views/contingencyManagement/contingency/component/openAdd.vue
@@ -1,569 +0,0 @@
-<template>
- <div class="system-edit-user-container">
- <el-dialog :title="titles" v-model="isShowDialog" width="50%" 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" 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="teamName">
- <el-input v-model="ruleForm.teamName" 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="teamLevel">
- <el-select v-model="ruleForm.teamLevel" 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="principalName">
- <el-input v-model="ruleForm.principalName" 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="principalDepartmentId">
- <el-tree-select v-model="ruleForm.principalDepartmentId" :data="newTreeList" 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="principalPhone">
- <el-input v-model="ruleForm.principalPhone" 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="telephoneNumber">
- <el-input v-model="ruleForm.telephoneNumber" 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="teamDesc">
- <el-input class="textarea" v-model="ruleForm.teamDesc" type="textarea" maxlength="150"
- 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="fileList">
- <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled"
- @successUploader="successUploader"></uploaderFile>
- </el-form-item>
- </el-col>
- </el-row>
- </el-form>
- <el-row :gutter="35">
- <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
- <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
- <el-tab-pane label="应急队伍人员" name="first" >
- <el-button type="primary" size="default" @click="onAddEmergencyPersonnel(ruleFormRef)" :disabled="disabled">新增
- </el-button>
- <el-table
- :data="tableData"
- style="width: 100%; margin-top: 15px"
- ref="multipleTableRef"
- :header-cell-style="{ background: '#f6f7fa', color: '#909399' }"
- :disabled="disabled"
- >
- <el-table-column prop="jobNumber" label="人员工号" show-overflow-tooltip></el-table-column>
- <el-table-column prop="name" label="人员名称" show-overflow-tooltip></el-table-column>
- <el-table-column prop="phone" label="手机号码" show-overflow-tooltip></el-table-column>
- <el-table-column prop="position" label="职位" show-overflow-tooltip></el-table-column>
- <el-table-column label="操作" width="250" align="center">
- <template #default="scope">
- <el-button :disabled="disabled" size="small" @click="onEdit('查看应急队伍人员',scope.row.id)">查看
- </el-button>
- <el-button :disabled="disabled" size="small" @click="onEdit('修改应急队伍人员',scope.row.id)"
- style="margin-right: 5px">编辑
- </el-button>
- <el-button :disabled="disabled" size="small" @click="onRowDel(scope.row.id)"
- style="margin-right: 5px">删除
- </el-button>
- </template>
- </el-table-column>
- </el-table>
- </el-tab-pane>
- </el-tabs>
- </el-col>
- </el-row>
- <template #footer>
- <span class="dialog-footer">
- <el-button @click="resetForm(ruleFormRef)" size="default">关闭</el-button>
- <el-button size="default" v-if="disabled == true ? false : true" type="primary"
- @click="onSubmit(titles, ruleFormRef)">确定</el-button>
- </span>
- </template>
- </el-dialog>
- <AddEmergencyPersonnel ref="addRef" @myAdd="onMyAdd"/>
- <DailogSearchUserManger ref="userRef" @SearchUser="onUser"/>
- </div>
-</template>
-
-<script lang="ts">
- import {
- reactive,
- ref,
- defineComponent,
- onMounted,
- // toRefs,
- } from 'vue';
- import {
- ElMessage,
- ElMessageBox,
- } from 'element-plus';
-
- import type {
- UploadUserFile,
- TabsPaneContext,
- FormInstance,
- FormRules,
- } from 'element-plus'
-
- import {
- Search,
- FullScreen
- } from '@element-plus/icons-vue'
- import AddEmergencyPersonnel from "/@/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue";
- import DailogSearchUserManger from "/@/components/DailogSearchUserManger/index.vue"
- import {contingencyApi} from "/@/api/contingencyManagement/contingency";
- import {goalManagementApi} from "/@/api/goalManagement";
- import uploaderFile from '/@/components/uploaderFile/index.vue';
- // import {releaseDrillPlanApi} from "/@/api/releaseDrillPlan";
-
-
- export default defineComponent({
- name: 'openAdd',
- components: {
- AddEmergencyPersonnel,
- DailogSearchUserManger,
- uploaderFile
- },
- setup(prop, {emit}) {
- const isShowDialog = ref(false);
- const ruleFormRef = ref<FormInstance>();
- const ruleForm = ref({
- teamName: '', // 队伍名称
- teamLevel: '', // 队伍级别
- principalUid: '', // 队伍负责人
- principalName: '',
- principalDepartmentId: '', //负责人部门
- principalPhone: '', // 负责人手机
- telephoneNumber: '', // 固定电话
- teamDesc: '', //队伍描述
- fileList: [],
- memberList: []
- });
- const titles = ref();
- const disabled = ref();
- const teamId = ref()
- // 打开弹窗
- const openDialog = (title: string, id: number, type: boolean) => {
- isShowDialog.value = true;
- titles.value = title;
- disabled.value = type;
- teamId.value = id
- if (title == '查看应急队伍管理' || title == '修改应急队伍管理') {
- contingencyApi()
- .seeEmergencyTeam(id)
- .then((res) => {
- if (res.data.code == 200) {
- ruleForm.value = res.data.data;
- fileList.value = (res.data.data.fileList?res.data.data.fileList:[])
- initFileListData()
- listApi()
- }
- });
- }
- }
- // 上传附件
- const fileList = ref([])
- 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 principalDepartmentId = ref()
- const data = ref()
-
-
-
- //el-tree-select回显
- const propse = {
- label: 'depName',
- children: 'children',
- };
- const newTreeList = [];
- //得到部门树
- const department = async () => {
- await goalManagementApi()
- .getTreedepartment()
- .then((res) => {
- if (res.data.code == 200) {
- data.value = res.data.data;
- getTreeList(res.data.data, newTreeList);
- } else {
- ElMessage.error(res.data.msg);
- }
- });
- };
- // 递归树状数据且修改字段名
- const getTreeList = (treeList, newTreeList) => {
- 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);
- }
- newTreeList.push(tempData);
- });
- };
- onMounted(() => {
- department();
- });
-
-
-
-
- // 打开用户选择弹窗
- const userRef = ref();
- const openUser = () => {
- userRef.value.openDailog();
- };
- const onUser = (e: any) => {
- ruleForm.value.principalUid = e[0].uid
- ruleForm.value.principalName = e[0].realName
- };
- //定义tabs切换
- const activeName = ref('first')
- const handleClick = (tab: TabsPaneContext, event: Event) => {
- console.log(tab, event)
- }
-
- // 必填项提示
- const rules = reactive<FormRules>({
- teamName: [
- {
- required: true,
- message: '队伍名称不能为空',
- trigger: 'change',
- },
- ],
- teamLevel: [
- {
- required: true,
- message: '队伍级别不能为空',
- trigger: 'change',
- },
- ],
- principalUid: [
- {
- required: true,
- message: '队伍负责人不能为空',
- trigger: 'change',
- },
- ],
- principalDepartmentId: [
- {
- required: true,
- message: '负责人部门不能为空',
- trigger: 'change',
- },
- ],
- principalPhone: [
- {
- required: true,
- message: '负责人手机不能为空',
- trigger: 'change',
- },
- ],
- telephoneNumber: [
- {
- required: true,
- message: '固定电话不能为空',
- trigger: 'change',
- },
- ],
- })
- //全屏
- const full = ref(false);
- const toggleFullscreen = () => {
- if (full.value == false) {
- full.value = true;
- } else {
- full.value = false;
- }
- };
- const onSubmit = async (title: string, formEl: FormInstance | undefined) => {
- if(!ruleForm.value.fileList){
- ruleForm.value.fileList = []
- }
- if (title == '新建应急队伍管理') {
- if (!formEl) return;
- await formEl.validate((valid, fields) => {
- if (valid) {
- isShowDialog.value = false;
- if(teamId.value==null||teamId.value==''){
- contingencyApi()
- .addEmergencyTeam(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 {
- ElMessage({
- showClose: true,
- message: '添加成功',
- type: 'success',
- });
- emit('myAdd', true);
- }
- } else {
- console.log('error submit!', fields);
- }
- });
- } else if (title == '修改应急队伍管理') {
- if (!formEl) return;
- await formEl.validate((valid, fields) => {
- if (valid) {
- isShowDialog.value = false;
- contingencyApi()
- .editEmergencyTeam(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 = {
- teamName: '', // 队伍名称
- teamLevel: '', // 队伍级别
- principalUid: '', // 队伍负责人
- principalDepartmentId: '', //负责人部门
- principalPhone: '', // 负责人手机
- telephoneNumber: '', // 固定电话
- teamDesc: '', //队伍描述
- fileList: [],
- memberList: []
- };
- }
- };
- const resetForm = (formEl: FormInstance | undefined) => {
- isShowDialog.value = false;
- if (!formEl) return;
- formEl.resetFields();
- fileList.value = []
- tableData.value=[]
- ruleForm.value = {}
- };
- // 定义表格数据
- const tableData = ref([]);
- //添加队伍负责人弹窗
- const addRef = ref();
- const onAddEmergencyPersonnel = async (formEl: FormInstance | undefined) => {
- if(!ruleForm.value.fileList){
- ruleForm.value.fileList = []
- }
- if (!formEl) return;
- await formEl.validate((valid, fields) => {
- if (valid) {
- // isShowDialog.value = false;
- if(teamId.value == ''||teamId.value==null){
- ElMessageBox.confirm('确认添加此应急队伍?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning',
- })
- .then(() => {
- contingencyApi()
- .addEmergencyTeam(ruleForm.value)
- .then((res) => {
- if (res.data.code == 200) {
- ElMessage({
- showClose: true,
- message: res.data.msg,
- type: 'success',
- });
- teamId.value = res.data.data.id
- addRef.value.openDialog('新建应急队伍人员','',teamId.value);
- } else {
- ElMessage({
- showClose: true,
- message: res.data.msg,
- type: 'error',
- });
- }
- });
- })
- .catch(() => {});
-
- }else {
- addRef.value.openDialog('新建应急队伍人员','',teamId.value);
- }
-
-
- } else {
- console.log('error submit!', fields);
- }
- });
- };
- // 请求列表数据
- const listApi = async () => {
- let res = await contingencyApi().getEmergencyTeamPersonnelList(teamId.value);
- if (res.data.code == 200) {
- tableData.value = res.data.data;
- } else {
- ElMessage.error(res.data.msg);
- }
- };
- // 新增后刷新
- const onMyAdd = (e: object) => {
- listApi();
- };
- // 打开修改弹窗
- const onEdit = (val: string, row: object) => {
- if (val == '查看应急队伍人员') {
- addRef.value.openDialog('查看应急队伍人员', row,teamId.value, true);
- } else {
- addRef.value.openDialog('修改应急队伍人员', row,teamId.value, false);
- }
- };
- // 删除
- const onRowDel = (data: any) => {
- ElMessageBox.confirm('确定删除所选项吗?', '提示', {
- confirmButtonText: '确认',
- cancelButtonText: '取消',
- type: 'warning',
- }).then(() => {
- contingencyApi()
- .deleteEmergencyTeamPersonnel(data)
- .then((res) => {
- if (res.data.code == 200) {
- ElMessage({
- showClose: true,
- message: res.data.msg,
- type: 'success',
- });
- listApi()
- } else {
- ElMessage({
- showClose: true,
- message: res.data.msg,
- type: 'error',
- });
- listApi()
- }
- });
- })
- .catch(() => {
- });
- };
- return {
- openDialog,
- fileList,
- principalDepartmentId,
- data,
- activeName,
- handleClick,
- tableData,
- Search,
- resetForm,
- isShowDialog,
- ruleFormRef,
- ruleForm,
- rules,
- addRef,
- userRef,
- titles,
- disabled,
- propse,
- emit,
- onSubmit,
- openUser,
- onAddEmergencyPersonnel,
- toggleFullscreen,
- FullScreen,
- full,
- onUser,
- onMyAdd,
- listApi,
- onEdit,
- onRowDel,
- department,
- teamId,
- newTreeList,
- successUploader,
- initFileListData
- };
- },
- });
-</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>
-
--
Gitblit v1.9.2