package com.bonus.sgzb.base.mapper;

import com.bonus.sgzb.base.domain.BmUnitType;
import com.bonus.sgzb.system.api.domain.SysDept;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * 单位类型bm_unit_type（同数据字典合并）Mapper接口
 * 
 * @author bonus
 * @date 2023-12-11
 */
@Mapper
public interface BmUnitTypeMapper 
{
    /**
     * 查询单位类型bm_unit_type（同数据字典合并）
     * 
     * @param typeId 单位类型bm_unit_type（同数据字典合并）主键
     * @return 单位类型bm_unit_type（同数据字典合并）
     */
    public BmUnitType selectBmUnitTypeByTypeId(String typeId);


    public SysDept selectSysDeptList(String deptId);


    public SysDept selectSysDeptTree();
    /**
     * 查询单位类型bm_unit_type（同数据字典合并）列表
     * 
     * @param bmUnitType 单位类型bm_unit_type（同数据字典合并）
     * @return 单位类型bm_unit_type（同数据字典合并）集合
     */
    public List<BmUnitType> selectBmUnitTypeList(BmUnitType bmUnitType);

    /**
     * 查询单位类型bm_unit_type（同数据字典合并）列表
     *
     * @param bmUnitType 单位类型bm_unit_type（同数据字典合并）
     * @return 单位类型bm_unit_type（同数据字典合并）集合
     */
    public List<BmUnitType> selectTypeList(BmUnitType bmUnitType);
    /**
     * 新增单位类型bm_unit_type（同数据字典合并）
     * 
     * @param bmUnitType 单位类型bm_unit_type（同数据字典合并）
     * @return 结果
     */
    public int insertBmUnitType(BmUnitType bmUnitType);

    /**
     * 修改单位类型bm_unit_type（同数据字典合并）
     * 
     * @param bmUnitType 单位类型bm_unit_type（同数据字典合并）
     * @return 结果
     */
    public int updateBmUnitType(BmUnitType bmUnitType);

    /**
     * 修改单位状态bm_unit_type（同数据字典合并）
     *
     * @param typeId 单位类型bm_unit_type（同数据字典合并）
     * @return 结果
     */
    public int update(String typeId);
    /**
     * 修改单位状态bm_unit_type（同数据字典合并）
     *
     * @param typeId 单位类型bm_unit_type（同数据字典合并）
     * @return 结果
     */
    public int updates(String typeId);
    /**
     * 删除单位类型bm_unit_type（同数据字典合并）
     * 
     * @param typeId 单位类型bm_unit_type（同数据字典合并）主键
     * @return 结果
     */
    public int deleteBmUnitTypeByTypeId(Long typeId);

    /**
     * 批量删除单位类型bm_unit_type（同数据字典合并）
     * 
     * @param typeIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteBmUnitTypeByTypeIds(Long[] typeIds);
}
