From 6c5edf41ef56af07e6e3baa25f77759ecaf8f68c Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期三, 09 四月 2025 15:41:50 +0800
Subject: [PATCH] 任务列表界面优化

---
 /dev/null                                                                           |   18 ---
 rsf-admin/src/page/asnOrderLog/AsnOrderLogList.jsx                                  |   11 -
 rsf-admin/src/page/task/TaskEdit.jsx                                                |   14 +-
 rsf-admin/src/page/taskLog/TaskItemLogList.jsx                                      |   10 +
 rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrderItemLog.java |    2 
 rsf-admin/src/page/asnOrderLog/AsnOrderLogEdit.jsx                                  |  222 ++++++++++++++++++++------------------------
 rsf-admin/src/page/ResourceContent.js                                               |   12 +-
 rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TaskItemLog.java     |    3 
 8 files changed, 128 insertions(+), 164 deletions(-)

diff --git a/rsf-admin/src/page/ResourceContent.js b/rsf-admin/src/page/ResourceContent.js
index 3b244fe..ed01cd9 100644
--- a/rsf-admin/src/page/ResourceContent.js
+++ b/rsf-admin/src/page/ResourceContent.js
@@ -45,11 +45,11 @@
 import waitPakinLog from './waitPakinLog';
 import waitPakinItemLog from './waitPakinItemLog';
 import asnOrderLog from './asnOrderLog';
-import asnOrderItemLog from './asnOrderItemLog';
+// import asnOrderItemLog from './asnOrderItemLog';
 import task from './task';
 // import taskItem from './taskItem';
 import taskLog from './taskLog';
