From 355bddf13631205f0e997e04cea2489cbe37e391 Mon Sep 17 00:00:00 2001
From: shj <1790240199@qq.com>
Date: 星期五, 22 七月 2022 16:00:10 +0800
Subject: [PATCH] Merge branch 'master' of https://sinanoaq.cn:8888/r/gtqtOut

---
 src/api/contingency/index.ts                                                    |   19 
 /dev/null                                                                       |  475 ----------------------
 src/views/contingencyManagement/panManagement/index.vue                         |  226 ++++------
 src/views/contingencyManagement/emergencyPlanStartRecord/index.vue              |  130 +++--
 src/views/contingencyManagement/panManagement/component/openAdd.vue             |   51 +-
 src/api/emergencyPlanLog/index.ts                                               |   13 
 src/views/contingencyManagement/contingency/index.vue                           |   68 +-
 src/views/contingencyManagement/emergencyResources/emergencySupplies/index.vue  |    8 
 src/views/contingencyManagement/contingency/component/openSee.vue               |  246 +++++++----
 src/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue |    2 
 src/views/contingencyManagement/contingency/component/openAdd.vue               |   11 
 11 files changed, 421 insertions(+), 828 deletions(-)

diff --git a/src/api/contingency/index.ts b/src/api/contingency/index.ts
index b416ef2..2b1e17f 100644
--- a/src/api/contingency/index.ts
+++ b/src/api/contingency/index.ts
@@ -17,6 +17,13 @@
                 data: data
             });
         },
+        seeEmergencyTeam: (data: object) => {
+            return request({
+                url: `/emergencyTeam/info/{id}`,
+                method: 'post',
+                data: data
+            });
+        },
         // v1
         editEmergencyTeam: (data: object) => {
             return request({
@@ -26,11 +33,17 @@
             });
         },
         // v2
-        deleteEmergencyTeam: (value?: object) => {
+        // deleteEmergencyTeam: (value?: object) => {
+        //     return request({
+        //         url: `/emergencyTeam/batchDelete/{ids}`,
+        //         method: 'get',
+        //         data: value
+        //     });
+        // },
+        deleteEmergencyTeam: (ids: number | null) => {
             return request({
-                url: `/emergencyTeam/batchDelete/{ids}`,
+                url: `/emergencyTeam/batchDelete?depId=${ids}`,
                 method: 'get',
-                data: value
             });
         },
     }
diff --git a/src/api/emergencyPlanLog/index.ts b/src/api/emergencyPlanLog/index.ts
new file mode 100644
index 0000000..2453a9d
--- /dev/null
+++ b/src/api/emergencyPlanLog/index.ts
@@ -0,0 +1,13 @@
+import request from '/@/utils/request';
+
+export function emergencyPlanLogApi(){
+    return{
+        getEmergencyPlanLogList: (params: object) => {
+            return request({
+                url: '/emergencyPlanLog/page/list',
+                method: 'post',
+                data:params
+            })
+        },
+    }
+}
\ No newline at end of file
diff --git a/src/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue b/src/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue
index 9998a23..d6ba91c 100644
--- a/src/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue
+++ b/src/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue
@@ -1,7 +1,7 @@
 <template>
   <div class="system-edit-user-container">
     <el-dialog
-        title="新建应急队伍人员"
+        :title="title"
         v-model="isShowDialog"
         width="769px"
         draggable
diff --git a/src/views/contingencyManagement/contingency/component/openAdd.vue b/src/views/contingencyManagement/contingency/component/openAdd.vue
index 7a3e369..d88e035 100644
--- a/src/views/contingencyManagement/contingency/component/openAdd.vue
+++ b/src/views/contingencyManagement/contingency/component/openAdd.vue
@@ -18,7 +18,7 @@
         <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-input v-model="ruleForm.teamName" placeholder="请填写队伍名称" disabled="disabled"></el-input>
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
@@ -73,7 +73,7 @@
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-            <el-form-item label="相关附件" prop="attachments">
+            <el-form-item label="相关附件" prop="fileList">
               <el-upload
                   v-model:file-list="fileList"
                   class="upload-demo"
@@ -90,6 +90,9 @@
               </el-upload>
             </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">
@@ -119,7 +122,6 @@
             </el-tabs>
           </el-col>
         </el-row>
-      </el-form>
       <template #footer>
     <span class="dialog-footer">
      <el-button @click="isShowDialog = !isShowDialog"  size="default">关闭</el-button>
@@ -183,6 +185,7 @@
     principalPhone: string;
     telephoneNumber: string;
     teamDesc: string;
+    fileList: string,
   };
   menuData: Array<MenuDataTree>;
 }
@@ -205,6 +208,7 @@
         principalPhone: '', // 负责人手机
         telephoneNumber: '', // 固定电话
         teamDesc: '',  //队伍描述
+        fileList: [],
       },
       menuData: [],
     });
@@ -222,6 +226,7 @@
           principalPhone: '', // 负责人手机
           telephoneNumber: '', // 固定电话
           teamDesc: '',  //队伍描述
