From 22d2b8ed8d2e676564c60e09f5dd99e02a673107 Mon Sep 17 00:00:00 2001 From: "1378012178@qq.com" <1378012178@qq.com> Date: Fri, 24 Oct 2025 09:20:56 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9Epad=E7=AB=AF=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=EF=BC=9A=E6=B8=A9=E6=B9=BF=E5=BA=A6=E8=AE=A1-?= =?UTF-8?q?=E8=AE=BE=E5=A4=87=E4=BF=A1=E6=81=AF=E6=9F=A5=E8=AF=A2=E3=80=81?= =?UTF-8?q?=E6=8A=84=E8=A1=A8=E3=80=81=E6=8A=A5=E4=BF=AE=E3=80=81=E6=8A=84?= =?UTF-8?q?=E8=A1=A8=E6=97=A5=E5=BF=97=E6=9F=A5=E8=AF=A2=E3=80=81=E5=91=8A?= =?UTF-8?q?=E8=AD=A6=E6=97=A5=E5=BF=97=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/IotApiRequestLogApi.java | 3 + .../api/ElectricityMeterApi.java | 3 + .../iot/humiddevice/api/HumidDeviceApi.java | 106 ++++++++++++++++++ .../modules/pad/iot/water/api/WaterApi.java | 3 + .../java/com/nu/entity/HumidAlarmEntity.java | 78 +++++++++++++ .../humiddevice/api/IHumidAlarmApi.java | 11 ++ .../humiddevice/api/IHumidDeviceApi.java | 16 +++ .../service/impl/HumidAlarmServiceImpl.java | 88 ++++++++++----- .../service/impl/HumidDeviceServiceImpl.java | 70 +++++++++++- 9 files changed, 346 insertions(+), 32 deletions(-) create mode 100644 nursing-unit-api/src/main/java/com/nu/modules/pad/iot/humiddevice/api/HumidDeviceApi.java create mode 100644 nursing-unit-common/src/main/java/com/nu/entity/HumidAlarmEntity.java create mode 100644 nursing-unit-iot/nu-iot-api/nu-iot-local-api/src/main/java/com/nu/modules/humiddevice/api/IHumidAlarmApi.java create mode 100644 nursing-unit-iot/nu-iot-api/nu-iot-local-api/src/main/java/com/nu/modules/humiddevice/api/IHumidDeviceApi.java diff --git a/nursing-unit-api/src/main/java/com/nu/modules/pad/iot/apiRequestLog/api/IotApiRequestLogApi.java b/nursing-unit-api/src/main/java/com/nu/modules/pad/iot/apiRequestLog/api/IotApiRequestLogApi.java index acdb19df..7182c5eb 100644 --- a/nursing-unit-api/src/main/java/com/nu/modules/pad/iot/apiRequestLog/api/IotApiRequestLogApi.java +++ b/nursing-unit-api/src/main/java/com/nu/modules/pad/iot/apiRequestLog/api/IotApiRequestLogApi.java @@ -13,6 +13,9 @@ import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletRequest; +/** + * 电表、水表日志 + */ @RestController @RequestMapping("/api/iot/requestLog") public class IotApiRequestLogApi { diff --git a/nursing-unit-api/src/main/java/com/nu/modules/pad/iot/electricityMeter/api/ElectricityMeterApi.java b/nursing-unit-api/src/main/java/com/nu/modules/pad/iot/electricityMeter/api/ElectricityMeterApi.java index 91e86eba..f651a5b5 100644 --- a/nursing-unit-api/src/main/java/com/nu/modules/pad/iot/electricityMeter/api/ElectricityMeterApi.java +++ b/nursing-unit-api/src/main/java/com/nu/modules/pad/iot/electricityMeter/api/ElectricityMeterApi.java @@ -11,6 +11,9 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; +/** + * 智能电表 + */ @RestController @RequestMapping("/api/iot/electricityMeter") public class ElectricityMeterApi { diff --git a/nursing-unit-api/src/main/java/com/nu/modules/pad/iot/humiddevice/api/HumidDeviceApi.java b/nursing-unit-api/src/main/java/com/nu/modules/pad/iot/humiddevice/api/HumidDeviceApi.java new file mode 100644 index 00000000..b90ed984 --- /dev/null +++ b/nursing-unit-api/src/main/java/com/nu/modules/pad/iot/humiddevice/api/HumidDeviceApi.java @@ -0,0 +1,106 @@ +package com.nu.modules.pad.iot.humiddevice.api; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.nu.entity.HumidAlarmEntity; +import com.nu.entity.HumidDeviceEntity; +import com.nu.modules.humiddevice.api.IHumidAlarmApi; +import com.nu.modules.humiddevice.api.IHumidDeviceApi; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletRequest; + +/** + * 温湿度计 + */ +@RestController +@RequestMapping("/api/iot/humidDevice") +public class HumidDeviceApi { + + @Autowired + private IHumidDeviceApi humidDeviceApi; + @Autowired + private IHumidAlarmApi humidAlarmApi; + + /** + * 分页列表查询 + * + * @param humidDeviceEntity + * @param pageNo + * @param pageSize + * @param req + * @return + */ + @GetMapping(value = "/list") + public Result> queryPageList(HumidDeviceEntity humidDeviceEntity, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + + return Result.ok(humidDeviceApi.list(humidDeviceEntity, pageNo, pageSize, req)); + } + + /** + * 抄表 + * + * @param humidDeviceEntity + * @return + */ + @GetMapping(value = "/updateDeviceRealTime") + public Result updateDeviceRealTime(HumidDeviceEntity humidDeviceEntity) { + String result = humidDeviceApi.updateDeviceRealTime(humidDeviceEntity); + if (!result.equals("")) { + return Result.error("抄表失败:" + result); + } + return Result.OK("抄表成功"); + } + + /** + * 报修 + */ + @AutoLog(value = "设备报修") + @ApiOperation(value = "设备报修", notes = "设备报修") + @RequestMapping(value = "/baoxiu", method = {RequestMethod.PUT, RequestMethod.POST}) + public Result baoxiu(@RequestBody HumidDeviceEntity humidDeviceEntity) { + humidDeviceApi.baoxiu(humidDeviceEntity); + return Result.OK("操作成功!"); + } + + /** + * 抄表日志 + * + * @param humidDeviceEntity + * @param pageNo + * @param pageSize + * @param req + * @return + */ + @GetMapping(value = "/logList") + public Result> queryLogPageList(HumidDeviceEntity humidDeviceEntity, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + return Result.ok(humidDeviceApi.queryLogPageList(humidDeviceEntity, pageNo, pageSize, req)); + } + + /** + * 警告日志 + * + * @param humidAlarmEntity + * @param pageNo + * @param pageSize + * @param req + * @return + */ + @GetMapping(value = "/jglist") + public Result> queryPageList(HumidAlarmEntity humidAlarmEntity, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + return Result.OK(humidAlarmApi.list(humidAlarmEntity, pageNo, pageSize, req)); + } +} diff --git a/nursing-unit-api/src/main/java/com/nu/modules/pad/iot/water/api/WaterApi.java b/nursing-unit-api/src/main/java/com/nu/modules/pad/iot/water/api/WaterApi.java index b07340bc..e1e7c77f 100644 --- a/nursing-unit-api/src/main/java/com/nu/modules/pad/iot/water/api/WaterApi.java +++ b/nursing-unit-api/src/main/java/com/nu/modules/pad/iot/water/api/WaterApi.java @@ -11,6 +11,9 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; +/** + * 智能水表 + */ @RestController @RequestMapping("/api/iot/water") public class WaterApi { diff --git a/nursing-unit-common/src/main/java/com/nu/entity/HumidAlarmEntity.java b/nursing-unit-common/src/main/java/com/nu/entity/HumidAlarmEntity.java new file mode 100644 index 00000000..88ad4886 --- /dev/null +++ b/nursing-unit-common/src/main/java/com/nu/entity/HumidAlarmEntity.java @@ -0,0 +1,78 @@ +package com.nu.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecgframework.poi.excel.annotation.Excel; + +import java.io.Serializable; +import java.util.Date; + +/** + *

Class:易维联-温湿度计告警Entity + *

功能描述:功能描述 + */ +@Data +@TableName("nu_iot_yiweilian_humid_alarm") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="nu_iot_yiweilian_humid_alarm对象", description="易维联-温湿设备告警") +public class HumidAlarmEntity implements Serializable { + private static final long serialVersionUID = 1L; + + @TableId(type = IdType.AUTO) + @ApiModelProperty(value = "主键") + private Integer id; + @Excel(name = "设备SN号", width = 15) + @ApiModelProperty(value = "设备SN号") + private String sn; + @Excel(name = "告警ID", width = 15) + @ApiModelProperty(value = "告警ID") + private String alarmId; + @Excel(name = "告警状态ID", width = 15) + @ApiModelProperty(value = "告警状态ID") + private String wrId; + @Excel(name = "告警数据", width = 15) + @ApiModelProperty(value = "告警数据") + private String wrData; + @Excel(name = "告警内容", width = 15) + @ApiModelProperty(value = "告警内容") + private String wrContent; + @Excel(name = "告警记录时间", width = 15) + @ApiModelProperty(value = "告警记录时间") + private String wrDate; + @Excel(name = "清除告警ID", width = 15) + @ApiModelProperty(value = "清除告警ID") + private String clearAlarmId; + @Excel(name = "清除告警状态ID", width = 15) + @ApiModelProperty(value = "清除告警状态ID") + private String clearId; + @Excel(name = "清除告警数据", width = 15) + @ApiModelProperty(value = "清除告警数据") + private String clearData; + @Excel(name = "清除告警内容", width = 15) + @ApiModelProperty(value = "清除告警内容") + private String clearContent; + @Excel(name = "清除告警记录时间", width = 15) + @ApiModelProperty(value = "清除告警记录时间") + private String clearDate; + @Excel(name = "状态", width = 15) + @ApiModelProperty(value = "状态") + private String status; //状态 0告警 1清除 + + @TableField(exist = false) + private Date alarmStartTime; + @TableField(exist = false) + private Date alarmEndTime; + @TableField(exist = false) + private Date clearStartTime; + @TableField(exist = false) + private Date clearEndTime; + +} diff --git a/nursing-unit-iot/nu-iot-api/nu-iot-local-api/src/main/java/com/nu/modules/humiddevice/api/IHumidAlarmApi.java b/nursing-unit-iot/nu-iot-api/nu-iot-local-api/src/main/java/com/nu/modules/humiddevice/api/IHumidAlarmApi.java new file mode 100644 index 00000000..acbfeaf9 --- /dev/null +++ b/nursing-unit-iot/nu-iot-api/nu-iot-local-api/src/main/java/com/nu/modules/humiddevice/api/IHumidAlarmApi.java @@ -0,0 +1,11 @@ +package com.nu.modules.humiddevice.api; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.nu.entity.HumidAlarmEntity; +import com.nu.entity.HumidDeviceEntity; + +import javax.servlet.http.HttpServletRequest; + +public interface IHumidAlarmApi { + IPage list(HumidAlarmEntity humidAlarmEntity, Integer pageNo, Integer pageSize, HttpServletRequest req); +} diff --git a/nursing-unit-iot/nu-iot-api/nu-iot-local-api/src/main/java/com/nu/modules/humiddevice/api/IHumidDeviceApi.java b/nursing-unit-iot/nu-iot-api/nu-iot-local-api/src/main/java/com/nu/modules/humiddevice/api/IHumidDeviceApi.java new file mode 100644 index 00000000..c22c5307 --- /dev/null +++ b/nursing-unit-iot/nu-iot-api/nu-iot-local-api/src/main/java/com/nu/modules/humiddevice/api/IHumidDeviceApi.java @@ -0,0 +1,16 @@ +package com.nu.modules.humiddevice.api; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.nu.entity.HumidDeviceEntity; + +import javax.servlet.http.HttpServletRequest; + +public interface IHumidDeviceApi { + IPage list(HumidDeviceEntity humidDeviceEntity, Integer pageNo, Integer pageSize, HttpServletRequest req); + + String updateDeviceRealTime(HumidDeviceEntity humidDeviceEntity); + + void baoxiu(HumidDeviceEntity humidDeviceEntity); + + IPage queryLogPageList(HumidDeviceEntity humidDeviceEntity, Integer pageNo, Integer pageSize, HttpServletRequest req); +} diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/yiweilian/humid/service/impl/HumidAlarmServiceImpl.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/yiweilian/humid/service/impl/HumidAlarmServiceImpl.java index 3e3ad9fb..5993bc37 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/yiweilian/humid/service/impl/HumidAlarmServiceImpl.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/yiweilian/humid/service/impl/HumidAlarmServiceImpl.java @@ -5,81 +5,93 @@ import cn.hutool.json.JSONObject; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.nu.entity.HumidAlarmEntity; +import com.nu.modules.humiddevice.api.IHumidAlarmApi; import com.nu.modules.yiweilian.humid.entity.HumidAlarm; import com.nu.modules.yiweilian.humid.mapper.HumidAlarmMapper; import com.nu.modules.yiweilian.humid.service.IHumidAlarmService; import com.nu.modules.yiweilian.utils.YiweilianApi; import lombok.extern.slf4j.Slf4j; import org.jeecg.common.util.DateUtils; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; +import javax.servlet.http.HttpServletRequest; import java.util.*; +import java.util.stream.Collectors; @Slf4j @Service -public class HumidAlarmServiceImpl extends ServiceImpl implements IHumidAlarmService { +public class HumidAlarmServiceImpl extends ServiceImpl implements IHumidAlarmService, IHumidAlarmApi { @Autowired YiweilianApi yiweilianApi; + @Lazy + @Autowired + private HumidAlarmServiceImpl syncImpl; - public IPage findPage(Page page, HumidAlarm HumidAlarm){ - return baseMapper.findPage(page,HumidAlarm); + public IPage findPage(Page page, HumidAlarm HumidAlarm) { + return baseMapper.findPage(page, HumidAlarm); } /** * 获取告警数据 + * * @param HumidAlarm * @return */ @Override - public String getAlarm(HumidAlarm HumidAlarm){ - Map params = getParmas(0,1000,HumidAlarm); - return updateAlarm(params,HumidAlarm); + public String getAlarm(HumidAlarm HumidAlarm) { + Map params = getParmas(0, 1000, HumidAlarm); + return updateAlarm(params, HumidAlarm); } /** * 获取接口请求参数 + * * @param page * @param limit * @param HumidAlarm * @return */ - private Map getParmas(int page,int limit,HumidAlarm HumidAlarm){ + private Map getParmas(int page, int limit, HumidAlarm HumidAlarm) { Map params = new HashMap<>(); params.put("rows", limit); params.put("page", page); params.put("type", 2);//根据时间排序 1降序 2升序 ,此字段貌似不好使 - if(HumidAlarm.getSn()!=null&&!HumidAlarm.getSn().equals("")){ + if (HumidAlarm.getSn() != null && !HumidAlarm.getSn().equals("")) { params.put("sn", HumidAlarm.getSn()); } - if(HumidAlarm.getAlarmStartTime()!=null){ - params.put("startTime", DateUtils.formatDate(HumidAlarm.getAlarmStartTime(),"yyyy-MM-dd HH:mm:ss")); + if (HumidAlarm.getAlarmStartTime() != null) { + params.put("startTime", DateUtils.formatDate(HumidAlarm.getAlarmStartTime(), "yyyy-MM-dd HH:mm:ss")); } - if(HumidAlarm.getAlarmEndTime()!=null){ - params.put("endTime", DateUtils.formatDate(HumidAlarm.getAlarmEndTime(),"yyyy-MM-dd HH:mm:ss")); + if (HumidAlarm.getAlarmEndTime() != null) { + params.put("endTime", DateUtils.formatDate(HumidAlarm.getAlarmEndTime(), "yyyy-MM-dd HH:mm:ss")); } return params; } /** * 更新告警数据 + * * @param map * @param HumidAlarm * @return */ - private String updateAlarm(Map map,HumidAlarm HumidAlarm){ + private String updateAlarm(Map map, HumidAlarm HumidAlarm) { String errorMsg = ""; String responseStr = yiweilianApi.getWarningData(map); JSONObject jsonObject = new JSONObject(responseStr); Integer responseCode = jsonObject.getInt("code"); - if(responseCode.equals(0)){ + if (responseCode.equals(0)) { JSONObject dataObj = jsonObject.getJSONObject("data"); Integer count = dataObj.getInt("count"); Integer limit = dataObj.getInt("rows"); Integer page = dataObj.getInt("page"); JSONArray dataArr = dataObj.getJSONArray("dataList"); - if(dataArr.size()>0){ + if (dataArr.size() > 0) { List list = new ArrayList<>(); for (int i = 0; i < dataArr.size(); i++) { list.add(dataArr.getJSONObject(i)); @@ -91,10 +103,10 @@ public class HumidAlarmServiceImpl extends ServiceImpl100){ - wrIdint = wrIdint -100; - ha.setWrId(""+wrIdint); + if (wrIdint > 100) { + wrIdint = wrIdint - 100; + ha.setWrId("" + wrIdint); ha.setClearAlarmId(alarmId); ha.setClearId(wrId); ha.setClearData(wrData); ha.setClearContent(wrContent); ha.setClearDate(wrDate); baseMapper.updateAlarm(ha); - }else{ + } else { HumidAlarm entity = baseMapper.getHumidAlarm(ha); - if(entity == null){ + if (entity == null) { ha.setWrId(wrId); ha.setWrData(wrData); ha.setWrContent(wrContent); @@ -125,14 +137,36 @@ public class HumidAlarmServiceImpl extends ServiceImpl params = getParmas(page+1,limit,HumidAlarm); - errorMsg += updateAlarm(params,HumidAlarm); + if ((page + 1) * limit < count) { + Map params = getParmas(page + 1, limit, HumidAlarm); + errorMsg += updateAlarm(params, HumidAlarm); } - }else{ + } else { errorMsg = jsonObject.getStr("msg"); } return errorMsg; } + + @Override + public IPage list(HumidAlarmEntity humidAlarmEntity, Integer pageNo, Integer pageSize, HttpServletRequest req) { + HumidAlarm humidAlarm = new HumidAlarm(); + BeanUtils.copyProperties(humidAlarmEntity,humidAlarm); + Page page = new Page(pageNo, pageSize); + IPage pageList = syncImpl.findPage(page, humidAlarm); + + List entityList = pageList.getRecords().stream() + .map(alarm -> { + HumidAlarmEntity entity = new HumidAlarmEntity(); + BeanUtils.copyProperties(alarm, entity); + return entity; + }) + .collect(Collectors.toList()); + + // 构造新的分页对象 + IPage resultPage = new Page<>(pageList.getCurrent(), pageList.getSize(), pageList.getTotal()); + resultPage.setRecords(entityList); + + return resultPage; + } } diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/yiweilian/humid/service/impl/HumidDeviceServiceImpl.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/yiweilian/humid/service/impl/HumidDeviceServiceImpl.java index e529298d..4018f430 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/yiweilian/humid/service/impl/HumidDeviceServiceImpl.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/yiweilian/humid/service/impl/HumidDeviceServiceImpl.java @@ -10,6 +10,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.nu.dto.IotHumidDeviceMQDto; +import com.nu.entity.HumidDeviceEntity; +import com.nu.modules.humiddevice.api.IHumidDeviceApi; import com.nu.modules.syncLog.entity.SyncBizLog; import com.nu.modules.syncLog.service.ISyncBizLogService; import com.nu.modules.yiweilian.humid.entity.HumidDevice; @@ -21,20 +23,20 @@ import lombok.extern.slf4j.Slf4j; import me.zhyd.oauth.utils.UuidUtils; import org.apache.shiro.SecurityUtils; import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.system.vo.LoginUser; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; -import java.util.Calendar; -import java.util.Date; -import java.util.HashMap; -import java.util.Map; +import javax.servlet.http.HttpServletRequest; +import java.util.*; +import java.util.stream.Collectors; @Slf4j @Service -public class HumidDeviceServiceImpl extends ServiceImpl implements IHumidDeviceService { +public class HumidDeviceServiceImpl extends ServiceImpl implements IHumidDeviceService, IHumidDeviceApi { @Autowired YiweilianApi yiweilianApi; @@ -542,5 +544,63 @@ public class HumidDeviceServiceImpl extends ServiceImpl list(HumidDeviceEntity humidDeviceEntity, Integer pageNo, Integer pageSize, HttpServletRequest req) { + HumidDevice humidDevice = new HumidDevice(); + BeanUtils.copyProperties(humidDeviceEntity, humidDevice); + Page page = new Page(pageNo, pageSize); + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(humidDevice, req.getParameterMap()); + IPage pageList = syncImpl.findPage(page, humidDevice); + + List entityList = pageList.getRecords().stream() + .map(device -> { + HumidDeviceEntity entity = new HumidDeviceEntity(); + BeanUtils.copyProperties(device, entity); + return entity; + }) + .collect(Collectors.toList()); + + // 构造新的 IPage + IPage resultPage = new Page<>(pageList.getCurrent(), pageList.getSize(), pageList.getTotal()); + resultPage.setRecords(entityList); + + return resultPage; + } + + @Override + public String updateDeviceRealTime(HumidDeviceEntity humidDeviceEntity) { + HumidDevice humidDevice = new HumidDevice(); + BeanUtils.copyProperties(humidDeviceEntity, humidDevice); + return syncImpl.updateDeviceRealTime(humidDevice); + } + + @Override + public void baoxiu(HumidDeviceEntity humidDeviceEntity) { + HumidDevice humidDevice = new HumidDevice(); + BeanUtils.copyProperties(humidDeviceEntity, humidDevice); + syncImpl.baoxiu(humidDevice); + } + + @Override + public IPage queryLogPageList(HumidDeviceEntity humidDeviceEntity, Integer pageNo, Integer pageSize, HttpServletRequest req) { + HumidDevice humidDevice = new HumidDevice(); + BeanUtils.copyProperties(humidDeviceEntity, humidDevice); + Page page = new Page(pageNo, pageSize); + IPage pageList = syncImpl.findLogPage(page, humidDevice); + + List entityList = pageList.getRecords().stream() + .map(device -> { + HumidDeviceEntity entity = new HumidDeviceEntity(); + BeanUtils.copyProperties(device, entity); + return entity; + }) + .collect(Collectors.toList()); + + // 构造返回的分页对象 + IPage resultPage = new Page<>(pageList.getCurrent(), pageList.getSize(), pageList.getTotal()); + resultPage.setRecords(entityList); + + return resultPage; + } }