From 58276de8b0a75f4ba80a2a237e4d7984c6c2768b Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期二, 25 三月 2025 18:04:05 +0800 Subject: [PATCH] Merge branch 'devlop' of http://47.97.1.152:5880/r/wms-master into devlop --- rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrGroupController.java | 23 ++--- rsf-admin/src/page/warehouseAreas/BatchModal.jsx | 13 ++- rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/WarehouseAreas.java | 2 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocAreaMatRelaServiceImpl.java | 2 rsf-admin/src/page/basicInfo/matnrGroup/MatnrGroupList.jsx | 2 rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx | 10 ++ rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocServiceImpl.java | 6 + rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocAreaMatRelaController.java | 12 +- rsf-admin/src/page/basicInfo/matnr/BatchModal.jsx | 92 ++++++++++++++++++---- rsf-admin/src/page/basicInfo/matnrGroup/MatnrGroupEdit.jsx | 12 +- rsf-admin/src/page/components/TreeSelectInput.jsx | 4 rsf-server/src/main/java/com/vincent/rsf/server/common/security/SecurityConfig.java | 1 rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WarehouseAreasController.java | 2 rsf-admin/src/i18n/zh.js | 5 rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx | 31 +++++++ rsf-admin/src/i18n/en.js | 1 rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocAreaMatController.java | 8 + 17 files changed, 166 insertions(+), 60 deletions(-) diff --git a/rsf-admin/src/i18n/en.js b/rsf-admin/src/i18n/en.js index b970d00..e6b9ca2 100644 --- a/rsf-admin/src/i18n/en.js +++ b/rsf-admin/src/i18n/en.js @@ -649,6 +649,7 @@ batchStatus: 'batchStatus', batchMix: 'batchFiexed', batchWarehouse: 'batchWarehouse', + batchStockLevel: "batchStockLevel", }, }; diff --git a/rsf-admin/src/i18n/zh.js b/rsf-admin/src/i18n/zh.js index 6e7ede8..dc195f9 100644 --- a/rsf-admin/src/i18n/zh.js +++ b/rsf-admin/src/i18n/zh.js @@ -278,8 +278,8 @@ minQty: "鏈�灏忓��", maxQty: "鏈�澶у��", stagn: "鍋滄粸棰勮鍊�", - valid: "淇濊川鏈�", - validWarn: "鏁堟湡棰勮", + valid: "淇濊川鏈�(澶�)", + validWarn: "鏁堟湡棰勮(澶�)", flagCheck: "鍏嶆", }, matnrGroup: { @@ -651,6 +651,7 @@ batchStatus: '鎵归噺鐘舵��', batchMix: '鎵归噺娣锋斁', batchWarehouse: '鎵归噺浠撳簱', + batchStockLevel: "鎵归噺ABC鍒嗙被", }, }; diff --git a/rsf-admin/src/page/basicInfo/matnr/BatchModal.jsx b/rsf-admin/src/page/basicInfo/matnr/BatchModal.jsx index 25a484e..8c10825 100644 --- a/rsf-admin/src/page/basicInfo/matnr/BatchModal.jsx +++ b/rsf-admin/src/page/basicInfo/matnr/BatchModal.jsx @@ -43,7 +43,6 @@ } from '@mui/material'; import DialogCloseButton from "../../components/DialogCloseButton"; -import DictionarySelect from "../../components/DictionarySelect"; import { useForm, Controller, useWatch, FormProvider, useFormContext } from "react-hook-form"; import SaveIcon from '@mui/icons-material/Save'; import request from '@/utils/request'; @@ -52,7 +51,7 @@ import { DataGrid } from '@mui/x-data-grid'; import StatusSelectInput from "../../components/StatusSelectInput"; -const InitModal = ({ open, setOpen }) => { +const InitModal = ({ open, setOpen, fieldType }) => { const refresh = useRefresh(); const translate = useTranslate(); @@ -60,7 +59,11 @@ const notify = useNotify(); const [formData, setFormData] = useState({ - 'status': null + 'status': null, + 'stockLevel': null, + 'validWarn': null, + 'valid': null, + 'flagCheck': null, }); const { selectedIds, onUnselectItems } = useListContext(); @@ -76,7 +79,11 @@ const reset = () => { setFormData({ - 'status': null + 'status': null, + 'stockLevel': null, + 'validWarn': null, + 'valid': null, + 'flagCheck': null, }) } @@ -87,7 +94,7 @@ const handleChange = (value, name) => { setFormData((prevData) => ({ ...prevData, - [name]: ['locType', 'type'].includes(name) ? value : +value + [name]: value })); }; @@ -97,17 +104,20 @@ const newObj = removeEmptyKeys(value); return !_.isEmpty(newObj); } - return !_.isNil(value) && (_.isNumber(value) ? value !== 0 : !_.isEmpty(value)); + return !_.isNil(value); }); } + const handleSubmit = async () => { const parmas = { - id: selectedIds, - matnr: removeEmptyKeys(formData) + ids: selectedIds, + matnr: { + ...removeEmptyKeys(formData) + } } - const res = await request.post(`/matnr/modify`, parmas); + const res = await request.post(`/matnr/batch/update`, parmas); if (res?.data?.code === 200) { handleClose() @@ -117,20 +127,68 @@ } 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}> - <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> + } + {fieldType === 'stockLevel' && + <Grid item xs={6}> + <SelectInput + label="table.field.matnr.stockLevel" + source="stockLevel" + onChange={(e) => handleChange(e.target.value, 'stockLevel')} + choices={[ + { id: 0, name: ' A' }, + { id: 1, name: ' B' }, + { id: 2, name: 'C' }, + ]} + validate={required()} + /> + </Grid> + } + {fieldType === 'validWarn' && + <Grid item xs={6}> + <NumberInput + onChange={(e) => handleChange(e.target.value, 'validWarn')} + label="table.field.matnr.validWarn" + source="validWarn" + /> + </Grid> + } + {fieldType === 'validWarn' && + <Grid item xs={6}> + <NumberInput + onChange={(e) => handleChange(e.target.value, 'valid')} + label="table.field.matnr.valid" + source="valid" + /> + </Grid> + } + {fieldType === 'flagCheck' && + <Grid item xs={6}> + <SelectInput + onChange={(e) => handleChange(e.target.value, 'flagCheck')} + label="table.field.matnr.flagCheck" + source="flagCheck" + choices={[ + { id: 0, name: ' 鍚�' }, + { id: 1, name: ' 鏄�' }, + ]} + /> + </Grid> + } </Grid> </Box> diff --git a/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx b/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx index c86aeef..003de96 100644 --- a/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx +++ b/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx @@ -318,6 +318,16 @@ source="valid" /> </Grid> + <Grid item xs={6} display="flex" gap={1}> + <SelectInput + label="table.field.matnr.flagCheck" + source="flagCheck" + choices={[ + { id: 0, name: ' 鍚�' }, + { id: 1, name: ' 鏄�' }, + ]} + /> + </Grid> </Grid> </CustomTabPanel> <CustomTabPanel value={value} index={2}> diff --git a/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx b/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx index 9bf7cfc..4114430 100644 --- a/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx +++ b/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx @@ -242,7 +242,8 @@ preferenceKey='matnr' bulkActionButtons={<> <BatchGroupButton /> - <BatchButton /> + <BatchStatusButton /> + <BatchLevelButton /> <BindButton /> <PrintButton /> <BulkDeleteButton mutationMode={OPERATE_MODE} /> @@ -340,7 +341,7 @@ ) } -const BatchButton = () => { +const BatchStatusButton = () => { const record = useRecordContext(); const notify = useNotify(); const refresh = useRefresh(); @@ -350,13 +351,37 @@ return ( <> - <Button onClick={() => setCreateDialog(true)} label={"toolbar.batch"}> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.batchStatus"}> <EditIcon /> </Button> <BatchModal open={createDialog} setOpen={setCreateDialog} + fieldType={'status'} + /> + </> + + ) +} +const BatchLevelButton = () => { + const record = useRecordContext(); + const notify = useNotify(); + const refresh = useRefresh(); + + + const [createDialog, setCreateDialog] = useState(false); + + return ( + <> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.batchStockLevel"}> + <EditIcon /> + </Button> + + <BatchModal + open={createDialog} + setOpen={setCreateDialog} + fieldType={'stockLevel'} /> </> diff --git a/rsf-admin/src/page/basicInfo/matnrGroup/MatnrGroupEdit.jsx b/rsf-admin/src/page/basicInfo/matnrGroup/MatnrGroupEdit.jsx index 01b56be..c2e5226 100644 --- a/rsf-admin/src/page/basicInfo/matnrGroup/MatnrGroupEdit.jsx +++ b/rsf-admin/src/page/basicInfo/matnrGroup/MatnrGroupEdit.jsx @@ -47,8 +47,7 @@ const EditContent = ({ editRecord }) => { const { resource } = useCreateContext(); const translate = useTranslate(); - - const { update } = useFieldArray({ name: "parCode" }) + const formContext = useFormContext() const pChange = (val) => { if (val > 0) { @@ -61,8 +60,9 @@ const http = async (val) => { const res = await request.post(`/matnrGroup/page`, { id: val }); const code = res.data.data.records[0].code || '' - editRecord && (editRecord.parCode = code); - update(code) + + formContext.setValue('parCode', code) + } return ( <Grid container rowSpacing={2} columnSpacing={2}> @@ -73,13 +73,13 @@ isTranslate resource={resource} onChange={(e) => pChange(e.target.value)} + required /> </Grid> <Grid item xs={6} display="flex" gap={1}> <TextInput label="table.field.matnrGroup.parCode" source="parCode" - value={'11'} readOnly /> </Grid> @@ -177,7 +177,7 @@ disableRestoreFocus maxWidth="md" // 'xs' | 'sm' | 'md' | 'lg' | 'xl' > - <Form record={editRecord} onSubmit={onSubmit}> + <Form record={editRecord || {}} onSubmit={onSubmit}> <DialogTitle id="form-dialog-title" sx={{ position: 'sticky', top: 0, diff --git a/rsf-admin/src/page/basicInfo/matnrGroup/MatnrGroupList.jsx b/rsf-admin/src/page/basicInfo/matnrGroup/MatnrGroupList.jsx index b7436b2..74b125e 100644 --- a/rsf-admin/src/page/basicInfo/matnrGroup/MatnrGroupList.jsx +++ b/rsf-admin/src/page/basicInfo/matnrGroup/MatnrGroupList.jsx @@ -269,7 +269,7 @@ {expandAll ? translate('common.action.collapseAll') : translate('common.action.expandAll')} </Button> <TextField - label="鎼滅储" + label="鎼滅储鍚嶇О" value={filter} onChange={({ target }) => { setFilter(target.value) diff --git a/rsf-admin/src/page/components/TreeSelectInput.jsx b/rsf-admin/src/page/components/TreeSelectInput.jsx index 569451a..2c51cc5 100644 --- a/rsf-admin/src/page/components/TreeSelectInput.jsx +++ b/rsf-admin/src/page/components/TreeSelectInput.jsx @@ -5,7 +5,7 @@ import * as Common from '@/utils/common'; import { useFormContext } from 'react-hook-form'; -const TreeSelectInput = ({ resource, onChange, label, source = 'parentId', value, isTranslate = false, ...rest }) => { +const TreeSelectInput = ({ resource, required, onChange, label, source = 'parentId', value, isTranslate = false, ...rest }) => { const translate = useTranslate(); const { setValue } = useFormContext(); const [filter, setFilter] = React.useState(""); @@ -42,7 +42,7 @@ }; return ( - <FormControl fullWidth> + <FormControl fullWidth required={required}> <InputLabel>{translate(label)}</InputLabel> <Select value={proxyVal || ''} diff --git a/rsf-admin/src/page/warehouseAreas/BatchModal.jsx b/rsf-admin/src/page/warehouseAreas/BatchModal.jsx index 1f64a7b..7b8558c 100644 --- a/rsf-admin/src/page/warehouseAreas/BatchModal.jsx +++ b/rsf-admin/src/page/warehouseAreas/BatchModal.jsx @@ -100,17 +100,20 @@ const newObj = removeEmptyKeys(value); return !_.isEmpty(newObj); } - return !_.isNil(value) && (_.isNumber(value) ? value !== 0 : !_.isEmpty(value)); + return !_.isNil(value); }); } + const handleSubmit = async () => { const parmas = { - id: selectedIds, - ...removeEmptyKeys(formData) + ids: selectedIds, + warehouseAreas: { + ...removeEmptyKeys(formData) + } } - const res = await request.post(`/warehouseAreas/modify`, parmas); + const res = await request.post(`/warehouseAreas/batch/update`, parmas); if (res?.data?.code === 200) { handleClose() @@ -130,7 +133,7 @@ {fieldType === 'status' && <Grid item xs={6}> <StatusSelectInput - onChange={(e) => handleChange(e.target.value, 'status')} + onChange={(e) => handleChange(+e.target.value, 'status')} defaultValue={''} require={false} /> diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/security/SecurityConfig.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/security/SecurityConfig.java index 3ba527a..9a73af3 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/common/security/SecurityConfig.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/common/security/SecurityConfig.java @@ -42,6 +42,7 @@ "/pda/login", "/erp/**", "/login", + "/**/download", "/register", "/druid/**", "/doc.html", diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocAreaMatController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocAreaMatController.java index 817f37d..c1be3fc 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocAreaMatController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocAreaMatController.java @@ -57,10 +57,14 @@ @OperationLog("Create loc areas mats") @PostMapping("/locAreaMat/save") public R save(@RequestBody LocAreaMat locAreaMat) { + if (Objects.isNull(locAreaMat.getWarehouseId())) { + return R.error("浠撳簱涓嶈兘涓虹┖锛侊紒"); + } + if (Objects.isNull(locAreaMat.getAreaId())) { + return R.error("搴撳尯涓嶈兘涓虹┖锛侊紒"); + } locAreaMat.setCreateBy(getLoginUserId()); - locAreaMat.setCreateTime(new Date()); locAreaMat.setUpdateBy(getLoginUserId()); - locAreaMat.setUpdateTime(new Date()); if (!locAreaMatService.save(locAreaMat)) { return R.error("Save Fail"); } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocAreaMatRelaController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocAreaMatRelaController.java index b44a0f5..b031261 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocAreaMatRelaController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocAreaMatRelaController.java @@ -183,12 +183,12 @@ if (Objects.isNull(param)) { throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒"); } - if (Objects.isNull(param.getAreaId())) { - throw new CoolException("搴撳尯涓嶈兘涓虹┖锛侊紒"); - } - if (Objects.isNull(param.getWarehouseId())) { - throw new CoolException("浠撳簱涓嶈兘涓虹┖锛侊紒"); - } +// if (Objects.isNull(param.getAreaId())) { +// throw new CoolException("搴撳尯涓嶈兘涓虹┖锛侊紒"); +// } +// if (Objects.isNull(param.getWarehouseId())) { +// throw new CoolException("浠撳簱涓嶈兘涓虹┖锛侊紒"); +// } if (Objects.isNull(param.getAreaMatId())) { throw new CoolException("涓诲崟ID涓嶈兘涓虹┖锛侊紒"); } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrGroupController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrGroupController.java index e65f062..ff0cb65 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrGroupController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrGroupController.java @@ -65,13 +65,14 @@ @PostMapping("/matnrGroup/save") public R save(@RequestBody MatnrGroup matnrGroup) { if (Objects.isNull(matnrGroup)) { - throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒"); + return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); } + if (Objects.isNull(matnrGroup.getName())) { - throw new CoolException("鍒嗙粍鍚嶇О涓嶈兘涓虹┖锛侊紒"); + return R.error("鍒嗙粍鍚嶇О涓嶈兘涓虹┖锛侊紒"); } if (Objects.isNull(matnrGroup.getCode())) { - throw new CoolException("鍒嗙粍缂栫爜涓嶈兘涓虹┖锛侊紒"); + return R.error("鍒嗙粍缂栫爜涓嶈兘涓虹┖锛侊紒"); } matnrGroup.setCreateBy(getLoginUserId()); matnrGroup.setUpdateBy(getLoginUserId()); @@ -80,12 +81,12 @@ .eq(!Objects.isNull(matnrGroup.getParCode()), MatnrGroup::getParCode, matnrGroup.getParCode()) .eq(MatnrGroup::getCode, matnrGroup.getCode())); if (!list.isEmpty()) { - throw new CoolException("鐗╂枡鍒嗙粍缂栫爜涓嶈兘閲嶅锛侊紒"); + return R.error("鐗╂枡鍒嗙粍缂栫爜涓嶈兘閲嶅锛侊紒"); } List<MatnrGroup> groups = matnrGroupService.list(new LambdaQueryWrapper<MatnrGroup>() .eq(MatnrGroup::getName, matnrGroup.getName())); if (!groups.isEmpty()) { - throw new CoolException("鍒嗙粍宸插瓨鍦紝璇峰嬁閲嶅娣诲姞锛侊紒"); + return R.error("鍒嗙粍宸插瓨鍦紝璇峰嬁閲嶅娣诲姞锛侊紒"); } //鍒ゆ柇涓婄骇缂栫爜鏄惁涓虹┖ if (!Objects.isNull(matnrGroup.getParCode()) && !StringUtils.isBlank(matnrGroup.getParCode())) { @@ -104,10 +105,13 @@ matnrGroup.setUpdateBy(getLoginUserId()); MatnrGroup matGroup = matnrGroupService.getById(matnrGroup.getId()); + if (Objects.isNull(matGroup)) { + return R.error("鐗╂枡鍒嗙粍涓嶅瓨鍦紒锛�"); + } if (!matnrGroup.getName().equals(matGroup.getName())) { List<MatnrGroup> areasList = matnrGroupService.list(new LambdaQueryWrapper<MatnrGroup>().eq(MatnrGroup::getName, matnrGroup.getName())); if (!areasList.isEmpty()) { - throw new CoolException("浠撳簱鍚嶅凡瀛樺湪锛侊紒"); + return R.error("浠撳簱鍚嶅凡瀛樺湪锛侊紒"); } } if (!Objects.isNull(matnrGroup.getCode()) && !matnrGroup.getCode().equals(matGroup.getCode())) { @@ -115,13 +119,8 @@ .eq(!Objects.isNull(matnrGroup.getParCode()), MatnrGroup::getParCode, matnrGroup.getParCode()) .eq(MatnrGroup::getCode, matnrGroup.getCode())); if (!areasList.isEmpty()) { - throw new CoolException("浠撳簱缂栫爜宸插瓨鍦紒锛�"); + return R.error("浠撳簱缂栫爜宸插瓨鍦紒锛�"); } - } - - //鍒ゆ柇涓婄骇缂栫爜鏄惁涓虹┖ - if (!Objects.isNull(matnrGroup.getParCode()) && !StringUtils.isBlank(matnrGroup.getParCode())) { - matnrGroup.setCode(matnrGroup.getParCode() + matnrGroup.getCode()); } if (!matnrGroupService.updateById(matnrGroup)) { diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WarehouseAreasController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WarehouseAreasController.java index 64aebaf..3884999 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WarehouseAreasController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WarehouseAreasController.java @@ -115,7 +115,7 @@ @PostMapping("/warehouseAreas/update") public R update(@RequestBody WarehouseAreas warehouseAreas) { warehouseAreas.setUpdateBy(getLoginUserId()); - WarehouseAreas areas = warehouseAreasService.getById(warehouseAreas.getWarehouseId()); + WarehouseAreas areas = warehouseAreasService.getById(warehouseAreas.getId()); if (Objects.isNull(areas)) { throw new CoolException("鏁版嵁閿欒锛氫粨搴撳簱鍖轰笉瀛樺湪锛侊紒"); } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/WarehouseAreas.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/WarehouseAreas.java index 785efca..0416ab5 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/WarehouseAreas.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/WarehouseAreas.java @@ -206,7 +206,7 @@ return null; } - public String getSupplier$() { + public String getSupplierId$() { CompanysService service = SpringUtils.getBean(CompanysService.class); Companys supplier = service.getById(this.supplierId); if (!Cools.isEmpty(supplier)){ diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocAreaMatRelaServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocAreaMatRelaServiceImpl.java index 2c7f1c0..d0473e7 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocAreaMatRelaServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocAreaMatRelaServiceImpl.java @@ -77,7 +77,7 @@ LocAreaMatRela locAreaMatRela = new LocAreaMatRela(); locAreaMatRela .setAreaMatId(param.getAreaMatId()) - .setAreaId(param.getAreaId()) +// .setAreaId(param.getAreaId()) .setLocId(locId) .setLocTypeId(typeId) .setMatnrId(matnrId.getId()) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocServiceImpl.java index c0ae701..e2de606 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocServiceImpl.java @@ -49,13 +49,17 @@ throw new CoolException("淇敼搴撲綅淇℃伅涓嶈兘涓虹┖锛侊紒"); } + String join = locs.getLoc().getType(); + if (!Objects.isNull(loc.getTypeIds()) && !loc.getTypeIds().isEmpty()) { + join = StringUtils.join(loc.getTypeIds(), ","); + } boolean update = this.update(new LambdaUpdateWrapper<Loc>() .in(Loc::getId, locs.getId()) .eq(Loc::getStatus, 1) .set(!Objects.isNull(loc.getAreaId()), Loc::getAreaId, loc.getAreaId()) .set(!Objects.isNull(loc.getWarehouseId()), Loc::getWarehouseId, loc.getWarehouseId()) .set(!Objects.isNull(loc.getUseStatus()), Loc::getUseStatus, loc.getUseStatus()) - .set(!Objects.isNull(loc.getType()), Loc::getType, loc.getType()) + .set(!Objects.isNull(loc.getType()), Loc::getType, join) .set(!Objects.isNull(loc.getLength()), Loc::getLength, loc.getLength()) .set(!Objects.isNull(loc.getWidth()), Loc::getWidth, loc.getWidth()) .set(!Objects.isNull(loc.getHeight()), Loc::getHeight, loc.getHeight()) -- Gitblit v1.9.1