remove interfaces

This commit is contained in:
yanghao05
2023-02-09 14:57:32 +08:00
parent 45400ae272
commit aceac5d8eb
16 changed files with 74 additions and 137 deletions

View File

@@ -6,24 +6,20 @@ import (
"context"
)
type UserDao interface {
Create(context.Context, *models.User) (*models.User, error)
}
type userDaoImpl struct {
type UserDao struct {
query *query.Query
}
func NewUserDao(query *query.Query) UserDao {
return &userDaoImpl{query: query}
func NewUserDao(query *query.Query) *UserDao {
return &UserDao{query: query}
}
func (dao *userDaoImpl) FindByID(ctx context.Context, id uint64) (*models.User, error) {
func (dao *UserDao) FindByID(ctx context.Context, id uint64) (*models.User, error) {
user := dao.query.User
return user.WithContext(ctx).Where(user.ID.Eq(id)).First()
}
func (dao *userDaoImpl) Create(ctx context.Context, model *models.User) (*models.User, error) {
func (dao *UserDao) Create(ctx context.Context, model *models.User) (*models.User, error) {
user := dao.query.User
if err := user.WithContext(ctx).Create(model); err != nil {
return nil, err