Requerimientos para la gestión administrativa del sitio - Socomarca/socomarca-backend GitHub Wiki

Requerimientos

RFN200

Descripción del requerimiento

El administrador del sitio debe ser capaz de actualizar la informacion de cualquier usuario

Roles

  • Administrador
  • Cliente

Si el requerimiento es un proceso en segundo plano puede no estar relacionado con ningún rol

Flujos de datos adicionales relacionados

Hay un proceso en segundo plano que sincroniza la información desde Random ERP

Flujo que satisface el requerimiento

PUT /api/users/{userId}

El "flujo" en cuestión puede ser una solcitud HTTP, un proceso en segundo plano o puede no estar desarrollado aún

Dudas adicionales

Ninguna

#Analisis de cosas pendientes


Panel de Administración - Revisión y Requerimientos

Reporte de Ventas

  • El campo montos tiene dos campos: min y max.

  • El cliente se puede escribir y seleccionar.

    • Requiere endpoint: UserController no permite buscar por nombre.
  • El calendario cambia los datos del gráfico.

    • Requiere endpoint: Obtener datos del gráfico según filtros (montos, cliente, rango de fecha).
  • El gráfico "Total de ingresos" no cambia con los filtros.

    • Requiere endpoint: Obtener datos del gráfico de total de ingresos (montos de venta).

Transacciones Exitosas

  • El campo montos tiene dos campos: min y max.

  • El cliente se puede escribir y seleccionar.

    • Requiere endpoint: UserController no permite buscar por nombre.
  • El calendario cambia los datos del gráfico.

    • Requiere endpoint: Obtener datos del gráfico según filtros (montos, cliente, rango de fecha).
  • La tabla se ordena por fecha de creación.

  • Las acciones son "Ver pedidos", que redirigen al detalle de la transacción.

    • Requiere endpoint: Obtener los pedidos de la transacción exitosa.

Cliente que más compra (Figma)

  • ❌ Página no disponible (Error 404).

Productos con más ventas

  • Filtro por cliente + categoría (categoría más comprada por el cliente).

    • Requiere endpoint: Buscar cliente (UserController).
    • Requiere endpoint: Obtener productos más vendidos.
  • Cliente se puede escribir y seleccionar.

  • La tabla se ordena por suma total del monto de venta, no por cantidad de productos vendidos.


Comunas con más ventas

  • Filtro por cliente + varias comunas (checkbox).

  • Cliente se puede escribir y seleccionar.

    • Requiere endpoint: Obtener comunas con más ventas.
    • Requiere endpoint: Buscar clientes y seleccionar múltiples (UserController).
  • La tabla se ordena por suma total del monto de venta, no por cantidad de productos vendidos.

    • Requiere endpoint: Obtener categorías más vendidas.

Categorías con más ventas

  • Filtro por cliente + categoría.
    • Requiere endpoint: Buscar cliente (UserController).
    • Requiere endpoint: Obtener categorías más vendidas.
  • Cliente se puede escribir y seleccionar.
  • La tabla se ordena por suma total del monto de venta, no por cantidad de productos vendidos.
    • Requiere endpoint: Obtener los datos de la tabla.

Transacciones Fallidas

  • Campo montos: min y max.
  • Cliente se puede escribir y seleccionar.
  • El calendario cambia los datos del gráfico.
    • Requiere endpoint: Obtener los datos del gráfico según filtros (montos, cliente, rango de fecha).
  • Tabla ordenada por fecha de creación.
  • Requiere endpoint: Obtener los datos de la tabla.
  • Acciones: "Ver pedidos" (redirige a detalles).
  • Requiere endpoint: Obtener los datos de la orden

Productos

  • Buscador por nombre o SKU.
    • Requiere endpoint: para buscar por nombre o SKU (Se podra usar el existente?)
  • Filtros: categoría, proveedor, orden.
    • Requiere endpoint: Para cada uno de los filtros
  • Tabla ordenada por nombre del producto.
    • Requiere endpoint: Obtener los datos de la tabla.

Categorías

  • Lista de categorías.
    • Requiere endpoint: Obtener los datos de la tabla.
  • Búsqueda por nombre.
    • Requiere endpoint: Para buscar por el nombre de la categoria
  • Se puede ordenar por...
    • Requiere endpoint: Obtener los datos de la tabla.

Clientes

  • Lista de clientes.
    • Requiere endpoint: Obtener los datos de la tabla.
  • Búsqueda por nombre.
  • Se puede ordenar por...
    • Requiere endpoint: Para buscar por el nombre del cliente

Información del Sitio

  • Edita datos del sitio.
  • Incluir repetidor para redes sociales. (No se si las opcines del select son estaticas)
    • Requiere endpoint: Leer, Guardar la información del sitio

Términos y Condiciones / Política de Privacidad

  • Editor WYSIWYG.
  • Requiere endpoint: Leer, Guardar la información de los terminos y condiciones / privacidad

Preguntas Frecuentes

  • Editor WYSIWYG con repetidor
  • Requiere endpoint: Leer, Guardar la información de las preguntas frecuentes

Mensaje de Cliente (Slider Home)

  • Subida de 2 fotos y un mensaje.
  • Las dimensiones de las imágenes son recomendaciones, no requeridas.
  • Requiere endpoint: Leer, Guardar la información del mensaje de cliente (includa la imagen)

Listar Usuarios

  • Tabla con usuarios.
    • Requiere endpoint: Obtener los datos de la tabla.
  • Búsqueda por nombre o email.
    • Requiere endpoint: Para buscar por el nombre o email del usuario
  • Acciones:
    • Editar (modal tipo Lightbox, permite cambiar contraseña).
    • Requiere endpoint: Leer, Guardar la información del usuario
    • Eliminar.
    • Requiere endpoint: Eliminar el usuario
  • Cambio de rol disponible.

Crear Usuario

  • Crear usuario con:
    • Requiere endpoint: Leer, Guardar la información del usuario
    • Cambio de rol.
    • Cambio de contraseña.
  • Roles están predefinidos.
  • Permisos de roles pendientes (Laravel Policy).