feat: implement Redis caching for business activities and consumers
- Added Redis caching to BusinessActivitiesService for findAll and findOne methods. - Integrated Redis caching in BusinessActivityComplexesService for findAll and findOne methods. - Enhanced ConsumersService with Redis caching for findAll and findOne methods. - Introduced cache invalidation for partner consumers and business activities. - Created RedisKeyMaker utility for generating cache keys for consumers, partners, and POS. - Implemented cache invalidation services for partners and POS. - Added Redis service methods for JSON handling and key deletion by patterns. - Updated goods service to include caching and invalidation for goods list. - Introduced DTO for updating goods.
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import { UploadedFileTypes } from '@/common/enums/enums'
|
||||
import { GoodSelect } from '@/generated/prisma/models'
|
||||
import { PosCacheInvalidationService } from '@/modules/pos/cache/pos-cache-invalidation.service'
|
||||
import { UploaderService } from '@/modules/uploader/uploader.service'
|
||||
import { PrismaService } from '@/prisma/prisma.service'
|
||||
import { Injectable } from '@nestjs/common'
|
||||
@@ -11,6 +12,7 @@ export class ConsumerBusinessActivityGoodsService {
|
||||
constructor(
|
||||
private readonly prisma: PrismaService,
|
||||
private readonly uploaderService: UploaderService,
|
||||
private readonly posCacheInvalidationService: PosCacheInvalidationService,
|
||||
) {}
|
||||
|
||||
defaultSelect: GoodSelect = {
|
||||
@@ -110,6 +112,9 @@ export class ConsumerBusinessActivityGoodsService {
|
||||
},
|
||||
},
|
||||
})
|
||||
await this.posCacheInvalidationService.invalidateGoodsListByBusinessActivity(
|
||||
business_activity_id,
|
||||
)
|
||||
return ResponseMapper.create(good)
|
||||
}
|
||||
|
||||
@@ -174,6 +179,9 @@ export class ConsumerBusinessActivityGoodsService {
|
||||
},
|
||||
})
|
||||
})
|
||||
await this.posCacheInvalidationService.invalidateGoodsListByBusinessActivity(
|
||||
business_activity_id,
|
||||
)
|
||||
return ResponseMapper.update(good)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user