package com.mosty.qwzx.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwXfbbStartOrEndBbDto;
import com.mosty.base.model.entity.qwzx.TbQwZbbb;
import com.mosty.base.model.query.qwzx.TbQwZbbbQuery;
import com.mosty.base.model.vo.qwzx.TbQwZbbbVo;
import io.swagger.annotations.ApiOperation;

import java.util.List;
import java.util.Map;

/**
 * @author dw
 * @since 2022-10-09
 */
public interface TbQwZbbbService {

    @ApiOperation("值班报备新增")
    String addQwzb(TbQwZbbbVo zbVo);

    @ApiOperation("查询勤务装备")
    IPage<TbQwZbbbVo> queryList(TbQwZbbbQuery zb);

    @ApiOperation("根据ID查询")
    TbQwZbbbVo selectById(String id);

    @ApiOperation("删除勤务装备")
    boolean deleteBatch(List<String> list);

    @ApiOperation("分页查询值班报备列表")
    IPage<TbQwZbbbVo> queryPage(TbQwZbbbQuery zb);

    @ApiOperation("APP获取我当前的报备信息")
    TbQwZbbb getMyBbInfoToday();

    @ApiOperation("开始、结束报备")
    Integer startOrEndBb(TbQwXfbbStartOrEndBbDto dto);

    @ApiOperation("自动结束报备")
    void authJsbb();

    @ApiOperation("APP根据时间统计报备数量")
    Map<String, Object> getBbCountByDept(String time);

    @ApiOperation("APP根据时间统计报备列表")
    List<Map<String, Object>> getBbListByDept(String time);

    @ApiOperation("查询值班领导")
    Map<String, Object> getZbld();

    @ApiOperation("查询值班领导")
    Map<String, Object> getJlByBm(String time, String ssbmdm);
}