-import taskItemLog from './taskItemLog';
+// import taskItemLog from './taskItemLog';
 
 
 const ResourceContent = (node) => {
@@ -110,8 +110,8 @@
             return asnOrderItem;
         case 'asnOrderLog':
             return asnOrderLog;
-        case 'asnOrderItemLog':
-            return asnOrderItemLog;
+        // case 'asnOrderItemLog':
+        //     return asnOrderItemLog;
         case 'purchaseItem':
             return purchaseItem;
         case 'purchase':
@@ -144,8 +144,8 @@
         //     return taskItem;
         case 'taskLog':
             return taskLog;
-        case 'taskItemLog':
-            return taskItemLog;
+        // case 'taskItemLog':
+        //     return taskItemLog;
 
         default:
             return {
diff --git a/rsf-admin/src/page/asnOrderLog/AsnOrderLogEdit.jsx b/rsf-admin/src/page/asnOrderLog/AsnOrderLogEdit.jsx
index 2e044bd..a1c2e7c 100644
--- a/rsf-admin/src/page/asnOrderLog/AsnOrderLogEdit.jsx
+++ b/rsf-admin/src/page/asnOrderLog/AsnOrderLogEdit.jsx
@@ -21,21 +21,20 @@
     DeleteButton,
 } from 'react-admin';
 import { useWatch, useFormContext } from "react-hook-form";
-import { Stack, Grid, Box, Typography } from '@mui/material';
+import { Stack, Grid, Box, Typography, Card } from '@mui/material';
 import * as Common from '@/utils/common';
 import { EDIT_MODE, REFERENCE_INPUT_PAGESIZE } from '@/config/setting';
 import EditBaseAside from "../components/EditBaseAside";
 import CustomerTopToolBar from "../components/EditTopToolBar";
 import MemoInput from "../components/MemoInput";
 import StatusSelectInput from "../components/StatusSelectInput";
-
+import AsnOrderItemLogList from "./AsnOrderItemLogList"
 const FormToolbar = () => {
     const { getValues } = useFormContext();
 
     return (
-        <Toolbar sx={{ justifyContent: 'space-between' }}>
+        <Toolbar sx={{ justifyContent: 'end' }}>
             <SaveButton />
-            <DeleteButton mutationMode="optimistic" />
         </Toolbar>
     )
 }
@@ -44,125 +43,106 @@
     const translate = useTranslate();
 
     return (
-        <Edit
-            redirect="list"
-            mutationMode={EDIT_MODE}
-            actions={<CustomerTopToolBar />}
-            aside={<EditBaseAside />}
-        >
-            <SimpleForm
-                shouldUnregister
-                warnWhenUnsavedChanges
-                toolbar={<FormToolbar />}
-                mode="onTouched"
-                defaultValues={{}}
-            // validate={(values) => { }}
+        <>
+            <Edit
+                redirect="list"
+                mutationMode={EDIT_MODE}
+                actions={<CustomerTopToolBar />}
+                aside={<EditBaseAside />}
             >
-                <Grid container width={{ xs: '100%', xl: '80%' }} rowSpacing={3} columnSpacing={3}>
-                    <Grid item xs={12} md={8}>
-                        <Typography variant="h6" gutterBottom>
-                            {translate('common.edit.title.main')}
-                        </Typography>
-                        <Stack direction='row' gap={2}>
-                            <TextInput
-                                label="table.field.asnOrderLog.code"
-                                source="code"
-                                parse={v => v}
-                                autoFocus
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <TextInput
-                                label="table.field.asnOrderLog.poCode"
-                                source="poCode"
-                                parse={v => v}
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <NumberInput
-                                label="table.field.asnOrderLog.poId"
-                                source="poId"
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <TextInput
-                                label="table.field.asnOrderLog.type"
-                                source="type"
-                                parse={v => v}
-                                validate={required()}
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <TextInput
-                                label="table.field.asnOrderLog.wkType"
-                                source="wkType"
-                                parse={v => v}
-                                validate={required()}
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <NumberInput
-                                label="table.field.asnOrderLog.anfme"
-                                source="anfme"
-                                validate={required()}
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <NumberInput
-                                label="table.field.asnOrderLog.qty"
-                                source="qty"
-                                validate={required()}
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <TextInput
-                                label="table.field.asnOrderLog.logisNo"
-                                source="logisNo"
-                                parse={v => v}
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <DateInput
-                                label="table.field.asnOrderLog.arrTime"
-                                source="arrTime"
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <SelectInput
-                                label="table.field.asnOrderLog.rleStatus"
-                                source="rleStatus"
-                                choices={[
-                                    { id: 0, name: ' 姝e父' },
-                                    { id:  1, name: ' 宸查噴鏀�' },
-                                ]}
-                                validate={required()}
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <SelectInput
-                                label="table.field.asnOrderLog.ntyStatus"
-                                source="ntyStatus"
-                                choices={[
-                                    { id: 0, name: ' 鏈笂鎶�' },
-                                    { id:  1, name: ' 宸蹭笂鎶�' },
-                                    { id:  2, name: ' 閮ㄥ垎涓婃姤' },
-                                ]}
-                                validate={required()}
-                            />
-                        </Stack>
-
+                <SimpleForm
+                    shouldUnregister
+                    warnWhenUnsavedChanges
+                    toolbar={<FormToolbar />}
+                    mode="onTouched"
+                    defaultValues={{}}
+                // validate={(values) => { }}
+                >
+                    <Grid container width={{ xs: '100%', xl: '80%' }} rowSpacing={3} columnSpacing={3}>
+                        <Grid item xs={24} md={12}>
+                            <Typography variant="h6" gutterBottom>
+                                {translate('common.edit.title.main')}
+                            </Typography>
+                            <Stack direction='row' gap={2}>
+                                <TextInput
+                                    label="table.field.asnOrderLog.code"
+                                    source="code"
+                                    parse={v => v}
+                                    readOnly
+                                />
+                                <TextInput
+                                    label="table.field.asnOrderLog.poCode"
+                                    source="poCode"
+                                    readOnly
+                                    parse={v => v}
+                                />
+                                <NumberInput
+                                    label="table.field.asnOrderLog.poId"
+                                    readOnly
+                                    source="poId"
+                                />
+                                <TextInput
+                                    label="table.field.asnOrderLog.type"
+                                    source="type"
+                                    readOnly
+                                    parse={v => v}
+                                    validate={required()}
+                                />
+                                <TextInput
+                                    label="table.field.asnOrderLog.wkType"
+                                    source="wkType"
+                                    readOnly
+                                    parse={v => v}
+                                    validate={required()}
+                                />
+                            </Stack>
+                            <Stack direction='row' gap={2}>
+                                <NumberInput
+                                    label="table.field.asnOrderLog.anfme"
+                                    source="anfme"
+                                    readOnly
+                                    validate={required()}
+                                />
+                                <NumberInput
+                                    label="table.field.asnOrderLog.qty"
+                                    source="qty"
+                                    readOnly
+                                    validate={required()}
+                                />
+                                <TextInput
+                                    label="table.field.asnOrderLog.logisNo"
+                                    source="logisNo"
+                                    readOnly
+                                    parse={v => v}
+                                />
+                                <DateInput
+                                    label="table.field.asnOrderLog.arrTime"
+                                    readOnly
+                                    source="arrTime"
+                                />
+                                <SelectInput
+                                    label="table.field.asnOrderLog.ntyStatus"
+                                    source="ntyStatus"
+                                    readOnly
+                                    choices={[
+                                        { id: 0, name: ' 鏈笂鎶�' },
+                                        { id: 1, name: ' 宸蹭笂鎶�' },
+                                        { id: 2, name: ' 閮ㄥ垎涓婃姤' },
+                                    ]}
+                                    validate={required()}
+                                />
+                            </Stack>
+                        </Grid>
                     </Grid>
-                    <Grid item xs={12} md={4}>
-                        <Typography variant="h6" gutterBottom>
-                            {translate('common.edit.title.common')}
-                        </Typography>
-                        <StatusSelectInput />
-                        <Box mt="2em" />
-                        <MemoInput />
-                    </Grid>
-                </Grid>
-            </SimpleForm>
-        </Edit >
+                </SimpleForm>
+            </Edit >
+            <Grid item xs={24} md={16} sx={{ marginTop: '1em' }}>
+                <Typography variant="h6" gutterBottom >
+                    {translate('common.edit.title.common')}
+                </Typography>
+            </Grid>
+            <AsnOrderItemLogList />
+        </>
     )
 }
 
