fix:设备地图相关接口迁移
parent
6e5de54e6e
commit
cec5a72856
|
@ -134,5 +134,5 @@ public interface IDeviceInfoData extends IOwnedData<DeviceInfo, String> {
|
|||
* 获取所有网关类型设备
|
||||
* @return
|
||||
*/
|
||||
List<Map<String, Object>> findByProductNodeType(String uid);
|
||||
List<DeviceInfo> findByProductNodeType(String uid);
|
||||
}
|
||||
|
|
|
@ -10,12 +10,12 @@
|
|||
package cc.iotkit.data.service;
|
||||
|
||||
import cc.iotkit.common.api.PageRequest;
|
||||
import cc.iotkit.common.api.Paging;
|
||||
import cc.iotkit.common.constant.Constants;
|
||||
import cc.iotkit.common.utils.JsonUtils;
|
||||
import cc.iotkit.data.manager.IDeviceInfoData;
|
||||
import cc.iotkit.data.cache.DeviceInfoCacheEvict;
|
||||
import cc.iotkit.data.cache.DeviceInfoCachePut;
|
||||
import cc.iotkit.common.api.Paging;
|
||||
import cc.iotkit.data.manager.IDeviceInfoData;
|
||||
import cc.iotkit.model.device.DeviceInfo;
|
||||
import cc.iotkit.model.stats.DataItem;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
@ -131,7 +131,7 @@ public class DeviceInfoDataCache implements IDeviceInfoData, SmartInitializingSi
|
|||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> findByProductNodeType(String uid) {
|
||||
public List<DeviceInfo> findByProductNodeType(String uid) {
|
||||
return deviceInfoData.findByProductNodeType(uid);
|
||||
}
|
||||
|
||||
|
|
|
@ -10,8 +10,8 @@
|
|||
package cc.iotkit.data.service;
|
||||
|
||||
import cc.iotkit.common.api.PageRequest;
|
||||
import cc.iotkit.data.manager.IDeviceInfoData;
|
||||
import cc.iotkit.common.api.Paging;
|
||||
import cc.iotkit.data.manager.IDeviceInfoData;
|
||||
import cc.iotkit.model.device.DeviceInfo;
|
||||
import cc.iotkit.model.stats.DataItem;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
@ -172,7 +172,7 @@ public class DeviceInfoPropertyDataCache implements IDeviceInfoData {
|
|||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> findByProductNodeType(String uid) {
|
||||
public List<DeviceInfo> findByProductNodeType(String uid) {
|
||||
return deviceInfoData.findByProductNodeType(uid);
|
||||
}
|
||||
|
||||
|
|
|
@ -14,8 +14,9 @@ import cc.iotkit.model.device.DeviceInfo;
|
|||
import cc.iotkit.model.product.Category;
|
||||
import cc.iotkit.model.product.Product;
|
||||
import cc.iotkit.model.stats.DataItem;
|
||||
import com.querydsl.jpa.impl.JPAQueryFactory;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Qualifier;
|
||||
import org.springframework.context.annotation.Primary;
|
||||
import org.springframework.data.domain.Page;
|
||||
|
@ -28,28 +29,34 @@ import org.springframework.transaction.annotation.Transactional;
|
|||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static cc.iotkit.data.model.QTbDeviceInfo.tbDeviceInfo;
|
||||
import static cc.iotkit.data.model.QTbProduct.tbProduct;
|
||||
|
||||
@Primary
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class DeviceInfoDataImpl implements IDeviceInfoData, IJPACommData<DeviceInfo, String> {
|
||||
|
||||
@Autowired
|
||||
private DeviceInfoRepository deviceInfoRepository;
|
||||
@Autowired
|
||||
private DeviceSubUserRepository deviceSubUserRepository;
|
||||
@Autowired
|
||||
private DeviceGroupMappingRepository deviceGroupMappingRepository;
|
||||
@Autowired
|
||||
private DeviceGroupRepository deviceGroupRepository;
|
||||
@Autowired
|
||||
private DeviceTagRepository deviceTagRepository;
|
||||
@Autowired
|
||||
private JdbcTemplate jdbcTemplate;
|
||||
@Autowired
|
||||
|
||||
private final DeviceInfoRepository deviceInfoRepository;
|
||||
|
||||
private final DeviceSubUserRepository deviceSubUserRepository;
|
||||
|
||||
private final DeviceGroupMappingRepository deviceGroupMappingRepository;
|
||||
|
||||
private final DeviceGroupRepository deviceGroupRepository;
|
||||
|
||||
private final DeviceTagRepository deviceTagRepository;
|
||||
|
||||
private final JdbcTemplate jdbcTemplate;
|
||||
|
||||
@Qualifier("productDataCache")
|
||||
private IProductData productData;
|
||||
@Autowired
|
||||
private final IProductData productData;
|
||||
|
||||
@Qualifier("categoryDataCache")
|
||||
private ICategoryData categoryData;
|
||||
private final ICategoryData categoryData;
|
||||
|
||||
private final JPAQueryFactory jpaQueryFactory;
|
||||
|
||||
@Override
|
||||
public JpaRepository getBaseRepository() {
|
||||
|
@ -190,15 +197,10 @@ public class DeviceInfoDataImpl implements IDeviceInfoData, IJPACommData<DeviceI
|
|||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> findByProductNodeType(String uid) {
|
||||
String sql = "SELECT\n" +
|
||||
"a.id,\n" +
|
||||
"a.device_name\n" +
|
||||
"FROM device_info a JOIN product p ON p.node_type=0 AND a.product_key=p.id";
|
||||
if (StringUtils.isNotBlank(uid)) {
|
||||
sql += " WHERE a.uid='" + uid + "'";
|
||||
}
|
||||
return jdbcTemplate.queryForList(sql);
|
||||
public List<DeviceInfo> findByProductNodeType(String uid) {
|
||||
List<TbDeviceInfo> devices=jpaQueryFactory.select(tbDeviceInfo).from(tbDeviceInfo)
|
||||
.join(tbProduct).on(tbProduct.nodeType.eq(0).and(tbDeviceInfo.productKey.eq(tbProduct.productKey))).fetch();
|
||||
return MapstructUtils.convert(devices,DeviceInfo.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -10,13 +10,8 @@
|
|||
package cc.iotkit.manager.controller;
|
||||
|
||||
import cc.iotkit.common.api.PageRequest;
|
||||
import cc.iotkit.common.api.Paging;
|
||||
import cc.iotkit.common.api.Request;
|
||||
import cc.iotkit.common.constant.Constants;
|
||||
import cc.iotkit.common.enums.ErrCode;
|
||||
import cc.iotkit.common.exception.BizException;
|
||||
import cc.iotkit.common.satoken.utils.AuthUtil;
|
||||
import cc.iotkit.common.utils.ReflectUtil;
|
||||
import cc.iotkit.common.utils.UniqueIdUtil;
|
||||
import cc.iotkit.manager.dto.bo.device.*;
|
||||
import cc.iotkit.manager.dto.bo.deviceconfig.DeviceConfigAddBo;
|
||||
import cc.iotkit.manager.dto.bo.devicegroup.DeviceAddGroupBo;
|
||||
|
@ -25,26 +20,29 @@ import cc.iotkit.manager.dto.bo.thingmodel.ThingModelMessageBo;
|
|||
import cc.iotkit.manager.dto.vo.deviceconfig.DeviceConfigVo;
|
||||
import cc.iotkit.manager.dto.vo.devicegroup.DeviceGroupVo;
|
||||
import cc.iotkit.manager.dto.vo.deviceinfo.DeviceInfoVo;
|
||||
import cc.iotkit.manager.dto.vo.deviceinfo.ParentDeviceVo;
|
||||
import cc.iotkit.manager.dto.vo.thingmodel.ThingModelVo;
|
||||
import cc.iotkit.manager.service.*;
|
||||
import cc.iotkit.manager.service.DeviceService;
|
||||
import cc.iotkit.manager.service.IDeviceService;
|
||||
import cc.iotkit.manager.service.IProductService;
|
||||
import cc.iotkit.model.InvokeResult;
|
||||
import cc.iotkit.common.api.Paging;
|
||||
import cc.iotkit.model.device.DeviceConfig;
|
||||
import cc.iotkit.model.device.DeviceGroup;
|
||||
import cc.iotkit.model.device.DeviceInfo;
|
||||
import cc.iotkit.model.device.message.DeviceProperty;
|
||||
import cc.iotkit.model.device.message.ThingModelMessage;
|
||||
import io.swagger.annotations.*;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.context.request.async.DeferredResult;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@Api(tags = {"设备"})
|
||||
@Slf4j
|
||||
|
@ -99,9 +97,9 @@ public class DeviceController {
|
|||
return deviceServiceImpl.selectChildrenPageList(deviceId);
|
||||
}
|
||||
|
||||
@ApiOperation("获取网关")
|
||||
@PostMapping("/parentDevices")
|
||||
public List<Map<String, Object>> getParentDevices() {
|
||||
@ApiOperation("获取网关设备")
|
||||
@PostMapping("/getParentDevices")
|
||||
public List<ParentDeviceVo> getParentDevices() {
|
||||
return deviceServiceImpl.getParentDevices();
|
||||
}
|
||||
|
||||
|
|
|
@ -1,28 +1,22 @@
|
|||
package cc.iotkit.manager.dto.vo.deviceinfo;
|
||||
|
||||
import cc.iotkit.model.device.DeviceInfo;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import io.github.linpeilie.annotations.AutoMapping;
|
||||
import io.github.linpeilie.annotations.ReverseAutoMapping;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.util.Date;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
|
||||
|
||||
@ApiModel(value = "DeviceInfoVo")
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = DeviceInfo.class)
|
||||
|
||||
public class DeviceInfoVo implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -1L;
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
package cc.iotkit.manager.dto.vo.deviceinfo;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @Author:tfd
|
||||
* @Date:2023/6/29 14:30
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class ParentDeviceVo {
|
||||
|
||||
private String id;
|
||||
|
||||
private String deviceName;
|
||||
}
|
|
@ -11,6 +11,7 @@ import cc.iotkit.manager.dto.bo.devicegroup.DeviceGroupBo;
|
|||
import cc.iotkit.manager.dto.vo.deviceconfig.DeviceConfigVo;
|
||||
import cc.iotkit.manager.dto.vo.devicegroup.DeviceGroupVo;
|
||||
import cc.iotkit.manager.dto.vo.deviceinfo.DeviceInfoVo;
|
||||
import cc.iotkit.manager.dto.vo.deviceinfo.ParentDeviceVo;
|
||||
import cc.iotkit.model.device.DeviceConfig;
|
||||
import cc.iotkit.model.device.DeviceGroup;
|
||||
import cc.iotkit.model.device.DeviceInfo;
|
||||
|
@ -19,7 +20,6 @@ import cc.iotkit.model.device.message.ThingModelMessage;
|
|||
import org.springframework.web.context.request.async.DeferredResult;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @Author: jay
|
||||
|
@ -34,7 +34,7 @@ public interface IDeviceService {
|
|||
|
||||
List<DeviceInfoVo> selectChildrenPageList(String deviceId);
|
||||
|
||||
List<Map<String, Object>> getParentDevices();
|
||||
List<ParentDeviceVo> getParentDevices();
|
||||
|
||||
DeviceInfo getDetail(String deviceId);
|
||||
|
||||
|
|
|
@ -24,6 +24,7 @@ import cc.iotkit.manager.dto.bo.devicegroup.DeviceGroupBo;
|
|||
import cc.iotkit.manager.dto.vo.deviceconfig.DeviceConfigVo;
|
||||
import cc.iotkit.manager.dto.vo.devicegroup.DeviceGroupVo;
|
||||
import cc.iotkit.manager.dto.vo.deviceinfo.DeviceInfoVo;
|
||||
import cc.iotkit.manager.dto.vo.deviceinfo.ParentDeviceVo;
|
||||
import cc.iotkit.manager.service.DataOwnerService;
|
||||
import cc.iotkit.manager.service.DeferredDataConsumer;
|
||||
import cc.iotkit.manager.service.DeviceService;
|
||||
|
@ -44,7 +45,7 @@ import org.springframework.stereotype.Service;
|
|||
import org.springframework.web.context.request.async.DeferredResult;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @Author: jay
|
||||
|
@ -157,12 +158,17 @@ public class DeviceServiceImpl implements IDeviceService {
|
|||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> getParentDevices() {
|
||||
public List<ParentDeviceVo> getParentDevices() {
|
||||
String uid = "";
|
||||
List<ParentDeviceVo> pdv = null;
|
||||
if (!AuthUtil.isAdmin()) {
|
||||
uid = AuthUtil.getUserId();
|
||||
}
|
||||
return deviceInfoData.findByProductNodeType(uid);
|
||||
List<DeviceInfo> ret=deviceInfoData.findByProductNodeType(uid);
|
||||
if(ret.size()>0){
|
||||
pdv=ret.stream().map(r->ParentDeviceVo.builder().id(r.getId()).deviceName(r.getDeviceName()).build()).collect(Collectors.toList());
|
||||
}
|
||||
return pdv;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
Loading…
Reference in New Issue