Quellcode durchsuchen

完善物理模型开发

donglang vor 3 Monaten
Ursprung
Commit
5735b7acab

+ 3 - 11
iot-platform-manager/src/main/java/com/platform/controller/IotModController.java

@@ -4,20 +4,12 @@ package com.platform.controller;
 import com.platform.exception.BaseResult;
 import com.platform.exception.PageResult;
 import com.platform.manage.IotModManage;
-import com.platform.request.device.DeviceDetailReq;
-import com.platform.request.device.IotDeviceRequest;
 import com.platform.request.mod.IotModDetailReq;
 import com.platform.request.mod.IotModRequest;
 import com.platform.request.mod.IotModSaveRequest;
-import com.platform.response.device.DeviceDetailResp;
-import com.platform.response.device.DevicePageResp;
 import com.platform.response.mod.IotModDetailResp;
-import com.platform.response.mod.IotModPageResp;
-import com.platform.result.HttpResult;
-import com.platform.service.IotDeviceService;
-import com.platform.service.IotModService;
+import com.platform.response.mod.IotModResp;
 import lombok.RequiredArgsConstructor;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 /**
@@ -39,7 +31,7 @@ public class IotModController {
      * 分页查询物理模型
      */
     @PostMapping("/pageModList")
-    public PageResult<IotModPageResp> pageModList(@RequestBody IotModRequest request) {
+    public PageResult<IotModResp> pageModList(@RequestBody IotModRequest request) {
         return iotModManage.pageModList(request);
     }
 
@@ -71,7 +63,7 @@ public class IotModController {
      * 物理模型详情查询
      */
     @PostMapping("/getModDetail")
-    public BaseResult<IotModDetailResp> getModDetail(@RequestBody IotModDetailReq req) {
+    public BaseResult<IotModResp> getModDetail(@RequestBody IotModDetailReq req) {
         return BaseResult.success(iotModManage.getModDetail(req));
     }
 

+ 10 - 2
iot-platform-manager/src/main/java/com/platform/entity/IotMod.java

@@ -5,6 +5,7 @@ import com.platform.request.mod.IotModRequest;
 import com.platform.request.mod.IotModSaveRequest;
 import lombok.Data;
 import java.time.LocalDateTime;
+import java.util.UUID;
 
 /**
  * 物模型lot表实体类
@@ -123,8 +124,15 @@ public class IotMod {
 
     public static IotMod requestToIotMod(IotModSaveRequest request){
         IotMod iotMod = IotMod.getInstance();
-        iotMod.setModCode(request.getModCode());
-        //TODO
+        iotMod.setTenantId(null);
+        iotMod.setModCode(UUID.randomUUID().toString());
+        iotMod.setCompanyId(request.getCompanyId());
+        iotMod.setModeGroupCode(request.getModeGroupCode());
+        iotMod.setGuid(null);
+        iotMod.setName(request.getName());
+        iotMod.setDescription(null);
+        iotMod.setRemarks(request.getRemarks());
+        iotMod.setTslJson(request.getTslJson());
 
         return iotMod;
     }

+ 1 - 1
iot-platform-manager/src/main/java/com/platform/manage/IotModGroupManage.java

@@ -89,7 +89,7 @@ public class IotModGroupManage {
      * @return
      */
     public Boolean deleteModGroup(Long id) {
-        return iotModGroupService.deleteById(id);
+        return iotModGroupService.removeById(id);
     }
 
 }

+ 25 - 20
iot-platform-manager/src/main/java/com/platform/manage/IotModManage.java

@@ -1,26 +1,22 @@
 package com.platform.manage;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.platform.entity.IotDevice;
 import com.platform.entity.IotMod;
+import com.platform.entity.IotModGroup;
 import com.platform.enums.ErrorCodeEnum;
 import com.platform.exception.IotException;
 import com.platform.exception.PageResult;
-import com.platform.request.device.DeviceDetailReq;
-import com.platform.request.device.IotDeviceRequest;
 import com.platform.request.mod.IotModDetailReq;
 import com.platform.request.mod.IotModRequest;
 import com.platform.request.mod.IotModSaveRequest;
-import com.platform.response.device.DeviceDetailResp;
-import com.platform.response.device.DevicePageResp;
 import com.platform.response.mod.IotModDetailResp;
-import com.platform.response.mod.IotModPageResp;
+import com.platform.response.mod.IotModResp;
+import com.platform.service.IotModGroupService;
 import com.platform.service.IotModService;
 import lombok.RequiredArgsConstructor;
 import org.apache.commons.lang3.StringUtils;
@@ -43,6 +39,8 @@ public class IotModManage {
 
     private final IotModService iotModService;
 
+    private final IotModGroupService iotModGroupService;
+
 
     /**
      * 分页查询
@@ -50,7 +48,7 @@ public class IotModManage {
      * @param request
      * @return
      */
-    public PageResult<IotModPageResp> pageModList(IotModRequest request) {
+    public PageResult<IotModResp> pageModList(IotModRequest request) {
         IPage<IotMod> page = new Page<>(request.getPageNum(), request.getPageSize());
         LambdaQueryWrapper<IotMod> queryWrapper = Wrappers.<IotMod>lambdaQuery()
                 .eq(IotMod::getModeGroupCode, request.getModeGroupCode())
@@ -63,9 +61,13 @@ public class IotModManage {
             return PageResult.empty(request.getPageNum(), request.getPageSize());
         }
 
-        List<IotModPageResp> modPageRespList = new ArrayList<>();
+        List<IotModResp> modPageRespList = new ArrayList<>();
         for (IotMod item : modList) {
-            IotModPageResp iotPageResp = IotModPageResp.toIotPageResp(item);
+            IotModResp iotPageResp = IotModResp.toIotPageResp(item);
+            //查询物理模型分组名称
+            IotModGroup iotModGroup = iotModGroupService.getOne(Wrappers.<IotModGroup>lambdaQuery()
+                    .eq(IotModGroup::getModeGroupCode, item.getModeGroupCode()));
+            iotPageResp.setModeGroupName(iotModGroup.getName());
             modPageRespList.add(iotPageResp);
         }
         return PageResult.of(modPageRespList.size(), request.getPageNum(), request.getPageSize(), modPageRespList);
@@ -95,12 +97,8 @@ public class IotModManage {
      */
     public Boolean updateMod(IotModSaveRequest request) {
         IotMod iotMod = IotMod.requestToIotMod(request);
-        if (StringUtils.isBlank(iotMod.getModCode())) {
-            throw new IotException(ErrorCodeEnum.DATA_UPDATE_FAIL, "物理模型编号不能为空");
-        }
-        LambdaUpdateWrapper<IotMod> updateWrapper = Wrappers.<IotMod>lambdaUpdate()
-                .eq(IotMod::getModCode, iotMod.getModCode());
-        return iotModService.update(iotMod, updateWrapper);
+        iotMod.setId(request.getId());
+        return iotModService.updateById(iotMod);
     }
 
     /**
@@ -110,7 +108,7 @@ public class IotModManage {
      * @return
      */
     public Boolean deleteMod(Long id) {
-        return iotModService.deleteById(id);
+        return iotModService.removeById(id);
 
     }
 
@@ -120,9 +118,16 @@ public class IotModManage {
      * @param req
      * @return
      */
-    public IotModDetailResp getModDetail(IotModDetailReq req) {
-        IotMod iotMod = iotModService.getOneById(req.getId());
-        return IotModDetailResp.toIotDetailResp(iotMod);
+    public IotModResp getModDetail(IotModDetailReq req) {
+        IotMod iotMod = iotModService.getById(req.getId());
+        IotModResp iotPageResp = IotModResp.toIotPageResp(iotMod);
+
+        //查询物理模型分组名称
+        IotModGroup iotModGroup = iotModGroupService.getOne(Wrappers.<IotModGroup>lambdaQuery()
+                .eq(IotModGroup::getModeGroupCode, iotMod.getModeGroupCode()));
+        iotPageResp.setModeGroupName(iotModGroup.getName());
+
+        return iotPageResp;
     }
 
 

+ 5 - 29
iot-platform-manager/src/main/java/com/platform/request/mod/IotModSaveRequest.java

@@ -1,7 +1,6 @@
 package com.platform.request.mod;
 
 
-import com.platform.request.PageRequest;
 import lombok.Data;
 
 /**
@@ -17,32 +16,22 @@ public class IotModSaveRequest {
     /**
      * 物理模型码值
      */
-    private String modCode;
+    private Long id;
 
     /**
      * 所属客户id
      */
     private Long companyId;
 
-    /**
-     * 物模型分组码值
-     */
-    private String modeGroupCode;
-
-    /**
-     * 唯一标识
-     */
-    private String guid;
-
     /**
      * 物模型名称
      */
     private String name;
 
     /**
-     * 备注
+     * 物模型分组码值
      */
-    private String remarks;
+    private String modeGroupCode;
 
     /**
      * 包含JSON
@@ -50,21 +39,8 @@ public class IotModSaveRequest {
     private String tslJson;
 
     /**
-     * 设备数
-     */
-    private Integer num;
-
-    /**
-     * 创建人
-     */
-    private String createUser;
-
-    /**
-     * 更新人
+     * 备注
      */
-    private String updateUser;
-
-
-
+    private String remarks;
 
 }

+ 0 - 118
iot-platform-manager/src/main/java/com/platform/response/mod/IotModPageResp.java

@@ -1,118 +0,0 @@
-package com.platform.response.mod;
-
-
-import com.platform.entity.IotMod;
-import lombok.Data;
-
-import java.time.LocalDateTime;
-
-/**
- * Author: donglang
- * Time: 2025-10-09
- * Des: 物理模型详情模型
- * Version: 1.0
- */
-
-@Data
-public class IotModPageResp {
-
-    /**
-     * 主键ID
-     */
-    private Long id;
-
-    /**
-     * 租户id
-     */
-    private String tenantId;
-
-    /**
-     * 物理模型码值
-     */
-    private String modCode;
-
-    /**
-     * 所属客户id
-     */
-    private Long companyId;
-
-    /**
-     * 物模型分组码值
-     */
-    private String modeGroupCode;
-
-    /**
-     * 唯一标识
-     */
-    private String guid;
-
-    /**
-     * 物模型名称
-     */
-    private String name;
-
-    /**
-     * 最后一次更新值[原来字段 desc]
-     */
-    private String description;
-
-    /**
-     * 备注
-     */
-    private String remarks;
-
-    /**
-     * 包含JSON
-     */
-    private String tslJson;
-
-    /**
-     * 版本[原来字段 tsl_ver]
-     */
-    private Integer version;
-
-    /**
-     * 设备数
-     */
-    private Integer num;
-
-    /**
-     * 0-未删除,1-删除
-     */
-    private Integer delFlag;
-
-    /**
-     * 创建人
-     */
-    private String createUser;
-
-    /**
-     * 更新人
-     */
-    private String updateUser;
-
-    /**
-     * 创建时间
-     */
-    private LocalDateTime createTime;
-
-    /**
-     * 更新时间
-     */
-    private LocalDateTime updateTime;
-
-    private static IotModPageResp getInstance(){
-        return new IotModPageResp();
-    }
-
-
-    public static IotModPageResp toIotPageResp(IotMod iotMod){
-        IotModPageResp iotModDetailResp = IotModPageResp.getInstance();
-        iotModDetailResp.setModCode(iotMod.getModCode());
-        //TODO
-
-        return iotModDetailResp;
-
-    }
-
-}

+ 88 - 0
iot-platform-manager/src/main/java/com/platform/response/mod/IotModResp.java

@@ -0,0 +1,88 @@
+package com.platform.response.mod;
+
+
+import com.platform.entity.IotMod;
+import lombok.Data;
+
+/**
+ * Author: donglang
+ * Time: 2025-10-09
+ * Des: 物理模型详情模型
+ * Version: 1.0
+ */
+
+@Data
+public class IotModResp {
+
+    /**
+     * 主键ID
+     */
+    private Long id;
+
+    /**
+     * 租户id
+     */
+    private String tenantId;
+
+    /**
+     * 所属客户id
+     */
+    private Long companyId;
+
+    /**
+     * 物模型分组码值
+     */
+    private String modeGroupCode;
+
+    /**
+     * 物模型分组名称
+     */
+    private String modeGroupName;
+
+    /**
+     * 物理模型码值
+     */
+    private String modCode;
+
+    /**
+     * 物模型名称
+     */
+    private String name;
+
+    /**
+     * 备注
+     */
+    private String remarks;
+
+    /**
+     * 包含JSON
+     */
+    private String tslJson;
+
+    /**
+     * 设备数
+     */
+    private Integer num;
+
+
+    private static IotModResp getInstance(){
+        return new IotModResp();
+    }
+
+
+    public static IotModResp toIotPageResp(IotMod iotMod){
+        IotModResp iotModPageResp = IotModResp.getInstance();
+        iotModPageResp.setId(iotMod.getId());
+        iotModPageResp.setTenantId(iotMod.getTenantId());
+        iotModPageResp.setCompanyId(iotMod.getCompanyId());
+        iotModPageResp.setModeGroupCode(iotMod.getModeGroupCode());
+        iotModPageResp.setModCode(iotMod.getModCode());
+        iotModPageResp.setName(iotMod.getName());
+        iotModPageResp.setRemarks(iotMod.getRemarks());
+        iotModPageResp.setTslJson(iotMod.getTslJson());
+        iotModPageResp.setNum(iotMod.getNum());
+
+        return iotModPageResp;
+    }
+
+}

+ 1 - 13
iot-platform-manager/src/main/java/com/platform/service/IotModGroupService.java

@@ -19,17 +19,5 @@ public interface IotModGroupService extends IService<IotModGroup> {
      * @return
      */
     IotModGroup getOneByName(String modGroupName);
-
-    /**
-     * 根据id查询
-     * @param id
-     * @return
-     */
-    IotModGroup getOneById(Long id);
-
-    /**
-     * 根据id删除
-     * @return
-     */
-    boolean deleteById(Long id);
+    
 }

+ 0 - 11
iot-platform-manager/src/main/java/com/platform/service/IotModService.java

@@ -22,18 +22,7 @@ public interface IotModService extends IService<IotMod> {
      */
     IotMod getOneByName(String modName);
 
-    /**
-     * 跟进id查询
-     * @param id
-     * @return
-     */
-    IotMod getOneById(Long id);
 
-    /**
-     * 根据id删除
-     * @return
-     */
-    boolean deleteById(Long id);
 
 
 

+ 0 - 10
iot-platform-manager/src/main/java/com/platform/service/impl/IotModGroupServiceImpl.java

@@ -27,14 +27,4 @@ public class IotModGroupServiceImpl extends ServiceImpl<IotModGroupMapper, IotMo
                 .last("limit 1"));
 
     }
-
-    @Override
-    public IotModGroup getOneById(Long id) {
-        return getById(id);
-    }
-
-    @Override
-    public boolean deleteById(Long id) {
-        return removeById(id);
-    }
 }

+ 5 - 16
iot-platform-manager/src/main/java/com/platform/service/impl/IotModServiceImpl.java

@@ -1,7 +1,9 @@
 package com.platform.service.impl;
 
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.platform.entity.IotMod;
+import com.platform.entity.IotModGroup;
 import com.platform.mapper.IotModMapper;
 import com.platform.service.IotModService;
 import org.springframework.stereotype.Service;
@@ -19,21 +21,8 @@ public class IotModServiceImpl extends ServiceImpl<IotModMapper, IotMod> impleme
 
     @Override
     public IotMod getOneByName(String modName) {
-        return null;
-    }
-
-    @Override
-    public IotMod getOneById(Long id) {
-        return null;
-    }
-
-    @Override
-    public boolean deleteById(Long id) {
-        return false;
-    }
-
-    @Override
-    public boolean updateById(IotMod iotMod) {
-        return false;
+        return getOne(Wrappers.<IotMod>lambdaQuery()
+                .eq(IotMod::getName, modName)
+                .last("limit 1"));
     }
 }

+ 0 - 2
sql/2025/11/create_cxf.sql

@@ -26,8 +26,6 @@ create table iot_device
 ) comment '设备表';
 
 
-
-
 create table iot_device_group
 (
     id          bigint unsigned auto_increment  primary key,