Showing
5 changed files
with
47 additions
and
4 deletions
@@ -4,6 +4,7 @@ import io.swagger.annotations.Api; | @@ -4,6 +4,7 @@ import io.swagger.annotations.Api; | ||
4 | import io.swagger.annotations.ApiOperation; | 4 | import io.swagger.annotations.ApiOperation; |
5 | import lombok.RequiredArgsConstructor; | 5 | import lombok.RequiredArgsConstructor; |
6 | import org.apache.commons.lang3.StringUtils; | 6 | import org.apache.commons.lang3.StringUtils; |
7 | +import org.springframework.http.ResponseEntity; | ||
7 | import org.springframework.web.bind.annotation.GetMapping; | 8 | import org.springframework.web.bind.annotation.GetMapping; |
8 | import org.springframework.web.bind.annotation.RequestMapping; | 9 | import org.springframework.web.bind.annotation.RequestMapping; |
9 | import org.springframework.web.bind.annotation.RequestParam; | 10 | import org.springframework.web.bind.annotation.RequestParam; |
@@ -14,15 +15,14 @@ import org.thingsboard.server.common.data.alarm.AlarmInfo; | @@ -14,15 +15,14 @@ import org.thingsboard.server.common.data.alarm.AlarmInfo; | ||
14 | import org.thingsboard.server.common.data.alarm.AlarmStatus; | 15 | import org.thingsboard.server.common.data.alarm.AlarmStatus; |
15 | import org.thingsboard.server.common.data.exception.ThingsboardException; | 16 | import org.thingsboard.server.common.data.exception.ThingsboardException; |
16 | import org.thingsboard.server.common.data.page.TimePageLink; | 17 | import org.thingsboard.server.common.data.page.TimePageLink; |
18 | +import org.thingsboard.server.common.data.yunteng.dto.SysDictDTO; | ||
17 | import org.thingsboard.server.common.data.yunteng.enums.OrderTypeEnum; | 19 | import org.thingsboard.server.common.data.yunteng.enums.OrderTypeEnum; |
18 | import org.thingsboard.server.common.data.yunteng.utils.tools.YtPageData; | 20 | import org.thingsboard.server.common.data.yunteng.utils.tools.YtPageData; |
19 | import org.thingsboard.server.controller.BaseController; | 21 | import org.thingsboard.server.controller.BaseController; |
20 | import org.thingsboard.server.dao.yunteng.entities.YtAlarmEntity; | 22 | import org.thingsboard.server.dao.yunteng.entities.YtAlarmEntity; |
21 | import org.thingsboard.server.dao.yunteng.service.YtAlarmInfoService; | 23 | import org.thingsboard.server.dao.yunteng.service.YtAlarmInfoService; |
22 | 24 | ||
23 | -import java.util.HashMap; | ||
24 | -import java.util.Map; | ||
25 | -import java.util.UUID; | 25 | +import java.util.*; |
26 | 26 | ||
27 | import static org.thingsboard.server.common.data.yunteng.constant.QueryConstant.*; | 27 | import static org.thingsboard.server.common.data.yunteng.constant.QueryConstant.*; |
28 | 28 | ||
@@ -70,4 +70,13 @@ public class YtAlarmInfoController extends BaseController { | @@ -70,4 +70,13 @@ public class YtAlarmInfoController extends BaseController { | ||
70 | 70 | ||
71 | 71 | ||
72 | 72 | ||
73 | + @ApiOperation(value="告警类型") | ||
74 | + @GetMapping() | ||
75 | + public ResponseEntity<List<SysDictDTO>> alarmType() throws ThingsboardException { | ||
76 | + List result = alarmInfoService.alarmType(getCurrentUser().getTenantId()); | ||
77 | + return ResponseEntity.ok(result); | ||
78 | + } | ||
79 | + | ||
80 | + | ||
81 | + | ||
73 | } | 82 | } |
@@ -15,7 +15,9 @@ import org.thingsboard.server.common.data.page.PageData; | @@ -15,7 +15,9 @@ import org.thingsboard.server.common.data.page.PageData; | ||
15 | import org.thingsboard.server.common.data.page.TimePageLink; | 15 | import org.thingsboard.server.common.data.page.TimePageLink; |
16 | import org.thingsboard.server.common.data.yunteng.constant.FastIotConstants; | 16 | import org.thingsboard.server.common.data.yunteng.constant.FastIotConstants; |
17 | import org.thingsboard.server.common.data.yunteng.dto.OrganizationDTO; | 17 | import org.thingsboard.server.common.data.yunteng.dto.OrganizationDTO; |
18 | +import org.thingsboard.server.common.data.yunteng.dto.SysDictDTO; | ||
18 | import org.thingsboard.server.common.data.yunteng.enums.OrderTypeEnum; | 19 | import org.thingsboard.server.common.data.yunteng.enums.OrderTypeEnum; |
20 | +import org.thingsboard.server.common.data.yunteng.utils.ReflectUtils; | ||
19 | import org.thingsboard.server.common.data.yunteng.utils.tools.YtPageData; | 21 | import org.thingsboard.server.common.data.yunteng.utils.tools.YtPageData; |
20 | import org.thingsboard.server.dao.yunteng.entities.AlarmContact; | 22 | import org.thingsboard.server.dao.yunteng.entities.AlarmContact; |
21 | import org.thingsboard.server.dao.yunteng.entities.YtAlarmEntity; | 23 | import org.thingsboard.server.dao.yunteng.entities.YtAlarmEntity; |
@@ -87,4 +89,8 @@ private final OrganizationMapper organizationMapper; | @@ -87,4 +89,8 @@ private final OrganizationMapper organizationMapper; | ||
87 | } | 89 | } |
88 | } | 90 | } |
89 | 91 | ||
92 | + @Override | ||
93 | + public List<SysDictDTO> alarmType(TenantId tenantId) { | ||
94 | + return ReflectUtils.sourceToTarget(ytJpaAarmDao.alarmType(tenantId.getId()), SysDictDTO.class); | ||
95 | + } | ||
90 | } | 96 | } |
@@ -11,6 +11,7 @@ import org.thingsboard.server.common.data.id.TenantId; | @@ -11,6 +11,7 @@ import org.thingsboard.server.common.data.id.TenantId; | ||
11 | import org.thingsboard.server.common.data.yunteng.dto.MenuDTO; | 11 | import org.thingsboard.server.common.data.yunteng.dto.MenuDTO; |
12 | import org.thingsboard.server.common.data.yunteng.dto.TenantDTO; | 12 | import org.thingsboard.server.common.data.yunteng.dto.TenantDTO; |
13 | import org.thingsboard.server.dao.yunteng.entities.Menu; | 13 | import org.thingsboard.server.dao.yunteng.entities.Menu; |
14 | +import org.thingsboard.server.dao.yunteng.entities.SysDict; | ||
14 | import org.thingsboard.server.dao.yunteng.entities.YtAlarmEntity; | 15 | import org.thingsboard.server.dao.yunteng.entities.YtAlarmEntity; |
15 | 16 | ||
16 | import java.util.Collection; | 17 | import java.util.Collection; |
@@ -32,4 +33,6 @@ public interface YtAlarmMapper extends BaseMapper<YtAlarmEntity> { | @@ -32,4 +33,6 @@ public interface YtAlarmMapper extends BaseMapper<YtAlarmEntity> { | ||
32 | ,@Param("originatorType") EntityType originatorType | 33 | ,@Param("originatorType") EntityType originatorType |
33 | ,@Param("organizationId")List<String> organizationId | 34 | ,@Param("organizationId")List<String> organizationId |
34 | ); | 35 | ); |
36 | + | ||
37 | + List<SysDict> alarmType(@Param("tenantId") UUID tenantId); | ||
35 | } | 38 | } |
@@ -7,9 +7,11 @@ import org.thingsboard.server.common.data.alarm.AlarmStatus; | @@ -7,9 +7,11 @@ import org.thingsboard.server.common.data.alarm.AlarmStatus; | ||
7 | import org.thingsboard.server.common.data.id.TenantId; | 7 | import org.thingsboard.server.common.data.id.TenantId; |
8 | import org.thingsboard.server.common.data.page.TimePageLink; | 8 | import org.thingsboard.server.common.data.page.TimePageLink; |
9 | import org.thingsboard.server.common.data.yunteng.dto.AlarmInfoDTO; | 9 | import org.thingsboard.server.common.data.yunteng.dto.AlarmInfoDTO; |
10 | +import org.thingsboard.server.common.data.yunteng.dto.SysDictDTO; | ||
10 | import org.thingsboard.server.common.data.yunteng.utils.tools.YtPageData; | 11 | import org.thingsboard.server.common.data.yunteng.utils.tools.YtPageData; |
11 | import org.thingsboard.server.dao.yunteng.entities.YtAlarmEntity; | 12 | import org.thingsboard.server.dao.yunteng.entities.YtAlarmEntity; |
12 | 13 | ||
14 | +import java.util.List; | ||
13 | import java.util.Map; | 15 | import java.util.Map; |
14 | import java.util.UUID; | 16 | import java.util.UUID; |
15 | 17 | ||
@@ -33,4 +35,12 @@ public interface YtAlarmInfoService { | @@ -33,4 +35,12 @@ public interface YtAlarmInfoService { | ||
33 | */ | 35 | */ |
34 | YtPageData<YtAlarmEntity> alarmPage(Map<String, Object> pageMap, TenantId tenantId, String alarmType, Long startTime, Long endTime, AlarmStatus status, String deviceId, EntityType originatorType, String organizationId); | 36 | YtPageData<YtAlarmEntity> alarmPage(Map<String, Object> pageMap, TenantId tenantId, String alarmType, Long startTime, Long endTime, AlarmStatus status, String deviceId, EntityType originatorType, String organizationId); |
35 | 37 | ||
38 | + | ||
39 | + /** | ||
40 | + * 设备告警类型 | ||
41 | + * @param tenantId | ||
42 | + * @return | ||
43 | + */ | ||
44 | + List<SysDictDTO> alarmType(TenantId tenantId); | ||
45 | + | ||
36 | } | 46 | } |
@@ -22,6 +22,11 @@ | @@ -22,6 +22,11 @@ | ||
22 | <result property="propagate" column="propagate"/> | 22 | <result property="propagate" column="propagate"/> |
23 | </resultMap> | 23 | </resultMap> |
24 | 24 | ||
25 | + <resultMap type="org.thingsboard.server.dao.yunteng.entities.SysDict" id="alarmType"> | ||
26 | + <result property="dictName" column="dict_name"/> | ||
27 | + <result property="dictCode" column="dict_code"/> | ||
28 | + </resultMap> | ||
29 | + | ||
25 | 30 | ||
26 | <select id="alarmPage" resultMap="alarmInfo"> | 31 | <select id="alarmPage" resultMap="alarmInfo"> |
27 | SELECT d.name AS device_name,d.id device_id,m.* | 32 | SELECT d.name AS device_name,d.id device_id,m.* |
@@ -32,7 +37,7 @@ | @@ -32,7 +37,7 @@ | ||
32 | AND type LIKE CONCAT('%',#{alarmType},'%') | 37 | AND type LIKE CONCAT('%',#{alarmType},'%') |
33 | </if> | 38 | </if> |
34 | <if test="startTime!=null"> | 39 | <if test="startTime!=null"> |
35 | - AND created_time >= #{tenantId} | 40 | + AND created_time >= #{startTime} |
36 | </if> | 41 | </if> |
37 | <if test="endTime!=null"> | 42 | <if test="endTime!=null"> |
38 | AND created_time <= #{endTime} | 43 | AND created_time <= #{endTime} |
@@ -55,4 +60,14 @@ | @@ -55,4 +60,14 @@ | ||
55 | 60 | ||
56 | </where> | 61 | </where> |
57 | </select> | 62 | </select> |
63 | + | ||
64 | + | ||
65 | + <select id="alarmType" resultMap="alarmType"> | ||
66 | + SELECT DISTINCT m.type AS dict_name,m.type AS dict_code | ||
67 | + FROM alarm m | ||
68 | + <where> | ||
69 | + m.tenant_id = #{tenantId} | ||
70 | + </where> | ||
71 | + </select> | ||
72 | + | ||
58 | </mapper> | 73 | </mapper> |