package system import ( "context" "management/internal/erpserver/model/system" "management/internal/erpserver/repository" ) type roleMenuRepository struct { repo *repository.Repository } func NewRoleMenuRepository(repo *repository.Repository) system.RoleMenuRepository { return &roleMenuRepository{ repo: repo, } } func (r *roleMenuRepository) Create(ctx context.Context, obj []*system.RoleMenu) error { return r.repo.DB(ctx).Create(obj).Error } func (r *roleMenuRepository) DeleteByRoleID(ctx context.Context, roleID int32) error { return r.repo.DB(ctx).Where("role_id = ?", roleID).Delete(&system.RoleMenu{}).Error } func (r *roleMenuRepository) ListByRoleID(ctx context.Context, roleID int32) ([]*system.RoleMenu, error) { var roleMenus []*system.RoleMenu err := r.repo.DB(ctx).Where("role_id = ?", roleID).Find(&roleMenus).Error if err != nil { return nil, err } return roleMenus, nil }