From b00db229b94ce3797c0ece45ec12ac87ab98c77c Mon Sep 17 00:00:00 2001 From: wanghao Date: Wed, 3 Dec 2025 15:36:44 +0800 Subject: [PATCH] =?UTF-8?q?fix(wms):=20=E4=BB=93=E5=BA=93=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E6=B7=BB=E5=8A=A0=E5=88=A4=E6=96=AD=E7=BC=96=E7=A0=81?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WmsWarehouseInfoController.java | 7 ++ .../impl/WmsInventoryLedgerServiceImpl.java | 70 +++++++++---------- .../impl/WmsWarehouseInfoServiceImpl.java | 4 +- 3 files changed, 44 insertions(+), 37 deletions(-) diff --git a/ruoyi-modules/ruoyi-wms/src/main/java/org/dromara/wms/controller/WmsWarehouseInfoController.java b/ruoyi-modules/ruoyi-wms/src/main/java/org/dromara/wms/controller/WmsWarehouseInfoController.java index 3bb1edd9..7f770430 100644 --- a/ruoyi-modules/ruoyi-wms/src/main/java/org/dromara/wms/controller/WmsWarehouseInfoController.java +++ b/ruoyi-modules/ruoyi-wms/src/main/java/org/dromara/wms/controller/WmsWarehouseInfoController.java @@ -95,6 +95,13 @@ public class WmsWarehouseInfoController extends BaseController { @RepeatSubmit() @PutMapping() public R edit(@Validated(EditGroup.class) @RequestBody WmsWarehouseInfoBo bo) { + WmsWarehouseInfoBo bo1 = new WmsWarehouseInfoBo(); + bo1.setWarehouseCode(bo.getWarehouseCode()); + List list = wmsWarehouseInfoService.queryList(bo1); + if (!list.isEmpty() && !list.get(0).getWarehouseId().equals(bo.getWarehouseId())) { + return R.fail("仓库编码已存在"); + } + return toAjax(wmsWarehouseInfoService.updateByBo(bo)); } diff --git a/ruoyi-modules/ruoyi-wms/src/main/java/org/dromara/wms/service/impl/WmsInventoryLedgerServiceImpl.java b/ruoyi-modules/ruoyi-wms/src/main/java/org/dromara/wms/service/impl/WmsInventoryLedgerServiceImpl.java index fd8fb91e..e2c4be29 100644 --- a/ruoyi-modules/ruoyi-wms/src/main/java/org/dromara/wms/service/impl/WmsInventoryLedgerServiceImpl.java +++ b/ruoyi-modules/ruoyi-wms/src/main/java/org/dromara/wms/service/impl/WmsInventoryLedgerServiceImpl.java @@ -1,26 +1,25 @@ package org.dromara.wms.service.impl; -import org.dromara.common.core.utils.MapstructUtils; -import org.dromara.common.core.utils.StringUtils; - import org.dromara.common.mybatis.core.page.TableDataInfo; - import org.dromara.common.mybatis.core.page.PageQuery; - import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.yulichang.toolkit.JoinWrappers; import com.github.yulichang.wrapper.MPJLambdaWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.wms.domain.WmsBaseProduct; +import org.dromara.wms.domain.WmsInventoryLedger; import org.dromara.wms.domain.WmsWarehouseInfo; -import org.springframework.stereotype.Service; import org.dromara.wms.domain.bo.WmsInventoryLedgerBo; import org.dromara.wms.domain.vo.WmsInventoryLedgerVo; -import org.dromara.wms.domain.WmsInventoryLedger; import org.dromara.wms.mapper.WmsInventoryLedgerMapper; import org.dromara.wms.service.IWmsInventoryLedgerService; +import org.springframework.stereotype.Service; +import java.util.Collection; import java.util.List; import java.util.Map; -import java.util.Collection; /** * 库存变动台账Service业务层处理 @@ -41,23 +40,23 @@ public class WmsInventoryLedgerServiceImpl implements IWmsInventoryLedgerService * @return 库存变动台账 */ @Override - public WmsInventoryLedgerVo queryById(Long ledgerId){ + public WmsInventoryLedgerVo queryById(Long ledgerId) { return baseMapper.selectVoById(ledgerId); } - /** - * 分页查询库存变动台账列表 - * - * @param bo 查询条件 - * @param pageQuery 分页参数 - * @return 库存变动台账分页列表 - */ - @Override - public TableDataInfo queryPageList(WmsInventoryLedgerBo bo, PageQuery pageQuery) { - MPJLambdaWrapper lqw = buildQueryWrapper(bo); - Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); - return TableDataInfo.build(result); - } + /** + * 分页查询库存变动台账列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 库存变动台账分页列表 + */ + @Override + public TableDataInfo queryPageList(WmsInventoryLedgerBo bo, PageQuery pageQuery) { + MPJLambdaWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } /** * 查询符合条件的库存变动台账列表 @@ -74,18 +73,19 @@ public class WmsInventoryLedgerServiceImpl implements IWmsInventoryLedgerService private MPJLambdaWrapper buildQueryWrapper(WmsInventoryLedgerBo bo) { Map params = bo.getParams(); MPJLambdaWrapper lqw = JoinWrappers.lambda(WmsInventoryLedger.class) - .selectAll(WmsInventoryLedger.class) - .like(StringUtils.isNotBlank(bo.getLocationCode()), WmsInventoryLedger::getLocationCode, bo.getLocationCode()) - .eq(bo.getWarehouseId() != null, WmsInventoryLedger::getWarehouseId, bo.getWarehouseId()) - .eq(bo.getMaterielId() != null, WmsInventoryLedger::getMaterielId, bo.getMaterielId()) - .eq(StringUtils.isNotBlank(bo.getBatchNumber()), WmsInventoryLedger::getBatchNumber, bo.getBatchNumber()) - .eq(StringUtils.isNotBlank(bo.getChangeType()), WmsInventoryLedger::getChangeType, bo.getChangeType()) - .eq(StringUtils.isNotBlank(bo.getLedgerState()), WmsInventoryLedger::getLedgerState, bo.getLedgerState()) + .selectAll(WmsInventoryLedger.class) + .like(StringUtils.isNotBlank(bo.getLocationCode()), WmsInventoryLedger::getLocationCode, bo.getLocationCode()) + .eq(bo.getWarehouseId() != null, WmsInventoryLedger::getWarehouseId, bo.getWarehouseId()) + // .eq(bo.getMaterielId() != null, WmsInventoryLedger::getMaterielId, bo.getMaterielId()) + .eq(StringUtils.isNotBlank(bo.getBatchNumber()), WmsInventoryLedger::getBatchNumber, bo.getBatchNumber()) + .eq(StringUtils.isNotBlank(bo.getChangeType()), WmsInventoryLedger::getChangeType, bo.getChangeType()) + .eq(StringUtils.isNotBlank(bo.getLedgerState()), WmsInventoryLedger::getLedgerState, bo.getLedgerState()) .leftJoin(WmsBaseProduct.class, WmsBaseProduct::getProductId, WmsInventoryLedger::getMaterielId) - .select(WmsBaseProduct::getProductName, WmsBaseProduct::getProductCode,WmsBaseProduct::getProductSpe) + .select(WmsBaseProduct::getProductName, WmsBaseProduct::getProductCode, WmsBaseProduct::getProductSpe) + .like(StringUtils.isNotBlank(bo.getProductCode()), WmsBaseProduct::getProductCode, bo.getProductCode()) + .eq(StringUtils.isNotBlank(bo.getProductName()), WmsBaseProduct::getProductName, bo.getProductName()) .leftJoin(WmsWarehouseInfo.class, WmsWarehouseInfo::getWarehouseId, WmsInventoryLedger::getWarehouseId) - .select(WmsWarehouseInfo::getWarehouseName, WmsWarehouseInfo::getWarehouseCode) -; + .select(WmsWarehouseInfo::getWarehouseName, WmsWarehouseInfo::getWarehouseCode); return lqw; } @@ -122,7 +122,7 @@ public class WmsInventoryLedgerServiceImpl implements IWmsInventoryLedgerService /** * 保存前的数据校验 */ - private void validEntityBeforeSave(WmsInventoryLedger entity){ + private void validEntityBeforeSave(WmsInventoryLedger entity) { //TODO 做一些数据校验,如唯一约束 } @@ -135,7 +135,7 @@ public class WmsInventoryLedgerServiceImpl implements IWmsInventoryLedgerService */ @Override public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { - if(isValid){ + if (isValid) { //TODO 做一些业务上的校验,判断是否需要校验 } return baseMapper.deleteByIds(ids) > 0; diff --git a/ruoyi-modules/ruoyi-wms/src/main/java/org/dromara/wms/service/impl/WmsWarehouseInfoServiceImpl.java b/ruoyi-modules/ruoyi-wms/src/main/java/org/dromara/wms/service/impl/WmsWarehouseInfoServiceImpl.java index a3b6eb5f..1ffbb4a4 100644 --- a/ruoyi-modules/ruoyi-wms/src/main/java/org/dromara/wms/service/impl/WmsWarehouseInfoServiceImpl.java +++ b/ruoyi-modules/ruoyi-wms/src/main/java/org/dromara/wms/service/impl/WmsWarehouseInfoServiceImpl.java @@ -73,7 +73,8 @@ public class WmsWarehouseInfoServiceImpl implements IWmsWarehouseInfoService { Map params = bo.getParams(); MPJLambdaWrapper lqw = JoinWrappers.lambda(WmsWarehouseInfo.class) .selectAll(WmsWarehouseInfo.class) - .like(StringUtils.isNotBlank(bo.getWarehouseName()), WmsWarehouseInfo::getWarehouseName, bo.getWarehouseName()) + .eq(StringUtils.isNotBlank(bo.getWarehouseCode()), WmsWarehouseInfo::getWarehouseCode, bo.getWarehouseCode()) + .eq(StringUtils.isNotBlank(bo.getWarehouseName()), WmsWarehouseInfo::getWarehouseName, bo.getWarehouseName()) .eq(StringUtils.isNotBlank(bo.getWarehouseType()), WmsWarehouseInfo::getWarehouseType, bo.getWarehouseType()) .eq(StringUtils.isNotBlank(bo.getActiveFlag()), WmsWarehouseInfo::getActiveFlag, bo.getActiveFlag()) .leftJoin(SysDept.class, SysDept::getDeptId, WmsWarehouseInfo::getDeptId) @@ -90,7 +91,6 @@ public class WmsWarehouseInfoServiceImpl implements IWmsWarehouseInfoService { @Override public Boolean insertByBo(WmsWarehouseInfoBo bo) { WmsWarehouseInfo add = MapstructUtils.convert(bo, WmsWarehouseInfo.class); - boolean flag = baseMapper.insert(add) > 0; // if (flag) { // bo.setWarehouseId(add.getWarehouseId());