From 2722434125ecbf860b97f793b6711e7567647729 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期四, 02 四月 2026 14:12:37 +0800
Subject: [PATCH] 军泰伟业 1.军泰伟业-BI的生产核算分析不要了,增加生产订单当前工序
---
src/views/reportAnalysis/productionAnalysis/index.vue | 7 +--
src/views/reportAnalysis/productionAnalysis/components/center-bottom.vue | 82 ++++++++++++++++++++++++++++++++++++++---
src/views/reportAnalysis/productionAnalysis/components/center-center.vue | 2
3 files changed, 80 insertions(+), 11 deletions(-)
diff --git a/src/views/reportAnalysis/productionAnalysis/components/center-bottom.vue b/src/views/reportAnalysis/productionAnalysis/components/center-bottom.vue
index 46a870a..f24bf3b 100644
--- a/src/views/reportAnalysis/productionAnalysis/components/center-bottom.vue
+++ b/src/views/reportAnalysis/productionAnalysis/components/center-bottom.vue
@@ -16,6 +16,7 @@
<th>鐢熶骇璁㈠崟鍙�</th>
<th>浜у搧鍚嶇О</th>
<th>瑙勬牸</th>
+ <th>宸ュ簭</th>
<th>闇�姹傛暟閲�</th>
<th>瀹屾垚鏁伴噺</th>
<th>瀹屾垚杩涘害</th>
@@ -31,6 +32,20 @@
<td>{{ item.npsNo || '-' }}</td>
<td>{{ item.productCategory || '-' }}</td>
<td>{{ item.specificationModel || '-' }}</td>
+ <td>
+ <div class="work-order-circles">
+ <div
+ v-for="(workOrder, workOrderIndex) in item.productWorkOrders || []"
+ :key="workOrder.id || workOrderIndex"
+ class="work-order-circle"
+ :class="getWorkOrderColorClass(workOrder.color)"
+ :title="workOrder.processName || workOrder.workOrderNo"
+ >
+ {{ workOrder.processName ? workOrder.processName.substring(0, 2) : workOrderIndex + 1 }}
+ </div>
+ <span v-if="!item.productWorkOrders || item.productWorkOrders.length === 0">-</span>
+ </div>
+ </td>
<td>{{ item.quantity || 0 }}</td>
<td>{{ item.completeQuantity || 0 }}</td>
<td>
@@ -96,6 +111,16 @@
if (p < 50) return '#e6a23c'
if (p < 80) return '#409eff'
return '#67c23a'
+}
+
+const getWorkOrderColorClass = (color) => {
+ const colorMap = {
+ 1: 'gray',
+ 2: 'yellow',
+ 3: 'green',
+ 4: 'red',
+ }
+ return colorMap[color] || 'gray'
}
const setRowRef = (el, index) => {
@@ -245,6 +270,8 @@
display: flex;
flex-direction: column;
gap: 20px;
+ width: calc(100% + 550px);
+ margin-right: -550px;
}
.panel-item-customers {
@@ -252,6 +279,7 @@
padding: 18px;
width: 100%;
height: 428px;
+ box-sizing: border-box;
}
.progress-table-container {
@@ -295,27 +323,31 @@
}
.progress-table th:nth-child(1) {
- width: 15%;
+ width: 13%;
}
.progress-table th:nth-child(2) {
- width: 15%;
+ width: 14%;
}
.progress-table th:nth-child(3) {
- width: 15%;
+ width: 14%;
}
.progress-table th:nth-child(4) {
- width: 12%;
+ width: 18%;
}
.progress-table th:nth-child(5) {
- width: 12%;
+ width: 11%;
}
.progress-table th:nth-child(6) {
- width: 31%;
+ width: 11%;
+}
+
+.progress-table th:nth-child(7) {
+ width: 19%;
}
.progress-table td {
@@ -348,4 +380,42 @@
color: #b8c8e0;
font-size: 11px;
}
+
+.work-order-circles {
+ display: flex;
+ gap: 8px;
+ flex-wrap: wrap;
+ align-items: center;
+}
+
+.work-order-circle {
+ width: 32px;
+ height: 32px;
+ border-radius: 6px;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ font-size: 12px;
+ font-weight: 500;
+ color: #fff;
+ cursor: pointer;
+ transition: all 0.2s ease;
+}
+
+.work-order-circle.gray {
+ background-color: #909399;
+}
+
+.work-order-circle.yellow {
+ background-color: #e6a23c;
+}
+
+.work-order-circle.green {
+ background-color: #67c23a;
+}
+
+.work-order-circle.red {
+ background-color: #f56c6c;
+}
+
</style>
diff --git a/src/views/reportAnalysis/productionAnalysis/components/center-center.vue b/src/views/reportAnalysis/productionAnalysis/components/center-center.vue
index 973c68d..4747992 100644
--- a/src/views/reportAnalysis/productionAnalysis/components/center-center.vue
+++ b/src/views/reportAnalysis/productionAnalysis/components/center-center.vue
@@ -20,7 +20,7 @@
:xAxis="xAxis1"
:yAxis="yAxis1"
:options="{ backgroundColor: 'transparent', textStyle: { color: '#B8C8E0' } }"
- style="height: 260px"
+ style="height: 236px"
/>
</div>
</div>
diff --git a/src/views/reportAnalysis/productionAnalysis/index.vue b/src/views/reportAnalysis/productionAnalysis/index.vue
index e179150..e176bbf 100644
--- a/src/views/reportAnalysis/productionAnalysis/index.vue
+++ b/src/views/reportAnalysis/productionAnalysis/index.vue
@@ -36,7 +36,6 @@
<div class="right-panel">
<RightTop />
- <RightBottom />
</div>
</div>
</div>
@@ -49,7 +48,6 @@
import LeftBottom from './components/left-bottom.vue'
import CenterCenter from './components/center-center.vue'
import RightTop from './components/right-top.vue'
-import RightBottom from './components/right-bottom.vue'
import useUserStore from '@/store/modules/user'
import LeftTop from './components/left-top.vue'
import CenterTop from './components/center-top.vue'
@@ -269,7 +267,7 @@
}
/* 纭繚鍚勯潰鏉胯兘澶熸纭樉绀� */
-.left-panel, .center-panel, .right-panel {
+.left-panel, .right-panel {
overflow: hidden;
}
@@ -287,6 +285,7 @@
display: flex;
flex-direction: column;
gap: 20px;
+overflow: visible;
}
-</style>
\ No newline at end of file
+</style>
--
Gitblit v1.9.3