From 262264255b0be3f35674595c0bebab3f2f6c910d Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期一, 25 八月 2025 14:26:45 +0800
Subject: [PATCH] 库存调整单功能优化调整
---
rsf-admin/src/page/stockManage/locRevise/ReviseLogList.jsx | 24 ++++++++++++++++++++++--
rsf-admin/src/page/stockManage/locRevise/LocReviseList.jsx | 4 +++-
rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/ReviseLogItem.java | 4 ++++
rsf-admin/src/page/stockManage/locRevise/ReviseLogItemList.jsx | 2 ++
rsf-admin/src/i18n/zh.js | 1 +
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/ReviseLogServiceImpl.java | 4 ++++
rsf-admin/src/i18n/en.js | 1 +
rsf-admin/src/page/components/CheckDiffField.jsx | 2 +-
8 files changed, 38 insertions(+), 4 deletions(-)
diff --git a/rsf-admin/src/i18n/en.js b/rsf-admin/src/i18n/en.js
index e5e7065..d908a9b 100644
--- a/rsf-admin/src/i18n/en.js
+++ b/rsf-admin/src/i18n/en.js
@@ -1152,6 +1152,7 @@
wareArea: 'Warehouse Areas',
maktx: "maktx",
matnrCode: "matnrCode",
+ diffQty: 'Diff Qty',
trackCode: "trackCode",
unit: "unit",
anfme: "anfme",
diff --git a/rsf-admin/src/i18n/zh.js b/rsf-admin/src/i18n/zh.js
index 9d4ef4d..015c866 100644
--- a/rsf-admin/src/i18n/zh.js
+++ b/rsf-admin/src/i18n/zh.js
@@ -1168,6 +1168,7 @@
matnrCode: "鐗╂枡缂栫爜",
trackCode: "璺熻釜鐮�",
workQty: '鎵ц鏁�',
+ diffQty: '宸紓鏁伴噺',
reviseQty: '瀹為檯鏁伴噺',
deadTime: '鍋滅暀鏃堕棿锛堝ぉ锛�',
qty: '瀹屾垚鏁�',
diff --git a/rsf-admin/src/page/components/CheckDiffField.jsx b/rsf-admin/src/page/components/CheckDiffField.jsx
index 1c0413b..a80e3a4 100644
--- a/rsf-admin/src/page/components/CheckDiffField.jsx
+++ b/rsf-admin/src/page/components/CheckDiffField.jsx
@@ -3,8 +3,8 @@
useRecordContext,
} from 'react-admin';
import { Box, Typography, Card, Stack } from '@mui/material';
-import { useTheme } from '@mui/material/styles';
import CircleIcon from '@mui/icons-material/Circle';
+import { useTheme } from '@mui/material/styles';
const CheckDiffField = () => {
const record = useRecordContext();
diff --git a/rsf-admin/src/page/stockManage/locRevise/LocReviseList.jsx b/rsf-admin/src/page/stockManage/locRevise/LocReviseList.jsx
index ba7cbf2..86546a3 100644
--- a/rsf-admin/src/page/stockManage/locRevise/LocReviseList.jsx
+++ b/rsf-admin/src/page/stockManage/locRevise/LocReviseList.jsx
@@ -37,7 +37,7 @@
import MyCreateButton from "@/page/components/MyCreateButton";
import MyExportButton from '@/page/components/MyExportButton';
import PageEditDrawer from "@/page/components/PageEditDrawer";
-import { Box, Typography, Card, Stack } from '@mui/material';
+import { Box, Typography, Card, Stack, Switch } from '@mui/material';
import ConfirmButton from '../../components/ConfirmButton';
import LocReviseCreate from "./LocReviseCreate";
import TaskIcon from '@mui/icons-material/Task';
@@ -195,4 +195,6 @@
}
+
+
export default LocReviseList;
diff --git a/rsf-admin/src/page/stockManage/locRevise/ReviseLogItemList.jsx b/rsf-admin/src/page/stockManage/locRevise/ReviseLogItemList.jsx
index fe23fb9..f848cf8 100644
--- a/rsf-admin/src/page/stockManage/locRevise/ReviseLogItemList.jsx
+++ b/rsf-admin/src/page/stockManage/locRevise/ReviseLogItemList.jsx
@@ -37,6 +37,7 @@
import { Box, Typography, Card, Stack } from '@mui/material';
import { styled } from '@mui/material/styles';
import * as Common from '@/utils/common';
+import CheckDiffField from "../../components/CheckDiffField";
const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({
'& .css-1vooibu-MuiSvgIcon-root': {
@@ -96,6 +97,7 @@
<TextField source="unit" label="table.field.locItem.unit" />
<NumberField source="anfme" label="table.field.locItem.anfme" />
<NumberField source="reviseQty" label="table.field.locItem.reviseQty" />
+ <CheckDiffField source="diffQty" label="table.field.locItem.diffQty" />
<TextField source="batch" label="table.field.locItem.batch" />
<TextField source="spec" label="table.field.locItem.spec" />
<TextField source="model" label="table.field.locItem.model" />
diff --git a/rsf-admin/src/page/stockManage/locRevise/ReviseLogList.jsx b/rsf-admin/src/page/stockManage/locRevise/ReviseLogList.jsx
index 33ae7c6..d723df0 100644
--- a/rsf-admin/src/page/stockManage/locRevise/ReviseLogList.jsx
+++ b/rsf-admin/src/page/stockManage/locRevise/ReviseLogList.jsx
@@ -36,14 +36,13 @@
useGetOne,
} from 'react-admin';
import { PAGE_DRAWER_WIDTH, OPERATE_MODE, DEFAULT_PAGE_SIZE } from '@/config/setting';
+import { Box, Typography, Card, Stack, Switch } from '@mui/material';
import MyCreateButton from "@/page/components/MyCreateButton";
-import { Box, Typography, Card, Stack } from '@mui/material';
import ReviseLogItemList from "./ReviseLogItemList";
import SelectLocsRevise from "./SelectLocsRevise";
import EditIcon from '@mui/icons-material/Edit';
import LocsReviseDetl from "./LocsReviseDetl";
import { styled } from '@mui/material/styles';
-import * as Common from '@/utils/common';
const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({
'& .css-1vooibu-MuiSvgIcon-root': {
@@ -89,6 +88,7 @@
const ReviseLogList = ({ record }) => {
const [createDialog, setCreateDialog] = useState(false);
const [drawerVal, setDrawerVal] = useState(false);
+ const [checked, setChecked] = useState(true);
const [item, setItem] = useState();
const translate = useTranslate();
const orderId = useGetRecordId();
@@ -111,6 +111,7 @@
sort={{ field: "create_time", order: "desc" }}
actions={(
<TopToolbar>
+ <DiffShowButton checked={checked} setChecked={setChecked}/>
<FilterButton />
<CreateItemButton setCreateDialog={setCreateDialog} record={record} />
<SelectColumnsButton preferenceKey='check' />
@@ -167,6 +168,25 @@
export default ReviseLogList;
+//鏄剧ず宸紓寮�鍏�
+const DiffShowButton = ({checked, setChecked}) => {
+ const handleChange = (event) => {
+ setChecked(event.target.checked);
+ };
+
+ return (
+ <>
+ <Switch
+ checked={checked}
+ size="small"
+ onChange={handleChange}
+ slotProps={{ input: { 'aria-label': 'controlled' } }}
+ />
+ </>
+ )
+}
+
+
const CreateItemButton = ({ setCreateDialog, record }) => {
return (
record?.exceStatus < 2 ? <MyCreateButton onClick={() => { setCreateDialog(true); }} /> : <></>
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/ReviseLogItem.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/ReviseLogItem.java
index f81ca38..aa524d2 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/ReviseLogItem.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/ReviseLogItem.java
@@ -244,6 +244,10 @@
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
}
+ public Double getDiffQty() {
+ return Math.round((this.reviseQty - this.anfme) * 10000) / 10000.0;
+ }
+
public String getUpdateBy$(){
UserService service = SpringUtils.getBean(UserService.class);
User user = service.getById(this.updateBy);
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/ReviseLogServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/ReviseLogServiceImpl.java
index b182f25..06d28cb 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/ReviseLogServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/ReviseLogServiceImpl.java
@@ -127,6 +127,10 @@
if (Objects.isNull(loc)) {
throw new CoolException("搴撲綅涓嶅瓨鍦紒锛�");
}
+ List<LocItem> list = locItemService.list(new LambdaQueryWrapper<LocItem>().eq(LocItem::getLocId, loc.getId()));
+ if (!list.isEmpty()) {
+ throw new CoolException("搴撲綅:" + loc.getCode() + ", 璋冩暣淇℃伅涓虹┖锛侊紒");
+ }
locItemService.remove(new LambdaQueryWrapper<LocItem>().eq(LocItem::getLocId, loc.getId()));
listMap.get(items).forEach(logItem -> {
LocItem locDetl = new LocItem();
--
Gitblit v1.9.1