From a11e93f691f128763fa3c441f0936abec7a9655e Mon Sep 17 00:00:00 2001
From: verou <857149855@qq.com>
Date: 星期五, 11 四月 2025 16:38:47 +0800
Subject: [PATCH] Merge branch 'devlop' of http://47.97.1.152:5880/r/wms-master into devlop

---
 rsf-admin/src/page/asnOrder/AsnOrderList.jsx                                  |   11 +----
 rsf-admin/src/page/basicInfo/loc/BindModal.jsx                                |    3 +
 rsf-server/src/main/java/com/vincent/rsf/server/common/utils/FieldsUtils.java |    2 
 rsf-admin/src/page/system/dicts/dictType/DictDataEdit.jsx                     |    3 +
 rsf-admin/src/page/system/serialRule/SerialRuleItemEdit.jsx                   |    5 ++
 rsf-admin/src/page/purchase/PurchaseItemList.jsx                              |   15 -------
 rsf-admin/src/page/system/dicts/dictType/DictDataList.jsx                     |   21 +++++-----
 rsf-admin/src/page/asnOrderLog/AsnOrderLogEdit.jsx                            |    9 +---
 rsf-admin/src/config/setting.js                                               |    2 
 rsf-admin/src/page/asnOrder/AsnOrderModal.jsx                                 |    5 --
 10 files changed, 25 insertions(+), 51 deletions(-)

diff --git a/rsf-admin/src/config/setting.js b/rsf-admin/src/config/setting.js
index 9fe0af1..2e86d71 100644
--- a/rsf-admin/src/config/setting.js
+++ b/rsf-admin/src/config/setting.js
@@ -31,7 +31,7 @@
 
 export const REFERENCE_INPUT_PAGESIZE = 1000;
 
-export const OPERATE_MODE = 'undoable'; // pessimistic | optimistic(tip) | undoable
+export const OPERATE_MODE = 'pessimistic'; // pessimistic | optimistic(tip) | undoable
 
 export const EDIT_MODE = 'pessimistic'; // pessimistic | undoable
 
diff --git a/rsf-admin/src/page/asnOrder/AsnOrderList.jsx b/rsf-admin/src/page/asnOrder/AsnOrderList.jsx
index 313e11b..26d7d70 100644
--- a/rsf-admin/src/page/asnOrder/AsnOrderList.jsx
+++ b/rsf-admin/src/page/asnOrder/AsnOrderList.jsx
@@ -130,11 +130,9 @@
         sort={{ field: "create_time", order: "desc" }}
         actions={(
           <TopToolbar>
-
             <FilterButton />
             <MyCreateButton onClick={() => { setCreateDialog(true); setmodalType(0) }} />
             <SelectColumnsButton preferenceKey='asnOrder' />
-
             <MyExportButton />
           </TopToolbar>
         )}
@@ -159,14 +157,9 @@
           <TextField source="logisNo" label="table.field.asnOrder.logisNo" />
           <DateField source="arrTime" label="table.field.asnOrder.arrTime" showTime />
           <TextField source="rleStatus$" label="table.field.asnOrder.rleStatus" sortable={false} />
-
-          <ReferenceField source="updateBy" label="common.field.updateBy" reference="user" link={false} sortable={false}>
-            <TextField source="nickname" />
-          </ReferenceField>
+          <TextField source="updateBy$" label="common.field.updateBy"  />
           <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>
+          <TextField source="createBy$" label="common.field.createBy" />
           <DateField source="createTime" label="common.field.createTime" showTime />
           <BillStatusField cellClassName="status" source="exceStatus" label="table.field.asnOrder.exceStatus" />
           <TextField source="memo" label="common.field.memo" sortable={false} />
diff --git a/rsf-admin/src/page/asnOrder/AsnOrderModal.jsx b/rsf-admin/src/page/asnOrder/AsnOrderModal.jsx
index 89de5f9..f12bc46 100644
--- a/rsf-admin/src/page/asnOrder/AsnOrderModal.jsx
+++ b/rsf-admin/src/page/asnOrder/AsnOrderModal.jsx
@@ -233,10 +233,7 @@
                                         dictTypeCode="sys_order_type"
                                         required
                                     />
-
-
                                 </Grid>
-
                                 <Grid item md={3}>
                                     <DictSelect
                                         label={translate("table.field.asnOrder.wkType")}
@@ -246,7 +243,6 @@
                                         required
                                     />
                                 </Grid>
