Przeglądaj źródła

新增获取连接信息详情接口

zhaiyifei 1 rok temu
rodzic
commit
ec37f6c77e

+ 12 - 12
src/main/java/com/yunfeiyun/agmp/iotm/device/controller/IotDeviceconnController.java

@@ -8,7 +8,7 @@ import com.yunfeiyun.agmp.common.utils.poi.ExcelUtil;
 import com.yunfeiyun.agmp.iot.common.domain.IotDeviceconn;
 import com.yunfeiyun.agmp.iotm.device.domain.reqvo.IotDeviceconnAddReqVo;
 import com.yunfeiyun.agmp.iotm.device.domain.reqvo.IotDeviceconnListReqVo;
-import com.yunfeiyun.agmp.iotm.device.domain.resvo.IotDeviceconnListRspVo;
+import com.yunfeiyun.agmp.iotm.device.domain.resvo.IotDeviceconnListResVo;
 import com.yunfeiyun.agmp.iotm.device.service.IIotDeviceconnService;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -59,11 +59,21 @@ public class IotDeviceconnController extends BaseController
     public TableDataInfo list(IotDeviceconnListReqVo reqVo)
     {
         startPage();
-        List<IotDeviceconnListRspVo> list = iotDeviceconnService.listDeviceconn(reqVo);
+        List<IotDeviceconnListResVo> list = iotDeviceconnService.listDeviceconn(reqVo);
         return getDataTable(list);
     }
 
     /**
+     * 获取设备连接配置详细信息
+     */
+    @PreAuthorize("@ss.hasPermi('iot:deviceconn:info')")
+    @GetMapping(value = "/info/{devtypeBid}")
+    public AjaxResult getInfo(@PathVariable("devtypeBid") String devtypeBid)
+    {
+        return success(iotDeviceconnService.selectIotDeviceconnInfo(devtypeBid));
+    }
+
+    /**
      * 导出设备连接配置列表
      */
     @PreAuthorize("@ss.hasPermi('iot:deviceconn:export')")
@@ -77,16 +87,6 @@ public class IotDeviceconnController extends BaseController
     }
 
     /**
-     * 获取设备连接配置详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('iot:deviceconn:query')")
-    @GetMapping(value = "/info/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return success(iotDeviceconnService.selectIotDeviceconnById(id));
-    }
-
-    /**
      * 修改设备连接配置
      */
     @PreAuthorize("@ss.hasPermi('iot:deviceconn:edit')")

+ 5 - 0
src/main/java/com/yunfeiyun/agmp/iotm/device/domain/IotDevconnConfigInfoVo.java

@@ -1,5 +1,6 @@
 package com.yunfeiyun.agmp.iotm.device.domain;
 
+import com.yunfeiyun.agmp.common.annotation.Excel;
 import lombok.Data;
 
 import javax.validation.constraints.NotEmpty;
@@ -15,6 +16,10 @@ import javax.validation.constraints.NotNull;
 
 @Data
 public class IotDevconnConfigInfoVo {
+
+    /** 连接配置标识 */
+    private String devconnBid;
+
     /** 连接名称 */
     @NotNull(message = "连接名称不能为空")
     @NotEmpty(message = "连接名称不能为空")

+ 33 - 0
src/main/java/com/yunfeiyun/agmp/iotm/device/domain/resvo/IotDeviceconnInfoResVo.java

@@ -0,0 +1,33 @@
+package com.yunfeiyun.agmp.iotm.device.domain.resvo;
+
+import com.yunfeiyun.agmp.common.annotation.Excel;
+import com.yunfeiyun.agmp.iotm.device.domain.IotDevconnConfigInfoVo;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * 设备连接配置对象 IotDeviceconn
+ * 
+ * @author 杨晓辉
+ * @date 2024-11-06
+ */
+@Data
+public class IotDeviceconnInfoResVo
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 设备型号标识 */
+    @Excel(name = "设备类型标识")
+    private String devtypeBid;
+
+    /** 设备类别标识 */
+    private String devclassBid;
+
+    /** 连接类型 */
+    @Excel(name = "连接类型")
+    private String devconnType;
+
+    /** 连接配置列表 */
+    private List<IotDevconnConfigInfoVo> devconnConfigList;
+}

+ 3 - 2
src/main/java/com/yunfeiyun/agmp/iotm/device/domain/resvo/IotDeviceconnListRspVo.java

@@ -1,6 +1,5 @@
 package com.yunfeiyun.agmp.iotm.device.domain.resvo;
 
