瀏覽代碼

feat:实现模板和报警规则添加自动刷新页面

xianna.liang 6 月之前
父節點
當前提交
c3362690e2

+ 7 - 6
admin.ui.plus-master/src/views/admin/statement/alarmRules/components/add-alarmRules.vue

@@ -1,7 +1,7 @@
 <!-- 报警规则添加列表 -->
 <template>
   <div class="layout-pd">
-    <el-dialog v-model="Data.isShowDialog" style="width: 60%;">
+    <el-dialog title="报警推送规则" v-model="Data.isShowDialog" style="width: 60%;">
       <!--操作-->
       <div style="width: 100%;display: flex;justify-content: left;align-items: center;">
         <h1 style="margin-bottom: 10px;font-size: 30px;">报警推送规则</h1>
@@ -152,7 +152,7 @@ import { pushTemplateApi } from "/@/api/admin/AlarmService/pushTemplateApi";
 import { TemplateFilterDto } from "/@/api/admin/AlarmService/pushTemplateDto";
 import eventBus from "/@/utils/mitt";
 
-
+let isLoading = ref(false)
 
 const Data = reactive({
   isShowDialog: false,
@@ -303,12 +303,13 @@ watch([() => [...Data.selectValue1], () => [...Data.selectValue2], () => [...Dat
 
 // 保存提交内容
 const toSave = async () => {
-  const res = await new alarmRulesApi().addForm(Data.Filter)
-  console.log(Data.Filter)
-  // console.log(res)
+  await new alarmRulesApi().addForm(Data.Filter).then((res) => {
+    console.log(res)
+    eventBus.emit('refreshView')
+  })
   Data.isShowDialog = false
   reset()
-  eventBus.emit('refreshView')
+
 }
 
 // 重置

+ 6 - 4
admin.ui.plus-master/src/views/admin/statement/alarmRules/components/pushTemplate.vue

@@ -5,7 +5,7 @@
       <el-row style="height: auto;">
         <!--操作-->
         <el-col :xs="24">
-          <el-card class="my-fill mt8" shadow="never" :body-style="{ paddingBottom: '0' }" >
+          <el-card class="my-fill mt8" shadow="never" :body-style="{ paddingBottom: '0' }">
             <div style="width: 100%;display: flex;justify-content: left;align-items: center;">
               <h1 style="margin-bottom: 10px;font-size: 30px;">推送模板:</h1>
             </div>
@@ -66,6 +66,8 @@
 import { reactive, ref } from 'vue';
 import { pushTemplateModel } from "/@/api/admin/AlarmService/pushTemplateDto";
 import { pushTemplateApi } from "/@/api/admin/AlarmService/pushTemplateApi";
+import eventBus from "/@/utils/mitt";
+
 
 const Data = reactive({
   id: 0,
@@ -86,9 +88,9 @@ const toSave = async () => {
     return
   }
   Data.id = Number(new Date())
-  console.log(Data)
-  const res = await new pushTemplateApi().addForm(Data)
-  console.log(res)
+  await new pushTemplateApi().addForm(Data).then(() => {
+    eventBus.emit('refreshView')
+  })
   Data.templateName = ''
   Data.templateType = ''
   Data.templateContent = ''

+ 17 - 4
admin.ui.plus-master/src/views/admin/statement/alarmRules/template.vue

@@ -67,9 +67,11 @@
 </template>
 
 <script setup lang="ts" name="">
-import { defineAsyncComponent, onMounted, reactive, ref, watch } from "vue";
+import { defineAsyncComponent, onBeforeMount, onMounted, reactive, ref, watch } from "vue";
 import { pushTemplateModel_SearchFilter, pushTemplateModel, PageInputPushTemplateFilterModel } from "/@/api/admin/AlarmService/pushTemplateDto";
 import { pushTemplateApi } from "/@/api/admin/AlarmService/pushTemplateApi";
+import eventBus from "/@/utils/mitt";
+
 
 /**页面对象 */
 const Data = reactive({
@@ -107,9 +109,6 @@ const Data = reactive({
 const EditDialog = defineAsyncComponent(() => import('./components/pushTemplate.vue'))
 const editDialogRef = ref()
 
-onMounted(() => {
-    init()
-})
 
 // 条件查询
 const init = async () => {
@@ -198,6 +197,20 @@ const toOpen = (() => {
     console.log('启用')
 })
 
+// 挂载前
+onBeforeMount(() => {
+    eventBus.off('refreshView')
+})
+
+// 挂载时
+onMounted(async () => {
+    await init()
+    eventBus.off('refreshView')
+    eventBus.on('refreshView', async () => {
+        await init()
+    })
+})
+
 </script>
 
 <style scoped lang="scss">

+ 7 - 4
admin.ui.plus-master/src/views/admin/statement/moreOilEngineDetails/component/main.vue

@@ -171,7 +171,7 @@
 </template>
 
 <script setup lang="ts">
-import { onMounted, reactive, ref, watch } from "vue";
+import { computed, onMounted, reactive, ref, watch } from "vue";
 //import { CirclePlusFilled } from '@element-plus/icons-vue'
 import { NozzlecontrolDtl } from "/@/api/admin/reportManagement/moreOilEngineDetails/moreOilEngineDetailsDto";
 import { OilEngineDetailsApi } from "/@/api/admin/reportManagement/oilEngineDetails/oilEngineDetailsApi";
@@ -200,6 +200,7 @@ const urrl = '/src/assets/map/IconParkSolidCloseOne.png'
 const props = defineProps({
     id: String,
 })
+
 const emit = defineEmits(['getIcon'])
 
 /**
@@ -369,9 +370,6 @@ const init = () => {
     initDetailsData()
     initTableData()
     initOilListData()
-
-    console.log('init')
-    console.log(props.id)
 }
 
 onMounted(() => {
@@ -489,4 +487,9 @@ const onShowHide = () => {
     top: 30%;
     margin-right: 30px;
 }
+
+.oilInfo-con-first {
+    left: 7em;
+    top: 0.5em;
+}
 </style>

+ 8 - 14
admin.ui.plus-master/src/views/admin/statement/moreOilEngineDetails/index.vue

@@ -36,20 +36,20 @@
 </template>
 
 <script setup lang="ts">
-import { defineAsyncComponent, onMounted, reactive, ref, watch } from "vue";
+import { computed, defineAsyncComponent, onMounted, onUpdated, reactive, ref, watch } from "vue";
 //import { CirclePlusFilled } from '@element-plus/icons-vue'
 import { OilEngineDetailsApi } from "/@/api/admin/reportManagement/oilEngineDetails/oilEngineDetailsApi";
 import router from "/@/router";
 import { MoreOilEngineDetailsApi } from "/@/api/admin/reportManagement/moreOilEngineDetails/moreOilEngineDetailsApi";
 import { FuelDispenserDto_SearchFilter, PageInputFuelDispenserDto } from "/@/api/admin/reportManagement/listOfOilEngines/listOfOilEnginesDto";
 import { ListOfOilEnginesApi } from "/@/api/admin/reportManagement/listOfOilEngines/listOfOilEnginesApi";
+import { nextTick } from "process";
 
 
 // 引入组件
 const mainView = defineAsyncComponent(() => import('./component/main.vue'))
 const getId = ref('') as any
 getId.value = router.currentRoute.value.params.id
-console.log(getId.value)
 
 let showicon = ref(true)
 const getValue = (data: boolean) => {
@@ -63,8 +63,6 @@ const handleOpen = (key: string, keyPath: string[]) => {
   } else {
     getId.value = key
   }
-  console.log('000', getId.value)
-  console.log(key, keyPath)
 }
 const handleClose = (key: string, keyPath: string[]) => {
   console.log(key, keyPath)
@@ -95,17 +93,16 @@ const oilEngineData = reactive({
   } as PageInputFuelDispenserDto,
 })
 
-import { useRoute } from 'vue-router';
-const Arouter = useRoute()
-let data = ref('') as any
 let fuelList = ref([]) as any
-data.value = Arouter.query.data
+let data = ref('') as any
+data.value = localStorage.getItem("name")
 
 const getMenuData = async () => {
   if (data.value == null) return
   oilEngineData.filterModel.gasStation = data.value
   const res: any =
     await new ListOfOilEnginesApi().getPage({ ...oilEngineData.pageInput, filter: oilEngineData.filterModel })
+
   res.data.list.forEach(async (item: any) => {
     await new OilEngineDetailsApi().getBasicInfoDto({ Fuelid: item.fuelId }).then(async (res) => {
       let list = [] as any
@@ -115,13 +112,15 @@ const getMenuData = async () => {
       fuelList.value.push({ 'id': item.fuelId, 'name': res.data.name, 'onlineStatus': res.data.onlineStatus, 'oilList': list })
     })
   })
-  console.log(fuelList)
+
 }
 
 onMounted(() => {
   getMenuData()
+
 })
 
+
 </script>
 
 <style scoped lang="scss">
@@ -153,11 +152,6 @@ onMounted(() => {
   margin-right: 30px;
 }
 
-.oilInfo-con-first {
-  left: 7em;
-  top: 0.5em;
-}
-
 .menu-point-first {
   left: 2em;
   top: 1.8em;

+ 3 - 7
admin.ui.plus-master/src/views/admin/statement/oilEngineDetails/index.vue

@@ -307,9 +307,7 @@ const showBigPic = (val) => {
 const toPage = () => {
   const id = router.currentRoute.value.params.id
   router.push({
-    path: `/statement/${id}/more`, query: {
-      data: flag.value
-    }
+    path: `/statement/${id}/more`
   })
 }
 /**
@@ -377,11 +375,8 @@ const getBasicInfo = async () => {
   const { data } = await new OilEngineDetailsApi().getBasicInfoDto({ Fuelid: fuelId })
   basicInfo.info = data
 
-  console.log(999)
+  localStorage.setItem('name', data.gasStation)
 
-  console.log(data.gasStation)
-  flag.value = data.gasStation
-  console.log(flag)
 
   if (basicInfo.info.createdTime !== null) {
     basicInfo.info.createdTime = formatDate(basicInfo.info.createdTime)
@@ -449,6 +444,7 @@ onMounted(() => {
 
 /*********************************初始化************************************/
 
+
 </script>
 
 <style scoped lang="scss">