diff --git a/src/main/java/com/zjyr/beidouservice/controller/DeviceTaskController.java b/src/main/java/com/zjyr/beidouservice/controller/DeviceTaskController.java index 73f0577..2c3ff37 100644 --- a/src/main/java/com/zjyr/beidouservice/controller/DeviceTaskController.java +++ b/src/main/java/com/zjyr/beidouservice/controller/DeviceTaskController.java @@ -2,6 +2,10 @@ package com.zjyr.beidouservice.controller; import com.zjyr.beidouservice.pojo.MyResp; +import com.zjyr.beidouservice.pojo.dto.AlarmDeviceTaskListRespDTO; +import com.zjyr.beidouservice.pojo.dto.AlarmTaskListRespDTO; +import com.zjyr.beidouservice.pojo.dto.task.AlarmDeviceTaskListReqDTO; +import com.zjyr.beidouservice.pojo.dto.task.AlarmTaskListReqDTO; import com.zjyr.beidouservice.pojo.dto.task.AlarmTaskReqDTO; import com.zjyr.beidouservice.service.AlarmTaskService; import jakarta.annotation.Resource; @@ -33,5 +37,15 @@ public class DeviceTaskController { return alarmTaskService.alarmTaskExec(alarmTaskReqDTO); } + @PostMapping("/alarm/task/list") + public MyResp alarmTaskList(@RequestBody AlarmTaskListReqDTO alarmTaskReqDTO) { + return MyResp.success(alarmTaskService.alarmTaskList(alarmTaskReqDTO)); + } + + @PostMapping("/alarm/device/task/list") + public MyResp alarmDeviceTaskList(@RequestBody AlarmDeviceTaskListReqDTO alarmDeviceTaskListReqDTO) { + return MyResp.success(alarmTaskService.alarmDeviceTaskList(alarmDeviceTaskListReqDTO)); + } + } diff --git a/src/main/java/com/zjyr/beidouservice/mapper/AlarmDeviceTaskMapper.java b/src/main/java/com/zjyr/beidouservice/mapper/AlarmDeviceTaskMapper.java index f51e036..d660d96 100644 --- a/src/main/java/com/zjyr/beidouservice/mapper/AlarmDeviceTaskMapper.java +++ b/src/main/java/com/zjyr/beidouservice/mapper/AlarmDeviceTaskMapper.java @@ -26,4 +26,6 @@ public interface AlarmDeviceTaskMapper { List getAlarmTaskByStatus(@Param("status") Integer status); void batchUpdate(@Param("list") List deviceTaskList); + + List selectAllByTaskIdStr(@Param("list") List taskIdStrList); } diff --git a/src/main/java/com/zjyr/beidouservice/mapper/AlarmTaskMapper.java b/src/main/java/com/zjyr/beidouservice/mapper/AlarmTaskMapper.java index 92d6e2b..fe8a6a6 100644 --- a/src/main/java/com/zjyr/beidouservice/mapper/AlarmTaskMapper.java +++ b/src/main/java/com/zjyr/beidouservice/mapper/AlarmTaskMapper.java @@ -1,7 +1,11 @@ package com.zjyr.beidouservice.mapper; import com.zjyr.beidouservice.pojo.dataobject.AlarmTaskDO; +import com.zjyr.beidouservice.pojo.entry.SensorTask; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; @Mapper public interface AlarmTaskMapper { @@ -12,4 +16,6 @@ public interface AlarmTaskMapper { * @return int */ long addAlarmTask(AlarmTaskDO alarmTaskDO); + + List selectAllByTaskIdStr(@Param("list") List taskIdStrList); } diff --git a/src/main/java/com/zjyr/beidouservice/mapper/DeviceMapper.java b/src/main/java/com/zjyr/beidouservice/mapper/DeviceMapper.java index dc2bbcd..0227d97 100644 --- a/src/main/java/com/zjyr/beidouservice/mapper/DeviceMapper.java +++ b/src/main/java/com/zjyr/beidouservice/mapper/DeviceMapper.java @@ -15,7 +15,7 @@ public interface DeviceMapper { List selectDeviceByLoc(DeviceByLocationDTO deviceByLocationDTO); - DeviceDO selectDeviceByDeviceId(@Param("deviceId") Long deviceId); + List selectDeviceByDeviceIds(@Param("ids") List deviceIdList); void batchUpdateDeviceAlarmStatus(@Param("ids") Set alarmingDeviceIds, @Param("status") Integer code); } diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/AlarmDeviceTaskListRespDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/AlarmDeviceTaskListRespDTO.java new file mode 100644 index 0000000..558adea --- /dev/null +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/AlarmDeviceTaskListRespDTO.java @@ -0,0 +1,48 @@ +package com.zjyr.beidouservice.pojo.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.zjyr.beidouservice.pojo.dataobject.AlarmDeviceTaskDO; +import com.zjyr.beidouservice.pojo.vo.PageInfoVO; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; +import java.util.List; + +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class AlarmDeviceTaskListRespDTO { + + private List deviceList; + + private PageInfoVO pageInfo; + + @Data + public static class AlarmDeviceTaskDTO { + + private Long taskId; + + private Integer deviceId; + + private String deviceName; + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date reportTime; + + private Integer taskState; + + /** + * 经度 + */ + private Float latitude; + + /** + * 纬度 + */ + private Float longitude; + } +} diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/AlarmTaskListRespDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/AlarmTaskListRespDTO.java new file mode 100644 index 0000000..7122b81 --- /dev/null +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/AlarmTaskListRespDTO.java @@ -0,0 +1,43 @@ +package com.zjyr.beidouservice.pojo.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.zjyr.beidouservice.pojo.vo.PageInfoVO; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; +import java.util.List; + +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class AlarmTaskListRespDTO { + + private List taskList; + + private PageInfoVO pageInfo; + + @Data + @Builder + public static class AlarmTaskRespDTO { + + private Long id; + + private String taskIdStr; + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date recodeTime; + + private Integer deviceNum; + + private Integer execNormalNum; + + private Integer execAbnormalNum; + + private Double respRate; + } + +} diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceSearchDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceSearchDTO.java index b0ceeab..c750a5b 100644 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceSearchDTO.java +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceSearchDTO.java @@ -13,5 +13,5 @@ public class DeviceSearchDTO { /** * 设备id */ - private Long deviceId; + private Integer deviceId; } diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceTaskContentDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceTaskContentDTO.java deleted file mode 100644 index 3187515..0000000 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceTaskContentDTO.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.zjyr.beidouservice.pojo.dto; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.util.Date; - -@Data -@Builder -@NoArgsConstructor -@AllArgsConstructor -public class DeviceTaskContentDTO { - private Long deviceId; - - private String deviceName; - - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") - private Date respTime; - - private Integer execState; - - -} diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceTaskRespDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceTaskRespDTO.java deleted file mode 100644 index e725127..0000000 --- a/src/main/java/com/zjyr/beidouservice/pojo/dto/DeviceTaskRespDTO.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.zjyr.beidouservice.pojo.dto; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.util.Date; -import java.util.List; - -@Data -@Builder -@NoArgsConstructor -@AllArgsConstructor -public class DeviceTaskRespDTO { - private Long id; - - private String taskId; - - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") - private Date recodeTime; - - private Integer deviceNum; - - private Integer execNormalNum; - - private Integer execAbnormalNum; - - private Double respRate; - - private List data; - -} diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmDeviceTaskListReqDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmDeviceTaskListReqDTO.java new file mode 100644 index 0000000..8e46acf --- /dev/null +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmDeviceTaskListReqDTO.java @@ -0,0 +1,15 @@ +package com.zjyr.beidouservice.pojo.dto.task; + +import lombok.Data; + +import java.util.List; + +@Data +public class AlarmDeviceTaskListReqDTO { + + private Integer pageSize; + + private Integer pageNum; + + private List taskIdStrList; +} diff --git a/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmTaskListReqDTO.java b/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmTaskListReqDTO.java new file mode 100644 index 0000000..b5bd1a2 --- /dev/null +++ b/src/main/java/com/zjyr/beidouservice/pojo/dto/task/AlarmTaskListReqDTO.java @@ -0,0 +1,15 @@ +package com.zjyr.beidouservice.pojo.dto.task; + +import lombok.Data; + +import java.util.List; + +@Data +public class AlarmTaskListReqDTO { + + private Integer pageSize; + + private Integer pageNum; + + private List taskIdStrList; +} diff --git a/src/main/java/com/zjyr/beidouservice/pojo/vo/PageInfoVO.java b/src/main/java/com/zjyr/beidouservice/pojo/vo/PageInfoVO.java new file mode 100644 index 0000000..19b1ee2 --- /dev/null +++ b/src/main/java/com/zjyr/beidouservice/pojo/vo/PageInfoVO.java @@ -0,0 +1,19 @@ +package com.zjyr.beidouservice.pojo.vo; + +import lombok.Data; + +@Data +public class PageInfoVO { + + private Long total; + + private Integer pageSize; + + private Integer pageNum; + + public PageInfoVO(Long total, Integer pageSize, Integer pageNum) { + this.total = total; + this.pageSize = pageSize; + this.pageNum = pageNum; + } +} diff --git a/src/main/java/com/zjyr/beidouservice/service/AlarmTaskService.java b/src/main/java/com/zjyr/beidouservice/service/AlarmTaskService.java index 9f45802..bb56fd8 100644 --- a/src/main/java/com/zjyr/beidouservice/service/AlarmTaskService.java +++ b/src/main/java/com/zjyr/beidouservice/service/AlarmTaskService.java @@ -3,6 +3,10 @@ package com.zjyr.beidouservice.service; import com.zjyr.beidouservice.pojo.MyResp; +import com.zjyr.beidouservice.pojo.dto.AlarmDeviceTaskListRespDTO; +import com.zjyr.beidouservice.pojo.dto.AlarmTaskListRespDTO; +import com.zjyr.beidouservice.pojo.dto.task.AlarmDeviceTaskListReqDTO; +import com.zjyr.beidouservice.pojo.dto.task.AlarmTaskListReqDTO; import com.zjyr.beidouservice.pojo.dto.task.AlarmTaskReqDTO; public interface AlarmTaskService { @@ -14,6 +18,7 @@ public interface AlarmTaskService { MyResp alarmTaskExec(AlarmTaskReqDTO alarmTaskReqDTO); + AlarmTaskListRespDTO alarmTaskList(AlarmTaskListReqDTO alarmTaskReqDTO); - + AlarmDeviceTaskListRespDTO alarmDeviceTaskList(AlarmDeviceTaskListReqDTO alarmDeviceTaskListReqDTO); } diff --git a/src/main/java/com/zjyr/beidouservice/service/impl/AlarmTaskServiceImpl.java b/src/main/java/com/zjyr/beidouservice/service/impl/AlarmTaskServiceImpl.java index 90b4b39..71a7456 100644 --- a/src/main/java/com/zjyr/beidouservice/service/impl/AlarmTaskServiceImpl.java +++ b/src/main/java/com/zjyr/beidouservice/service/impl/AlarmTaskServiceImpl.java @@ -1,5 +1,7 @@ package com.zjyr.beidouservice.service.impl; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; import com.zjyr.beidouservice.common.impl.AlarmControlTypeName; import com.zjyr.beidouservice.common.impl.AlarmModeName; import com.zjyr.beidouservice.common.impl.AlarmTypeName; @@ -19,9 +21,14 @@ import com.zjyr.beidouservice.pojo.dataobject.AlarmTaskDO; import com.zjyr.beidouservice.pojo.dataobject.DeviceDO; import com.zjyr.beidouservice.pojo.dataobject.LocCountyDO; import com.zjyr.beidouservice.pojo.dataobject.SystemConfigDO; +import com.zjyr.beidouservice.pojo.dto.AlarmDeviceTaskListRespDTO; +import com.zjyr.beidouservice.pojo.dto.AlarmTaskListRespDTO; import com.zjyr.beidouservice.pojo.dto.DeviceByLocationDTO; import com.zjyr.beidouservice.pojo.dto.DeviceInfoDTO; +import com.zjyr.beidouservice.pojo.dto.task.AlarmDeviceTaskListReqDTO; +import com.zjyr.beidouservice.pojo.dto.task.AlarmTaskListReqDTO; import com.zjyr.beidouservice.pojo.dto.task.AlarmTaskReqDTO; +import com.zjyr.beidouservice.pojo.vo.PageInfoVO; import com.zjyr.beidouservice.service.AdapterProtocolService; import com.zjyr.beidouservice.service.AlarmTaskService; import com.zjyr.beidouservice.service.DeviceService; @@ -34,8 +41,11 @@ import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Arrays; import java.util.Date; +import java.util.LinkedList; import java.util.List; +import java.util.Map; import java.util.Objects; +import java.util.stream.Collectors; @Service @@ -112,6 +122,130 @@ public class AlarmTaskServiceImpl implements AlarmTaskService { } + @Override + public AlarmTaskListRespDTO alarmTaskList(AlarmTaskListReqDTO alarmTaskReqDTO) { + Integer pageNum = alarmTaskReqDTO.getPageNum(); + Integer pageSize = alarmTaskReqDTO.getPageSize(); + List taskIdStrList = alarmTaskReqDTO.getTaskIdStrList(); + // 分页查询 + PageInfo pageResult = queryAlarmTaskDOList(taskIdStrList, pageNum, pageSize); + // 初始的 task dto + List alarmTaskDOList = pageResult.getList().stream() + .map(s -> AlarmTaskListRespDTO.AlarmTaskRespDTO.builder() + .taskIdStr(s.getTaskIdStr()) + .id(s.getId()) + .recodeTime(s.getSendTime()) + .build()) + .toList(); + List deviceTaskList = getAggregatedAlarmDeviceTaskDOS( + alarmTaskDOList.stream() + .map(AlarmTaskListRespDTO.AlarmTaskRespDTO::getTaskIdStr) + .distinct() + .toList() + ); + Map> deviceTaskMap = deviceTaskList.stream().collect(Collectors.groupingBy(AlarmDeviceTaskDO::getTaskId)); + for (AlarmTaskListRespDTO.AlarmTaskRespDTO task : alarmTaskDOList) { + Long taskId = task.getId(); + List deviceTaskDOS = deviceTaskMap.getOrDefault(taskId, new ArrayList<>()); + int successCount = (int) deviceTaskDOS.stream().filter(s -> TaskStatusName.TASK_OK.getValue().equals(s.getStatus())).count(); + int failCount = (int) deviceTaskDOS.stream().filter(s -> TaskStatusName.TASK_ERROR.getValue().equals(s.getStatus())).count(); + int timeoutCount = (int) deviceTaskDOS.stream().filter(s -> TaskStatusName.TASK_TIMEOUT.getValue().equals(s.getStatus())).count(); + task.setDeviceNum(deviceTaskDOS.size()); + task.setExecNormalNum(successCount + failCount); + task.setExecAbnormalNum(timeoutCount); + task.setRespRate((double) task.getExecNormalNum() / task.getDeviceNum()); + } + + PageInfoVO pageInfoVO = new PageInfoVO(pageResult.getTotal(), pageResult.getPageSize(), pageResult.getPageNum()); + + return AlarmTaskListRespDTO.builder() + .taskList(alarmTaskDOList) + .pageInfo(pageInfoVO) + .build(); + } + + @Override + public AlarmDeviceTaskListRespDTO alarmDeviceTaskList(AlarmDeviceTaskListReqDTO alarmDeviceTaskListReqDTO) { + Integer pageNum = alarmDeviceTaskListReqDTO.getPageNum(); + Integer pageSize = alarmDeviceTaskListReqDTO.getPageSize(); + List taskIdStrList = alarmDeviceTaskListReqDTO.getTaskIdStrList(); + + List result = getAggregatedAlarmDeviceTaskDOS(taskIdStrList); + // 执行中的不展示在详情页 + result = result.stream().filter(s -> !TaskStatusName.TASK_EXECUTING.getValue().equals(s.getStatus())).collect(Collectors.toList()); + + PageInfoVO pageInfoVO = new PageInfoVO((long) result.size(), pageSize, pageNum); + // 分页 + result = result.stream().skip((long) pageSize * (pageNum -1)).limit(pageSize).collect(Collectors.toList()); + + List deviceIdList = result.stream().map(AlarmDeviceTaskDO::getDeviceId).distinct().toList(); + // 查询设备信息 + List deviceList = deviceMapper.selectDeviceByDeviceIds(deviceIdList); + Map deviceDOMap = deviceList.stream().collect(Collectors.toMap(DeviceDO::getDeviceId, s -> s)); + List dtoList = result.stream() + .map(s -> { + AlarmDeviceTaskListRespDTO.AlarmDeviceTaskDTO dto = new AlarmDeviceTaskListRespDTO.AlarmDeviceTaskDTO(); + DeviceDO device = deviceDOMap.getOrDefault(s.getDeviceId(), new DeviceDO()); + dto.setDeviceName(device.getDeviceName()); + dto.setLatitude(device.getLatitude()); + dto.setLongitude(device.getLongitude()); + dto.setTaskState(s.getStatus()); + dto.setReportTime(s.getReportTime()); + dto.setDeviceId(s.getDeviceId()); + dto.setTaskId(s.getTaskId()); + + return dto; + }).toList(); + + return AlarmDeviceTaskListRespDTO.builder() + .pageInfo(pageInfoVO) + .deviceList(dtoList) + .build(); + } + + private List getAggregatedAlarmDeviceTaskDOS(List taskIdStrList) { + if (taskIdStrList.isEmpty()) { + return new ArrayList<>(); + } + List alarmDeviceTaskList = alarmDeviceTaskMapper.selectAllByTaskIdStr(taskIdStrList); + // 刷新每个device的任务状态 + Map> deviceTaskMap = alarmDeviceTaskList.stream() + .collect(Collectors.groupingBy(s -> String.format("%s-%s", s.getTaskId(), s.getDeviceId()))); + List result = new LinkedList<>(); + for (Map.Entry> entry : deviceTaskMap.entrySet()) { + List relatedDOS = entry.getValue(); + if (relatedDOS.size() == 1) { + result.addAll(relatedDOS); + continue; + } + // 有一个成功的,视为全部成功 + boolean hasSucceedDeviceTask = relatedDOS.stream().anyMatch(s -> TaskStatusName.TASK_OK.getValue().equals(s.getStatus())); + // 所有都超时的,视为超时 + boolean allTimeout = relatedDOS.stream().allMatch(s -> TaskStatusName.TASK_TIMEOUT.getValue().equals(s.getStatus())); + boolean allExecuting = relatedDOS.stream().allMatch(s -> TaskStatusName.TASK_EXECUTING.getValue().equals(s.getStatus())); + AlarmDeviceTaskDO resultDO = relatedDOS.get(0); + if (hasSucceedDeviceTask) { + resultDO.setStatus(TaskStatusName.TASK_OK.getValue()); + } else if (allTimeout) { + resultDO.setStatus(TaskStatusName.TASK_TIMEOUT.getValue()); + } else if (allExecuting) { + resultDO.setStatus(TaskStatusName.TASK_EXECUTING.getValue()); + } else { + resultDO.setStatus(TaskStatusName.TASK_ERROR.getValue()); + } + result.add(resultDO); + } + + return result; + } + + private PageInfo queryAlarmTaskDOList(List taskIdStrList, int page, int nItems) { + PageHelper.startPage(page, nItems); + List alarmTaskList = alarmTaskMapper.selectAllByTaskIdStr(taskIdStrList); + PageInfo pgInfo = new PageInfo<>(alarmTaskList); + PageHelper.clearPage(); + return pgInfo; + } private static List getAlarmDeviceTaskDOS(AlarmTaskReqDTO alarmTaskReqDTO, DeviceInfoDTO deviceInfo, Long taskId) { List alarmDeviceTaskDOS = new ArrayList<>(); List deviceIds = deviceInfo.getDeviceIds(); diff --git a/src/main/java/com/zjyr/beidouservice/service/impl/DeviceServiceImpl.java b/src/main/java/com/zjyr/beidouservice/service/impl/DeviceServiceImpl.java index 2757e6b..43af535 100644 --- a/src/main/java/com/zjyr/beidouservice/service/impl/DeviceServiceImpl.java +++ b/src/main/java/com/zjyr/beidouservice/service/impl/DeviceServiceImpl.java @@ -16,6 +16,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import java.util.Set; import java.util.stream.Collectors; @@ -57,13 +58,13 @@ public class DeviceServiceImpl implements DeviceService { public DeviceRespDTO getDeviceByDeviceId(DeviceSearchDTO deviceSearchDTO) { log.info("get device info by deviceId: [{}]", deviceSearchDTO.getDeviceId()); - DeviceDO deviceDO = deviceMapper.selectDeviceByDeviceId(deviceSearchDTO.getDeviceId()); - if (deviceDO == null) { + List deviceDOList = deviceMapper.selectDeviceByDeviceIds(Collections.singletonList(deviceSearchDTO.getDeviceId())); + if (deviceDOList.isEmpty()) { log.warn("根据deviceId未查找到设备信息"); return null; } - return DeviceRespDTO.fromDO(deviceDO); + return DeviceRespDTO.fromDO(deviceDOList.get(0)); } @Override diff --git a/src/main/resources/mappers/AlarmDevideTaskMapper.xml b/src/main/resources/mappers/AlarmDevideTaskMapper.xml index cf3bb07..9897e40 100644 --- a/src/main/resources/mappers/AlarmDevideTaskMapper.xml +++ b/src/main/resources/mappers/AlarmDevideTaskMapper.xml @@ -50,5 +50,17 @@ + + \ No newline at end of file diff --git a/src/main/resources/mappers/AlarmTaskMapper.xml b/src/main/resources/mappers/AlarmTaskMapper.xml index b1e54e2..fcf627a 100644 --- a/src/main/resources/mappers/AlarmTaskMapper.xml +++ b/src/main/resources/mappers/AlarmTaskMapper.xml @@ -44,5 +44,17 @@ + + \ No newline at end of file diff --git a/src/main/resources/mappers/DeviceMapper.xml b/src/main/resources/mappers/DeviceMapper.xml index 3c2967f..b672646 100644 --- a/src/main/resources/mappers/DeviceMapper.xml +++ b/src/main/resources/mappers/DeviceMapper.xml @@ -48,11 +48,13 @@ - select * from device - where device_id = #{deviceId} + where device_id in + + #{item} +