-import com.yunfeiyun.agmp.common.annotation.Excel;
 import com.yunfeiyun.agmp.iot.common.enums.IotDeviceconnTypeEnum;
 import lombok.Data;
 
@@ -11,7 +10,7 @@ import lombok.Data;
  * @date 2024-11-06
  */
 @Data
-public class IotDeviceconnListRspVo
+public class IotDeviceconnListResVo
 {
     private static final long serialVersionUID = 1L;
 
@@ -52,4 +51,6 @@ public class IotDeviceconnListRspVo
     /** 型号名称 */
     private String devtypeName;
 
+    private String devconnCreateddate;
+
 }

+ 2 - 2
src/main/java/com/yunfeiyun/agmp/iotm/device/mapper/IotDeviceconnMapper.java

@@ -2,7 +2,7 @@ package com.yunfeiyun.agmp.iotm.device.mapper;
 
 import com.yunfeiyun.agmp.iot.common.domain.IotDeviceconn;
 import com.yunfeiyun.agmp.iotm.device.domain.reqvo.IotDeviceconnListReqVo;
-import com.yunfeiyun.agmp.iotm.device.domain.resvo.IotDeviceconnListRspVo;
+import com.yunfeiyun.agmp.iotm.device.domain.resvo.IotDeviceconnListResVo;
 
 import java.util.List;
 
@@ -69,7 +69,7 @@ public interface IotDeviceconnMapper
      * @param reqVo 设备连接配置
      * @return 设备连接配置集合
      */
-    public List<IotDeviceconnListRspVo> listDeviceconn(IotDeviceconnListReqVo reqVo);
+    public List<IotDeviceconnListResVo> listDeviceconn(IotDeviceconnListReqVo reqVo);
 
     /**
      * 批量新增设备连接配置

+ 11 - 2
src/main/java/com/yunfeiyun/agmp/iotm/device/service/IIotDeviceconnService.java

@@ -3,7 +3,8 @@ package com.yunfeiyun.agmp.iotm.device.service;
 import com.yunfeiyun.agmp.iot.common.domain.IotDeviceconn;
 import com.yunfeiyun.agmp.iotm.device.domain.reqvo.IotDeviceconnAddReqVo;
 import com.yunfeiyun.agmp.iotm.device.domain.reqvo.IotDeviceconnListReqVo;
-import com.yunfeiyun.agmp.iotm.device.domain.resvo.IotDeviceconnListRspVo;
+import com.yunfeiyun.agmp.iotm.device.domain.resvo.IotDeviceconnInfoResVo;
+import com.yunfeiyun.agmp.iotm.device.domain.resvo.IotDeviceconnListResVo;
 
 import java.util.List;
 
@@ -71,7 +72,7 @@ public interface IIotDeviceconnService
      * @param iotDeviceconn 设备连接配置
      * @return 设备连接配置集合
      */
-    public List<IotDeviceconnListRspVo> listDeviceconn(IotDeviceconnListReqVo reqVo);
+    public List<IotDeviceconnListResVo> listDeviceconn(IotDeviceconnListReqVo reqVo);
 
     /**
      * 批量新增设备连接配置
@@ -80,4 +81,12 @@ public interface IIotDeviceconnService
      * @return 结果
      */
     public int insertIotDeviceconnByBatch(List<IotDeviceconn> iotDeviceconnList);
+
+    /**
+     * 获取设备连接配置详细信息
+     *
+     * @param devtypeBid 设备连接配置主键
+     * @return 设备连接配置
+     */
+    public IotDeviceconnInfoResVo selectIotDeviceconnInfo(String devtypeBid);
 }

+ 40 - 4
src/main/java/com/yunfeiyun/agmp/iotm/device/service/impl/IotDeviceconnServiceImpl.java

@@ -15,7 +15,8 @@ import com.yunfeiyun.agmp.iot.common.exception.IotBizException;
 import com.yunfeiyun.agmp.iotm.device.domain.IotDevconnConfigInfoVo;
 import com.yunfeiyun.agmp.iotm.device.domain.reqvo.IotDeviceconnAddReqVo;
 import com.yunfeiyun.agmp.iotm.device.domain.reqvo.IotDeviceconnListReqVo;
