Skip to content

Documentación Base de Datos

RaimundoDiaz edited this page Dec 7, 2020 · 13 revisions

Explicación modelo de la Base de Datos: Modelo Entidad Relación de Fiscalía Móvil

AliasAccused: alias_accused.rb, “Alias de acusado”, modelo que relaciona los múltiples alias que puede tener un imputado.*

  • alias: Alias de la persona
  • person: Clave foránea a persona (Person)

Crime: crime.rb, “Crimen”, modelo que contiene todos los crímenes exportados desde la base de datos entregada por Carlos Martinez

  • name: (Nombre)
  • deleted: Booleano que señala si el delito se ha borrado (de manera lógica)

CrimeInAccused: crime_in_accused.rb, “Crimen del acusado”, modelo que relaciona al imputado, procedimiento y el crimen que cometió y contiene un atributo booleano preponderant que señala si el crimen de ese procedimiento es preponderante o no.

  • crime: Clave foránea a delito (Crime)
  • person: Clave foránea a persona (Person)
  • procedure: Clave foránea a procedimiento (Procedure)
  • preponderant: Booleano que señala si el delito es preponderante

Person: person.rb, “Persona”, modelo que contiene los datos de todas las personas relacionadas con los procedimientos (exceptuando fiscales y policías). Para determinar si una persona es testigo, víctima o imputado, por favor revisar el modelo PersonInProcedure. Los atributos de este modelo son:

  • name: (Nombre)
  • last_name: (Apellido)
  • rut: (Rut)
  • birthday: (Fecha de nacimiento)
  • deceased: (Fallecido)
  • contact : (Información de contacto)

PersonInProcedure: person_in_procedure.rb, “Persona en el procedimiento”, modelo que determina si la persona relacionada con el procedimiento es una víctima, testigo o imputado, esto es determinado por el integer rol :

  • person: Clave foránea a persona (Person)

  • procedure: Clave foránea a procedimiento (Procedure)

  • prosecutor_pronounced: Clave foránea que indica si el fiscal se pronunció

  • witness_declaration: Relato

  • state: Tipos de estado del imputado

    • 0: Pendiente
    • 1: Audiencia control de detención (ADC)
    • 2: Apercibido
  • role: Para identificar si es víctima, testigo o imputado

    • 0: Imputado
    • 1: Testigo
    • 2: Víctima

Tag: tag.rb, “Marcas”, modelo que contiene el nombre de cada marca

  • name: (Nombre)
  • deleted: Booleano que señala si la marca se ha borrado (de manera lógica)

Tagging: tagging.rb, modelo que relaciona las tags con los procedimientos, así se puede saber los tags de un procedimiento.

  • tag: Clave foránea a marcas (Tag)
  • procedure: Clave foránea a procedimiento (Procedure)

Procedure: procedure.rb, ”Procedimiento” , modelo que contiene los datos de un procedimiento, sus atributo son:

  • local_prosecution_in_charge: Clave foránea a fiscalía local (LocalProsecution)
  • police_unit_in_charge: Clave foránea a unidad policial (PoliceUnit)
  • police_in_charge: Clave foránea al policía a cargo (PoliceMan)
  • creator: Clave foránea al creador del procedimiento (User)
  • address: Direccion del hecho
  • region: Región del hecho
  • sector: Sector del hecho
  • story: Historia del hecho
  • involves_deceased: Booleano que señala si el procedimiento involucra fallecidos
  • deleted: Booleano que señala si el procedimiento se ha borrado (de manera lógica)
  • state: Estado actual del procedimiento, puede ser:
    • 0: Abierto
    • 1: Cerrado
    • 2: Borrador
  • classification: Clasificación del procedimiento, puede ser:
    • 0: Flagrancia
    • 1: Orden de detención (ODP)
    • 2: Ambos

Prosecutor: prosecutor.rb, “Fiscal” modelo que contiene a los fiscales, sus atributos son:

  • name:(Nombre)
  • rut: (Rut)
  • prosecutor_on_duty: Variable que indica si es un fiscal de turno (True) o un operador (False)
  • local_prosecution: Clave foránea a fiscalía local (LocalProsecution)
  • deleted: Booleano que señala si el fiscal se ha borrado (de manera lógica)

