Commit b978d374ca629e8cfaaea6ebeddabd91a645691c
Exists in
master
Merge branch 'master' of https://github.com/lightbase/WSCacicNeo
Showing
6 changed files
with
99 additions
and
36 deletions
Show diff stats
wscacicneo/__init__.py
@@ -52,6 +52,7 @@ def main(global_config, **settings): | @@ -52,6 +52,7 @@ def main(global_config, **settings): | ||
52 | config.add_route('put_user', 'put_user') | 52 | config.add_route('put_user', 'put_user') |
53 | config.add_route('edituser', 'usuario/editar/{matricula}') | 53 | config.add_route('edituser', 'usuario/editar/{matricula}') |
54 | config.add_route('favoritos', 'usuario/favoritos/{matricula}') | 54 | config.add_route('favoritos', 'usuario/favoritos/{matricula}') |
55 | + config.add_route('edit_favoritos', 'edit_favoritos') | ||
55 | config.add_route('listuser', 'usuario/lista') | 56 | config.add_route('listuser', 'usuario/lista') |
56 | config.add_route('delete_user', 'usuario/delete/{matricula}') | 57 | config.add_route('delete_user', 'usuario/delete/{matricula}') |
57 | # | 58 | # |
wscacicneo/model/user.py
@@ -133,6 +133,15 @@ class UserBase(WSCacicNeo): | @@ -133,6 +133,15 @@ class UserBase(WSCacicNeo): | ||
133 | multivalued=True, | 133 | multivalued=True, |
134 | required=False | 134 | required=False |
135 | )) | 135 | )) |
136 | + itens = Field(**dict( | ||
137 | + name='itens', | ||
138 | + alias='itens', | ||
139 | + description='Itens do Usuário', | ||
140 | + datatype='Text', | ||
141 | + indices=['Textual'], | ||
142 | + multivalued=True, | ||
143 | + required=False | ||
144 | + )) | ||
136 | 145 | ||
137 | base_metadata = BaseMetadata( | 146 | base_metadata = BaseMetadata( |
138 | name='users', | 147 | name='users', |
@@ -149,6 +158,7 @@ class UserBase(WSCacicNeo): | @@ -149,6 +158,7 @@ class UserBase(WSCacicNeo): | ||
149 | content_list.append(permissao) | 158 | content_list.append(permissao) |
150 | content_list.append(senha) | 159 | content_list.append(senha) |
151 | content_list.append(favoritos) | 160 | content_list.append(favoritos) |
161 | + content_list.append(itens) | ||
152 | 162 | ||
153 | lbbase = Base( | 163 | lbbase = Base( |
154 | metadata=base_metadata, | 164 | metadata=base_metadata, |
@@ -252,7 +262,15 @@ class User(user_base.metaclass): | @@ -252,7 +262,15 @@ class User(user_base.metaclass): | ||
252 | 262 | ||
253 | return results | 263 | return results |
254 | 264 | ||
255 | - def edit_user(self, id, doc): | 265 | + def create_favoritos(self, id, path, value): |
266 | + """ | ||
267 | + altera um doc ou path do doc | ||
268 | + """ | ||
269 | + results = self.documentrest.create_path(id, path, value) | ||
270 | + | ||
271 | + return results | ||
272 | + | ||
273 | + def edit_user(self, id, value): | ||
256 | """ | 274 | """ |
257 | altera um doc ou path do doc | 275 | altera um doc ou path do doc |
258 | """ | 276 | """ |
wscacicneo/templates/favoritos.pt
@@ -5,41 +5,19 @@ | @@ -5,41 +5,19 @@ | ||
5 | <div class="widget-head"> | 5 | <div class="widget-head"> |
6 | <div class="pull-left">Editar</div> | 6 | <div class="pull-left">Editar</div> |
7 | <div class="widget-icons pull-right"> | 7 | <div class="widget-icons pull-right"> |
8 | - <a href="#" class="wminimize"><i class="fa fa-chevron-up"></i></a> | 8 | + <a href="#" class="wminimize"><i class="fa fa-chevron-up"></i></a> |
9 | </div> | 9 | </div> |
10 | <div class="clearfix"></div> | 10 | <div class="clearfix"></div> |
11 | </div> | 11 | </div> |
12 | <div class="widget-content"> | 12 | <div class="widget-content"> |
13 | <div class="padd"> | 13 | <div class="padd"> |
14 | <!-- Visitors, pageview, bounce rate, etc., Sparklines plugin used --> | 14 | <!-- Visitors, pageview, bounce rate, etc., Sparklines plugin used --> |
15 | - <ul id='favoritos-off' class="current-status"> | ||
16 | - <label class="checkbox-inline"> | ||
17 | - <input type="checkbox" id="cadastro">Cadastro de Órgãos | ||
18 | - </label> | ||
19 | - <li> | ||
20 | - <label class="checkbox-inline"> | ||
21 | - <input type="checkbox" id="inlineCheckbox3">Lista de Órgãos | ||
22 | - </label> | ||
23 | - </li> | ||
24 | - <label class="checkbox-inline"> | ||
25 | - <input type="checkbox" id="inlineCheckbox3">Cadastro de Usuario | ||
26 | - </label> | ||
27 | - <li> | ||
28 | - <label class="checkbox-inline"> | ||
29 | - <input type="checkbox" id="inlineCheckbox3">Lista de Usuario | ||
30 | - </label> | ||
31 | - </li> | ||
32 | - <label class="checkbox-inline"> | ||
33 | - <input type="checkbox" id="inlineCheckbox3">Gráficos | ||
34 | - </label> | ||
35 | - <li> | ||
36 | - <label class="checkbox-inline"> | ||
37 | - <input type="checkbox" id="inlineCheckbox3">Questionar Coleta | ||
38 | - </label> | ||
39 | - </li> | ||
40 | - <label class="checkbox-inline"> | ||
41 | - <input type="checkbox" id="inlineCheckbox3">Notificações | ||
42 | - </label> | 15 | + <ul tal:repeat="i itens" id='favoritos-off' class="current-status"> |
16 | + <li> | ||
17 | + <label class="checkbox-inline"> | ||
18 | + <a id="${i}">${i}</a> | ||
19 | + </label> | ||
20 | + </li> | ||
43 | </ul> | 21 | </ul> |
44 | </div> | 22 | </div> |
45 | </div> | 23 | </div> |
@@ -60,7 +38,7 @@ | @@ -60,7 +38,7 @@ | ||
60 | <ul tal:repeat="doc favoritos" id="favoritos-on" class="current-status"> | 38 | <ul tal:repeat="doc favoritos" id="favoritos-on" class="current-status"> |
61 | <li> | 39 | <li> |
62 | <label class="checkbox-inline"> | 40 | <label class="checkbox-inline"> |
63 | - <input type="checkbox" id="inlineCheckbox3" value="option3">${doc} | 41 | + <a id="${doc}">${doc}</a> |
64 | </label> | 42 | </label> |
65 | </li> | 43 | </li> |
66 | </ul> | 44 | </ul> |
@@ -69,9 +47,38 @@ | @@ -69,9 +47,38 @@ | ||
69 | </div> | 47 | </div> |
70 | <button type="button" class="btn btn-sm btn-default">Salvar</button> | 48 | <button type="button" class="btn btn-sm btn-default">Salvar</button> |
71 | </div> | 49 | </div> |
50 | + <input style="display:none;" id="matricula" value="${request.matchdict['matricula']}"> | ||
72 | </metal:content> | 51 | </metal:content> |
73 | <metal:content fill-slot="javascript"> | 52 | <metal:content fill-slot="javascript"> |
74 | <script type="text/javascript"> | 53 | <script type="text/javascript"> |
54 | + $('a').click(function(){ | ||
55 | + value = $(this).html() | ||
56 | + label = $(this).parent() | ||
57 | + li = $(label).parent() | ||
58 | + ul = $(li).parent() | ||
59 | + id_ul = $(ul).attr('id') | ||
60 | + if(id_ul == 'favoritos-off'){ | ||
61 | + matricula = $('#matricula').html() | ||
62 | + var data = { | ||
63 | + 'value': value, | ||
64 | + 'path': 'favoritos', | ||
65 | + 'matricula': $('#matricula').val() | ||
66 | + } | ||
67 | + $.ajax({ | ||
68 | + type: "PUT", | ||
69 | + url: "${request.route_url('root')}edit_favoritos", | ||
70 | + data: data, | ||
71 | + success: function(){ location.reload(); }, | ||
72 | + error: function(){ alert('Não foi desta vez Tente novamente mais tarde') }, | ||
73 | + }); | ||
74 | + } | ||
75 | + else if(id_ul == 'favoritos-on'){ | ||
76 | + alert(value) | ||
77 | + } | ||
78 | + else{ | ||
79 | + return true | ||
80 | + } | ||
81 | + }); | ||
75 | </script> | 82 | </script> |
76 | </metal:content> | 83 | </metal:content> |
77 | </metal:main> | 84 | </metal:main> |
wscacicneo/templates/list_orgao.pt
@@ -58,7 +58,6 @@ | @@ -58,7 +58,6 @@ | ||
58 | </metal:content> | 58 | </metal:content> |
59 | <metal:content fill-slot="javascript"> | 59 | <metal:content fill-slot="javascript"> |
60 | <script type="text/javascript"> | 60 | <script type="text/javascript"> |
61 | - }); | ||
62 | </script> | 61 | </script> |
63 | </metal:content> | 62 | </metal:content> |
64 | </metal:main> | 63 | </metal:main> |
wscacicneo/templates/user.pt
@@ -102,7 +102,14 @@ | @@ -102,7 +102,14 @@ | ||
102 | 'setor' : $('#setor').val(), | 102 | 'setor' : $('#setor').val(), |
103 | 'permissao' : $('#permissao').val(), | 103 | 'permissao' : $('#permissao').val(), |
104 | 'senha' : $('#senha').val(), | 104 | 'senha' : $('#senha').val(), |
105 | - 'favoritos': 'Relatórios' | 105 | + 'favoritos': 'Relatórios', |
106 | + 'cadastro_orgao': 'Cadastro de Órgãos', | ||
107 | + 'lista_orgao': 'Lista de Órgãos', | ||
108 | + 'cadastro_user': 'Cadastro de Usuario', | ||
109 | + 'lista_user': 'Lista de Usuarios', | ||
110 | + 'relatorios': 'Relatorios', | ||
111 | + 'coleta': 'Questionar Coleta', | ||
112 | + 'notify': 'Notificações' | ||
106 | } | 113 | } |
107 | if (data.email.indexOf("gov.br") > -1 == false){ | 114 | if (data.email.indexOf("gov.br") > -1 == false){ |
108 | setTimeout(function() {noty({text: 'O e-mail tem que ser institucional',layout:'topRight',type:'error',timeout:5000});}, 100); | 115 | setTimeout(function() {noty({text: 'O e-mail tem que ser institucional',layout:'topRight',type:'error',timeout:5000});}, 100); |
wscacicneo/views.py
@@ -119,7 +119,10 @@ def favoritos(request): | @@ -119,7 +119,10 @@ def favoritos(request): | ||
119 | ) | 119 | ) |
120 | search = user_obj.search_user(matricula) | 120 | search = user_obj.search_user(matricula) |
121 | favoritos = search.results[0].favoritos | 121 | favoritos = search.results[0].favoritos |
122 | - return {'favoritos': favoritos } | 122 | + return { |
123 | + 'favoritos': search.results[0].favoritos, | ||
124 | + 'itens': search.results[0].itens | ||
125 | + } | ||
123 | 126 | ||
124 | @view_config(route_name='config', renderer='templates/config.pt') | 127 | @view_config(route_name='config', renderer='templates/config.pt') |
125 | def config(request): | 128 | def config(request): |
@@ -319,7 +322,7 @@ def post_user(request): | @@ -319,7 +322,7 @@ def post_user(request): | ||
319 | doc = request.params | 322 | doc = request.params |
320 | document = doc['favoritos'] | 323 | document = doc['favoritos'] |
321 | favoritos = [document] | 324 | favoritos = [document] |
322 | - print(type(favoritos)) | 325 | + itens = [doc['lista_orgao'], doc['cadastro_orgao'], doc['lista_user'], doc['cadastro_user'], doc['relatorios'], doc['coleta'], doc['notify']] |
323 | user_obj = User( | 326 | user_obj = User( |
324 | nome = doc['nome'], | 327 | nome = doc['nome'], |
325 | matricula = doc['matricula'], | 328 | matricula = doc['matricula'], |
@@ -330,7 +333,8 @@ def post_user(request): | @@ -330,7 +333,8 @@ def post_user(request): | ||
330 | setor = doc['setor'], | 333 | setor = doc['setor'], |
331 | permissao = doc['permissao'], | 334 | permissao = doc['permissao'], |
332 | senha = doc['senha'], | 335 | senha = doc['senha'], |
333 | - favoritos = favoritos | 336 | + favoritos = favoritos, |
337 | + itens = itens | ||
334 | ) | 338 | ) |
335 | print(user_obj) | 339 | print(user_obj) |
336 | id_doc = user_obj.create_user() | 340 | id_doc = user_obj.create_user() |
@@ -441,3 +445,30 @@ def delete_user(request): | @@ -441,3 +445,30 @@ def delete_user(request): | ||
441 | id = search.results[0]._metadata.id_doc | 445 | id = search.results[0]._metadata.id_doc |
442 | delete = user_obj.delete_user(id) | 446 | delete = user_obj.delete_user(id) |
443 | return Response(delete) | 447 | return Response(delete) |
448 | + | ||
449 | +@view_config(route_name='edit_favoritos') | ||
450 | +def edit_favoritos(request): | ||
451 | + """ | ||
452 | + Editar do Favoritos | ||
453 | + """ | ||
454 | + doc = request.params | ||
455 | + value = doc['value'] | ||
456 | + matricula = doc['matricula'] | ||
457 | + path = [doc['path']] | ||
458 | + user_obj = User( | ||
459 | + nome = 'asdasd', | ||
460 | + matricula = 'asdasd', | ||
461 | + email = 'asdsad', | ||
462 | + orgao = 'asdsad', | ||
463 | + telefone = 'sdasd', | ||
464 | + cargo = 'asdasdasd', | ||
465 | + setor = 'asdasd', | ||
466 | + permissao = 'asdasd', | ||
467 | + senha = 'sadasdasd', | ||
468 | + favoritos = ['asdasdasdasd'] | ||
469 | + ) | ||
470 | + search = user_obj.search_user(matricula) | ||
471 | + id = search.results[0]._metadata.id_doc | ||
472 | + update= user_obj.create_favoritos(id, path, value) | ||
473 | + | ||
474 | + return Response(update) |