Hwf 9 місяців тому
батько
коміт
7c8d47b775

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

@@ -16,40 +16,6 @@ declare module 'vue' {
     CompanyMap: typeof import('./../components/Map/company-map.vue')['default']
     DictTag: typeof import('./../components/DictTag/index.vue')['default']
     Editor: typeof import('./../components/Editor/index.vue')['default']
-    ElAutocomplete: typeof import('element-plus/es')['ElAutocomplete']
-    ElBadge: typeof import('element-plus/es')['ElBadge']
-    ElBreadcrumb: typeof import('element-plus/es')['ElBreadcrumb']
-    ElBreadcrumbItem: typeof import('element-plus/es')['ElBreadcrumbItem']
-    ElButton: typeof import('element-plus/es')['ElButton']
-    ElCol: typeof import('element-plus/es')['ElCol']
-    ElColorPicker: typeof import('element-plus/es')['ElColorPicker']
-    ElConfigProvider: typeof import('element-plus/es')['ElConfigProvider']
-    ElDatePicker: typeof import('element-plus/es')['ElDatePicker']
-    ElDialog: typeof import('element-plus/es')['ElDialog']
-    ElDivider: typeof import('element-plus/es')['ElDivider']
-    ElDrawer: typeof import('element-plus/es')['ElDrawer']
-    ElDropdown: typeof import('element-plus/es')['ElDropdown']
-    ElDropdownItem: typeof import('element-plus/es')['ElDropdownItem']
-    ElDropdownMenu: typeof import('element-plus/es')['ElDropdownMenu']
-    ElEmpty: typeof import('element-plus/es')['ElEmpty']
-    ElForm: typeof import('element-plus/es')['ElForm']
-    ElFormItem: typeof import('element-plus/es')['ElFormItem']
-    ElIcon: typeof import('element-plus/es')['ElIcon']
-    ElImage: typeof import('element-plus/es')['ElImage']
-    ElInput: typeof import('element-plus/es')['ElInput']
-    ElMenu: typeof import('element-plus/es')['ElMenu']
-    ElMenuItem: typeof import('element-plus/es')['ElMenuItem']
-    ElOption: typeof import('element-plus/es')['ElOption']
-    ElPagination: typeof import('element-plus/es')['ElPagination']
-    ElPopover: typeof import('element-plus/es')['ElPopover']
-    ElRow: typeof import('element-plus/es')['ElRow']
-    ElScrollbar: typeof import('element-plus/es')['ElScrollbar']
-    ElSelect: typeof import('element-plus/es')['ElSelect']
-    ElSubMenu: typeof import('element-plus/es')['ElSubMenu']
-    ElSwitch: typeof import('element-plus/es')['ElSwitch']
-    ElTable: typeof import('element-plus/es')['ElTable']
-    ElTableColumn: typeof import('element-plus/es')['ElTableColumn']
-    ElTooltip: typeof import('element-plus/es')['ElTooltip']
     FileUpload: typeof import('./../components/FileUpload/index.vue')['default']
     Hamburger: typeof import('./../components/Hamburger/index.vue')['default']
     HeaderSearch: typeof import('./../components/HeaderSearch/index.vue')['default']
@@ -74,7 +40,4 @@ declare module 'vue' {
     TreeSelect: typeof import('./../components/TreeSelect/index.vue')['default']
     UserSelect: typeof import('./../components/UserSelect/index.vue')['default']
   }
-  export interface ComponentCustomProperties {
-    vLoading: typeof import('element-plus/es')['ElLoadingDirective']
-  }
 }

+ 1 - 1
src/views/duty/eventing/eventDetails.vue

@@ -22,7 +22,7 @@
       <div class="line-item">
         <div class="item-label">事件类型:</div>
         <div class="item-value">
-          <dict-tag
+<!--          <dict-tag-->
         </div>
       </div>
       <div class="line-item">

+ 49 - 87
src/views/duty/eventing/index.vue

@@ -48,12 +48,7 @@
               <el-form-item label="行政区划" prop="regionCode">
                 <el-select v-model="queryParams.regionCode" placeholder="全部" clearable>
                   <el-option label="全部" value=""></el-option>
-                  <el-option
-                    v-for="item in data.regionSelection"
-                    :key="item.dictValue"
-                    :label="item.dictLabel"
-                    :value="item.dictValue"
-                  ></el-option>
+                  <el-option v-for="item in data.regionSelection" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue"></el-option>
                 </el-select>
               </el-form-item>
             </el-col>
@@ -71,8 +66,7 @@
             </el-col>
             <el-col :span="6">
               <el-form-item>
