From ad9930c5cf8624b8056bb9fda164fa65e66ef9cd Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期三, 26 三月 2025 13:30:11 +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 | 38 ++-- rsf-admin/src/page/basicInfo/loc/BatchModal.jsx | 98 +++++++------ rsf-admin/src/page/basicInfo/loc/LocListAside.jsx | 11 + rsf-server/src/main/java/com/vincent/rsf/server/manager/service/MatnrService.java | 5 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrServiceImpl.java | 43 ++++- rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrController.java | 26 +++ rsf-admin/src/page/basicInfo/matnr/MatnrCreate.jsx | 2 rsf-admin/src/page/basicInfo/loc/LocList.jsx | 86 +++++++++++- rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx | 2 rsf-admin/src/page/basicInfo/matnr/PrintModal.jsx | 2 rsf-server/src/main/java/com/vincent/rsf/server/common/utils/FieldsUtils.java | 12 - rsf-admin/src/i18n/zh.js | 2 rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx | 29 +++ rsf-admin/src/i18n/en.js | 2 rsf-admin/src/page/basicInfo/locAreaMat/LocAreaMatPanel.jsx | 14 +- 15 files changed, 256 insertions(+), 116 deletions(-) diff --git a/rsf-admin/src/i18n/en.js b/rsf-admin/src/i18n/en.js index e767188..6876c34 100644 --- a/rsf-admin/src/i18n/en.js +++ b/rsf-admin/src/i18n/en.js @@ -653,6 +653,8 @@ batchMix: 'batchFiexed', batchWarehouse: 'batchWarehouse', batchStockLevel: "batchStockLevel", + batchWarehouseAreas: "batchWarehouseAreas", + batchLocType: "batchLocType", }, }; diff --git a/rsf-admin/src/i18n/zh.js b/rsf-admin/src/i18n/zh.js index 446f610..4684a76 100644 --- a/rsf-admin/src/i18n/zh.js +++ b/rsf-admin/src/i18n/zh.js @@ -657,6 +657,8 @@ batchStockLevel: "鎵归噺ABC鍒嗙被", batchValidWarn: "鎵归噺棰勮", batchFlagCheck: "鎵归噺鍏嶆", + batchWarehouseAreas: "鎵归噺搴撳尯", + batchLocType: "鎵归噺搴撲綅绫诲瀷", }, }; diff --git a/rsf-admin/src/page/asnOrder/AsnOrderList.jsx b/rsf-admin/src/page/asnOrder/AsnOrderList.jsx index 095bde5..39e22a4 100644 --- a/rsf-admin/src/page/asnOrder/AsnOrderList.jsx +++ b/rsf-admin/src/page/asnOrder/AsnOrderList.jsx @@ -111,29 +111,29 @@ const inspection = () => { }; const print = () => { - const imageUrls = ['https://www.baidu.com/img/flexible/logo/pc/result@2.png',] - const iframe = document.createElement('iframe'); - iframe.style.display = 'none'; - document.body.appendChild(iframe); + // const imageUrls = ['https://www.baidu.com/img/flexible/logo/pc/result@2.png',] + // const iframe = document.createElement('iframe'); + // iframe.style.display = 'none'; + // document.body.appendChild(iframe); - const iframeDoc = iframe.contentDocument || iframe.contentWindow.document; - iframeDoc.open(); - iframeDoc.write('<html><head><title>Print Images</title></head><body>'); + // const iframeDoc = iframe.contentDocument || iframe.contentWindow.document; + // iframeDoc.open(); + // iframeDoc.write('<html><head><title>Print Images</title></head><body>'); - // 灏嗗浘鐗囨彃鍏ュ埌 iframe 涓� - imageUrls.forEach((imageUrl) => { - iframeDoc.write(`<img src="${imageUrl}" style="margin: 10px;">`); - }); + // // 灏嗗浘鐗囨彃鍏ュ埌 iframe 涓� + // imageUrls.forEach((imageUrl) => { + // iframeDoc.write(`<img src="${imageUrl}" style="margin: 10px;">`); + // }); - iframeDoc.write('</body></html>'); - iframeDoc.close(); + // iframeDoc.write('</body></html>'); + // iframeDoc.close(); - // 绛夊緟鍥剧墖鍔犺浇瀹屾垚鍚庤Е鍙戞墦鍗� - iframe.contentWindow.onload = () => { - iframe.contentWindow.print(); - // 鎵撳嵃瀹屾垚鍚庣Щ闄� iframe - document.body.removeChild(iframe); - }; + // // 绛夊緟鍥剧墖鍔犺浇瀹屾垚鍚庤Е鍙戞墦鍗� + // iframe.contentWindow.onload = () => { + // iframe.contentWindow.print(); + // // 鎵撳嵃瀹屾垚鍚庣Щ闄� iframe + // document.body.removeChild(iframe); + // }; }; diff --git a/rsf-admin/src/page/basicInfo/loc/BatchModal.jsx b/rsf-admin/src/page/basicInfo/loc/BatchModal.jsx index 4a4c023..64cc36a 100644 --- a/rsf-admin/src/page/basicInfo/loc/BatchModal.jsx +++ b/rsf-admin/src/page/basicInfo/loc/BatchModal.jsx @@ -55,7 +55,7 @@ import StatusSelectInput from "../../components/StatusSelectInput"; -const BatchModal = ({ open, setOpen }) => { +const BatchModal = ({ open, setOpen, fieldType }) => { const refresh = useRefresh(); const translate = useTranslate(); @@ -128,48 +128,48 @@ } return ( - <Dialog open={open} maxWidth="md" fullWidth> + <Dialog open={open} maxWidth="xs" fullWidth> <Form onSubmit={handleSubmit}> <DialogCloseButton onClose={handleClose} /> <DialogTitle>{translate('toolbar.batch')}</DialogTitle> <DialogContent sx={{ mt: 2 }}> <Box sx={{ display: 'flex', flexDirection: 'column', gap: 3 }}> <Grid container spacing={2}> - <Grid item xs={4}> - <ReferenceInput - source="warehouseId" - reference="warehouse" - > - <AutocompleteInput - label="table.field.loc.warehouseId" - optionText="name" - onChange={(value) => handleChange(value, 'warehouseId')} - value={formData.warehouseId} - filterToQuery={(val) => ({ name: val })} - /> - </ReferenceInput> + {fieldType === 'warehouseId' && + <Grid item xs={6}> + <ReferenceInput + source="warehouseId" + reference="warehouse" + > + <AutocompleteInput + label="table.field.loc.warehouseId" + optionText="name" + value={formData.warehouseId} + filterToQuery={(val) => ({ name: val })} + /> + </ReferenceInput> + </Grid> + } + {fieldType === 'areaId' && + <Grid item xs={6}> + <ReferenceInput + source="areaId" + reference="warehouseAreas" + > + <AutocompleteInput + label="table.field.loc.areaId" + optionText="name" + onChange={(value) => handleChange(value, 'areaId')} + value={formData.areaId} + filterToQuery={(val) => ({ name: val })} + /> + </ReferenceInput> - </Grid> - - <Grid item xs={4}> - <ReferenceInput - source="areaId" - reference="warehouseAreas" - filter={{ warehouseId: formData.warehouseId }} - > - <AutocompleteInput - label="table.field.loc.areaId" - optionText="name" - onChange={(value) => handleChange(value, 'areaId')} - value={formData.areaId} - filterToQuery={(val) => ({ name: val })} - /> - </ReferenceInput> - - </Grid> - - <Grid item xs={4}> - {/* <DictionarySelect + </Grid> + } + {fieldType === 'typeIds' && + <Grid item xs={6}> + {/* <DictionarySelect label={translate("table.field.loc.type")} name="type" value={formData.type} @@ -177,19 +177,21 @@ size="small" dictTypeCode="sys_loc_type" /> */} - <ReferenceArrayInput source="typeIds" reference="locType" > - <SelectArrayInput label="table.field.loc.type" onChange={(e) => handleChange(e.target.value, 'typeIds')} /> - </ReferenceArrayInput> - </Grid> + <ReferenceArrayInput source="typeIds" reference="locType" > + <SelectArrayInput label="table.field.loc.type" onChange={(e) => handleChange(e.target.value, 'typeIds')} /> + </ReferenceArrayInput> + </Grid> + } - <Grid item xs={4}> - <StatusSelectInput - onChange={(e) => handleChange(e.target.value, 'status')} - defaultValue={''} - require={false} - /> - </Grid> - + {fieldType === 'status' && + <Grid item xs={6}> + <StatusSelectInput + onChange={(e) => handleChange(e.target.value, 'status')} + defaultValue={''} + require={false} + /> + </Grid> + } </Grid> </Box> diff --git a/rsf-admin/src/page/basicInfo/loc/LocList.jsx b/rsf-admin/src/page/basicInfo/loc/LocList.jsx index af7f744..9af0d60 100644 --- a/rsf-admin/src/page/basicInfo/loc/LocList.jsx +++ b/rsf-admin/src/page/basicInfo/loc/LocList.jsx @@ -85,7 +85,6 @@ source="warehouseId" label="table.field.loc.warehouseId" reference="warehouse" - alwaysOn > <AutocompleteInput label="table.field.loc.warehouseId" @@ -97,7 +96,6 @@ source="areaId" label="table.field.loc.areaId" reference="warehouseAreas" - alwaysOn > <AutocompleteInput label="table.field.loc.areaId" @@ -194,14 +192,16 @@ </TopToolbar> )} perPage={DEFAULT_PAGE_SIZE} - aside={<LocListAside />} > <StyledDatagrid preferenceKey='loc' align="left" bulkActionButtons={ <> - <BatchButton /> + <BatchWateButton /> + <BatchAreasButton /> + <BatchLocTypeButton /> + <BatchStatusButton /> <BindButton /> <SubzoneButton /> <BulkDeleteButton /> @@ -298,7 +298,7 @@ ) } -const BatchButton = () => { +const BatchWateButton = () => { const record = useRecordContext(); const notify = useNotify(); const refresh = useRefresh(); @@ -306,16 +306,88 @@ const [createDialog, setCreateDialog] = useState(false); - return ( <> - <Button onClick={() => setCreateDialog(true)} label={"toolbar.batch"}> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.batchWarehouse"}> <EditIcon /> </Button> <BatchModal open={createDialog} setOpen={setCreateDialog} + fieldType={'warehouseId'} + /> + </> + + ) +} + +const BatchAreasButton = () => { + const record = useRecordContext(); + const notify = useNotify(); + const refresh = useRefresh(); + + + const [createDialog, setCreateDialog] = useState(false); + + return ( + <> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.batchWarehouseAreas"}> + <EditIcon /> + </Button> + + <BatchModal + open={createDialog} + setOpen={setCreateDialog} + fieldType={'areaId'} + /> + </> + + ) +} + +const BatchLocTypeButton = () => { + const record = useRecordContext(); + const notify = useNotify(); + const refresh = useRefresh(); + + + const [createDialog, setCreateDialog] = useState(false); + + return ( + <> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.batchLocType"}> + <EditIcon /> + </Button> + + <BatchModal + open={createDialog} + setOpen={setCreateDialog} + fieldType={'typeIds'} + /> + </> + + ) +} + +const BatchStatusButton = () => { + const record = useRecordContext(); + const notify = useNotify(); + const refresh = useRefresh(); + + + const [createDialog, setCreateDialog] = useState(false); + + return ( + <> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.batchStatus"}> + <EditIcon /> + </Button> + + <BatchModal + open={createDialog} + setOpen={setCreateDialog} + fieldType={'status'} /> </> diff --git a/rsf-admin/src/page/basicInfo/loc/LocListAside.jsx b/rsf-admin/src/page/basicInfo/loc/LocListAside.jsx index 72a68da..7ccba16 100644 --- a/rsf-admin/src/page/basicInfo/loc/LocListAside.jsx +++ b/rsf-admin/src/page/basicInfo/loc/LocListAside.jsx @@ -62,8 +62,15 @@ } const handleNodeSelect = (event, nodeId) => { - console.log(nodeId); - // setFilters({ groupId: nodeId }); + const row = apiRef.current.getItem(nodeId); + console.log(row); + + if (row.type === 'warehouseId') { + // setFilters({ warehouseId: row.id ,areaId:''}); + } else if (row.type === 'areaId') { + // setFilters({ areaId: row.id ,warehouseId:''}); + } + }; const handleSearch = (e) => { setCondition(e.target.value) diff --git a/rsf-admin/src/page/basicInfo/locAreaMat/LocAreaMatPanel.jsx b/rsf-admin/src/page/basicInfo/locAreaMat/LocAreaMatPanel.jsx index 330640d..bb5207e 100644 --- a/rsf-admin/src/page/basicInfo/locAreaMat/LocAreaMatPanel.jsx +++ b/rsf-admin/src/page/basicInfo/locAreaMat/LocAreaMatPanel.jsx @@ -252,8 +252,8 @@ <RichTreeView expansionTrigger="iconContainer" - checkboxSelection - multiSelect + // checkboxSelection + // multiSelect items={matnrTree} apiRef={apiRef} getItemId={(item) => item.id} @@ -388,17 +388,17 @@ <RichTreeView expansionTrigger="iconContainer" - checkboxSelection - multiSelect items={locTree} apiRef={apiRef} - selectedItems={selectedItems} getItemId={(item) => item.id} getItemLabel={(item) => item.name} defaultExpandedItems={['grid']} - onSelectedItemsChange={handleSelectedItemsChange} - onItemSelectionToggle={handleItemSelectionToggle} onItemClick={handleNodeSelect} + onItemSelectionToggle={handleItemSelectionToggle} + // checkboxSelection + // multiSelect + selectedItems={selectedItems} + onSelectedItemsChange={handleSelectedItemsChange} /> <BindLocModal diff --git a/rsf-admin/src/page/basicInfo/matnr/MatnrCreate.jsx b/rsf-admin/src/page/basicInfo/matnr/MatnrCreate.jsx index 0d5ff70..a203630 100644 --- a/rsf-admin/src/page/basicInfo/matnr/MatnrCreate.jsx +++ b/rsf-admin/src/page/basicInfo/matnr/MatnrCreate.jsx @@ -285,7 +285,7 @@ <Grid key={item.id} item xs={6} display="flex" gap={1}> <TextInput label={item.fieldsAlise} - source={`extendFields.[${item.fields}]`} + source={item.fields} validate={required()} /> </Grid> diff --git a/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx b/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx index 003de96..c0d582a 100644 --- a/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx +++ b/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx @@ -268,7 +268,7 @@ <Grid key={item.id} item xs={6} display="flex" gap={1}> <TextInput label={item.fieldsAlise} - source={`extendFields.[${item.fields}]`} + source={item.fields} validate={required()} /> </Grid> diff --git a/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx b/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx index 2a7d658..438bd7e 100644 --- a/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx +++ b/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx @@ -211,7 +211,7 @@ const fields = data.map(el => <TextField key={el.fields} source={`extendFields.[${el.fields}]`} label={el.fieldsAlise} />) const opt = <WrapperField key="opt" cellClassName="fixed" className="fixed" label="common.field.opt"> <EditButton sx={{ padding: '1px', fontSize: '.75rem' }} /> - <EnableButton /> + <PrintButton /> </WrapperField> setColumns([...arr, ...fields, opt]); @@ -247,7 +247,7 @@ <BatchStatusButton /> <BatchLevelButton /> <BindButton /> - <PrintButton /> + <BatchPrintButton /> <BulkDeleteButton mutationMode={OPERATE_MODE} /> </>} rowClick={(id, resource, record) => false} @@ -461,7 +461,7 @@ ) } -const PrintButton = () => { +const BatchPrintButton = () => { const record = useRecordContext(); const { resource, selectedIds } = useListContext(); const notify = useNotify(); @@ -484,6 +484,29 @@ ) } +const PrintButton = () => { + const record = useRecordContext(); + + const notify = useNotify(); + const refresh = useRefresh(); + + const [createDialog, setCreateDialog] = useState(false); + + return ( + <> + <Button color="secondary" onClick={() => setCreateDialog(true)} label={"toolbar.print"}> + <PrintIcon /> + </Button> + + <PrintModal + open={createDialog} + setOpen={setCreateDialog} + rows={[record]} + /> + </> + ) +} + const BindButton = () => { const record = useRecordContext(); const notify = useNotify(); diff --git a/rsf-admin/src/page/basicInfo/matnr/PrintModal.jsx b/rsf-admin/src/page/basicInfo/matnr/PrintModal.jsx index f618577..feaa543 100644 --- a/rsf-admin/src/page/basicInfo/matnr/PrintModal.jsx +++ b/rsf-admin/src/page/basicInfo/matnr/PrintModal.jsx @@ -241,7 +241,7 @@ overflow: 'hidden', fontSize: 'small', tableLayout: 'fixed', - width: '280px', + width: '520px', borderCollapse: 'collapse', borderSpacing: 0, margin: '0 auto', 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 6182be3..ea9f543 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 @@ -118,9 +118,7 @@ String index = fieldsIndex.toString(); FieldsItemService fieldsItemService = SpringUtils.getBean(FieldsItemService.class); for (Fields field : fields) { - Map<String, String> extendFields = (Map<String, String>) params.get("extendFields"); - if (!Objects.isNull(extendFields)) { - if (!Objects.isNull(extendFields.get(field.getFields()))) { + if (!Objects.isNull(params.get(field.getFields()))) { FieldsItem indexItem = fieldsItemService.getOne(new LambdaQueryWrapper<FieldsItem>() .eq(FieldsItem::getUuid, index) .eq(FieldsItem::getFieldsId, field.getId())); @@ -129,22 +127,20 @@ FieldsItem item = new FieldsItem(); item.setUuid(index) .setFieldsId(field.getId()) - .setValue(extendFields.get(field.getFields()).toString()); + .setValue(params.get(field.getFields()).toString()); if (!fieldsItemService.save(item)) { throw new CoolException("鎵╁睍瀛楁淇敼澶辫触锛侊紒"); } } else { - indexItem.setValue(extendFields.get(field.getFields()).toString()); + indexItem.setValue(params.get(field.getFields()).toString()); if (!fieldsItemService.updateById(indexItem)) { throw new CoolException("鎵╁睍瀛楁淇敼澶辫触锛侊紒"); } } } - } } } else { - String uuid16 = CommonUtil.randomUUID16(); - saveFields(params, uuid16); + saveFields(params, params.get("index").toString()); } } } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrController.java index 19837d8..0fcbe92 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrController.java @@ -7,6 +7,7 @@ import com.vincent.rsf.framework.common.R; import com.vincent.rsf.framework.exception.CoolException; import com.vincent.rsf.server.common.domain.PageResult; +import com.vincent.rsf.server.common.utils.CommonUtil; import com.vincent.rsf.server.common.utils.ExcelUtil; import com.vincent.rsf.server.common.annotation.OperationLog; import com.vincent.rsf.server.common.domain.BaseParam; @@ -39,9 +40,17 @@ @PreAuthorize("hasAuthority('manager:matnr:list')") @PostMapping("/matnr/page") public R page(@RequestBody Map<String, Object> map) { +// if (!Objects.isNull(map.get("groupId"))) { +// return R.ok(matnrService.getPages(map)); +// } else { +// BaseParam baseParam = buildParam(map, BaseParam.class); +// PageParam<Matnr, BaseParam> pageParam = new PageParam<>(baseParam, Matnr.class); +// return R.ok().add(matnrService.getMatnrPage(pageParam, map)); +// } BaseParam baseParam = buildParam(map, BaseParam.class); PageParam<Matnr, BaseParam> pageParam = new PageParam<>(baseParam, Matnr.class); - return R.ok().add(matnrService.getMatnrPage(pageParam)); + return R.ok().add(matnrService.getMatnrPage(pageParam, map)); + } @PreAuthorize("hasAuthority('manager:matnr:list')") @@ -94,15 +103,22 @@ throw new CoolException("鍚嶇О涓嶈兘涓虹┖锛侊紒"); } matnr.setUpdateBy(getLoginUserId()); - if (!matnrService.updateById(matnr)) { - return R.error("Update Fail"); - } + if (!FieldsUtils.getFieldsSta().isEmpty()) { Matnr matnr1 = matnrService.getById(matnr.getId()); - params.put("fieldsIndex", matnr1.getFieldsIndex()); + if (!Objects.isNull(matnr1.getFieldsIndex())) { + params.put("fieldsIndex", matnr1.getFieldsIndex()); + } else { + String uuid16 = CommonUtil.randomUUID16(); + params.put("index", uuid16); + matnr.setFieldsIndex(uuid16); + } FieldsUtils.updateFieldsValue(params); } + if (!matnrService.updateById(matnr)) { + return R.error("Update Fail"); + } return R.ok("Update Success").add(matnr); } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/MatnrService.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/MatnrService.java index fd486bd..09f3c06 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/MatnrService.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/MatnrService.java @@ -1,6 +1,5 @@ package com.vincent.rsf.server.manager.service; -import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import com.vincent.rsf.framework.common.R; import com.vincent.rsf.server.common.domain.BaseParam; @@ -17,11 +16,13 @@ R saveMatnrs(Map<String, Object> matnr); - PageParam<Matnr, BaseParam> getMatnrPage(PageParam<Matnr, BaseParam> pageParam); + PageParam<Matnr, BaseParam> getMatnrPage(PageParam<Matnr, BaseParam> pageParam, Map<String, Object> map); Matnr selectMatnrById(Long id); boolean bindMatnrs(MatnrToGroupParams params); boolean batchUpdate(MatnrToGroupParams params); + + PageParam<Matnr, BaseParam> getPages(Map<String, Object> map); } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrServiceImpl.java index e2ffec0..bbc13ea 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrServiceImpl.java @@ -33,6 +33,7 @@ import java.util.List; import java.util.Map; import java.util.Objects; +import java.util.stream.Collectors; @Service("matnrService") public class MatnrServiceImpl extends ServiceImpl<MatnrMapper, Matnr> implements MatnrService { @@ -104,20 +105,31 @@ } @Override - public PageParam<Matnr, BaseParam> getMatnrPage(PageParam<Matnr, BaseParam> pageParam) { + public PageParam<Matnr, BaseParam> getMatnrPage(PageParam<Matnr, BaseParam> pageParam, Map<String, Object> params) { QueryWrapper<Matnr> queryWrapper = pageParam.buildWrapper(true); - IPage<Map<String, Object>> reulst = this.baseMapper.selectMatnrs(pageParam, pageParam.buildWrapper(true)); - /**鑾峰彇鐗╂枡鍒嗛〉淇℃伅 */ - List<Map<String, Object>> mapList = reulst.getRecords(); - if (!mapList.isEmpty()) { - mapList.forEach(map -> { - if (!Objects.isNull(map.get("fieldsIndex"))) { - FieldsUtils.mergeFields(map, map.get("fieldsIndex").toString()); + if (params.containsKey("groupId")) { + Object groupId = params.get("groupId"); + if (!Objects.isNull(groupId)) { + List<MatnrGroup> matnrGroups = matnrGroupService.list(new LambdaQueryWrapper<MatnrGroup>().eq(MatnrGroup::getParentId, Long.parseLong(groupId.toString())).select(MatnrGroup::getId)); + if (!matnrGroups.isEmpty()) { + List<Long> longs = matnrGroups.stream().map(MatnrGroup::getId).collect(Collectors.toList()); + queryWrapper.or().in("group_id", longs); } - }); + } } +// IPage<Map<String, Object>> reulst = this.baseMapper.selectMatnrs(pageParam, queryWrapper); +// /**鑾峰彇鐗╂枡鍒嗛〉淇℃伅 */ +// List<Map<String, Object>> mapList = reulst.getRecords(); +// if (!mapList.isEmpty()) { +// mapList.forEach(map -> { +// if (!Objects.isNull(map.get("fieldsIndex"))) { +// FieldsUtils.mergeFields(map, map.get("fieldsIndex").toString()); +// } +// }); +// } - PageParam<Matnr, BaseParam> page = this.page(pageParam, pageParam.buildWrapper(true)); + /**鎷兼帴鎵╁睍瀛楁*/ + PageParam<Matnr, BaseParam> page = this.page(pageParam, queryWrapper); List<Matnr> records = page.getRecords(); for (Matnr record : records) { if (!Objects.isNull(record.getFieldsIndex())) { @@ -200,6 +212,13 @@ return true; } + @Override + public PageParam<Matnr, BaseParam> getPages(Map<String, Object> map) { + + + return null; + } + /** * @desc 鏇存柊鎵╁睍鐗╂枡鎵╁睍瀛楁鍊� * @param matnr @@ -218,9 +237,9 @@ */ String uuid16 = CommonUtil.randomUUID16(); if (!FieldsUtils.getFieldsSta().isEmpty()) { - Map<String, ?> extendFields = (Map<String, ?>) matnr.get("extendFields"); +// Map<String, ?> extendFields = (Map<String, ?>) matnr.get("extendFields"); try { - FieldsUtils.saveFields(extendFields, uuid16); + FieldsUtils.saveFields(matnr, uuid16); matnr1.setFieldsIndex(uuid16); } catch (Exception ex) { log.error(ex.toString()); -- Gitblit v1.9.1