User: user.rb, “Usuario”, modelo que contiene a los usuarios que ingresen al sistema, sus atributos son:

  • email: (Correo de usuario)
  • admin: Booleano que señala si el usuario es administrador
  • police_unit: Clave foránea a unidad policial (PoliceUnit)
  • local_prosecution:Clave foránea a fiscalía local (LocalProsecution)
  • prosecutor: Clave foránea al fiscal (Prosecutor)
  • deleted: Booleano que señala si el usuario se ha borrado (de manera lógica)

Message: message.rb, “Mensaje”, modelo que contiene los mensajes de los procedimientos, sus atributos:

  • user: Clave foránea al usuario (User)
  • procedure: Clave foránea al procedimiento (Procedure)
  • content: Texto del mensaje

LocalProsecution: local_prosecution.rb, “Fiscalía Local”, modelo que contiene a las fiscalías locales, sus atributos son:

  • name:(Nombre)
  • regional_prosecution: Clave foránea al fiscal regional (RegionalProsecution)
  • deleted: Booleano que señala si la fiscalía local se ha borrado (de manera lógica)

RegionalProsecution: regional_prosecution.rb, “Fiscalía Regional”, modelo que contiene a las fiscalías regionales, sus atributos son:

  • name:(Nombre)
  • region:(Región)
  • deleted: Booleano que señala si la fiscalía local se ha borrado (de manera lógica)

Notification: notification.rb, “Notificación”, modelo que contiene las notificaciones del sistema, sus atributos:

  • user: Clave foránea al usuario (User)
  • seen: Booleano que muestra si la notificación ha sido vista o no. True = visto; False = No visto
  • notification_type: Tipo de notificación, puede ser:
    • 0: Llegó procedimiento creado al fiscal asignado
    • 1: Fiscal cerró un procedimiento
    • 2: Fiscal solicito más datos respecto a un procedimiento
    • 3: Carabinero respondió con más datos respecto a un procedimiento
    • 4: Fiscal editó un procedimiento
    • 5: Has recibido un mensaje en un procedimiento
  • reference_id: Key que lleva el objeto del evento

Prefecture: prefecture.rb, “Región”, modelo que contiene las regiones, sus atributos son:

  • name:(Nombre)
  • region:(Región)

PoliceStation: police_station.rb, “Comisaría”, modelo que contiene las comisarías, sus atributos son:

  • name (Nombre)
  • prefecture : Clave foránea a región (Prefecture)
  • police_type : Tipo de comisaría, puede ser:
    • 1: Carabineros
    • 2: Brigada de investigación (PDI)
    • 10: Marítima
  • deleted: Booleano que señala si la fiscalía local se ha borrado (de manera lógica)

PoliceUnit: police_unit.rb, “Unidad Policial”, modelo que contiene las unidades policiales. Atributos:

  • name:(Nombre)
  • police_station_id: Clave foránea de comisaría (PoliceStation)
  • deleted: Booleano que señala si la fiscalía local se ha borrado (de manera lógica)

PoliceMan: police_man.rb, “Policía”, modelo que contiene a los policías, sus atributos son:

  • rut:(Rut)
  • badge:(Número de Placa)
  • phone_number: Número de contacto del policía
  • deleted: Booleano que señala si la fiscalía local se ha borrado (de manera lógica)

Document: document.rb, “Documento”, modelo que contiene el documento subido al procedimiento, sus atributos son:

  • name: (Nombre), Nombre del documento
  • description: (Descripción), descripción del documento
  • procedure: Clave foránea al procedimiento

Video: video.rb, “Video”, modelo que contiene los videos subidos al procedimiento, sus atributos son:

  • description: (Description)
  • procedure: Clave foránea al procedimiento

Photo: photo.rb, “Foto”, fotos subidas al procedimiento, sus atributos son:

  • description: (Description)
  • badge: Clave foránea al procedimiento
Clone this wiki locally