Files
pocket-id-pocket-id-2/backend/internal/dto/user_dto.go

39 lines
1.2 KiB
Go
Raw Normal View History

2024-08-23 17:04:19 +02:00
package dto
import "time"
type UserDto struct {
2024-10-28 18:11:54 +01:00
ID string `json:"id"`
Username string `json:"username"`
Email string `json:"email" `
FirstName string `json:"firstName"`
LastName string `json:"lastName"`
IsAdmin bool `json:"isAdmin"`
CustomClaims []CustomClaimDto `json:"customClaims"`
UserGroups []UserGroupDto `json:"userGroups"`
LdapID *string `json:"ldapId"`
2024-08-23 17:04:19 +02:00
}
type UserCreateDto struct {
Username string `json:"username" binding:"required,username,min=2,max=50"`
2024-08-23 17:04:19 +02:00
Email string `json:"email" binding:"required,email"`
FirstName string `json:"firstName" binding:"required,min=1,max=50"`
LastName string `json:"lastName" binding:"required,min=1,max=50"`
2024-08-23 17:04:19 +02:00
IsAdmin bool `json:"isAdmin"`
LdapID string `json:"-"`
2024-08-23 17:04:19 +02:00
}
type OneTimeAccessTokenCreateDto struct {
UserID string `json:"userId"`
2024-08-23 17:04:19 +02:00
ExpiresAt time.Time `json:"expiresAt" binding:"required"`
}
2025-01-19 15:30:31 +01:00
type OneTimeAccessEmailDto struct {
Email string `json:"email" binding:"required,email"`
RedirectPath string `json:"redirectPath"`
}
type UserUpdateUserGroupDto struct {
UserGroupIds []string `json:"userGroupIds" binding:"required"`
}