package com.mosty.qwzx.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.*;
import com.mosty.base.model.entity.qwzx.TbQwJl;
import com.mosty.base.model.entity.qwzx.TbQwXfbb;
import com.mosty.base.model.entity.qwzx.TbQwXfpbZq;
import com.mosty.base.model.query.qwzx.TbQwJmxzSearchDto;
import com.mosty.base.model.query.qwzx.TbQwXfbbJmxzQuery;
import com.mosty.base.model.query.qwzx.TbQwXfbbQuery;
import com.mosty.base.model.query.qwzx.TbQwxfbbDkQuery;
import com.mosty.base.model.query.sjzx.XfbbQuery;
import com.mosty.base.model.query.sjzx.XfbbTjQuery;
import com.mosty.base.model.vo.qwzx.TbQwxfbbDkVO;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import java.util.Map;
/**
*
* 巡防报备表 服务类
*
*
* @author zengbo
* @since 2022-06-27
*/
public interface TbQwXfbbService {
@ApiOperation("查询巡防报备")
IPage queryList(TbQwXfbbQuery xfbb);
@ApiOperation("根据ID查询")
TbQwXfbbVo selectById(String id);
@ApiOperation("新增巡防报备")
String addXfbb(TbQwXfbbVo xfbb);
@ApiOperation("删除巡防报备")
boolean deleteBatch(List ids);
@ApiOperation("id删除")
boolean deleteById(String id);
@ApiOperation("查询巡组")
Map selectDeck();
@ApiOperation("查询巡组列表")
IPage selectDeckList(TbQwXfbbJmxzQuery dto);
@ApiOperation("查询周边巡组")
List selectNearbyDeck(TbQwXfbb tbQwXfbb);
@ApiOperation("查询巡防报备")
IPage queryPage(TbQwXfbbQuery xfbb);
@ApiOperation("开始、结束报备")
int startOrEndBb(TbQwXfbbStartOrEndBbDto dto);
@ApiOperation("大屏-计划街面巡组列表-分页")
IPage selectJhjmxzList(TbQwXzSearchDto dto);
@ApiOperation("大屏-实际街面巡组列表-分页")
IPage selectSjjmxzList(TbQwXzSearchDto dto);
@ApiOperation("大屏-街面力量-分页")
IPage selectJmllList(TbQwJmllSearchDto dto);
@ApiOperation("查询我今天的报备信息")
TbQwXfbb getMybbTodayNew(String bblx);
@ApiOperation("判断派出所、巡防区范围内是否有巡组")
List getFjbbByYsId(String ysid);
@ApiOperation("根据身份证号获取最后一次报备的数据")
TbQwXfbb getMybbLastBySfzh(String sfzh);
@ApiOperation("每半个小时查询已报备的状态,结束当前报备")
void authJsbb();
@ApiOperation("每周一凌晨结束特殊报备")
void authJsbbTs();
@ApiOperation("根据用户ID查询巡组下的人员列表")
List getJlxxByBbid(String id);
@ApiOperation("查询范围内的最近的巡组信息")
TbQwXfbb getBbxxByJi(TbQwXfbbQueryByJlDto dto);
@ApiOperation("app查询界面警力民警辅警数量")
Map selectMfjCount(String bbrq);
@ApiOperation("根据设备ID查询该设备所在的巡组")
List getBbList(String sbid);
@ApiOperation("根据车辆gpsID查询该设备所在的巡组")
List getClBbList(String sbid);
@ApiOperation("查询街面巡组")
IPage selectJmxz(TbQwJmxzSearchDto dto);
@ApiOperation("查询巡防报备打卡分页")
IPage selectXfbbDkPage(TbQwxfbbDkQuery query);
@ApiOperation("新增巡防报备打卡")
void addXfbbDk(TbQwXfbbDkDto dto);
@ApiOperation("统计巡防报备打卡数量")
Integer selectXfbbDkCount(String ssbmdm, String isChild);
@ApiOperation("判断当前位置是否再报备的巡防区内")
boolean isDdWz(TbQwXfbbDkWzDto dto);
@ApiOperation("根据ID查询报备信息")
TbQwXfbb getBbxxInfo(String id);
@ApiOperation("高新领导段-查询街面警力数量")
Map getJmjlCount();
@ApiOperation("计算巡防报备时长")
void checkXfbbSc();
@ApiOperation("查询巡组信息第三方")
IPage selectDeckListOther(TbQwXfbbJmxzQuery dto);
@ApiOperation("泸州态势统计-各区县巡防时长和里程")
Map getXfscAndLc(XfbbQuery dto);
@ApiOperation("查询部门的报备的数量")
Integer getBbCount(String ssbmdm, String time);
@ApiOperation("查询部门时长、里程")
Map getScLc(String ssbmdm, String time);
@ApiOperation("根据警情信息 修改巡防状态")
void updateXfzt();
@ApiOperation("大屏巡防报备统计")
Map xfbbTj();
@ApiOperation("部门统计")
IPage