Posts from — May 2008
Help Desk - Gestión de Tickets
Este es un ejercicio mental de como armar un sistema para gestion de tickets, reclamos, etc., cualquiera puede dejar sus comentarios. Los sistemas que vi, no me gustaron mucho (eTicket, osTicket), son para organizaciones pequeñas, y no tienen un generador de formularios.
El sistema, como parte de mi campaña debe servir para gestionar todo el Estado (un poquitin pretencioso).
Tabla Organizations (en inglés, que vamo’a'cer)
- id
- name
- parent_id (para permitir anidar toda la burocracia antes de que se extinga o la erradiquen)
- person_id (que sería la persona responsable)
Tabla forms
Para que cada organismo pueda crear sus propios tipos de quejas, reclamos, formularios.
- id
- name
- organization_id
- user_id (una sola persona es la encargada de modificar ese form)
Tabla relacion campos - formulario (form_field)
- form_id
- field_type_id (que deriva en otra tabla con tipos básicos y predefinidos, una tabla para almacenar las opciones en los campos de opciones multiples o selects).
- sn_active
Tabla tickets
- id
- title
- message
- created
- sn_open
- user_id (el que lo creo)
- organization_id
- person_id (la primer persona que leo y teoricamente, se hizo cargo del mensaje)
Tabla ticket_message
En esta tabla se guardarian todas las respuestas y re-preguntas
- ticket_id
- from (quien envia el mensaje)
- to (a quien va)
- title
- content
- date
- parent_id (aunque se podrian ordenar por fecha)
Tabla ticket_log
Quien que trabaja donde hizo que con el ticket, y cuando. Jeje.
- ticket_id
- action (reenviado a, ignorado…)
- organization_id
- person_id
- to_organization_id
- to_person_id (estos 2 podrian quedar muchas veces nulos)
- date
Table people
- id
- name
- cargo ?
- organization_id
- sn_chief (si es jefe actua como admin dentro de la organizacion).
El sistema para el control por los usuarios deberia permitir mostrar la demora, cantidad de mensajes a responder antes del nuestro en reclamos similares.
May 27, 2008 No Comments
Convenciones de programación en PHP
Siempre tengo dilemas sobre como se debe nombrar las tablas, por ahora trato de adaptarme a lo que diga CakePHP:
- modelo en singular, controlador plural, tabla plural (en ingles, de ser posible).
- las tablas donde relaciono de uno a muchos, perfiles de un usuario, la nombro user_profile (singular).
- en las relaciones los nombres de columna llevan el _id al final: country_id, user_id
Duda
- los nombres de las columnas deberían tener siempre adelante el nombre de la tabla? usuario_nombre, usuario_mail, etc.
- los nombres de funciones deben separarse con _ o usar CamelCase?
Hay convenciones aceptadas más alla del framework que se use?
(con el tiempo se irá completando)
May 26, 2008 No Comments
Parser para DMOZ
Estoy parseando la estructura de DMOZ con https://sourceforge.net/projects/dmoz2mysql/, y no me gusta mucho que las ubicaciones geográficas estén dentro de las categorías, alguien tiene o sabe de un script para separar eso en otra tabla?
May 21, 2008 No Comments