From f2593d3cf80998a831d07cc94ac49e4f51b04429 Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: 星期二, 15 四月 2025 16:07:28 +0800
Subject: [PATCH] 接口对接

---
 src/views/firework/humiture/index.vue |  167 ++++++++++++++++---------------------------------------
 1 files changed, 50 insertions(+), 117 deletions(-)

diff --git a/src/views/firework/humiture/index.vue b/src/views/firework/humiture/index.vue
index dcb763b..01a985c 100644
--- a/src/views/firework/humiture/index.vue
+++ b/src/views/firework/humiture/index.vue
@@ -5,17 +5,13 @@
     <div style="margin-top: 10px">
       <el-table v-loading="loading" :data="state.tableList" :border="true">
         <el-table-column label="序号" type="index" align="center" width="80" />
-        <el-table-column label="仓库" prop="createTime" align="center"  />
-        <el-table-column label="库房" prop="basicName" align="center" />
-        <el-table-column label="温度值" prop="tabooBasicName" align="center" />
-        <el-table-column label="同步时间" prop="updateBy" align="center" />
-        <el-table-column label="湿度值" prop="tabooBasicName" align="center" />
-        <el-table-column label="同步时间" prop="updateBy" align="center" />
+        <el-table-column label="仓库" prop="storeName" align="center"  />
+        <el-table-column label="库房" prop="storeroomName" align="center" />
       </el-table>
       <pagination
           v-show="total > 0"
           :total="total"
-          v-model:page="queryParams.pageNum"
+          v-model:page="queryParams.pageIndex"
           v-model:limit="queryParams.pageSize"
           @pagination="getListAll"
       />
@@ -24,20 +20,20 @@
     <el-scrollbar max-height="420px" style="padding-right: 10px;overflow-x: hidden;" v-if="state.dataList && state.dataList.length >0">
 <!--      <el-row :gutter="20" style="margin-top: 5px;margin-left: 5px">-->
 <!--        <el-col v-for="(item,index) in state.dataList" :key="index" :span="8">-->
-      <div style="display: flex;align-items: center;flex-wrap: wrap">
-        <div v-for="(item,index) in state.dataList" :key="index" style="width: 350px;margin: 20px 30px">
+      <div class="grid-container">
+        <div v-for="(item,index) in state.dataList" :key="index" style="width: 365px;margin: 20px 30px">
           <el-card class="card-item " shadow="always">
             <div style="display: flex;flex-direction: column">
-              <div style="font-size: 18px;font-weight: 700;margin-bottom: 15px">{{item.room}}—{{item.stock}}—{{item.device}}</div>
-              <div style="display: flex;align-items: center">
+              <div style="font-size: 18px;font-weight: 700;margin-bottom: 25px">{{item.storeName}}—{{item.storeroomName}}—{{item.deviceName}}</div>
+              <div style="display: flex;align-items: center;margin-bottom: 15px">
                 <img src="@/assets/images/device.png" />
                 <div style="display: flex;flex-direction: column">
-                  <div style="display: flex;justify-content: space-between;margin-bottom: 10px">
-                    <span>温度:{{item.warm}}</span>
+                  <div style="display: flex;justify-content: space-between;margin-bottom: 10px;align-items: center">
+                    <span>温度:{{item.temperatureValue}}℃</span>
                     <el-button type="primary" plain style="margin-left: 15px" @click="openData('温度',item)">历史数据</el-button>
                   </div>
-                  <div style="display: flex;justify-content: space-between">
-                    <span>湿度:{{item.humidity}}</span>
+                  <div style="display: flex;justify-content: space-between;align-items: center">
+                    <span>湿度:{{item.humidityValue}}%RH</span>
                     <el-button type="primary" plain style="margin-left: 15px" @click="openData('湿度',item)">历史数据</el-button>
                   </div>
                 </div>
@@ -50,7 +46,7 @@
 <!--        </el-col>-->
 <!--      </el-row>-->
     </el-scrollbar>
-    <el-empty v-else></el-empty>
+    <el-empty v-else description="暂无设备数据" ></el-empty>
     <d-dialog ref="dialogRef" @getList="getListAll"></d-dialog>
   </div>
 </template>
@@ -59,86 +55,56 @@
 import {onMounted, reactive, ref, toRefs} from "vue";
 import {ElMessage} from "element-plus";
 import dDialog from './components/dataDialog.vue'
