From fd6d26f8ffe6a37533e741337f3eca9134d934c7 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期三, 15 一月 2025 10:42:59 +0800
Subject: [PATCH] #
---
zy-acs-flow/src/page/mission/MissionCard.jsx | 51 +++++++++++++++++++++++++++++++++++++--------------
1 files changed, 37 insertions(+), 14 deletions(-)
diff --git a/zy-acs-flow/src/page/mission/MissionCard.jsx b/zy-acs-flow/src/page/mission/MissionCard.jsx
index 45cad08..0fc1c16 100644
--- a/zy-acs-flow/src/page/mission/MissionCard.jsx
+++ b/zy-acs-flow/src/page/mission/MissionCard.jsx
@@ -1,7 +1,9 @@
+import React, { useState, useEffect } from 'react';
import { Draggable } from '@hello-pangea/dnd';
-import { Box, Card, Typography, Avatar, Divider, Stack, Slider } from '@mui/material';
-import { ReferenceField, useRedirect } from 'react-admin';
+import { Box, Card, Typography, Avatar, Divider, Stack, Slider, useTheme } from '@mui/material';
+import { ReferenceField, useRedirect, useTranslate } from 'react-admin';
import { blueGrey } from '@mui/material/colors';
+import { styled } from '@mui/material/styles';
export const MissionCard = ({ mission, index }) => {
if (!mission) return null;
@@ -19,7 +21,9 @@
);
};
-export const MissionCardContent = ({ provided, snapshot, mission, }) => {
+export const MissionCardContent = ({ provided, snapshot, mission }) => {
+ const theme = useTheme();
+ const translate = useTranslate();
const redirect = useRedirect();
const handleClick = () => {
redirect(`/mission/${mission.id}/show`, undefined, undefined, undefined, {
@@ -27,8 +31,15 @@
});
};
- console.log(mission);
+ const [sliderValue, setSliderValue] = useState(mission.progress || 0);
+ useEffect(() => {
+ setSliderValue(mission.progress || 0);
+ }, [mission.progress]);
+
+ const handleSliderChange = (event, newValue) => {
+ setSliderValue(newValue);
+ };
return (
<Box
@@ -52,32 +63,44 @@
sx={{
width: 30,
height: 30,
- // bgcolor: blueGrey[500],
+ bgcolor: theme.palette.primary.main,
}}
>
{mission.agv}
</Avatar>
<Divider orientation="vertical" flexItem sx={{ margin: '0 8px' }} />
- <Typography variant="h6" noWrap>
+ <Typography variant="body1" noWrap>
{mission.groupNo}
</Typography>
</Box>
- <Box sx={{}}>
- <Stack direction="row" justifyContent="space-between">
+ <Box>
+ <Stack direction="row" justifyContent="space-between" mb={1}>
<Typography variant="caption" color="textSecondary">
- Backpack: {mission.backpack}
+ {translate('table.field.mission.backpack')} : {mission.backpack}
</Typography>
<Typography variant="caption" color="textPrimary">
- Code: {mission.destCode}
+ {translate('table.field.mission.code')}: {mission.currCode}
</Typography>
</Stack>
- <Stack direction="row" justifyContent="space-between">
+ <Divider orientation="horizontal" flexItem />
+ <Stack direction="row" justifyContent="space-between" >
<Typography variant="overline">
- Task: [{mission.taskNos.join(',')}]
+ {translate('table.field.mission.task')}: [{mission.taskNos.join(',')}]
</Typography>
</Stack>
- <Stack direction="row">
- <Slider />
+ <Stack pl={0.5} pr={0.5} direction="row" spacing={1} alignItems="center" mb={.6}>
+ <Slider
+ aria-label="Progress"
+ // defaultValue={mission.progress}
+ value={sliderValue}
+ onChange={handleSliderChange}
+ getAriaValueText={(value) => {
+ return `${value}%`;
+ }}
+ color="secondary"
+ size="small"
+ marks
+ />
</Stack>
</Box>
</Box>
--
Gitblit v1.9.1