From 95549a8f8a6a64ed7fc822f275e5c8b8d4e5c0ae Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期五, 18 七月 2025 16:30:12 +0800
Subject: [PATCH] 盘点差异单功能优化
---
/dev/null | 33 -----
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CheckOrderSchedules.java | 29 ++++
rsf-admin/src/page/orders/check/checkDiff/CheckDiffEdit.jsx | 173 +++++++++++++---------------
rsf-admin/src/page/orders/check/checkDiffItem/CheckDiffItemList.jsx | 25 +---
rsf-admin/src/i18n/zh.js | 26 ++++
rsf-admin/src/page/orders/check/checkDiff/CheckDiffList.jsx | 3
rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/CheckDiffItem.java | 9 -
rsf-admin/src/i18n/en.js | 25 ++++
rsf-admin/src/page/ResourceContent.js | 3
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/CheckDiffItemController.java | 18 +-
10 files changed, 175 insertions(+), 169 deletions(-)
diff --git a/rsf-admin/src/i18n/en.js b/rsf-admin/src/i18n/en.js
index 789e68e..beda28d 100644
--- a/rsf-admin/src/i18n/en.js
+++ b/rsf-admin/src/i18n/en.js
@@ -209,6 +209,7 @@
basStation: 'BasStation',
basContainer: 'BasContainer',
waveRule: 'Wave Rules',
+ checkDiff: 'Check Diff',
},
table: {
@@ -643,6 +644,30 @@
ntyStatus: "ntyStatus",
platItemId: 'platItemId'
},
+
+ checkDiff: {
+ orderCode: "Check Code",
+ checkType: "Check Type",
+ areaId: "Warehouse Area ID",
+ areaName: "Warehouse Area Name",
+ anfme: "Stock Qty",
+ checkQty: "Check Qty",
+ exceStatus: "Exce Status",
+ },
+ checkDiffItem: {
+ checkId: "checkId",
+ orderCode: "orderCode",
+ maktx: "maktx",
+ matnrCode: "matnrCode",
+ spec: "spec",
+ model: "model",
+ barcode: "barcode",
+ batch: "batch",
+ anfme: "anfme",
+ checkQty: "checkQty",
+ exceStatus: "exceStatus",
+ reason: "reason",
+ },
outStockItem: {
asnId: "ID",
asnCode: "Out Code",
diff --git a/rsf-admin/src/i18n/zh.js b/rsf-admin/src/i18n/zh.js
index 851096d..fbafcc3 100644
--- a/rsf-admin/src/i18n/zh.js
+++ b/rsf-admin/src/i18n/zh.js
@@ -215,6 +215,7 @@
stockTransfer: '搴撲綅杞Щ',
waveRule: '娉㈡绛栫暐',
checkOrder: '鐩樼偣鍗�',
+ checkDiff: '鐩樼偣宸紓鍗�',
},
table: {
field: {
@@ -649,6 +650,7 @@
ntyStatus: "涓婃姤鐘舵��",
exceStatus: '鎵ц鐘舵��'
},
+
checkOrderItem: {
orderId: "涓诲崟鏍囪瘑",
orderCode: "鍗曞彿",
@@ -671,6 +673,30 @@
qrcode: "浜岀淮鐮�",
barcode: "搴忓垪鐮�",
},
+
+ checkDiff: {
+ orderCode: "鐩樼偣鍗�",
+ checkType: "鐩樼偣绫诲瀷",
+ areaId: "搴撳尯ID",
+ areaName: "搴撳尯",
+ anfme: "搴撻潰鏁伴噺",
+ checkQty: "鐩樼偣鏁伴噺",
+ exceStatus: "鎵ц鐘舵��",
+ },
+ checkDiffItem: {
+ checkId: "鐩樼偣鍗旾D",
+ orderCode: "鐩樼偣鍗曞彿",
+ maktx: "鐗╂枡鍚嶇О",
+ matnrCode: "鐗╂枡缂栫爜",
+ spec: "瑙勬牸",
+ model: "鍨嬪彿",
+ barcode: "鎵樼洏鐮�",
+ batch: "鎵规",
+ anfme: "搴撳瓨鏁伴噺",
+ checkQty: "瀹炵洏鏁伴噺",
+ exceStatus: "鎵ц鐘舵��",
+ reason: "宸紓鍘熷洜",
+ },
asnOrderItem: {
orderId: "涓诲崟鏍囪瘑",
orderCode: "鍗曞彿",
diff --git a/rsf-admin/src/page/ResourceContent.js b/rsf-admin/src/page/ResourceContent.js
index 2303d1b..d729380 100644
--- a/rsf-admin/src/page/ResourceContent.js
+++ b/rsf-admin/src/page/ResourceContent.js
@@ -54,6 +54,7 @@
import stockTransfer from "./work/stockTransfer";
import waveRule from './waveRule';
import check from './orders/check';
+import checkDiff from './orders/check/checkDiff';
const ResourceContent = (node) => {
switch (node.component) {
@@ -157,6 +158,8 @@
return waveRule;
case 'check':
return check;
+ case 'checkDiff':
+ return checkDiff;
default:
return {
list: ListGuesser,
diff --git a/rsf-admin/src/page/orders/check/checkDiff/CheckDiffEdit.jsx b/rsf-admin/src/page/orders/check/checkDiff/CheckDiffEdit.jsx
index e29859d..885c0c0 100644
--- a/rsf-admin/src/page/orders/check/checkDiff/CheckDiffEdit.jsx
+++ b/rsf-admin/src/page/orders/check/checkDiff/CheckDiffEdit.jsx
@@ -22,109 +22,96 @@
} 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";
+import EditBaseAside from "../../../components/EditBaseAside";
+import CustomerTopToolBar from "../../../components/EditTopToolBar";
+import CheckDiffItemList from "../checkDiffItem/CheckDiffItemList";
-const FormToolbar = () => {
- const { getValues } = useFormContext();
-
- return (
- <Toolbar sx={{ justifyContent: 'space-between' }}>
- <SaveButton />
- <DeleteButton mutationMode="optimistic" />
- </Toolbar>
- )
-}
const CheckDiffEdit = () => {
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"
+ sx={{marginBottom: 1}}
+ 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.checkDiff.orderCode"
- source="orderCode"
- parse={v => v}
- autoFocus
- />
- </Stack>
- <Stack direction='row' gap={2}>
- <SelectInput
- label="table.field.checkDiff.checkType"
- source="checkType"
- choices={[
- { id: 0, name: '鏄庣洏' },
- { id: 1, name: '鏆楃洏' },
- ]}
- />
- </Stack>
- <Stack direction='row' gap={2}>
- <NumberInput
- label="table.field.checkDiff.areaId"
- source="areaId"
- />
- </Stack>
- <Stack direction='row' gap={2}>
- <TextInput
- label="table.field.checkDiff.areaName"
- source="areaName"
- parse={v => v}
- />
- </Stack>
- <Stack direction='row' gap={2}>
- <NumberInput
- label="table.field.checkDiff.anfme"
- source="anfme"
- />
- </Stack>
- <Stack direction='row' gap={2}>
- <NumberInput
- label="table.field.checkDiff.checkQty"
- source="checkQty"
- />
- </Stack>
- <Stack direction='row' gap={2}>
- <NumberInput
- label="table.field.checkDiff.exceStatus"
- source="exceStatus"
- />
- </Stack>
+ <SimpleForm
+ shouldUnregister
+ warnWhenUnsavedChanges
+ toolbar={false}
+ mode="onTouched"
+ defaultValues={{}}
+ >
+ <Grid container width={{ xs: '100%', xl: '100%' }} rowSpacing={3} columnSpacing={3}
+ sx={{
+ "& .MuiFormLabel-root.MuiInputLabel-root.Mui-disabled": {
+ bgcolor: 'white',
+ WebkitTextFillColor: "rgba(0, 0, 0)"
+ },
+ "& .MuiInputBase-input.MuiFilledInput-input.Mui-disabled": {
+ bgcolor: 'white',
+ WebkitTextFillColor: "rgba(0, 0, 0)"
+ },
+ "& .MuiFilledInput-root.MuiInputBase-sizeSmall": {
+ bgcolor: 'white',
+ }
+ }}
+ >
+ <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.checkDiff.orderCode"
+ source="orderCode"
+ parse={v => v}
+ autoFocus
+ />
+ <SelectInput
+ label="table.field.checkDiff.checkType"
+ source="checkType"
+ choices={[
+ { id: 0, name: '鏄庣洏' },
+ { id: 1, name: '鏆楃洏' },
+ ]}
+ />
+ <NumberInput
+ label="table.field.checkDiff.areaId"
+ source="areaId"
+ />
+ <TextInput
+ label="table.field.checkDiff.areaName"
+ source="areaName"
+ parse={v => v}
+ />
+ </Stack>
+ <Stack direction='row' gap={2}>
+ <NumberInput
+ label="table.field.checkDiff.anfme"
+ source="anfme"
+ />
+ <NumberInput
+ label="table.field.checkDiff.checkQty"
+ source="checkQty"
+ />
+ <NumberInput
+ label="table.field.checkDiff.exceStatus"
+ source="exceStatus"
+ />
+ </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 >
+ <CheckDiffItemList />
+ </>
)
}
diff --git a/rsf-admin/src/page/orders/check/checkDiff/CheckDiffList.jsx b/rsf-admin/src/page/orders/check/checkDiff/CheckDiffList.jsx
index 81df873..a289f53 100644
--- a/rsf-admin/src/page/orders/check/checkDiff/CheckDiffList.jsx
+++ b/rsf-admin/src/page/orders/check/checkDiff/CheckDiffList.jsx
@@ -62,7 +62,6 @@
<SearchInput source="condition" alwaysOn />,
<DateInput label='common.time.after' source="timeStart" alwaysOn />,
<DateInput label='common.time.before' source="timeEnd" alwaysOn />,
-
<TextInput source="orderCode" label="table.field.checkDiff.orderCode" />,
<SelectInput source="checkType" label="table.field.checkDiff.checkType"
choices={[
@@ -75,7 +74,6 @@
<NumberInput source="anfme" label="table.field.checkDiff.anfme" />,
<NumberInput source="checkQty" label="table.field.checkDiff.checkQty" />,
<NumberInput source="exceStatus" label="table.field.checkDiff.exceStatus" />,
-
<TextInput label="common.field.memo" source="memo" />,
<SelectInput
label="common.field.status"
@@ -135,7 +133,6 @@
<NumberField source="anfme" label="table.field.checkDiff.anfme" />
<NumberField source="checkQty" label="table.field.checkDiff.checkQty" />
<NumberField source="exceStatus" label="table.field.checkDiff.exceStatus" />
-
<ReferenceField source="updateBy" label="common.field.updateBy" reference="user" link={false} sortable={false}>
<TextField source="nickname" />
</ReferenceField>
diff --git a/rsf-admin/src/page/orders/check/checkDiffItem/CheckDiffItemList.jsx b/rsf-admin/src/page/orders/check/checkDiffItem/CheckDiffItemList.jsx
index cbcd722..0a4b9dc 100644
--- a/rsf-admin/src/page/orders/check/checkDiffItem/CheckDiffItemList.jsx
+++ b/rsf-admin/src/page/orders/check/checkDiffItem/CheckDiffItemList.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';
@@ -62,7 +63,6 @@
<SearchInput source="condition" alwaysOn />,
<DateInput label='common.time.after' source="timeStart" alwaysOn />,
<DateInput label='common.time.before' source="timeEnd" alwaysOn />,
-
<NumberInput source="checkId" label="table.field.checkDiffItem.checkId" />,
<TextInput source="orderCode" label="table.field.checkDiffItem.orderCode" />,
<TextInput source="maktx" label="table.field.checkDiffItem.maktx" />,
@@ -75,7 +75,6 @@
<NumberInput source="checkQty" label="table.field.checkDiffItem.checkQty" />,
<NumberInput source="exceStatus" label="table.field.checkDiffItem.exceStatus" />,
<TextInput source="reason" label="table.field.checkDiffItem.reason" />,
-
<TextInput label="common.field.memo" source="memo" />,
<SelectInput
label="common.field.status"
@@ -90,7 +89,7 @@
const CheckDiffItemList = () => {
const translate = useTranslate();
-
+ const orderId = useGetRecordId();
const [createDialog, setCreateDialog] = useState(false);
const [drawerVal, setDrawerVal] = useState(false);
@@ -105,14 +104,15 @@
}),
marginRight: !!drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0,
}}
+ resource="checkDiffItem"
title={"menu.checkDiffItem"}
- empty={<EmptyData onClick={() => { setCreateDialog(true) }} />}
+ empty={false}
filters={filters}
+ filter={{checkId: orderId}}
sort={{ field: "create_time", order: "desc" }}
actions={(
<TopToolbar>
<FilterButton />
- <MyCreateButton onClick={() => { setCreateDialog(true) }} />
<SelectColumnsButton preferenceKey='checkDiffItem' />
<MyExportButton />
</TopToolbar>
@@ -121,9 +121,9 @@
>
<StyledDatagrid
preferenceKey='checkDiffItem'
- bulkActionButtons={() => <BulkDeleteButton mutationMode={OPERATE_MODE} />}
+ bulkActionButtons={false}
rowClick={(id, resource, record) => false}
- expand={() => <CheckDiffItemPanel />}
+ expand={false}
expandSingle={true}
omit={['id', 'createTime', 'createBy', 'memo']}
>
@@ -140,7 +140,6 @@
<NumberField source="checkQty" label="table.field.checkDiffItem.checkQty" />
<NumberField source="exceStatus" label="table.field.checkDiffItem.exceStatus" />
<TextField source="reason" label="table.field.checkDiffItem.reason" />
-
<ReferenceField source="updateBy" label="common.field.updateBy" reference="user" link={false} sortable={false}>
<TextField source="nickname" />
</ReferenceField>
@@ -157,16 +156,6 @@
</WrapperField>
</StyledDatagrid>
</List>
- <CheckDiffItemCreate
- open={createDialog}
- setOpen={setCreateDialog}
- />
- <PageDrawer
- title='CheckDiffItem Detail'
- drawerVal={drawerVal}
- setDrawerVal={setDrawerVal}
- >
- </PageDrawer>
</Box>
)
}
diff --git a/rsf-server/src/main/java/checkDiff.sql b/rsf-server/src/main/java/checkDiff.sql
deleted file mode 100644
index a5acc0c..0000000
--- a/rsf-server/src/main/java/checkDiff.sql
+++ /dev/null
@@ -1,28 +0,0 @@
--- save checkDiff record
--- mysql
-insert into `sys_menu` ( `name`, `parent_id`, `route`, `component`, `type`, `sort`, `tenant_id`, `status`) values ( 'menu.checkDiff', '0', '/manager/checkDiff', 'checkDiff', '0' , '0', '1' , '1');
-
-insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `tenant_id`, `status`) values ( 'Query 鐩樼偣宸紓琛�', '', '1', 'manager:checkDiff:list', '0', '1', '1');
-insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `tenant_id`, `status`) values ( 'Create 鐩樼偣宸紓琛�', '', '1', 'manager:checkDiff:save', '1', '1', '1');
-insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `tenant_id`, `status`) values ( 'Update 鐩樼偣宸紓琛�', '', '1', 'manager:checkDiff:update', '2', '1', '1');
-insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `tenant_id`, `status`) values ( 'Delete 鐩樼偣宸紓琛�', '', '1', 'manager:checkDiff:remove', '3', '1', '1');
-
--- locale menu name
-checkDiff: 'CheckDiff',
-
--- locale field
-checkDiff: {
- orderCode: "orderCode",
- checkType: "checkType",
- areaId: "areaId",
- areaName: "areaName",
- anfme: "anfme",
- checkQty: "checkQty",
- exceStatus: "exceStatus",
-},
-
--- ResourceContent
-import checkDiff from './checkDiff';
-
-case 'checkDiff':
- return checkDiff;
diff --git a/rsf-server/src/main/java/checkDiffItem.sql b/rsf-server/src/main/java/checkDiffItem.sql
deleted file mode 100644
index a0921ac..0000000
--- a/rsf-server/src/main/java/checkDiffItem.sql
+++ /dev/null
@@ -1,33 +0,0 @@
--- save checkDiffItem record
--- mysql
-insert into `sys_menu` ( `name`, `parent_id`, `route`, `component`, `type`, `sort`, `tenant_id`, `status`) values ( 'menu.checkDiffItem', '0', '/manager/checkDiffItem', 'checkDiffItem', '0' , '0', '1' , '1');
-
-insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `tenant_id`, `status`) values ( 'Query 鐩樼偣鏄庣粏宸紓琛�', '', '1', 'manager:checkDiffItem:list', '0', '1', '1');
-insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `tenant_id`, `status`) values ( 'Create 鐩樼偣鏄庣粏宸紓琛�', '', '1', 'manager:checkDiffItem:save', '1', '1', '1');
-insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `tenant_id`, `status`) values ( 'Update 鐩樼偣鏄庣粏宸紓琛�', '', '1', 'manager:checkDiffItem:update', '2', '1', '1');
-insert into `sys_menu` ( `name`, `parent_id`, `type`, `authority`, `sort`, `tenant_id`, `status`) values ( 'Delete 鐩樼偣鏄庣粏宸紓琛�', '', '1', 'manager:checkDiffItem:remove', '3', '1', '1');
-
--- locale menu name
-checkDiffItem: 'CheckDiffItem',
-
--- locale field
-checkDiffItem: {
- checkId: "checkId",
- orderCode: "orderCode",
- maktx: "maktx",
- matnrCode: "matnrCode",
- spec: "spec",
- model: "model",
- barcode: "barcode",
- batch: "batch",
- anfme: "anfme",
- checkQty: "checkQty",
- exceStatus: "exceStatus",
- reason: "reason",
-},
-
--- ResourceContent
-import checkDiffItem from './checkDiffItem';
-
-case 'checkDiffItem':
- return checkDiffItem;
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/CheckDiffItemController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/CheckDiffItemController.java
index 1ccf55c..120283a 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/CheckDiffItemController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/CheckDiffItemController.java
@@ -25,7 +25,7 @@
@Autowired
private CheckDiffItemService checkDiffItemService;
- @PreAuthorize("hasAuthority('manager:checkDiffItem:list')")
+ @PreAuthorize("hasAuthority('manager:checkDiff:list')")
@PostMapping("/checkDiffItem/page")
public R page(@RequestBody Map<String, Object> map) {
BaseParam baseParam = buildParam(map, BaseParam.class);
@@ -33,25 +33,25 @@
return R.ok().add(checkDiffItemService.page(pageParam, pageParam.buildWrapper(true)));
}
- @PreAuthorize("hasAuthority('manager:checkDiffItem:list')")
+ @PreAuthorize("hasAuthority('manager:checkDiff:list')")
@PostMapping("/checkDiffItem/list")
public R list(@RequestBody Map<String, Object> map) {
return R.ok().add(checkDiffItemService.list());
}
- @PreAuthorize("hasAuthority('manager:checkDiffItem:list')")
+ @PreAuthorize("hasAuthority('manager:checkDiff:list')")
@PostMapping({"/checkDiffItem/many/{ids}", "/checkDiffItems/many/{ids}"})
public R many(@PathVariable Long[] ids) {
return R.ok().add(checkDiffItemService.listByIds(Arrays.asList(ids)));
}
- @PreAuthorize("hasAuthority('manager:checkDiffItem:list')")
+ @PreAuthorize("hasAuthority('manager:checkDiff:list')")
@GetMapping("/checkDiffItem/{id}")
public R get(@PathVariable("id") Long id) {
return R.ok().add(checkDiffItemService.getById(id));
}
- @PreAuthorize("hasAuthority('manager:checkDiffItem:save')")
+ @PreAuthorize("hasAuthority('manager:checkDiff:save')")
@OperationLog("Create 鐩樼偣鏄庣粏宸紓琛�")
@PostMapping("/checkDiffItem/save")
public R save(@RequestBody CheckDiffItem checkDiffItem) {
@@ -65,7 +65,7 @@
return R.ok("Save Success").add(checkDiffItem);
}
- @PreAuthorize("hasAuthority('manager:checkDiffItem:update')")
+ @PreAuthorize("hasAuthority('manager:checkDiff:update')")
@OperationLog("Update 鐩樼偣鏄庣粏宸紓琛�")
@PostMapping("/checkDiffItem/update")
public R update(@RequestBody CheckDiffItem checkDiffItem) {
@@ -77,7 +77,7 @@
return R.ok("Update Success").add(checkDiffItem);
}
- @PreAuthorize("hasAuthority('manager:checkDiffItem:remove')")
+ @PreAuthorize("hasAuthority('manager:checkDiff:remove')")
@OperationLog("Delete 鐩樼偣鏄庣粏宸紓琛�")
@PostMapping("/checkDiffItem/remove/{ids}")
public R remove(@PathVariable Long[] ids) {
@@ -87,7 +87,7 @@
return R.ok("Delete Success").add(ids);
}
- @PreAuthorize("hasAuthority('manager:checkDiffItem:list')")
+ @PreAuthorize("hasAuthority('manager:checkDiff:list')")
@PostMapping("/checkDiffItem/query")
public R query(@RequestParam(required = false) String condition) {
List<KeyValVo> vos = new ArrayList<>();
@@ -101,7 +101,7 @@
return R.ok().add(vos);
}
- @PreAuthorize("hasAuthority('manager:checkDiffItem:list')")
+ @PreAuthorize("hasAuthority('manager:checkDiff:list')")
@PostMapping("/checkDiffItem/export")
public void export(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception {
ExcelUtil.build(ExcelUtil.create(checkDiffItemService.list(), CheckDiffItem.class), response);
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/CheckDiffItem.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/CheckDiffItem.java
index 03496a2..4c9fe2f 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/CheckDiffItem.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/CheckDiffItem.java
@@ -104,12 +104,6 @@
private Double checkQty;
/**
- * 鎵ц鐘舵��
- */
- @ApiModelProperty(value= "鎵ц鐘舵��")
- private Integer exceStatus;
-
- /**
* 宸紓鍘熷洜
*/
@ApiModelProperty(value= "宸紓鍘熷洜")
@@ -168,7 +162,7 @@
public CheckDiffItem() {}
- public CheckDiffItem(Long checkId,String orderCode,String maktx,String matnrCode,String spec,String model,String barcode,String batch,Double anfme,Double checkQty,Integer exceStatus,String reason,Integer status,Integer deleted,Integer tenantId,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) {
+ public CheckDiffItem(Long checkId,String orderCode,String maktx,String matnrCode,String spec,String model,String barcode,String batch,Double anfme,Double checkQty,String reason,Integer status,Integer deleted,Integer tenantId,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) {
this.checkId = checkId;
this.orderCode = orderCode;
this.maktx = maktx;
@@ -179,7 +173,6 @@
this.batch = batch;
this.anfme = anfme;
this.checkQty = checkQty;
- this.exceStatus = exceStatus;
this.reason = reason;
this.status = status;
this.deleted = deleted;
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CheckOrderSchedules.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CheckOrderSchedules.java
index e470f48..4c80343 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CheckOrderSchedules.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CheckOrderSchedules.java
@@ -4,11 +4,9 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.manager.entity.*;
-import com.vincent.rsf.server.manager.enums.CheckDiffExceStatus;
-import com.vincent.rsf.server.manager.enums.CheckExceStatus;
-import com.vincent.rsf.server.manager.enums.TaskStsType;
-import com.vincent.rsf.server.manager.enums.TaskType;
+import com.vincent.rsf.server.manager.enums.*;
import com.vincent.rsf.server.manager.service.*;
+import com.vincent.rsf.server.manager.service.impl.LocServiceImpl;
import com.vincent.rsf.server.system.utils.SystemAuthUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -40,6 +38,8 @@
private CheckOrderService checkOrderService;
@Autowired
private CheckOrderItemService checkOrderItemService;
+ @Autowired
+ private LocServiceImpl locService;
/**
* @author Ryan
@@ -51,7 +51,7 @@
@Transactional(rollbackFor = Exception.class)
public void genReCheck() {
List<TaskItem> taskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>()
- .notExists("SELECT 1 FROM man_check_diff_item cdi WHERE id = cdi.task_item_id"));
+ .notExists("SELECT 1 FROM man_check_diff_item cdi WHERE id != cdi.task_item_id"));
if (taskItems.isEmpty()) {
return;
}
@@ -83,6 +83,10 @@
List<CheckDiffItem> diffItems = new ArrayList<>();
CheckDiff finalCheckDiff = checkDiff;
items.forEach(item -> {
+ Task task = taskService.getById(item.getTaskId());
+ if (Objects.isNull(task)) {
+ throw new CoolException("鏁版嵁閿欒锛氫换鍔′笉瀛樺湪锛侊紒");
+ }
CheckDiffItem checkDiffItem = new CheckDiffItem();
BeanUtils.copyProperties(item, checkDiffItem);
checkDiffItem.setCheckId(finalCheckDiff.getId())
@@ -90,10 +94,25 @@
.setTaskId(item.getTaskId())
.setCreateBy(loginUserId)
.setCreateTime(new Date())
+ .setBarcode(task.getBarcode())
.setUpdateBy(loginUserId)
.setUpdateTime(new Date())
.setOrderCode(finalCheckDiff.getOrderCode());
diffItems.add(checkDiffItem);
+
+ if (Objects.isNull(finalCheckDiff.getAreaId())) {
+ Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>()
+ .eq(Loc::getCode, task.getOrgLoc())
+ .eq(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_R.type));
+ if (Objects.isNull(loc)) {
+ throw new CoolException("鐩樼偣搴撲綅涓嶅瓨鍦紒锛�");
+ }
+ finalCheckDiff.setAreaId(loc.getAreaId()).setAreaName(loc.getAreaId$());
+
+ if (!checkDiffService.updateById(finalCheckDiff)) {
+ throw new CoolException("搴撳尯淇℃伅淇敼澶辫触锛侊紒");
+ }
+ }
});
if (!checkDiffItemService.saveBatch(diffItems)) {
--
Gitblit v1.9.1