package com.ruoyi.cc.mapper; import java.util.List; import java.util.Set; import com.ruoyi.cc.domain.CcExtNum; import org.apache.ibatis.annotations.Param; /** * 分机信息Mapper接口 * * @author ruoyi * @date 2024-12-22 */ public interface CcExtNumMapper { /** * 查询分机信息 * * @param extId 分机信息主键 * @return 分机信息 */ public CcExtNum selectCcExtNumByExtId(Long extId); /** * 查询分机信息列表 * * @param ccExtNum 分机信息 * @return 分机信息集合 */ public List selectCcExtNumList(CcExtNum ccExtNum); /** * 新增分机信息 * * @param ccExtNum 分机信息 * @return 结果 */ public int insertCcExtNum(CcExtNum ccExtNum); /** * 修改分机信息 * * @param ccExtNum 分机信息 * @return 结果 */ public int updateCcExtNum(CcExtNum ccExtNum); /** * 删除分机信息 * * @param extId 分机信息主键 * @return 结果 */ public int deleteCcExtNumByExtId(Long extId); /** * 批量删除分机信息 * * @param extIds 需要删除的数据主键集合 * @return 结果 */ public int deleteCcExtNumByExtIds(String[] extIds); /** * 获取未分配的分机 */ List selectUnBindCcExtNumList(); int cleanCcExtNumByUserCode(String loginName); int updateCcExtNumByUserCode(CcExtNum extNum); List selectUnBindCcExtNumListPage(CcExtNum ccExtNum); int updateCompanyBindExtNum(CcExtNum extNum); int companyUnbindExtNum(List userCodeList); /** * 批量新增分机信息 * * @param extNumList 分机信息列表 * @return 结果 */ int batchInsertCcExtNum(List extNumList); /** * 查询大于指定值的所有分机号(用于批量生成分机号时优化性能) * * @param minExtNum 最小分机号(不包含) * @return 分机号集合 */ List selectExtNumsGreaterThan(Long minExtNum); /** * 查询当前最大的分机号 * * @return 最大分机号,如果没有数据则返回null */ Long selectMaxExtNum(); int companyBatchUnbindSipExt(@Param("extNums") Set extNums); /** * 销售归还公司分机 */ int updateUserCodeByLoginName(@Param("companyName") String companyName,@Param("loginName") String loginName); /** * 根据分机号批量更新绑定工号 * * @param list 分机号与工号集合 * @return 结果 */ int batchUpdateUserCodeByExtNum(@Param("list") List list); CcExtNum selectCcExtNumByUserCodeTwo(@Param("username") String username); }