Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
LINS/ SP
2016
IURI MITIKA DOS SANTOS
JOO PEDRO SCHIAS
MARIO JALORETTO NETO
LINS/ SP
2016
IURI MITIKA DOS SANTOS
JOO PEDRO SCHIAS
MARIO JALORETTO NETO
BANCA EXAMINADORA:
___________________________________ ___________________________________
_______ _______
Orientador: Examinador:
Joo Lus Cardoso de Moraes Antonio Carlos Lima de
Doutor Santana
Centro Universitrio de Lins Mestre
Unilins Centro Universitrio de Lins
Unilins
Aprovado em ____/____/____
RESUMO
Este projeto foi desenvolvido com foco no Exrcito Brasileiro, visando
atender as necessidades encontradas nas linhas militares brasileiras,
apoiar a tomada de decises dos militares em operao e, assim, auxilia-
los de forma sistmica.
Mesmo com todas as inovaes tecnolgicas atuais, ainda existem
lacunas a serem preenchidas no universo das operaes militares como,
por exemplo, identificar de forma concreta reas que apresentem possvel
risco durante a realizao de rondas, prevenir o extravio de dados e at
mesmo interceptao de informaes sigilosas, possibilitar a identificao
rpida de situaes de emergncia e, ainda, possibilitar a visualizao de
forma coerente e clara de todas as informaes em tempo real.
Como sugesto de soluo para tais problemas, projetamos uma
aplicao web responsiva, para acesso tanto em plataformas mobile
quanto desktop, utilizando linguagens de programao web como PHP e
javascript, que possibilita, de forma simplificada, que todas as informaes
cheguem remotamente a um servidor de forma segura e protegida. O
sistema permite tanto o uso de ferramentas de geolocalizao para
posicionamento de informaes em um mapa, quanto gerenciamento de
dados, cadastros de usurios e controle de acesso.
Com esse sistema buscamos facilitar o envio de informaes
importantes relacionadas a situaes de risco para os militares; auxlio
para tomada deciso; praticidade de uso durante misso militar;
preveno de riscos de perdas; identificao de situao de emergncia.
1.2 Objetivos........................................................................................11
2 REVISO BIBLIOGRFICA.......................................................13
3 ANLISE DE SISTEMA............................................................17
4 PROJETO DE SISTEMA............................................................19
6 IMPLEMENTAO..................................................................86
6.1.2 PHP.........................................................................................87
6.1.3 Bootstrap................................................................................87
7 CONSIDERAES FINAIS......................................................100
8 REFERNCIAS BIBLIOGRFICAS............................................102
14
1 INTRODUO
Nesta seo apresentamos uma introduo ao nosso projeto, bem
como objetivos e expectativas, alm dos recursos utilizados na etapa de
projeto e selecionados para a implementao da soluo computacional
sugerida.
1.2 Objetivos
O objetivo do projeto oferecer uma soluo computacional que
possa proteger as informaes obtidas dentro de Operaes Militares e
facilitar os meios de registro e leitura dessas informaes.
2 REVISO BIBLIOGRFICA
Nesta seo iremos apresentar temas importantes da bibliografia
utilizada, especialmente o contexto histrico do Exrcito Brasileiro,
organizao alvo de nosso projeto.
3 ANLISE DE SISTEMA
A fase de Anlise de Sistema iniciou-se com o levantamento de
requisitos onde foram realizadas entrevistas com os usurios-alvo do
sistema: Militares.
Um dos membros do grupo se responsabilizou por contatar os
entrevistados e realizar a entrevista com objetivo de conhecer em
detalhes os procedimentos e regras comumente aplicados nas situaes
de interesse do trabalho: misses de pequenas fraes militares. Foi
utilizado material livre, disponvel na internet, sobre normas e
procedimentos militares como base terica para as entrevistas. Assistimos
a vdeos, tambm disponveis online, de misses e patrulhas militares do
Exrcito Brasileiro, que mostravam algumas atividades realizadas em
campo, visando principalmente contextualizar o trabalho em um universo
real.
Nesta seo apresentamos os resultados das observaes realizadas
e os primeiros direcionamentos desejados para o projeto de software.
22
4 PROJETO DE SISTEMA
Na fase de Projeto de Sistema empregou-se a UML por ser uma
linguagem comum para expressar os diversos modelos para desenvolver
um software. Nesta seo apresentaremos os principais diagramas e
notaes UML utilizados na modelagem dos artefatos: Diagrama de
Classes, Diagrama de Entidade e Relacionamento, Diagrama de Estrutura
de Dados, Diagramas de Use Case, Diagramas de Sequncia e os
Prottipos de Telas relacionados a cada evento identificado.
Insere Posio
InformarPosica
Inimiga no Banco dados_inf resp_inf
2 o PosIni PosIni
de Dados
Inimiga
utilizando App
Insere
Bloqueio no Banco InformarBloque dados_inf resp_inf
3 Bloq Bloq
de Dados io
utilizando App
hora de
informar InformarPosica dados_inf resp_inf
4
PosicaoMilitar (a oMilitar PosMil PosMil
cada 5 minutos)
25
Inicia rotina
de situao de
Emergncia
enviando a posio
InformarEmerg dados_em resp_em
5 do Militar erg erg
encia
constantemente
para o Banco de
Dados utilizando
App
N Estmul Respo
Descrio UseCase
o sta
Visualiza
Posies tanto de
Bloqueios quanto
dados_vis resp_vis
6 de Posies VisualizarMapa Mapa Mapa
Inimigas que esto
inseridas no
banco.
Cadastrar Tipo
de Frao no
CadastrarTipoFr dados_ca msg_ca
7 banco de dados dTipFrac dTipFrac
acao
utilizando sistema
de gesto
Cadastrar Tipo
de Equipamento
CadastrarTipoE dados_ca msg_ca
8 no banco de dados dTipEqui dTipEquip
quipamento
utilizando sistema
de gesto
Cadastrar
Posto e Graduao
CadastrarPosto dados_ca msg_ca
9 no banco de dados
Graduacao dPosGrad dPosGrad
utilizando sistema
de gesto
Cadastrar
Funo no banco
1 CadastrarFunca dados_ca msg_ca
de dados
0 o dFunc dFunc
utilizando sistema
de gesto
26
Cadastrar Tipo
1 de Bloqueio no
CadastrarTipoB dados_ca msg_ca
banco de dados
1 utilizando sistema loqueio dTipBloq dTipBloq
de gesto
Cadastrar
Equipamento no
1 CadastrarEquip dados_ca msg_ca
banco de dados
2 amento dEqui dEqui
utilizando sistema
de gesto
Cadastrar
Frao no banco
1 CadastrarFraca dados_ca msg_ca
de dados dFrac dFrac
3 o
utilizando sistema
de gesto
N Estmul Respo
Descrio UseCase
o sta
Cadastrar
1 Militar no banco de CadastrarMilita dados_ca msg_ca
4 dados utilizando r dMil dMil
sistema de gesto
Cadastrar
Misso no banco
1 CadastrarMissa dados_ca msg_ca
de dados dMis dMis
5 o
utilizando sistema
de gesto
Cadastrar
Militar da Frao
1 CadastrarMilita dados_ca msg_ca
no banco de dados
6 rFracao dMilFrac dMilFrac
utilizando sistema
de gesto
Vincular
Equipamentos a CadastrarEquip
1 dados_ca msg_ca
um militar amentosMilitarFraca
7 dEquiMilFrac dEquiMilFrac
especfico, de uma o
frao especfica.
Gerar
relatrio de
Relatrio de
1 Militares em uma MilitarSitu RelMilita
Militares por acao rSituacao
8 Frao, a partir de
Situao
uma situao
informada.
27
Gerar
relatrio de
1 Relatrio de MilitarFrac RelMilita
Militares a partir
9 Militares por Frao ao rFracao
da Frao que
participa.
Gerar
Relatrio de
Equipamentos Relatrio de
2 Equipame RelEquip
alocadas a um Equipamentos por
0 ntoMilitar amentoMilitar
militar especfico Militar
de uma frao
especfica.
Gerar
Relatrio de
2 Misses realizadas Relatrio de MissaoFra RelMissa
1 por uma Misso por Frao cao oFracao
determinada
Frao.
Curso alternativo:
1. O usurio erra ao digitar;
2. O usurio abandona a operao; a mesma cancelada;
Cursos de exceo:
1. O usurio no preencheu os dados obrigatrios de VALIDAR LOGIN (id,
senha) O sistema avisa e pede o preenchimento dos dados obrigatrios;
31
Curso alternativo:
1. O usurio erra ao digitar;
2. O usurio abandona a operao; a incluso cancelada;
Cursos de exceo:
1. O usurio no preencheu os dados obrigatrios de INFORMAR POSIO
INIMIGA (id, qntInimigos, armados, motorizados, latitude, longitude,
informao, data) O sistema avisa e pede o preenchimento dos dados
obrigatrios;
2. Existe outra POSIO INIMIGA com o mesmo id O Sistema avisa a
POSIO INIMIGA j est cadastrado.
34
Curso alternativo:
1. O usurio erra ao digitar;
2. O usurio abandona a operao; a incluso cancelada;
Cursos de exceco:
1. O usurio no preencheu os dados obrigatrios de INFORMAR BLOQUEIO
(id, latitude, longitude, informao, data, tipoBloqueio) O sistema avisa
e pede o preenchimento dos dados obrigatrios;
2. Existe outra INFORMAR BLOQUEIO com o mesmo id O Sistema avisa a
BLOQUEIO j est cadastrado.
37
Curso alternativo:
1. O usurio erra ao digitar;
2. O usurio abandona a operao; a incluso cancelada;
Cursos de exceco:
1. O usurio no preencheu os dados obrigatrios de INFORMAR POSIO
MILITAR (id, latitude, longitude , data) O sistema avisa e pede o
preenchimento dos dados obrigatrios;
2. Existe outra INFORMAR POSIO MILITAR com o mesmo id O Sistema
avisa a BLOQUEIO j est cadastrado.
Curso alternativo:
1. O usurio erra ao digitar;
2. O usurio abandona a operao; a incluso cancelada;
Cursos de exceco:
1. O usurio no preencheu os dados obrigatrios de INFORMAR
EMERGENCIA (id, latitude, longitude , data) O sistema avisa e pede o
preenchimento dos dados obrigatrios;
2. Existe outra INFORMAR EMERGENCIA com o mesmo id O Sistema avisa
a EMEREGENCIA j est cadastrado.
42
Curso alternativo:
1. O usurio erra ao digitar;
46
Cursos de exceo:
1. O usurio no preencheu os dados obrigatrios de TIPO DE FRAO (id,
descricao) O sistema avisa e pede o preenchimento dos dados
obrigatrios;
2. Existe outro TIPO GRADUAO com o mesmo id O Sistema avisa que o
TIPO GRADUAO j est cadastrado.
47
Curso alternativo:
1. O usurio erra ao digitar;
2. O usurio abandona a operao; a incluso cancelada;
49
Cursos de exceco:
1. O usurio no preencheu os dados obrigatrios de INFORMAR
EMERGENCIA (id, descricao) O sistema avisa e pede o preenchimento
dos dados obrigatrios;
2. Existe outra INFORMAR TIPO DE EQUIPAMENTO com o mesmo id O
Sistema avisa a TIPO DE EQUIPAMENTO j est cadastrado.
50
Cursos alternativos:
1. O usurio erra ao digitar;
52
Cursos de exceo:
1. O usurio no preencheu os dados obrigatrios de POSTO GRADUAO
(id, descrio, abrev) O sistema avisa e pede o preenchimento dos
dados obrigatrios;
2. Existe outro posto_grad com o mesmo id O Sistema avisa que o
posto_grad j est cadastrado.
Curso alternativo:
1. O usurio erra ao digitar;
2. O usurio abandona a operao; a incluso cancelada;
Cursos de exceco:
1. O usurio no preencheu os dados obrigatrios de INFORMAR
EMERGENCIA (id, descrio, abrev) O sistema avisa e pede o
preenchimento dos dados obrigatrios;
2. Existe outra CADASTRAR FUNO com o mesmo id O Sistema avisa a
FUNO j est cadastrado.
3.
55
Curso alternativo:
1. O usurio erra ao digitar;
57
Cursos de exceco:
1. O usurio no preencheu os dados obrigatrios de INFORMAR
EMERGENCIA (id, descrio) O sistema avisa e pede o preenchimento
dos dados obrigatrios;
2. Existe outra CADASTRAR TIPO DE BLOQUEIO com o mesmo id O
Sistema avisa a TIPO DE BLOQUEIO j est cadastrado.
58
Curso alternativo:
1. O usurio erra ao digitar;
2. O usurio abandona a operao; a incluso cancelada;
60
Cursos de exceo:
1. O usurio no preencheu os dados obrigatrios de CADASTRAR
EQUIPAMENTO (id, descricao, situacao, tipoEquip) O sistema avisa e
pede o preenchimento dos dados obrigatrios;
2. Existe outro EQUIPAMENTO com o mesmo id; O Sistema avisa
EQUIPAMENTO j est cadastrado.
Curso Alternativo:
1. O usurio erra ao digitar;
62
Cursos de Exceo:
1. O usurio no preencheu os dados obrigatrios de CADASTRAR FRAO
(id, desc, dataInicio, dataFim, situao, tipoFracao) O sistema avisa e
pede o preenchimento dos dados obrigatrios;
2. Existe outra FRAO com o mesmo id O Sistema avisa que o FRAO
j est cadastrado.
63
Curso alternativo:
1. O usurio erra ao digitar;
2. O usurio abandona a operao; a incluso cancelada;
Cursos de exceo:
1. O usurio no preencheu os dados obrigatrios de posto CADASTRAR
MILITAR (id, nome, nomeGuerra, doc, senha, tipo, postoGraduacao) O
sistema avisa e pede o preenchimento dos dados obrigatrios;
2. Existe outro MILITAR com o mesmo id O Sistema avisa que o MILITAR
j est cadastrado
66
Cursos alternativos:
1. O usurio erra ao digitar;
2. O usurio abandona a operao; a incluso cancelada.
Cursos de exceo:
1. O usurio no preencheu os dados obrigatrios de posto CADASTRAR
MILITAR (id, nome, nomeGuerra, doc, senha, tipo, postoGraduacao). O
sistema avisa e pede o preenchimento dos dados obrigatrios;
2. Existe outro MILITAR com o mesmo id O Sistema avisa que o MILITAR
j est cadastrado.
69
Curso alternativo:
1. O usurio erra ao digitar;
2. O usurio abandona a operao; a incluso cancelada;
Cursos de exceco:
1. O usurio no preencheu os dados obrigatrios de INFORMAR
EMERGENCIA (id, dataInicio, dataFim, fracao) O sistema avisa e pede o
preenchimento dos dados obrigatrios;
2. Existe outra MILITAR FRAAO com o mesmo id O Sistema avisa a
MILITAR FRAAO j est cadastrado.
72
Curso alternativo:
1. O usurio erra ao digitar;
2. O usurio abandona a operao; a incluso cancelada;
Cursos de exceo:
1. O usurio no preencheu os dados obrigatrios de CADASTRAR
EQUIPAMENTO MILITAR FRAO (idEquipamento, idMilitarFracao) O
sistema avisa e pede o preenchimento dos dados obrigatrios;
2. Existe outro CADASTRAR EQUIPAMENTO MILITAR FRAO com o mesmo
id O Sistema avisa O EQUIPAMENTO MILITAR FRAO j est
cadastrado
77
TABELA TIPO_FRACAO
CREATE TABLE IF NOT EXISTS tipo_fracao (
id_tipo_fracao int(11) NOT NULL AUTO_INCREMENT,
desc_tipo_fracao varchar(20) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (id_tipo_fracao)
)
TABELA FRACAO
CREATE TABLE IF NOT EXISTS fracao (
id_fracao int(11) NOT NULL AUTO_INCREMENT,
desc_fracao varchar(20) CHARACTER SET utf8 NOT NULL,
data_inicio_fracao date NOT NULL,
data_fim_fracao date NOT NULL,
situacao_fracao int(11) DEFAULT NULL,
id_tipo_fracao int(11) NOT NULL,
PRIMARY KEY (id_fracao),
KEY fk_fracao_tipo_fracao (id_tipo_fracao)
)
TABELA TIPO_EQUIPAMENTO
CREATE TABLE IF NOT EXISTS tipo_equipamento (
id_tipo_equipamento int(11) NOT NULL,
desc_tipo_equipamento varchar(20) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (id_tipo_equipamento)
)
TABELA EQUIPAMENTO
CREATE TABLE IF NOT EXISTS equipamento (
id_equipamento int(11) NOT NULL,
desc_equipamento varchar(20) CHARACTER SET utf8 NOT NULL,
situacao_equipamento char(2) CHARACTER SET utf8 NOT NULL,
id_tipo_equipamento int(11) NOT NULL,
PRIMARY KEY (id_equipamento),
KEY fk_equipamento_tipo_equipamento (id_tipo_equipamento)
)
98
TABELA MISSAO
CREATE TABLE IF NOT EXISTS missao (
id_missao int(11) NOT NULL,
desc_missao varchar(30) CHARACTER SET utf8 DEFAULT NULL,
data_inicio_missao date DEFAULT NULL,
data_fim_missao date DEFAULT NULL,
PRIMARY KEY (id_missao)
)
TABELA MISSAO_FRACAO
CREATE TABLE IF NOT EXISTS missao_fracao (
id_missao_fracao int(11) NOT NULL,
id_missao int(11) NOT NULL,
id_fracao int(11) NOT NULL,
PRIMARY KEY (id_missao_fracao),
KEY fk_militar_fracao_missao (id_missao),
KEY fk_militar_fracao_fracao (id_fracao)
)
TABELA MILITAR
CREATE TABLE IF NOT EXISTS militar (
id_militar int(11) NOT NULL AUTO_INCREMENT,
nome_militar varchar(30) CHARACTER SET utf8 NOT NULL,
nome_guerra_militar varchar(15) CHARACTER SET utf8 NOT NULL,
doc_militar varchar(14) CHARACTER SET utf8 NOT NULL,
senha_militar varchar(12) CHARACTER SET utf8 NOT NULL,
tipo_militar char(10) CHARACTER SET utf8 NOT NULL,
id_posto_graduacao int(11) NOT NULL,
PRIMARY KEY (id_militar),
KEY fk_militar_posto_graduacao (id_posto_graduacao)
KEY fk_militar_func (id_func)
TABELA FUNCAO
CREATE TABLE IF NOT EXISTS funcao (
id_func int(11) NOT NULL,
desc_func varchar(20) CHARACTER SET utf8 NOT NULL,
abrev_func char(4) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (id_func)
)
TABELA POSTO_GRADUACAO
CREATE TABLE IF NOT EXISTS posto_graduacao (
id_posto_graduacao int(11) NOT NULL AUTO_INCREMENT,
desc_posto_graduacao varchar(20) CHARACTER SET utf8 NOT NULL,
abrev_posto_graduacao char(10) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (id_posto_graduacao),
99
KEY id_posto_graduacao (id_posto_graduacao)
)
TABELA EQUIPAMENTO_MILITAR
CREATE TABLE IF NOT EXISTS equipamento_militar (
id_equipamento_militar int(11) NOT NULL,
id_equipamento int(11) DEFAULT NULL,
id_militar_fracao int(11) DEFAULT NULL,
PRIMARY KEY (id_equipamento_militar),
KEY fk_equipamento_militar_equipamento (id_equipamento),
KEY fk_equipamento_militar_militar_fracao (id_militar_fracao)
)
TABELA MILITAR_FRACAO
CREATE TABLE IF NOT EXISTS militar_fracao (
id_militar_fracao int(11) NOT NULL,
data_inicio_militar_fracao date NOT NULL,
data_fim_militar_fracao date NOT NULL,
id_militar int(11) NOT NULL,
id_fracao int(11) NOT NULL,
PRIMARY KEY (id_militar_fracao),
KEY fk_militar_fracao_militar (id_militar),
KEY fk_militar_fracao_fracao (id_fracao)
)
TABELA POSICAO_MILITAR
CREATE TABLE IF NOT EXISTS posicao_militar (
id_posicao_militar int(11) NOT NULL,
latitude_posicao_militar varchar(12) CHARACTER SET utf8 NOT NULL,
longitude_posicao_militar varchar(12) CHARACTER SET utf8 NOT NULL,
data_posicao_militar date NOT NULL,
id_militar_fracao int(11) NOT NULL,
PRIMARY KEY (id_posicao_militar),
KEY fk_posicao_militar_militar_fracao (id_militar_fracao)
)
TABELA POSICAO_INIMIGA
CREATE TABLE IF NOT EXISTS posicao_inimiga (
id_posicao_inimiga int(11) NOT NULL,
quantidade_inimigos_posicao_inimiga int(11) NOT NULL,
armados_posicao_inimiga int(11) NOT NULL,
motorizados_posicao_inimiga int(11) NOT NULL,
latitude_posicao_inimiga varchar(12) CHARACTER SET utf8 NOT NULL,
longitude_posicao_inimiga varchar(12) CHARACTER SET utf8 NOT NULL,
informacao_posicao_inimiga varchar(30) CHARACTER SET utf8 NOT NULL,
data_posicao_inimiga date NOT NULL,
id_militar_fracao int(11) NOT NULL,
PRIMARY KEY (id_posicao_inimiga),
KEY fk_posicao_inimiga_militar_fracao (id_militar_fracao)
)
100
TABELA CHAMADA_EMERGENCIA
CREATE TABLE IF NOT EXISTS chamada_emergencia (
id_chamada_emergencia int(11) NOT NULL,
data_chamada_emergencia date NOT NULL,
latitude_chamada_emergencia varchar(12) CHARACTER SET utf8 NOT NULL,
longitude_chamada_emergencia varchar(12) CHARACTER SET utf8 NOT NULL,
id_militar_fracao int(11) NOT NULL,
PRIMARY KEY (id_chamada_emergencia),
KEY fk_chamda_emergencia_militar_fracao (id_militar_fracao)
)
TABELA BLOQUEIO
CREATE TABLE IF NOT EXISTS bloqueio (
id_bloqueio int(11) NOT NULL,
latitude_bloqueio varchar(12) CHARACTER SET utf8 NOT NULL,
longitude_bloqueio varchar(12) CHARACTER SET utf8 NOT NULL,
informacao_bloqueio varchar(30) CHARACTER SET utf8 NOT NULL,
data_bloqueio date NOT NULL,
id_tipo_bloqueio int(11) NOT NULL,
id_militar_fracao int(11) NOT NULL,
PRIMARY KEY (id_bloqueio),
KEY fk_bloqueio_tipo_bloqueio (id_tipo_bloqueio),
KEY fk_bloqueio_militar_fracao (id_militar_fracao)
)
TABELA TIPO_BLOQUEIO
CREATE TABLE IF NOT EXISTS tipo_bloqueio (
id_tipo_bloqueio int(11) NOT NULL,
desc_tipo_bloqueio varchar(10) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (id_tipo_bloqueio)
)
101
6 IMPLEMENTAO
Nesta seo trataremos da implementao do sistema, com as etapas
do desenvolvimento, comunicao com servidores, detalhamento dos
recursos e exemplos das telas do sistema prontas.
6.1.2 PHP
PHP (um acrnimo recursivo para PHP: Hypertext Preprocessor) uma
linguagem de script open source de uso geral, muito utilizada, e
especialmente adequada para o desenvolvimento web e que pode ser
embutida dentro do HTML. Os scripts em PHP rodam no lado do servidor
(server side), o que significa que a pgina HTML final gerada no servidor
antes de ser exibida no browser diferentemente do Javascript, em que o
cdigo Javascript executado no computador do usurio final antes de ser
exibido pelo browser.
A principal vantagem do PHP, e o motivo da linguagem ter sido
utilizada no projeto, o suporta a uma ampla variedade de bancos de
dados. Existem extenses especficas para os diversos bancos de dados
diferentes e isso torna escrever pginas que consultem e exibam
resultados de bancos de dados bastante simples.
6.1.3 Bootstrap
O Bootstrap um framework front end criado em 2011 por dois
desenvolvedores do Twitter com inteno de criar e disponibilizar uma
soluo para otimizar a produo de layouts responsivos para web.
Inicialmente o projeto era usado internamente no Twitter mas, por ser
Open Source e estar disponvel no GitHub, acabou se popularizando.
A principal caracterstica do Bootstrap a capacidade de tornar
websites responsivos, ou seja, que adaptem-se a diferentes tamanhos e
resolues de tela, de forma a exibir o contedo adequadamente em cada
tipo de dispositivo. Trata-se basicamente de uma biblioteca de
103
Fig
ura 78 - Relatrio de Militares
//Aqui criamos um novo documento que apenas gerado e no "salvo" no servidor. Criamos o
"node" de cada marcador.
//Cada marcador tem seu node (n) onde se encontra suas informaes.
echo $dom->saveXML();
?>
function downloadUrl(url,callback) {
var request = window.ActiveXObject ?
new ActiveXObject('Microsoft.XMLHTTP') :
new XMLHttpRequest;
request.onreadystatechange = function() {
if (request.readyState == 4) {
callback(request, request.status);
}
};
request.open('GET', url, true);
request.send(null);
}
downloadUrl('http://linkagencia.com/mission2/mapa/gerarMarcadores.php', function(data) {
var xml = data.responseXML; //obtes o XML e gravao numa varivel XML.
var markers = xml.documentElement.getElementsByTagName('marker'); //Aqui colocamos todos os
marcadores num array markers, obtendo tag por tag obtida no gerarMarcadores
var centro = {lat:-21.667414, lng: -49.731567};//Aqui definimos o centro do mapa onde ser feito
a operao.
var map = new google.maps.Map(document.getElementById('map'), { //-> Essa parte onde chamamos
o mapa pela funo google.maps.Map marcando que ser preenchida a div map.
zoom: 16,
center: centro
});
var iconPosIni = 'images/inim.png'; //cone customizado para diferenciar cada tipo de marcador
(bloqueio, militar, inimigo, etc.)
var contentString =
'<b>ID:'+ id_posicao_inimiga +'</b>'
+'<br>'
+'<b>Militar Cadastrante: </b>'+ militar_fracao
+'<br>'
+'<b>Data de Cadastro: </b>'+ data_posicao_inimiga
+'<br>'
+'<b>Quantidade de Inimigos: </b>'+ quantidade_inimigos_posicao_inimiga
+'<br>'
+'<b>Quantidade de Inimigos Armados: </b>'+ armados_posicao_inimiga
+'<br>'
+'<b>Quantidade de Inimigos Motorizados: </b>'+ motorizados_posicao_inimiga
+'<br>'
+'<b>Informaes Adicionais: </b>'+ informacao_posicao_inimiga;
//Conteudo tratado em HTML dentro de uma string par agerar a caixa de informao
var infowindow = new google.maps.InfoWindow({
content: contentString
}); //gerao da caixa de informaes
<?php
include(HEADER_TEMPLATE); ?> //Incluimos o header padro do sistema com o menu
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyC_R2g5KQNv2w5Rj4VkmWj2-9HIYH2p4VA"
type="text/javascript"></script> //Incluimos na pgina a biblioteca do Google Maps com a nossa
chave
<form action="add.php" method="post"> //Utilizamos o mtodo post para enviar o array com as
informaes serem adicionadas
O mesmo feito para os demais campos de texto que o sistema preenche automticamente.
<div style=" height: 400px; width: 100%;" id="map"></div> //Onde recebemos o mapa gerado
var myOptions = {
center: new google.maps.LatLng(-21.667414, -49.731567 ),
zoom: 16,
mapTypeId: google.maps.MapTypeId.ROADMAP
}; //Dados bsicos para mostrar o mapa, por exemplo, centro do mapa, quantidade de zoom e o
tipo do mapa.
<?
require_once('../config.php'); //busca das configuraes do sistema de diretrio
require_once(DBAPI); //busca das funes do bando de dados
$arquivo = @fopen("data.txt", "r"); //aqui usamos a funo fopen com o arquivo com as linhas de
texto serem inseridas no banco de dados.
while (!feof($arquivo)) { //Lao de repetio que corre por todas as linhas com caracteres do
arquivo
}
elseif ($token==2){
$chamadaEmergencia['data_chamada_emergencia'] = $data_posicao;
$chamadaEmergencia['latitude_chamada_emergencia'] = $latitude_posicao;
$chamadaEmergencia['longitude_chamada_emergencia'] = $longitude_posicao;
$chamadaEmergencia['id_militar_fracao'] = $id_militar_fracao;
save('chamada_emergencia', $chamadaEmergencia);
}
}
unlink('data.txt'); //> No final depois de tudo ser lido deletado o arquivo para nao ser
gerado duplicidade de informaes
?>