yangyuxuan 1 ヶ月 前
コミット
47ab2871c7

+ 2 - 0
src/types/components.d.ts

@@ -84,6 +84,8 @@ declare module 'vue' {
     HikvisionPlayer: typeof import('./../components/HKVideo/hikvision-player.vue')['default']
     HKVideo: typeof import('./../components/HKVideo/index.vue')['default']
     IconSelect: typeof import('./../components/IconSelect/index.vue')['default']
+    IEpCaretBottom: typeof import('~icons/ep/caret-bottom')['default']
+    IEpCaretTop: typeof import('~icons/ep/caret-top')['default']
     IFrame: typeof import('./../components/iFrame/index.vue')['default']
     ImagePreview: typeof import('./../components/ImagePreview/index.vue')['default']
     ImageUpload: typeof import('./../components/ImageUpload/index.vue')['default']

+ 40 - 17
src/views/comprehensiveGuarantee/emergencySpecialistManagement/index.vue

@@ -15,8 +15,12 @@
                   <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
                   <el-button icon="Refresh" @click="resetQuery">重置</el-button>
                 </el-col>
+                <el-col :span="12" style="text-align: right;">
+                  <el-button type="primary" @click="exportExcel">导出excel</el-button>
+                </el-col>
               </el-row>
             </el-form>
+
           </div>
         </transition>
         <!-- 表格组件 -->
@@ -27,17 +31,29 @@
             </template>
           </el-table-column>
           <el-table-column label="姓名" align="center" prop="name" width="100" fixed="left" />
-          <el-table-column label="所属区县" align="center" prop="county" />
-          <el-table-column label="专家类型" align="center" prop="expert_type" />
-          <el-table-column label="职位" align="center" prop="position" />
+          <el-table-column label="荣誉称号" align="center" prop="" />
           <el-table-column label="单位" align="center" prop="unit" />
-          <el-table-column label="联系电话" align="center" prop="phone" />
-          <el-table-column label="现在地址" align="center" prop="address" />
-          <el-table-column label="状态" align="center" prop="status" />
-          <el-table-column label="擅长事故类型" align="center" prop="accident_type" />
-          <el-table-column label="救援经历" align="center" prop="rescue_experience" />
-          <el-table-column label="出生日期" align="center" prop="birthdate" />
-          <el-table-column label="工作日期" align="center" prop="work_date" />
+          <el-table-column label="职位" align="center" prop="position" />
+          <el-table-column label="职称" align="center" prop="" />
+          <el-table-column label="发证日期" align="center" prop="" />
+          <el-table-column label="专业分组" align="center" prop="" />
+          <el-table-column label="专业领域" align="center" prop="" />
+          <el-table-column label="工作电话" align="center" prop="phone" />
+          <el-table-column label="住宅电话" align="center" prop="phone" />
+          <el-table-column label="移动电话" align="center" prop="phone" />
+          <el-table-column label="电子邮箱" align="center" prop="" />
+          <el-table-column label="联系地址" align="center" prop="address" />
+          <el-table-column label="增量标识" align="center" prop="" />
+          <el-table-column label="增量时间" align="center" prop="" />
+          <el-table-column label="批次号" align="center" prop="" />
+          <el-table-column label="新增时间" align="center" prop="" />
+<!--          <el-table-column label="所属区县" align="center" prop="county" />-->
+<!--          <el-table-column label="专家类型" align="center" prop="expert_type" />-->
+<!--          <el-table-column label="状态" align="center" prop="status" />-->
+<!--          <el-table-column label="擅长事故类型" align="center" prop="accident_type" />-->
+<!--          <el-table-column label="救援经历" align="center" prop="rescue_experience" />-->
+<!--          <el-table-column label="出生日期" align="center" prop="birthdate" />-->
+<!--          <el-table-column label="工作日期" align="center" prop="work_date" />-->
           <el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right" width="200">
             <template #default="scope">
               <el-text class="common-btn-text-primary" @click="handleView(scope.row)">查看</el-text>
@@ -60,7 +76,7 @@
         <el-card class="card">
           <template #header>
             <div class="card-header">
-              <span>类型统计</span>
+              <span>专业分组</span>
             </div>
           </template>
           <Chart :option="option2" style="height: 180px" />
@@ -107,6 +123,8 @@ import { PatrolVO } from '@/views/inspectionWork/patrolTask.vue';
 import { graphic } from 'echarts';
 import Map from './Map.vue';
 import { PointType } from '@/api/globalMap/type';
+import { fillingTable } from '@/api/dataFilling/fillingManage';
+import { download2 } from '@/utils/request';
 const loading = ref(true);
 const showSearch = ref(true);
 const multiple = ref(true);
@@ -114,6 +132,8 @@ const ids = ref<Array<number | string>>([]);
 const single = ref(true);
 const total = ref(0);
 const tableData = ref<PatrolVO[]>([]);
+const baseUrl = import.meta.env.VITE_APP_BASE_API;
+const filename = '专家信息表';
 const selectedRow = ref<PatrolVO | null>(null);
 
 const { proxy } = getCurrentInstance() as ComponentInternalInstance;
@@ -215,6 +235,10 @@ const handleCancel = () => {
   viewState.show = false;
   editState.show = false;
 };
+const exportExcel = () => {
+  fillingTable(ids.value[0]);
+  download2(baseUrl + '/api/dataFilling/export_to_excel?report_id='+ids.value[0], filename + '.xlsx');
+};
 let option1 = ref({
   grid: {
     top: '30px',
@@ -548,12 +572,11 @@ const initData = () => {
   // 类型统计
   // option2.value.legend.data = ['洪水灾害', '城市内涝', '地质灾害', '气象灾害', '生物灾害', '森林火灾'];
   option2.value.series[0].data = [
-    { name: '洪水灾害', value: 1 },
-    { name: '城市内涝', value: 1 },
-    { name: '地质灾害', value: 2 },
-    { name: '气象灾害', value: 5 },
-    { name: '生物灾害', value: 1 },
-    { name: '森林火灾', value: 2 }
+    { name: '自然灾害类', value: 50 },
+    { name: '事故灾害类', value: 69 },
+    { name: '公共卫生类', value: 9 },
+    { name: '社会安全类', value: 9 },
+    { name: '综合管理类', value: 5 }
   ];
   // 年龄统计
   const data1 = [6, 6, 14, 23, 32];

+ 28 - 12
src/views/comprehensiveGuarantee/reliefResourceManagement/rescueUnit.vue

@@ -1,7 +1,7 @@
 <template>
   <div class="app-container">
     <div v-show="!rescueUnitAddState.show && !rescueUnitEditState.show && !rescueUnitViewState.show">
-      <h1>救援人员单位管理</h1>
+      <h1>救援队伍</h1>
       <el-row :gutter="10" class="mb8">
         <el-col :span="1.5">
           <el-button type="primary" icon="Plus" @click="handleAdd">录入</el-button>
@@ -9,25 +9,41 @@
         <el-col :span="1.5">
           <el-button plain icon="Upload" @click="handleAdds">批量导入</el-button>
         </el-col>
+        <el-col :span="1.5">
+          请先下载模板:
+          <el-button type="primary" icon="Bottom">下载模板</el-button>
+        </el-col>
       </el-row>
       <!-- 表格组件 -->
       <el-table ref="multipleTable" v-loading="loading" :data="tableData" style="width: 100%">
-        <el-table-column label="救援人员单位" align="center" prop="name" fixed="left" />
-        <el-table-column label="类型" align="center" prop="category" />
-        <el-table-column label="负责人" align="center" prop="responsible_person" />
-        <el-table-column label="联系电话" align="center" prop="contact_number" />
-        <el-table-column label="负责人职务" align="center" prop="position" />
-        <el-table-column label="装备" align="center" prop="equipment" />
-        <el-table-column label="训练" align="center" prop="training" />
+        <el-table-column label="队伍名称" align="center" prop="" fixed="left" />
+        <el-table-column label="队伍类型" align="center" prop="category" fixed="left" />
+        <el-table-column label="队伍属性" align="center" prop="" />
+        <el-table-column label="队伍级别" align="center" prop="" />
+        <el-table-column label="队伍特长" align="center" prop="" />
         <el-table-column label="队伍人数" align="center" prop="team_size" />
-        <el-table-column label="地址" align="center" prop="address" />
-        <el-table-column label="经度" align="center" prop="longitude" />
-        <el-table-column label="纬度" align="center" prop="latitude" />
+        <el-table-column label="值班电话" align="center" prop="contact_number" />
         <el-table-column label="主管单位" align="center" prop="supervisor_unit" />
+        <el-table-column label="主管单位联系人" align="center" prop="" />
+        <el-table-column label="主管单位联系人电话" align="center" prop="" />
+        <el-table-column label="队伍负责人" align="center" prop="responsible_person" />
+        <el-table-column label="队伍负责人移动电话" align="center" prop="" />
+        <el-table-column label="队伍所在地址" align="center" prop="address" />
+        <el-table-column label="所属行政区域" align="center" prop="" />
+        <el-table-column label="成立时间" align="center" prop="" />
+        <el-table-column label="新增时间" align="center" prop="" />
+
+<!--        <el-table-column label="救援人员单位" align="center" prop="name" />-->
+<!--        <el-table-column label="负责人职务" align="center" prop="position" />-->
+<!--        <el-table-column label="装备" align="center" prop="equipment" />-->
+<!--        <el-table-column label="训练" align="center" prop="training" />-->
+<!--        <el-table-column label="经度" align="center" prop="longitude" />-->
+<!--        <el-table-column label="纬度" align="center" prop="latitude" />-->
         <el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right" width="200">
           <template #default="scope">
             <el-text class="common-btn-text-primary" @click="handleView(scope.row)">查看</el-text>
-            <el-text class="common-btn-text-primary" @click="handleUpdate(scope.row)">修改</el-text>
+            <el-text class="common-btn-text-primary" @click="handleUpdate(scope.row)">编辑</el-text>
+            <el-text class="common-btn-text-primary">停用</el-text>
           </template>
         </el-table-column>
       </el-table>

+ 3 - 1
src/views/routineCommandMap/PositionMap.vue

@@ -295,7 +295,9 @@ const initMap = () => {
     map.on('rightclick', handleRightclick);
     handleResize();
     map.on('complete', () => {
-      updateForm(position);
+      if (!props.id) {
+        updateForm(position);
+      }
       setMarks(position);
     });
   });