+          fileList: [],
         }
       }else{
         state.title = '修改应急队伍管理'
diff --git a/src/views/contingencyManagement/contingency/component/openEdit.vue b/src/views/contingencyManagement/contingency/component/openEdit.vue
deleted file mode 100644
index fbd8de4..0000000
--- a/src/views/contingencyManagement/contingency/component/openEdit.vue
+++ /dev/null
@@ -1,475 +0,0 @@
-<template>
-  <div class="system-edit-user-container">
-    <el-dialog title="编辑应急队伍管理" v-model="isShowDialog" width="769px">
-      <el-form
-          ref="ruleFormRef"
-          :rules="rules"
-          :model="ruleForm"
-          size="default"
-          label-width="120px"
-          :fullscreen="full"
-      >
-        <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
-        <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"></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">
-                <el-option label="公司" value="admin"></el-option>
-                <el-option label="分厂-车间" value="common"></el-option>
-                <el-option label="工序-班组等" value="shang"></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="teamLeader">
-              <el-input
-                  v-model="ruleForm.teamLeader"
-                  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="responsibleDepartment">
-              <el-tree-select v-model="ruleForm.responsibleDepartment" :data="data" class="w100"/>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="负责人手机" prop="teamPhone">
-              <el-input v-model="ruleForm.teamPhone"></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="telephone">
-              <el-input v-model="ruleForm.telephone"></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="队伍描述">
-              <el-input
-                  class="textarea"
-                  v-model="ruleForm.describe"
-                  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="相关附件">
-              <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>
-            </el-form-item>
-          </el-col>
-          <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">新增</el-button>
-                <el-table
-                    :data="tableData"
-                    style="width: 100%;margin-top: 15px;"
-                    ref="multipleTableRef"
-                    :header-cell-style="{background:'#f6f7fa',color:'#909399'}"
-                >
-                  <el-table-column prop="jobNumber" label="人员工号" show-overflow-tooltip sortable></el-table-column>
-                  <el-table-column prop="personnelName" label="人员名称" show-overflow-tooltip sortable></el-table-column>
-                  <el-table-column prop="phone" label="手机号码" show-overflow-tooltip sortable></el-table-column>
-                  <el-table-column prop="position" label="职位" show-overflow-tooltip sortable></el-table-column>
-                  <el-table-column label="操作" width="200" align="center">
-                    <template #default="scope">
-                      <el-button size="small" type="primary" text="plain" >查看
-                      </el-button>
-                      <el-button size="small" type="primary" text="plain" @click="onEditEmergencyPersonnel(scope.row)" style="margin-right: 5px;">编辑
-                      </el-button>
-                      <el-button size="small" type="primary" text="plain" style="margin-right: 5px;">删除
-                      </el-button>
-                    </template>
-                  </el-table-column>
-                </el-table>
-              </el-tab-pane>
-            </el-tabs>
-          </el-col>
-        </el-row>
-      </el-form>
-      <template #footer>
-				<span class="dialog-footer">
-					<el-button @click="onCancel" size="default">关闭</el-button>
-          <el-button size="default" type="primary" @click="submitForm(ruleFormRef)">确定</el-button>
-				</span>
-      </template>
-    </el-dialog>
-    <userSelections ref="userRef"/>
-    <AddEmergencyPersonnel ref="addRef" />
-    <EditEmergencyPersonnel ref="editRef" />
-  </div>
-</template>
-
-<script lang="ts">
-import {
-  reactive,
-  toRefs,
-  ref,
-  onMounted,
-  defineComponent
-} from 'vue';
-import type {
-  UploadUserFile,
-  TabsPaneContext,
-  FormInstance,
-  FormRules,
-  ElTable,
-} from 'element-plus'
-import {
-  Search,
-  FullScreen
-} from '@element-plus/icons-vue'
-import UserSelections from "/@/components/userSelections/index.vue"
-import AddEmergencyPersonnel from "/@/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue";
-import EditEmergencyPersonnel from "/@/views/contingencyManagement/contingency/component/editEmergencyPersonnel.vue";
-// 定义表格数据类型
-interface User {
-  personnelName: string
-  jobNumber: string
-  phone: string;
-  position: string;
-}
-// 定义接口来定义对象的类型
-interface TableDataRow {
-  // userName: string;
-  // userNickname: string;
-  // roleSign: string;
-  // department: string[];
-  // phone: string;
-  // email: string;
-}
-// 定义接口来定义对象的类型
-interface DeptData {
-  deptName: string;
-  createTime: string;
-  status: boolean;
-  sort: number | string;
-  describe: string;
-  id: number;
-  children?: DeptData[];
-}
-// 定义接口来定义对象的类型
-interface RuleFormRow {
-  // teamName: string;
-  // teamLevel: string;
-  // teamLeader: string;
-  // responsibleDepartment: any
-  // teamPhone: string;
-  // telephone: string;
-  // describe: string;
-  selectPeople:string
-  jobNumber: string;
-  personnelName: string;
-  personnelGender: string;
-  phone: string;
-  position: string;
-}
-interface UserState {
-  isShowDialog: boolean;
-  ruleForm: RuleFormRow;
-  deptData: Array<DeptData>;
-}
-
-export default defineComponent({
-  name: 'openEdit',
-  components: {
-    UserSelections,
-    AddEmergencyPersonnel,
-    EditEmergencyPersonnel
-  },
-  setup() {
-    const state = reactive<UserState>({
-      isShowDialog: false,
-      ruleForm: {
-        selectPeople:'111', //选择人员
-        jobNumber: '', // 人员工号
-        phone: '', // 手机号码
-        personnelGender: '', //人员性别
-        position: '', //职位
-        personnelName: '', // 人员名称
-      },
-      deptData: [], // 部门数据
-    });
-
-    // 关闭弹窗
-    const closeDialog = () => {
-      state.isShowDialog = false;
-    };
-    // 取消
-    const onCancel = () => {
-      closeDialog();
-    };
-    // // 新增
-    // const onSubmit = () => {
-    //   closeDialog();
-    // };
-    // 初始化部门数据
-    const initTableData = () => {
-      state.deptData.push({
-        deptName: 'vueNextAdmin',
-        createTime: new Date().toLocaleString(),
-        status: true,
-        sort: Math.random(),
-        describe: '顶级部门',
-        id: Math.random(),
-        children: [
-          {
-            deptName: 'IT外包服务',
-            createTime: new Date().toLocaleString(),
-            status: true,
-            sort: Math.random(),
-            describe: '总部',
-            id: Math.random(),
-          },
-          {
-            deptName: '资本控股',
-            createTime: new Date().toLocaleString(),
-            status: true,
-            sort: Math.random(),
-            describe: '分部',
-            id: Math.random(),
-          },
-        ],
-      });
-    };
-    // 页面加载时
-    onMounted(() => {
-      initTableData();
-    });
-    // 上传附件
-    const fileList = ref<UploadUserFile[]>([])
-
-    //定义树形下拉框
-    const responsibleDepartment = ref()
-    const data = [
-      {
-        value: '1',
-        label: '广汇能源综合物流发展有限责任公司',
-        children: [
-          {
-            value: '1-1',
-            label: '经营班子',
-            children: [],
-          },
-        ],
-      },
-      {
-        value: '2',
-        label: '生产运行部',
-        children: [
-          {
-            value: '2-1',
-            label: '灌装一班',
-            children: []
-          },
-          {
-            value: '2-2',
-            label: '工艺四班',
-            children: [],
-          },
-        ],
-      },
-      {
-        value: '3',
-        label: '设备部',
-        children: [
-          {
-            value: '3-1',
-            label: '仪表班',
-            children: [],
-          },
-          {
-            value: '3-2',
-            label: '机修班',
-            children: [],
-          },
-        ],
-      },
-    ]
-    //定义tabs切换
-    const activeName = ref('first')
-
-    const handleClick = (tab: TabsPaneContext, event: Event) => {
-      console.log(tab, event)
-    }
-    //添加队伍负责人弹窗
-    const addRef = ref();
-    const onAddEmergencyPersonnel = () => {
-      addRef.value.openDialog();
-    };
-
-    //定义表格数据
-    const multipleTableRef = ref<InstanceType<typeof ElTable>>()
-    const multipleSelection = ref<User[]>([])
-    const tableData: User[] = [
-      {
-        personnelName: '张志刚',
-        jobNumber: '1037',
-        position: '副组长',
-        phone: '13673321356',
-      },
-      {
-        personnelName: '张志刚',
-        jobNumber: '1037',
-        position: '副组长',
-        phone: '13673321356',
-      },
-      {
-        personnelName: '张志刚',
-        jobNumber: '1037',
-        position: '副组长',
-        phone: '13673321356',
-      },
-      {
-        personnelName: '张志刚',
-        jobNumber: '1037',
-        position: '副组长',
-        phone: '13673321356',
-      }
-    ]
-    // 必填项提示
-    const rules = reactive<FormRules>({
-      teamName: [
-        {
-          required: true,
-          message: '队伍名称不能为空',
-          trigger: 'change',
-        },
-      ],
-      teamLevel: [
-        {
-          required: true,
-          message: '队伍级别不能为空',
-          trigger: 'change',
-        },
-      ],
-      teamLeader: [
-        {
-          required: true,
-          message: '队伍负责人不能为空',
-          trigger: 'change',
-        },
-      ],
-      responsibleDepartment: [
-        {
-          required: true,
-          message: '负责人部门不能为空',
-          trigger: 'change',
-        },
-      ],
-      teamPhone: [
-        {
-          required: true,
-          message: '负责人手机不能为空',
-          trigger: 'change',
-        },
-      ],
-      telephone: [
-        {
-          required: true,
-          message: '固定电话不能为空',
-          trigger: 'change',
-        },
-      ],
-    })
-
-    // 打开用户选择弹窗
-    const userRef = ref();
-    const openUser = () => {
-      userRef.value.openDialog();
-    };
-
-    const ruleFormRef = ref<FormInstance>()
-    // 打开弹窗
-    const openDialog = (row: RuleFormRow) => {
-      state.ruleForm = row;
-      state.isShowDialog = true;
-    };
-    // 表单提交验证必填项
-    const submitForm = async (formEl: FormInstance | undefined) => {
-      if (!formEl) return
-      await formEl.validate((valid, fields) => {
-        if (valid) {
-          console.log('submit!')
-        } else {
-          console.log('error submit!', fields)
-        }
-      })
-    }
-    //表格编辑弹窗
-    const editRef = ref();
-    const onEditEmergencyPersonnel = (row: TableDataRow) => {
-      editRef.value.openDialog(row);
-    };
-    //全屏
-    const full = ref(false);
-    const toggleFullscreen = () => {
-      if (full.value == false) {
-        full.value = true;
-      } else {
-        full.value = false;
-      }
-    };
-    return {
-      openDialog,
-      closeDialog,
-      onCancel,
-      // onSubmit,
-      fileList,
-      responsibleDepartment,
-      data,
-      activeName,
-      handleClick,
-      multipleSelection,
-      onAddEmergencyPersonnel,
-      onEditEmergencyPersonnel,
-      addRef,
-      editRef,
-      submitForm,
-      Search,
-      rules,
-      ruleFormRef,
-      tableData,
-      multipleTableRef,
-      openUser,
-      userRef,
-      ...toRefs(state),
-      toggleFullscreen,
-      FullScreen,
-      full,
-    };
-  },
-});
-</script>
-<style scoped lang="scss">
-.textarea{
-  height: 168px!important;
-}
-.textarea ::v-deep .el-textarea__inner{
-  height: 168px!important;
-}
-</style>
\ No newline at end of file
diff --git a/src/views/contingencyManagement/contingency/component/openSee.vue b/src/views/contingencyManagement/contingency/component/openSee.vue
index abfd5e9..066f66d 100644
--- a/src/views/contingencyManagement/contingency/component/openSee.vue
+++ b/src/views/contingencyManagement/contingency/component/openSee.vue
@@ -1,22 +1,27 @@
 <template>
   <div class="system-edit-user-container">
     <el-dialog
-        title="查看应急队伍管理"
+        :title="title"
         v-model="isShowDialog"
         width="769px"
         draggable
         :fullscreen="full"
     >
       <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
-      <el-form :model="ruleForm" size="default" label-width="90px">
+      <el-form
+          :model="ruleForm"
+          size="default"
+          :rules="rules"
+          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="队伍名称">
+            <el-form-item label="队伍名称" prop="teamName">
               <el-input v-model="ruleForm.teamName" :disabled="true"></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="队伍级别">
+            <el-form-item label="队伍级别" prop="teamLevel">
               <el-select v-model="ruleForm.teamLevel" :disabled="true" class="w100">
                 <el-option label="公司" value="admin"></el-option>
                 <el-option label="分厂-车间" value="common"></el-option>
@@ -25,9 +30,9 @@
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="队伍负责人">
+            <el-form-item label="队伍负责人" prop="principalUid">
               <el-input
-                  v-model="ruleForm.teamLeader"
+                  v-model="ruleForm.principalUid"
                   placeholder="Please input"
                   class="input-with-select"
                   :disabled="true"
@@ -39,27 +44,27 @@
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="负责人部门">
-              <el-tree-select v-model="ruleForm.responsibleDepartment" :data="data"  :disabled="true" class="w100"/>
+            <el-form-item label="负责人部门" prop="principalDepartmentId">
+              <el-tree-select v-model="ruleForm.principalDepartmentId" :data="data"  :disabled="true" class="w100"/>
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="负责人手机">
-              <el-input v-model="ruleForm.teamPhone" :disabled="true"></el-input>
+            <el-form-item label="负责人手机" prop="principalPhone">
+              <el-input v-model="ruleForm.principalPhone" :disabled="true"></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="固定电话">
-              <el-input v-model="ruleForm.telephone" :disabled="true"></el-input>
+            <el-form-item label="固定电话" prop="telephoneNumber">
+              <el-input v-model="ruleForm.telephoneNumber" :disabled="true"></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="队伍描述">
-              <el-input class="textarea" v-model="ruleForm.describe" type="textarea" :disabled="true" maxlength="150"></el-input>
+            <el-form-item label="队伍描述" prop="teamDesc">
+              <el-input class="textarea" v-model="ruleForm.teamDesc" type="textarea" :disabled="true" maxlength="150"></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="相关附件">
+            <el-form-item label="相关附件" prop="fileList">
               <el-upload
                   v-model:file-list="fileList"
                   class="upload-demo"
@@ -121,6 +126,7 @@
 import type {
   UploadUserFile,
   TabsPaneContext,
+  FormRules,
 } from 'element-plus'
 import {
   Search,
@@ -128,29 +134,12 @@
 } from '@element-plus/icons-vue'
 // import AddTeamLeader from '/@/views/contingency/component/addEmergencyPersonnel.vue';
 // 定义接口来定义对象的类型
-interface DeptData {
-  deptName: string;
-  createTime: string;
-  status: boolean;
-  sort: number | string;
-  describe: string;
+interface MenuDataTree {
   id: number;
-  children?: DeptData[];
+  label: string;
+  children?: MenuDataTree[];
 }
-interface RuleFormRow {
-  teamName: string;
-  teamLevel: string;
-  teamLeader: string;
-  department: any;
-  phone: string;
-  telephone: string;
-  describe: string;
-}
-interface UserState {
-  isShowDialog: boolean;
-  ruleForm: RuleFormRow;
-  deptData: Array<DeptData>;
-}
+
 // 定义表格数据类型
 interface User {
   personnelName: string
@@ -158,39 +147,66 @@
   phone: string;
   position: string;
 }
-// // 定义表格数据类型
-// interface Team {
-//   personnelName: string
-//   teamLevel: string
-//   teamDescription: string
-//   teamPhone: string
-//   phone: string;
-//   describe: string;
-//   responsibleDepartment: string
-// }
+
+interface RoleState {
+  title:string,
+  // buttonName:string,
+  isShowDialog: boolean;
+  ruleForm: {
+    teamName: string;
+    teamLevel: string;
+    principalUid: number;
+    principalDepartmentId: number;
+    principalPhone: string;
+    telephoneNumber: string;
+    teamDesc: string;
+    fileList: string,
+  };
+  menuData: Array<MenuDataTree>;
+}
 export default defineComponent({
   name: 'openSee',
   components: {
     // Search,
   },
   setup() {
-    const state = reactive<UserState>({
+    const state = reactive<RoleState>({
       isShowDialog: false,
+      title:'',
+      // buttonName:'',
       ruleForm: {
         teamName: '', // 队伍名称
         teamLevel: '', // 队伍级别
-        teamLeader: '', //队伍负责人
-        department: [], // 负责人部门
-        phone: '', // 负责人手机
-        telephone: '', // 固定电话
-        describe: '', // 队伍描述
+        principalUid: 1, // 队伍负责人
+        principalDepartmentId: 2,  //负责人部门
+        principalPhone: '', // 负责人手机
+        telephoneNumber: '', // 固定电话
+        teamDesc: '',  //队伍描述
+        fileList: [],
       },
-      deptData: [], // 部门数据
+      menuData: [],
     });
     // 打开弹窗
-    const openDialog = (row: RuleFormRow) => {
-      state.ruleForm = row;
+    const openDialog = (type: string, value: any) => {
       state.isShowDialog = true;
+      if(type === '查看'){
+        state.title = '查看应急队伍管理'
+        // state.buttonName = '新增'
+        state.ruleForm = {
+          teamName: '', // 队伍名称
+          teamLevel: '', // 队伍级别
+          principalUid: 1, // 队伍负责人
+          principalDepartmentId: 2,  //负责人部门
+          principalPhone: '', // 负责人手机
+          telephoneNumber: '', // 固定电话
+          teamDesc: '',  //队伍描述
+          fileList: [],
+        }
+      }else{
+        // state.title = '修改应急队伍管理'
+        // // state.buttonName = '确定'
+        // state.ruleForm = JSON.parse(JSON.stringify(value))
+      }
     };
     // 关闭弹窗
     const closeDialog = () => {
@@ -200,39 +216,39 @@
     const onCancel = () => {
       closeDialog();
     };
-    // 初始化部门数据
-    const initTableData = () => {
-      state.deptData.push({
-        deptName: 'vueNextAdmin',
-        createTime: new Date().toLocaleString(),
-        status: true,
-        sort: Math.random(),
-        describe: '顶级部门',
-        id: Math.random(),
-        children: [
-          {
-            deptName: 'IT外包服务',
-            createTime: new Date().toLocaleString(),
-            status: true,
-            sort: Math.random(),
-            describe: '总部',
-            id: Math.random(),
-          },
-          {
-            deptName: '资本控股',
-            createTime: new Date().toLocaleString(),
-            status: true,
-            sort: Math.random(),
-            describe: '分部',
-            id: Math.random(),
-          },
-        ],
-      });
-    };
-    // 页面加载时
-    onMounted(() => {
-      initTableData();
-    });
+    // // 初始化部门数据
+    // const initTableData = () => {
+    //   state.deptData.push({
+    //     deptName: 'vueNextAdmin',
+    //     createTime: new Date().toLocaleString(),
+    //     status: true,
+    //     sort: Math.random(),
+    //     describe: '顶级部门',
+    //     id: Math.random(),
+    //     children: [
+    //       {
+    //         deptName: 'IT外包服务',
+    //         createTime: new Date().toLocaleString(),
+    //         status: true,
+    //         sort: Math.random(),
+    //         describe: '总部',
+    //         id: Math.random(),
+    //       },
+    //       {
+    //         deptName: '资本控股',
+    //         createTime: new Date().toLocaleString(),
+    //         status: true,
+    //         sort: Math.random(),
+    //         describe: '分部',
+    //         id: Math.random(),
+    //       },
+    //     ],
+    //   });
+    // };
+    // // 页面加载时
+    // onMounted(() => {
+    //   initTableData();
+    // });
     // 上传附件
     const fileList = ref<UploadUserFile[]>([])
 
@@ -319,16 +335,55 @@
       }
     ]
 
-    // //添加队伍负责人
-    // const addRef = ref();
-    // //添加队伍负责人弹窗
-    // const onAddTeamLeader = () => {
-    //   addRef.value.openDialog();
-    // };
+    // 必填项提示
+    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) {
+      if(full.value == false) {
         full.value = true;
       } else {
         full.value = false;
@@ -352,6 +407,7 @@
       toggleFullscreen,
       FullScreen,
       full,
+      rules,
     };
   },
 });
diff --git a/src/views/contingencyManagement/contingency/index.vue b/src/views/contingencyManagement/contingency/index.vue
index 3e66827..3efb4cd 100644
--- a/src/views/contingencyManagement/contingency/index.vue
+++ b/src/views/contingencyManagement/contingency/index.vue
@@ -17,7 +17,7 @@
              <el-button size="default" type="primary" class="ml10" @click="onSubmit">
                查询
              </el-button>
-             <el-button size="default" class="ml10" @click="submitReset">
+             <el-button size="default" class="ml10">
                重置
              </el-button>
           </el-form-item>
@@ -75,12 +75,12 @@
         <el-table-column prop="attachments" label="相关附件" show-overflow-tooltip sortable></el-table-column>
         <el-table-column label="操作" width="200" align="center" fixed="right">
           <template #default="scope">
-            <el-button :disabled="scope.row.userName === 'admin'" size="small" text type="primary" @click="onOpenSee(scope.row)">
+            <el-button size="small" text type="primary" @click="onOpenAdd('查看',scope.row)">
               <el-icon style="margin-right: 5px;">
                 <View />
               </el-icon>查看
             </el-button>
-            <el-button :disabled="scope.row.userName === 'admin'" size="small" text type="primary" @click="onOpenAdd('修改',scope.row)">
+            <el-button size="small" text type="primary" @click="onOpenAdd('修改',scope.row)">
               <el-icon style="margin-right: 5px;">
                 <EditPen />
               </el-icon>修改
@@ -93,23 +93,24 @@
           </template>
         </el-table-column>
       </el-table>
-      <el-pagination
-          @size-change="onHandleSizeChange"
-          @current-change="onHandleCurrentChange"
-          class="mt15"
-          :pager-count="5"
-          :page-sizes="[10, 20, 30]"
-          v-model:current-page="formInline.pageIndex"
-          background
-          v-model:page-size="formInline.pageSize"
-          layout="total, sizes, prev, pager, next, jumper"
-          :total="tableData.total"
-      >
-      </el-pagination>
+      <div class="pages">
+        <el-pagination
+            @size-change="onHandleSizeChange"
+            @current-change="onHandleCurrentChange"
+            class="mt15"
+            :pager-count="5"
+            :page-sizes="[10, 20, 30]"
+            v-model:current-page="formInline.pageIndex"
+            background
+            v-model:page-size="formInline.pageSize"
+            layout="total, sizes, prev, pager, next, jumper"
+            :total="tableData.total"
+        >
+        </el-pagination>
+      </div>
     </el-card>
     <OpenAdd ref="addRef"  @refreshRoleList="initTableData"/>
-    <OpenSee ref="seeRef" />
-<!--    <OpenEdit ref="editRef" />-->
+    <OpenSee ref="seeRef" @refreshRoleList="initTableData"/>
     <upData ref="upShow"></upData>
   </div>
 </template>
@@ -137,11 +138,9 @@
   EditPen,
 } from '@element-plus/icons-vue'
 import OpenAdd from '/@/views/contingencyManagement/contingency/component/openAdd.vue';
-// import OpenEdit from '/@/views/contingencyManagement/contingency/component/openEdit.vue';
 import OpenSee from '/@/views/contingencyManagement/contingency/component/openSee.vue';
 import UpData from '/@/views/contingencyManagement/contingency/component/upData.vue';
 import {contingencyApi} from "/@/api/contingency";
-import {useRoleApi} from "/@/api/system/role";
 
 
 // 定义表格数据类型
@@ -175,7 +174,6 @@
   components: {
     OpenAdd,
     OpenSee,
-    // OpenEdit,
     View,
     EditPen,
     Plus,
@@ -242,19 +240,14 @@
     };
     //查看用户弹窗
     const seeRef = ref();
-    const onOpenSee = (row: TableDataRow) => {
-      seeRef.value.openDialog(row);
+    const onOpenSee = (type: string, value: any) => {
+      seeRef.value.openDialog(type, value);
     };
     // 打开新增应急队伍弹窗
     const addRef = ref();
     const onOpenAdd = (type: string, value: any) => {
       addRef.value.openDialog(type, value);
     };
-    // 打开修改用户弹窗
-    // const editRef = ref();
-    // const onOpenEdit = (row: TableDataRow) => {
-    //   editRef.value.openDialog(row);
-    // };
     // 删除用户
     const onRowDel = (row: any) => {
       ElMessageBox.confirm(`此操作将永久删除队伍名称:“${row}”,是否继续?`, '提示', {
@@ -263,7 +256,7 @@
         type: 'warning',
       })
           .then(async () => {
-            let res = await useRoleApi().deleteEmergencyTeam({roleId:row.roleId})
+            let res = await contingencyApi().deleteEmergencyTeam({principalUid:row.principalUid})
             if(res.data.code ==='200'){
               ElMessage({
                 type:'success',
@@ -304,8 +297,6 @@
       initTableData,
       onOpenSee, //查看
       seeRef,
-      // onOpenEdit,  //编辑
-      // editRef,
       onOpenAdd,  //新增
       addRef,
       onRowDel,
@@ -331,13 +322,14 @@
     justify-content: space-between;
     margin-bottom: 10px;
   }
-  .pages{
-    padding-top: 20px;
-    display: flex;
-    justify-content: flex-end;
-  }
-.el-form .el-form-item:last-of-type{
-  margin-bottom: 22px!important;
+//分页
+.pages{
+  display: flex;
+  justify-content: flex-end;
+  margin-top: 15px;
+}
+.el-form .el-form-item{
+  margin-bottom: 0px!important;
 }
 //弹窗底部边框线
 ::v-deep .el-dialog__footer{
diff --git a/src/views/contingencyManagement/emergencyPlanStartRecord/index.vue b/src/views/contingencyManagement/emergencyPlanStartRecord/index.vue
index deb5088..81f3aa9 100644
--- a/src/views/contingencyManagement/emergencyPlanStartRecord/index.vue
+++ b/src/views/contingencyManagement/emergencyPlanStartRecord/index.vue
@@ -4,14 +4,13 @@
       <div class="system-user-search mb15">
         <el-form
             ref="ruleFormRef"
-            :model="ruleForm"
             size="default"
             label-width="80px"
             :inline="true"
         >
           <el-form-item prop="telephone" >
             <el-input
-                v-model="ruleForm.teamLeader"
+                v-model="listQuery.searchParams.planId"
                 placeholder="请选择应急预案"
                 class="input-with-select"
             >
@@ -20,7 +19,7 @@
               </template>
             </el-input>
           </el-form-item>
-          <el-button size="default" type="primary" class="ml10">
+          <el-button size="default" type="primary" class="ml10" @click="listApi">
             查询
           </el-button>
           <el-button size="default" class="ml10" @click="submitReset">
@@ -84,15 +83,13 @@
       </el-table>
       <div class="pages">
         <el-pagination
+            v-if="tableData.length == 0 ? false : true"
             v-model:currentPage="pageIndex"
             v-model:page-size="pageSize"
             :page-sizes="[10, 20, 30]"
             :pager-count="5"
-            :small="small"
-            :disabled="disabled"
-            :background="background"
             layout="total, sizes, prev, pager, next, jumper"
-            :total="40"
+            :total="total"
             @size-change="handleSizeChange"
             @current-change="handleCurrentChange"
         />
@@ -107,7 +104,7 @@
 import {
   // toRefs,
   reactive,
-  // onMounted,
+  onMounted,
   ref,
   defineComponent
 } from 'vue';
@@ -125,10 +122,12 @@
   Download,
   Refresh,
   View,
+  Edit,
   EditPen,
 } from '@element-plus/icons-vue'
 import OpenSee from '/@/views/contingencyManagement/emergencyPlanStartRecord/component/openSee.vue';
 import SelectEmergencyPlan from '/@/views/contingencyManagement/emergencyPlanStartRecord/component/selectEmergencyPlan.vue'
+import {emergencyPlanLogApi} from "/@/api/emergencyPlanLog";
 
 // 定义表格数据类型
 interface User {
@@ -149,7 +148,7 @@
     View,
     EditPen,
     Plus,
-    // Edit,
+    Edit,
     Delete,
     SelectEmergencyPlan,
     Download,
@@ -157,23 +156,14 @@
   },
   setup() {
     const ruleFormRef = ref<FormInstance>()
-    //定义表单
-    const ruleForm = reactive({
-      teamName: '', // 队伍名称
-      teamLeader: '', //队伍负责人
-      department: [], // 负责人部门
-      phone: '', // 负责人手机
-      telephone: '', // 固定电话
+    // 列表参数
+    const listQuery = reactive({
+      pageIndex: 1,
+      pageSize: 10,
+      searchParams: {
+        planId: '',
+      },
     });
-    // const seeRef = ref();
-    const editRef = ref();
-    // 选择框
-    // const value = ref('');
-    // const options =
-    //   {
-    //     value: 'Option1',
-    //     label: 'Option1',
-    //   };
     const multipleTableRef = ref<InstanceType<typeof ElTable>>()
     const multipleSelection = ref<User[]>([])
 
@@ -182,39 +172,56 @@
     const upButton=()=>{
       upShow.value.openDialog()
     }
-    // 定义表格数据
-    const tableData: User[] = [
-      {
-        teamName: '消防安全绳',
-        teamLevel: 'YJWZ20210208104332',
-        teamDescription: '安全管理部',
-        materialClassification: '事故气体吸收装置',
-      },
-      {
-        teamName: '消防安全绳',
-        teamLevel: 'YJWZ20210208104332',
-        teamDescription: '安全管理部',
-        materialClassification: '事故气体吸收装置',
-      },
-      {
-        teamName: '消防安全绳',
-        teamLevel: 'YJWZ20210208104332',
-        teamDescription: '安全管理部',
-        materialClassification: '事故气体吸收装置',
-      },
-      {
-        teamName: '消防安全绳',
-        teamLevel: 'YJWZ20210208104332',
-        teamDescription: '安全管理部',
-        materialClassification: '事故气体吸收装置',
+    // 请求列表数据
+    const listApi = async () => {
+      let res = await emergencyPlanLogApi().getEmergencyPlanLogList(listQuery);
+      console.log(res);
+      if (res.data.code == 200) {
+        tableData.value = res.data.data;
+        pageIndex.value = res.data.pageIndex;
+        pageSize.value = res.data.pageSize;
+        total.value = res.data.total;
+      } else {
+        ElMessage.error(res.data.msg);
       }
-    ]
-    // // 打开新增用户弹窗
-    // const addRef = ref();
-    // const onOpenAdd = () => {
-    //   addRef.value.openDialog();
-    // };
+    };
+    //重置
+    const submitReset = () => {
+      listQuery.searchParams.planId = '';
+      listApi();
+    };
+    const total = ref();
+    const tableData = ref([]);
+    // 定义表格数据
+    // const tableData: User[] = [
+    //   {
+    //     teamName: '消防安全绳',
+    //     teamLevel: 'YJWZ20210208104332',
+    //     teamDescription: '安全管理部',
+    //     materialClassification: '事故气体吸收装置',
+    //   },
+    //   {
+    //     teamName: '消防安全绳',
+    //     teamLevel: 'YJWZ20210208104332',
+    //     teamDescription: '安全管理部',
+    //     materialClassification: '事故气体吸收装置',
+    //   },
+    //   {
+    //     teamName: '消防安全绳',
+    //     teamLevel: 'YJWZ20210208104332',
+    //     teamDescription: '安全管理部',
+    //     materialClassification: '事故气体吸收装置',
+    //   },
+    //   {
+    //     teamName: '消防安全绳',
+    //     teamLevel: 'YJWZ20210208104332',
+    //     teamDescription: '安全管理部',
+    //     materialClassification: '事故气体吸收装置',
+    //   }
+    // ]
+
     // // 打开修改用户弹窗
+    const editRef = ref();
     const OnOpenSee = (row: TableDataRow) => {
       editRef.value.openDialog(row);
     };
@@ -246,6 +253,9 @@
     const handleCurrentChange = (val: number) => {
       console.log(`current page: ${val}`);
     };
+    onMounted(() => {
+      listApi();
+    });
     return {
       // value,
       // options,
@@ -262,10 +272,16 @@
       handleSizeChange,
       handleCurrentChange,
       ruleFormRef,
-      ruleForm,
+      listApi,
       Search,
       daiInpt,
       showRef,
+      total,
+      onMounted,
+      submitReset,
+      listQuery,
+      Edit,
+      View,
       // ...toRefs(state),
     };
   },
diff --git a/src/views/contingencyManagement/emergencyResources/emergencySupplies/index.vue b/src/views/contingencyManagement/emergencyResources/emergencySupplies/index.vue
index e405aae..0f90bb5 100644
--- a/src/views/contingencyManagement/emergencyResources/emergencySupplies/index.vue
+++ b/src/views/contingencyManagement/emergencyResources/emergencySupplies/index.vue
@@ -1,10 +1,6 @@
 <template>
 	<div class="system-user-container">
 		<el-card shadow="hover">
-			<!-- <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
-				<el-tab-pane label="待评价" name="first"></el-tab-pane>
-				<el-tab-pane label="已评价" name="second"></el-tab-pane>
-			</el-tabs> -->
 			<div class="system-user-search mb15">
 				<el-input size="default" v-model="listQuery.searchParams.name" placeholder="物资名称" style="max-width: 215px" />
 				<el-button size="default" type="primary" class="ml10" @click="listApi"> 查询 </el-button>
@@ -23,7 +19,7 @@
 					</el-button>
 				</div>
 				<div class="button_Right">
-					<!-- <el-button @click="upButton">
+          <el-button @click="upButton">
 						<el-icon>
 							<Upload />
 						</el-icon>
@@ -32,7 +28,7 @@
 						<el-icon>
 							<Refresh />
 						</el-icon>
-					</el-button> -->
+					</el-button>
 				</div>
 			</div>
 			<el-table :data="tableData" style="width: 100%" ref="multipleTableRef">
diff --git a/src/views/contingencyManagement/panManagement/component/openAdd.vue b/src/views/contingencyManagement/panManagement/component/openAdd.vue
index b2ebf54..181d212 100644
--- a/src/views/contingencyManagement/panManagement/component/openAdd.vue
+++ b/src/views/contingencyManagement/panManagement/component/openAdd.vue
@@ -1,7 +1,7 @@
 <template>
   <div class="system-edit-user-container">
     <el-dialog
-        title="新建应急预案管理"
+        :title="title"
         v-model="isShowDialog"
         width="769px"
         draggable
@@ -16,14 +16,14 @@
       >
         <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 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="responsibleDepartment">
               <el-tree-select
-              v-model="treeSelect"
+              v-model="ruleForm.treeSelect"
               :data="tree"
               multiple
               :render-after-expand="true"
@@ -33,8 +33,8 @@
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="预案类型" prop="teamLeader">
-              <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择">
+            <el-form-item label="预案类型" prop="type">
+              <el-select v-model="ruleForm.type" class="w100" placeholder="请选择">
                 <el-option label="综合应急预案" value="admin"></el-option>
                 <el-option label="现场处置方案" value="common"></el-option>
                 <el-option label="专项应急预案" value="common"></el-option>
@@ -43,16 +43,16 @@
             </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-form-item label="危险源关联" prop="associatedDanger">
+              <el-select v-model="ruleForm.associatedDanger" class="w100" placeholder="请选择">
                 <el-option label="是" value="admin"></el-option>
                 <el-option label="否" value="common"></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="teamPhone">
-              <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择">
+            <el-form-item label="预案级别" prop="level">
+              <el-select v-model="ruleForm.level" class="w100" placeholder="请选择">
                 <el-option label="公司级" value="admin"></el-option>
                 <el-option label="分厂级" value="common"></el-option>
                 <el-option label="车间级" value="common"></el-option>
@@ -60,9 +60,9 @@
             </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="authorId" >
               <el-input
-                  v-model="ruleForm.teamLeader"
+                  v-model="ruleForm.authorId"
                   placeholder="请选择"
                   class="input-with-select"
               >
@@ -73,18 +73,18 @@
             </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="authorDeptId">
               <el-tree-select
-                  v-model="ruleForm.responsibleDepartment"
+                  v-model="ruleForm.authorDeptId"
                   :data="data"
                   class="w100"
                   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="telephone">
+            <el-form-item label="发布实施日期" prop="releaseDate">
               <el-date-picker
-                  v-model="value1"
+                  v-model="ruleForm.releaseDate"
                   type="datetime"
                   class="w100"
                   placeholder="选择日期时间"
@@ -171,6 +171,8 @@
 import CheckTemplate from '/@/components/checkTemplate/index.vue'
 import RegionsDialog from '/@/components/regionsDialog/index.vue'
 
+
+
 export default defineComponent({
   name: 'openAdd',
   components: {
@@ -184,11 +186,14 @@
     const ruleFormRef = ref<FormInstance>()
     //定义表单
     const ruleForm = reactive({
-        teamName: '', // 队伍名称
-        teamLeader: '', //队伍负责人
-        department: [], // 负责人部门
-        phone: '', // 负责人手机
-        telephone: '', // 固定电话
+      name: '', // 预案名称
+      type: '', //预案类型
+      associatedDanger: '', // 危险源关联
+      level: '', // 预案级别
+      authorId: '', // 编写人
+      authorDeptId: '', // 编写部门
+      releaseDate: '', // 发布实施日期
+      // telephone: '', // 应急队伍
     });
     // 打开弹窗
     const openDialog = () => {
@@ -204,7 +209,7 @@
       closeDialog();
     };
     //日期选择器
-    const value1 = ref('')
+    const releaseDate = ref('')
     // 上传附件
     const fileList = ref<UploadUserFile[]>([])
     // 可选择树
@@ -416,7 +421,7 @@
       data,
       Search,
       ruleForm,
-      value1,
+      releaseDate,
       treeSelect,
       tree,
       daiInpt,
diff --git a/src/views/contingencyManagement/panManagement/index.vue b/src/views/contingencyManagement/panManagement/index.vue
index 1a1c7e7..b083b2d 100644
--- a/src/views/contingencyManagement/panManagement/index.vue
+++ b/src/views/contingencyManagement/panManagement/index.vue
@@ -4,23 +4,23 @@
       <div class="system-user-search mb15">
         <el-form :inline="true" :model="formInline" class="demo-form-inline">
           <el-form-item>
-          <el-input size="default" placeholder="预案名称" style="max-width: 215px;"> </el-input>
+            <el-input size="default" v-model="formInline.searchParams.name" placeholder="预案名称" style="max-width: 215px;"> </el-input>
           </el-form-item>
           <el-form-item>
-          <el-select size="default" v-model="value" placeholder="请选择预案类型" class="ml10" style="max-width: 215px;">
-            <el-option label="综合应急预案" value="admin"></el-option>
-            <el-option label="现场处置方案" value="common"></el-option>
-            <el-option label="专项应急预案" value="common"></el-option>
-            <el-option label="其他预案" value="common"></el-option>
-          </el-select>
+            <el-select size="default" v-model="formInline.searchParams.type" placeholder="请选择预案类型" class="ml10" style="max-width: 215px;">
+              <el-option label="综合应急预案" value="admin"></el-option>
+              <el-option label="现场处置方案" value="common"></el-option>
+              <el-option label="专项应急预案" value="common"></el-option>
+              <el-option label="其他预案" value="common"></el-option>
+            </el-select>
           </el-form-item>
           <el-form-item>
-          <el-button size="default" type="primary" class="ml10">
-            查询
-          </el-button>
-          <el-button size="default" class="ml10" @click="submitReset">
-            重置
-          </el-button>
+            <el-button size="default" type="primary" class="ml10" @click="onSubmit">
+              查询
+            </el-button>
+            <el-button size="default" class="ml10">
+              重置
+            </el-button>
           </el-form-item>
         </el-form>
       </div>
@@ -46,17 +46,17 @@
           </el-button>
         </div>
         <div class="button_Right">
-          <el-button @click="upButton">
+          <el-button size="default" @click="upButton">
             <el-icon>
               <Upload />
             </el-icon>
           </el-button>
-          <el-button>
+          <el-button size="default">
             <el-icon>
               <Download />
             </el-icon>
           </el-button>
-          <el-button>
+          <el-button size="default">
             <el-icon>
               <Refresh />
             </el-icon>
@@ -64,7 +64,7 @@
         </div>
       </div>
       <el-table
-          :data="tableData"
+          :data="tableData.data"
           style="width: 100%"
           ref="multipleTableRef"
       >
@@ -104,36 +104,23 @@
           </template>
         </el-table-column>
       </el-table>
-      <!--      <el-pagination-->
-      <!--          @size-change="onHandleSizeChange"-->
-      <!--          @current-change="onHandleCurrentChange"-->
-      <!--          class="mt15"-->
-      <!--          :pager-count="5"-->
-      <!--          :page-sizes="[10, 20, 30]"-->
-      <!--          v-model:current-page="tableData.param.pageNum"-->
-      <!--          background-->
-      <!--          v-model:page-size="tableData.param.pageSize"-->
-      <!--          layout="total, sizes, prev, pager, next, jumper"-->
-      <!--          :total="tableData.total"-->
-      <!--      >-->
-      <!--      </el-pagination>-->
       <div class="pages">
         <el-pagination
-            v-model:currentPage="pageIndex"
-            v-model:page-size="pageSize"
+            v-if="tableData.length == 0 ? false : true"
+            v-model:currentPage="formInline.pageIndex"
+            v-model:page-size="formInline.pageSize"
             :page-sizes="[10, 20, 30]"
             :pager-count="5"
-            :small="small"
-            :disabled="disabled"
-            :background="background"
+            class="mt15"
+            background
             layout="total, sizes, prev, pager, next, jumper"
-            :total="40"
-            @size-change="handleSizeChange"
-            @current-change="handleCurrentChange"
+            :total="tableData.total"
+            @size-change="onHandleSizeChange"
+            @current-change="onHandleCurrentChange"
         />
       </div>
     </el-card>
-    <OpenAdd ref="addRef" />
+    <OpenAdd ref="addRef"  @refreshRoleList="initTableData"/>
     <AbolishLibrary ref="abolishRef"/>
     <upData ref="upShow"></upData>
     <el-dialog v-model="dialogFormVisible" width="30%" title="启动" :fullscreen="full">
@@ -157,9 +144,9 @@
 
 <script lang="ts">
 import {
-  // toRefs,
+  toRefs,
   reactive,
-  // onMounted,
+  onMounted,
   ref,
   defineComponent
 } from 'vue';
@@ -175,7 +162,6 @@
   Upload,
   Download,
   Refresh,
-  View,
   VideoPause,
   VideoPlay,
   EditPen,
@@ -212,13 +198,19 @@
   // // describe: string;
   // createTime: string;
 }
-
+//
+interface TableDataState {
+  tableData: {
+    data: Array<TableDataRow>;
+    total: number;
+    loading: boolean;
+  };
+}
 export default defineComponent({
   name: 'systemUser',
   components: {
     OpenAdd,
     AbolishLibrary,
-    View,
     EditPen,
     Plus,
     Edit,
@@ -228,17 +220,53 @@
     Refresh,
     VideoPause,
     VideoPlay,
-    UpData
+    UpData,
+    emergencyPlanApi
   },
   setup() {
-    // const seeRef = ref();
-    // 选择框
-    // const value = ref('');
-    // const options =
-    //   {
-    //     value: 'Option1',
-    //     label: 'Option1',
-    //   };
+    // 定义表单搜索
+    const formInline = reactive({
+      pageIndex: 1,
+      pageSize: 10,
+      searchParams: {
+        name: "",
+        type: "",
+      }
+    })
+    // 搜索按钮
+    const onSubmit = async () => {
+      let res = await emergencyPlanApi().getEmergencyPlanList(formInline)
+      if(res.data.code === '200'){
+        state.tableData.data = res.data.data;
+        state.tableData.total = state.tableData.data.length;
+      }else{
+        ElMessage({
+          type:'warning',
+          message:res.data.msg
+        })
+      }
+    }
+    // 定义表格数据
+    const state = reactive<TableDataState>({
+      tableData: {
+        data: [],
+        total: 0,
+        loading: false,
+      },
+    })
+    // 初始化表格数据
+    const initTableData = async () => {
+      let res = await emergencyPlanApi().getEmergencyPlanList(formInline)
+      if(res.data.code === '200'){
+        state.tableData.data = res.data.data;
+        state.tableData.total = state.tableData.data.length;
+      }else{
+        ElMessage({
+          type:'warning',
+          message:res.data.msg
+        })
+      }
+    };
     const multipleTableRef = ref<InstanceType<typeof ElTable>>()
     const multipleSelection = ref<User[]>([])
 
@@ -247,61 +275,6 @@
     const upButton=()=>{
       upShow.value.openDialog()
     }
-    // 定义表格数据
-    const tableData: User[] = [
-      {
-        teamName: '应急救援组',
-        teamLevel: '公司',
-        teamDescription: '实施抢险抢险的应急方案和措施实施 ;',
-        teamPhone: '051383830321',
-        phone: '13603812900',
-        describe: '(1)实施抢险抢险的应急方案和措施实施 ;\n' +
-            '(2)负责现场被困人员、受伤人员抢救工作;\n' +
-            '(3)在事故有可能扩大进行抢险抢修或救援时,高度注意避免意外伤害;\n' +
-            '(4)抢险抢修或救援结束后,对结果进行复查和评估。',
-        responsibleDepartment: '仪表班',
-        teamLeader: '王磊',
-      },
-      {
-        teamName: '应急救援组',
-        teamLevel: '公司',
-        teamDescription: '实施抢险抢险的应急方案和措施实施 ;',
-        teamPhone: '051383830321',
-        phone: '13603812900',
-        describe: '(1)实施抢险抢险的应急方案和措施实施 ;\n' +
-            '(2)负责现场被困人员、受伤人员抢救工作;\n' +
-            '(3)在事故有可能扩大进行抢险抢修或救援时,高度注意避免意外伤害;\n' +
-            '(4)抢险抢修或救援结束后,对结果进行复查和评估。',
-        responsibleDepartment: '仪表班',
-        teamLeader: '王磊',
-      },
-      {
-        teamName: '应急救援组',
-        teamLevel: '公司',
-        teamDescription: '实施抢险抢险的应急方案和措施实施 ;',
-        teamPhone: '051383830321',
-        phone: '13603812900',
-        describe: '(1)实施抢险抢险的应急方案和措施实施 ;\n' +
-            '(2)负责现场被困人员、受伤人员抢救工作;\n' +
-            '(3)在事故有可能扩大进行抢险抢修或救援时,高度注意避免意外伤害;\n' +
-            '(4)抢险抢修或救援结束后,对结果进行复查和评估。',
-        responsibleDepartment: '仪表班',
-        teamLeader: '王磊',
-      },
-      {
-        teamName: '应急救援组',
-        teamLevel: '公司',
-        teamDescription: '实施抢险抢险的应急方案和措施实施 ;',
-        teamPhone: '051383830321',
-        phone: '13603812900',
-        describe: '(1)实施抢险抢险的应急方案和措施实施 ;\n' +
-            '(2)负责现场被困人员、受伤人员抢救工作;\n' +
-            '(3)在事故有可能扩大进行抢险抢修或救援时,高度注意避免意外伤害;\n' +
-            '(4)抢险抢修或救援结束后,对结果进行复查和评估。',
-        responsibleDepartment: '仪表班',
-        teamLeader: '王磊',
-      }
-    ]
     // 启动弹窗
     const dialogTableVisible = ref(false)
     const dialogFormVisible = ref(false)
@@ -331,19 +304,16 @@
           .catch(() => {});
     };
     // 页面加载时
-    // onMounted(() => {
-    //   initTableData();
-    // });
-    // 分页
-    const pageIndex = ref(4);
-    const pageSize = ref(10);
+    onMounted(() => {
+      initTableData();
+    });
     // 分页改变
-    const handleSizeChange = (val: number) => {
-      console.log(`${val} items per page`);
+    const onHandleSizeChange = (val: number) => {
+      formInline.pageSize = val;
     };
     // 分页未改变
-    const handleCurrentChange = (val: number) => {
-      console.log(`current page: ${val}`);
+    const onHandleCurrentChange = (val: number) => {
+      formInline.pageIndex = val;
     };
 
     const router=useRouter()
@@ -375,32 +345,31 @@
       }
     };
     return {
-      // value,
-      // options,
       multipleSelection,
       multipleTableRef,
       upButton,
       upShow,
-      tableData,
+      initTableData,
       dialogTableVisible,
       dialogFormVisible,
       form,
-      // seeRef,
+      onSubmit,
       onOpenAdd,  //新增
       onabolishLibrary,
       addRef,
       abolishRef,
       onRowDel,
-      pageIndex,
-      pageSize,
-      handleSizeChange,
-      handleCurrentChange,
+      onHandleSizeChange,
+      onHandleCurrentChange,
       jumpFrom,
       abolish,
       router,
       toggleFullscreen,
       FullScreen,
       full,
+      formInline,
+      onMounted,
+      ...toRefs(state),
     };
   },
 });
@@ -418,8 +387,11 @@
   display: flex;
   flex-direction: row;
   justify-content: space-between;
+  margin-bottom: 10px;
 }
-
+.el-form .el-form-item {
+  margin-bottom: 0 !important;
+}
 .el-button--text {
   margin-right: 15px;
 }

--
Gitblit v1.9.2