+import {getDevice, getRoomByCompany} from "@/api/company/warehouse";
+import Cookies from "js-cookie";
 
 const dialogRef = ref(null)
 const state = reactive({
   queryParams: {
-    pageNum: 1,
+    pageIndex: 1,
     pageSize: 5,
-    warningType: ''
+    filter: {
+      companyName: ''
+    }
   },
   cardQueryParams: {
-    warningType: ''
+    pageIndex: 1,
+    pageSize: 5,
+    filter: {
+      companyCode : ''
+    }
   },
   total: 0,
-  dataList: [
-    {
-      id: 1,
-      room: '仓库名称',
-      stock: '库存名称',
-      device: '设备1',
-      humidity: '18%RH',
-      warm: '18°'
-    },
-    {
-      id: 1,
-      room: '仓库名称',
-      stock: '库存名称',
-      device: '设备1',
-      humidity: '18%RH',
-      warm: '18°'
-    },
-    {
-      id: 1,
-      room: '仓库名称',
-      stock: '库存名称',
-      device: '设备1',
-      humidity: '18%RH',
-      warm: '18°'
-    },
-    {
-      id: 1,
-      room: '仓库名称',
-      stock: '库存名称',
-      device: '设备1',
-      humidity: '18%RH',
-      warm: '18°'
-    },
-    {
-      id: 1,
-      room: '仓库名称',
-      stock: '库存名称',
-      device: '设备1',
-      humidity: '18%RH',
-      warm: '18°'
-    },
-  ],
+  dataList: [],
   tableList: []
 });
 const { queryParams,cardQueryParams, total, dataList } = toRefs(state);
 const loading = ref(false);
 onMounted(()=>{
+  const info = JSON.parse(Cookies.get('userInfo'))
+  state.queryParams.filter.companyName = info.company
+  state.cardQueryParams.filter.companyCode = info.companynumber
   getListPage()
   getList()
 })
 const getListPage = async () => {
-  // loading.value = true
-  // const res = await getAvoidInfoPage(state.queryParams)
-  // if(res.code == 200){
-  //   state.tableList = res.data.list
-  //   state.total = res.data.total
-  // }else{
-  //   ElMessage.warning(res.message)
-  // }
-  // loading.value = false
+  loading.value = true
+  const res = await getRoomByCompany(state.queryParams)
+  if(res.code == 200){
+    state.tableList = res.result.records
+    state.total = res.result.total
+  }else{
+    ElMessage.warning(res.message)
+  }
+  loading.value = false
 }
 const getList = async () => {
-  // const res = await getAvoidList(state.cardQueryParams)
-  // if(res.code == 200){
-  //   state.dataList = res.data
-  // }else{
-  //   ElMessage.warning(res.message)
-  // }
+  const res = await getDevice(state.cardQueryParams)
+  if(res.code == 200){
+    state.dataList = res.result
+  }else{
+    ElMessage.warning(res.message)
+  }
 }
 const openData = (type,val) => {
   dialogRef.value.openDialog(type,val);
@@ -159,6 +125,14 @@
     margin-bottom: 10px;
     //min-width: 300px;
   }
+  .grid-container{
+    display: grid;
+    grid-template-columns: repeat(auto-fill, minmax(385px, 1fr));
+    gap: 0px;
+    justify-content: start;
+    padding: 15px;
+    background: #f7f7f7;
+  }
   .title-font{
     display:flex;
     align-items: center;
@@ -166,47 +140,6 @@
     font-size: 14px;
     margin-right: 10px;
     border-radius: 5px
-  }
-  .card-item-red{
-    cursor: pointer;
-    color: #f56c6c;
-    background-color: rgb(254, 240.3, 240.3);
-    border: 1px solid rgb(253, 225.6, 225.6);
-  }
-  .card-item-red-title{
-    cursor: pointer;
-    color: #f56c6c;
-    background-color: rgb(254, 240.3, 240.3);
-    border: 1px solid rgb(253, 225.6, 225.6);
-  }
-  .card-item-red-titleChoose{
-    color: #f6d1d1;
-    background-color: #f55d5d;
-  }
-  .card-item-yellow{
-    color: #e6a23c;
-    background-color: rgb(252.5, 245.7, 235.5);
-    border: 1px solid rgb(250, 236.4, 216);
-  }
-  .card-item-yellow-title{
-    cursor: pointer;
-    color: #f1950b;
-    background-color: rgb(252.5, 245.7, 235.5);
-    border: 1px solid rgb(250, 236.4, 216);
-  }
-  .card-item-yellow-titleChoose{
-    color: #f6e7d1;
-    background-color: #f1a902;
-  }
-  .card-item-blue-title{
-    cursor: pointer;
-    color: #409eff;
-    background-color: rgb(235.9, 245.3, 255);
-    border: 1px solid rgb(216.8, 235.6, 255);
-  }
-  .card-item-blue-titleChoose{
-    color: #d7e6f6;
-    background-color: #2da0ef;
   }
   :deep(.is-horizontal) {
     height: 0;

--
Gitblit v1.9.2