role_and_user.go 1.2 KB

123456789101112131415161718192021222324252627282930
  1. package relations
  2. import (
  3. "git.sxidc.com/go-framework/baize/convenient/domain/auth/middlewares"
  4. "git.sxidc.com/go-framework/baize/convenient/domain/auth/role"
  5. "git.sxidc.com/go-framework/baize/convenient/domain/auth/user"
  6. "git.sxidc.com/go-framework/baize/convenient/relation/many2many"
  7. "git.sxidc.com/go-framework/baize/framework/binding"
  8. )
  9. // SimpleUserAndRole Bind参数
  10. type SimpleUserAndRole struct {
  11. // schema
  12. Schema string
  13. }
  14. func (simple *SimpleUserAndRole) Bind(binder *binding.Binder) {
  15. many2many.BindSimple(binder, &many2many.Simple[user.Info, role.Info]{
  16. Left: &user.Entity{},
  17. Right: &role.Entity{},
  18. Schema: simple.Schema,
  19. LeftUpdateJsonBody: &user.UpdateRolesOfUserJsonBody{},
  20. LeftQueryQueryParams: &user.GetRolesOfUserQueryParams{},
  21. RightUpdateJsonBody: &role.UpdateUsersOfRoleJsonBody{},
  22. RightQueryQueryParams: &role.GetUsersOfRoleQueryParams{},
  23. }, many2many.WithLeftUpdateMiddlewares(middlewares.Authentication()),
  24. many2many.WithLeftQueryMiddlewares(middlewares.Authentication()),
  25. many2many.WithRightUpdateMiddlewares(middlewares.Authentication()),
  26. many2many.WithRightQueryMiddlewares(middlewares.Authentication()))
  27. }