From b6de988979952b5084ec2563181acc34612928fe Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期四, 17 十月 2024 08:29:53 +0800
Subject: [PATCH] #
---
zy-acs-flow/src/map/insight/shelf/ShelfMain.jsx | 115 +++++++++++++++++++++++++++++++++++++++------------------
1 files changed, 78 insertions(+), 37 deletions(-)
diff --git a/zy-acs-flow/src/map/insight/shelf/ShelfMain.jsx b/zy-acs-flow/src/map/insight/shelf/ShelfMain.jsx
index 3e50bb9..fe2b0fb 100644
--- a/zy-acs-flow/src/map/insight/shelf/ShelfMain.jsx
+++ b/zy-acs-flow/src/map/insight/shelf/ShelfMain.jsx
@@ -10,9 +10,13 @@
Button,
Divider,
Stack,
+ Card,
+ CardContent,
} from '@mui/material';
import ShelfThree from './ShelfThree';
import { getLocGroup } from '../../http';
+import { grey } from '@mui/material/colors';
+import { styled } from '@mui/system';
let shelfThree;
@@ -52,7 +56,6 @@
break;
case '涓嶈鍒�':
child.visible = item.locStsEl === 'STOCK' || item.locStsEl === 'PAKOUT';
- // child.visible = !['STOCK', 'IDLE'].includes(item.locStsEl);
child.material.color.set(0xE8B67E);
break;
default:
@@ -86,12 +89,14 @@
const containerRef = useRef();
const [loading, setLoading] = useState(true);
const [info, setInfo] = useState(null);
+ const [selectedLoc, setSelectedLoc] = useState(null);
useEffect(() => {
if (data) {
getLocGroup(data.row, data.bay, (response) => {
setInfo(response);
setCurLocNo(response[0]?.locNo);
+ setSelectedLoc(response[0]);
});
}
}, [data]);
@@ -104,19 +109,24 @@
startThree(containerRef.current);
shelfThree.handleClick = (objName) => {
setCurLocNo(objName);
+ setSelectedLoc(info.find(loc => objName === loc.locNo));
};
renderThree(info, curLocNo);
setLoading(false);
- }, 200)
+ }, 300)
}
return endThree;
}, [info]);
+ useEffect(() => {
+ console.log(selectedLoc);
+ }, [selectedLoc])
+
return (
- <Box display="flex" height="500px">
+ <Box display="flex" height="100%">
<Box
position="relative"
- width="60%"
+ width="50%"
height="100%"
ref={containerRef}
style={{ backgroundColor: '#7a7a7a' }}
@@ -128,55 +138,86 @@
left="50%"
style={{ transform: 'translate(-50%, -50%)' }}
>
- <CircularProgress />
+ <CircularProgress sx={{ color: grey[50] }} />
</Box>
)}
</Box>
- <Box width="40%" height="100%" overflow="auto" p={2}>
- {/* <Paper elevation={3} style={{ padding: '16px' }}>
- <Typography variant="h6" gutterBottom>
- {translate('map.loc.no', { defaultMessage: '搴撲綅鍙�' })}: {curLocNo}
- </Typography>
- <Divider />
- <Grid container spacing={2} style={{ marginTop: '16px' }}>
- <Grid item xs={12}>
- <Typography variant="subtitle1">
- {translate('map.loc.sts', { defaultMessage: '搴撲綅鐘舵��' })}
- </Typography>
- <Typography variant="body1">{info?.locSts}</Typography>
+ <Box width="50%" height="100%" overflow="auto" pl={1}>
+ <Paper elevation={1} style={{
+ height: "100%",
+ padding: '16px',
+ display: 'flex',
+ flexDirection: 'column',
+ justifyContent: 'space-between',
+ }}>
+ <Box>
+ <Grid container spacing={2} style={{ marginTop: '0px' }}>
+ <Grid item xs={12}>
+ <KeyValuePair label={translate('table.field.loc.locNo')} value={selectedLoc?.locNo || 'N/A'} />
+ </Grid>
+ <Grid item xs={12}>
+ <KeyValuePair label={translate('table.field.loc.row')} value={selectedLoc?.row || 'N/A'} />
+ </Grid>
+ <Grid item xs={12}>
+ <KeyValuePair label={translate('table.field.loc.bay')} value={selectedLoc?.bay || 'N/A'} />
+ </Grid>
+ <Grid item xs={12}>
+ <KeyValuePair label={translate('table.field.loc.lev')} value={selectedLoc?.lev || 'N/A'} />
+ </Grid>
+ <Grid item xs={12}>
+ <KeyValuePair label={translate('table.field.loc.offset')} value={selectedLoc?.offset || 'N/A'} />
+ </Grid>
+ <Grid item xs={12}>
+ <KeyValuePair label={translate('table.field.loc.locSts')} value={selectedLoc?.locSts$ || 'N/A'} />
+ </Grid>
+ <Grid item xs={12}>
+ <KeyValuePair label={translate('table.field.loc.zoneId')} value={selectedLoc?.zoneId$ || 'N/A'} />
+ </Grid>
+ <Grid item xs={12}>
+ <KeyValuePair label={translate('table.field.loc.code')} value={selectedLoc?.code$ || 'N/A'} />
+ </Grid>
</Grid>
+ </Box>
+
+ <Grid container spacing={2} style={{ marginTop: '0px' }}>
<Grid item xs={12}>
<Typography variant="subtitle1">
- {translate('map.pallet.barcode', { defaultMessage: '鎵樼洏鏉$爜' })}
- </Typography>
- <Typography variant="body1">{info?.zpallet}</Typography>
- </Grid>
- <Grid item xs={12}>
- <Typography variant="subtitle1">
- {translate('map.is.enable', { defaultMessage: '鏄惁鍚敤' })}
- </Typography>
- </Grid>
- <Grid item xs={12}>
- <Typography variant="subtitle1">
- {translate('map.loc.operation', { defaultMessage: '搴撲綅鎿嶄綔' })}
+ {translate('common.field.opt')}
</Typography>
<Stack spacing={2} mt={2}>
- <Button variant="contained" color="error" fullWidth>
- {translate('map.loc.lock', { defaultMessage: '閿佸畾' })}
- </Button>
- <Button variant="contained" disabled fullWidth>
- {translate('map.loc.unlock', { defaultMessage: '瑙i攣' })}
- </Button>
<Button variant="contained" fullWidth>
- {translate('map.loc.reset', { defaultMessage: '娓呴櫎搴撲綅' })}
+ {translate('page.map.insight.shelf.updateStatus')}
+ </Button>
+ <Button variant="contained" color="error" disabled={selectedLoc?.locStsEl !== 'STOCK'} fullWidth>
+ {translate('page.map.insight.shelf.outbound')}
</Button>
</Stack>
</Grid>
</Grid>
- </Paper> */}
+ </Paper>
</Box>
</Box>
);
};
+const KeyValuePair = ({ label, value }) => (
+ <>
+ <Stack direction="row" alignItems="center" spacing={1} sx={{ mb: 1 }}>
+ <Typography
+ variant="body2"
+ sx={{ width: '80px', fontWeight: 'bold', color: 'text.secondary', textAlign: 'left' }}
+ >
+ {label}:
+ </Typography>
+ <Typography
+ variant="body2"
+ sx={{ flexGrow: 1, color: 'text.primary', whiteSpace: 'nowrap', overflow: 'hidden', textOverflow: 'ellipsis' }}
+ >
+ {value}
+ </Typography>
+ </Stack>
+ <Divider />
+ </>
+);
+
export default ShelfMain;
--
Gitblit v1.9.1