From fc9063d400f115693a5d861acdb76fae09bfb543 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期四, 17 十月 2024 08:32:34 +0800 Subject: [PATCH] # --- zy-acs-flow/src/map/insight/shelf/ShelfMain.jsx | 105 ++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 73 insertions(+), 32 deletions(-) diff --git a/zy-acs-flow/src/map/insight/shelf/ShelfMain.jsx b/zy-acs-flow/src/map/insight/shelf/ShelfMain.jsx index be7e735..fe2b0fb 100644 --- a/zy-acs-flow/src/map/insight/shelf/ShelfMain.jsx +++ b/zy-acs-flow/src/map/insight/shelf/ShelfMain.jsx @@ -10,10 +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; @@ -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,6 +109,7 @@ startThree(containerRef.current); shelfThree.handleClick = (objName) => { setCurLocNo(objName); + setSelectedLoc(info.find(loc => objName === loc.locNo)); }; renderThree(info, curLocNo); setLoading(false); @@ -111,6 +117,10 @@ } return endThree; }, [info]); + + useEffect(() => { + console.log(selectedLoc); + }, [selectedLoc]) return ( <Box display="flex" height="100%"> @@ -132,51 +142,82 @@ </Box> )} </Box> - <Box width="50%" 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