package com.mosty.qwzx.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwCjbsSaveDTO;
import com.mosty.base.model.dto.qwzx.TbQwCjbsUpdateDTO;
import com.mosty.base.model.entity.qwzx.TbQwCjbs;
import com.mosty.base.model.query.qwzx.TbQwCjbsQuery;

import java.util.List;

/**
 * 勤务管理处警报送表Service
 */
public interface TbQwCjbsService {

    /**
     * 查询单条（根据主键ID）
     * @param id 主键ID
     * @return 处警报送信息
     */
    TbQwCjbs selectById(String id);

    /**
     * 查询今日数量
     * @param ssbmdm 所属部门代码
     * @param isChild 是否包含下级
     * @return 今日数量
     */
    Integer selectCountToday(String ssbmdm, String isChild);

    /**
     * 查询分页
     * @param query 处警报送查询对象
     * @return 处警报送信息分页列表
     */
    IPage<TbQwCjbs> selectPage(TbQwCjbsQuery query);

    /**
     * 查询列表
     * @param query 处警报送查询对象
     * @return 处警报送信息列表
     */
    List<TbQwCjbs> selectList(TbQwCjbsQuery query);

    /**
     * 保存单条
     * @param dto 处警报送保存对象
     * @return 处警报送主键ID
     */
    String saveEntity(TbQwCjbsSaveDTO dto);

    /**
     * 修改单条
     * @param dto 处警报送修改对象
     * @return 处警报送主键ID
     */
    String updateEntity(TbQwCjbsUpdateDTO dto);

    /**
     * 注销单条
     * @param entity 处警报送对象实体
     * @return 注销条数
     */
    int cancelEntity(TbQwCjbs entity);

}
