From 04ecdbfb7be63ca4a3d49d3575847e728e3e9ae7 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期五, 27 三月 2026 17:44:13 +0800
Subject: [PATCH] fix:1.耗材选择产品优化

---
 src/views/index.vue |   94 +++++++++++++++++++++++++++++++----------------
 1 files changed, 62 insertions(+), 32 deletions(-)

diff --git a/src/views/index.vue b/src/views/index.vue
index bf488c5..c6b4f89 100644
--- a/src/views/index.vue
+++ b/src/views/index.vue
@@ -47,6 +47,22 @@
         </div>
       </div>
 
+      <div class="top-middle2">
+        <div class="data-card consumables">
+          <div class="data-title">鑰楁潗鏁版嵁</div>
+          <div class="data-num">
+            <div>
+              <div class="data-desc">褰撳墠鑰楁潗鎬婚噺/浠�</div>
+              <div class="data-value">{{ businessInfo.consumablesQuantityTotal || 0 }}</div>
+            </div>
+            <div>
+              <div class="data-desc">浠婃棩鑰楁潗鍏ュ簱/浠�</div>
+              <div class="data-value">{{ businessInfo.consumablesTodayNum || 0 }}</div>
+            </div>
+          </div>
+        </div>
+      </div>
+
       <div class="top-right">
         <div class="todo-panel">
           <div class="section-title">寰呭姙浜嬮」</div>
@@ -158,9 +174,9 @@
           </el-radio-group>
         </div>
         <div class="quality-cards">
-          <div class="quality-card one">鍘熸潗鏂欏凡妫�娴嬫暟 <span>{{ qualityStatisticsObject.supplierNum }}浠�</span></div>
-          <div class="quality-card two">杩囩▼妫�楠屾暟閲� <span>{{ qualityStatisticsObject.processNum }}浠�</span></div>
-          <div class="quality-card three">鍑哄巶宸叉鏁伴噺 <span>{{ qualityStatisticsObject.factoryNum }}浠�</span></div>
+          <div class="quality-card one">鍏ュ巶妫�娴嬫暟 <span>{{ qualityStatisticsObject.supplierNum }}浠�</span></div>
+          <div class="quality-card two">杞﹂棿妫�娴嬫暟 <span>{{ qualityStatisticsObject.processNum }}浠�</span></div>
+          <div class="quality-card three">鍑哄巶妫�鏁� <span>{{ qualityStatisticsObject.factoryNum }}浠�</span></div>
         </div>
         <Echarts ref="chart" :chartStyle="chartStyle" :grid="grid" :legend="barLegend" :series="barSeries1"
           :tooltip="tooltip" :xAxis="xAxis1" :yAxis="yAxis1" style="height: 260px"></Echarts>
