From e66293b4dc2c7c5efe9f8a263344c7b7a85a846e Mon Sep 17 00:00:00 2001 From: Zhao Zhao Shen Date: Tue, 4 Mar 2025 11:12:54 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=82=B9=E6=A3=80=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 24 +-- package.json | 4 +- src/api/inspection.js | 8 + src/components/ProcessGanttChart.vue | 4 +- src/views/Dashboard/index.vue | 14 +- src/views/Inspection/index.vue | 303 +++++++++++++++++++-------- src/views/layout/vueLayout.vue | 42 +++- 7 files changed, 282 insertions(+), 117 deletions(-) diff --git a/package-lock.json b/package-lock.json index 5fb87b6..8ba26c6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,9 +8,9 @@ "name": "ix-siemens", "version": "0.1.0", "dependencies": { - "@siemens/ix": "^2.5.0", + "@siemens/ix": "^2.7.0", "@siemens/ix-icons": "^2.2.0", - "@siemens/ix-vue": "^2.5.0", + "@siemens/ix-vue": "^2.7.0", "axios": "^1.7.9", "core-js": "^3.8.3", "echarts": "^5.6.0", @@ -2093,15 +2093,14 @@ "dev": true }, "node_modules/@siemens/ix": { - "version": "2.5.0", - "resolved": "https://registry.npmmirror.com/@siemens/ix/-/ix-2.5.0.tgz", - "integrity": "sha512-ms3B6rKJEN/VAEn55qoMcc91eK+7v0VRZs3eQGkxLt4nKUKVrhfBMz55Npx7KHug5cA+VIHdSEha5SdH8utd0w==", + "version": "2.7.0", + "resolved": "https://registry.npmmirror.com/@siemens/ix/-/ix-2.7.0.tgz", + "integrity": "sha512-JyHF4PEAdOdJqvjXPMBDWsOShsa7A6RZkPklrn91lL/h12XnqgBCWrXLQfDd+7U+4wxQYynLMoUkvvtZdVaHSA==", "dependencies": { "@floating-ui/dom": "^1.6.10", "@stencil/core": "~4.17.0", "@types/luxon": "^3.3.7", "animejs": "~3.2.1", - "hyperlist": "^1.0.0", "luxon": "^3.4.4" }, "peerDependencies": { @@ -2123,11 +2122,11 @@ } }, "node_modules/@siemens/ix-vue": { - "version": "2.5.0", - "resolved": "https://registry.npmmirror.com/@siemens/ix-vue/-/ix-vue-2.5.0.tgz", - "integrity": "sha512-pApnMwHlIo+mATu5cFjE5V9Wb/mpRLvIjCyvZQAqvR6wDugSSatwKXfZK4jBmoyXJha0n8hPrd+1qiKRhBb8/g==", + "version": "2.7.0", + "resolved": "https://registry.npmmirror.com/@siemens/ix-vue/-/ix-vue-2.7.0.tgz", + "integrity": "sha512-f1t1Ux1vIdGr1318e3wz24rNxya1sPUgj0AOURWyxN2l4/dKuPJw/Ltb37sZn45U8EMk8fgXxt6SbjNjMBRk5w==", "dependencies": { - "@siemens/ix": "~2.5.0" + "@siemens/ix": "~2.7.0" }, "peerDependencies": { "@siemens/ix-icons": "^2.0.0", @@ -7032,11 +7031,6 @@ "node": ">=10.17.0" } }, - "node_modules/hyperlist": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/hyperlist/-/hyperlist-1.0.0.tgz", - "integrity": "sha512-1qAjO29EJW/mPyqY+9wFjruD2YWur1dPsPYmt9RvMX6P+8Cr2UmT75MCWjjK+1/4Jxc3sm/G3Kr8DzGgEDRG+Q==" - }, "node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.4.24.tgz", diff --git a/package.json b/package.json index 91b3194..ef09525 100644 --- a/package.json +++ b/package.json @@ -8,9 +8,9 @@ "lint": "vue-cli-service lint" }, "dependencies": { - "@siemens/ix": "^2.5.0", + "@siemens/ix": "^2.7.0", "@siemens/ix-icons": "^2.2.0", - "@siemens/ix-vue": "^2.5.0", + "@siemens/ix-vue": "^2.7.0", "axios": "^1.7.9", "core-js": "^3.8.3", "echarts": "^5.6.0", diff --git a/src/api/inspection.js b/src/api/inspection.js index dde312f..e9d6ab8 100644 --- a/src/api/inspection.js +++ b/src/api/inspection.js @@ -14,4 +14,12 @@ export function getInspectionData(deviceId, inputTime) { url: `/Check/sharp?deviceId=${deviceId}&inputTime=${inputTime}`, method: 'get' }); +} + +// 获取点检页面参数 +export function getCheckParas(deviceId, inputTime) { + return request({ + url: `/Check/CheckParas?deviceId=${deviceId}&inputTime=${inputTime}`, + method: 'get' + }); } \ No newline at end of file diff --git a/src/components/ProcessGanttChart.vue b/src/components/ProcessGanttChart.vue index f7773aa..eb71bf9 100644 --- a/src/components/ProcessGanttChart.vue +++ b/src/components/ProcessGanttChart.vue @@ -146,8 +146,10 @@ const mapDataToTimeline = (data, startTime, endTime) => { const adjustedDuration = adjustedEndTime.getTime() - adjustedBeginTime.getTime(); return { id: item.id, - stopReason: item.stopReason, name: 'Process', + stopReason: item.stopReason, + blendStatus: item.blendStatus, + capacity: item.capacity, value: adjustedDuration, deviceStatus: item.deviceStatus, mixerStep: item.mixerStep, diff --git a/src/views/Dashboard/index.vue b/src/views/Dashboard/index.vue index adc6c7d..df30fee 100644 --- a/src/views/Dashboard/index.vue +++ b/src/views/Dashboard/index.vue @@ -240,7 +240,7 @@
- 当前配方: + 当前步骤: 果汁配方
@@ -303,8 +303,8 @@ 开始时间:{{ startTimeFormatted }} 结束时间:{{ endTimeFormatted }} 持续时长:{{ duration }} - 调配状态:{{ currentStatus }} - 罐重:{{ currentStatus }} + 调配状态:{{ blendStatus }} + 罐重:{{ capacity }}
@@ -386,6 +386,8 @@ const duration = ref(''); const productFlowRate = ref(''); const formula = ref(''); const mixerStep = ref(''); // 增加 step 字段 +const blendStatus = ref(''); +const capacity = ref(''); const currentRange = ref('all'); // 增加 currentRange 响应式变量 const ganttChart = ref(null); // 增加 ganttChart 引用 @@ -418,6 +420,8 @@ const updateCurrentInfo = (segment) => { formula.value = segment.formula; mixerStep.value = segment.mixerStep; // 更新 step 字段 selectedReason.value = segment.stopReason || ''; + blendStatus.value = segment.blendStatus; + capacity.value = segment.capacity; }; const handleSegmentClick = (segment) => { @@ -625,7 +629,9 @@ const processGanttDataResponse = (response) => { productFlowRate: item.productFlowRate, formula: item.formula, lineId: item.lineId, - stopReason: item.stopReason + stopReason: item.stopReason, + blendStatus: item.blendStatus, + capacity: item.capacity })); processData.value = ganttData; diff --git a/src/views/Inspection/index.vue b/src/views/Inspection/index.vue index 229b64e..96de89c 100644 --- a/src/views/Inspection/index.vue +++ b/src/views/Inspection/index.vue @@ -2,11 +2,21 @@
- - - - 查询 - 导出全部 + + + + + + + + + + + + + 查询 + 导出全部
灌注机 @@ -18,34 +28,36 @@
- +
- + 确认
- +
点检项目 单位 参考值 当前值 - + {{ hour }}
- +
{{ item.label }} - -- - {{ item.reference }} + {{ item.unit || '--' }} + {{ item.reference || '--' }} {{ item.current }} {{ item.data[hour] || '--' }} @@ -55,28 +67,32 @@
- +
diff --git a/src/views/layout/vueLayout.vue b/src/views/layout/vueLayout.vue index e39cb92..fa255c6 100644 --- a/src/views/layout/vueLayout.vue +++ b/src/views/layout/vueLayout.vue @@ -14,9 +14,11 @@ - + +
+
@@ -124,6 +126,10 @@ const handleDataFromChild = (data) => { appName.value = data; }; +const closeDatetimePicker = () => { + showDatetimePicker.value = false; +}; + onMounted(() => { updateTime(); const interval = setInterval(() => { @@ -221,14 +227,34 @@ ix-application { /* 让内容区域填充剩余空间 */ } +.overlay { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: rgba(0, 0, 0, 0.5); + z-index: 999; +} + .datetime-picker-container { position: absolute; top: 4rem; - /* 确保在头部下方 */ right: 1rem; - /* 靠右对齐 */ z-index: 1000; - /* 确保在最上层 */ + background: #23233C; + padding: 1rem; + border-radius: 0.5rem; +} + +.close-button { + margin-top: 1rem; + background: #23233C; + color: skyblue; + /* border: none; */ + padding: 0.5rem 1rem; + border-radius: 0.25rem; + cursor: pointer; } :deep(ix-datetime-picker){ @@ -244,7 +270,7 @@ ix-application { } .mainContent { - padding: 0; + padding: 0 !important; margin: 0; display: flex; flex-direction: column; @@ -254,6 +280,10 @@ ix-application { overflow-x: auto; } +/* :deep(.mainContent .content){ + padding: 0; +} */ + :global(.visible) { --theme-modal--background:#23233C !important; --theme-color-ghost--selected:#23233C !important; @@ -264,6 +294,6 @@ ix-application { } :deep(:host .AppEntry.Selected){ - border:none !important; + border:none !重要; } \ No newline at end of file