Update Usuarios
parent
05cb7e7918
commit
fdbfd24216
98
Usuarios.md
98
Usuarios.md
|
@ -16,6 +16,7 @@
|
|||
3. [Resource Definition](#resource-definition)
|
||||
4. [API Operations](#api-operations)
|
||||
5. [Entity Properties](#entity-properties)
|
||||
6. [User Input DTO](#user-input-dto)
|
||||
|
||||
### Introduction
|
||||
|
||||
|
@ -23,7 +24,7 @@ This documentation describes the configuration of API Platform in a Symfony 6 pr
|
|||
|
||||
### Configuration
|
||||
|
||||
API configuration is done in Symfony configuration files, usually in `config/packages/api_platform.yaml`.
|
||||
API configuration is done in Symfony configuration files, usually in `config/packages/api_platform.yaml` file.
|
||||
|
||||
```yaml
|
||||
resources:
|
||||
|
@ -126,6 +127,51 @@ properties:
|
|||
- **uuid**:
|
||||
- **Identifier**: `true`
|
||||
|
||||
### User Input DTO
|
||||
|
||||
#### Fields Required in User Endpoint Input
|
||||
|
||||
1. **username**
|
||||
- **Type**: string
|
||||
- **Validation**: Not blank
|
||||
- **Groups**: `user:write`
|
||||
|
||||
2. **allowedOrganizationalUnits**
|
||||
- **Type**: array of `OrganizationalUnit`
|
||||
- **Groups**: `user:write`
|
||||
- **API Property**: `readableLink: false, writableLink: false`
|
||||
|
||||
3. **password**
|
||||
- **Type**: string
|
||||
- **Validation**: Not blank (for `user:post`), Minimum length: 8 (for `user:write`, `user:post`)
|
||||
- **Groups**: `user:write`
|
||||
|
||||
4. **enabled**
|
||||
- **Type**: boolean
|
||||
- **Validation**: Not null
|
||||
- **Groups**: `user:write`
|
||||
- **Default**: true
|
||||
|
||||
5. **userGroups**
|
||||
- **Type**: array of `UserGroup`
|
||||
- **Groups**: `user:write`
|
||||
- **API Property**: `readableLink: false, writableLink: false`
|
||||
|
||||
6. **currentPassword**
|
||||
- **Type**: string
|
||||
- **Validation**: Not blank (for `user:reset-password`)
|
||||
- **Groups**: `user:reset-password`
|
||||
|
||||
7. **newPassword**
|
||||
- **Type**: string
|
||||
- **Validation**: Not blank, Minimum length: 8 (for `user:reset-password`)
|
||||
- **Groups**: `user:reset-password`
|
||||
|
||||
8. **repeatNewPassword**
|
||||
- **Type**: string
|
||||
- **Validation**: Not blank, Minimum length: 8, Must match `newPassword` (for `user:reset-password`)
|
||||
- **Groups**: `user:reset-password`
|
||||
|
||||
---
|
||||
|
||||
## Español
|
||||
|
@ -137,14 +183,15 @@ properties:
|
|||
3. [Definición de Recursos](#definición-de-recursos)
|
||||
4. [Operaciones de API](#operaciones-de-api)
|
||||
5. [Propiedades de la Entidad](#propiedades-de-la-entidad)
|
||||
6. [DTO de Entrada de Usuario](#dto-de-entrada-de-usuario)
|
||||
|
||||
### Introducción
|
||||
|
||||
Esta documentación describe la configuración de API Platform en un proyecto Symfony 6. Se detallan los recursos, operaciones y propiedades de las entidades expuestas a través de la API.
|
||||
Esta documentación describe la configuración de API Platform en un proyecto Symfony 6 Se detallan los recursos, operaciones y propiedades de las entidades expuestas a través de la API.
|
||||
|
||||
### Configuración
|
||||
|
||||
La configuración de la API se realiza en los archivos de configuración de Symfony, generalmente en `config/packages/api_platform.yaml`.
|
||||
La configuración de la API se realiza en los archivos de configuración de Symfony, generalmente en `config/packages/api_platform.yaml`.
|
||||
|
||||
```yaml
|
||||
resources:
|
||||
|
@ -206,47 +253,4 @@ properties:
|
|||
### Operaciones de API
|
||||
|
||||
#### Colección de Usuarios (GetCollection)
|
||||
- **Proveedor**: `App\State\Provider\UserProvider`
|
||||
- **Filtros**:
|
||||
- Ordenar usuarios: `api_platform.filter.user.order`
|
||||
- Buscar usuarios: `api_platform.filter.user.search`
|
||||
- Filtro booleano: `api_platform.filter.user.boolean`
|
||||
|
||||
#### Obtener Usuario (Get)
|
||||
- **Proveedor**: `App\State\Provider\UserProvider`
|
||||
|
||||
#### Actualizar Usuario (Put)
|
||||
- **Proveedor**: `App\State\Provider\UserProvider`
|
||||
|
||||
#### Modificar Parcialmente Usuario (Patch)
|
||||
- **Proveedor**: `App\State\Provider\UserProvider`
|
||||
|
||||
#### Crear Usuario (Post)
|
||||
- **Seguridad**: Solo los usuarios con el rol `ROLE_SUPER_ADMIN` pueden acceder.
|
||||
- **Contexto de Validación**: `['default', 'user:post']`
|
||||
|
||||
#### Eliminar Usuario (Delete)
|
||||
- **Seguridad**: Solo los usuarios con el rol `ROLE_SUPER_ADMIN` pueden acceder.
|
||||
|
||||
#### Resetear Contraseña (reset_password)
|
||||
- **Proveedor**: `App\State\Provider\UserProvider`
|
||||
- **Clase**: `ApiPlatform\Metadata\Put`
|
||||
- **Método**: `PUT`
|
||||
- **Entrada (input)**: `App\Dto\Input\UserInput`
|
||||
- **URI**: `/users/{uuid}/reset-password`
|
||||
- **Controlador**: `App\Controller\ResetPasswordAction`
|
||||
- **Contexto de Validación**: `['user:reset-password']`
|
||||
|
||||
### Propiedades de la Entidad
|
||||
|
||||
#### App\Entity\User
|
||||
|
||||
- **id**:
|
||||
- **Identificador**: `false`
|
||||
|
||||
- **uuid**:
|
||||
- **Identificador**: `true`
|
||||
|
||||
---
|
||||
|
||||
Con este formato, puedes seleccionar el idioma que prefieras y acceder a la documentación correspondiente.
|
||||
-
|
Loading…
Reference in New Issue