Skip to content

Sistema que auxilia a organização das informações para fins de recredenciamento de cursos

Notifications You must be signed in to change notification settings

uspdev/datagrad

Folders and files

NameName
Last commit message
Last commit date

Latest commit

1a08fe2 · Feb 13, 2025
Oct 10, 2024
May 17, 2024
Oct 7, 2024
Sep 2, 2024
Sep 2, 2024
May 10, 2024
Feb 13, 2025
Sep 2, 2024
Sep 10, 2024
Dec 15, 2022
May 25, 2022
Nov 13, 2024
May 25, 2022
Oct 28, 2022
May 25, 2022
Aug 22, 2024
May 17, 2024
Nov 12, 2024
Feb 13, 2025
Oct 25, 2024
May 25, 2022
May 25, 2022
May 25, 2022

Repository files navigation

Datagrad

Sistema que auxilia na elaboração do relatório de revalidação de cursos de graduação, e outras informações relacionadas à graduação.

Apresentação na EESC em 9/8/2024.

Funcionalidades

  • Gera lista de disciplinas por curso (grade curricular)
  • Gera lista de turmas oferecidas por curso em determinado período
  • Gera relatório de lista de nomes para relatório síntese
  • Gera relatório de lista de nomes para relatório complementar
  • Gera relatório de carga didática por lista de nomes e por período
  • Gera relatório de grade horária por lista de nomes/codpes
  • Gera relatório de evasão por curso e ano de ingresso dos alunos
  • Facilita a alteração de disciplinas, principalmente no processo de tradução para inglês e cadastro de atividade extensionista (em andamento)

Changelog

03/2024

  • iniciando gerenciamento de alteração de disicplinas
  • atualizado laravel 10 / PHP 8.3

30/10/2023

  • incluído relatório de evasão

01/08/2023

  • incluído relatório de grade horária

13/6/2023

  • incluído relatório de carga didática
  • melhorado grade curricular
  • implementado cache para algumas partes. A ser expandido.

Requisitos

Aplicação laravel padrão

Em produção

Para receber as últimas atualizações do sistema rode:

git pull
composer install --no-dev
php artisan migrate

Dicas

  • Copy to clipboard só funciona em conexão https

Instalação

Básico

git clone [email protected]:uspdev/datagrad
composer install --no-dev

# Configure o .env conforme a necessidade
cp .env.example .env

php artisan key:generate

Cache (opcional)

Algumas partes podem usar cache (https://github.com/uspdev/cache). Para utilizá-lo você precisa instalar e configurar o memcached no mesmo servidor da aplicação.

apt install memcached
vim /etc/memcached.conf
    I = 5M
    -m 128

/etc/init.d/memcached restart

Apache ou nginx

Deve apontar para a /public, assim como qualquer projeto laravel.

No Apache é possivel utilizar a extensão MPM-ITK (http://mpm-itk.sesse.net/) que permite rodar seu Servidor Virtual com usuário próprio. Isso facilita rodar o sistema como um usuário comum e não precisa ajustar as permissões da pasta storage/.

sudo apt install libapache2-mpm-itk
sudo a2enmod mpm_itk
sudo service apache2 restart

Dentro do seu virtualhost coloque

<IfModule mpm_itk_module>
AssignUserId nome_do_usuario nome_do_grupo
</IfModule>

Senha única

Cadastre uma nova URL no configurador de senha única utilizando o caminho https://seu_app/callback. Guarde o callback_id para colocar no arquivo .env.

Banco de dados

  • DEV

    php artisan migrate:fresh --seed

  • Produção

    php artisan migrate

Supervisor (opcional)

Para as filas de envio de email o sistema precisa de um gerenciador que mantenha rodando o processo que monitora as filas. O recomendado é o Supervisor. No Ubuntu ou Debian instale com:

sudo apt install supervisor

Modelo de arquivo de configuração. Como root, crie o arquivo /etc/supervisor/conf.d/chamados_queue_worker_default.conf com o conteúdo abaixo:

[program:chamados_queue_worker_default]
command=/usr/bin/php /home/sistemas/chamados/artisan queue:listen --queue=default --tries=3 --timeout=60
process_num=1
username=www-data
numprocs=1
process_name=%(process_num)s
priority=999
autostart=true
autorestart=unexpected
startretries=3
stopsignal=QUIT
stderr_logfile=/var/log/supervisor/chamados_queue_worker_default.log

Ajustes necessários:

command=<ajuste o caminho da aplicação>
username=<nome do usuário do processo do chamados>
stderr_logfile = <aplicacao>/storage/logs/<seu arquivo de log>

Reinicie o Supervisor

sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl restart all

Problemas e soluções

Alguma dica de como resolver problemas comuns?

Histórico

Registre o log das principais alterações