From e5aced11100ffd999b67dd0292cd5e9a662029d6 Mon Sep 17 00:00:00 2001
From: yyb <995253665@qq.com>
Date: 星期四, 30 四月 2026 13:17:21 +0800
Subject: [PATCH] 更新工序相关逻辑,改用部件类型字典 `product_process_type`,并调整界面显示和数据格式化以兼容新字段名
---
src/views/index.vue | 37 +++++++++++++++++++------------------
1 files changed, 19 insertions(+), 18 deletions(-)
diff --git a/src/views/index.vue b/src/views/index.vue
index 336c6a1..028dbf3 100644
--- a/src/views/index.vue
+++ b/src/views/index.vue
@@ -96,9 +96,10 @@
<div class="dashboard-row">
<div class="main-panel process-panel">
<div class="process-panel__header">
- <div class="section-title">宸ュ簭鏁版嵁鐢熶骇缁熻鏄庣粏</div>
+ <!-- <div class="section-title">宸ュ簭鏁版嵁鐢熶骇缁熻鏄庣粏</div> -->
+ <div class="section-title">浜у搧閮ㄤ欢缁熻</div>
<div style="display: flex; gap: 10px; align-items: center;">
- <el-button type="primary" size="small" plain icon="Filter" @click="openProcessDialog">閫夋嫨宸ュ簭</el-button>
+ <el-button type="primary" size="small" plain icon="Filter" @click="openProcessDialog">閫夋嫨閮ㄤ欢绫诲瀷</el-button>
<el-button type="info" size="small" plain icon="Refresh" @click="resetProcessFilter">閲嶇疆</el-button>
<el-radio-group v-model="processRange" size="small" @change="refreshProcessStats">
<el-radio-button :value="1">鏃�</el-radio-button>
@@ -151,7 +152,7 @@
</div>
<!-- 宸ュ簭閫夋嫨寮圭獥 -->
- <el-dialog v-model="processDialogVisible" title="閫夋嫨宸ュ簭" width="500px" append-to-body>
+ <el-dialog v-model="processDialogVisible" title="閫夋嫨閮ㄤ欢" width="500px" append-to-body>
<div class="process-selection-wrapper">
<el-checkbox-group v-model="tempProcessIds">
<div class="process-grid">
@@ -245,7 +246,7 @@
</template>
<script setup>
-import { ref, onMounted, computed, reactive } from 'vue'
+import { ref, onMounted, computed, reactive, getCurrentInstance } from 'vue'
import Echarts from "@/components/Echarts/echarts.vue";
import * as echarts from 'echarts';
import useUserStore from "@/store/modules/user.js";
@@ -257,12 +258,21 @@
statisticsReceivablePayable,
qualityInspectionStatistics
} from "@/api/viewIndex.js";
-import { list } from '@/api/productionManagement/productionProcess';
const userStore = useUserStore()
-const processOptions = ref([])
+const { proxy } = getCurrentInstance()
+const { product_process_type } = proxy.useDict('product_process_type')
+
+// 宸ュ簭閫夋嫨寮圭獥锛氫娇鐢ㄥ瓧鍏� product_process_type
+// 瀛楀吀瀛楁锛歭abel / value锛岀粍浠舵湡鏈涘瓧娈碉細name / id
+const processOptions = computed(() => {
+ return (product_process_type?.value || []).map(item => ({
+ id: item.value,
+ name: item.label
+ }))
+})
const selectedProcessIds = ref([])
const tempProcessIds = ref([])
const processDialogVisible = ref(false)
@@ -449,7 +459,6 @@
statisticsReceivable()
qualityStatisticsInfo()
getAmountHalfYearNum()
- getProcessList()
})
// 鏁版嵁缁熻
const getBusinessData = () => {
@@ -476,13 +485,6 @@
todoList.value = res.data
})
}
-// 鑾峰彇宸ュ簭鍒楄〃
-const getProcessList = () => {
- list().then(res => {
- processOptions.value = res.data
- })
-}
-
const openProcessDialog = () => {
tempProcessIds.value = [...selectedProcessIds.value]
processDialogVisible.value = true
@@ -552,7 +554,7 @@
{
name: '寮�绁�',
type: 'line',
- data: receiptAmount,
+ data: invoiceAmount,
stack: 'Total',
areaStyle: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
@@ -581,7 +583,7 @@
{
name: '鍥炴',
type: 'line',
- data: invoiceAmount,
+ data: receiptAmount,
stack: 'Total',
lineStyle: {
width: 0
@@ -702,7 +704,7 @@
const refreshProcessStats = () => {
processDataProductionStatistics({
type: processRange.value,
- processIds: selectedProcessIds.value.length > 0 ? selectedProcessIds.value.join(',') : null
+ processTypes: selectedProcessIds.value.length > 0 ? selectedProcessIds.value.join(',') : null
}).then(res => {
processChartData.value = res.data.map(item => ({
name: item.processName,
@@ -728,7 +730,6 @@
<style scoped>
.dashboard {
- background: #f5f7fa;
min-height: 100vh;
padding: 20px;
box-sizing: border-box;
--
Gitblit v1.9.3