diff --git a/klp-ui/src/views/wms/coil/abnormal/extend.vue b/klp-ui/src/views/wms/coil/abnormal/extend.vue index d314edf3..13c9cefa 100644 --- a/klp-ui/src/views/wms/coil/abnormal/extend.vue +++ b/klp-ui/src/views/wms/coil/abnormal/extend.vue @@ -73,7 +73,7 @@ 异常管理 - 继承 @@ -95,7 +95,7 @@ @pagination="getCoilList" /> - +
订货单位
-
{{ content.orderUnit || '' }}
+
{{ orderUnitDisplay }}
合同号
@@ -181,13 +181,14 @@ export default { materialWithManufacturer() { return this.content.material }, + orderUnitDisplay() { + return (this.content.orderUnit || '').replace(/有限公司/g, '') + }, orderUnitFontSize() { - const len = (this.content.orderUnit || '').length + const len = this.orderUnitDisplay.length if (len < 10) return '1.2em' - if (len <= 14) return '1em' - if (len <= 18) return '0.88em' - if (len <= 24) return '0.78em' - return '0.68em' + const size = Math.max(0.55, 12 / len).toFixed(2) + return size + 'em' } }, data() { diff --git a/klp-ui/src/views/wms/coil/panels/LabelRender/GalvanizedTag.vue b/klp-ui/src/views/wms/coil/panels/LabelRender/GalvanizedTag.vue index 46e9d99c..00ada584 100644 --- a/klp-ui/src/views/wms/coil/panels/LabelRender/GalvanizedTag.vue +++ b/klp-ui/src/views/wms/coil/panels/LabelRender/GalvanizedTag.vue @@ -20,7 +20,7 @@
订货单位
-
{{ content.orderUnit || '' }}
+
{{ orderUnitDisplay }}
合同号
@@ -182,13 +182,14 @@ export default { materialWithManufacturer() { return this.content.material }, + orderUnitDisplay() { + return (this.content.orderUnit || '').replace(/有限公司/g, '') + }, orderUnitFontSize() { - const len = (this.content.orderUnit || '').length + const len = this.orderUnitDisplay.length if (len < 10) return '1.2em' - if (len <= 14) return '1em' - if (len <= 18) return '0.88em' - if (len <= 24) return '0.78em' - return '0.68em' + const size = Math.max(0.55, 12 / len).toFixed(2) + return size + 'em' } }, data() { diff --git a/klp-ui/src/views/wms/coil/panels/LabelRender/OuterTagPreview.vue b/klp-ui/src/views/wms/coil/panels/LabelRender/OuterTagPreview.vue index 443d07b0..a5c5989f 100644 --- a/klp-ui/src/views/wms/coil/panels/LabelRender/OuterTagPreview.vue +++ b/klp-ui/src/views/wms/coil/panels/LabelRender/OuterTagPreview.vue @@ -19,7 +19,7 @@
订货单位
-
{{ content.orderUnit || '' }}
+
{{ orderUnitDisplay }}
合同号
@@ -188,13 +188,14 @@ export default { materialWithManufacturer() { return this.content.material }, + orderUnitDisplay() { + return (this.content.orderUnit || '').replace(/有限公司/g, '') + }, orderUnitFontSize() { - const len = (this.content.orderUnit || '').length + const len = this.orderUnitDisplay.length if (len < 10) return '1.2em' - if (len <= 14) return '1em' - if (len <= 18) return '0.88em' - if (len <= 24) return '0.78em' - return '0.68em' + const size = Math.max(0.55, 12 / len).toFixed(2) + return size + 'em' } }, data() { diff --git a/klp-ui/src/views/wms/coil/panels/base.vue b/klp-ui/src/views/wms/coil/panels/base.vue index e7912ac8..e3e4d6b3 100644 --- a/klp-ui/src/views/wms/coil/panels/base.vue +++ b/klp-ui/src/views/wms/coil/panels/base.vue @@ -78,6 +78,11 @@ clearable /> + + + + 全部 @@ -220,11 +225,11 @@ + - - + diff --git a/klp-ui/src/views/wms/post/flow.vue b/klp-ui/src/views/wms/post/flow.vue index cfc16518..1c4d9558 100644 --- a/klp-ui/src/views/wms/post/flow.vue +++ b/klp-ui/src/views/wms/post/flow.vue @@ -14,7 +14,7 @@
-
+
@@ -120,8 +120,16 @@ export default { { key: 'afterSales', label: '售后处理流程', icon: 'el-icon-s-claim' }, ], svgCache: {}, + selectedNode: null, } }, + watch: { + currentSvg() { + this.$nextTick(() => { + this.bindNodeEvents() + }) + }, + }, computed: { currentSvg() { const code = diagrams[this.activeTab] @@ -140,6 +148,38 @@ export default { methods: { switchTab(key) { this.activeTab = key + this.selectedNode = null + }, + bindNodeEvents() { + const el = this.$refs.diagram + if (!el) return + const svg = el.querySelector('svg') + if (!svg) return + const groups = svg.querySelectorAll('g:not([class*="edge"])') + groups.forEach(g => { + const hasRect = g.querySelector('rect, path, ellipse, polygon') + const text = g.querySelector('text, span') + if (hasRect && text) { + g.style.cursor = 'pointer' + } + }) + }, + onNodeClick(e) { + let target = e.target + while (target && target !== e.currentTarget) { + if (target.tagName === 'g') { + const textEl = target.querySelector('text, span') + if (textEl) { + const label = textEl.textContent.replace(/\s+/g, ' ').trim() + if (label) { + this.selectedNode = label + this.$message({ message: label, type: 'info', duration: 1500 }) + return + } + } + } + target = target.parentElement + } }, }, } @@ -203,4 +243,12 @@ export default { max-width: 100%; height: auto; } + +.flow-diagram :deep(svg g) { + transition: opacity 0.15s ease; +} + +.flow-diagram :deep(svg g:hover) { + opacity: 0.8; +}