From 817f8b5f25e08499e7e90b38c002e74131d57c17 Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: 星期五, 18 四月 2025 14:30:12 +0800
Subject: [PATCH] 修改

---
 src/views/hazardousChemicals/homePage/index.vue |   99 ++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 93 insertions(+), 6 deletions(-)

diff --git a/src/views/hazardousChemicals/homePage/index.vue b/src/views/hazardousChemicals/homePage/index.vue
index 77daae5..a3447b1 100644
--- a/src/views/hazardousChemicals/homePage/index.vue
+++ b/src/views/hazardousChemicals/homePage/index.vue
@@ -1,5 +1,40 @@
 <template>
   <div class="homePage">
+    <div>
+      <el-form :inline="true" style="display: flex;align-items: center;flex-wrap: wrap;" >
+        <el-form-item label="企业名称:" >
+          <el-select
+              clearable
+              v-model="data.queryParams.companyId"
+              filterable
+              remote
+              reserve-keyword
+              placeholder="请输入企业名称"
+              remote-show-suffix
+              :remote-method="getCompanyList"
+              style="width: 100%"
+          >
+            <el-option
+                v-for="item in data.companyList"
+                :key="item.id"
+                :label="item.name"
+                :value="item.id"
+            />
+          </el-select>
+        </el-form-item>
+        <el-form-item >
+          <el-button
+              type="primary"
+              @click="getAllList"
+          >查询</el-button>
+          <el-button
+              type="primary"
+              plain
+              @click="reset"
+          >重置</el-button>
+        </el-form-item>
+      </el-form>
+    </div>
     <el-row :gutter="20" justify="space-between" style="margin-bottom: 15px">
       <el-col :xl="6" :lg="6" :md="12" :sm="12" :xs="24" v-for="(item,index) in data.cardList" :key="index">
         <el-card style="margin-bottom: 5px">
@@ -110,7 +145,12 @@
 import {getEntryData, getHazmatUseList, getHoData, getMaxUseData, getUseData} from "@/api/hazardousChemicals/count";
 import {getWarning} from "@/api/hazardousChemicals/warning";
 import {getRawFlow} from "@/api/hazardousChemicals/rawRecord";
+import {getCompany} from "@/api/hazardousChemicals/company";
 const data = reactive({
+  queryParams: {
+    companyId: null
+  },
+  companyList:[],
   cardList: [
     {
       title: '危化品数量',
@@ -150,7 +190,8 @@
   warningData: [],
   warningQueryParams: {
     pageNum: 1,
-    pageSize: 10
+    pageSize: 10,
+    companyId: null
   },
   wTotal: 0,
   wloading: false,
@@ -158,7 +199,8 @@
   hloading: false,
   hazmatQueryParams: {
     pageNum: 1,
-    pageSize: 10
+    pageSize: 10,
+    companyId: null
   },
   hazmatData: [],
 
@@ -171,15 +213,18 @@
 const lineChart = ref("eChartBarN" + Date .now() + Math .random())
 
 onMounted(async () => {
+  await getCompanyList()
+  await getHazmatFlowData()
   await getHomeData()
   await entryData()
   await useData()
   await maxUseData()
   await getWarningData()
-  await getHazmatFlowData()
+
 });
 const getWarningData = async () => {
   data.wloading = true
+  data.warningQueryParams.companyId = data.queryParams.companyId
   const res = await getWarning(data.warningQueryParams)
   if(res.code == 200){
     data.warningData =res.data.list.map(item => {
@@ -196,6 +241,7 @@
 }
 const getHazmatFlowData = async () => {
   data.hloading = true
+  data.hazmatQueryParams.companyId = data.queryParams.companyId
   const res = await getRawFlow(data.hazmatQueryParams)
   if(res.code == 200){
     data.hazmatData =res.data.list.map(item => {
@@ -224,7 +270,7 @@
   }
 }
 const entryData = async () => {
-  const res = await getEntryData()
+  const res = await getEntryData(data.queryParams)
   if(res.code == 200){
     data.entryXData = res.data.map(item => item.month+'月' + item.day+'日')
     data.entryYData = res.data.map(item =>item.count)
@@ -233,8 +279,36 @@
     ElMessage.warning(res.message)
   }
 }
+const getCompanyList = async (val)=>{
+  if(val){
+    const queryParams = {
+      name: val
+    }
+    const res = await getCompany(queryParams)
+    if (res.code == 200) {
+      data.companyList = res.data.list
+    } else {
+      ElMessage.warning(res.message)
+    }
+  }else {
+    const queryParams = {
+      pageNum: 1,
+      pageSize: 10
+    }
+    const res = await getCompany(queryParams)
+    if (res.code == 200) {
+      data.companyList = res.data.list
+      if(data.queryParams.companyId == null){
+        data.queryParams.companyId = data.companyList[0].id
+      }
+
+    } else {
+      ElMessage.warning(res.message)
+    }
+  }
+}
 const useData = async () => {
-  const res = await getUseData()
+  const res = await getUseData(data.queryParams)
   if(res.code == 200){
     data.useXData = res.data.map(item => item.day+'日')
     data.useYData = res.data.map(item =>item.count)
@@ -244,7 +318,7 @@
   }
 }
 const maxUseData = async () => {
-  const res = await getMaxUseData()
+  const res = await getMaxUseData(data.queryParams)
   if(res.code == 200){
     data.maxUseList = res.data.map(item => {
       return{
@@ -304,6 +378,19 @@
   })
 }
 
+const getAllList = async () => {
+  await getHazmatFlowData()
+  await getHomeData()
+  await entryData()
+  await useData()
+  await maxUseData()
+  await getWarningData()
+}
+const reset = async () => {
+  data.queryParams.companyId = data.companyList[0].id
+  await getAllList()
+}
+
 const getBarChart = () => {
   if (myBarChart.value != null && myBarChart.value != "" && myBarChart.value != undefined) {
     myChart.value.dispose();

--
Gitblit v1.9.2