| | |
| | | import agv from '/public/img/map/agv.svg' |
| | | import shelf from '/public/img/map/shelf.png' |
| | | import point from '/public/img/map/point.svg' |
| | | import shuttle from '/public/img/map/shuttle.svg' |
| | | |
| | | let app = null; |
| | | let mapContainer = null; |
| | |
| | | }) |
| | | |
| | | export const SENSOR_TYPE = Object.freeze({ |
| | | SHUTTLE: "SHUTTLE", |
| | | SHELF: "SHELF", |
| | | POINT: "POINT", |
| | | AGV: "AGV", |
| | |
| | | STORE: 0, |
| | | TRACK: 3, |
| | | DISABLE: 1, |
| | | }) |
| | | |
| | | export const NOTIFY_TYPE = Object.freeze({ |
| | | OPEN: 'open', |
| | | SUCCESS: 'success', |
| | | INFO: 'info', |
| | | WARNING: 'warning', |
| | | ERROR: 'error', |
| | | }) |
| | | |
| | | export const getRealPosition = (x, y, mapContainer) => { |
| | |
| | | return options; |
| | | } |
| | | |
| | | export const fetchMapFloor = async () => { |
| | | const res = await Http.doPost('api/map/floor/list'); |
| | | if (res.code === 200) { |
| | | return eval(res.data); |
| | | } else { |
| | | mapNotify(res.msg, NOTIFY_TYPE.ERROR); |
| | | } |
| | | } |
| | | |
| | | export const fetchMapData = async (curFloor) => { |
| | | clearMapData(); |
| | | await Http.doPostPromise('api/map/list', { floor: curFloor }, (res) => { |
| | |
| | | mapItemList.forEach(item => { |
| | | let sprite; |
| | | switch (item.type) { |
| | | case SENSOR_TYPE.SHUTTLE: |
| | | sprite = PIXI.Sprite.from({ source: shuttle, scaleMode: PIXI.SCALE_MODES.HIGH }); |
| | | break; |
| | | case SENSOR_TYPE.SHELF: |
| | | sprite = PIXI.Sprite.from(shelf); |
| | | break; |
| | | case SENSOR_TYPE.AGV: |
| | | sprite = PIXI.Sprite.from(agv); |
| | | sprite = new PIXI.Sprite(PIXI.Texture.from(agv, { resourceOptions: { scale: 5 } })); |
| | | sprite.width = 50; |
| | | sprite.height = 50; |
| | | break; |
| | | case SENSOR_TYPE.POINT: |
| | | sprite = PIXI.Sprite.from(point); |
| | |
| | | }).catch((error) => { |
| | | console.error(error); |
| | | }) |
| | | |
| | | } |
| | | |
| | | export const saveMapData = async (intl, floor) => { |
| | |
| | | .to(targetPos, 500).start(); |
| | | } |
| | | |
| | | export const mapNotify = (msg) => { |
| | | notify.open({ |
| | | export const mapNotify = (msg, type = NOTIFY_TYPE.OPEN) => { |
| | | notify[type]({ |
| | | description: msg, |
| | | duration: 1.5, |
| | | style: { width: 300 }, |
| | |
| | | resolve(true); |
| | | }, time); |
| | | }); |
| | | }; |
| | | }; |
| | | |
| | | export const isNullOfUndefined = (param) => { |
| | | if (null === param || undefined === param) { |
| | | return true; |
| | | } else { |
| | | return false; |
| | | } |
| | | } |