- Added notification service to handle sending and listing notifications. - Integrated notification sending on user follow and order payment events. - Updated user service to include fetching followed tenants. - Enhanced content service to manage access control for content assets. - Implemented logic for listing content topics based on genre. - Updated creator service to manage content updates and pricing. - Improved order service to include detailed order information and notifications. - Added tests for notification CRUD operations and order details.
53 lines
884 B
Go
53 lines
884 B
Go
package services
|
|
|
|
import (
|
|
"gorm.io/gorm"
|
|
)
|
|
|
|
var _db *gorm.DB
|
|
|
|
// exported CamelCase Services
|
|
var (
|
|
Common *common
|
|
Content *content
|
|
Creator *creator
|
|
Notification *notification
|
|
Order *order
|
|
Super *super
|
|
Tenant *tenant
|
|
User *user
|
|
Wallet *wallet
|
|
)
|
|
|
|
// @provider(model)
|
|
type services struct {
|
|
db *gorm.DB
|
|
// define Services
|
|
common *common
|
|
content *content
|
|
creator *creator
|
|
notification *notification
|
|
order *order
|
|
super *super
|
|
tenant *tenant
|
|
user *user
|
|
wallet *wallet
|
|
}
|
|
|
|
func (svc *services) Prepare() error {
|
|
_db = svc.db
|
|
|
|
// set exported Services here
|
|
Common = svc.common
|
|
Content = svc.content
|
|
Creator = svc.creator
|
|
Notification = svc.notification
|
|
Order = svc.order
|
|
Super = svc.super
|
|
Tenant = svc.tenant
|
|
User = svc.user
|
|
Wallet = svc.wallet
|
|
|
|
return nil
|
|
}
|