-
                                 <Grid item md={3}>
                                     <TextField
                                         label={translate("table.field.asnOrder.poCode")}
@@ -254,7 +250,6 @@
                                         onChange={(e) => handleChange(e.target.value, 'poCode')}
                                     />
                                 </Grid>
-
                                 <Grid item md={3}>
                                     <TextField
                                         label={translate("table.field.asnOrder.logisNo")}
diff --git a/rsf-admin/src/page/asnOrderLog/AsnOrderLogEdit.jsx b/rsf-admin/src/page/asnOrderLog/AsnOrderLogEdit.jsx
index 3160580..4e61d1b 100644
--- a/rsf-admin/src/page/asnOrderLog/AsnOrderLogEdit.jsx
+++ b/rsf-admin/src/page/asnOrderLog/AsnOrderLogEdit.jsx
@@ -22,16 +22,11 @@
 } from 'react-admin';
 import { useWatch, useFormContext } from "react-hook-form";
 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"
+import AsnOrderItemLogList from "./AsnOrderItemLogList"
 const FormToolbar = () => {
-    const { getValues } = useFormContext();
-
     return (
         <Toolbar sx={{ justifyContent: 'end' }}>
             <SaveButton />
@@ -141,7 +136,7 @@
                     {translate('common.edit.title.common')}
                 </Typography>
             </Grid>
-            {/* <AsnOrderItemLogList /> */}
+            <AsnOrderItemLogList />
         </>
     )
 }
diff --git a/rsf-admin/src/page/basicInfo/loc/BindModal.jsx b/rsf-admin/src/page/basicInfo/loc/BindModal.jsx
index 41e8d6f..e0f7338 100644
--- a/rsf-admin/src/page/basicInfo/loc/BindModal.jsx
+++ b/rsf-admin/src/page/basicInfo/loc/BindModal.jsx
@@ -110,6 +110,7 @@
         const parmas = {
             locId: selectedIds,
             areaMatId: formData.areaMatId,
+            groupId: formData.groupId,
             matnrId: formData.matnrId,
         }
 
@@ -170,7 +171,7 @@
                                 <ReferenceArrayInput source="matnrId" reference="matnr" filter={{ groupId: formData.groupId }}>
                                     <SelectArrayInput
                                         label="table.field.locAreaMatRela.matnrId"
-                                        validate={required()}
+                                        // validate={required()}
                                         value={formData.matnrId}
                                         onChange={(e) => handleChange(e.target.value, 'matnrId')}
                                     />
diff --git a/rsf-admin/src/page/purchase/PurchaseItemList.jsx b/rsf-admin/src/page/purchase/PurchaseItemList.jsx
index 970263d..ae4fd96 100644
--- a/rsf-admin/src/page/purchase/PurchaseItemList.jsx
+++ b/rsf-admin/src/page/purchase/PurchaseItemList.jsx
@@ -1,5 +1,4 @@
 import React, { useState, useRef, useEffect, useMemo, useCallback } from "react";
-import { useNavigate, useLocation } from 'react-router-dom';
 import {
   List,
   DatagridConfigurable,
@@ -8,28 +7,16 @@
   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,
   useGetRecordId,
 } from 'react-admin';
@@ -58,7 +45,6 @@
 
 const filters = [
   <SearchInput source="condition" alwaysOn />,
-
   <NumberInput source="purchaseId" label="table.field.purchaseItem.purchaseId" />,
   <TextInput source="platItemId" label="table.field.purchaseItem.platItemId" />,
   <TextInput source="matnrCode" label="table.field.purchaseItem.matnrCode" />,
@@ -72,7 +58,6 @@
   <TextInput source="splrName" label="table.field.purchaseItem.splrName" />,
   <TextInput source="splrCode" label="table.field.purchaseItem.splrCode" />,
   <TextInput source="splrBatch" label="table.field.purchaseItem.splrBatch" />,
-
   <TextInput label="common.field.memo" source="memo" />,
   <SelectInput
     label="common.field.status"
diff --git a/rsf-admin/src/page/system/dicts/dictType/DictDataEdit.jsx b/rsf-admin/src/page/system/dicts/dictType/DictDataEdit.jsx
index c80fbfc..dcd06ee 100644
--- a/rsf-admin/src/page/system/dicts/dictType/DictDataEdit.jsx
+++ b/rsf-admin/src/page/system/dicts/dictType/DictDataEdit.jsx
@@ -24,6 +24,7 @@
     useRedirect,
     useEditContext,
     EditBase,
+    useGetOne,
 } from 'react-admin';
 import { useWatch, useFormContext } from "react-hook-form";
 import { Stack, Grid, Box, Typography, Dialog, DialogActions, DialogContent, DialogTitle } from '@mui/material';
