From f27309d45c7ef46b0aea98107b67d0c5b46d4217 Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期四, 09 四月 2026 10:00:26 +0800
Subject: [PATCH] fix: remove broken duplicate page return
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 52 insertions(+), 5 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java
index da258bd..6944ea7 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java
@@ -10,12 +10,14 @@
import com.vincent.rsf.server.common.domain.BaseParam;
import com.vincent.rsf.server.common.domain.KeyValVo;
import com.vincent.rsf.server.common.domain.PageParam;
+import com.vincent.rsf.server.common.utils.OptimisticLockUtils;
import com.vincent.rsf.server.manager.controller.params.LocMastInitParam;
import com.vincent.rsf.server.manager.controller.params.LocModifyParams;
import com.vincent.rsf.server.manager.entity.Loc;
import com.vincent.rsf.server.manager.enums.CommonStatus;
import com.vincent.rsf.server.manager.enums.LocStsType;
import com.vincent.rsf.server.manager.service.LocService;
+import com.vincent.rsf.server.manager.utils.buildPageRowsUtils;
import com.vincent.rsf.server.system.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -25,8 +27,8 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
import java.util.*;
import java.util.stream.Collectors;
@@ -47,7 +49,9 @@
list.add("row");
list.add("col");
list.add("lev");
- return R.ok().add(locService.page(pageParam, pageParam.buildWrapper(true,list)));
+ PageParam<Loc, BaseParam> page = locService.page(pageParam, pageParam.buildWrapper(true,list));
+ buildPageRowsUtils.userNameMap(page.getRecords());
+ return R.ok().add(page);
}
@PreAuthorize("hasAuthority('manager:loc:list')")
@@ -67,14 +71,56 @@
@PostMapping("/loc/areaNoUse/list")
public R areaNoUselist(@RequestBody Map<String, Object> map) {
String locCode = map.get("locCode").toString();
- Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, locCode),false);
+ Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, locCode)
+ .last("LIMIT 1"));
List<Loc> list = locService.list(new LambdaQueryWrapper<Loc>()
.eq(Loc::getAreaId, loc.getAreaId())
- .eq(!Objects.isNull(loc.getChannel()), Loc::getChannel,loc.getChannel())
+// .eq(!Objects.isNull(loc.getChannel()), Loc::getChannel,loc.getChannel())//
.eq(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_O.type)
);
List<String> list1 = list.stream().map(obj -> obj.getCode()).collect(Collectors.toList());
return R.ok(list1);
+ }
+
+ /** 鍚屽簱鍖虹┖闂插簱浣嶅垎椤碉紝鏀寔鎸夊簱浣嶅彿鍓嶇紑杩囨护锛涚敤浜庝笅鎷夋粴鍔ㄥ垎椤垫垨杈撳叆鍓嶇紑瀹炴椂鍔犺浇 */
+ @PreAuthorize("hasAuthority('manager:loc:list')")
+ @PostMapping("/loc/areaNoUse/page")
+ public R areaNoUsePage(@RequestBody Map<String, Object> map) {
+ String locCode = (String) map.get("locCode");
+ int current = map.get("current") != null ? Integer.parseInt(String.valueOf(map.get("current"))) : 1;
+ int pageSize = map.get("pageSize") != null ? Integer.parseInt(String.valueOf(map.get("pageSize"))) : 50;
+ if (Cools.isEmpty(locCode)) {
+ Page<String> emptyPage = new Page<>(current, pageSize);
+ emptyPage.setRecords(Collections.emptyList());
+ emptyPage.setTotal(0L);
+ return R.ok().add(emptyPage);
+ }
+ Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, locCode).last("LIMIT 1"));
+ if (loc == null) {
+ Page<String> emptyPage = new Page<>(current, pageSize);
+ emptyPage.setRecords(Collections.emptyList());
+ emptyPage.setTotal(0L);
+ return R.ok().add(emptyPage);
+ }
+ String q = map.get("q") != null ? String.valueOf(map.get("q")).trim() : null;
+ if (StringUtils.isBlank(q) && map.get("condition") != null) {
+ q = String.valueOf(map.get("condition")).trim();
+ }
+ LambdaQueryWrapper<Loc> wrapper = new LambdaQueryWrapper<Loc>()
+ .select(Loc::getCode)
+ .eq(Loc::getAreaId, loc.getAreaId())
+ .eq(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_O.type)
+ .orderByAsc(Loc::getCode);
+ if (StringUtils.isNotBlank(q)) {
+ wrapper.likeRight(Loc::getCode, q);
+ }
+ Page<Loc> page = new Page<>(current, pageSize);
+ Page<Loc> result = locService.page(page, wrapper);
+ List<String> records = result.getRecords().stream().map(Loc::getCode).collect(Collectors.toList());
+ Page<String> pageOut = new Page<>(current, pageSize);
+ pageOut.setRecords(records);
+ pageOut.setTotal(result.getTotal());
+ return R.ok().add(pageOut);
}
@PreAuthorize("hasAuthority('manager:loc:list')")
@@ -122,6 +168,7 @@
@PostMapping("/loc/update")
@Transactional(rollbackFor = Exception.class)
public R update(@RequestBody Loc loc) {
+ OptimisticLockUtils.requireVersion("搴撲綅", loc.getVersion());
loc.setUpdateBy(getLoginUserId());
String join = StringUtils.join(loc.getTypeIds(), ",");
if (!Objects.isNull(loc.getTypeIds())) {
--
Gitblit v1.9.1