ReviewRepository
@adamondo/backend / application/repositories/ReviewRepository
application/repositories/ReviewRepository
Interfaces
ReviewRepository
Defined in: src/application/repositories/ReviewRepository.ts:8
Repository contract for ReviewRepository, defining persistence capabilities required by services. Use cases:
- Decouple business logic from ORM details.
- Provide testable abstractions for read/write operations. Example: Implemented by Prisma repositories in src/infrastructure/prisma/repositories.
Methods
findMany()
findMany(
params):Promise<{results:any[];totalCount:number;count:number; }>
Defined in: src/application/repositories/ReviewRepository.ts:9
Parameters
params
userId
string
ownerType
string
offset
number
limit
number
Returns
Promise<{ results: any[]; totalCount: number; count: number; }>
findByListAndUser()
findByListAndUser(
params):Promise<any[]>
Defined in: src/application/repositories/ReviewRepository.ts:20
Parameters
params
listId
number
userId
string
limit
number
offset
number
Returns
Promise<any[]>
countRatingSummary()
countRatingSummary(
params):Promise<{reviewsCount:number;reviewsStarRating:number; }>
Defined in: src/application/repositories/ReviewRepository.ts:27
Parameters
params
listId
number
userId
string
Returns
Promise<{ reviewsCount: number; reviewsStarRating: number; }>
findByReservationAndUser()
findByReservationAndUser(
reservationId,userId):Promise<any>
Defined in: src/application/repositories/ReviewRepository.ts:32
Parameters
reservationId
number
userId
string
Returns
Promise<any>
findByReservationAndAuthor()
findByReservationAndAuthor(
reservationId,authorId):Promise<any>
Defined in: src/application/repositories/ReviewRepository.ts:33
Parameters
reservationId
number
authorId
string
Returns
Promise<any>
findById()
findById(
id):Promise<any>
Defined in: src/application/repositories/ReviewRepository.ts:34
Parameters
id
number
Returns
Promise<any>
createReview()
createReview(
params):Promise<void>
Defined in: src/application/repositories/ReviewRepository.ts:36
Parameters
params
reservationId
number
listId
number
authorId
string
userId
string
reviewContent
string
rating
number
parentId
number
automated?
boolean
isAdminEnable
boolean
isAdmin?
boolean
createdAt
Date
updatedAt
Date
Returns
Promise<void>
updateReview()
updateReview(
id,params):Promise<void>
Defined in: src/application/repositories/ReviewRepository.ts:51
Parameters
id
number
params
listId?
number
reviewContent?
string
rating?
number
userId?
string
isAdminEnable?
boolean
isAdmin?
boolean
Returns
Promise<void>
countEnabledReviewsByUserId()
countEnabledReviewsByUserId(
userId):Promise<number>
Defined in: src/application/repositories/ReviewRepository.ts:59
Parameters
userId
string
Returns
Promise<number>
findTopReviewsByUserId()
findTopReviewsByUserId(
userId,limit):Promise<any[]>
Defined in: src/application/repositories/ReviewRepository.ts:60
Parameters
userId
string
limit
number
Returns
Promise<any[]>
sumRatingByUserId()
sumRatingByUserId(
userId):Promise<number>
Defined in: src/application/repositories/ReviewRepository.ts:61
Parameters
userId
string
Returns
Promise<number>
countEnabledListingReviews()
countEnabledListingReviews(
listId,userId):Promise<number>
Defined in: src/application/repositories/ReviewRepository.ts:62
Parameters
listId
number
userId
string
Returns
Promise<number>
sumListingRating()
sumListingRating(
listId,userId):Promise<number>
Defined in: src/application/repositories/ReviewRepository.ts:63
Parameters
listId
number
userId
string
Returns
Promise<number>
findTopListingReviews()
findTopListingReviews(
listId,userId,limit):Promise<any[]>
Defined in: src/application/repositories/ReviewRepository.ts:64
Parameters
listId
number
userId
string
limit
number
Returns
Promise<any[]>
countEnabledReviewsByAuthorId()
countEnabledReviewsByAuthorId(
authorId):Promise<number>
Defined in: src/application/repositories/ReviewRepository.ts:65
Parameters
authorId
string
Returns
Promise<number>
getDashboardData()
getDashboardData(
scope):Promise<{totalCount:number;todayCount:number;monthCount:number;pendingApprovalCount:number; }>
Defined in: src/application/repositories/ReviewRepository.ts:66
Parameters
scope
string
Returns
Promise<{ totalCount: number; todayCount: number; monthCount: number; pendingApprovalCount: number; }>
searchReviewsWithFilter()
searchReviewsWithFilter(
params):Promise<{reviews:any[];count:number; }>
Defined in: src/application/repositories/ReviewRepository.ts:72
Parameters
params
limit
number
offset
number
searchQuery?
string
Returns
Promise<{ reviews: any[]; count: number; }>
deleteAllReviewsByFilters()
deleteAllReviewsByFilters(
params):Promise<void>
Defined in: src/application/repositories/ReviewRepository.ts:77
Parameters
params
userId?
string
authorId?
string
listIds?
number[]
Returns
Promise<void>