From 591fb57c675a1849e6e0ab1d968e1d58f6826f01 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期一, 23 九月 2024 14:10:40 +0800 Subject: [PATCH] # --- zy-acs-flow/src/i18n/en.js | 2 zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/BusController.java | 6 + zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Task.java | 41 ++++++--- zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Bus.java | 6 + zy-acs-flow/src/i18n/zh.js | 2 zy-acs-flow/src/page/bus/BusPanel.jsx | 132 ++++++++++++++++++++++----------- 6 files changed, 129 insertions(+), 60 deletions(-) diff --git a/zy-acs-flow/src/i18n/en.js b/zy-acs-flow/src/i18n/en.js index 95e18fd..b0e8e6d 100644 --- a/zy-acs-flow/src/i18n/en.js +++ b/zy-acs-flow/src/i18n/en.js @@ -452,6 +452,8 @@ zpallet: "zpallet", phase: "phase", errDesc: "error", + oriDesc: "origin", + destDesc: "destination", }, travel: { uuid: "uuid", diff --git a/zy-acs-flow/src/i18n/zh.js b/zy-acs-flow/src/i18n/zh.js index dd728a4..85339d6 100644 --- a/zy-acs-flow/src/i18n/zh.js +++ b/zy-acs-flow/src/i18n/zh.js @@ -451,6 +451,8 @@ zpallet: "鏂欑鐮�", phase: "杩涘害", errDesc: "寮傚父鎻忚堪", + oriDesc: "鍑哄彂鍦�", + destDesc: "鐩殑鍦�", }, travel: { uuid: "缂栧彿", diff --git a/zy-acs-flow/src/page/bus/BusPanel.jsx b/zy-acs-flow/src/page/bus/BusPanel.jsx index 5f62e82..85e14d5 100644 --- a/zy-acs-flow/src/page/bus/BusPanel.jsx +++ b/zy-acs-flow/src/page/bus/BusPanel.jsx @@ -1,19 +1,42 @@ import React, { useState, useRef, useEffect, useMemo } from "react"; -import { Box, Card, CardContent, Grid, Typography, Tooltip } from '@mui/material'; +import { + Box, + Card, + CardContent, + Grid, + Typography, + Tooltip, + Table, + TableBody, + TableCell, + TableHead, + TableRow, +} from '@mui/material'; import { useTranslate, useRecordContext, + useGetMany, + Link, } from 'react-admin'; import PanelTypography from "../components/PanelTypography"; -import * as Common from '@/utils/common' +import * as Common from '@/utils/common'; +import { styled } from '@mui/material/styles'; const BusPanel = () => { const record = useRecordContext(); - if (!record) return null; const translate = useTranslate(); + const taskIds = record ? record.taskIds : []; + const { isPending, data: tasks } = useGetMany( + 'tasks', + { ids: taskIds }, + { enabled: !!record } + ); + + if (isPending || !record) return null; + return ( <> - <Card sx={{ width: { xs: 300, sm: 500, md: 600, lg: 800 }, margin: 'auto' }}> + <Card sx={{ maxWidth: '80%', margin: 'auto' }}> <CardContent> <Grid container spacing={2}> <Grid item xs={12} sx={{ display: 'flex', justifyContent: 'space-between' }}> @@ -23,7 +46,7 @@ overflow: 'hidden', textOverflow: 'ellipsis', }}> - {Common.camelToPascalWithSpaces(translate('table.field.bus.busNo'))}: {record.seqNum} + {Common.camelToPascalWithSpaces(translate('table.field.bus.busNo'))}: {record.busNo} </Typography> {/* inherit, primary, secondary, textPrimary, textSecondary, error */} <Typography variant="h6" gutterBottom align="right" > @@ -39,49 +62,70 @@ </Grid> </Grid> <Box height={20}> </Box> - <Grid container spacing={2}> - <Grid item xs={6}> - <PanelTypography - title="table.field.bus.uuid" - property={record.uuid} - /> - </Grid> - <Grid item xs={6}> - <PanelTypography - title="table.field.bus.busNo" - property={record.busNo} - /> - </Grid> - <Grid item xs={6}> - <PanelTypography - title="table.field.bus.startTime" - property={record.startTime$} - /> - </Grid> - <Grid item xs={6}> - <PanelTypography - title="table.field.bus.endTime" - property={record.endTime$} - /> - </Grid> - <Grid item xs={6}> - <PanelTypography - title="table.field.bus.busSts" - property={record.busSts$} - /> - </Grid> - <Grid item xs={6}> - <PanelTypography - title="table.field.bus.phase" - property={record.phase} - /> - </Grid> - - </Grid> + <Box> + <Table size="small"> + <TableHead> + <TableRow> + <TableCell> + {translate('table.field.task.seqNum')} + </TableCell> + <TableCellRight> + {translate('table.field.task.taskType')} + </TableCellRight> + <TableCellRight> + {translate('table.field.task.taskSts')} + </TableCellRight> + <TableCellRight> + {translate('table.field.task.agvId')} + </TableCellRight> + <TableCellRight> + {translate('table.field.task.ioTime')} + </TableCellRight> + <TableCellRight> + {translate('table.field.task.oriDesc')} + </TableCellRight> + <TableCellRight> + {translate('table.field.task.destDesc')} + </TableCellRight> + </TableRow> + </TableHead> + <TableBody> + {tasks.map((task) => ( + <TableRow key={task.id}> + <TableCell> + <Link to={`/task/${task.id}`}> + {task.seqNum} + </Link> + </TableCell> + <TableCellRight> + {task.taskType$} + </TableCellRight> + <TableCellRight> + {task.taskSts$} + </TableCellRight> + <TableCellRight> + {task.agv$} + </TableCellRight> + <TableCellRight> + {task.ioTime$} + </TableCellRight> + <TableCellRight> + {task.oriDesc} + </TableCellRight> + <TableCellRight> + {task.destDesc} + </TableCellRight> + </TableRow> + ))} + </TableBody> + </Table> + </Box> </CardContent> </Card > </> ); }; +const TableCellRight = styled(TableCell)({ textAlign: 'right' }); + export default BusPanel; diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/BusController.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/BusController.java index 84e9973..a714c47 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/BusController.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/BusController.java @@ -23,6 +23,7 @@ import javax.servlet.http.HttpServletResponse; import java.util.*; +import java.util.stream.Collectors; @RestController @RequestMapping("/api") @@ -46,7 +47,10 @@ PageParam<Bus, BaseParam> pageParam = new PageParam<>(baseParam, Bus.class); PageParam<Bus, BaseParam> page = busService.page(pageParam, pageParam.buildWrapper(true)); for (Bus record : page.getRecords()) { - record.setTasksNum(taskService.count(new LambdaQueryWrapper<Task>().eq(Task::getBusId, record.getId()))); + List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getBusId, record.getId())); + if (!Cools.isEmpty(tasks)) { + record.setTaskIds(tasks.stream().map(Task::getId).collect(Collectors.toList())); + } } return R.ok().add(page); } diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Bus.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Bus.java index b811289..cee3d75 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Bus.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Bus.java @@ -12,6 +12,7 @@ import java.io.Serializable; import java.util.Date; +import java.util.List; @Data @TableName("man_bus") @@ -111,7 +112,10 @@ private String memo; @TableField(exist = false) - private int tasksNum; + private int tasksNum = 0; + + @TableField(exist = false) + private List<Long> taskIds; public String getBusSts$(){ BusStsService service = SpringUtils.getBean(BusStsService.class); diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Task.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Task.java index a765540..6f11eef 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Task.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Task.java @@ -368,20 +368,6 @@ return null; } - public String getStatus$(){ - if (null == this.status){ return null; } - switch (this.status){ - case 1: - return "姝e父"; - case 0: - return "鍐荤粨"; - default: - return String.valueOf(this.status); - } - } - - - public Boolean getStatusBool(){ if (null == this.status){ return null; } switch (this.status){ @@ -394,5 +380,32 @@ } } + public String getOriDesc() { + String oriDesc = ""; + if (null != this.oriSta) { + oriDesc = "STA" + " - " + this.getOriSta$(); + } + if (null != this.oriLoc) { + oriDesc = "LOC" + " - " + this.getOriLoc$(); + } + if (!Cools.isEmpty(oriDesc) && null != this.oriCode) { + oriDesc = oriDesc + " (" + this.getOriCode$() + ")"; + } + return oriDesc; + } + + public String getDestDesc() { + String destDesc = ""; + if (null != this.destSta) { + destDesc = "STA" + " - " + this.getDestSta$(); + } + if (null != this.destLoc) { + destDesc = "LOC" + " - " + this.getDestLoc$(); + } + if (!Cools.isEmpty(destDesc) && null != this.destCode) { + destDesc = destDesc + " (" + this.getDestCode$() + ")"; + } + return destDesc; + } } -- Gitblit v1.9.1