@@ -195,11 +211,13 @@
 
 const businessInfo = ref({
   inventoryNum: 0,
+  consumablesQuantityTotal: 0,
   monthPurchaseHaveMoney: 0,
   monthPurchaseMoney: 0,
   monthSaleHaveMoney: 0,
   monthSaleMoney: 0,
   todayInventoryNum: 0,
+  consumablesTodayNum: 0,
 })
 const qualityStatisticsObject = ref({
   supplierNum: 0,
@@ -225,7 +243,7 @@
 
 const barSeries1 = ref([
   {
-    name: '鍘熸潗鏂欎笉鍚堟牸鏁�',
+    name: '鍏ュ巶涓嶅悎鏍兼暟',
     type: 'bar',
     barGap: 0,
     emphasis: {
@@ -234,7 +252,7 @@
     data: []
   },
   {
-    name: '杩囩▼涓嶅悎鏍兼暟',
+    name: '杞﹂棿涓嶅悎鏍兼暟',
     type: 'bar',
     emphasis: {
       focus: 'series'
@@ -266,7 +284,7 @@
 }
 const barLegend = {
   show: true,
-  data: ['鍘熸潗鏂欎笉鍚堟牸鏁�', '杩囩▼涓嶅悎鏍兼暟', '鍑哄巶涓嶅悎鏍兼暟']
+  data: ['鍏ュ巶涓嶅悎鏍兼暟', '杞﹂棿涓嶅悎鏍兼暟', '鍑哄巶涓嶅悎鏍兼暟']
 }
 const barLegend1 = {
   show: true,
@@ -294,9 +312,9 @@
   type: 'category',
   data: ['搴斾粯璐︽', '搴旀敹璐︽',]
 }]
-const yAxis1 = [{
+const yAxis1 = ref([{
   type: 'value'
-}]
+}])
 const pieTooltip = reactive({
   trigger: 'item',
   formatter: function (params) {
@@ -375,6 +393,7 @@
   qualityStatisticsInfo()
   getAmountHalfYearNum()
   getProcessList()
+  refreshProcessStats()
 })
 // 鏁版嵁缁熻
 const getBusinessData = () => {
@@ -443,21 +462,30 @@
 }
 // 璐ㄦ缁熻
 const qualityStatisticsInfo = () => {
-  qualityInspectionStatistics({ type: qualityRange.value }).then((res) => {
-    xAxis1.value[0].data = []
-    barSeries1.value[0].data = []
-    barSeries1.value[1].data = []
-    barSeries1.value[2].data = []
-    res.data.item.forEach(item => {
-      xAxis1.value[0].data.push(item.date)
-      barSeries1.value[0].data.push(item.supplierNum)
-      barSeries1.value[1].data.push(item.processNum)
-      barSeries1.value[2].data.push(item.factoryNum)
-    })
-    qualityStatisticsObject.value.supplierNum = res.data.supplierNum
-    qualityStatisticsObject.value.processNum = res.data.processNum
-    qualityStatisticsObject.value.factoryNum = res.data.factoryNum
-  })
+  qualityInspectionStatistics({ type: qualityRange.value })
+      .then((res) => {
+        const list = res?.data?.rawItem || []
+        const dates = []
+        const supplierNums = []
+        const processNums = []
+        const factoryNums = []
+        list.forEach((item) => {
+          dates.push(item.date)
+          supplierNums.push(item.supplierNum)
+          processNums.push(item.processNum)
+          factoryNums.push(item.factoryNum)
+        })
+        xAxis1.value[0].data = dates
+        barSeries1.value[0].data = supplierNums
+        barSeries1.value[1].data = processNums
+        barSeries1.value[2].data = factoryNums
+        qualityStatisticsObject.value.supplierNum = res?.data?.supplierNum || 0
+        qualityStatisticsObject.value.processNum = res?.data?.processNum || 0
+        qualityStatisticsObject.value.factoryNum = res?.data?.factoryNum || 0
+      })
+      .catch((err) => {
+        console.error("璇锋眰鍑洪敊锛�", err)
+      })
 }
 const getAmountHalfYearNum = async () => {
   const res = await getAmountHalfYear()
@@ -640,15 +668,7 @@
   })
 }
 
-onMounted(() => {
-  getBusinessData()
-  analysisCustomer()
-  todoInfoS()
-  statisticsReceivable()
-  qualityStatisticsInfo()
-  getAmountHalfYearNum()
-  refreshProcessStats()
-})
+
 </script>
 
 <style scoped>
@@ -806,6 +826,10 @@
   background-repeat: no-repeat;
 }
 
+.data-card.consumables {
+  background: linear-gradient(135deg, #f59e0b 0%, #f97316 100%);
+}
+
 .data-desc {
   font-weight: 500;
   font-size: 16px;
@@ -821,9 +845,15 @@
 
 .top-left,
 .top-middle,
+.top-middle2,
 .top-right {
   flex: 1;
   display: flex;
+  min-width: 0;
+}
+
+.dashboard-top {
+  gap: 12px;
 }
 
 .todo-panel {

--
Gitblit v1.9.3