@@ -57,6 +58,8 @@
             setOpen(false);
         }
     };
+    const {data, isPending, } = useGetOne('dictData', {id: record?.id});
+    if (data == null || data == undefined) {return}
     return (
         <>
             <Edit
diff --git a/rsf-admin/src/page/system/dicts/dictType/DictDataList.jsx b/rsf-admin/src/page/system/dicts/dictType/DictDataList.jsx
index c039b96..5d6655a 100644
--- a/rsf-admin/src/page/system/dicts/dictType/DictDataList.jsx
+++ b/rsf-admin/src/page/system/dicts/dictType/DictDataList.jsx
@@ -105,7 +105,7 @@
                         marginRight: drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0,
                     }}
                     title={"menu.dictData"}
-                    empty={<EmptyData onClick={() => { setCreateDialog(true) }} />}
+                    empty={false}
                     filters={filters}
                     filter={{ dictTypeId: dictId }}
                     sort={{ field: "create_time", order: "desc" }}
@@ -121,7 +121,7 @@
                 >
                     <StyledDatagrid
                         bulkActionButtons={() => <BulkDeleteButton mutationMode={OPERATE_MODE} />}
-                        rowClick={(id, resource ,record)=> {
+                        rowClick={(id, resource, record) => {
                             setSelect(record)
                             setEditDialog(true)
                         }}
@@ -140,19 +140,18 @@
                         <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' }}  type="button" redirect={"/dictType/" + dictId} onClick={()=> {                               
-                               setEditDialog(true)
-                            }} /> */}
-                            <Button onClick={()=>{setEditDialog(true)}}>缂栬緫</Button>
+                            <Button onClick={() => { setEditDialog(true) }}>缂栬緫</Button>
                             <DeleteButton sx={{ padding: '1px', fontSize: '.75rem' }} mutationMode='pessimistic' redirect={"/dictType/" + dictId} />
                         </WrapperField>
                     </StyledDatagrid>
                 </List>
-                <DictDataEdit
-                    open={editDialog}
-                    record={select}
-                    setOpen={setEditDialog}
-                />
+                if (!select == null) {
+                    <DictDataEdit
+                        open={editDialog}
+                        record={select}
+                        setOpen={setEditDialog}
+                    />
+                }
                 <DictDataCreate
                     open={createDialog}
                     record={dicts}
diff --git a/rsf-admin/src/page/system/serialRule/SerialRuleItemEdit.jsx b/rsf-admin/src/page/system/serialRule/SerialRuleItemEdit.jsx
index ca3b86c..6149640 100644
--- a/rsf-admin/src/page/system/serialRule/SerialRuleItemEdit.jsx
+++ b/rsf-admin/src/page/system/serialRule/SerialRuleItemEdit.jsx
@@ -35,7 +35,7 @@
     const { getValues } = useFormContext();
 
     return (
-        <Toolbar sx={{ justifyContent: 'space-between' }}>
+        <Toolbar sx={{ justifyContent: 'end' }}>
             <SaveButton />
             <DeleteButton mutationMode="optimistic" />
         </Toolbar>
@@ -50,6 +50,9 @@
             setOpen(false);
         }
     };
+    const {data, isPending, } = useGetOne('serialRuleItem', {id: record?.id});
+    if (data == null || data == undefined) {return}
+
     return (
         <Edit
             id={record.id}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/utils/FieldsUtils.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/utils/FieldsUtils.java
index 6469f3d..16a1c10 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/common/utils/FieldsUtils.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/common/utils/FieldsUtils.java
@@ -157,7 +157,7 @@
                             FieldsItem item = new FieldsItem();
                             item.setUuid(index)
                                     .setFieldsId(field.getId())
-                                    .setMatnrId(Long.parseLong(params.get("matnrId").toString()))
+                                    .setMatnrId(!Objects.isNull(params.get("matnrId")) ? Long.parseLong(params.get("matnrId").toString()) : null)
                                     .setValue(params.get(field.getFields()).toString());
                             if (!fieldsItemService.save(item)) {
                                 throw new CoolException("鎵╁睍瀛楁淇敼澶辫触锛侊紒");

--
Gitblit v1.9.1