#
luxiaotao1123
2024-09-21 0453a0bc5329d3bd4ff6d731d4bbd64890f722b3
#
2个文件已修改
74 ■■■■ 已修改文件
zy-acs-flow/src/page/agv/show/AgvShowTask.jsx 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-flow/src/utils/common.js 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-flow/src/page/agv/show/AgvShowTask.jsx
@@ -1,6 +1,6 @@
import React, { useState, useRef, useEffect, useMemo } from "react";
import {
    ShowBase,
    useTranslate,
    TabbedShowLayout,
    useShowContext,
} from 'react-admin';
@@ -14,9 +14,36 @@
    Avatar,
    Skeleton,
    Divider,
    List,
    ListItem,
} from '@mui/material';
import { formatDistance } from 'date-fns';
import request from '@/utils/request';
import { useTheme } from '@mui/material/styles';
import { getTaskStsColor } from '@/utils/common';
const TaskItem = ({ record }) => {
    const translate = useTranslate();
    const theme = useTheme();
    return (
        <>
            <ListItem disableGutters>
                <Stack direction="row" spacing={1} alignItems="center" width="100%">
                    <Avatar
                        alt={record.seqNum}
                        sx={{
                            '& img': { objectFit: 'contain' },
                            fontSize: '0.9rem',
                            bgcolor: getTaskStsColor(record.taskSts$),
                        }}
                    >
                        {record.seqNum}
                    </Avatar>
                </Stack>
            </ListItem>
        </>
    )
}
export const AgvShowTask = ({ agvId, pageSize = 20 }) => {
    const [currCount, setCurrCount] = useState(pageSize);
@@ -25,16 +52,21 @@
    useEffect(() => {
        const http = async () => {
            const res = await request.post('task/page', { agvId: agvId, pageSize: currCount });
            const res = await request.post('task/page', {
                agvId: agvId,
                pageSize: currCount,
                orderBy: 'create_time desc',
            });
            const { code, msg, data } = res.data;
            if (code === 200) {
                setTotal(data.total);
                setRecords(data.records);
            } else {
                setTotal(0);
                setRecords(null);
            }
        }
        if (agvId) { http(); }
        if (agvId) { http() }
    }, [agvId, currCount]);
    if (!records) {
@@ -65,7 +97,8 @@
    return (
        <>
            {records.length > 0 ? (
                <Box>
                <Box m={2}>
                    <List>
                    {records.map(record => {
                        return (
                            <TaskItem
@@ -87,6 +120,7 @@
                            Load more activity
                        </Button>
                    )}
                    </List>
                </Box>
            ) : (
                <Typography>
@@ -94,19 +128,6 @@
                </Typography>
            )}
        </>
    )
}
const TaskItem = ({ record }) => {
    return (
        <>
            <Typography
            >
                {record.seqNum}
            </Typography>
        </>
    )
}
zy-acs-flow/src/utils/common.js
@@ -1,3 +1,4 @@
import * as Colors from '@mui/material/colors';
export const extractNavMenus = (data) => {
    if (!data) {
@@ -50,3 +51,21 @@
    });
    return result;
};
export const getTaskStsColor = (taskStatus) => {
    if (!taskStatus) {
        return Colors.grey[500];
    }
    switch (taskStatus) {
        case '等待中':
            return Colors.amber[500];
        case '已分配':
            return Colors.blue[500];
        case '进行中':
            return Colors.green[500];
        case '已完成':
            return Colors.blueGrey[500];
        default:
            return Colors.amber[500];
    }
}