Showing
14 changed files
with
294 additions
and
7 deletions
@@ -12,6 +12,7 @@ import org.thingsboard.server.common.data.yunteng.common.DeleteGroup; | @@ -12,6 +12,7 @@ import org.thingsboard.server.common.data.yunteng.common.DeleteGroup; | ||
12 | import org.thingsboard.server.common.data.yunteng.common.UpdateGroup; | 12 | import org.thingsboard.server.common.data.yunteng.common.UpdateGroup; |
13 | import org.thingsboard.server.common.data.yunteng.dto.ConfigurationCenterDTO; | 13 | import org.thingsboard.server.common.data.yunteng.dto.ConfigurationCenterDTO; |
14 | import org.thingsboard.server.common.data.yunteng.dto.DeleteDTO; | 14 | import org.thingsboard.server.common.data.yunteng.dto.DeleteDTO; |
15 | +import org.thingsboard.server.common.data.yunteng.dto.request.ConfigurationContentInfoDTO; | ||
15 | import org.thingsboard.server.common.data.yunteng.enums.OrderTypeEnum; | 16 | import org.thingsboard.server.common.data.yunteng.enums.OrderTypeEnum; |
16 | import org.thingsboard.server.common.data.yunteng.utils.tools.YtPageData; | 17 | import org.thingsboard.server.common.data.yunteng.utils.tools.YtPageData; |
17 | import org.thingsboard.server.controller.BaseController; | 18 | import org.thingsboard.server.controller.BaseController; |
@@ -86,4 +87,13 @@ public class YtConfigurationCenterController extends BaseController { | @@ -86,4 +87,13 @@ public class YtConfigurationCenterController extends BaseController { | ||
86 | deleteDTO.setTenantId(getCurrentUser().getCurrentTenantId()); | 87 | deleteDTO.setTenantId(getCurrentUser().getCurrentTenantId()); |
87 | return ResponseEntity.ok(ytConfigurationCenterService.deleteConfigurationCenter(deleteDTO)); | 88 | return ResponseEntity.ok(ytConfigurationCenterService.deleteConfigurationCenter(deleteDTO)); |
88 | } | 89 | } |
90 | + | ||
91 | + @GetMapping("/getConfigurationInfo/{id}") | ||
92 | + @ApiOperation("获取组态信息") | ||
93 | + public ResponseEntity<ConfigurationContentInfoDTO> getConfigurationInfos( | ||
94 | + @PathVariable("id") String id) throws ThingsboardException { | ||
95 | + return ResponseEntity.ok( | ||
96 | + ytConfigurationCenterService.getConfigurationInfos( | ||
97 | + id, getCurrentUser().getCurrentTenantId())); | ||
98 | + } | ||
89 | } | 99 | } |
1 | +package org.thingsboard.server.controller.yunteng; | ||
2 | + | ||
3 | +import io.swagger.annotations.Api; | ||
4 | +import io.swagger.annotations.ApiOperation; | ||
5 | +import lombok.RequiredArgsConstructor; | ||
6 | +import org.springframework.http.ResponseEntity; | ||
7 | +import org.springframework.validation.annotation.Validated; | ||
8 | +import org.springframework.web.bind.annotation.*; | ||
9 | +import org.thingsboard.server.common.data.exception.ThingsboardException; | ||
10 | +import org.thingsboard.server.common.data.yunteng.common.AddGroup; | ||
11 | +import org.thingsboard.server.common.data.yunteng.common.DeleteGroup; | ||
12 | +import org.thingsboard.server.common.data.yunteng.common.UpdateGroup; | ||
13 | +import org.thingsboard.server.common.data.yunteng.dto.ConfigurationContentDTO; | ||
14 | +import org.thingsboard.server.common.data.yunteng.dto.DeleteDTO; | ||
15 | +import org.thingsboard.server.common.data.yunteng.dto.request.ConfigurationContentInfoDTO; | ||
16 | +import org.thingsboard.server.controller.BaseController; | ||
17 | +import org.thingsboard.server.dao.yunteng.service.YtConfigurationContentService; | ||
18 | + | ||
19 | +@RestController | ||
20 | +@RequestMapping("/api/yt/configuration/content") | ||
21 | +@RequiredArgsConstructor | ||
22 | +@Api(tags = "组态内容") | ||
23 | +public class YtConfigurationContentController extends BaseController { | ||
24 | + | ||
25 | + private final YtConfigurationContentService ytConfigurationContentService; | ||
26 | + | ||
27 | + @PostMapping | ||
28 | + @ApiOperation("新增") | ||
29 | + public ResponseEntity<ConfigurationContentDTO> save( | ||
30 | + @Validated({AddGroup.class}) @RequestBody ConfigurationContentDTO configurationContentDTO) | ||
31 | + throws ThingsboardException { | ||
32 | + configurationContentDTO.setTenantId(getCurrentUser().getCurrentTenantId()); | ||
33 | + return ResponseEntity.ok( | ||
34 | + ytConfigurationContentService.saveConfigurationContent(configurationContentDTO)); | ||
35 | + } | ||
36 | + | ||
37 | + @PutMapping | ||
38 | + @ApiOperation("修改") | ||
39 | + public ResponseEntity<ConfigurationContentInfoDTO> update( | ||
40 | + @Validated({UpdateGroup.class}) @RequestBody ConfigurationContentInfoDTO contentReqDTO) | ||
41 | + throws ThingsboardException { | ||
42 | + for (ConfigurationContentDTO configurationContentDTO : | ||
43 | + contentReqDTO.getConfigurationContentList()) { | ||
44 | + configurationContentDTO.setTenantId(getCurrentUser().getCurrentTenantId()); | ||
45 | + configurationContentDTO.setConfigurationId(contentReqDTO.getConfigurationId()); | ||
46 | + ytConfigurationContentService.updateConfigurationContent(configurationContentDTO); | ||
47 | + } | ||
48 | + return ResponseEntity.ok(contentReqDTO); | ||
49 | + } | ||
50 | + | ||
51 | + @DeleteMapping | ||
52 | + @ApiOperation("删除") | ||
53 | + public ResponseEntity<Boolean> delete( | ||
54 | + @Validated({DeleteGroup.class}) @RequestBody DeleteDTO deleteDTO) | ||
55 | + throws ThingsboardException { | ||
56 | + deleteDTO.setTenantId(getCurrentUser().getCurrentTenantId()); | ||
57 | + return ResponseEntity.ok(ytConfigurationContentService.deleteConfigurationContent(deleteDTO)); | ||
58 | + } | ||
59 | +} |
@@ -6,6 +6,9 @@ public interface FastIotConstants { | @@ -6,6 +6,9 @@ public interface FastIotConstants { | ||
6 | Integer JAVA_SCRIPT = 0; | 6 | Integer JAVA_SCRIPT = 0; |
7 | Integer CONVERT_DATA = 1; | 7 | Integer CONVERT_DATA = 1; |
8 | Integer SCENE_REACT = 2; | 8 | Integer SCENE_REACT = 2; |
9 | + Integer MOBILE_TYPE = 0; | ||
10 | + Integer PC_TYPE = 1; | ||
11 | + String FIRST_PAGE_NAME = "第 1 页"; | ||
9 | class DefaultOrder { | 12 | class DefaultOrder { |
10 | public static final String CREATE_TIME="create_time"; | 13 | public static final String CREATE_TIME="create_time"; |
11 | } | 14 | } |
@@ -73,12 +73,13 @@ public final class ModelConstants { | @@ -73,12 +73,13 @@ public final class ModelConstants { | ||
73 | public static final String IOTFS_CONVERT_CONFIG_TABLE_NAME = "iotfs_convert_config"; | 73 | public static final String IOTFS_CONVERT_CONFIG_TABLE_NAME = "iotfs_convert_config"; |
74 | /** 组态中心 */ | 74 | /** 组态中心 */ |
75 | public static final String IOTFS_CONFIGURATION_CENTER_NAME = "iotfs_configuration_center"; | 75 | public static final String IOTFS_CONFIGURATION_CENTER_NAME = "iotfs_configuration_center"; |
76 | - | 76 | + /** 组态内容 */ |
77 | + public static final String IOTFS_CONFIGURATION_CONTENT_NAME = "iotfs_configuration_content"; | ||
77 | /** 视频流 */ | 78 | /** 视频流 */ |
78 | public static final String IOTFS_VIDEO_STREAM_TABLE_NAME = "iotfs_device_camera"; | 79 | public static final String IOTFS_VIDEO_STREAM_TABLE_NAME = "iotfs_device_camera"; |
79 | /** 意见反馈 */ | 80 | /** 意见反馈 */ |
80 | public static final String IOTFS_OPINION_TABLE_NAME = "iotfs_opinion"; | 81 | public static final String IOTFS_OPINION_TABLE_NAME = "iotfs_opinion"; |
81 | - /** 意见反馈 */ | 82 | + /** 第三方用户表 */ |
82 | public static final String IOTFS_THIRD_USER_TABLE_NAME = "iotfs_third_user"; | 83 | public static final String IOTFS_THIRD_USER_TABLE_NAME = "iotfs_third_user"; |
83 | } | 84 | } |
84 | 85 |
1 | +package org.thingsboard.server.common.data.yunteng.dto; | ||
2 | + | ||
3 | +import io.swagger.annotations.ApiModelProperty; | ||
4 | +import lombok.Data; | ||
5 | +import lombok.EqualsAndHashCode; | ||
6 | +import org.thingsboard.server.common.data.yunteng.common.AddGroup; | ||
7 | +import org.thingsboard.server.common.data.yunteng.common.UpdateGroup; | ||
8 | + | ||
9 | +import javax.validation.constraints.NotEmpty; | ||
10 | +import javax.validation.constraints.NotNull; | ||
11 | + | ||
12 | +@EqualsAndHashCode(callSuper = true) | ||
13 | +@Data | ||
14 | +public class ConfigurationContentDTO extends TenantDTO { | ||
15 | + @ApiModelProperty(value = "页面名称", required = true) | ||
16 | + @NotEmpty( | ||
17 | + message = "页面名称不能为空或空字符串", | ||
18 | + groups = {UpdateGroup.class, AddGroup.class}) | ||
19 | + private String name; | ||
20 | + | ||
21 | + @ApiModelProperty(value = "页面内容") | ||
22 | + @NotEmpty( | ||
23 | + message = "页面内容不能为空或空字符串", | ||
24 | + groups = {UpdateGroup.class}) | ||
25 | + private String content; | ||
26 | + | ||
27 | + @ApiModelProperty(value = "组态描述") | ||
28 | + private String remark; | ||
29 | + | ||
30 | + @ApiModelProperty(value = "组织中心ID", required = true) | ||
31 | + @NotEmpty( | ||
32 | + message = "组织中心ID不能为空或空字符串", | ||
33 | + groups = {UpdateGroup.class, AddGroup.class}) | ||
34 | + private String configurationId; | ||
35 | + | ||
36 | + @ApiModelProperty(value = "类型:0手机 1PC", required = true) | ||
37 | + @NotNull( | ||
38 | + message = "类型不能为空", | ||
39 | + groups = {UpdateGroup.class, AddGroup.class}) | ||
40 | + private Integer type; | ||
41 | +} |
1 | +package org.thingsboard.server.common.data.yunteng.dto.request; | ||
2 | + | ||
3 | +import io.swagger.annotations.ApiModel; | ||
4 | +import io.swagger.annotations.ApiModelProperty; | ||
5 | +import lombok.Data; | ||
6 | +import org.thingsboard.server.common.data.yunteng.dto.ConfigurationContentDTO; | ||
7 | + | ||
8 | +import java.util.List; | ||
9 | +@Data | ||
10 | +@ApiModel(value = "组态编辑") | ||
11 | +public class ConfigurationContentInfoDTO { | ||
12 | + @ApiModelProperty(value = "组态中心ID",required = true) | ||
13 | + private String configurationId; | ||
14 | + @ApiModelProperty(value = "组态中心名称") | ||
15 | + private String configurationName; | ||
16 | + @ApiModelProperty(value = "组态内容",required = true) | ||
17 | + private List<ConfigurationContentDTO> configurationContentList; | ||
18 | +} |
1 | +package org.thingsboard.server.dao.yunteng.entities; | ||
2 | + | ||
3 | +import com.baomidou.mybatisplus.annotation.TableName; | ||
4 | +import lombok.Data; | ||
5 | +import lombok.EqualsAndHashCode; | ||
6 | +import org.thingsboard.server.common.data.yunteng.constant.ModelConstants; | ||
7 | + | ||
8 | +@EqualsAndHashCode(callSuper = true) | ||
9 | +@TableName(ModelConstants.Table.IOTFS_CONFIGURATION_CONTENT_NAME) | ||
10 | +@Data | ||
11 | +public class ConfigurationContent extends TenantBaseEntity { | ||
12 | + | ||
13 | + private static final long serialVersionUID = -419380277607655083L; | ||
14 | + private String name; | ||
15 | + private String remark; | ||
16 | + private String configurationId; | ||
17 | + private String content; | ||
18 | + private Integer type; | ||
19 | +} |
@@ -9,16 +9,15 @@ import org.springframework.transaction.annotation.Transactional; | @@ -9,16 +9,15 @@ import org.springframework.transaction.annotation.Transactional; | ||
9 | import org.thingsboard.server.common.data.yunteng.constant.FastIotConstants; | 9 | import org.thingsboard.server.common.data.yunteng.constant.FastIotConstants; |
10 | import org.thingsboard.server.common.data.yunteng.core.exception.YtDataValidationException; | 10 | import org.thingsboard.server.common.data.yunteng.core.exception.YtDataValidationException; |
11 | import org.thingsboard.server.common.data.yunteng.core.message.ErrorMessage; | 11 | import org.thingsboard.server.common.data.yunteng.core.message.ErrorMessage; |
12 | -import org.thingsboard.server.common.data.yunteng.dto.BaseDTO; | ||
13 | -import org.thingsboard.server.common.data.yunteng.dto.ConfigurationCenterDTO; | ||
14 | -import org.thingsboard.server.common.data.yunteng.dto.DeleteDTO; | ||
15 | -import org.thingsboard.server.common.data.yunteng.dto.OrganizationDTO; | 12 | +import org.thingsboard.server.common.data.yunteng.dto.*; |
13 | +import org.thingsboard.server.common.data.yunteng.dto.request.ConfigurationContentInfoDTO; | ||
16 | import org.thingsboard.server.common.data.yunteng.utils.tools.YtPageData; | 14 | import org.thingsboard.server.common.data.yunteng.utils.tools.YtPageData; |
17 | import org.thingsboard.server.dao.yunteng.entities.ConfigurationCenter; | 15 | import org.thingsboard.server.dao.yunteng.entities.ConfigurationCenter; |
18 | import org.thingsboard.server.dao.yunteng.mapper.ConfigurationCenterMapper; | 16 | import org.thingsboard.server.dao.yunteng.mapper.ConfigurationCenterMapper; |
19 | import org.thingsboard.server.dao.yunteng.mapper.OrganizationMapper; | 17 | import org.thingsboard.server.dao.yunteng.mapper.OrganizationMapper; |
20 | import org.thingsboard.server.dao.yunteng.service.AbstractBaseService; | 18 | import org.thingsboard.server.dao.yunteng.service.AbstractBaseService; |
21 | import org.thingsboard.server.dao.yunteng.service.YtConfigurationCenterService; | 19 | import org.thingsboard.server.dao.yunteng.service.YtConfigurationCenterService; |
20 | +import org.thingsboard.server.dao.yunteng.service.YtConfigurationContentService; | ||
22 | 21 | ||
23 | import java.util.HashSet; | 22 | import java.util.HashSet; |
24 | import java.util.List; | 23 | import java.util.List; |
@@ -32,6 +31,7 @@ public class YtConfigurationCenterServiceImpl | @@ -32,6 +31,7 @@ public class YtConfigurationCenterServiceImpl | ||
32 | extends AbstractBaseService<ConfigurationCenterMapper, ConfigurationCenter> | 31 | extends AbstractBaseService<ConfigurationCenterMapper, ConfigurationCenter> |
33 | implements YtConfigurationCenterService { | 32 | implements YtConfigurationCenterService { |
34 | private final OrganizationMapper organizationMapper; | 33 | private final OrganizationMapper organizationMapper; |
34 | + private final YtConfigurationContentService ytConfigurationContentService; | ||
35 | 35 | ||
36 | @Override | 36 | @Override |
37 | public YtPageData<ConfigurationCenterDTO> page(Map<String, Object> queryMap) { | 37 | public YtPageData<ConfigurationCenterDTO> page(Map<String, Object> queryMap) { |
@@ -59,7 +59,14 @@ public class YtConfigurationCenterServiceImpl | @@ -59,7 +59,14 @@ public class YtConfigurationCenterServiceImpl | ||
59 | @Override | 59 | @Override |
60 | @Transactional | 60 | @Transactional |
61 | public ConfigurationCenterDTO saveConfiguration(ConfigurationCenterDTO configurationCenterDTO) { | 61 | public ConfigurationCenterDTO saveConfiguration(ConfigurationCenterDTO configurationCenterDTO) { |
62 | - baseMapper.insert(configurationCenterDTO.getEntity(ConfigurationCenter.class)); | 62 | + ConfigurationCenter configurationCenter = configurationCenterDTO.getEntity(ConfigurationCenter.class); |
63 | + baseMapper.insert(configurationCenter); | ||
64 | + ConfigurationContentDTO contentDTO = new ConfigurationContentDTO(); | ||
65 | + contentDTO.setTenantId(configurationCenter.getTenantId()); | ||
66 | + contentDTO.setType(FastIotConstants.PC_TYPE); | ||
67 | + contentDTO.setName(FastIotConstants.FIRST_PAGE_NAME); | ||
68 | + contentDTO.setConfigurationId(configurationCenter.getId()); | ||
69 | + ytConfigurationContentService.saveConfigurationContent(contentDTO); | ||
63 | return configurationCenterDTO; | 70 | return configurationCenterDTO; |
64 | } | 71 | } |
65 | 72 | ||
@@ -86,6 +93,15 @@ public class YtConfigurationCenterServiceImpl | @@ -86,6 +93,15 @@ public class YtConfigurationCenterServiceImpl | ||
86 | throw new YtDataValidationException(ErrorMessage.TENANT_MISMATCHING.getMessage()); | 93 | throw new YtDataValidationException(ErrorMessage.TENANT_MISMATCHING.getMessage()); |
87 | } | 94 | } |
88 | } | 95 | } |
96 | + ytConfigurationContentService.deleteConfigurationContentByCenterId(deleteDTO.getIds()); | ||
89 | return baseMapper.deleteBatchIds(deleteDTO.getIds()) > FastIotConstants.MagicNumber.ZERO; | 97 | return baseMapper.deleteBatchIds(deleteDTO.getIds()) > FastIotConstants.MagicNumber.ZERO; |
90 | } | 98 | } |
99 | + | ||
100 | + @Override | ||
101 | + public ConfigurationContentInfoDTO getConfigurationInfos(String id, String tenantId) { | ||
102 | + List<ConfigurationContentInfoDTO> list = baseMapper.getConfigurationInfoById(id, tenantId); | ||
103 | + return list.size() > FastIotConstants.MagicNumber.ZERO | ||
104 | + ? list.get(FastIotConstants.MagicNumber.ZERO) | ||
105 | + : null; | ||
106 | + } | ||
91 | } | 107 | } |
dao/src/main/java/org/thingsboard/server/dao/yunteng/impl/YtConfigurationContentServiceImpl.java
0 → 100644
1 | +package org.thingsboard.server.dao.yunteng.impl; | ||
2 | + | ||
3 | +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||
4 | +import lombok.RequiredArgsConstructor; | ||
5 | +import lombok.extern.slf4j.Slf4j; | ||
6 | +import org.springframework.stereotype.Service; | ||
7 | +import org.springframework.transaction.annotation.Transactional; | ||
8 | +import org.thingsboard.server.common.data.yunteng.constant.FastIotConstants; | ||
9 | +import org.thingsboard.server.common.data.yunteng.core.exception.YtDataValidationException; | ||
10 | +import org.thingsboard.server.common.data.yunteng.core.message.ErrorMessage; | ||
11 | +import org.thingsboard.server.common.data.yunteng.dto.*; | ||
12 | +import org.thingsboard.server.dao.yunteng.entities.ConfigurationContent; | ||
13 | +import org.thingsboard.server.dao.yunteng.mapper.ConfigurationContentMapper; | ||
14 | +import org.thingsboard.server.dao.yunteng.service.AbstractBaseService; | ||
15 | +import org.thingsboard.server.dao.yunteng.service.YtConfigurationContentService; | ||
16 | +import java.util.List; | ||
17 | +import java.util.Set; | ||
18 | + | ||
19 | +@Slf4j | ||
20 | +@Service | ||
21 | +@RequiredArgsConstructor | ||
22 | +public class YtConfigurationContentServiceImpl | ||
23 | + extends AbstractBaseService<ConfigurationContentMapper, ConfigurationContent> | ||
24 | + implements YtConfigurationContentService { | ||
25 | + | ||
26 | + @Override | ||
27 | + @Transactional | ||
28 | + public ConfigurationContentDTO saveConfigurationContent( | ||
29 | + ConfigurationContentDTO configurationContentDTO) { | ||
30 | + baseMapper.insert(configurationContentDTO.getEntity(ConfigurationContent.class)); | ||
31 | + return configurationContentDTO; | ||
32 | + } | ||
33 | + | ||
34 | + @Override | ||
35 | + @Transactional | ||
36 | + public ConfigurationContentDTO updateConfigurationContent( | ||
37 | + ConfigurationContentDTO configurationContentDTO) { | ||
38 | + ConfigurationContent configurationContent = | ||
39 | + baseMapper.selectById(configurationContentDTO.getId()); | ||
40 | + if (!configurationContent.getTenantId().equals(configurationContentDTO.getTenantId())) { | ||
41 | + throw new YtDataValidationException(ErrorMessage.TENANT_MISMATCHING.getMessage()); | ||
42 | + } | ||
43 | + baseMapper.updateById(configurationContentDTO.getEntity(ConfigurationContent.class)); | ||
44 | + return configurationContentDTO; | ||
45 | + } | ||
46 | + | ||
47 | + @Override | ||
48 | + @Transactional | ||
49 | + public boolean deleteConfigurationContent(DeleteDTO deleteDTO) { | ||
50 | + List<ConfigurationContent> centerList = | ||
51 | + baseMapper.selectList( | ||
52 | + new LambdaQueryWrapper<ConfigurationContent>() | ||
53 | + .in(ConfigurationContent::getId, deleteDTO.getIds())); | ||
54 | + for (ConfigurationContent center : centerList) { | ||
55 | + if (!center.getTenantId().equals(deleteDTO.getTenantId())) { | ||
56 | + throw new YtDataValidationException(ErrorMessage.TENANT_MISMATCHING.getMessage()); | ||
57 | + } | ||
58 | + } | ||
59 | + return baseMapper.deleteBatchIds(deleteDTO.getIds()) > FastIotConstants.MagicNumber.ZERO; | ||
60 | + } | ||
61 | + | ||
62 | + @Override | ||
63 | + @Transactional | ||
64 | + public boolean deleteConfigurationContentByCenterId(Set<String> configurationCenterIds) { | ||
65 | + return baseMapper.delete( | ||
66 | + new LambdaQueryWrapper<ConfigurationContent>() | ||
67 | + .in(ConfigurationContent::getConfigurationId, configurationCenterIds)) | ||
68 | + > FastIotConstants.MagicNumber.ZERO; | ||
69 | + } | ||
70 | +} |
@@ -5,12 +5,17 @@ import com.baomidou.mybatisplus.core.metadata.IPage; | @@ -5,12 +5,17 @@ import com.baomidou.mybatisplus.core.metadata.IPage; | ||
5 | import org.apache.ibatis.annotations.Mapper; | 5 | import org.apache.ibatis.annotations.Mapper; |
6 | import org.apache.ibatis.annotations.Param; | 6 | import org.apache.ibatis.annotations.Param; |
7 | import org.thingsboard.server.common.data.yunteng.dto.ConfigurationCenterDTO; | 7 | import org.thingsboard.server.common.data.yunteng.dto.ConfigurationCenterDTO; |
8 | +import org.thingsboard.server.common.data.yunteng.dto.request.ConfigurationContentInfoDTO; | ||
8 | import org.thingsboard.server.dao.yunteng.entities.ConfigurationCenter; | 9 | import org.thingsboard.server.dao.yunteng.entities.ConfigurationCenter; |
9 | 10 | ||
11 | +import java.util.List; | ||
10 | import java.util.Map; | 12 | import java.util.Map; |
11 | 13 | ||
12 | @Mapper | 14 | @Mapper |
13 | public interface ConfigurationCenterMapper extends BaseMapper<ConfigurationCenter> { | 15 | public interface ConfigurationCenterMapper extends BaseMapper<ConfigurationCenter> { |
14 | IPage<ConfigurationCenterDTO> getConfigurationCenterPage( | 16 | IPage<ConfigurationCenterDTO> getConfigurationCenterPage( |
15 | IPage<?> page, @Param("queryMap") Map<String, Object> queryMap); | 17 | IPage<?> page, @Param("queryMap") Map<String, Object> queryMap); |
18 | + | ||
19 | + List<ConfigurationContentInfoDTO> getConfigurationInfoById( | ||
20 | + @Param("id") String id, @Param("tenantId") String tenantId); | ||
16 | } | 21 | } |
dao/src/main/java/org/thingsboard/server/dao/yunteng/mapper/ConfigurationContentMapper.java
0 → 100644
1 | +package org.thingsboard.server.dao.yunteng.mapper; | ||
2 | + | ||
3 | +import com.baomidou.mybatisplus.core.mapper.BaseMapper; | ||
4 | +import org.apache.ibatis.annotations.Mapper; | ||
5 | +import org.thingsboard.server.dao.yunteng.entities.ConfigurationContent; | ||
6 | + | ||
7 | +@Mapper | ||
8 | +public interface ConfigurationContentMapper extends BaseMapper<ConfigurationContent> { | ||
9 | +} |
@@ -2,6 +2,7 @@ package org.thingsboard.server.dao.yunteng.service; | @@ -2,6 +2,7 @@ package org.thingsboard.server.dao.yunteng.service; | ||
2 | 2 | ||
3 | import org.thingsboard.server.common.data.yunteng.dto.ConfigurationCenterDTO; | 3 | import org.thingsboard.server.common.data.yunteng.dto.ConfigurationCenterDTO; |
4 | import org.thingsboard.server.common.data.yunteng.dto.DeleteDTO; | 4 | import org.thingsboard.server.common.data.yunteng.dto.DeleteDTO; |
5 | +import org.thingsboard.server.common.data.yunteng.dto.request.ConfigurationContentInfoDTO; | ||
5 | import org.thingsboard.server.common.data.yunteng.utils.tools.YtPageData; | 6 | import org.thingsboard.server.common.data.yunteng.utils.tools.YtPageData; |
6 | 7 | ||
7 | import java.util.Map; | 8 | import java.util.Map; |
@@ -14,4 +15,6 @@ public interface YtConfigurationCenterService { | @@ -14,4 +15,6 @@ public interface YtConfigurationCenterService { | ||
14 | ConfigurationCenterDTO updateConfiguration(ConfigurationCenterDTO configurationCenterDTO); | 15 | ConfigurationCenterDTO updateConfiguration(ConfigurationCenterDTO configurationCenterDTO); |
15 | 16 | ||
16 | boolean deleteConfigurationCenter(DeleteDTO deleteDTO); | 17 | boolean deleteConfigurationCenter(DeleteDTO deleteDTO); |
18 | + | ||
19 | + ConfigurationContentInfoDTO getConfigurationInfos(String id,String tenantId); | ||
17 | } | 20 | } |
dao/src/main/java/org/thingsboard/server/dao/yunteng/service/YtConfigurationContentService.java
0 → 100644
1 | +package org.thingsboard.server.dao.yunteng.service; | ||
2 | + | ||
3 | +import org.thingsboard.server.common.data.yunteng.dto.ConfigurationContentDTO; | ||
4 | +import org.thingsboard.server.common.data.yunteng.dto.DeleteDTO; | ||
5 | + | ||
6 | +import java.util.Set; | ||
7 | + | ||
8 | +public interface YtConfigurationContentService { | ||
9 | + | ||
10 | + ConfigurationContentDTO saveConfigurationContent(ConfigurationContentDTO configurationContentDTO); | ||
11 | + | ||
12 | + ConfigurationContentDTO updateConfigurationContent( | ||
13 | + ConfigurationContentDTO configurationContentDTO); | ||
14 | + | ||
15 | + boolean deleteConfigurationContent(DeleteDTO deleteDTO); | ||
16 | + | ||
17 | + boolean deleteConfigurationContentByCenterId(Set<String> configurationCenterIds); | ||
18 | +} |
@@ -17,6 +17,15 @@ | @@ -17,6 +17,15 @@ | ||
17 | <result property="name" column="organization_name"/> | 17 | <result property="name" column="organization_name"/> |
18 | </association> | 18 | </association> |
19 | </resultMap> | 19 | </resultMap> |
20 | + <resultMap id="configurationInfoMap" type="org.thingsboard.server.common.data.yunteng.dto.request.ConfigurationContentInfoDTO"> | ||
21 | + <result property="configurationId" column="id"/> | ||
22 | + <result property="configurationName" column="name"/> | ||
23 | + <collection property="configurationContentList" ofType="org.thingsboard.server.common.data.yunteng.dto.ConfigurationContentDTO"> | ||
24 | + <result property="id" column="content_id"/> | ||
25 | + <result property="content" column="content"/> | ||
26 | + </collection> | ||
27 | + </resultMap> | ||
28 | + | ||
20 | <sql id="columns"> | 29 | <sql id="columns"> |
21 | a.id,a.name,a.organization_id,a.remark,a.update_time,a.create_time,a.creator,a.tenant_id,a.updater,io.name AS organization_name | 30 | a.id,a.name,a.organization_id,a.remark,a.update_time,a.create_time,a.creator,a.tenant_id,a.updater,io.name AS organization_name |
22 | </sql> | 31 | </sql> |
@@ -40,4 +49,10 @@ | @@ -40,4 +49,10 @@ | ||
40 | </if> | 49 | </if> |
41 | </where> | 50 | </where> |
42 | </select> | 51 | </select> |
52 | + | ||
53 | + <select id="getConfigurationInfoById" resultMap="configurationInfoMap"> | ||
54 | + SELECT icc.id,icc.name,icct.id AS content_id,icct.content FROM iotfs_configuration_center icc LEFT JOIN | ||
55 | + iotfs_configuration_content icct ON icc.id = icct.configuration_id | ||
56 | + WHERE icc.id = #{id} AND icc.tenant_id = #{tenantId} | ||
57 | + </select> | ||
43 | </mapper> | 58 | </mapper> |