#
Junjie
2026-03-20 d62f97dabd206364220b74dfa0bb065d4e64dc7b
src/main/webapp/static/js/stationPathPolicy/stationPathPolicy.js
@@ -11,6 +11,9 @@
        s1MaxLenRatio: 1.15,
        s1MaxTurnDiff: 1,
        s2BusyWeight: 2.0,
        s2QueueWeight: 2.5,
        s2WaitWeight: 1.5,
        s2DeadlockWeight: 8.0,
        s2RunBlockWeight: 10.0,
        s2LoopLoadWeight: 12.0,
        stationPathLenWeightPercent: 50,
@@ -363,6 +366,17 @@
            }.bind(this))
            if (!hasDefault) {
                this.$message.warning('默认模板编码没有对应模板')
                return
            }
            var defaultProfile = null
            for (var i = 0; i < this.profiles.length; i++) {
                if (this.profiles[i].profileCode === this.defaultProfileCode) {
                    defaultProfile = this.profiles[i]
                    break
                }
            }
            if (!defaultProfile || Number(defaultProfile.status) !== 1) {
                this.$message.warning('默认模板必须启用')
                return
            }
            var payload = {
@@ -772,7 +786,7 @@
            var scaleX = usableWidth / contentWidth
            var scaleY = usableHeight / contentHeight
            var scale = Math.min(scaleX, scaleY, 1.7)
            var zoomPercent = Math.max(60, Math.min(220, Math.floor(scale * 100)))
            var zoomPercent = Math.max(1, Math.min(220, Math.floor(scale * 100)))
            var centerX = (bounds.minX + bounds.maxX) / 2
            var centerY = (bounds.minY + bounds.maxY) / 2
            this.mapZoomPercent = zoomPercent
@@ -818,7 +832,7 @@
            if (zoomPercent == null) {
                return
            }
            zoomPercent = Math.max(60, Math.min(220, zoomPercent))
            zoomPercent = Math.max(1, Math.min(220, zoomPercent))
            if (!wrap || !this.mapContext.width || !this.mapContext.height) {
                this.mapZoomPercent = zoomPercent
                return
@@ -847,19 +861,18 @@
            if (!this.mapContext.nodes.length) {
                return
            }
            if (event.ctrlKey || event.metaKey) {
                var wrap = this.$refs.mapCanvasWrap
                if (!wrap) {
                    return
                }
                var rect = wrap.getBoundingClientRect()
                var delta = event.deltaY < 0 ? 10 : -10
                var nextPercent = Math.max(60, Math.min(220, this.mapZoomPercent + delta))
                this.setMapZoomAroundPoint(nextPercent, event.clientX - rect.left, event.clientY - rect.top)
            var wrap = this.$refs.mapCanvasWrap
            if (!wrap) {
                return
            }
            this.mapPanX -= event.deltaX
            this.mapPanY -= event.deltaY
            var wheelDelta = Math.abs(event.deltaY) >= Math.abs(event.deltaX) ? event.deltaY : event.deltaX
            if (!wheelDelta) {
                return
            }
            var rect = wrap.getBoundingClientRect()
            var delta = wheelDelta < 0 ? 10 : -10
            var nextPercent = Math.max(1, Math.min(220, this.mapZoomPercent + delta))
            this.setMapZoomAroundPoint(nextPercent, event.clientX - rect.left, event.clientY - rect.top)
        },
        beginMapDrag: function (event) {
            var wrap = this.$refs.mapCanvasWrap