# PIM 1 ## Coisas para fazer ### Programa em C Telas: * LOGIN - Vai apenas faze autenficação * Funcionarios - CRUD BASICO (CRIAR, DELETAR, PESQUISAR, ATUALIZAR) - Jorge * PACIENTE - CRUD BASICO (CRIAR, DELETAR, PESQUISAR, ATUALIZAR) * CONSULTAS - CRUD BASICO (CRIAR, DELETAR, PESQUISAR, ATUALIZAR) * EXAME - CRUD BASICO (CRIAR, DELETAR, PESQUISAR, ATUALIZAR) * CONFIGURAÇÃO (Descutir ainda as configurações que vao poder ser feitas) * MEDICOS - CRUD BASICO (CRIAR, DELETAR, PESQUISAR, ATUALIZAR) - Andrei * AVALIAÇÃO - CRUD BASICO (CRIAR, DELETAR, PESQUISAR, ATUALIZAR) PACIENTE, CONSULTAS, EXAMES, MEDICOS, AVALIAÇÃO - cada um deles vao possuir Um struct com as informações necessarias. > obs: As funções que vão executar as terefas de buscar/criar/deletar/pesquisar > iremos fazer juntos pq assim da pra todos aprender como é feito tal coisa : D [Link do projeto em C](https://repl.it/join/qfwxyjjf-andreixhz) #### funções de apoio ```c // Cria uma opção void opcao(char n[20], int t){ printf("%d | %s \n", t, n); } //Saida // 1 | Opção void crud(){ opcao("Listar", 1); opcao("Buscar", 2); opcao("Cadastrar", 3); opcao("Deletar", 4); } //Saida // 1 | Listar // 2 | Buscar // 3 | Cadastrar // Diminui tamanho de codigo para pegar um numero que foi escrito int escolha_numero(){ int i; printf("\nescolha uma opção: "); scanf("%d", &i); return i; } //Saida //nescolha uma opção: 1? 2? 3? void titulo(char titulo[20]){ printf("-------------------------------\n"); printf("%s\n", titulo); printf("-------------------------------\n"); } //Sai um titulo bonitinho pra usar basta: titulo("Titulo"); ``` > caso tenha alguma função que queira colocar aqui so comentar sobre ela :v #### Exemplo de tela com as funções acima ```c void tela_administrar(){ //titulo bonitinho que vai ser arrumado ainda :v titulo("Inicio"); // Opções opcao("Funcionarios", 1); opcao("Medicos", 2); opcao("Operar", 3); opcao("Configuração", 4); // ai que entra o escolha numero pra pedir pra escrever um numero. switch(escolha_numero()){ case 1: currentMenu = 2; break; case 2: currentMenu = 3; break; case 3: currentMenu = 4; break; } } ``` > saida: ![](https://i.imgur.com/t0nZOnw.png) > [name=obs] System | admin : não consta no codigo acima. ## Programa ### Funcionarios * Criar funcionarios * Deletar por cpf * buscar por cpf * listar (maximo 15 por pagina) ### Medicos * Criar medicos * Deletar por cpf * buscar por cpf * listar (maximo 15 por pagina) ### paciente * Criar paciente * Deletar por cpf * buscar por cpf * listar (maximo 15 por pagina) ### consulta * Criar consulta * Deletar por cpf * buscar por cpf * listar (maximo 15 por pagina) > obs: Pra cada consulta quer for criada, ela exige o cpf do funcionario que criou + o cpf do paciente + o cpf do medico que vai anteder, para poder ter u controle maior -- cada um desses itens vão ter um fluxograma, uml e classe -- cada função vai ter que ter uma tela usando o padrao acima. -- Vai ser criado pra cada classe acima, alem das funções seus structs. -- pra cada classe vai ter que ser salva em um arquivo com seu nome ## Documento PIM Fazer manual de uso. Treinamento de usuario. Parte de redes. Fluxogramas do programa e UML's. Gráfico relatando o antes e depois de procedimento de cadastro. ### Versão 1 Criação de pacientes, busca, edição; Agendamento de Consultas, busca e criação; ### Versão 2 [versao 1] Login Criação de funcionarios Criação de medicos tipo de consulta melhorias em tela #### IMPORTANTE: ver se todos estão de acordo com os item lista, e revisar pra caso de melhoria ou adição de mais itens pra mais notas : D