Package com.bytedesk.call.cdr
Interface CallCdrRepository
- All Superinterfaces:
org.springframework.data.repository.CrudRepository<CallCdrEntity,
,Long> org.springframework.data.jpa.repository.JpaRepository<CallCdrEntity,
,Long> org.springframework.data.jpa.repository.JpaSpecificationExecutor<CallCdrEntity>
,org.springframework.data.repository.ListCrudRepository<CallCdrEntity,
,Long> org.springframework.data.repository.ListPagingAndSortingRepository<CallCdrEntity,
,Long> org.springframework.data.repository.PagingAndSortingRepository<CallCdrEntity,
,Long> org.springframework.data.repository.query.QueryByExampleExecutor<CallCdrEntity>
,org.springframework.data.repository.Repository<CallCdrEntity,
Long>
public interface CallCdrRepository
extends org.springframework.data.jpa.repository.JpaRepository<CallCdrEntity,Long>, org.springframework.data.jpa.repository.JpaSpecificationExecutor<CallCdrEntity>
Call CDR仓库接口
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.springframework.data.jpa.repository.JpaSpecificationExecutor
org.springframework.data.jpa.repository.JpaSpecificationExecutor.SpecificationFluentQuery<T extends Object>
-
Method Summary
Modifier and TypeMethodDescriptionlong
countAnsweredCallsInTimeRange
(ZonedDateTime startTime, ZonedDateTime endTime) 统计指定时间范围内成功接通的通话数量long
countByCallerNumber
(String callerNumber) 根据主叫号码统计通话次数long
countByDestinationNumber
(String destinationNumber) 根据被叫号码统计通话次数long
countCallsInTimeRange
(ZonedDateTime startTime, ZonedDateTime endTime) 统计指定时间范围内的通话数量void
deleteByStartStampBefore
(ZonedDateTime cutoffDate) 删除指定日期之前的CDR记录boolean
existsByUid
(String uid) 检查UUID是否存在findByAccountcode
(String accountcode) 根据账户代码查找CDR记录查找成功接通的通话记录findByCallerIdNumber
(String callerIdNumber) 根据主叫号码查找CDR记录findByCallerOrDestination
(String number) 根据主叫或被叫号码查找CDR记录findByDestinationNumber
(String destinationNumber) 根据被叫号码查找CDR记录findByDirection
(String direction) 根据通话方向查找CDR记录findByHangupCause
(String hangupCause) 根据挂断原因查找CDR记录findByOrgUid
(String orgUid) 查找有录音文件的通话记录findByStartStampBetween
(ZonedDateTime startTime, ZonedDateTime endTime) 查找指定时间范围内的CDR记录根据UID查找CDR记录org.springframework.data.domain.Page<CallCdrEntity>
findCallHistory
(String number, org.springframework.data.domain.Pageable pageable) 查找指定号码的通话历史(分页)org.springframework.data.domain.Page<CallCdrEntity>
findRecentCalls
(org.springframework.data.domain.Pageable pageable) 查找最近的通话记录long
sumBillSecInTimeRange
(ZonedDateTime startTime, ZonedDateTime endTime) 计算指定时间范围内的总通话时长Methods inherited from interface org.springframework.data.repository.CrudRepository
count, delete, deleteAll, deleteAll, deleteAllById, deleteById, existsById, findById, save
Methods inherited from interface org.springframework.data.jpa.repository.JpaRepository
deleteAllByIdInBatch, deleteAllInBatch, deleteAllInBatch, deleteInBatch, findAll, findAll, flush, getById, getOne, getReferenceById, saveAllAndFlush, saveAndFlush
Methods inherited from interface org.springframework.data.jpa.repository.JpaSpecificationExecutor
count, delete, exists, findAll, findAll, findAll, findAll, findBy, findOne
Methods inherited from interface org.springframework.data.repository.ListCrudRepository
findAll, findAllById, saveAll
Methods inherited from interface org.springframework.data.repository.ListPagingAndSortingRepository
findAll
Methods inherited from interface org.springframework.data.repository.PagingAndSortingRepository
findAll
Methods inherited from interface org.springframework.data.repository.query.QueryByExampleExecutor
count, exists, findAll, findBy, findOne
-
Method Details
-
findByUid
根据UID查找CDR记录 -
findByOrgUid
-
findByCallerIdNumber
根据主叫号码查找CDR记录 -
findByDestinationNumber
根据被叫号码查找CDR记录 -
findByAccountcode
根据账户代码查找CDR记录 -
findByDirection
根据通话方向查找CDR记录 -
findByHangupCause
根据挂断原因查找CDR记录 -
findByStartStampBetween
查找指定时间范围内的CDR记录 -
findByAnswerStampIsNotNull
List<CallCdrEntity> findByAnswerStampIsNotNull()查找成功接通的通话记录 -
findByRecordFileIsNotNull
List<CallCdrEntity> findByRecordFileIsNotNull()查找有录音文件的通话记录 -
findByCallerOrDestination
@Query("SELECT c FROM CallCdrEntity c WHERE c.callerIdNumber = :number OR c.destinationNumber = :number") List<CallCdrEntity> findByCallerOrDestination(@Param("number") String number) 根据主叫或被叫号码查找CDR记录 -
findCallHistory
@Query("SELECT c FROM CallCdrEntity c WHERE c.callerIdNumber = :number OR c.destinationNumber = :number ORDER BY c.startStamp DESC") org.springframework.data.domain.Page<CallCdrEntity> findCallHistory(@Param("number") String number, org.springframework.data.domain.Pageable pageable) 查找指定号码的通话历史(分页) -
countCallsInTimeRange
@Query("SELECT COUNT(c) FROM CallCdrEntity c WHERE c.startStamp BETWEEN :startTime AND :endTime") long countCallsInTimeRange(@Param("startTime") ZonedDateTime startTime, @Param("endTime") ZonedDateTime endTime) 统计指定时间范围内的通话数量 -
countAnsweredCallsInTimeRange
@Query("SELECT COUNT(c) FROM CallCdrEntity c WHERE c.startStamp BETWEEN :startTime AND :endTime AND c.answerStamp IS NOT NULL") long countAnsweredCallsInTimeRange(@Param("startTime") ZonedDateTime startTime, @Param("endTime") ZonedDateTime endTime) 统计指定时间范围内成功接通的通话数量 -
sumBillSecInTimeRange
@Query("SELECT COALESCE(SUM(c.billsec), 0) FROM CallCdrEntity c WHERE c.startStamp BETWEEN :startTime AND :endTime AND c.answerStamp IS NOT NULL") long sumBillSecInTimeRange(@Param("startTime") ZonedDateTime startTime, @Param("endTime") ZonedDateTime endTime) 计算指定时间范围内的总通话时长 -
findRecentCalls
@Query("SELECT c FROM CallCdrEntity c ORDER BY c.startStamp DESC") org.springframework.data.domain.Page<CallCdrEntity> findRecentCalls(org.springframework.data.domain.Pageable pageable) 查找最近的通话记录 -
countByCallerNumber
@Query("SELECT COUNT(c) FROM CallCdrEntity c WHERE c.callerIdNumber = :callerNumber") long countByCallerNumber(@Param("callerNumber") String callerNumber) 根据主叫号码统计通话次数 -
countByDestinationNumber
@Query("SELECT COUNT(c) FROM CallCdrEntity c WHERE c.destinationNumber = :destinationNumber") long countByDestinationNumber(@Param("destinationNumber") String destinationNumber) 根据被叫号码统计通话次数 -
existsByUid
检查UUID是否存在 -
deleteByStartStampBefore
删除指定日期之前的CDR记录
-