From 7c32ab19d3bf4c601212314a1617bbb51c5fdd2a Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期五, 29 三月 2024 16:01:36 +0800 Subject: [PATCH] # --- zy-asrs-flow/src/pages/map/utils.js | 42 ++++++++++++++++++++++++++++++++++++++---- 1 files changed, 38 insertions(+), 4 deletions(-) diff --git a/zy-asrs-flow/src/pages/map/utils.js b/zy-asrs-flow/src/pages/map/utils.js index 229b0b6..b85af4e 100644 --- a/zy-asrs-flow/src/pages/map/utils.js +++ b/zy-asrs-flow/src/pages/map/utils.js @@ -35,10 +35,17 @@ }) export const SENSOR_TYPE = Object.freeze({ - SHUTTLE: "SHUTTLE", SHELF: "SHELF", + SHUTTLE: "SHUTTLE", POINT: "POINT", AGV: "AGV", +}) + +export const SENSOR_ZINDEX = Object.freeze({ + SHELF: 1, + POINT: 1, + SHUTTLE: 100, + AGV: 100, }) export const SHELF_TYPE = Object.freeze({ @@ -70,21 +77,25 @@ sprite = new PIXI.Sprite(PIXI.Texture.from(shuttle, { resourceOptions: { scale: 5 } })); sprite.width = 50; sprite.height = 50; + sprite.zIndex = SENSOR_ZINDEX.SHUTTLE; break; case SENSOR_TYPE.AGV: sprite = new PIXI.Sprite(PIXI.Texture.from(agv, { resourceOptions: { scale: 5 } })); sprite.width = 50; sprite.height = 50; + sprite.zIndex = SENSOR_ZINDEX.AGV; break; case SENSOR_TYPE.SHELF: - sprite = new PIXI.Sprite(PIXI.Texture.from(shelf, { resourceOptions: { scale: 5 } })); + sprite = new PIXI.Sprite(PIXI.Texture.from(shelf, { resourceOptions: { scale: 1 } })); sprite.width = 60; sprite.height = 60; + sprite.zIndex = SENSOR_ZINDEX.SHELF; break; case SENSOR_TYPE.POINT: sprite = new PIXI.Sprite(PIXI.Texture.from(point, { resourceOptions: { scale: 5 } })); sprite.width = 10; sprite.height = 10; + sprite.zIndex = SENSOR_ZINDEX.POINT; break; default: break; @@ -249,12 +260,14 @@ effectHalfCircle.endFill(); effectHalfCircle.position.set(sprite.x, sprite.y); effectHalfCircle.scale.set(1 / scale); + effectHalfCircle.zIndex = 9999; effectRectangle = new PIXI.Graphics(); effectRectangle.lineStyle(5 * scale, color, 1); effectRectangle.drawRoundedRect(0, 0, sideLen, sideLen, 16 * scale); effectRectangle.endFill(); effectRectangle.mask = effectHalfCircle; + effectRectangle.zIndex = 9999; const scaledWidth = sideLen * (1 / scale); const scaledHeight = sideLen * (1 / scale); @@ -292,14 +305,17 @@ } export const copySprite = (sprite) => { - const copiedSprite = new PIXI.Sprite(sprite.texture); + // const copiedSprite = new PIXI.Sprite(sprite.texture); + const copiedSprite = generateSprite(sprite.data.type) initSprite(copiedSprite); copiedSprite.position.set(sprite.position.x, sprite.position.y); copiedSprite.scale.set(sprite.scale.x, sprite.scale.y); copiedSprite.rotation = sprite.rotation; copiedSprite.data = deepCopy(sprite.data); copiedSprite.data.uuid = generateID(); - showSheflType(copiedSprite); + if (copiedSprite.data.type === SENSOR_TYPE.SHELF) { + showSheflType(copiedSprite); + } return copiedSprite; } @@ -353,6 +369,12 @@ options.push({ value: value, label: intl.formatMessage({ id: 'map.sensor.type.shelf', defaultMessage: '璐ф灦' }) + }) + break; + case SENSOR_TYPE.SHUTTLE: + options.push({ + value: value, + label: intl.formatMessage({ id: 'map.sensor.type.shuttle', defaultMessage: '绌挎杞�' }) }) break; case SENSOR_TYPE.AGV: @@ -544,4 +566,16 @@ } else { return false; } +} + +export const parseLocNo = (locNo) => { + if (!locNo || typeof locNo !== 'string') { + return null; + } + const locParseArr = locNo.split('-'); + return { + row: locParseArr?.[0], + bay: locParseArr?.[1], + lev: locParseArr?.[2], + } } \ No newline at end of file -- Gitblit v1.9.1