Commit 020fa092250750391064e041f9549cc7d9ba6b2f

Authored by Macieski
2 parents 3c848a32 30e191f6
Exists in master

reports

wscacicneo/__init__.py
@@ -54,14 +54,15 @@ def main(global_config, **settings): @@ -54,14 +54,15 @@ def main(global_config, **settings):
54 cfg.add_route('notify', 'notificacoes/cadastro') 54 cfg.add_route('notify', 'notificacoes/cadastro')
55 cfg.add_route('post_notify', 'post_notify') 55 cfg.add_route('post_notify', 'post_notify')
56 cfg.add_route('list_notify', 'notificacoes/lista') 56 cfg.add_route('list_notify', 'notificacoes/lista')
57 - cfg.add_route('cadastro_coleta', 'coleta/cadastro')  
58 - #  
59 # base orgaos 57 # base orgaos
60 cfg.add_route('create_orgao', 'create/orgao/{nm_orgao}') 58 cfg.add_route('create_orgao', 'create/orgao/{nm_orgao}')
61 - #  
62 # relatorios 59 # relatorios
63 cfg.add_route('conf_report', 'relatorios/configuracao') 60 cfg.add_route('conf_report', 'relatorios/configuracao')
64 cfg.add_route('report_itens', 'relatorio/{nm_orgao}/{attr}/{child}') 61 cfg.add_route('report_itens', 'relatorio/{nm_orgao}/{attr}/{child}')
  62 + cfg.add_route('report_hd', 'relatorio/{orgao}/{item}')
  63 + # Coleta Manual
  64 + cfg.add_route('cadastro_coleta', 'coleta/cadastro')
  65 + cfg.add_route('post_coleta_manual', 'post_coleta_manual')
65 # 66 #
66 cfg.add_route('list', 'list') 67 cfg.add_route('list', 'list')
67 cfg.add_route('gestao', 'gestao') 68 cfg.add_route('gestao', 'gestao')
wscacicneo/model/reports.py
@@ -44,6 +44,48 @@ class Reports(): @@ -44,6 +44,48 @@ class Reports():
44 44
45 return get 45 return get
46 46
  47 + def coleta_to_dict(self):
  48 + """
  49 + Convert status object to Python dict
  50 + :return:
  51 + """
  52 +
  53 + return conv.document2dict(coleta_base.lbbase, self)
  54 +
  55 + def coleta_to_json(self):
  56 + """
  57 + Convert object to json
  58 + :return:
  59 + """
  60 +
  61 + return conv.document2json(nm_base.lbbase, self)
  62 +
  63 + def create_coleta(self, document):
  64 + """
  65 + Insere dados de coleta
  66 + """
  67 + document = self.coleta_to_json()
  68 + try:
  69 + coleta = self.documentrest.create(document)
  70 + except HTTPError as err:
  71 + log.error(err.strerror)
  72 + return None
  73 +
  74 + return coleta
  75 +
  76 + def update_coleta(self,id, document):
  77 + """
  78 + Altera dados de coleta
  79 + """
  80 + coleta = self.documentrest.update(id,document)
  81 + return coleta
  82 +
  83 + def delete_coleta(self,id, document):
  84 + """
  85 + Apaga os dados de coleta
  86 + """
  87 + coleta = self.documentrest.update(id)
  88 + return coleta
