123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- package com.zy.bms.service;
- import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import com.zy.bms.common.io.wechat.DeviceHistoryIO;
- import com.zy.bms.common.vo.LocationHistoryVo;
- import com.zy.bms.mapper.DeviceLocationMapper;
- import com.zy.bms.model.Location;
- import com.zy.bms.model.LatestLocation;
- import com.zy.bms.utils.BeanUtil;
- import org.springframework.stereotype.Service;
- import javax.annotation.Resource;
- import java.util.List;
- /**
- * 设备位置信息相关
- *
- * @author chenyi
- * Create on 2020/4/10
- */
- @Service
- public class DeviceLocationService extends ServiceImpl<DeviceLocationMapper, Location> {
- @Resource
- private LatestLocationService latestLocationService;
- /**
- * 保存位置信息
- */
- public void saveLocation(Location entity) {
- save(entity);
- //更新最新的位置信息
- QueryWrapper<LatestLocation> queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("deviceId", entity.getDeviceId());
- LatestLocation latestLocation = BeanUtil.cast(entity, LatestLocation.class);
- latestLocationService.saveOrUpdate(latestLocation, queryWrapper);
- }
- /**
- * 获取设备的最新位置信息
- *
- * @param deviceId 设备ID
- */
- public LatestLocation getLocation(String deviceId) {
- QueryWrapper<LatestLocation> queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("deviceId", deviceId);
- return latestLocationService.getOne(queryWrapper);
- }
- /**
- * 查看设备历史轨迹
- *
- * @param io 查询入参
- */
- public List<LocationHistoryVo> getHistory(DeviceHistoryIO io) {
- return baseMapper.getHistory(io);
- }
- }
|