Actualizar Imagen de Perfil del Usuario (1) - [update-img-user]
🧾 Descripción
Actualiza la imagen de perfil de un usuario en ERPNext.
El proceso incluye:
-
Recepción de un archivo enviado desde la app.
-
Subida del archivo al endpoint de ERPNext:
method/upload_file. -
Obtención de la URL generada del archivo.
-
Actualización del campo
user_imagedel User. -
Actualización del campo
imageen el Employee asociado (si existe).
🚀 Endpoint
La ruta exacta dependerá del archivo de rutas Laravel (
api.php).
🔐 Seguridad
-
La función no valida sesión o token, pero el endpoint llamado en ERPNext usa cookies de sesión Guest, lo que indica que debe usarse desde un backend confiable.
-
Se recomienda protegerla en la API propia.
📥 Request (Multipart / Form-Data)
Campos requeridos
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
| file | file | Sí | Imagen a subir (jpg, png, etc.) |
| user | string | Sí | Nombre del usuario en ERPNext para actualizar (User.name). |
Ejemplo (form-data)
file: avatar.png
user: user@example.com |
📤 Responses
✔️ 200 – Imagen actualizada correctamente
{
"valor": true,
"msn": "Imagen de usuario actualizado correctamente",
"data": { ... }
} |
❌ 400 – Faltan datos o error al subir archivo
Ejemplo de error al no recibir archivo:
{
"msn": "File could not be processed"
} |
❌ 500 – Error de carga o actualización
{
"valor": false,
"msn": "Error al actualizar la imagen de usuario",
"data": { ... }
} |
🧩 Lógica Interna
1. Lectura del archivo
2. Subida a ERPNext
-
Endpoint usado:
POST /method/upload_file
-
Cabecera usada:
Cookie: full_name=Guest; sid=Guest; system_user=no; user_id=Guest; user_image=
⚠️ Se sube el archivo como usuario Guest.
3. Validación de respuesta
Debe existir: message.file_url
Si no existe → error.
4. Actualizar información del User
PUT resource/User/{user}
{
"user_image": "<file_url>"
} |
5. Actualizar Employee si corresponde
-
Busca Employee cuyo
user_idcoincida:
Si existe:
📚 Request/Response Schemas
Request (multipart/form-data)
file: File
user: string |
Response (success)
{
"valor": true,
"msn": "Imagen de usuario actualizado correctamente",
"data": { "user_image": "url_file" }
} |
No hay comentarios para mostrar
No hay comentarios para mostrar