From 46d4a8583240cbe3de6f1b4a196dd5d06485398a Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期四, 20 三月 2025 16:02:44 +0800 Subject: [PATCH] #新增 1. 添加库们逻辑分区 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocServiceImpl.java | 33 +++++++++++++++++++++++++++------ 1 files changed, 27 insertions(+), 6 deletions(-) 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 22980b3..57391e6 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 @@ -1,6 +1,7 @@ package com.vincent.rsf.server.manager.service.impl; import com.alibaba.fastjson.JSONArray; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.vincent.rsf.framework.common.R; import com.vincent.rsf.framework.exception.CoolException; @@ -11,6 +12,7 @@ import com.vincent.rsf.server.manager.entity.WarehouseAreas; import com.vincent.rsf.server.manager.mapper.LocMapper; import com.vincent.rsf.server.manager.entity.Loc; +import com.vincent.rsf.server.manager.mapper.LocTypeRelaMapper; import com.vincent.rsf.server.manager.service.LocService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.vincent.rsf.server.manager.service.LocTypeRelaService; @@ -34,6 +36,9 @@ @Autowired private LocTypeRelaService locTypeRelaService; + + @Autowired + private LocTypeRelaMapper locTypeRelaMapper; @Override public R modifyLocs(LocModifyParams locs) { @@ -88,7 +93,7 @@ .setCol(b) .setLev(l) .setAreaId(param.getAreaId()) - .setWarehouseId(warehouseAreas.getWareId()) + .setWarehouseId(warehouseAreas.getWarehouseId()) .setType(param.getType()); list.add(loc); @@ -102,18 +107,34 @@ } @Override - @Transactional(rollbackFor = Exception.class) public boolean saveType(Loc loc) { + List<LocTypeRela> relas = new ArrayList<>(); - List<Long> lists = JSONArray.parseArray(loc.getTypeIds(), Long.class); - lists.forEach(id -> { + loc.getTypeIds().forEach(id -> { LocTypeRela typeRela = new LocTypeRela(); typeRela.setTypeId(id) .setLocId(loc.getId()); relas.add(typeRela); }); - if (!locTypeRelaService.saveBatch(relas)) { - throw new CoolException("搴撲綅鍏宠仈鍏崇郴淇濆瓨鎴愬姛锛侊紒"); + if (!locTypeRelaService.saveOrUpdateBatch(relas)) { + throw new CoolException("搴撲綅鍏宠仈鍏崇郴淇濆瓨澶辫触锛侊紒"); + } + return true; + } + + @Override + public boolean updateLoc(Loc loc) { + locTypeRelaMapper.delete(new LambdaQueryWrapper<LocTypeRela>().eq(LocTypeRela::getLocId, loc.getId())); + + List<LocTypeRela> relas = new ArrayList<>(); + loc.getTypeIds().forEach(id -> { + LocTypeRela typeRela = new LocTypeRela(); + typeRela.setTypeId(id) + .setLocId(loc.getId()); + relas.add(typeRela); + }); + if (!locTypeRelaService.saveOrUpdateBatch(relas)) { + throw new CoolException("搴撲綅鍏宠仈鍏崇郴淇濆瓨澶辫触锛侊紒"); } return true; } -- Gitblit v1.9.1