-import com.yunfeiyun.agmp.iotm.device.domain.resvo.IotDeviceconnListRspVo;
+import com.yunfeiyun.agmp.iotm.device.domain.resvo.IotDeviceconnInfoResVo;
+import com.yunfeiyun.agmp.iotm.device.domain.resvo.IotDeviceconnListResVo;
 import com.yunfeiyun.agmp.iotm.device.mapper.IotDeviceconnMapper;
 import com.yunfeiyun.agmp.iotm.device.service.IIotDeviceconnService;
 import com.yunfeiyun.agmp.iotm.device.service.ITosDevicetypeService;
@@ -195,10 +196,9 @@ public class IotDeviceconnServiceImpl implements IIotDeviceconnService
      * @param reqVo@return 设备连接配置集合
      */
     @Override
-    public List<IotDeviceconnListRspVo> listDeviceconn(IotDeviceconnListReqVo reqVo) {
+    public List<IotDeviceconnListResVo> listDeviceconn(IotDeviceconnListReqVo reqVo) {
         reqVo.setTid(SecurityUtils.getTid());
-        List<IotDeviceconnListRspVo> iotDeviceconnListRspVoList = iotDeviceconnMapper.listDeviceconn(reqVo);
-        return iotDeviceconnListRspVoList;
+        return iotDeviceconnMapper.listDeviceconn(reqVo);
     }
 
     /**
@@ -214,4 +214,40 @@ public class IotDeviceconnServiceImpl implements IIotDeviceconnService
         }
         return iotDeviceconnMapper.insertIotDeviceconnByBatch(iotDeviceconnList);
     }
+
+    /**
+     * 获取设备连接配置详细信息
+     *
+     * @param devtypeBid 设备连接配置主键
+     * @return 设备连接配置
+     */
+    @Override
+    public IotDeviceconnInfoResVo selectIotDeviceconnInfo(String devtypeBid) {
+        if(StringUtils.isEmpty(devtypeBid)){
+            throw new IotBizException(ErrorCode.INVALID_PARAMETER.getCode(),"参数不能为空");
+        }
+        IotDeviceconn selectIotDeviceconn = new IotDeviceconn();
+        selectIotDeviceconn.setDevtypeBid(devtypeBid);
+
+        List<IotDeviceconn> iotDeviceconnList = selectIotDeviceconnList(selectIotDeviceconn);
+        if(iotDeviceconnList == null || iotDeviceconnList.isEmpty()){
+            throw new IotBizException(ErrorCode.INVALID_PARAMETER.getCode(),"连接配置不存在");
+        }
+
+        IotDeviceconnInfoResVo iotDeviceconnInfoResVo = new IotDeviceconnInfoResVo();
+        iotDeviceconnInfoResVo.setDevconnConfigList(new ArrayList<>());
+
+        for(IotDeviceconn iotDeviceconn : iotDeviceconnList){
+            iotDeviceconnInfoResVo.setDevclassBid(iotDeviceconn.getDevclassBid());
+            iotDeviceconnInfoResVo.setDevtypeBid(iotDeviceconn.getDevtypeBid());
+            iotDeviceconnInfoResVo.setDevconnType(iotDeviceconn.getDevconnType());
+
+            IotDevconnConfigInfoVo iotDevconnConfigInfoVo = new IotDevconnConfigInfoVo();
+            iotDevconnConfigInfoVo.setDevconnBid(iotDeviceconn.getDevconnBid());
+            iotDevconnConfigInfoVo.setDevconnName(iotDeviceconn.getDevconnName());
+            iotDevconnConfigInfoVo.setDevconnConfig(iotDeviceconn.getDevconnConfig());
+            iotDeviceconnInfoResVo.getDevconnConfigList().add(iotDevconnConfigInfoVo);
+        }
+        return iotDeviceconnInfoResVo;
+    }
 }

+ 19 - 13
src/main/resources/mapper/IotDeviceconnMapper.xml

@@ -7,6 +7,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     <resultMap type="IotDeviceconn" id="IotDeviceconnResult">
         <result property="id"    column="id"    />
         <result property="devconnBid"    column="devconnBid"    />
+        <result property="devclassBid"    column="devclassBid"    />
         <result property="devtypeBid"    column="devtypeBid"    />
         <result property="devconnType"    column="devconnType"    />
         <result property="devconnName"    column="devconnName"    />
@@ -25,19 +26,23 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </sql>
 
     <select id="selectIotDeviceconnList" parameterType="IotDeviceconn" resultMap="IotDeviceconnResult">