47 def get_attribute(self, attr): 89 def get_attribute(self, attr):
48 """ 90 """
49 Testa recuperar atributo do Documento 91 Testa recuperar atributo do Documento
wscacicneo/templates/cadastro_coleta.pt
@@ -17,7 +17,7 @@ @@ -17,7 +17,7 @@
17 <label class="col-lg-2 control-label">Data da Coleta:</label> 17 <label class="col-lg-2 control-label">Data da Coleta:</label>
18 <div class="col-lg-5"> 18 <div class="col-lg-5">
19 <div id="datetimepicker1" class="input-append input-group dtpicker"> 19 <div id="datetimepicker1" class="input-append input-group dtpicker">
20 - <input data-format="dd-MM-yyyy" type="text" class="form-control"> 20 + <input data-format="dd-MM-yyyy" type="text" id="data_coleta" class="form-control">
21 <span class="input-group-addon add-on"> 21 <span class="input-group-addon add-on">
22 <i data-time-icon="fa fa-times" data-date-icon="fa fa-calendar"></i> 22 <i data-time-icon="fa fa-times" data-date-icon="fa fa-calendar"></i>
23 </span> 23 </span>
@@ -124,13 +124,13 @@ @@ -124,13 +124,13 @@
124 <div class="form-group"> 124 <div class="form-group">
125 <label class="col-lg-2 control-label">Versão do Processador:</label> 125 <label class="col-lg-2 control-label">Versão do Processador:</label>
126 <div class="col-lg-5"> 126 <div class="col-lg-5">
127 - <input type="text" id="nome_processador" class="form-control" placeholder="Versão do Processador"> 127 + <input type="text" id="versao_processador" class="form-control" placeholder="Versão do Processador">
128 </div> 128 </div>
129 </div> 129 </div>
130 <div class="form-group"> 130 <div class="form-group">
131 <label class="col-lg-2 control-label">Data de Instalação</label> 131 <label class="col-lg-2 control-label">Data de Instalação</label>
132 <div class="col-lg-5"> 132 <div class="col-lg-5">
133 - <input type="text" id="nome_processador" class="form-control" placeholder="Data de Instalação do Processador"> 133 + <input type="text" id="data_instalacao_processador" class="form-control" placeholder="Data de Instalação do Processador">
134 </div> 134 </div>
135 </div> 135 </div>
136 <br/> 136 <br/>
@@ -148,6 +148,34 @@ @@ -148,6 +148,34 @@
148 $('#limpar').click(function(){ 148 $('#limpar').click(function(){
149 $('#nome_processador').val('') 149 $('#nome_processador').val('')
150 }); 150 });
  151 + $('#enviar').click(function(){
  152 + var data = {
  153 + 'orgao': $('#orgao').val(),
  154 + 'data_coleta': $('#data_coleta').val(),
  155 + 'marca_hd': $('#marca_hd').val(),
  156 + 'tamanho_hd': $('#tamanho_hd').val(),
  157 + 'tipo_hd': $('#tipo_hd').val(),
  158 + 'idade_hd': $('#idade_hd').val(),
  159 + 'nome_so': $('#nome_so').val(),
  160 + 'versao_so': $('#versao_so').val(),
  161 + 'fabricante_so': $('#fabricante_so').val(),
  162 + 'patrimonio_bios': $('#patrimonio_bios').val(),
  163 + 'fabricante_bios': $('#fabricante_bios').val(),
  164 + 'interface_memoria': $('#interface_memoria').val(),
  165 + 'armazenamento_memoria': $('#armazenamento_memoria').val(),
  166 + 'idade_memoria': $('#idade_memoria').val(),
  167 + 'nome_processador': $('#nome_processador').val(),
  168 + 'versao_processador': $('#versao_processador').val(),
  169 + 'data_instalacao_processador': $('#data_instalacao_processador').val()
  170 + }
  171 + $.ajax({
  172 + type: "POST",
  173 + url: "${request.route_url('root')}post_coleta_manual",
  174 + data: data,
  175 + success: function(){ alert('sucesso') },
  176 + error: function(){ alert('erro') },
  177 + });
  178 + });
151 </script> 179 </script>
152 </metal:content> 180 </metal:content>
153 </metal:main> 181 </metal:main>
wscacicneo/views.py
@@ -14,6 +14,7 @@ from wscacicneo.model.orgao import Orgao @@ -14,6 +14,7 @@ from wscacicneo.model.orgao import Orgao
14 from wscacicneo.model.orgao import OrgaoBase 14 from wscacicneo.model.orgao import OrgaoBase
15 from wscacicneo.model.user import User 15 from wscacicneo.model.user import User
16 from wscacicneo.model.user import UserBase 16 from wscacicneo.model.user import UserBase
  17 +from wscacicneo.model.reports import Reports
17 from wscacicneo.model.notify import Notify 18 from wscacicneo.model.notify import Notify
18 from wscacicneo.model.notify import NotifyBase 19 from wscacicneo.model.notify import NotifyBase
19 from wscacicneo.model import coleta_manual 20 from wscacicneo.model import coleta_manual
@@ -582,3 +583,42 @@ def cadastro_coleta(request): @@ -582,3 +583,42 @@ def cadastro_coleta(request):
582 ) 583 )
583 search = orgao_obj.search_list_orgaos() 584 search = orgao_obj.search_list_orgaos()
584 return {'orgao_doc': search.results} 585 return {'orgao_doc': search.results}
  586 +
  587 +
  588 +@view_config(route_name='post_coleta_manual')
  589 +def post_coleta_manual(request):
  590 + """
  591 + Post doc ColetaManual
  592 + """
  593 + rest_url = REST_URL
  594 + document = request.params
  595 + orgao = document['orgao']
  596 + coleta_obj = Reports(
  597 + data_coleta = document['data_coleta'],
  598 + marca_hd = document['marca_hd'],
  599 + tamanho_hd = document['tamanho_hd'],
  600 + tipo_hd = document['tipo_hd'],
  601 + idade_hd = document['idade_hd'],
  602 + nome_so = document['nome_so'],
  603 + versao_so = document['versao_so'],
  604 + fabricante_so = document['fabricante_so'],
  605 + patrimonio_bios = document['patrimonio_bios'],
  606 + fabricante_bios = document['fabricante_bios'],
  607 + interface_memoria = document['interface_memoria'],
  608 + armazenamento_memoria = document['armazenamento_memoria'],
  609 + idade_memoria = document['idade_memoria'],
  610 + nome_processador = document['nome_processador'],
  611 + versao_processador = document['versao_processador'],
  612 + data_instalacao_processador = document['data_instalacao_processador']
  613 + )
  614 + coleta_dict= {
  615 + "data_coleta" : data_coleta,
  616 + "hd": {
  617 + "marca_hd": marca_hd,
  618 + "tamanho_hd": tamanho_hd,
  619 + "tipo_hd" : tipo_hd,
  620 + "idade_hd" : idade_hd
  621 + },
  622 + }
  623 + id_doc = coleta_obj.create_coleta(orgao,coleta_dict)
  624 + return Response(str(id_doc))