#
luxiaotao1123
2024-03-27 0f223f1ad700b62b7dc060e0e9de33844388dc85
#
6个文件已修改
1个文件已添加
171 ■■■■■ 已修改文件
zy-asrs-flow/src/pages/map/components/configSettings.jsx 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-flow/src/pages/map/components/mapCopySettings.jsx 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-flow/src/pages/map/components/mapSettings.jsx 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-flow/src/pages/map/drawer/index.jsx 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-flow/src/pages/map/drawer/shuttle/index.jsx 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-flow/src/pages/map/header/search.jsx 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-flow/src/pages/map/utils.js 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-flow/src/pages/map/components/configSettings.jsx
@@ -148,6 +148,12 @@
                    </>
                )}
                {curSprite?.data?.type === Utils.SENSOR_TYPE.SHUTTLE && (
                    <>
                    </>
                )}
                {curSprite?.data?.type === Utils.SENSOR_TYPE.SHELF && (
                    <>
                        <Form.Item
zy-asrs-flow/src/pages/map/components/mapCopySettings.jsx
@@ -155,6 +155,54 @@
                            </Form.Item>
                        </Col>
                        {autoIncrement && curSprite?.data?.type === Utils.SENSOR_TYPE.SHUTTLE && (
                            <>
                                <Col span={24}>
                                    <Form.Item
                                        name='incrementValue'
                                        label={intl.formatMessage({ id: 'map.settings.sub.copy.increment-value', defaultMessage: '自增长值' })}
                                        labelCol={{ span: 8 }}
                                        initialValue='no'
                                    >
                                        <Segmented
                                            block
                                            options={[
                                                {
                                                    label: intl.formatMessage({ id: 'map.settings.no', defaultMessage: '编号' }),
                                                    value: 'no'
                                                },
                                            ]}
                                            onChange={(value) => {
                                            }}
                                        />
                                    </Form.Item>
                                </Col>
                                <Col span={24}>
                                    <Form.Item
                                        name='incrementMode'
                                        label={intl.formatMessage({ id: 'map.settings.sub.copy.increment.mode', defaultMessage: '增长方式' })}
                                        labelCol={{ span: 8 }}
                                    >
                                        <Segmented
                                            block
                                            options={[
                                                {
                                                    label: intl.formatMessage({ id: 'map.settings.sub.copy.ascend', defaultMessage: '升序' }),
                                                    value: 'ascending'
                                                },
                                                {
                                                    label: intl.formatMessage({ id: 'map.settings.sub.copy.descend', defaultMessage: '降序' }),
                                                    value: 'descending'
                                                },
                                            ]}
                                            onChange={(value) => {
                                            }}
                                        />
                                    </Form.Item>
                                </Col>
                            </>
                        )}
                        {autoIncrement && curSprite?.data?.type === Utils.SENSOR_TYPE.AGV && (
                            <>
                                <Col span={24}>
zy-asrs-flow/src/pages/map/components/mapSettings.jsx
@@ -140,6 +140,15 @@
                            copiedSprite.data.no = Utils.pureNumStr(copiedSprite.data.vertical) + '-' + Utils.pureNumStr(copiedSprite.data.horizontal);
                        }
                        break;
                    case Utils.SENSOR_TYPE.SHUTTLE:
                        if (values.incrementValue === 'no') {
                            if (values.incrementMode === 'descending') {
                                copiedSprite.data.no = Number(curSprite.data.no) - i - 1;
                            } else {
                                copiedSprite.data.no = Number(curSprite.data.no) + i + 1;
                            }
                        }
                        break;
                    case Utils.SENSOR_TYPE.AGV:
                        if (values.incrementValue === 'no') {
                            if (values.incrementMode === 'descending') {
zy-asrs-flow/src/pages/map/drawer/index.jsx
@@ -6,6 +6,7 @@
import ShelfDrawer from './shelf';
import AgvDrawer from './agv';
import PointDrawer from './point'
import ShuttleDrawer from './shuttle'
const useStyles = createStyles(({ token, css }) => {
@@ -47,6 +48,13 @@
                        />
                    </>
                )}
                {props.curSprite?.data?.type === Utils.SENSOR_TYPE.SHUTTLE && (
                    <>
                        <ShuttleDrawer
                            curSprite={curSprite}
                        />
                    </>
                )}
                {props.curSprite?.data?.type === Utils.SENSOR_TYPE.POINT && (
                    <>
                        <PointDrawer
zy-asrs-flow/src/pages/map/drawer/shuttle/index.jsx
New file
@@ -0,0 +1,60 @@
import React, { useState, useRef, useEffect } from 'react';
import { Card, Form, Button } from 'antd';
import { FormattedMessage, useIntl, useModel } from '@umijs/max';
import { createStyles } from 'antd-style';
import * as Utils from '../../utils'
import Http from '@/utils/http';
import ShowJson from '../showJson';
const useStyles = createStyles(({ token, css }) => {
})
const ShuttleDrawer = (props) => {
    const intl = useIntl();
    const { styles } = useStyles();
    const [activeTabKey, setActiveTabKey] = useState('json');
    const contentList = {
        json: (
            <ShowJson
                data={props.curSprite.data}
            />
        ),
    };
    return (
        <>
            <Card
                className='drawer-card'
                hoverable
                bordered={false}
                type='inner'
                tabList={[
                    {
                        key: 'json',
                        tab: intl.formatMessage({ id: 'map.drawer.json', defaultMessage: 'JSON' }),
                    },
                ]}
                activeTabKey={activeTabKey}
                onTabChange={(key) => {
                    setActiveTabKey(key)
                }}
                tabProps={{
                    centered: true,
                    size: 'large',
                    type: "card",
                    style: {
                    }
                }}
                style={{
                    height: '100%'
                }}
            >
                {contentList[activeTabKey]}
            </Card>
        </>
    )
}
export default ShuttleDrawer;
zy-asrs-flow/src/pages/map/header/search.jsx
@@ -26,6 +26,17 @@
                        )
                })
                break;
            case Utils.SENSOR_TYPE.SHUTTLE:
                options.push({
                    value: value,
                    label:
                        (
                            <>
                                <span style={{ fontWeight: 'bold' }} >{intl.formatMessage({ id: 'map.sensor.type.shuttle', defaultMessage: '穿梭车' })}</span>
                            </>
                        )
                })
                break;
            case Utils.SENSOR_TYPE.AGV:
                options.push({
                    value: value,
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,25 +77,25 @@
            sprite = new PIXI.Sprite(PIXI.Texture.from(shuttle, { resourceOptions: { scale: 5 } }));
            sprite.width = 50;
            sprite.height = 50;
            sprite.zIndex = 100;
            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 = 100;
            sprite.zIndex = SENSOR_ZINDEX.AGV;
            break;
        case SENSOR_TYPE.SHELF:
            sprite = new PIXI.Sprite(PIXI.Texture.from(shelf, { resourceOptions: { scale: 1 } }));
            sprite.width = 60;
            sprite.height = 60;
            sprite.zIndex = 1;
            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 = 1;
            sprite.zIndex = SENSOR_ZINDEX.POINT;
            break;
        default:
            break;
@@ -253,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);
@@ -303,7 +312,9 @@
    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;
}
@@ -359,6 +370,12 @@
                    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:
                options.push({
                    value: value,