diff --git a/rsf-admin/src/page/asnOrderLog/AsnOrderLogList.jsx b/rsf-admin/src/page/asnOrderLog/AsnOrderLogList.jsx
index a4e8f60..29c4a09 100644
--- a/rsf-admin/src/page/asnOrderLog/AsnOrderLogList.jsx
+++ b/rsf-admin/src/page/asnOrderLog/AsnOrderLogList.jsx
@@ -98,7 +98,6 @@
 
 const AsnOrderLogList = () => {
     const translate = useTranslate();
-
     const [createDialog, setCreateDialog] = useState(false);
     const [drawerVal, setDrawerVal] = useState(false);
 
@@ -120,7 +119,7 @@
                 actions={(
                     <TopToolbar>
                         <FilterButton />
-                        <MyCreateButton onClick={() => { setCreateDialog(true) }} />
+                        {/* <MyCreateButton onClick={() => { setCreateDialog(true) }} /> */}
                         <SelectColumnsButton preferenceKey='asnOrderLog' />
                         <MyExportButton />
                     </TopToolbar>
@@ -130,8 +129,8 @@
                 <StyledDatagrid
                     preferenceKey='asnOrderLog'
                     bulkActionButtons={() => <BulkDeleteButton mutationMode={OPERATE_MODE} />}
-                    rowClick={(id, resource, record) => false}
-                    expand={() => <AsnOrderLogPanel />}
+                    rowClick={'edit'}
+                    expand={false}
                     expandSingle={true}
                     omit={['id', 'createTime', 'createBy', 'memo']}
                 >
@@ -158,10 +157,6 @@
                     <DateField source="createTime" label="common.field.createTime" showTime />
                     <BooleanField source="statusBool" label="common.field.status" sortable={false} />
                     <TextField source="memo" label="common.field.memo" sortable={false} />
-                    <WrapperField cellClassName="opt" label="common.field.opt">
-                        <EditButton sx={{ padding: '1px', fontSize: '.75rem' }} />
-                        <DeleteButton sx={{ padding: '1px', fontSize: '.75rem' }} mutationMode={OPERATE_MODE} />
-                    </WrapperField>
                 </StyledDatagrid>
             </List>
             <AsnOrderLogCreate
diff --git a/rsf-admin/src/page/task/TaskEdit.jsx b/rsf-admin/src/page/task/TaskEdit.jsx
index bca87b3..166b846 100644
--- a/rsf-admin/src/page/task/TaskEdit.jsx
+++ b/rsf-admin/src/page/task/TaskEdit.jsx
@@ -107,14 +107,12 @@
                     </Grid>
                 </SimpleForm>
             </Edit >
-            <Card sx={{ marginTop: '1em', }}>
-                <Grid item xs={24} md={16} sx={{ margin: '1em' }}>
-                    <Typography variant="h6" gutterBottom >
-                        {translate('common.edit.title.common')}
-                    </Typography>
-                    <TaskItemList />
-                </Grid>
-            </Card>
+            <Grid item xs={24} md={16} sx={{ margin: '1em', height: 'auto' }}>
+                <Typography variant="h6" gutterBottom >
+                    {translate('common.edit.title.common')}
+                </Typography>
+            </Grid>
+            <TaskItemList />
         </>
     )
 }
diff --git a/rsf-admin/src/page/taskItemLog/TaskItemLogCreate.jsx b/rsf-admin/src/page/taskItemLog/TaskItemLogCreate.jsx
deleted file mode 100644
index 29f89f7..0000000
--- a/rsf-admin/src/page/taskItemLog/TaskItemLogCreate.jsx
+++ /dev/null
@@ -1,216 +0,0 @@
-import React, { useState, useRef, useEffect, useMemo } from "react";
-import {
-    CreateBase,
-    useTranslate,
-    TextInput,
-    NumberInput,
-    BooleanInput,
-    DateInput,
-    SaveButton,
-    SelectInput,
-    ReferenceInput,
-    ReferenceArrayInput,
-    AutocompleteInput,
-    Toolbar,
-    required,
-    useDataProvider,
-    useNotify,
-    Form,
-    useCreateController,
-} from 'react-admin';
-import {
-    Dialog,
-    DialogActions,
-    DialogContent,
-    DialogTitle,
-    Stack,
-    Grid,
-    Box,
-} from '@mui/material';
-import DialogCloseButton from "../components/DialogCloseButton";
-import StatusSelectInput from "../components/StatusSelectInput";
-import MemoInput from "../components/MemoInput";
-
-const TaskItemLogCreate = (props) => {
-    const { open, setOpen } = props;
-
-    const translate = useTranslate();
-    const notify = useNotify();
-
-    const handleClose = (event, reason) => {
-        if (reason !== "backdropClick") {
-            setOpen(false);
-        }
-    };
-
-    const handleSuccess = async (data) => {
-        setOpen(false);
-        notify('common.response.success');
-    };
-
-    const handleError = async (error) => {
-        notify(error.message || 'common.response.fail', { type: 'error', messageArgs: { _: error.message } });
-    };
-
-    return (
-        <>
-            <CreateBase
-                record={{}}
-                transform={(data) => {
-                    return data;
-                }}
-                mutationOptions={{ onSuccess: handleSuccess, onError: handleError }}
-            >
-                <Dialog
-                    open={open}
-                    onClose={handleClose}
-                    aria-labelledby="form-dialog-title"
-                    fullWidth
-                    disableRestoreFocus
-                    maxWidth="md"   // 'xs' | 'sm' | 'md' | 'lg' | 'xl'
-                >
-                    <Form>
-                        <DialogTitle id="form-dialog-title" sx={{
-                            position: 'sticky',
-                            top: 0,
-                            backgroundColor: 'background.paper',
-                            zIndex: 1000
-                        }}
-                        >
-                            {translate('create.title')}
-                            <Box sx={{ position: 'absolute', top: 8, right: 8, zIndex: 1001 }}>
-                                <DialogCloseButton onClose={handleClose} />
-                            </Box>
-                        </DialogTitle>
-                        <DialogContent sx={{ mt: 2 }}>
-                            <Grid container rowSpacing={2} columnSpacing={2}>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <NumberInput
-                                        label="table.field.taskItemLog.taskItemId"
-                                        source="taskItemId"
-                                        autoFocus
-                                    />
-                                </Grid>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <NumberInput
-                                        label="table.field.taskItemLog.taskId"
-                                        source="taskId"
-                                    />
-                                </Grid>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <NumberInput
-                                        label="table.field.taskItemLog.orderId"
-                                        source="orderId"
-                                    />
-                                </Grid>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <TextInput
-                                        label="table.field.taskItemLog.orderType"
-                                        source="orderType"
-                                        parse={v => v}
-                                    />
-                                </Grid>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <NumberInput
-                                        label="table.field.taskItemLog.orderItemId"
-                                        source="orderItemId"
-                                    />
-                                </Grid>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <NumberInput
-                                        label="table.field.taskItemLog.source"
-                                        source="source"
-                                    />
-                                </Grid>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <NumberInput
-                                        label="table.field.taskItemLog.matnrId"
-                                        source="matnrId"
-                                    />
-                                </Grid>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <TextInput
-                                        label="table.field.taskItemLog.maktx"
-                                        source="maktx"
-                                        parse={v => v}
-                                    />
-                                </Grid>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <TextInput
-                                        label="table.field.taskItemLog.matnrCode"
-                                        source="matnrCode"
-                                        parse={v => v}
-                                    />
-                                </Grid>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <TextInput
-                                        label="table.field.taskItemLog.trackCode"
-                                        source="trackCode"
-                                        parse={v => v}
-                                    />
-                                </Grid>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <TextInput
-                                        label="table.field.taskItemLog.unit"
-                                        source="unit"
-                                        parse={v => v}
-                                    />
-                                </Grid>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <NumberInput
-                                        label="table.field.taskItemLog.anfme"
-                                        source="anfme"
-                                    />
-                                </Grid>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <TextInput
-                                        label="table.field.taskItemLog.batch"
-                                        source="batch"
-                                        parse={v => v}
-                                    />
-                                </Grid>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <TextInput
-                                        label="table.field.taskItemLog.spec"
-                                        source="spec"
-                                        parse={v => v}
-                                    />
-                                </Grid>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <TextInput
-                                        label="table.field.taskItemLog.model"
-                                        source="model"
-                                        parse={v => v}
-                                    />
-                                </Grid>
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <TextInput
-                                        label="table.field.taskItemLog.fieldsIndex"
-                                        source="fieldsIndex"
-                                        parse={v => v}
-                                    />
-                                </Grid>
-
-                                <Grid item xs={6} display="flex" gap={1}>
-                                    <StatusSelectInput />
-                                </Grid>
-                                <Grid item xs={12} display="flex" gap={1}>
-                                    <Stack direction="column" spacing={1} width={'100%'}>
-                                        <MemoInput />
-                                    </Stack>
-                                </Grid>
-                            </Grid>
-                        </DialogContent>
-                        <DialogActions sx={{ position: 'sticky', bottom: 0, backgroundColor: 'background.paper', zIndex: 1000 }}>
-                            <Toolbar sx={{ width: '100%', justifyContent: 'space-between' }}  >
-                                <SaveButton />
-                            </Toolbar>
-                        </DialogActions>
-                    </Form>
-                </Dialog>
-            </CreateBase>
-        </>
-    )
-}
-
-export default TaskItemLogCreate;
diff --git a/rsf-admin/src/page/taskItemLog/TaskItemLogEdit.jsx b/rsf-admin/src/page/taskItemLog/TaskItemLogEdit.jsx
deleted file mode 100644
index 229ce32..0000000
--- a/rsf-admin/src/page/taskItemLog/TaskItemLogEdit.jsx
+++ /dev/null
@@ -1,188 +0,0 @@
-import React, { useState, useRef, useEffect, useMemo } from "react";
-import {
-    Edit,
-    SimpleForm,
-    FormDataConsumer,
-    useTranslate,
-    TextInput,
-    NumberInput,
-    BooleanInput,
-    DateInput,
-    SelectInput,
-    ReferenceInput,
-    ReferenceArrayInput,
-    AutocompleteInput,
-    SaveButton,
-    Toolbar,
-    Labeled,
-    NumberField,
-    required,
-    useRecordContext,
-    DeleteButton,
-} from 'react-admin';
-import { useWatch, useFormContext } from "react-hook-form";
-import { Stack, Grid, Box, Typography } from '@mui/material';
-import * as Common from '@/utils/common';
-import { EDIT_MODE, REFERENCE_INPUT_PAGESIZE } from '@/config/setting';
-import EditBaseAside from "../components/EditBaseAside";
-import CustomerTopToolBar from "../components/EditTopToolBar";
-import MemoInput from "../components/MemoInput";
-import StatusSelectInput from "../components/StatusSelectInput";
-
-const FormToolbar = () => {
-    const { getValues } = useFormContext();
-
-    return (
-        <Toolbar sx={{ justifyContent: 'space-between' }}>
-            <SaveButton />
-            <DeleteButton mutationMode="optimistic" />
-        </Toolbar>
-    )
-}
-
-const TaskItemLogEdit = () => {
-    const translate = useTranslate();
-
-    return (
-        <Edit
-            redirect="list"
-            mutationMode={EDIT_MODE}
-            actions={<CustomerTopToolBar />}
-            aside={<EditBaseAside />}
-        >
-            <SimpleForm
-                shouldUnregister
-                warnWhenUnsavedChanges
-                toolbar={<FormToolbar />}
-                mode="onTouched"
-                defaultValues={{}}
-            // validate={(values) => { }}
-            >
-                <Grid container width={{ xs: '100%', xl: '80%' }} rowSpacing={3} columnSpacing={3}>
-                    <Grid item xs={12} md={8}>
-                        <Typography variant="h6" gutterBottom>
-                            {translate('common.edit.title.main')}
-                        </Typography>
-                        <Stack direction='row' gap={2}>
-                            <NumberInput
-                                label="table.field.taskItemLog.taskItemId"
-                                source="taskItemId"
-                                autoFocus
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <NumberInput
-                                label="table.field.taskItemLog.taskId"
-                                source="taskId"
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <NumberInput
-                                label="table.field.taskItemLog.orderId"
-                                source="orderId"
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <TextInput
-                                label="table.field.taskItemLog.orderType"
-                                source="orderType"
-                                parse={v => v}
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <NumberInput
-                                label="table.field.taskItemLog.orderItemId"
-                                source="orderItemId"
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <NumberInput
-                                label="table.field.taskItemLog.source"
-                                source="source"
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <NumberInput
-                                label="table.field.taskItemLog.matnrId"
-                                source="matnrId"
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <TextInput
-                                label="table.field.taskItemLog.maktx"
-                                source="maktx"
-                                parse={v => v}
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <TextInput
-                                label="table.field.taskItemLog.matnrCode"
-                                source="matnrCode"
-                                parse={v => v}
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <TextInput
-                                label="table.field.taskItemLog.trackCode"
-                                source="trackCode"
-                                parse={v => v}
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <TextInput
-                                label="table.field.taskItemLog.unit"
-                                source="unit"
-                                parse={v => v}
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <NumberInput
-                                label="table.field.taskItemLog.anfme"
-                                source="anfme"
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <TextInput
-                                label="table.field.taskItemLog.batch"
-                                source="batch"
-                                parse={v => v}
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <TextInput
-                                label="table.field.taskItemLog.spec"
-                                source="spec"
-                                parse={v => v}
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <TextInput
-                                label="table.field.taskItemLog.model"
-                                source="model"
-                                parse={v => v}
-                            />
-                        </Stack>
-                        <Stack direction='row' gap={2}>
-                            <TextInput
-                                label="table.field.taskItemLog.fieldsIndex"
-                                source="fieldsIndex"
-                                parse={v => v}
-                            />
-                        </Stack>
-
-                    </Grid>
-                    <Grid item xs={12} md={4}>
-                        <Typography variant="h6" gutterBottom>
-                            {translate('common.edit.title.common')}
-                        </Typography>
-                        <StatusSelectInput />
-                        <Box mt="2em" />
-                        <MemoInput />
-                    </Grid>
-                </Grid>
-            </SimpleForm>
-        </Edit >
-    )
-}
-
-export default TaskItemLogEdit;
diff --git a/rsf-admin/src/page/taskItemLog/TaskItemLogList.jsx b/rsf-admin/src/page/taskItemLog/TaskItemLogList.jsx
deleted file mode 100644
index 58c7f4f..0000000
--- a/rsf-admin/src/page/taskItemLog/TaskItemLogList.jsx
+++ /dev/null
@@ -1,172 +0,0 @@
-import React, { useState, useRef, useEffect, useMemo, useCallback } from "react";
-import { useNavigate } from 'react-router-dom';
-import {
-    List,
-    DatagridConfigurable,
-    SearchInput,
-    TopToolbar,
-    SelectColumnsButton,
-    EditButton,
-    FilterButton,
-    CreateButton,
-    ExportButton,
-    BulkDeleteButton,
-    WrapperField,
-    useRecordContext,
-    useTranslate,
-    useNotify,
-    useListContext,
-    FunctionField,
-    TextField,
-    NumberField,
-    DateField,
-    BooleanField,
-    ReferenceField,
-    TextInput,
-    DateTimeInput,
-    DateInput,
-    SelectInput,
-    NumberInput,
-    ReferenceInput,
-    ReferenceArrayInput,
-    AutocompleteInput,
-    DeleteButton,
-} from 'react-admin';
-import { Box, Typography, Card, Stack } from '@mui/material';
-import { styled } from '@mui/material/styles';
-import TaskItemLogCreate from "./TaskItemLogCreate";
-import TaskItemLogPanel from "./TaskItemLogPanel";
-import EmptyData from "../components/EmptyData";
-import MyCreateButton from "../components/MyCreateButton";
-import MyExportButton from '../components/MyExportButton';
-import PageDrawer from "../components/PageDrawer";
-import MyField from "../components/MyField";
-import { PAGE_DRAWER_WIDTH, OPERATE_MODE, DEFAULT_PAGE_SIZE } from '@/config/setting';
-import * as Common from '@/utils/common';
-
-const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({
-    '& .css-1vooibu-MuiSvgIcon-root': {
-        height: '.9em'
-    },
-    '& .RaDatagrid-row': {
-        cursor: 'auto'
-    },
-    '& .column-name': {
-    },
-    '& .opt': {
-        width: 200
-    },
-}));
-
-const filters = [
-    <SearchInput source="condition" alwaysOn />,
-    <DateInput label='common.time.after' source="timeStart" alwaysOn />,
-    <DateInput label='common.time.before' source="timeEnd" alwaysOn />,
-
-    <NumberInput source="taskItemId" label="table.field.taskItemLog.taskItemId" />,
-    <NumberInput source="taskId" label="table.field.taskItemLog.taskId" />,
-    <NumberInput source="orderId" label="table.field.taskItemLog.orderId" />,
-    <TextInput source="orderType" label="table.field.taskItemLog.orderType" />,
-    <NumberInput source="orderItemId" label="table.field.taskItemLog.orderItemId" />,
-    <NumberInput source="source" label="table.field.taskItemLog.source" />,
-    <NumberInput source="matnrId" label="table.field.taskItemLog.matnrId" />,
-    <TextInput source="maktx" label="table.field.taskItemLog.maktx" />,
-    <TextInput source="matnrCode" label="table.field.taskItemLog.matnrCode" />,
-    <TextInput source="trackCode" label="table.field.taskItemLog.trackCode" />,
-    <TextInput source="unit" label="table.field.taskItemLog.unit" />,
-    <NumberInput source="anfme" label="table.field.taskItemLog.anfme" />,
-    <TextInput source="batch" label="table.field.taskItemLog.batch" />,
-    <TextInput source="spec" label="table.field.taskItemLog.spec" />,
-    <TextInput source="model" label="table.field.taskItemLog.model" />,
-    <TextInput source="fieldsIndex" label="table.field.taskItemLog.fieldsIndex" />,
-
-    <TextInput label="common.field.memo" source="memo" />,
-    <SelectInput
-        label="common.field.status"
-        source="status"
-        choices={[
-            { id: '1', name: 'common.enums.statusTrue' },
-            { id: '0', name: 'common.enums.statusFalse' },
-        ]}
-        resettable
-    />,
-]
-
-const TaskItemLogList = () => {
-    const translate = useTranslate();
-
-    const [createDialog, setCreateDialog] = useState(false);
-    const [drawerVal, setDrawerVal] = useState(false);
-
-    return (
-        <Box display="flex">
-            <List
-                sx={{
-                    flexGrow: 1,
-                    transition: (theme) =>
-                        theme.transitions.create(['all'], {
-                            duration: theme.transitions.duration.enteringScreen,
-                        }),
-                    marginRight: !!drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0,
-                }}
-                title={"menu.taskItemLog"}
-                filters={filters}
-                empty={false}
-                sort={{ field: "create_time", order: "desc" }}
-                actions={(
-                    <TopToolbar>
-                        <FilterButton />
-                        <SelectColumnsButton preferenceKey='taskItemLog' />
-                        <MyExportButton />
-                    </TopToolbar>
-                )}
-                perPage={DEFAULT_PAGE_SIZE}
-            >
-                <StyledDatagrid
-                    preferenceKey='taskItemLog'
-                    bulkActionButtons={false}
-                    rowClick={(id, resource, record) => false}
-                    expandSingle={true}
-                    omit={['id', 'createTime', 'createBy', 'memo', 'taskId', 'orderId', 'orderItemId', 'matnrId']}
-                >
-                    <NumberField source="id" />
-                    <NumberField source="taskItemId" label="table.field.taskItemLog.taskItemId" />
-                    <NumberField source="taskId" label="table.field.taskItemLog.taskId" />
-                    <NumberField source="orderId" label="table.field.taskItemLog.orderId" />
-                    <TextField source="orderType" label="table.field.taskItemLog.orderType" />
-                    <NumberField source="orderItemId" label="table.field.taskItemLog.orderItemId" />
-                    <NumberField source="source" label="table.field.taskItemLog.source" />
-                    <NumberField source="matnrId" label="table.field.taskItemLog.matnrId" />
-                    <TextField source="maktx" label="table.field.taskItemLog.maktx" />
-                    <TextField source="matnrCode" label="table.field.taskItemLog.matnrCode" />
-                    <TextField source="trackCode" label="table.field.taskItemLog.trackCode" />
-                    <TextField source="unit" label="table.field.taskItemLog.unit" />
-                    <NumberField source="anfme" label="table.field.taskItemLog.anfme" />
-                    <TextField source="batch" label="table.field.taskItemLog.batch" />
-                    <TextField source="spec" label="table.field.taskItemLog.spec" />
-                    <TextField source="model" label="table.field.taskItemLog.model" />
-                    <TextField source="fieldsIndex" label="table.field.taskItemLog.fieldsIndex" />
-
-                    <ReferenceField source="updateBy" label="common.field.updateBy" reference="user" link={false} sortable={false}>
-                        <TextField source="nickname" />
-                    </ReferenceField>
-                    <DateField source="updateTime" label="common.field.updateTime" showTime />
-                    <ReferenceField source="createBy" label="common.field.createBy" reference="user" link={false} sortable={false}>
-                        <TextField source="nickname" />
-                    </ReferenceField>
-                    <DateField source="createTime" label="common.field.createTime" showTime />
-                    <BooleanField source="statusBool" label="common.field.status" sortable={false} />
-                    <TextField source="memo" label="common.field.memo" sortable={false} />
-                </StyledDatagrid>
-            </List>
-            <PageDrawer
-                title='TaskItemLog Detail'
-                drawerVal={drawerVal}
-                setDrawerVal={setDrawerVal}
-            >
-            </PageDrawer>
-        </Box>
-    )
-}
-
-export default TaskItemLogList;
diff --git a/rsf-admin/src/page/taskItemLog/TaskItemLogPanel.jsx b/rsf-admin/src/page/taskItemLog/TaskItemLogPanel.jsx
deleted file mode 100644
index 6f863f8..0000000
--- a/rsf-admin/src/page/taskItemLog/TaskItemLogPanel.jsx
+++ /dev/null
@@ -1,147 +0,0 @@
-import React, { useState, useRef, useEffect, useMemo } from "react";
-import { Box, Card, CardContent, Grid, Typography, Tooltip } from '@mui/material';
-import {
-    useTranslate,
-    useRecordContext,
-} from 'react-admin';
-import PanelTypography from "../components/PanelTypography";
-import * as Common from '@/utils/common'
-
-const TaskItemLogPanel = () => {
-    const record = useRecordContext();
-    if (!record) return null;
-    const translate = useTranslate();
-    return (
-        <>
-            <Card sx={{ width: { xs: 300, sm: 500, md: 600, lg: 800 }, margin: 'auto' }}>
-                <CardContent>
-                    <Grid container spacing={2}>
-                        <Grid item xs={12} sx={{ display: 'flex', justifyContent: 'space-between' }}>
-                            <Typography variant="h6" gutterBottom align="left" sx={{
-                                maxWidth: { xs: '100px', sm: '180px', md: '260px', lg: '360px' },
-                                whiteSpace: 'nowrap',
-                                overflow: 'hidden',
-                                textOverflow: 'ellipsis',
-                            }}>
-                                {Common.camelToPascalWithSpaces(translate('table.field.taskItemLog.id'))}: {record.id}
-                            </Typography>
-                            {/*  inherit, primary, secondary, textPrimary, textSecondary, error */}
-                            <Typography variant="h6" gutterBottom align="right" >
-                                ID: {record.id}
-                            </Typography>
-                        </Grid>
-                    </Grid>
-                    <Grid container spacing={2}>
-                        <Grid item xs={12} container alignContent="flex-end">
-                            <Typography variant="caption" color="textSecondary" sx={{ wordWrap: 'break-word', wordBreak: 'break-all' }}>
-                                {Common.camelToPascalWithSpaces(translate('common.field.memo'))}:{record.memo}
-                            </Typography>
-                        </Grid>
-                    </Grid>
-                    <Box height={20}>&nbsp;</Box>
-                    <Grid container spacing={2}>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.taskItemId" 
-                                property={record.taskItemId}
-                            />
-                        </Grid>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.taskId" 
-                                property={record.taskId}
-                            />
-                        </Grid>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.orderId" 
-                                property={record.orderId}
-                            />
-                        </Grid>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.orderType" 
-                                property={record.orderType}
-                            />
-                        </Grid>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.orderItemId" 
-                                property={record.orderItemId}
-                            />
-                        </Grid>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.source" 
-                                property={record.source}
-                            />
-                        </Grid>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.matnrId" 
-                                property={record.matnrId}
-                            />
-                        </Grid>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.maktx" 
-                                property={record.maktx}
-                            />
-                        </Grid>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.matnrCode" 
-                                property={record.matnrCode}
-                            />
-                        </Grid>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.trackCode" 
-                                property={record.trackCode}
-                            />
-                        </Grid>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.unit" 
-                                property={record.unit}
-                            />
-                        </Grid>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.anfme" 
-                                property={record.anfme}
-                            />
-                        </Grid>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.batch" 
-                                property={record.batch}
-                            />
-                        </Grid>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.spec" 
-                                property={record.spec}
-                            />
-                        </Grid>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.model" 
-                                property={record.model}
-                            />
-                        </Grid>
-                        <Grid item xs={6}>
-                            <PanelTypography
-                                title="table.field.taskItemLog.fieldsIndex" 
-                                property={record.fieldsIndex}
-                            />
-                        </Grid>
-
-                    </Grid>
-                </CardContent>
-            </Card >
-        </>
-    );
-};
-
-export default TaskItemLogPanel;
diff --git a/rsf-admin/src/page/taskItemLog/index.jsx b/rsf-admin/src/page/taskItemLog/index.jsx
deleted file mode 100644
index 0208e30..0000000
--- a/rsf-admin/src/page/taskItemLog/index.jsx
+++ /dev/null
@@ -1,18 +0,0 @@
-import React, { useState, useRef, useEffect, useMemo } from "react";
-import {
-    ListGuesser,
-    EditGuesser,
-    ShowGuesser,
-} from "react-admin";
-
-import TaskItemLogList from "./TaskItemLogList";
-import TaskItemLogEdit from "./TaskItemLogEdit";
-
-export default {
-    list: TaskItemLogList,
-    edit: TaskItemLogEdit,
-    show: ShowGuesser,
-    recordRepresentation: (record) => {
-        return `${record.id}`
-    }
-};
diff --git a/rsf-admin/src/page/taskLog/TaskItemLogList.jsx b/rsf-admin/src/page/taskLog/TaskItemLogList.jsx
index 72abff1..acf1ae7 100644
--- a/rsf-admin/src/page/taskLog/TaskItemLogList.jsx
+++ b/rsf-admin/src/page/taskLog/TaskItemLogList.jsx
@@ -31,6 +31,7 @@
     ReferenceArrayInput,
     AutocompleteInput,
     DeleteButton,
