muyu-apiserver/model/sysuserrolemodel.go

48 lines
1.2 KiB
Go
Raw Normal View History

package model
import (
"context"
"fmt"
"github.com/zeromicro/go-zero/core/stores/cache"
"github.com/zeromicro/go-zero/core/stores/sqlx"
)
var _ SysUserRoleModel = (*customSysUserRoleModel)(nil)
type (
SysUserRoleModel interface {
sysUserRoleModel
FindByUserId(ctx context.Context, userId string) (*SysUserRole, error)
DeleteByUserId(ctx context.Context, userId string) error
}
customSysUserRoleModel struct {
*defaultSysUserRoleModel
}
)
func NewSysUserRoleModel(conn sqlx.SqlConn, c cache.CacheConf, opts ...cache.Option) SysUserRoleModel {
return &customSysUserRoleModel{
defaultSysUserRoleModel: newSysUserRoleModel(conn, c, opts...),
}
}
func (m *customSysUserRoleModel) FindByUserId(ctx context.Context, userId string) (*SysUserRole, error) {
var resp SysUserRole
query := fmt.Sprintf("SELECT %s FROM %s WHERE `user_id` = ? LIMIT 1", sysUserRoleRows, m.table)
err := m.QueryRowNoCacheCtx(ctx, &resp, query, userId)
switch err {
case nil:
return &resp, nil
default:
return nil, err
}
}
func (m *customSysUserRoleModel) DeleteByUserId(ctx context.Context, userId string) error {
query := fmt.Sprintf("DELETE FROM %s WHERE `user_id` = ?", m.table)
_, err := m.ExecNoCacheCtx(ctx, query, userId)
return err
}