From f21530d33ca23aeeba2ef073ac6b64422e4e26ca Mon Sep 17 00:00:00 2001
From: cl <1442464845@qq.com>
Date: 星期四, 30 四月 2026 12:17:55 +0800
Subject: [PATCH] 库位编号规则和和CTU保持一致
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocServiceImpl.java | 43 +++++++++++++++++++++++++++++++++++++++----
1 files changed, 39 insertions(+), 4 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 179a894..e49435a 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
@@ -2,9 +2,13 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.vincent.rsf.common.utils.Utils;
import com.vincent.rsf.framework.common.Cools;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
+import com.vincent.rsf.server.manager.controller.dto.LocStockDto;
import com.vincent.rsf.server.manager.controller.dto.LocUsageDto;
import com.vincent.rsf.server.manager.controller.params.LocMastInitParam;
import com.vincent.rsf.server.manager.controller.params.LocModifyParams;
@@ -21,7 +25,9 @@
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collections;
import java.util.List;
+import java.util.Map;
import java.util.Objects;
@Service("locService")
@@ -46,13 +52,24 @@
@Override
public R modifyLocs(LocModifyParams locs) {
- if (locs.getId().isEmpty()) {
+ if (Objects.isNull(locs.getId()) || locs.getId().isEmpty()) {
throw new CoolException("搴撲綅ID涓嶈兘涓虹┖锛侊紒");
}
Loc loc = locs.getLoc();
if (Objects.isNull(loc)) {
throw new CoolException("淇敼搴撲綅淇℃伅涓嶈兘涓虹┖锛侊紒");
+ }
+ // 鍏煎鏃ц姹備腑鐨勭姸鎬佺鐢ㄥ弬鏁�
+ if (Objects.equals(loc.getStatus(), 0) && Objects.isNull(loc.getUseStatus())) {
+ loc.setUseStatus("X");
+ // loc.setStatus(0);
+ loc.setStatus(null);
+ }
+
+ List<Loc> exists = this.list(new LambdaQueryWrapper<Loc>().in(Loc::getId, locs.getId()));
+ if (exists.isEmpty()) {
+ throw new CoolException("鏈壘鍒板彲淇敼鐨勫簱浣嶄俊鎭紒锛�");
}
String join = loc.getType();
@@ -61,7 +78,7 @@
}
boolean update = this.update(new LambdaUpdateWrapper<Loc>()
.in(Loc::getId, locs.getId())
- .eq(Loc::getStatus, 1)
+ // .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())
@@ -73,7 +90,8 @@
.set(!Objects.isNull(loc.getFlagLabelMange()), Loc::getFlagLabelMange, loc.getFlagLabelMange())
.set(!Objects.isNull(loc.getStatus()), Loc::getStatus, loc.getStatus()));
if (!update) {
- throw new CoolException("搴撲綅淇℃伅淇敼澶辫触锛侊紒");
+ // 鏃犳暟鎹彉鏇存椂鎸夋垚鍔熻繑鍥烇紝閬垮厤閲嶅鎿嶄綔鎶ラ敊
+ return R.ok(loc);
}
return R.ok(loc);
@@ -129,7 +147,8 @@
for (int b = param.getStartBay(); b <= param.getEndBay(); b++) {
for (int l = param.getStartLev(); l <= param.getEndLev(); l++) {
// 鑾峰彇搴撲綅鍙�
- String locNo = locStar + String.format("%d", r) + String.format("-%d", b) + String.format("-%d", l);
+// String locNo = locStar + String.format("%d", r) + String.format("-%d", b) + String.format("-%d", l);
+ String locNo = Utils.zeroFill("A1", 2) + String.format("%03d", r) + String.format("%03d", b) + String.format("%02d", l);
Loc loc = new Loc();
loc.setCode(locNo)
.setUseStatus("O")
@@ -230,4 +249,20 @@
List<LocUsageDto> locPies = this.baseMapper.getLocPies();
return R.ok().add(locPies);
}
+
+ /**
+ * @author Ryan
+ * @date 2025/8/16
+ * @description: 鑾峰彇搴撲綅鏄庣粏
+ * @version 1.0
+ */
+ @Override
+ public IPage<LocStockDto> getLocDetls(Page<Object> page) {
+ return getLocDetls(page, null);
+ }
+
+ @Override
+ public IPage<LocStockDto> getLocDetls(Page<Object> page, Map<String, Object> conds) {
+ return this.baseMapper.getLocDetls(page, conds == null ? Collections.emptyMap() : conds);
+ }
}
--
Gitblit v1.9.1