1 / 30

Pesquisar - Consultar lista de tarefas Detalhes - Consultar detalhes de uma tarefa

Casos de uso. Pesquisar - Consultar lista de tarefas Detalhes - Consultar detalhes de uma tarefa - Adicionar tarefa - Apagar tarefa - Alterar dados tarefa - Registar tarefa - Associar Aviso - Associar Anomalia - Alterar registo da tarefa Imprimir.

morley
Download Presentation

Pesquisar - Consultar lista de tarefas Detalhes - Consultar detalhes de uma tarefa

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Casos de uso • Pesquisar • - Consultar lista de tarefas • Detalhes • - Consultar detalhes de uma tarefa • - Adicionar tarefa • - Apagar tarefa • - Alterar dados tarefa • - Registar tarefa • - Associar Aviso • - Associar Anomalia • - Alterar registo da tarefa • Imprimir

  2. Titulo: “Criar Nova Tarefa” Prioritária - Vigilante - Tarefa Única Hoje Amanha Outro dia: Hora: Sim Sim Não Não Tarefa Periódica De: Hora: 2ª 3ª 4ª 5ª 6ª SAB DOM Até: Descrição da tarefa: Observações da tarefa: Criar Tarefa

  3. Divisão dos elementos FORM PART 1 Prioritária - Vigilante - Tarefa Única FORM PART 2 Hoje Amanha Outro dia: Hora: Sim Sim Não Não Tarefa Periódica FORM PART 3 De: Hora: 2ª 3ª 4ª 5ª 6ª SAB DOM Até: FORM PART 4 Descrição da tarefa: Observações da tarefa: FORM PART 5 Criar Tarefa

  4. Form Principal: “Form_Task_New” • Session_start(); • Include(‘Form_Part_Task_PrioritySecurity’); • SlideToggle(Single, Periodic): • { • toggle • Include(‘Form_Part_Task_New_Single’); • toggle • Include(‘Form_Part_Task_New_Periodic’); • } • Include (‘Form_Part_TaskDetails_DescriptionObservation’); • $buttons= getTaskButtons(Task_register, NULL); • Include (‘Form_Part_Buttons’); • Form_Part_1: “Form_Part_Task_PrioritySecurity” • Sub-script que carrega os formulários de escolha a prioridade e a atribuição de tarefas a seguranças. • Form_Part_2: “Form_Part_Task_New_Single” • Sub-script que carrega o formulário para criação de uma tarefa única. • Form_Part_3: “Form_Part_Task_New_Periodic” • Sub-script que carrega o formulário para criação de uma tarefa periodica. • Form_Part_4: “Form_Part_Task_DescriptionObservation” • Sub-script que carrega o formulário para criação de uma tarefa única. • Form_Part_5: “Form_Part_Buttons” • Sub-script que recebe um array com os botões adequados e os dispõem no ecrã. • Ao clicar no botão -> newTask($task)

  5. Titulo da pagina: “Tarefas Correntes” Hoje Atrasadas Todas Todas Vigilantes Vigilantes Prioridade Prioridade Descrição Descrição Data Data . . . . . . . . . . . . . . . . . . Tarefas Semana Tarefas Mês Imprimir Histórico

  6. Divisão dos elementos Todas Todas Vigilantes Vigilantes FORM PART 1 FORM PART 1 Prioridade Prioridade Descrição Descrição Data Data FORM PART 2 FORM PART 2 . . . . . . . . . . . . . . . . . . FORM PART 3

  7. Form Principal: “form_task_list” • Script que gera a pagina consulta de lista de tarefas. • Session_Start(); • $filters= $_SESSION[‘filters’]; • $list_type= ‘Hoje’; • $task_list = getTaskList( $list_type, $filters); • Include(‘Form_Part_TaskList_Filters’); • Include (‘Form_Part_TaskList_Display’); • $list_type= ‘Atrasadas’; • $task_list= getTaskList($list_type,$filters); • Include (‘Form_Part_TaskList_Filters’); • Include (‘Form_Part_TaskList_Display’); • $buttons= getButtons(Task_list, NULL); • Include (‘Form_Part_Buttons’); • Functiongetbuttons() • arrayButtons.add(‘Tarefas_mês, viewTaskMonth.php); • arrayButtons.add(‘Tarefas_mês, viewTaskMonth.php); • ~ • Form_Part: “Form_Part_TaskList_Filters” • Sub-script que faz o “print” aos filtros para a listagem • Os filtros estão guardados numa variável de sessão $_SESSION[‘filters’] que é usada para “carregar” a lista de tarefas adequada. • Exemplo: $filters[‘Hoje’]=‘Todas’ • $filters[‘Atrasadas’]=‘Vigilante’ • Ao clicar no botão do filtro, a variável de sessão é actualizada e a pagina recarregada. • Form_Part: “Form_Part_TaskList_Display” • Sub-script que faz o “print” para o ecrã da lista de tarefas carregada na variável $task_list. • A descrição da tarefa na lista é uma hiperligação para a pagina de detalhes da tarefa • O ID da tarefa é passado pelo método GET no url. • Form_Part: “Form_Part_Buttons” • Sub-script que recebe um array com os botões adequados e os dispõem no ecrã.

  8. Funções da camada de acesso a base de dados necessárias: • - getTaskList($list_type,$filters) • Recebe como argumentos: • o tipo de lista apresentar: ‘Hoje’; ‘Atrasadas’; ‘Mês’; ‘Semana’ • o filtro para a lista: ‘Todas’ ; ’Vigilante’ • Retorna um array multidimensional com a lista de tarefas: • $task_list[id_task]=> array ( task_priority, task_state, task_description, task_date) • getActionList( $id_user) • Recebe como argumento: • o ID do user autentificado no sistema • Retorna array com a lista de acções que este pode efectuar no sistema. • Exemplo: • $action_list[1]= ‘Alterar Tarefa’ • $action_list[2]= ‘Criar Tarefa’ • …

  9. Funções auxiliares: • - getTaskButtons($buttons_select, $task_state) • Recebe como argumentos: • qual o “FORM” que vamos fazer “display” • ‘Task_list’; ‘Task_list_week’; ‘Task_list_month’; ‘Task_details’; ‘Task_edit’; ‘Task_new’ • - o estado da tarefa ( no caso da consulta de detalhes) • Retorna um array com a lista de botões que o user tem permissões para ver nesse “FORM” • Exemplo: • Registar Tarefa • Alterar Tarefa • Apagar Tarefa • Arquivar Tarefa • Imprimir • Nova Tarefa • Tarefas Da Semana • Tarefas Do Mês • Impressão • Histórico ‘Task_list’; NULL ‘Task_details’; ‘Planeada’

  10. Titulo: “Detalhes da Tarefa” (Consulta) – Estado Não Registada (Planeada) Hora Prioritária - SIM Vigilante -Sim Data Descrição da tarefa: Observações da tarefa: Autor: Criada em: Tarefa por executar. Alterar Tarefa Apagar Tarefa Registar Tarefa Imprimir

  11. Titulo: “Detalhes da Tarefa” (Consulta) – Estado Registada (Executada) Hora Prioritária - SIM Vigilante -Sim Data Descrição da tarefa: Observações da tarefa: Autor: Criada em: A tarefa executada com sucesso? Sim Observações sobre a execução da tarefa: Anomalia associada Alterar Tarefa Apagar Tarefa Imprimir

  12. Titulo: “Detalhes da Tarefa” (Consulta) – Estado Registada (Não Executada/Parcialmente Executada) Hora Data Prioritária - SIM Vigilante -Sim Descrição da tarefa: Observações da tarefa: Autor: Criada em: A tarefa executada com sucesso? Não Observações sobre a execução da tarefa: Aviso associado Anomalia associada Alterar Tarefa Apagar Tarefa Imprimir

  13. Divisão dos elementos • É possível verificar por simples inspecção que dentro de todos os estados possíveis na consulta de detalhes que existem elementos que se repetem: Hora Prioritária - SIM Vigilante -Sim Data Descrição da tarefa: Observações da tarefa: FORM PART 1 (PLANEAMENTO) Autor: Criada em: A tarefa executada com sucesso? Sim Observações sobre a execução da tarefa: FORM PART 2 (EXECUÇÃO/REGISTO) Anomalia associada Alterar Tarefa Apagar Tarefa Imprimir FORM PART 3 (BOTÕES)

  14. Form Principal: “Form_TaskDetails” • Script que gera a pagina de consulta de detalhes de uma tarefa especifica. • Session_start(); • $id_task= $_GET [‘id_task’]; • $task = getTaskById( $id_task); • $warning= getTaskWarning($id_task); • $anomalie= getTaskAnomalie($id_task); • $_SESSION[‘current_task’] = $task; • Include(‘Form_Part_TaskDetails_Planning’); • Include (‘Form_Part_TaskDetails_State’); • $buttons= getTaskButtons(Task_details, $task[task_state]); • Include (‘Form_Part_Buttons’); • Form_Part: “Form_Part_TaskDetails_Planning” • Sub-script que faz o “print” dos dados de planeamento da tarefa. • Utiliza os dados contidos no array $task • Form_Part: “Form_Part_TaskDetails_State” • Sub-script que faz o “print” do estado da tarefa e dos detalhes de execução (registo), apresenta avisos e/ou anomalias associados a tarefa. • Form_Part: “Form_Part_Buttons” • Sub-script que recebe um array com os botões adequados e os dispõem no ecrã. • Os dados da tarefa sobre a qual se esta a trabalhar são passados por variável de sessão entre paginas (evitar acessos desnecessários a B.D.), caso “Registar Tarefa”, “Alterar Tarefa”. • $_SESSION[‘task’]= $task; • $_SESSION[‘warning’]= $warning; • $_SESSION[‘anomalie’]= $anomalie;

  15. Funções da camada de acesso a base de dados necessárias: • - getTaskById($id_task) • Recebe como argumento: - Id da tarefa • Retorna um array com os dados da tarefa: • $task=> array ( id_task, task_priority, task_state, task_description, task_date, task_author… ) • getTaskWarning($id_task) • Recebe como argumento: – Id a tarefa • Retorna um array com os dados do aviso associados a tarefa: • $warning=> array (id_warning, warning_description, Warning_priority, warning_security…#id_task) • - getTaskAnomalie($id_task) • Recebe como argumento: - Id da tarefa • Retorna um array com os dados da anomalia associada a tarefa: • $anomalie=> array (id_anomalie, anomalie_description, anomalie_TT, #id_task)

  16. Titulo: “Detalhes da Tarefa” (Registar - Executada) Hora Data Prioritária - SIM Vigilante -Sim Descrição da tarefa: Observações da tarefa: Autor: Criada em: Sim Não A tarefa executada com sucesso? Sim Executei Parte Não Observações sobre a execução da tarefa: Alguma anomalia? Confirmar

  17. Titulo: “Detalhes da Tarefa” (Registar – Não Executada/Parcialmente Executada) Hora Data Prioritária - SIM Vigilante -Sim Descrição da tarefa: Observações da tarefa: Autor: Criada em: Sim Sim Não Não A tarefa executada com sucesso? Sim Executei Parte Não Porque? Pretende colocar um aviso? Alguma anomalia? Confirmar

  18. Elementos comuns Hora Prioritária - SIM Vigilante -Sim Data FORM PART 1 (PLANEAMENTO) Descrição da tarefa: Observações da tarefa: Autor: Criada em: Sim Sim Não Não FORM PART 2 (EXECUÇÃO/REGISTO) A tarefa executada com sucesso? Sim Executei Parte Não Porque? Pretende colocar um aviso? Alguma anomalia? FORM PART 3 (BOTÕES) Confirmar

  19. Form Principal: “Form_TaskDetails_Register” • Script que gera a pagina de consulta de detalhes de uma tarefa especifica. • Session_start(); • $task= $_SESSION[‘task’]; • Include(‘Form_Part_TaskDetails_Planning’); • Include (‘Form_Part_TaskDetails_Register’); • $buttons= getTaskButtons(Task_register, NULL); • Include (‘Form_Part_Buttons’); • Form_Part_1: “Form_Part_TaskDetails_Planning” • Sub-script que faz o “print” dos dados de planeamento da tarefa. • Utiliza os dados contidos no array $task • Form_Part_2: “Form_Part_TaskDetails_Register” • Sub-script que carrega os formularios de registo da tarefa. • Dentro deste sub-script vai ser invocado outros sub-scripts (se necessário, ‘Form_Warnings_New’ ‘Form_Anomalies_New’) • “Call” a função updateTask($task) • Form_Part_3: “Form_Part_Buttons” • Sub-script que recebe um array com os botões adequados e os dispõem no ecrã.

  20. Funções da camada de acesso a base de dados necessárias: • - updateTask($task) • Recebe como argumento: • Array com os dados da tarefa • Faz o “update” substituindo os campos na B.D. da tarefa com ‘id_task’==$task[id_task] pelos do array $task. • - newWarning($warning) • Recebe como argumento: • Array com os dados do aviso. • Faz um “insert” na B.D de um novo aviso • newAnomalie($anomalie) • Recebe como argumento: • Array com os dados da anomalia. • Faz um “insert” na B.D de uma nova anomalia

  21. Titulo: “Alterar Tarefa” – Não Registada (Planeada) Prioritária - Vigilante - Data Hora Descrição da tarefa: Sim Sim Não Não Observações da tarefa: Autor: Criada em: Guardar Alterações Cancelar

  22. Titulo: “Alterar Tarefa” - Registada (Executada) * Hora Data Prioritária - SIM Vigilante -Sim Descrição da tarefa: Observações da tarefa: Autor: Criada em: A tarefa executada com sucesso? Sim Executei Parte Não Observações sobre a execução da tarefa: Anomalia Alterar Guardar Alterações Cancelar

  23. Titulo: “Alterar Tarefa” - Registada (Não Executada/Parcialmente Executada) * Hora Data Prioritária - SIM Vigilante -Sim Descrição da tarefa: Observações da tarefa: Autor: Criada em: A tarefa executada com sucesso? Sim Executei Parte Não Observações sobre a execução da tarefa: Aviso associado Alterar Anomalia associada Alterar Cancelar Guardar Alterações

  24. Divisão do elementos Hora Prioritária - SIM Vigilante -Sim Data Descrição da tarefa: Observações da tarefa: FORM PART 1 (PLANEAMENTO) Autor: Criada em: A tarefa executada com sucesso? Sim Observações sobre a execução da tarefa: FORM PART 2 (EXECUÇÃO/REGISTO) Anomalia associada Alterar Tarefa Apagar Tarefa Imprimir FORM PART 3 (BOTÕES)

  25. Analise dos elementos • O Form_Part_1 vai depender do tipo de “user” que está a tentar alterar a tarefa, não existe necessidade de desassociar edição dos dados da edição do registo, logo quando um “user” com permissões para tal esta a editar uma tarefa pode editar os dados da tarefa bem como o seu registo, por outro lado um user sem permissões pode apenas alterar o registo. Logo: • Form_Part_TaskDetails_Planningou Form_Part_TaskDetails_Planning_Edit • O Form_Part_2 vai ser acessível por todos os users, tendo umas pequenas nuances em que: • É possível editar os dados de registo da tarefa. • Visualiza-se os dados ,caso existam, do aviso/ anomalia associada e existe a possibilidade de alterar os dados do aviso/anomalia nesse mesmo formulário.

  26. Form Principal: “Form_TaskDetails_Edit” • Session_start(); • $task= $_SESSION[‘task’]; • $action_list = $_SESSION[‘action_list’]; • if ( array_key_exist(‘Alterar Tarefa’, $action_list) • Include(‘Form_Part_TaskDetails_Planning_Edit’); • Else • Include(‘Form_Part_TaskDetails_Planning’); • Include (‘Form_Part_TaskDetails_Register_Edit’); • $buttons= getTaskButtons(Task_register, NULL); • Include (‘Form_Part_Buttons’); • Form_Part: “Form_Part_TaskDetails_Planning_Edit” • Sub-script carrega os dados da tarefa em formulários editáveis. • Utiliza os dados contidos no array $task • Form_Part: “Form_Part_TaskDetails_Register_Edit” • Sub-script que carrega os formularios de registo da tarefa. • Dentro deste sub-script vai ser invocado outros sub-scripts (se necessário, ‘Form_Warnings_Edit’ ‘Form_Anomalies_Edit’) • “Call” a função updateTask($task) • Form_Part: “Form_Part_Buttons” • Sub-script que recebe um array com os botões adequados e os dispõem no ecrã.

  27. Funções da camada de acesso a base de dados necessárias: • - updateWarning($warning) • Recebe como argumento: • Array com os dados do aviso. • Faz o “update” substituindo os campos na B.D. pelos do array $warning. • - updateAnomalie($anomalie) • Recebe como argumento: • Array com os dados da anomalia. • Faz o “update” substituindo os campos na B.D. da anomalia pelos do array $warning.

  28. Funções da camada de acesso a base de dados: • AVISOS: • getWarningsList() • getWarningById($id_warning) • updateWarning($warning) • newWarning($warning) • deleteWarning($id_warning) • Outras: • getTaskAnomalie($id_task) • getTaskWarning($id_task) • TAREFAS: • getTaskList($list_type,$filters) • getTaskById($id_task) • updateTask($task) • deleteTask($id_task) • arquiveTask($id_task) • newTask($task) • Users: • getActionList( $id_user) • updateUser($user) • deleteUser($id_user) • newUser($user) • Anomalias: • getAnomalieList() • getAnomalieById($id_anomalie) • updateAnomalie($id_anomalie) • newAnomalie($anomalie) • deleteAnomalie($id_anomalie)

  29. Variáveis de Sessão: $_SESSION[‘filters’] – Guarda o estado dos filtros actualmente seleccionados, na lista de tarefas. $_SESSION[‘task’] – Guarda os dados da tarefa sobre a qual se esta a trabalhar no momento. $_SESSION[‘warning’] – Guarda os dados sobre o aviso o qual se esta a trabalhar no momento. $_SESSION[‘anomalie’] – Guarda os dados sobre a anomalia a qual se esta a trabalhar no momento. $_SESSION[‘action_list’] – Guarda a lista de acções que o user autentificado no sistema tem acesso. $_SESSION[‘user’] – Guarda os dados do user autentificado no sistema.

  30. Forms e Form_Parts: Form_Part: Form: • Form_Part_Task_PrioritySecurity • Form_Part_Task_New_Periodic • Form_Part_Task_New_Single • Form_Task_New • Form_Part_TaskDetails_DescriptionObservation • Form_Part_Buttons • Form_Part_TaskList_Filters • Form_Part_TaskList_Display • Form_TaskList • Form_Part_Buttons • Form_Part_TaskDetails_Planning • Form_Part_TaskDetails_State” • Form_TaskDetails • Form_Part_Buttons • Form_Part_TaskDetails_Planning • Form_Part_TaskDetails_Register • Form_TaskDetails_Register • Form_Part_Buttons • Form_Part_TaskDetails_Planning_Edit • Form_Part_TaskDetails_Register_Edit • Form_TaskDetails_Edit • Form_Part_Buttons

More Related