From 2b0e94aaf3aadc55db3069d69bc9f1b45455299d Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期六, 02 八月 2025 08:58:51 +0800 Subject: [PATCH] 调拔单功能优化 --- rsf-admin/src/page/locPreview/LocQueryList.jsx | 3 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferServiceImpl.java | 4 rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocPreviewController.java | 24 +++---- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferItemServiceImpl.java | 28 ++++---- rsf-admin/src/page/locPreview/index.jsx | 8 +- rsf-admin/src/page/orders/transfer/TransferItemList.jsx | 2 rsf-admin/src/page/locPreview/LocPreviewEdit.jsx | 55 ++--------------- rsf-admin/src/page/locPreview/LocPreviewList.jsx | 10 +- 8 files changed, 47 insertions(+), 87 deletions(-) diff --git a/rsf-admin/src/page/locPreview/LocItemEdit.jsx b/rsf-admin/src/page/locPreview/LocPreviewEdit.jsx similarity index 76% rename from rsf-admin/src/page/locPreview/LocItemEdit.jsx rename to rsf-admin/src/page/locPreview/LocPreviewEdit.jsx index 11d78da..88b9678 100644 --- a/rsf-admin/src/page/locPreview/LocItemEdit.jsx +++ b/rsf-admin/src/page/locPreview/LocPreviewEdit.jsx @@ -34,16 +34,8 @@ import * as Common from '@/utils/common'; import request from '@/utils/request'; -const FormToolbar = () => { - const { getValues } = useFormContext(); - return ( - <Toolbar sx={{ justifyContent: 'end' }}> - </Toolbar> - ) -} - -const LocItemEdit = () => { +const LocPreviewEdit = () => { const translate = useTranslate(); const dicts = JSON.parse(localStorage.getItem('sys_dicts'))?.filter(dict => (dict.dictTypeCode == 'sys_loc_type')) || []; const [warehouseId, setWrehouseId] = useState(); @@ -65,26 +57,10 @@ warnWhenUnsavedChanges toolbar={false} mode="onTouched" - defaultValues={{}} // validate={(values) => { }} > - <Grid container width={{ xs: '100%', xl: '90%' }} 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={12} md={10}> + <Grid container width={{ xs: '100%', xl: '90%' }} rowSpacing={3} columnSpacing={3}> + <Grid item xs={12} md={12}> <Typography variant="h6" gutterBottom> {translate('common.edit.title.main')} </Typography> @@ -97,7 +73,6 @@ <AutocompleteInput label="table.field.loc.warehouseId" optionText="name" - readOnly validate={[required()]} onChange={warehouseChange} filterToQuery={(val) => ({ name: val })} @@ -111,7 +86,6 @@ <AutocompleteInput label="table.field.loc.areaId" optionText="name" - readOnly validate={[required()]} filterToQuery={(val) => ({ name: val })} /> @@ -120,66 +94,53 @@ label="table.field.loc.code" source="code" parse={v => v} - readOnly validate={required()} /> <NumberInput label="table.field.loc.length" source="length" - readOnly - validate={required()} /> <NumberInput label="table.field.loc.width" source="width" - readOnly - validate={required()} /> <NumberInput label="table.field.loc.height" source="height" - readOnly - validate={required()} /> </Grid> <Grid item display="flex" gap={1}> - <ReferenceArrayInput source="typeIds" reference="locType" > - <SelectArrayInput label="table.field.loc.type" readOnly validate={[required()]} /> - </ReferenceArrayInput> + {/* <ReferenceArrayInput source="typeIds" reference="locType" > + <SelectArrayInput label="table.field.loc.type" /> + </ReferenceArrayInput> */} <TextInput label="table.field.loc.unit" source="unit" - readOnly parse={v => v} /> <DictionarySelect label={translate("table.field.loc.useStatus")} name="useStatus" validate={[required()]} - readOnly size="small" dictTypeCode="sys_loc_use_stas" /> <NumberInput label="table.field.loc.row" source="row" - readOnly validate={required()} /> <NumberInput label="table.field.loc.col" source="col" - readOnly validate={required()} /> - <NumberInput label="table.field.loc.lev" source="lev" - readOnly validate={required()} /> </Grid> @@ -188,9 +149,9 @@ </Grid> </SimpleForm> </Edit > - <LocQueryList /> + {/* <LocQueryList /> */} </> ) } -export default LocItemEdit; +export default LocPreviewEdit; diff --git a/rsf-admin/src/page/locPreview/LocItemList.jsx b/rsf-admin/src/page/locPreview/LocPreviewList.jsx similarity index 97% rename from rsf-admin/src/page/locPreview/LocItemList.jsx rename to rsf-admin/src/page/locPreview/LocPreviewList.jsx index e00a57d..5c20428 100644 --- a/rsf-admin/src/page/locPreview/LocItemList.jsx +++ b/rsf-admin/src/page/locPreview/LocPreviewList.jsx @@ -68,7 +68,7 @@ } })); -const LocItemList = () => { +const LocPreviewList = () => { const dicts = JSON.parse(localStorage.getItem('sys_dicts'))?.filter(dict => (dict.dictTypeCode == 'sys_loc_use_stas')) || []; const locType = JSON.parse(localStorage.getItem('sys_dicts'))?.filter(dict => (dict.dictTypeCode == 'sys_loc_type')) || []; const [createDialog, setCreateDialog] = useState(false); @@ -158,7 +158,7 @@ marginRight: drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0, }} storeKey="locPreview" - resource="loc/preview" + resource="locPreview" title={"menu.locPreview"} empty={false} filters={filters} @@ -166,7 +166,7 @@ actions={( <TopToolbar> <FilterButton /> - <SelectColumnsButton preferenceKey='loc' /> + <SelectColumnsButton preferenceKey='locPreview' /> </TopToolbar> )} perPage={DEFAULT_PAGE_SIZE} @@ -200,7 +200,7 @@ <BooleanField source="statusBool" label="common.field.status" sortable={false} align="left" /> <TextField source="memo" label="common.field.memo" sortable={false} /> <WrapperField cellClassName="opt" label="common.field.opt"> - <EditButton sx={{ padding: '1px', fontSize: '.75rem' }} label="toolbar.detail" /> + <EditButton sx={{ padding: '1px', fontSize: '.75rem' }} label="toolbar.detail" /> </WrapperField> </StyledDatagrid> </List> @@ -208,4 +208,4 @@ ) } -export default LocItemList; \ No newline at end of file +export default LocPreviewList; \ No newline at end of file diff --git a/rsf-admin/src/page/locPreview/LocQueryList.jsx b/rsf-admin/src/page/locPreview/LocQueryList.jsx index 6103c42..1ae7cae 100644 --- a/rsf-admin/src/page/locPreview/LocQueryList.jsx +++ b/rsf-admin/src/page/locPreview/LocQueryList.jsx @@ -99,7 +99,8 @@ const [drawerVal, setDrawerVal] = useState(false); const translate = useTranslate(); const locId = useGetRecordId(); - + console.log(locId); + return ( <Box display="flex"> <List diff --git a/rsf-admin/src/page/locPreview/index.jsx b/rsf-admin/src/page/locPreview/index.jsx index a02f044..70883fd 100644 --- a/rsf-admin/src/page/locPreview/index.jsx +++ b/rsf-admin/src/page/locPreview/index.jsx @@ -5,12 +5,12 @@ ShowGuesser, } from "react-admin"; -import LocItemList from "./LocItemList"; -import LocItemEdit from "./LocItemEdit"; +import LocPreviewList from "./LocPreviewList"; +import LocPreviewEdit from "./LocPreviewEdit"; export default { - list: LocItemList, - edit: LocItemEdit, + list: LocPreviewList, + edit: LocPreviewEdit, show: ShowGuesser, recordRepresentation: (record) => { return `${record.id}` diff --git a/rsf-admin/src/page/orders/transfer/TransferItemList.jsx b/rsf-admin/src/page/orders/transfer/TransferItemList.jsx index b2f869a..b03628b 100644 --- a/rsf-admin/src/page/orders/transfer/TransferItemList.jsx +++ b/rsf-admin/src/page/orders/transfer/TransferItemList.jsx @@ -126,7 +126,7 @@ rowClick={(id, resource, record) => false} expand={false} expandSingle={false} - omit={['id', 'transferId', 'matnrId', 'createTime', 'createBy', 'memo', 'platItemId', 'splrId', 'fieldsIndex', 'platOrderCode', 'platWorkCode', 'projectCode']} + omit={['id', 'transferId', 'matnrId', 'createTime', 'createBy', 'workQty', 'qty', 'memo', 'platItemId', 'splrId', 'fieldsIndex', 'platOrderCode', 'platWorkCode', 'projectCode']} > <NumberField source="id" /> <NumberField source="transferId" label="table.field.transferItem.transferId" /> diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocPreviewController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocPreviewController.java index f9d4673..e6cd17b 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocPreviewController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocPreviewController.java @@ -10,7 +10,6 @@ import com.vincent.rsf.server.common.domain.KeyValVo; import com.vincent.rsf.server.common.domain.PageParam; import com.vincent.rsf.server.common.utils.ExcelUtil; -import com.vincent.rsf.server.manager.controller.params.LocMastInitParam; import com.vincent.rsf.server.manager.controller.params.LocModifyParams; import com.vincent.rsf.server.manager.entity.Loc; import com.vincent.rsf.server.manager.enums.LocStsType; @@ -25,7 +24,6 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; -import javax.validation.Valid; import java.util.*; import java.util.stream.Collectors; @@ -38,7 +36,7 @@ private LocService locService; @PreAuthorize("hasAuthority('manager:locPreview:list')") - @PostMapping("/loc/preview/page") + @PostMapping("/locPreview/page") public R page(@RequestBody Map<String, Object> map) { BaseParam baseParam = buildParam(map, BaseParam.class); PageParam<Loc, BaseParam> pageParam = new PageParam<>(baseParam, Loc.class); @@ -50,13 +48,13 @@ } @PreAuthorize("hasAuthority('manager:locPreview:list')") - @PostMapping("/loc/preview/list") + @PostMapping("/locPreview/list") public R list(@RequestBody Map<String, Object> map) { return R.ok().add(locService.list()); } @PreAuthorize("hasAuthority('manager:locPreview:list')") - @PostMapping("/loc/preview/areaNoUse/list") + @PostMapping("/locPreview/areaNoUse/list") public R areaNoUselist(@RequestBody Map<String, Object> map) { String locCode = map.get("locCode").toString(); Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, locCode),false); @@ -70,20 +68,20 @@ } @PreAuthorize("hasAuthority('manager:locPreview:list')") - @PostMapping({"/loc/preview/many/{ids}", "/loc/preview/many/{ids}"}) + @PostMapping({"/locPreview/many/{ids}", "/locPreview/many/{ids}"}) public R many(@PathVariable Long[] ids) { return R.ok().add(locService.listByIds(Arrays.asList(ids))); } @PreAuthorize("hasAuthority('manager:locPreview:list')") - @GetMapping("/loc/preview/{id}") + @GetMapping("/locPreview/{id}") public R get(@PathVariable("id") Long id) { return R.ok().add(locService.getById(id)); } @PreAuthorize("hasAuthority('manager:locPreview:save')") @OperationLog("Create 搴撲綅淇℃伅琛�") - @PostMapping("/loc/preview/save") + @PostMapping("/locPreview/save") public R save(@RequestBody Loc loc) { if (Objects.isNull(loc.getWarehouseId())) { throw new CoolException("浠撳簱ID涓嶈兘涓虹┖锛侊紒"); @@ -110,7 +108,7 @@ @PreAuthorize("hasAuthority('manager:locPreview:update')") @OperationLog("Update 搴撲綅淇℃伅琛�") - @PostMapping("/loc/preview/update") + @PostMapping("/locPreview/update") @Transactional(rollbackFor = Exception.class) public R update(@RequestBody Loc loc) { loc.setUpdateBy(getLoginUserId()); @@ -130,7 +128,7 @@ @PreAuthorize("hasAuthority('manager:locPreview:remove')") @OperationLog("Delete 搴撲綅淇℃伅琛�") - @PostMapping("/loc/preview/remove/{ids}") + @PostMapping("/locPreview/remove/{ids}") public R remove(@PathVariable Long[] ids) { if (!locService.removeByIds(Arrays.asList(ids))) { return R.error("Delete Fail"); @@ -139,7 +137,7 @@ } @PreAuthorize("hasAuthority('manager:locPreview:list')") - @PostMapping("/loc/preview/query") + @PostMapping("/locPreview/query") public R query(@RequestParam(required = false) String condition) { List<KeyValVo> vos = new ArrayList<>(); LambdaQueryWrapper<Loc> wrapper = new LambdaQueryWrapper<>(); @@ -154,7 +152,7 @@ @PreAuthorize("hasAuthority('manager:locPreview:list')") @ApiOperation("搴撲綅瀵煎嚭") - @PostMapping("/loc/preview/export") + @PostMapping("/locPreview/export") public void export(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception { List<Loc> locs = new ArrayList<>(); if (Objects.isNull(map.get("ids"))) { @@ -167,7 +165,7 @@ @PreAuthorize("hasAuthority('manager:locPreview:update')") @ApiOperation("搴撲綅鎵归噺淇敼") - @PostMapping("/loc/preview/modify") + @PostMapping("/locPreview/modify") public R batchUpdate(@RequestBody LocModifyParams locs) { if (Objects.isNull(locs)) { throw new CoolException("鍙備负涓嶈兘涓虹┖锛侊紒"); diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferItemServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferItemServiceImpl.java index 7d9b618..25cbcbf 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferItemServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferItemServiceImpl.java @@ -49,20 +49,20 @@ throw new CoolException("璁″垝鏁颁笉鑳戒负绌猴紒锛�"); } // //淇濆瓨鎵╁睍瀛楁 -// try { -// StringBuffer sb = new StringBuffer(); -// if (Objects.isNull(wkOrderItem.getFieldsIndex()) || StringUtils.isBlank(wkOrderItem.getFieldsIndex())) { -// sb.append(wkOrderItem.getMatnrId() + wkOrderItem.getBatch()); -// //鑾峰彇16浣島uid -// String uuid16 = Cools.md5Chinese(sb.toString()); -// wkOrderItem.setFieldsIndex(uuid16); -// params.put("index", uuid16); -// } -// //淇濆瓨鎴栨洿鏂板姩鎬佸瓧娈靛�� -// FieldsUtils.updateFieldsValue(params); -// } catch (Exception e) { -// throw new RuntimeException(e); -// } + try { + StringBuffer sb = new StringBuffer(); + if (Objects.isNull(wkOrderItem.getFieldsIndex()) || StringUtils.isBlank(wkOrderItem.getFieldsIndex())) { + sb.append(wkOrderItem.getMatnrId() + wkOrderItem.getBatch()); + //鑾峰彇16浣島uid + String uuid16 = Cools.md5Chinese(sb.toString()); + wkOrderItem.setFieldsIndex(uuid16); + params.put("index", uuid16); + } + //淇濆瓨鎴栨洿鏂板姩鎬佸瓧娈靛�� + FieldsUtils.updateFieldsValue(params); + } catch (Exception e) { + throw new RuntimeException(e); + } wkOrderItem.setUpdateBy(loginUserId).setCreateBy(loginUserId); if (!this.saveOrUpdate(wkOrderItem)) { throw new CoolException("鏀惰揣閫氱煡鍗曟槑缁嗕繚瀛樺け璐ワ紒锛�"); diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferServiceImpl.java index 1711af0..0e9c566 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TransferServiceImpl.java @@ -243,7 +243,7 @@ throw new CoolException("鍑哄簱鍗曟槑缁嗕繚瀛樺け璐ワ紒锛�"); } - transfer.setExceStatus(CheckExceStatus.CHECK_ORDER_STATUS_EXCE_ING.val); + transfer.setExceStatus(AsnExceStatus.ASN_EXCE_STATUS_EXCE_ING.val); if (!this.updateById(transfer)) { throw new CoolException("璋冩嫈鍗曟洿鏂板け璐ワ紒锛�"); @@ -359,7 +359,7 @@ .like(StringUtils.isNotBlank(params.getMaktx()), LocItem::getMaktx, params.getMaktx()); Set<Long> locIds = locs.stream().map(Loc::getId).collect(Collectors.toSet()); wrapper.lambda().in(LocItem::getLocId, locIds) - .groupBy(LocItem::getBatch, LocItem::getFieldsIndex, LocItem::getMatnrCode); + .groupBy(LocItem::getBatch, LocItem::getMatnrId); return locItemService.page(page, wrapper); } else { IPage<LocItem> page = new Page<>(params.getCurrent(), params.getPageSize()); -- Gitblit v1.9.1