-                <el-input v-model="queryParams.keyword" placeholder="请输入事件标题/事件地点" clearable
-                          @keyup.enter="handleQuery"/>
+                <el-input v-model="queryParams.keyword" placeholder="请输入事件标题/事件地点" clearable @keyup.enter="handleQuery" />
               </el-form-item>
             </el-col>
             <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
@@ -86,21 +80,20 @@
         <el-button type="primary" plain icon="Plus" @click="handleAdd">新增事件</el-button>
       </el-col>
       <el-col :span="1.5">
-        <el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete(selectedRow)">删除事件
-        </el-button>
+        <el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete(selectedRow)">删除事件 </el-button>
       </el-col>
     </el-row>
 
     <!-- 表格组w件 -->
     <el-table v-loading="loading" :data="eventList" @selection-change="handleSelectionChange">
-      <el-table-column type="selection" width="55" align="center"/>
-      <el-table-column label="事件编号" align="center" prop="eventId"/>
-      <el-table-column label="事件标题" align="center" prop="eventTitle"/>
-      <el-table-column label="事件类型" align="center" prop="eventType"/>
-      <el-table-column label="事件等级" align="center" prop="eventLevel"/>
-      <el-table-column label="事件地点" align="center" prop="address"/>
-      <el-table-column label="事件状态" align="center" prop="eventStatus"/>
-      <el-table-column label="事件时间" align="center" prop="eventTime"/>
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="事件编号" align="center" prop="eventId" />
+      <el-table-column label="事件标题" align="center" prop="eventTitle" />
+      <el-table-column label="事件类型" align="center" prop="eventType" />
+      <el-table-column label="事件等级" align="center" prop="eventLevel" />
+      <el-table-column label="事件地点" align="center" prop="address" />
+      <el-table-column label="事件状态" align="center" prop="eventStatus" />
+      <el-table-column label="事件时间" align="center" prop="eventTime" />
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
         <template #default="scope">
           <el-tooltip content="查看" placement="top">
@@ -116,43 +109,27 @@
       </el-table-column>
     </el-table>
 
-    <pagination v-show="total > 0" v-model:page="queryParams.page" v-model:limit="queryParams.pageSize"
-                :total="total" @pagination="getList"/>
+    <pagination v-show="total > 0" v-model:page="queryParams.page" v-model:limit="queryParams.pageSize" :total="total" @pagination="getList" />
 
     <!-- 新增/修改弹窗 -->
     <el-dialog v-model="dialog.visible" :title="dialog.title" width="650px" append-to-body>
       <el-form ref="eventFormRef" :model="form" :rules="rules" label-width="80px">
         <el-form-item label="事件标题" prop="eventTitle">
-          <el-input v-model="form.eventTitle" placeholder="请输入事件标题"/>
+          <el-input v-model="form.eventTitle" placeholder="请输入事件标题" />
         </el-form-item>
         <el-form-item label="事件类型" prop="eventType">
           <el-select v-model="form.eventType" placeholder="请选择事件类型" clearable>
-            <el-option
-              v-for="item in data.eventTypeSelection"
-              :key="item.dictValue"
-              :label="item.dictLabel"
-              :value="item.dictValue"
-            ></el-option>
+            <el-option v-for="item in data.eventTypeSelection" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue"></el-option>
           </el-select>
         </el-form-item>
         <el-form-item label="事件等级" prop="eventLevel">
           <el-select v-model="form.eventLevel" placeholder="请选择事件等级" clearable>
-            <el-option
-              v-for="item in data.eventLevelSelection"
-              :key="item.dictValue"
-              :label="item.dictLabel"
-              :value="item.dictValue"
-            ></el-option>
+            <el-option v-for="item in data.eventLevelSelection" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue"></el-option>
           </el-select>
         </el-form-item>
         <el-form-item label="事件状态" prop="eventStatus">
           <el-select v-model="form.eventStatus" placeholder="请选择事件状态" clearable>
-            <el-option
-              v-for="item in data.eventStatusSelection"
-              :key="item.dictValue"
-              :label="item.dictLabel"
-              :value="item.dictValue"
-            ></el-option>
+            <el-option v-for="item in data.eventStatusSelection" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue"></el-option>
           </el-select>
         </el-form-item>
         <el-form-item label="事件地点" prop="address">
@@ -160,20 +137,10 @@
           <el-input v-model="form.address" placeholder="请输入事件地点" readonly />
         </el-form-item>
         <el-form-item label="事发时间" prop="eventTime">
-          <el-date-picker
-            v-model="form.eventTime"
-            type="datetime"
-            value-format="YYYY-MM-DD HH:mm:ss"
-            placeholder="选择事发时间"
-          ></el-date-picker>
+          <el-date-picker v-model="form.eventTime" type="datetime" value-format="YYYY-MM-DD HH:mm:ss" placeholder="选择事发时间"></el-date-picker>
         </el-form-item>
         <el-form-item label="上报时间" prop="reportTime">
