tenant: add invites and join requests

This commit is contained in:
2025-12-18 18:27:23 +08:00
parent 462bde351d
commit ec4506fd2d
28 changed files with 5206 additions and 201 deletions

View File

@@ -24,13 +24,15 @@ type Routes struct {
log *log.Entry `inject:"false"`
middlewares *middlewares.Middlewares
// Controller instances
content *content
contentAdmin *contentAdmin
me *me
order *order
orderAdmin *orderAdmin
orderMe *orderMe
tenantUserAdmin *tenantUserAdmin
content *content
contentAdmin *contentAdmin
me *me
order *order
orderAdmin *orderAdmin
orderMe *orderMe
tenantInviteAdmin *tenantInviteAdmin
tenantJoinAdmin *tenantJoinAdmin
tenantUserAdmin *tenantUserAdmin
}
// Prepare initializes the routes provider with logging configuration.
@@ -185,6 +187,53 @@ func (r *Routes) Register(router fiber.Router) {
Local[*models.User]("user"),
PathParam[int64]("orderID"),
))
// Register routes for controller: tenantInviteAdmin
r.log.Debugf("Registering route: Get /t/:tenantCode/v1/admin/invites -> tenantInviteAdmin.adminInviteList")
router.Get("/t/:tenantCode/v1/admin/invites"[len(r.Path()):], DataFunc3(
r.tenantInviteAdmin.adminInviteList,
Local[*models.Tenant]("tenant"),
Local[*models.TenantUser]("tenant_user"),
Query[dto.AdminTenantInviteListFilter]("filter"),
))
r.log.Debugf("Registering route: Patch /t/:tenantCode/v1/admin/invites/:inviteID/disable -> tenantInviteAdmin.adminDisableInvite")
router.Patch("/t/:tenantCode/v1/admin/invites/:inviteID/disable"[len(r.Path()):], DataFunc4(
r.tenantInviteAdmin.adminDisableInvite,
Local[*models.Tenant]("tenant"),
Local[*models.TenantUser]("tenant_user"),
PathParam[int64]("inviteID"),
Body[dto.AdminTenantInviteDisableForm]("form"),
))
r.log.Debugf("Registering route: Post /t/:tenantCode/v1/admin/invites -> tenantInviteAdmin.adminCreateInvite")
router.Post("/t/:tenantCode/v1/admin/invites"[len(r.Path()):], DataFunc3(
r.tenantInviteAdmin.adminCreateInvite,
Local[*models.Tenant]("tenant"),
Local[*models.TenantUser]("tenant_user"),
Body[dto.AdminTenantInviteCreateForm]("form"),
))
// Register routes for controller: tenantJoinAdmin
r.log.Debugf("Registering route: Get /t/:tenantCode/v1/admin/join-requests -> tenantJoinAdmin.adminJoinRequests")
router.Get("/t/:tenantCode/v1/admin/join-requests"[len(r.Path()):], DataFunc3(
r.tenantJoinAdmin.adminJoinRequests,
Local[*models.Tenant]("tenant"),
Local[*models.TenantUser]("tenant_user"),
Query[dto.AdminTenantJoinRequestListFilter]("filter"),
))
r.log.Debugf("Registering route: Post /t/:tenantCode/v1/admin/join-requests/:requestID/approve -> tenantJoinAdmin.adminApproveJoinRequest")
router.Post("/t/:tenantCode/v1/admin/join-requests/:requestID/approve"[len(r.Path()):], DataFunc4(
r.tenantJoinAdmin.adminApproveJoinRequest,
Local[*models.Tenant]("tenant"),
Local[*models.TenantUser]("tenant_user"),
PathParam[int64]("requestID"),
Body[dto.AdminTenantJoinRequestDecideForm]("form"),
))
r.log.Debugf("Registering route: Post /t/:tenantCode/v1/admin/join-requests/:requestID/reject -> tenantJoinAdmin.adminRejectJoinRequest")
router.Post("/t/:tenantCode/v1/admin/join-requests/:requestID/reject"[len(r.Path()):], DataFunc4(
r.tenantJoinAdmin.adminRejectJoinRequest,
Local[*models.Tenant]("tenant"),
Local[*models.TenantUser]("tenant_user"),
PathParam[int64]("requestID"),
Body[dto.AdminTenantJoinRequestDecideForm]("form"),
))
// Register routes for controller: tenantUserAdmin
r.log.Debugf("Registering route: Delete /t/:tenantCode/v1/admin/users/:userID -> tenantUserAdmin.adminRemoveUser")
router.Delete("/t/:tenantCode/v1/admin/users/:userID"[len(r.Path()):], Func3(