package com.tievd.jyz.mapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.tievd.jyz.dto.DeviceDTO;
|
import com.tievd.jyz.dto.DeviceStatusStatDTO;
|
import com.tievd.jyz.entity.Device;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Select;
|
|
/**
|
* Device
|
*
|
* @author cube
|
* @version V2.0.0
|
* @since 2023-02-27
|
*/
|
public interface DeviceMapper extends BaseMapper<Device> {
|
|
/**
|
* 自定义分页查询
|
*
|
* @param page
|
* @param queryWrapper
|
* @return
|
*/
|
@Select("select d.*,count(c.id) cameraCount,count(if(c.status = 2, 1, null)) cameraOnlineCount from ( select * from t_device ${ew.customSqlSegment} ) d left join t_camera c on c.device_id = d.id group by d.id")
|
IPage<DeviceDTO> tables(Page page, @Param("ew") QueryWrapper queryWrapper);
|
|
/** 在线状态统计 */
|
@Select("select count(if(tc.status =1,1,null)) onlineCount, count(if(tc.status =2,1,null)) offlineCount from t_device tc where tc.org_code like concat(#{orgCode},'%')")
|
DeviceStatusStatDTO cameraStatusStat(String orgCode);
|
}
|