| | |
| | | sTime?.let { andGreaterThanOrEqualTo("dataTime", it) } |
| | | eTime?.let { andLessThanOrEqualTo("dataTime", it) } |
| | | } |
| | | orderBy("dataTime").desc() |
| | | orderBy("dataTime").apply { |
| | | // 当请求接口不传递起始时间,默认获取最新的数据 |
| | | if (startTime == null && endTime == null) { |
| | | desc() |
| | | } |
| | | } |
| | | }).forEach { |
| | | result.add(DataVo( |
| | | dateFormatter.format(it.dataTime), |
| | |
| | | it.longitude.toDouble(), it.latitude.toDouble() |
| | | )) |
| | | } |
| | | // result.reverse() |
| | | if (startTime == null && endTime == null) { |
| | | result.reverse() |
| | | } |
| | | return BaseResponse(true, head = DataHead(pageInfo.pageNum, pageInfo.pages), data = result) |
| | | } |
| | | |
| | | override fun getNextData(deviceCode: String, updateTime: String, page: Int?, perPage: Int?): BaseResponse<List<DataVo>> { |
| | | val _perPage = perPage ?: 60 |
| | | val _page = page ?: 1 |
| | | val pageInfo = PageHelper.startPage<RealTimeData>(_page, _perPage) |
| | | val result = mutableListOf<DataVo>() |
| | | realTimeDataMapper.selectByExample(Example(RealTimeData::class.java).apply { |
| | | createCriteria().andEqualTo("deviceCode", deviceCode) |
| | | .andGreaterThan("dataTime", updateTime) |
| | | orderBy("dataTime") |
| | | }).forEach { |
| | | result.add(DataVo( |
| | | dateFormatter.format(it.dataTime), |
| | | it.deviceCode, |
| | | GsonUtils.parserJsonToArrayBeans(it.factors, AirData::class.java), |
| | | it.longitude.toDouble(), it.latitude.toDouble() |
| | | )) |
| | | } |
| | | return BaseResponse(true, head = DataHead(pageInfo.pageNum, pageInfo.pages), data = result) |
| | | } |
| | | } |