From 95678b2302b7efa540b9c4e8795fbcfed16f0ea3 Mon Sep 17 00:00:00 2001 From: qlsxk <qlsxk@qq.com> Date: 星期二, 14 十月 2025 13:21:48 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/controller/ConsoleController.java | 70 +++++++++++++++++++++++++++++------ 1 files changed, 58 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/ConsoleController.java b/src/main/java/com/zy/asrs/controller/ConsoleController.java index 4bbb866..af8220c 100644 --- a/src/main/java/com/zy/asrs/controller/ConsoleController.java +++ b/src/main/java/com/zy/asrs/controller/ConsoleController.java @@ -1,22 +1,23 @@ package com.zy.asrs.controller; import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.annotations.ManagerAuth; import com.core.common.Cools; import com.core.common.R; import com.zy.asrs.domain.param.SystemSwitchParam; import com.zy.asrs.entity.BasMap; +import com.zy.asrs.entity.LocMast; import com.zy.asrs.service.BasMapService; +import com.zy.asrs.service.LocMastService; import com.zy.common.model.MapNode; import com.zy.common.model.enums.NavigationMapType; import com.zy.common.utils.NavigateMapData; import com.zy.common.utils.RedisUtil; import com.zy.core.enums.RedisKeyType; -import com.zy.core.properties.SlaveProperties; import com.zy.core.properties.SystemProperties; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; @@ -32,15 +33,13 @@ public class ConsoleController { @Autowired - private SlaveProperties slaveProperties; - @Autowired private BasMapService basMapService; @Autowired private RedisUtil redisUtil; - @Value("${super.pwd}") - private String superPwd; @Autowired private NavigateMapData navigateMapData; + @Autowired + private LocMastService locMastService; @PostMapping("/system/running/status") @ManagerAuth(memo = "绯荤粺杩愯鐘舵��") @@ -68,6 +67,20 @@ } /** + * 鑾峰彇鍦板浘妤煎眰鏁版嵁 + */ + @GetMapping("/map/lev/list") + @ManagerAuth + public R getMapLevList() { + List<BasMap> basMaps = basMapService.selectList(new EntityWrapper<BasMap>().orderBy("lev", true)); + ArrayList<Integer> levList = new ArrayList<>(); + for (BasMap basMap : basMaps) { + levList.add(basMap.getLev()); + } + return R.ok().add(levList); + } + + /** * 鑾峰彇鍦板浘鏁版嵁 */ @GetMapping("/map/{lev}/auth") @@ -78,10 +91,41 @@ return R.error(); } - BasMap basMap = JSON.parseObject(data.toString(), BasMap.class); - //瑙f瀽json鍦板浘鏁版嵁 - ArrayList arrayList = JSON.parseObject(basMap.getData(), ArrayList.class); - List<List<MapNode>> lists = navigateMapData.filterMap(NavigationMapType.NONE.id, arrayList, lev, null, null);//杩囨护鍦板浘鏁版嵁 + List<List<MapNode>> arrayList = (List<List<MapNode>>) data; + List<List<MapNode>> lists = navigateMapData.filterMap(NavigationMapType.getMapTypes(NavigationMapType.NONE, NavigationMapType.PATH_LOCK), arrayList, lev, null, null);//杩囨护鍦板浘鏁版嵁 + return R.ok().add(lists); + } + + /** + * 鑾峰彇搴撲綅鍦板浘鏁版嵁 + */ + @GetMapping("/locMap/{lev}/auth") + @ManagerAuth + public R getLocMap(@PathVariable Integer lev) { + Object data = redisUtil.get(RedisKeyType.MAP.key + lev); + if (data == null) { + return R.error(); + } + + List<List<MapNode>> arrayList = (List<List<MapNode>>) data; + List<List<MapNode>> lists = navigateMapData.filterMap(NavigationMapType.getMapTypes(NavigationMapType.NONE), arrayList, lev, null, null);//杩囨护鍦板浘鏁版嵁 + + //鑾峰彇褰撳墠妤煎眰搴撲綅鏁版嵁 + List<LocMast> locMasts = locMastService.selectLocByLev(lev); + for (LocMast locMast : locMasts) { + Integer row = locMast.getRow1(); + Integer bay = locMast.getBay1(); + + List<MapNode> list = lists.get(row); + MapNode mapNode = list.get(bay); + + mapNode.setLocSts(locMast.getLocSts()); + mapNode.setLocNo(locMast.getLocNo()); + + //鏇存柊list + list.set(bay, mapNode); + lists.set(row, list); + } return R.ok().add(lists); } @@ -91,8 +135,10 @@ @GetMapping("/map/resetMap/auth") @ManagerAuth public R resetMapToRedis() { - for (int i = 1; i <= 10; i++) {//鎬诲叡10灞傛ゼ - redisUtil.del(RedisKeyType.MAP.key + i); + List<BasMap> basMaps = basMapService.selectList(new EntityWrapper<BasMap>().orderBy("lev", true)); + for (BasMap basMap : basMaps) { + Integer lev = basMap.getLev(); + redisUtil.del(RedisKeyType.MAP.key + lev); } return R.ok(); } -- Gitblit v1.9.1