From 12c4aa5d3d41bbfed4d993f1a8e9ad17c1cf1387 Mon Sep 17 00:00:00 2001 From: luyya Date: Wed, 25 Mar 2026 14:04:26 +0800 Subject: [PATCH] =?UTF-8?q?=E8=9E=8D=E5=90=88=E9=80=9A=E4=BF=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/system/MapPolygonController.java | 14 ++++++++------ .../org/dromara/system/mapper/TDeviceMapper.java | 2 ++ .../system/service/IMapPolygonDeviceService.java | 6 ++++-- .../impl/MapPolygonDeviceServiceImpl.java | 16 ++++++++-------- .../resources/mapper/system/TDeviceMapper.xml | 4 ++++ 5 files changed, 26 insertions(+), 16 deletions(-) diff --git a/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/controller/system/MapPolygonController.java b/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/controller/system/MapPolygonController.java index 6958d24b..f4c1cf52 100644 --- a/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/controller/system/MapPolygonController.java +++ b/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/controller/system/MapPolygonController.java @@ -13,6 +13,7 @@ import org.dromara.system.domain.bo.MapPolygonBo; import org.dromara.system.domain.bo.MapPolygonDeviceBo; import org.dromara.system.domain.vo.MapPolygonDeviceVo; import org.dromara.system.domain.vo.MapPolygonVo; +import org.dromara.system.domain.vo.TDeviceVo; import org.dromara.system.service.IMapPolygonDeviceService; import org.dromara.system.service.IMapPolygonService; import org.springframework.validation.annotation.Validated; @@ -89,9 +90,10 @@ public class MapPolygonController extends BaseController { /** * 查询围栏绑定的设备列表 */ - @GetMapping("/deviceList/{polygonId}") - public R> getDeviceList(@PathVariable Integer polygonId) { - return R.ok(mapPolygonDeviceService.queryDeviceListByPolygonId(polygonId)); + @GetMapping("/deviceList") + public TableDataInfo getDeviceList(MapPolygonDeviceBo bo, PageQuery pageQuery) { + + return mapPolygonDeviceService.queryDeviceListByPolygonId(bo,pageQuery); } /** @@ -116,9 +118,9 @@ public class MapPolygonController extends BaseController { /** * 删除围栏设备绑定 */ - @DeleteMapping("/device/{ids}") - public R removeDevice(@PathVariable Long[] ids) { - return toAjax(mapPolygonDeviceService.deleteWithValidByIds(List.of(ids), true)); + @DeleteMapping("/device/{ids}/{polygonId}") + public R removeDevice(@PathVariable String[] ids,@PathVariable Integer polygonId) { + return toAjax(mapPolygonDeviceService.deleteByPolygonIdAndDeviceCodes(polygonId, List.of(ids))); } /** diff --git a/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/mapper/TDeviceMapper.java b/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/mapper/TDeviceMapper.java index d35faf4d..754d0382 100644 --- a/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/mapper/TDeviceMapper.java +++ b/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/mapper/TDeviceMapper.java @@ -40,4 +40,6 @@ public interface TDeviceMapper extends BaseMapperPlus { int insertOrUpdateByCodeAndType(TDevice device); + Page getPageOnBindDeviceList(@Param("page") Page page, @Param("polygonId") Integer polygonId); + } diff --git a/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/service/IMapPolygonDeviceService.java b/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/service/IMapPolygonDeviceService.java index 831c10fd..493ec9aa 100644 --- a/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/service/IMapPolygonDeviceService.java +++ b/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/service/IMapPolygonDeviceService.java @@ -3,8 +3,10 @@ package org.dromara.system.service; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.system.domain.TDevice; import org.dromara.system.domain.bo.MapPolygonDeviceBo; import org.dromara.system.domain.vo.MapPolygonDeviceVo; +import org.dromara.system.domain.vo.TDeviceVo; import java.util.Collection; import java.util.List; @@ -47,7 +49,7 @@ public interface IMapPolygonDeviceService { * @param polygonId 围栏ID * @return 设备列表 */ - List queryDeviceListByPolygonId(Integer polygonId); + TableDataInfo queryDeviceListByPolygonId(MapPolygonDeviceBo bo, PageQuery pageQuery); /** * 查询设备绑定的围栏列表 @@ -89,7 +91,7 @@ public interface IMapPolygonDeviceService { * @param isValid 是否进行有效性校验 * @return 是否删除成功 */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + Boolean deleteWithValidByIds(Collection ids,Long polygonId, Boolean isValid); /** * 根据围栏ID和设备编码列表删除绑定 diff --git a/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/service/impl/MapPolygonDeviceServiceImpl.java b/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/service/impl/MapPolygonDeviceServiceImpl.java index e080a0c2..093f7ca9 100644 --- a/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/service/impl/MapPolygonDeviceServiceImpl.java +++ b/stwzhj-modules/wzhj-system/src/main/java/org/dromara/system/service/impl/MapPolygonDeviceServiceImpl.java @@ -3,6 +3,7 @@ package org.dromara.system.service.impl; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -16,6 +17,7 @@ import org.dromara.system.domain.MapPolygonDevice; import org.dromara.system.domain.TDevice; import org.dromara.system.domain.bo.MapPolygonDeviceBo; import org.dromara.system.domain.vo.MapPolygonDeviceVo; +import org.dromara.system.domain.vo.TDeviceVo; import org.dromara.system.mapper.MapPolygonDeviceMapper; import org.dromara.system.mapper.MapPolygonMapper; import org.dromara.system.mapper.TDeviceMapper; @@ -68,11 +70,10 @@ public class MapPolygonDeviceServiceImpl implements IMapPolygonDeviceService { } @Override - public List queryDeviceListByPolygonId(Integer polygonId) { - List list = baseMapper.selectDeviceListByPolygonId(polygonId); - // 填充设备类型名称 - fillDeviceTypeName(list); - return list; + @DS("slave") + public TableDataInfo queryDeviceListByPolygonId(MapPolygonDeviceBo bo, PageQuery pageQuery) { + Page list = tDeviceMapper.getPageOnBindDeviceList(pageQuery.build(), bo.getPolygonId()); + return TableDataInfo.build(list); } @Override @@ -126,7 +127,6 @@ public class MapPolygonDeviceServiceImpl implements IMapPolygonDeviceService { list.add(binding); } - baseMapper.deleteByPolygonId(polygonId); // 批量插入 return baseMapper.insertBatch(list); } @@ -160,11 +160,11 @@ public class MapPolygonDeviceServiceImpl implements IMapPolygonDeviceService { } @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + public Boolean deleteWithValidByIds(Collection ids,Long polygonId, Boolean isValid) { if (isValid) { // 进行有效性校验 for (Long id : ids) { - MapPolygonDeviceVo vo = queryById(id); + MapPolygonDeviceVo vo = queryById(polygonId); if (vo == null) { throw new RuntimeException("绑定关系不存在"); } diff --git a/stwzhj-modules/wzhj-system/src/main/resources/mapper/system/TDeviceMapper.xml b/stwzhj-modules/wzhj-system/src/main/resources/mapper/system/TDeviceMapper.xml index b0eb07b6..0c3ac0c6 100644 --- a/stwzhj-modules/wzhj-system/src/main/resources/mapper/system/TDeviceMapper.xml +++ b/stwzhj-modules/wzhj-system/src/main/resources/mapper/system/TDeviceMapper.xml @@ -53,4 +53,8 @@ update_time = values(update_time) + +