#
Junjie
2024-10-17 d835d1b51f832889929cdf69010034a30ef44d02
zy-asrs-flow/src/pages/map/drawer/shuttle/view.jsx
@@ -4,6 +4,8 @@
import { createStyles } from 'antd-style';
import * as Utils from '../../utils'
import Http from '@/utils/http';
import BoolValueIcon from '@/components/BoolValueIcon';
import ShuttleHandle from './handle';
const useStyles = createStyles(({ token, css }) => {
    return {
@@ -27,7 +29,16 @@
    }
})
const updateEnable = async (deviceNo, enable) => {
    const resp = await Http.doPost('api/dict/update', { val });
    if (resp.code === 200) {
        message.success(intl.formatMessage({ id: 'page.update.success', defaultMessage: '更新成功' }));
        return true;
    } else {
        message.error(resp.msg);
        return false;
    }
}
const ShuttleView = (props) => {
    const intl = useIntl();
@@ -35,6 +46,7 @@
    const { data } = props;
    const [loading, setLoading] = React.useState(false);
    const [childrenDrawer, setChildrenDrawer] = useState(false);
    const [info, setInfo] = React.useState(null);
    useEffect(() => {
@@ -47,11 +59,14 @@
            setLoading(false);
        }
        fetchShuttleInfo(data.no);
    }, [data]);
    useEffect(() => {
        console.log(info);
    }, [info])
        const timer = setInterval(() => {
            fetchShuttleInfo(data.no);
        }, 1000);
        return () => {
            clearInterval(timer);
        }
    }, [data]);
    return (
        <>
@@ -69,104 +84,93 @@
                            items={
                                [
                                    {
                                        key: '1',
                                        label: intl.formatMessage({ id: 'map.shuttle.no', defaultMessage: '穿梭车编号' }),
                                        children: info?.shuttleNo,
                                    },
                                    {
                                        key: '1',
                                        label: intl.formatMessage({ id: 'map.task.no', defaultMessage: '任务号' }),
                                        children: info?.taskNo,
                                    },
                                    {
                                        key: '1',
                                        label: intl.formatMessage({ id: 'map.device.status', defaultMessage: '设备状态' }),
                                        children: info?.status,
                                        children: <Badge status="processing" text={info?.status} />,
                                    },
                                    {
                                        key: '1',
                                        label: intl.formatMessage({ id: 'map.origin.loc', defaultMessage: '起始库位' }),
                                        children: info?.originLocNo,
                                    },
                                    {
                                        key: '1',
                                        label: intl.formatMessage({ id: 'map.dest.loc', defaultMessage: '目标库位' }),
                                        children: info?.destLocNo,
                                    },
                                    {
                                        key: '1',
                                        label: intl.formatMessage({ id: 'map.shuttle.current.code', defaultMessage: '定位条码' }),
                                        children: info?.currentCode,
                                    },
                                    {
                                        key: '1',
                                        label: intl.formatMessage({ id: 'map.loc.no', defaultMessage: '库位号' }),
                                        children: info?.currentLocNo,
                                    },
                                    {
                                        label: intl.formatMessage({ id: 'map.pallet.barcode', defaultMessage: '托盘条码' }),
                                        children: info?.zpallet,
                                    },
                                    {
                                        label: intl.formatMessage({ id: 'map.origin.loc', defaultMessage: '起始库位' }),
                                        children: info?.originLocNo,
                                    },
                                    {
                                        label: intl.formatMessage({ id: 'map.dest.loc', defaultMessage: '目标库位' }),
                                        children: info?.destLocNo,
                                    },
                                    {
                                        label: intl.formatMessage({ id: 'map.shuttle.batter.power', defaultMessage: '电池电量' }),
                                        children: info?.batteryPower,
                                    },
                                    {
                                        key: '1',
                                        label: intl.formatMessage({ id: 'map.shuttle.batter.voltage', defaultMessage: '电池电压' }),
                                        children: info?.batteryVoltage,
                                    },
                                    {
                                        key: '1',
                                        label: intl.formatMessage({ id: 'map.shuttle.batter.temp', defaultMessage: '电池温度' }),
                                        children: info?.batteryTemp,
                                    },
                                    {
                                        key: '1',
                                        label: intl.formatMessage({ id: 'map.shuttle.has.lift', defaultMessage: '顶升信号' }),
                                        children: info?.hasLift,
                                    },
                                    {
                                        key: '1',
                                        label: intl.formatMessage({ id: 'map.shuttle.has.pallet', defaultMessage: '托盘信号' }),
                                        children: info?.hasPallet,
                                    },
                                    {
                                        key: '1',
                                        label: intl.formatMessage({ id: 'map.shuttle.has.charge', defaultMessage: '充电信号' }),
                                        children: info?.hasCharge,
                                    },
                                    {
                                        key: '1',
                                        label: intl.formatMessage({ id: 'map.error', defaultMessage: '异常信号' }),
                                        children: info?.errorCode,
                                    },
                                    {
                                        key: '1',
                                        label: intl.formatMessage({ id: 'map.shuttle.has.lift', defaultMessage: '顶升信号' }),
                                        children: <BoolValueIcon value={info?.hasLift} />,
                                    },
                                    {
                                        label: intl.formatMessage({ id: 'map.shuttle.has.pallet', defaultMessage: '托盘信号' }),
                                        children: <BoolValueIcon value={info?.hasPallet} />,
                                    },
                                    {
                                        label: intl.formatMessage({ id: 'map.shuttle.has.charge', defaultMessage: '充电信号' }),
                                        children: <BoolValueIcon value={info?.hasCharge} />,
                                    },
                                    {
                                        label: intl.formatMessage({ id: 'map.pakmk', defaultMessage: '作业标记' }),
                                        children: info?.pakMk,
                                        children: <BoolValueIcon value={info?.pakMk} />,
                                    },
                                    {
                                        key: '1',
                                        label: intl.formatMessage({ id: 'map.loc.no', defaultMessage: '库位号' }),
                                        children: <Badge status="processing" text="Running" />,
                                    },
                                    {
                                        key: '2',
                                        label: intl.formatMessage({ id: 'map.pallet.barcode', defaultMessage: '托盘条码' }),
                                        children: '80000010',
                                    },
                                    {
                                        key: '3',
                                        label: intl.formatMessage({ id: 'map.is.enable', defaultMessage: '是否启用' }),
                                        span: 2,
                                        children: 'Disabled',
                                        children: <BoolValueIcon value={info?.enable} />,
                                    },
                                    {
                                        key: '4',
                                        label: intl.formatMessage({ id: 'map.loc.operation', defaultMessage: '库位操作' }),
                                        span: 3,
                                        children: (
                                            <>
                                                <Button className={styles.tableButton} size='default' type="primary" danger>
                                                    <FormattedMessage id='map.loc.lock' defaultMessage='锁定' />
                                                    <FormattedMessage id='map.diable' defaultMessage='禁用' />
                                                </Button>
                                                <Button className={styles.tableButton} size='default' disabled>
                                                    <FormattedMessage id='map.loc.unlock' defaultMessage='解锁' />
                                                    <FormattedMessage id='map.enable' defaultMessage='启用' />
                                                </Button>
                                                <Button className={styles.tableButton} size='default'>
                                                    <FormattedMessage id='map.loc.reset' defaultMessage='清除库位' />
                                                <Button
                                                    className={styles.tableButton}
                                                    size='default'
                                                    onClick={() => {
                                                        setChildrenDrawer(true);
                                                    }}
                                                >
                                                    <FormattedMessage id='map.handle' defaultMessage='手动操作' />
                                                </Button>
                                            </>
                                        )
@@ -174,6 +178,14 @@
                                ]
                            }
                        />
                        <ShuttleHandle
                            open={childrenDrawer}
                            refCurr={props.refCurr}
                            shuttleNo={data.no}
                            onClose={() => {
                                setChildrenDrawer(false)
                            }}
                        />
                    </div>
                )}
            </div>