package com.whyc.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.whyc.dto.Response; import com.whyc.mapper.DevDfuStateMapper; import com.whyc.pojo.DevDfuState; import com.whyc.util.ThreadLocalUtil; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.Date; import java.util.List; @Service public class DevDfuStateService { @Resource private DevDfuStateMapper mapper; public Response getPage(int pageNum, int pageSize) { PageHelper.startPage(pageNum, pageSize); QueryWrapper query = Wrappers.query(); query.orderByDesc("recordTime"); List list = mapper.selectList(query); list.forEach(item -> { String recordTimeStr = item.getRecordTime(); Date recordTime = ThreadLocalUtil.parse(recordTimeStr, 0); //recordTime与当前时间对比,如果超过30s,则设置online为离线 if (recordTime.getTime() + 30000 < new Date().getTime()) { item.setOnline(0); }else{ item.setOnline(1); } }); PageInfo pageInfo = new PageInfo<>(list); return new Response().set(1, pageInfo); } }