From 4912066671e66d4d646fa0f5e8c7718251c141eb Mon Sep 17 00:00:00 2001
From: verou <857149855@qq.com>
Date: 星期四, 13 三月 2025 11:10:24 +0800
Subject: [PATCH] feat:导入功能
---
rsf-admin/src/page/asnOrder/AsnOrderList.jsx | 7 -
rsf-admin/src/page/asnOrder/AsnOrderEdit.jsx | 10 +-
rsf-admin/src/page/asnOrderItem/AsnOrderItemCreate.jsx | 4
rsf-admin/src/page/asnOrderItem/AsnOrderItemList.jsx | 4
rsf-admin/src/page/qlyInspect/QlyInspectPanel.jsx | 30 ++++++
rsf-admin/src/page/purchaseItem/PurchaseItemCreate.jsx | 4
rsf-admin/src/page/components/ImportModal.jsx | 36 +++++-
rsf-admin/src/page/asnOrder/AsnOrderCreate.jsx | 14 +-
rsf-admin/src/page/qlyInspect/QlyInspectList.jsx | 10 ++
rsf-admin/src/page/system/operationRecord/OperationRecordList.jsx | 3
rsf-admin/src/page/purchase/PurchaseEdit.jsx | 4
rsf-admin/src/page/system/dicts/dictData/DictDataList.jsx | 13 +-
rsf-admin/src/page/purchaseItem/PurchaseItemList.jsx | 1
rsf-admin/src/page/system/dicts/dictType/DictTypeCreate.jsx | 3
rsf-admin/src/page/qlyInspect/QlyInspectCreate.jsx | 31 ++++++
rsf-admin/src/page/system/dicts/dictData/DictDataEdit.jsx | 5
rsf-admin/src/i18n/zh.js | 27 +++++
rsf-admin/src/page/system/dicts/dictData/DictDataCreate.jsx | 9 +
rsf-admin/src/i18n/en.js | 29 +++++
rsf-admin/src/page/ResourceContent.js | 4
rsf-admin/src/page/system/dicts/dictType/DictTypeList.jsx | 4
rsf-admin/src/page/qlyInspect/QlyInspectEdit.jsx | 31 ++++++
rsf-admin/src/page/purchase/PurchaseCreate.jsx | 4
23 files changed, 230 insertions(+), 57 deletions(-)
diff --git a/rsf-admin/src/i18n/en.js b/rsf-admin/src/i18n/en.js
index 5dd4825..c0a1107 100644
--- a/rsf-admin/src/i18n/en.js
+++ b/rsf-admin/src/i18n/en.js
@@ -142,6 +142,7 @@
whMat: 'Warehouse Mat',
fields: 'Extend Fields',
fieldsItem: 'Extend Fields Items',
+ warehouseAreasItem: 'WarehouseAreasItem',
},
table: {
field: {
@@ -303,6 +304,25 @@
flagLabelMange: "flagLabelMange",
flagMix: "flagMix",
},
+ warehouseAreasItem: {
+ areaId: "areaId",
+ areaName: "areaName",
+ matnrId: "matnrId",
+ matnrName: "matnrName",
+ matnrCode: "matnrCode",
+ fieldsIndex: "fieldsIndex",
+ barcode: "barcode",
+ anfme: "anfme",
+ batch: "batch",
+ unit: "unit",
+ stockUnit: "stockUnit",
+ brand: "brand",
+ shipperId: "shipperId",
+ splrId: "splrId",
+ weight: "weight",
+ prodTime: "prodTime",
+ splrBtch: "splrBtch",
+ },
loc: {
warehouseId: "Warehouse",
areaId: "Area",
@@ -346,8 +366,13 @@
projectName: "ProjectName",
},
qlyInspect: {
- code: "Code",
- name: "Name",
+ code: "code",
+ name: "name",
+ barcode: "barcode",
+ asnItemId: "asnItemId",
+ poItemId: "poItemId",
+ safeQty: "safeQty",
+ disQty: "disQty",
},
dictType: {
code: "Code",
diff --git a/rsf-admin/src/i18n/zh.js b/rsf-admin/src/i18n/zh.js
index 5f853f8..1f2cd1e 100644
--- a/rsf-admin/src/i18n/zh.js
+++ b/rsf-admin/src/i18n/zh.js
@@ -141,6 +141,7 @@
whMat: '搴撳尯鐗╂枡鍏崇郴',
fields: '鎵╁睍瀛楁',
fieldsItem: '鎵╁睍瀛楁鏄庣粏',
+ warehouseAreasItem: '搴撳尯搴撳瓨淇℃伅',
},
table: {
field: {
@@ -302,6 +303,25 @@
flagLabelMange: "鏍囩绠$悊",
flagMix: "娣锋斁",
},
+ warehouseAreasItem: {
+ areaId: "浠撳簱鍖哄煙",
+ areaName: "鍖哄煙鍚嶇О ",
+ matnrId: "鐗╂枡鏍囪瘑",
+ matnrName: "鐗╂枡鍚嶇О",
+ matnrCode: "鐗╂枡缂栫爜",
+ fieldsIndex: "鎵╁睍瀛楁鍞竴鏍囪瘑",
+ barcode: "鏉″舰鐮�",
+ anfme: "鏁伴噺",
+ batch: "鎵规鍙�",
+ unit: "璁¢噺鍗曚綅",
+ stockUnit: "搴撳瓨鍗曚綅",
+ brand: "鍝佺墝",
+ shipperId: "璐т富鏍囪瘑",
+ splrId: "渚涘簲鍟嗘爣璇�",
+ weight: "鏀惰揣閲嶉噺",
+ prodTime: "鐢熶骇鏃ユ湡",
+ splrBtch: "渚涘簲鍟嗘壒娆�",
+ },
loc: {
warehouseId: "浠撳簱",
areaId: "搴撳尯",
@@ -348,11 +368,16 @@
qlyInspect: {
code: "缂栫爜",
name: "鍚嶇О",
+ barcode: "鏍囩鐮�",
+ asnItemId: "閫氱煡鍗曟槑缁嗘爣璇�",
+ poItemId: "PO鍗曟槑缁嗘爣璇�",
+ safeQty: "鍚堟牸鏁伴噺",
+ disQty: "涓嶅悎鏍兼暟閲�",
},
dictType: {
code: "瀛楀吀缂栫爜",
name: "瀛楀吀鍚嶇О",
- description: "鍐呭鎻忚堪",
+ description: "鍐呭",
},
dictData: {
dictTypeId: "瀛楀吀鏍囪瘑",
diff --git a/rsf-admin/src/page/ResourceContent.js b/rsf-admin/src/page/ResourceContent.js
index 6f35cdf..1c808a1 100644
--- a/rsf-admin/src/page/ResourceContent.js
+++ b/rsf-admin/src/page/ResourceContent.js
@@ -33,7 +33,7 @@
import purchase from './purchase';
import fields from './fields';
import fieldsItem from './fieldsItem';
-
+import warehouseAreasItem from './warehouseAreasItem';
const ResourceContent = (node) => {
switch (node.component) {
@@ -63,6 +63,8 @@
return warehouse;
case 'warehouseAreas':
return warehouseAreas;
+ case 'warehouseAreasItem':
+ return warehouseAreasItem;
case 'loc':
return loc;
case 'container':
diff --git a/rsf-admin/src/page/asnOrder/AsnOrderCreate.jsx b/rsf-admin/src/page/asnOrder/AsnOrderCreate.jsx
index 8f98e05..6ace1c2 100644
--- a/rsf-admin/src/page/asnOrder/AsnOrderCreate.jsx
+++ b/rsf-admin/src/page/asnOrder/AsnOrderCreate.jsx
@@ -84,14 +84,14 @@
</DialogTitle>
<DialogContent sx={{ mt: 2 }}>
<Grid container rowSpacing={2} columnSpacing={2}>
- <Grid item xs={6} display="flex" gap={1}>
+ {/* <Grid item xs={6} display="flex" gap={1}>
<TextInput
label="table.field.asnOrder.code"
source="code"
parse={v => v}
autoFocus
/>
- </Grid>
+ </Grid> */}
<Grid item xs={6} display="flex" gap={1}>
<TextInput
label="table.field.asnOrder.poCode"
@@ -121,20 +121,20 @@
validate={required()}
/>
</Grid>
- <Grid item xs={6} display="flex" gap={1}>
+ {/* <Grid item xs={6} display="flex" gap={1}>
<NumberInput
label="table.field.asnOrder.anfme"
source="anfme"
validate={required()}
/>
- </Grid>
- <Grid item xs={6} display="flex" gap={1}>
+ </Grid> */}
+ {/* <Grid item xs={6} display="flex" gap={1}>
<NumberInput
label="table.field.asnOrder.qty"
source="qty"
validate={required()}
/>
- </Grid>
+ </Grid> */}
<Grid item xs={6} display="flex" gap={1}>
<TextInput
label="table.field.asnOrder.logisNo"
@@ -154,7 +154,7 @@
source="rleStatus"
choices={[
{ id: 0, name: ' 姝e父' },
- { id: 1, name: ' 宸查噴鏀�' },
+ { id: 1, name: ' 宸查噴鏀�' },
]}
/>
</Grid>
diff --git a/rsf-admin/src/page/asnOrder/AsnOrderEdit.jsx b/rsf-admin/src/page/asnOrder/AsnOrderEdit.jsx
index 5cba002..92753d8 100644
--- a/rsf-admin/src/page/asnOrder/AsnOrderEdit.jsx
+++ b/rsf-admin/src/page/asnOrder/AsnOrderEdit.jsx
@@ -63,14 +63,14 @@
<Typography variant="h6" gutterBottom>
{translate('common.edit.title.main')}
</Typography>
- <Stack direction='row' gap={2}>
+ {/* <Stack direction='row' gap={2}>
<TextInput
label="table.field.asnOrder.code"
source="code"
parse={v => v}
autoFocus
/>
- </Stack>
+ </Stack> */}
<Stack direction='row' gap={2}>
<TextInput
label="table.field.asnOrder.poCode"
@@ -100,7 +100,7 @@
validate={required()}
/>
</Stack>
- <Stack direction='row' gap={2}>
+ {/* <Stack direction='row' gap={2}>
<NumberInput
label="table.field.asnOrder.anfme"
source="anfme"
@@ -113,7 +113,7 @@
source="qty"
validate={required()}
/>
- </Stack>
+ </Stack> */}
<Stack direction='row' gap={2}>
<TextInput
label="table.field.asnOrder.logisNo"
@@ -133,7 +133,7 @@
source="rleStatus"
choices={[
{ id: 0, name: ' 姝e父' },
- { id: 1, name: ' 宸查噴鏀�' },
+ { id: 1, name: ' 宸查噴鏀�' },
]}
validate={required()}
/>
diff --git a/rsf-admin/src/page/asnOrder/AsnOrderList.jsx b/rsf-admin/src/page/asnOrder/AsnOrderList.jsx
index b032abd..2b0d2c7 100644
--- a/rsf-admin/src/page/asnOrder/AsnOrderList.jsx
+++ b/rsf-admin/src/page/asnOrder/AsnOrderList.jsx
@@ -45,8 +45,8 @@
import { PAGE_DRAWER_WIDTH, OPERATE_MODE, DEFAULT_PAGE_SIZE } from '@/config/setting';
import * as Common from '@/utils/common';
import ConstructionIcon from "@mui/icons-material/Construction";
-import UploadloadIcon from "@mui/icons-material/Upload";
import FileDownloadIcon from '@mui/icons-material/FileDownload';
+
const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({
'& .css-1vooibu-MuiSvgIcon-root': {
@@ -126,9 +126,6 @@
sort={{ field: "create_time", order: "desc" }}
actions={(
<TopToolbar>
- <Button onClick={importList} label={"ra.action.import"}>
- <UploadloadIcon />
- </Button>
<Button onClick={inspection} label={"toolbar.inspection"}>
<ConstructionIcon />
@@ -136,6 +133,7 @@
<FilterButton />
<MyCreateButton onClick={() => { setCreateDialog(true) }} />
<SelectColumnsButton preferenceKey='asnOrder' />
+
<MyExportButton />
</TopToolbar>
)}
@@ -200,5 +198,4 @@
</Box>
)
}
-
export default AsnOrderList;
diff --git a/rsf-admin/src/page/asnOrderItem/AsnOrderItemCreate.jsx b/rsf-admin/src/page/asnOrderItem/AsnOrderItemCreate.jsx
index 45e40f2..dc78822 100644
--- a/rsf-admin/src/page/asnOrderItem/AsnOrderItemCreate.jsx
+++ b/rsf-admin/src/page/asnOrderItem/AsnOrderItemCreate.jsx
@@ -32,7 +32,7 @@
import MemoInput from "../components/MemoInput";
const AsnOrderItemCreate = (props) => {
- const { open, setOpen } = props;
+ const { open, setOpen, row } = props;
const translate = useTranslate();
const notify = useNotify();
@@ -88,7 +88,7 @@
<NumberInput
label="table.field.asnOrderItem.asnId"
source="asnId"
- autoFocus
+ defaultValue={row.asnId}
/>
</Grid>
<Grid item xs={6} display="flex" gap={1}>
diff --git a/rsf-admin/src/page/asnOrderItem/AsnOrderItemList.jsx b/rsf-admin/src/page/asnOrderItem/AsnOrderItemList.jsx
index 31ffd1d..84c20df 100644
--- a/rsf-admin/src/page/asnOrderItem/AsnOrderItemList.jsx
+++ b/rsf-admin/src/page/asnOrderItem/AsnOrderItemList.jsx
@@ -46,6 +46,7 @@
import * as Common from '@/utils/common';
import CustomerTopToolBar from "../components/EditTopToolBar";
import QrCodeIcon from "@mui/icons-material/QrCode";
+import ImportButton from "../components/ImportButton";
const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({
'& .css-1vooibu-MuiSvgIcon-root': {
@@ -130,6 +131,7 @@
<FilterButton />
<MyCreateButton onClick={() => { setCreateDialog(true) }} />
<SelectColumnsButton preferenceKey='asnOrderItem' />
+ <ImportButton value={'asnOrder'} parmas={{ asnId: asnId }} />
<MyExportButton />
</TopToolbar>
)}
@@ -180,6 +182,7 @@
<AsnOrderItemCreate
open={createDialog}
setOpen={setCreateDialog}
+ row={{ asnId }}
/>
<PageDrawer
title='AsnOrderItem Detail'
@@ -191,5 +194,6 @@
</>
)
}
+AsnOrderItemList.Context = React.createContext()
export default AsnOrderItemList;
diff --git a/rsf-admin/src/page/components/ImportModal.jsx b/rsf-admin/src/page/components/ImportModal.jsx
index 1461531..70f84cf 100644
--- a/rsf-admin/src/page/components/ImportModal.jsx
+++ b/rsf-admin/src/page/components/ImportModal.jsx
@@ -1,4 +1,4 @@
-import { useEffect, useState } from 'react';
+import { useEffect, useState, createContext, useContext } from 'react';
import { Box, CircularProgress, Stack, Typography } from '@mui/material';
import Alert from '@mui/material/Alert';
import Dialog from '@mui/material/Dialog';
@@ -13,14 +13,16 @@
Form,
Toolbar,
useRefresh,
- useTranslate
+ useTranslate,
+ useNotify
} from 'react-admin';
import { Link } from 'react-router-dom';
import DialogCloseButton from './DialogCloseButton';
import { usePapaParse } from './usePapaParse';
import MatnrList from '../basicInfo/matnr/MatnrList';
+import request from '@/utils/request'
-const ImportModal = ({ open, onClose, importTemp, useCodeImport, onceBatch = 10 }) => {
+const ImportModal = ({ open, onClose, importTemp, useCodeImport, onceBatch = 10, value, parmas = {} }) => {
const refresh = useRefresh();
const translate = useTranslate();
@@ -31,6 +33,7 @@
});
const [file, setFile] = useState(null);
+ const notify = useNotify();
useEffect(() => {
if (importer.state === 'complete') {
@@ -46,10 +49,25 @@
if (!file) {
return;
}
- console.log(file);
- //TODO 娣诲姞涓婃枃浠朵笂浼犳帴鍙�
+ const form = new FormData();
+ for (const key in parmas) {
+ if (parmas.hasOwnProperty(key)) {
+ form.append(key, parmas[key]);
+ }
+ }
+ form.append('file', file);
+ const { data: { code, data, msg } } = await request.post(`/${value}/import`, form)
+
+ if (code === 200) {
+ handleClose()
+ } else {
+ notify(msg);
+
+ }
};
+
+
const handleClose = () => {
reset();
@@ -211,12 +229,12 @@
</Dialog>
);
}
-{/**涓嬭浇鎵撳嵃妯℃澘锛屼紶鍏ype绫诲瀷锛岃皟鐢ㄤ笅杞芥ā鏉挎帴鍙� */}
+{/**涓嬭浇鎵撳嵃妯℃澘锛屼紶鍏ype绫诲瀷锛岃皟鐢ㄤ笅杞芥ā鏉挎帴鍙� */ }
const downloadTemplate = (type) => {
// 涓嬭浇鐗╂枡妯℃澘
- if (type != undefined && type == 'matnr') {
-
- }
+ if (type != undefined && type == 'matnr') {
+
+ }
console.log('======>');
console.log(type);
}
diff --git a/rsf-admin/src/page/purchase/PurchaseCreate.jsx b/rsf-admin/src/page/purchase/PurchaseCreate.jsx
index 4787078..768de68 100644
--- a/rsf-admin/src/page/purchase/PurchaseCreate.jsx
+++ b/rsf-admin/src/page/purchase/PurchaseCreate.jsx
@@ -84,14 +84,14 @@
</DialogTitle>
<DialogContent sx={{ mt: 2 }}>
<Grid container rowSpacing={2} columnSpacing={2}>
- <Grid item xs={6} display="flex" gap={1}>
+ {/* <Grid item xs={6} display="flex" gap={1}>
<TextInput
label="table.field.purchase.code"
source="code"
parse={v => v}
autoFocus
/>
- </Grid>
+ </Grid> */}
<Grid item xs={6} display="flex" gap={1}>
<TextInput
label="table.field.purchase.type"
diff --git a/rsf-admin/src/page/purchase/PurchaseEdit.jsx b/rsf-admin/src/page/purchase/PurchaseEdit.jsx
index 16c0608..b12726f 100644
--- a/rsf-admin/src/page/purchase/PurchaseEdit.jsx
+++ b/rsf-admin/src/page/purchase/PurchaseEdit.jsx
@@ -63,14 +63,14 @@
<Typography variant="h6" gutterBottom>
{translate('common.edit.title.main')}
</Typography>
- <Stack direction='row' gap={2}>
+ {/* <Stack direction='row' gap={2}>
<TextInput
label="table.field.purchase.code"
source="code"
parse={v => v}
autoFocus
/>
- </Stack>
+ </Stack> */}
<Stack direction='row' gap={2}>
<TextInput
label="table.field.purchase.type"
diff --git a/rsf-admin/src/page/purchaseItem/PurchaseItemCreate.jsx b/rsf-admin/src/page/purchaseItem/PurchaseItemCreate.jsx
index 36ed82b..abc53cc 100644
--- a/rsf-admin/src/page/purchaseItem/PurchaseItemCreate.jsx
+++ b/rsf-admin/src/page/purchaseItem/PurchaseItemCreate.jsx
@@ -32,7 +32,7 @@
import MemoInput from "../components/MemoInput";
const PurchaseItemCreate = (props) => {
- const { open, setOpen } = props;
+ const { open, setOpen, row } = props;
const translate = useTranslate();
const notify = useNotify();
@@ -88,7 +88,7 @@
<NumberInput
label="table.field.purchaseItem.purchaseId"
source="purchaseId"
- autoFocus
+ defaultValue={row.poId}
/>
</Grid>
<Grid item xs={6} display="flex" gap={1}>
diff --git a/rsf-admin/src/page/purchaseItem/PurchaseItemList.jsx b/rsf-admin/src/page/purchaseItem/PurchaseItemList.jsx
index dd9e4f4..139441c 100644
--- a/rsf-admin/src/page/purchaseItem/PurchaseItemList.jsx
+++ b/rsf-admin/src/page/purchaseItem/PurchaseItemList.jsx
@@ -167,6 +167,7 @@
<PurchaseItemCreate
open={createDialog}
setOpen={setCreateDialog}
+ row={{ poId }}
/>
<PageDrawer
title='PurchaseItem Detail'
diff --git a/rsf-admin/src/page/qlyInspect/QlyInspectCreate.jsx b/rsf-admin/src/page/qlyInspect/QlyInspectCreate.jsx
index 4ad8576..4aa684f 100644
--- a/rsf-admin/src/page/qlyInspect/QlyInspectCreate.jsx
+++ b/rsf-admin/src/page/qlyInspect/QlyInspectCreate.jsx
@@ -100,6 +100,37 @@
parse={v => v}
/>
</Grid>
+ <Grid item xs={6} display="flex" gap={1}>
+ <TextInput
+ label="table.field.qlyInspect.barcode"
+ source="barcode"
+ parse={v => v}
+ />
+ </Grid>
+ <Grid item xs={6} display="flex" gap={1}>
+ <NumberInput
+ label="table.field.qlyInspect.asnItemId"
+ source="asnItemId"
+ />
+ </Grid>
+ <Grid item xs={6} display="flex" gap={1}>
+ <NumberInput
+ label="table.field.qlyInspect.poItemId"
+ source="poItemId"
+ />
+ </Grid>
+ <Grid item xs={6} display="flex" gap={1}>
+ <NumberInput
+ label="table.field.qlyInspect.safeQty"
+ source="safeQty"
+ />
+ </Grid>
+ <Grid item xs={6} display="flex" gap={1}>
+ <NumberInput
+ label="table.field.qlyInspect.disQty"
+ source="disQty"
+ />
+ </Grid>
<Grid item xs={6} display="flex" gap={1}>
<StatusSelectInput />
diff --git a/rsf-admin/src/page/qlyInspect/QlyInspectEdit.jsx b/rsf-admin/src/page/qlyInspect/QlyInspectEdit.jsx
index d287ef3..985c367 100644
--- a/rsf-admin/src/page/qlyInspect/QlyInspectEdit.jsx
+++ b/rsf-admin/src/page/qlyInspect/QlyInspectEdit.jsx
@@ -79,6 +79,37 @@
parse={v => v}
/>
</Stack>
+ <Stack direction='row' gap={2}>
+ <TextInput
+ label="table.field.qlyInspect.barcode"
+ source="barcode"
+ parse={v => v}
+ />
+ </Stack>
+ <Stack direction='row' gap={2}>
+ <NumberInput
+ label="table.field.qlyInspect.asnItemId"
+ source="asnItemId"
+ />
+ </Stack>
+ <Stack direction='row' gap={2}>
+ <NumberInput
+ label="table.field.qlyInspect.poItemId"
+ source="poItemId"
+ />
+ </Stack>
+ <Stack direction='row' gap={2}>
+ <NumberInput
+ label="table.field.qlyInspect.safeQty"
+ source="safeQty"
+ />
+ </Stack>
+ <Stack direction='row' gap={2}>
+ <NumberInput
+ label="table.field.qlyInspect.disQty"
+ source="disQty"
+ />
+ </Stack>
</Grid>
<Grid item xs={12} md={4}>
diff --git a/rsf-admin/src/page/qlyInspect/QlyInspectList.jsx b/rsf-admin/src/page/qlyInspect/QlyInspectList.jsx
index 591d778..10bda0b 100644
--- a/rsf-admin/src/page/qlyInspect/QlyInspectList.jsx
+++ b/rsf-admin/src/page/qlyInspect/QlyInspectList.jsx
@@ -65,6 +65,11 @@
<TextInput source="code" label="table.field.qlyInspect.code" />,
<TextInput source="name" label="table.field.qlyInspect.name" />,
+ <TextInput source="barcode" label="table.field.qlyInspect.barcode" />,
+ <NumberInput source="asnItemId" label="table.field.qlyInspect.asnItemId" />,
+ <NumberInput source="poItemId" label="table.field.qlyInspect.poItemId" />,
+ <NumberInput source="safeQty" label="table.field.qlyInspect.safeQty" />,
+ <NumberInput source="disQty" label="table.field.qlyInspect.disQty" />,
<TextInput label="common.field.memo" source="memo" />,
<SelectInput
@@ -120,6 +125,11 @@
<NumberField source="id" />
<TextField source="code" label="table.field.qlyInspect.code" />
<TextField source="name" label="table.field.qlyInspect.name" />
+ <TextField source="barcode" label="table.field.qlyInspect.barcode" />
+ <NumberField source="asnItemId" label="table.field.qlyInspect.asnItemId" />
+ <NumberField source="poItemId" label="table.field.qlyInspect.poItemId" />
+ <NumberField source="safeQty" label="table.field.qlyInspect.safeQty" />
+ <NumberField source="disQty" label="table.field.qlyInspect.disQty" />
<ReferenceField source="updateBy" label="common.field.updateBy" reference="user" link={false} sortable={false}>
<TextField source="nickname" />
diff --git a/rsf-admin/src/page/qlyInspect/QlyInspectPanel.jsx b/rsf-admin/src/page/qlyInspect/QlyInspectPanel.jsx
index de828b5..785ba88 100644
--- a/rsf-admin/src/page/qlyInspect/QlyInspectPanel.jsx
+++ b/rsf-admin/src/page/qlyInspect/QlyInspectPanel.jsx
@@ -52,6 +52,36 @@
property={record.name}
/>
</Grid>
+ <Grid item xs={6}>
+ <PanelTypography
+ title="table.field.qlyInspect.barcode"
+ property={record.barcode}
+ />
+ </Grid>
+ <Grid item xs={6}>
+ <PanelTypography
+ title="table.field.qlyInspect.asnItemId"
+ property={record.asnItemId}
+ />
+ </Grid>
+ <Grid item xs={6}>
+ <PanelTypography
+ title="table.field.qlyInspect.poItemId"
+ property={record.poItemId}
+ />
+ </Grid>
+ <Grid item xs={6}>
+ <PanelTypography
+ title="table.field.qlyInspect.safeQty"
+ property={record.safeQty}
+ />
+ </Grid>
+ <Grid item xs={6}>
+ <PanelTypography
+ title="table.field.qlyInspect.disQty"
+ property={record.disQty}
+ />
+ </Grid>
</Grid>
</CardContent>
diff --git a/rsf-admin/src/page/system/dicts/dictData/DictDataCreate.jsx b/rsf-admin/src/page/system/dicts/dictData/DictDataCreate.jsx
index cc98111..f15c25d 100644
--- a/rsf-admin/src/page/system/dicts/dictData/DictDataCreate.jsx
+++ b/rsf-admin/src/page/system/dicts/dictData/DictDataCreate.jsx
@@ -32,7 +32,7 @@
import MemoInput from "../../../components/MemoInput";
const DictDataCreate = (props) => {
- const { open, setOpen } = props;
+ const { open, setOpen, row } = props;
const translate = useTranslate();
const notify = useNotify();
@@ -91,6 +91,7 @@
parse={v => v}
autoFocus
validate={required()}
+ defaultValue={row.dictTypeId}
/>
</Grid>
<Grid item xs={6} display="flex" gap={1}>
@@ -99,6 +100,7 @@
source="dictTypeCode"
parse={v => v}
validate={required()}
+ defaultValue={row.dictTypeCode}
/>
</Grid>
<Grid item xs={6} display="flex" gap={1}>
@@ -114,7 +116,6 @@
label="table.field.dictData.label"
source="label"
parse={v => v}
- validate={required()}
/>
</Grid>
<Grid item xs={6} display="flex" gap={1}>
@@ -123,13 +124,13 @@
source="sort"
/>
</Grid>
- <Grid item xs={6} display="flex" gap={1}>
+ {/* <Grid item xs={6} display="flex" gap={1}>
<TextInput
label="table.field.dictData.color"
source="color"
parse={v => v}
/>
- </Grid>
+ </Grid> */}
<Grid item xs={6} display="flex" gap={1}>
<StatusSelectInput />
diff --git a/rsf-admin/src/page/system/dicts/dictData/DictDataEdit.jsx b/rsf-admin/src/page/system/dicts/dictData/DictDataEdit.jsx
index 6190953..a52a4c2 100644
--- a/rsf-admin/src/page/system/dicts/dictData/DictDataEdit.jsx
+++ b/rsf-admin/src/page/system/dicts/dictData/DictDataEdit.jsx
@@ -94,7 +94,6 @@
label="table.field.dictData.label"
source="label"
parse={v => v}
- validate={required()}
/>
</Stack>
<Stack direction='row' gap={2}>
@@ -103,13 +102,13 @@
source="sort"
/>
</Stack>
- <Stack direction='row' gap={2}>
+ {/* <Stack direction='row' gap={2}>
<TextInput
label="table.field.dictData.color"
source="color"
parse={v => v}
/>
- </Stack>
+ </Stack> */}
</Grid>
<Grid item xs={12} md={4}>
diff --git a/rsf-admin/src/page/system/dicts/dictData/DictDataList.jsx b/rsf-admin/src/page/system/dicts/dictData/DictDataList.jsx
index 65ea973..21a3f45 100644
--- a/rsf-admin/src/page/system/dicts/dictData/DictDataList.jsx
+++ b/rsf-admin/src/page/system/dicts/dictData/DictDataList.jsx
@@ -70,7 +70,7 @@
<TextInput source="value" label="table.field.dictData.value" />,
<TextInput source="label" label="table.field.dictData.label" />,
<NumberInput source="sort" label="table.field.dictData.sort" />,
- <TextInput source="color" label="table.field.dictData.color" />,
+ // <TextInput source="color" label="table.field.dictData.color" />,
<TextInput label="common.field.memo" source="memo" />,
<SelectInput
@@ -93,11 +93,7 @@
const location = useLocation();
const queryParams = new URLSearchParams(location.search);
const dictTypeId = queryParams.get('dictTypeId');
- console.log(dictTypeId);
- if (dictTypeId != null && dictTypeId != undefined) {
- console.log(dictTypeId);
- console.log(fit);
- }
+ const dictTypeCode = queryParams.get('code');
return (
<>
@@ -111,7 +107,7 @@
theme.transitions.create(['all'], {
duration: theme.transitions.duration.enteringScreen,
}),
- marginRight: !!drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0,
+ marginRight: drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0,
}}
title={"menu.dictData"}
empty={<EmptyData onClick={() => { setCreateDialog(true) }} />}
@@ -142,7 +138,7 @@
<TextField source="value" label="table.field.dictData.value" />
<TextField source="label" label="table.field.dictData.label" />
<NumberField source="sort" label="table.field.dictData.sort" />
- <TextField source="color" label="table.field.dictData.color" />
+ {/* <TextField source="color" label="table.field.dictData.color" /> */}
<ReferenceField source="updateBy" label="common.field.updateBy" reference="user" link={false} sortable={false}>
<TextField source="nickname" />
@@ -163,6 +159,7 @@
<DictDataCreate
open={createDialog}
setOpen={setCreateDialog}
+ row={{ dictTypeId, dictTypeCode }}
/>
<PageDrawer
title='DictData Detail'
diff --git a/rsf-admin/src/page/system/dicts/dictType/DictTypeCreate.jsx b/rsf-admin/src/page/system/dicts/dictType/DictTypeCreate.jsx
index 9c17b03..8acd215 100644
--- a/rsf-admin/src/page/system/dicts/dictType/DictTypeCreate.jsx
+++ b/rsf-admin/src/page/system/dicts/dictType/DictTypeCreate.jsx
@@ -84,7 +84,7 @@
</DialogTitle>
<DialogContent sx={{ mt: 2 }}>
<Grid container rowSpacing={2} columnSpacing={2}>
- <Grid item xs={6} display="flex" gap={1}>
+ <Grid item xs={6} display="flex" gap={1}>
<TextInput
label="table.field.dictType.code"
source="code"
@@ -96,6 +96,7 @@
label="table.field.dictType.name"
source="name"
parse={v => v}
+ validate={required()}
/>
</Grid>
<Grid item xs={6} display="flex" gap={1}>
diff --git a/rsf-admin/src/page/system/dicts/dictType/DictTypeList.jsx b/rsf-admin/src/page/system/dicts/dictType/DictTypeList.jsx
index 4fc1553..09058f4 100644
--- a/rsf-admin/src/page/system/dicts/dictType/DictTypeList.jsx
+++ b/rsf-admin/src/page/system/dicts/dictType/DictTypeList.jsx
@@ -87,7 +87,7 @@
const navigate = useNavigate();
const assign = (record) => {
- navigate(`/dictData?dictTypeId=${record.id}`);
+ navigate(`/dictData?dictTypeId=${record.id}&code=${record.code}`);
}
return (
@@ -99,7 +99,7 @@
theme.transitions.create(['all'], {
duration: theme.transitions.duration.enteringScreen,
}),
- marginRight: !!drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0,
+ marginRight: drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0,
}}
title={"menu.dictType"}
empty={<EmptyData onClick={() => { setCreateDialog(true) }} />}
diff --git a/rsf-admin/src/page/system/operationRecord/OperationRecordList.jsx b/rsf-admin/src/page/system/operationRecord/OperationRecordList.jsx
index 249b3c1..ac5b4d6 100644
--- a/rsf-admin/src/page/system/operationRecord/OperationRecordList.jsx
+++ b/rsf-admin/src/page/system/operationRecord/OperationRecordList.jsx
@@ -43,6 +43,7 @@
import rowSx from './rowSx';
import { format } from 'date-fns';
import OperationDetail from './OperationDetail'
+import { width } from "@mui/system";
const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({
'& .css-1vooibu-MuiSvgIcon-root': {
@@ -122,7 +123,7 @@
theme.transitions.create(['all'], {
duration: theme.transitions.duration.enteringScreen,
}),
- marginRight: !!drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0,
+ marginRight: drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0,
}}
title={"menu.operation"}
empty={<EmptyData onClick={() => { setCreateDialog(true) }} />}
--
Gitblit v1.9.1