Se trata de un sistema de seguimiento a recuperación de vehículos robados en el que participan 3 tipos de personas:
- Oficiales, son los que manejan uno o más casos de robo de vehículos. Obviamente tienen Acceso al sistema ya que son los que manejan el/los caso(s)
- Denunciantes, son los que hacen la denuncia de vehículo robado. tiene Acceso al sistema para ir viendo como marcha su caso.
- Testigos, son personas que entran en cierto momento durante la presentación de documentos a la hora de presentar la denuncia, testifica la propiedad del vehículo del denucniante. No tiene acceso al sistema.
como ven sólo 2 tipos de personas tienen acceso al sistema (oficiales y denunciantes) obviamente para ello cada quien necesita su password.
El problema viene en el modelado, estoy bastante indeciso al hacer las tablas, la única segura que tengo es la tabla persona:
Tabla Persona
Campos: nombre, apellido paterno, materno, domicilio, telefono, etc
Esta tabla almacenará a todas las personas (oficiales, denunciantes y testigos)
En un inicio cree dos tablas:
- La tabla Usuario que estaria enlazada a la tabla persona y tendría los siguientes campos: username, password, personal (booleano que indica si es oficial y así tiene acceso al módulo que le corresponde), denunciante (booleano que indica si es denunciante y así tiene acceso al módulo que le corresponde). Por si acaso el Oficial también puede ser denunciante en caso de que el sufra el robo de alguno de sus vehículos. Como ven saco los datos de acceso al sistema fuera de la tabla persona ya que no todas las personas tendrán acceso al sistema (sólo oficiales y denunciantes)
- La tabla personal que estaría enlazada a la tabla usuario y contendría unicamente a los Oficiales. y no está enlazada directamente a Personas sino a usuarios.
Pero después de pensarla se me ideó que podría hacerlo de esta forma: crear 2 tablas, una para denunciantes y otra para los oficiales, ambas relacionadas directamente con la tabla Persona, pero ahí me pregunté: ¿¿dónde iría el password y el username????, por q la idea es que si alguien es oficial y denunciante a la vez use el mismo username y password para acceder a cada uno de los móduloss. Y no quiero poner estos campos en la tabla persona, por q como les dije no todas las perosnas tienen acceso al sistema.
ESpero que me ayuden con esto
Gracias!!"