-          <el-date-picker
-            v-model="form.reportTime"
-            value-format="YYYY-MM-DD HH:mm:ss"
-            type="datetime"
-            placeholder="选择上报时间"
-          ></el-date-picker>
+          <el-date-picker v-model="form.reportTime" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择上报时间"></el-date-picker>
         </el-form-item>
         <el-form-item label="伤亡情况">
           <el-row :gutter="10">
@@ -195,7 +162,7 @@
           </el-row>
         </el-form-item>
         <el-form-item label="事件来源" prop="eventSource">
-          <el-input v-model="form.eventSource" placeholder="请输入事件来源"/>
+          <el-input v-model="form.eventSource" placeholder="请输入事件来源" />
         </el-form-item>
       </el-form>
       <template #footer>
@@ -208,17 +175,13 @@
 
     <!-- 地图弹窗 -->
     <company-map v-model:visible="mapDialogVisible" :address="form.address" @confirm="handleMapChange"></company-map>
-
   </div>
 </template>
 
 <script setup lang="ts">
 import { ref, reactive, toRefs, onMounted } from 'vue';
-import { ElMessage } from 'element-plus';
-import { getDicts } from "@/api/system/dict/data";
+import { getDicts } from '@/api/system/dict/data';
 import { addEvent, getEvent } from '@/api/duty/eventing';
-import { deepClone } from '@/utils';
-import { parseTime } from '@/utils/ruoyi';
 
 const router = useRouter();
 const eventList = ref([]);
@@ -288,12 +251,14 @@ const { queryParams, form, rules } = toRefs(data);
 
 const getList = () => {
   loading.value = true;
-  getEvent(queryParams.value).then(res => {
-    eventList.value = res.data;
-    total.value = res.total;
-  }).finally(() => {
-    loading.value = false;
-  })
+  getEvent(queryParams.value)
+    .then((res) => {
+      eventList.value = res.data;
+      total.value = res.total;
+    })
+    .finally(() => {
+      loading.value = false;
+    });
 };
 
 const cancel = () => {
@@ -344,12 +309,14 @@ const submitForm = () => {
   eventFormRef.value?.validate((valid) => {
     if (valid) {
       buttonLoading.value = true;
-      addEvent(form.value).then(() => {
-        dialog.visible = false;
-        getList();
-      }).finally(() => {
-        buttonLoading.value = false
-      });
+      addEvent(form.value)
+        .then(() => {
+          dialog.visible = false;
+          getList();
+        })
+        .finally(() => {
+          buttonLoading.value = false;
+        });
     }
   });
 };
@@ -385,7 +352,6 @@ const handleView = (row) => {
       query: { eventId: row.eventId }
     });
   }
-
 };
 
 // 地图定位
@@ -395,30 +361,26 @@ const openMapDialog = () => {
   mapDialogVisible.value = true;
 };
 
-const handleMapChange = (data ) => {
-  form.value.address = data.address
-  form.value.longitude = data.lnglat[0].toString()
-  form.value.latitude = data.lnglat[1].toString()
-  mapDialogVisible.value = false
+const handleMapChange = (data) => {
+  form.value.address = data.address;
+  form.value.longitude = data.lnglat[0].toString();
+  form.value.latitude = data.lnglat[1].toString();
+  mapDialogVisible.value = false;
 };
 
 const confirmMapLocation = () => {
   mapDialogVisible.value = false;
 };
 
-
 onMounted(() => {
   getList();
-  Promise.all([
-    getDicts("mm_event_type"),
-    getDicts("mm_event_level"),
-    getDicts("mm_event_state"),
-    getDicts("region")
-  ]).then(([eventTypeRes, eventLevelRes, eventStatusRes, regionRes]) => {
-    data.eventTypeSelection = eventTypeRes.data;
-    data.eventLevelSelection = eventLevelRes.data;
-    data.eventStatusSelection = eventStatusRes.data;
-    data.regionSelection = regionRes.data;
-  });
+  Promise.all([getDicts('mm_event_type'), getDicts('mm_event_level'), getDicts('mm_event_state'), getDicts('region')]).then(
+    ([eventTypeRes, eventLevelRes, eventStatusRes, regionRes]) => {
+      data.eventTypeSelection = eventTypeRes.data;
+      data.eventLevelSelection = eventLevelRes.data;
+      data.eventStatusSelection = eventStatusRes.data;
+      data.regionSelection = regionRes.data;
+    }
+  );
 });
 </script>