Преглед изворни кода

新增 新增 设备绑定批量插入数据库功能

zhaiyifei пре 10 месеци
родитељ
комит
f9a20bdff2

+ 6 - 3
src/main/java/com/yunfeiyun/agmp/iotm/web/controller/IotDeviceBindController.java

@@ -6,6 +6,7 @@ import com.yunfeiyun.agmp.common.core.domain.AjaxResult;
 import com.yunfeiyun.agmp.common.core.page.TableDataInfo;
 import com.yunfeiyun.agmp.common.enums.BusinessType;
 import com.yunfeiyun.agmp.common.utils.StringUtils;
+import com.yunfeiyun.agmp.iot.common.domain.FmsBlock;
 import com.yunfeiyun.agmp.iotm.web.domain.IotDeviceBindBlockVo;
 import com.yunfeiyun.agmp.iotm.web.domain.IotDeviceBindLandVo;
 import com.yunfeiyun.agmp.iotm.web.domain.IotDeviceBindStatisticVo;
@@ -65,7 +66,9 @@ public class IotDeviceBindController extends BaseController {
      */
     @GetMapping("/block/list")
     public TableDataInfo blockList(String landId) {
-        List<FmsBlockListByDeviceBindResVo> fmsBlockListByDeviceBindResVoList = fmsBlockService.selectFmsBlockListByDeviceBind(landId);
+        FmsBlock fmsBlock = new FmsBlock();
+        fmsBlock.setLandId(landId);
+        List<FmsBlockListByDeviceBindResVo> fmsBlockListByDeviceBindResVoList = fmsBlockService.selectFmsBlockListByDeviceBind(fmsBlock);
         return getDataTable(fmsBlockListByDeviceBindResVoList);
     }
 
@@ -74,14 +77,14 @@ public class IotDeviceBindController extends BaseController {
      */
     @GetMapping("/list")
     public TableDataInfo list(IotDeviceBindListReqVo iotDeviceBindListReqVo) {
-        startPage();
+
         List<String> devBidList = new ArrayList<>();
         iotDeviceBindListReqVo.setGroupBy(true);
         String reqLandId = iotDeviceBindListReqVo.getLandId();
         String reqBlockId = iotDeviceBindListReqVo.getBlockId();
 
         //当作设备号关键字 检索,再 当作 设备名称关键字, 检索,合并两个结果,去重
-
+        startPage();
         List<IotDeviceBindVo> iotDeviceBindVoList = iIotDeviceBindService.selectIotDeviceBindList(iotDeviceBindListReqVo);
 
         for (IotDeviceBindVo iotDeviceBindVo : iotDeviceBindVoList) {

+ 1 - 1
src/main/java/com/yunfeiyun/agmp/iotm/web/mapper/FmsBlockMapper.java

@@ -16,7 +16,7 @@ import java.util.List;
 public interface FmsBlockMapper
 {
 
-    public List<FmsBlockListByDeviceBindResVo> selectFmsBlockListByDeviceBind(String landId);
+    public List<FmsBlockListByDeviceBindResVo> selectFmsBlockListByDeviceBind(FmsBlock fmsBlock);
 
     public List<FmsBlock> selectFmsBlockBaseDataList(FmsLandBlockTreeReqVo fmsLandBlockTreeReqVo);
 //

+ 1 - 1
src/main/java/com/yunfeiyun/agmp/iotm/web/service/FmsBlockService.java

@@ -17,7 +17,7 @@ import java.util.List;
 public interface FmsBlockService
 {
 
-    public List<FmsBlockListByDeviceBindResVo> selectFmsBlockListByDeviceBind(String landId);
+    public List<FmsBlockListByDeviceBindResVo> selectFmsBlockListByDeviceBind(FmsBlock fmsBlock);
 
     public List<FmsBlock> selectFmsBlockBaseDataList(FmsLandBlockTreeReqVo fmsLandBlockTreeReqVo);
 //

+ 3 - 2
src/main/java/com/yunfeiyun/agmp/iotm/web/service/impl/FmsBlockServiceImpl.java

@@ -18,8 +18,9 @@ public class FmsBlockServiceImpl implements FmsBlockService {
     private FmsBlockMapper fmsBlockMapper;
 
     @Override
-    public List<FmsBlockListByDeviceBindResVo> selectFmsBlockListByDeviceBind(String landId) {
-        return fmsBlockMapper.selectFmsBlockListByDeviceBind(landId);
+    public List<FmsBlockListByDeviceBindResVo> selectFmsBlockListByDeviceBind(FmsBlock fmsBlock) {
+        fmsBlock.setTid(SecurityUtils.getTid());
+        return fmsBlockMapper.selectFmsBlockListByDeviceBind(fmsBlock);
     }
 
     @Override

+ 15 - 15
src/main/resources/mapper/FmsBlockMapper.xml

@@ -27,23 +27,23 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         blockLngrange, blockColor, blockRemark from FmsBlock
     </sql>
 
-    <select id="selectFmsBlockListByDeviceBind" resultType="FmsBlockListByDeviceBindResVo" parameterType="String">
+    <select id="selectFmsBlockListByDeviceBind" resultType="FmsBlockListByDeviceBindResVo" parameterType="FmsBlock">
         SELECT fb.blockId, fb.blockName,  IFNULL(f2.devNum, 0) AS devNum, fb.blockSeq
         FROM FmsBlock AS fb
-        LEFT JOIN (
-        SELECT f.blockId, f.blockName, COUNT(*) AS devNum, f.blockSeq
-        FROM (
-        SELECT fb.blockId, fb.blockName, td.landId, fb.blockSeq
-        FROM FmsBlock AS fb
-        LEFT JOIN TmnBlock AS tb ON tb.blockId = fb.blockId
-        LEFT JOIN TmnLand AS td ON td.tmnId = tb.tmnId
-        LEFT JOIN IotDevice AS d ON d.devBid = tb.tmnId
-        WHERE fb.landId = #{landId} AND d.devDelstatus = '0' AND (td.landId IS NOT NULL)
-        GROUP BY fb.blockId, tb.tmnId
-        ) AS f
-        GROUP BY f.blockId
-        ) AS f2 ON fb.blockId = f2.blockId
-        WHERE fb.landId = #{landId}
+            LEFT JOIN (
+                SELECT f.blockId, f.blockName, COUNT(*) AS devNum, f.blockSeq
+                FROM (
+                    SELECT fb.blockId, fb.blockName, td.landId, fb.blockSeq
+                    FROM FmsBlock AS fb
+                        LEFT JOIN TmnBlock AS tb ON tb.blockId = fb.blockId
+                        LEFT JOIN TmnLand AS td ON td.tmnId = tb.tmnId
+                        LEFT JOIN IotDevice AS d ON d.devBid = tb.tmnId
+                    WHERE fb.landId = #{landId} AND fb.tid = #{tid} AND d.devDelstatus = '0' AND (td.landId IS NOT NULL)
+                    GROUP BY fb.blockId, tb.tmnId
+                ) AS f
+                GROUP BY f.blockId
+            ) AS f2 ON fb.blockId = f2.blockId
+        WHERE fb.landId = #{landId} and fb.tid = #{tid}
         ORDER BY fb.blockSeq
     </select>
 

+ 2 - 2
src/main/resources/mapper/IotDeviceBindMapper.xml

@@ -13,7 +13,7 @@
                 LEFT JOIN (
                     SELECT *
                     FROM TmnLand AS t
-                    WHERE NOT ((t.landId IS NULL) OR (t.landId = ''))
+                    WHERE NOT ((t.landId IS NULL) OR (t.landId = '')) AND t.tid = #{tid}
                 ) AS t ON t.tmnId = d.devBid
                 LEFT JOIN TosDevicetype AS dt on dt.devtypeBid = d.devtypeBid
                 LEFT JOIN FmsLand AS ft ON t.landId = ft.landId
@@ -85,7 +85,7 @@
                 LEFT JOIN (
                     SELECT *
                     FROM TmnLand AS t
-                    WHERE NOT ((t.landId IS NULL) OR (t.landId = ''))
+                    WHERE NOT ((t.landId IS NULL) OR (t.landId = '')) AND t.tid = #{tid}
                 ) AS t ON t.tmnId = d.devBid
                 WHERE d.devDelstatus = '0' AND d.tid = #{tid} AND NOT t.landId IS NULL
                 GROUP BY d.devBid