From 70a47fd91119a6b40147b8bf094ec70f09a998e3 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期六, 12 十月 2024 14:35:34 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/MapController.java | 43 ++++++++++++++++++++++++++++++++++++------- 1 files changed, 36 insertions(+), 7 deletions(-) diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/MapController.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/MapController.java index 2861c4d..69f147e 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/MapController.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/MapController.java @@ -2,8 +2,11 @@ import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.zy.acs.common.utils.GsonUtils; import com.zy.acs.framework.common.Cools; import com.zy.acs.framework.common.R; +import com.zy.acs.framework.common.SnowflakeIdWorker; +import com.zy.acs.framework.exception.CoolException; import com.zy.acs.manager.common.domain.MapAgvDto; import com.zy.acs.manager.common.domain.MapCodeDto; import com.zy.acs.manager.common.domain.MapDto; @@ -15,6 +18,7 @@ import com.zy.acs.manager.manager.controller.param.MapParam; import com.zy.acs.manager.manager.entity.*; import com.zy.acs.manager.manager.enums.AgvStsType; +import com.zy.acs.manager.manager.mapper.MapMapper; import com.zy.acs.manager.manager.service.*; import com.zy.acs.manager.system.controller.BaseController; import com.zy.acs.manager.system.service.ConfigService; @@ -51,21 +55,46 @@ private MapService mapService; @Autowired private ConfigService configService; - - - - + @Autowired + private MapMapper mapMapper; + @Autowired + private SnowflakeIdWorker snowflakeIdWorker; @PreAuthorize("hasAuthority('manager:loc:list')") @PostMapping("/data/fetch") - public R fetch(@RequestParam(required = false) Long zoneId) { - String mapData = configService.getVal("mapData", String.class); - return R.ok().add(mapData); + public R fetch(@RequestParam(required = false) Long zoneId, @RequestParam(required = false) Integer floor) { + Map activeMap = mapMapper.selectActive(zoneId, floor); + return R.ok().add(activeMap); } @PreAuthorize("hasAuthority('manager:loc:update')") @PostMapping("/data/save") + @Transactional public R save(@RequestBody MapDataParam param) { + Date now = new Date(); + Long userId = getLoginUserId(); + // previous + Map previousMap = mapMapper.selectActive(param.getZoneId(), param.getFloor()); + if (null != previousMap) { + previousMap.setActive(0); + previousMap.setUpdateTime(now); + previousMap.setUpdateBy(userId); + if (0 == mapMapper.updateById(previousMap)) { + throw new CoolException("Save Fail"); + } + } + // current + Map map = new Map(); + map.setUuid(String.valueOf(snowflakeIdWorker.nextId()).substring(3)); + map.setZoneId(param.getZoneId()); + map.setFloor(param.getFloor()); + map.setData(GsonUtils.toJson(param.getItemList())); + map.setActive(1); + map.setUpdateBy(userId); + map.setCreateBy(userId); + if (0 == mapMapper.insert(map)) { + throw new CoolException("Save Fail"); + } return R.ok("Save Success"); } -- Gitblit v1.9.1