You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

34 lines
770 B

  1. package service
  2. import (
  3. "context"
  4. "practice_Go/internal/model/do"
  5. "practice_Go/internal/model/entity"
  6. )
  7. // 1.定义接口
  8. type IClubs interface {
  9. GetClubs(ctx context.Context) (clubs []entity.GoClubs, err error)
  10. GetClubShows(ctx context.Context) (shows []entity.GoShows, err error)
  11. AddClub(ctx context.Context, club do.GoShows) (err error)
  12. EditClub(ctx context.Context, club do.GoClubs) (err error)
  13. DeleteClub(ctx context.Context) (err error)
  14. }
  15. // 2.定义接口变量
  16. var localClub IClubs
  17. // 3.定义获取接口实例的函数
  18. func GetClubs() IClubs {
  19. if localClub == nil {
  20. panic("IClubs接口未实现或未注册")
  21. } else {
  22. return localClub
  23. }
  24. }
  25. // 4.定义一个接口实现的注册方法
  26. func RegisterClubs(club IClubs) {
  27. localClub = club
  28. }