Diferencia entre revisiones de «Usuario:ManuelRomero/Laravel/tarea laravel»

De WikiEducator
Saltar a: navegación, buscar
(Página creada con «{{Actividad|Title=Requisitos| *La aplicación será una gestión básica de una empresa a nivel de datos *La empresa tiene tres elementos: #Empleados #Clientes #Facturas ;A...»)
 
Línea 6: Línea 6:
 
#Facturas
 
#Facturas
 
;Además se añaden los siguientes requisitos extras:
 
;Además se añaden los siguientes requisitos extras:
{{Nota|Los requisitos se establecen para buscra casuísticas que nos obliguen a adaptar nuestro software a situaciones concretas particulares. No pretende buscar situaciones reales, sino forzarlas para necesitar adaptar el desarrollo a las mismas.}}
 
 
*En esta línea se establecen los siguientes requisitos:
 
*En esta línea se establecen los siguientes requisitos:
 
;De los empleados, nos interesa saber qué idiomas hablan:
 
;De los empleados, nos interesa saber qué idiomas hablan:
Línea 14: Línea 13:
 
;Las facturas pueden pertenecer a 1  o 4 clientes
 
;Las facturas pueden pertenecer a 1  o 4 clientes
 
;Lógicamente cada cliente puede tener muchas facturas o ninguna
 
;Lógicamente cada cliente puede tener muchas facturas o ninguna
 +
Especificación de requisitos
 +
*Se debe de poblar las tablas todas con al menos 10 registros
 +
*Se deben de gestionar altas, bajas consultas y modificaciones de cada una de las tablas según proceda
 +
*Se valorará que a nivel de gestión, se  cree un componente con vue para la gestión de los datos de la tabla (ver el tema correspondiente de vue)
 
*El siguiente diagrama E/R establece esta información
 
*El siguiente diagrama E/R establece esta información
 
[[Archivo:Modelo_E_R_empresas.png|center|700px]]
 
[[Archivo:Modelo_E_R_empresas.png|center|700px]]
;Gestion por roles
 
  
*Es una utilidad que suelen tener muchas aplicaciónes donde hay diferentes secciones en nuestro sistema
+
;El sistema debe de funcionar por roles.
*Es algo muy típico y muy bien implementado en los csm, que básicamente consiste en:
+
*Vamos a crear tres tipos de usuarios de la aplicación (deben de existir en la tabla de usuarios), según se muestra en la imagen siguiente
 +
*La tabla siguiente muestra la gestión de roles:
 +
 
 
{{MRM_Resumen|Title=Ideas sobre un sistema de roles en una aplicación|
 
{{MRM_Resumen|Title=Ideas sobre un sistema de roles en una aplicación|
 
1.- Te identificas en el sistema<br />
 
1.- Te identificas en el sistema<br />
Línea 29: Línea 33:
 
}}
 
}}
  
;Para este post, vamos a implementar un ejemplo de una aplicación donde tenemos la siguiente situación.
+
;Para esta prácticat, vamos a implementar la siguiente situación.
*Una app que gestiona a nivel de CRUD las sigueintes tablas
+
*Gestión a nivel de CRUD las sigueintes tablas
  
 
[[Archivo:modelo_relacional_roles.png|center|800px]]
 
[[Archivo:modelo_relacional_roles.png|center|800px]]
Línea 36: Línea 40:
 
*Y queremos establecer el siguiente sistema de permisos que pretende dejar claro el diagrama siguiente
 
*Y queremos establecer el siguiente sistema de permisos que pretende dejar claro el diagrama siguiente
 
[[Archivo:DigramaGenearlRoles.png|center|400px]]
 
[[Archivo:DigramaGenearlRoles.png|center|400px]]
 
  
  
 
}}
 
}}

Revisión de 05:03 8 mar 2023


Icon activity.jpg

Requisitos

  • La aplicación será una gestión básica de una empresa a nivel de datos
  • La empresa tiene tres elementos:
  1. Empleados
  2. Clientes
  3. Facturas
Además se añaden los siguientes requisitos extras
  • En esta línea se establecen los siguientes requisitos:
De los empleados, nos interesa saber qué idiomas hablan
Almacenaremos sus 6 idiomas que mejor controlan aparte de su idioma materno que no almacenaremos.
Por lo tanto, de cada empleado queremos almacenar
entre 0 y 6 idiomas que hable (además del suyo).
Las facturas pueden pertenecer a 1 o 4 clientes
Lógicamente cada cliente puede tener muchas facturas o ninguna

Especificación de requisitos

  • Se debe de poblar las tablas todas con al menos 10 registros
  • Se deben de gestionar altas, bajas consultas y modificaciones de cada una de las tablas según proceda
  • Se valorará que a nivel de gestión, se cree un componente con vue para la gestión de los datos de la tabla (ver el tema correspondiente de vue)
  • El siguiente diagrama E/R establece esta información
Modelo E R empresas.png
El sistema debe de funcionar por roles.
  • Vamos a crear tres tipos de usuarios de la aplicación (deben de existir en la tabla de usuarios), según se muestra en la imagen siguiente
  • La tabla siguiente muestra la gestión de roles:


Icon summary.gif
Ideas sobre un sistema de roles en una aplicación

1.- Te identificas en el sistema
2.- En función de tus credenciales puedes realizar determinadas acciones en el sistema
3.- Se identifican roles y a cada rol se le asignan determinadas acciones (dar de alta usuarios, subir noticias, modificar clientes ...)
4.- A los diferentes usuarios se les asisigna un rol concreto, con lo que puede realizar las acciones que a ese rol se le han atribuído
5.- El sistema es tremendamente flexible, puedo asignar permisos concretos (pe. facturas.read o clientes.create representando la acción de leer de la tabla facturas o crear nuevos clientes) a un rol que tenga un usuario o directamente a un usuario. 5.- Muchas veces, simplemente con un rol, podemos dejar establecido este sistema de permisos, otras veces tendremos que usar permisos para mayor detalle si así lo necesitamos.


Para esta prácticat, vamos a implementar la siguiente situación.
  • Gestión a nivel de CRUD las sigueintes tablas
Modelo relacional roles.png

  • Y queremos establecer el siguiente sistema de permisos que pretende dejar claro el diagrama siguiente
DigramaGenearlRoles.png