-        <include refid="selectIotDeviceconnVo"/>
+        select dcn.devconnBid, dcn.devtypeBid, dcn.devconnType, dcn.devconnName, dcn.devconnConfig, dcn.devconnRemark,
+            dcn.devconnCreator, dcn.devconnModifier, dcn.devconnModifieddate, dcn.devconnCreateddate, dt.devclassBid
+        from IotDeviceconn as dcn
+            left join TosDevicetype as dt on dt.devtypeBid = dcn.devtypeBid
+
         <where>
             tid = #{tid}
-            <if test="devconnBid != null  and devconnBid != ''"> and devconnBid = #{devconnBid}</if>
-            <if test="devtypeBid != null  and devtypeBid != ''"> and devtypeBid = #{devtypeBid}</if>
-            <if test="devconnType != null  and devconnType != ''"> and devconnType = #{devconnType}</if>
-            <if test="devconnName != null  and devconnName != ''"> and devconnName like concat('%', #{devconnName}, '%')</if>
-            <if test="devconnConfig != null  and devconnConfig != ''"> and devconnConfig = #{devconnConfig}</if>
-            <if test="devconnRemark != null  and devconnRemark != ''"> and devconnRemark = #{devconnRemark}</if>
-            <if test="devconnCreator != null  and devconnCreator != ''"> and devconnCreator = #{devconnCreator}</if>
-            <if test="devconnModifier != null  and devconnModifier != ''"> and devconnModifier = #{devconnModifier}</if>
-            <if test="devconnModifieddate != null  and devconnModifieddate != ''"> and devconnModifieddate = #{devconnModifieddate}</if>
-            <if test="devconnCreateddate != null  and devconnCreateddate != ''"> and devconnCreateddate = #{devconnCreateddate}</if>
+            <if test="devconnBid != null  and devconnBid != ''"> and dcn.devconnBid = #{devconnBid}</if>
+            <if test="devtypeBid != null  and devtypeBid != ''"> and dcn.devtypeBid = #{devtypeBid}</if>
+            <if test="devconnType != null  and devconnType != ''"> and dcn.devconnType = #{devconnType}</if>
+            <if test="devconnName != null  and devconnName != ''"> and dcn.devconnName like concat('%', #{devconnName}, '%')</if>
+            <if test="devconnConfig != null  and devconnConfig != ''"> and dcn.devconnConfig = #{devconnConfig}</if>
+            <if test="devconnRemark != null  and devconnRemark != ''"> and dcn.devconnRemark = #{devconnRemark}</if>
+            <if test="devconnCreator != null  and devconnCreator != ''"> and dcn.devconnCreator = #{devconnCreator}</if>
+            <if test="devconnModifier != null  and devconnModifier != ''"> and dcn.devconnModifier = #{devconnModifier}</if>
+            <if test="devconnModifieddate != null  and devconnModifieddate != ''"> and dcn.devconnModifieddate = #{devconnModifieddate}</if>
+            <if test="devconnCreateddate != null  and devconnCreateddate != ''"> and dcn.devconnCreateddate = #{devconnCreateddate}</if>
         </where>
     </select>
     
@@ -48,9 +53,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
     <select id="listDeviceconn"
             parameterType="com.yunfeiyun.agmp.iotm.device.domain.reqvo.IotDeviceconnListReqVo"
-            resultType="com.yunfeiyun.agmp.iotm.device.domain.resvo.IotDeviceconnListRspVo">
+            resultType="com.yunfeiyun.agmp.iotm.device.domain.resvo.IotDeviceconnListResVo">
         SELECT dcn.devconnBid, dcn.devconnType, dcn.devconnName, dcn.devconnRemark, dc.devclassBid, dc.devclassCode,
-            dc.devclassName, dt.devtypeBid, dt.devtypeCode, dt.devtypeName
+            dc.devclassName, dt.devtypeBid, dt.devtypeCode, dt.devtypeName, dcn.devconnCreateddate
         FROM IotDeviceconn AS dcn
             LEFT JOIN TosDevicetype AS dt ON dt.devtypeBid = dcn.devtypeBid
             LEFT JOIN TosDeviceclass AS dc ON dc.devclassBid = dt.devclassBid
@@ -63,6 +68,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="devconnName != null  and devconnName != ''"> and dcn.devconnName like concat('%', #{devconnName}, '%')</if>
             <if test="devconnType != null  and devconnType != ''"> and devconnType = #{devconnType}</if>
         </where>
+        GROUP BY dcn.devtypeBid
     </select>
 
     <insert id="insertIotDeviceconn" parameterType="IotDeviceconn" useGeneratedKeys="true" keyProperty="id">