+    useGetRecordId,
 } from 'react-admin';
 import { Box, Typography, Card, Stack } from '@mui/material';
 import { styled } from '@mui/material/styles';
@@ -88,13 +89,15 @@
 
 const TaskItemLogList = () => {
     const translate = useTranslate();
-
     const [createDialog, setCreateDialog] = useState(false);
     const [drawerVal, setDrawerVal] = useState(false);
+    const recodeId = useGetRecordId();
+
 
     return (
         <Box display="flex">
             <List
+                resource="taskItemLog"
                 sx={{
                     flexGrow: 1,
                     transition: (theme) =>
@@ -106,6 +109,7 @@
                 title={"menu.taskItemLog"}
                 filters={filters}
                 empty={false}
+                filter={{logId: Number(recodeId) }}
                 sort={{ field: "create_time", order: "desc" }}
                 actions={(
                     <TopToolbar>
@@ -138,8 +142,8 @@
                     <TextField source="batch" label="table.field.taskItemLog.batch" />
                     <TextField source="spec" label="table.field.taskItemLog.spec" />
                     <TextField source="model" label="table.field.taskItemLog.model" />
-                    <TextField source="updateBy$" label="common.field.updateBy"/>
-                    <TextField source="createBy$" label="common.field.createBy"/>
+                    <TextField source="updateBy$" label="common.field.updateBy" />
+                    <TextField source="createBy$" label="common.field.createBy" />
                     <DateField source="updateTime" label="common.field.updateTime" showTime />
                     <DateField source="createTime" label="common.field.createTime" showTime />
                     <BooleanField source="statusBool" label="common.field.status" sortable={false} />
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrderItemLog.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrderItemLog.java
index 6522439..767d42d 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrderItemLog.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrderItemLog.java
@@ -37,6 +37,8 @@
     @TableId(value = "id", type = IdType.AUTO)
     private Long id;
 
+    @ApiModelProperty("涓诲崟ID")
+    private Long logId;
 
     @ApiModelProperty("Item ID")
     private Long asnItemId;
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TaskItemLog.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TaskItemLog.java
index 498f156..18dc247 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TaskItemLog.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TaskItemLog.java
@@ -37,6 +37,9 @@
     @TableId(value = "id", type = IdType.AUTO)
     private Long id;
 
+    @ApiModelProperty("涓诲崟ID")
+    private Long logId;
+
     /**
      * 涓诲崟ID
      */

--
Gitblit v1.9.1