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 | 52 | config.add_route('put_user', 'put_user') |
53 | 53 | config.add_route('edituser', 'usuario/editar/{matricula}') |
54 | 54 | config.add_route('favoritos', 'usuario/favoritos/{matricula}') |
55 | + config.add_route('edit_favoritos', 'edit_favoritos') | |
55 | 56 | config.add_route('listuser', 'usuario/lista') |
56 | 57 | config.add_route('delete_user', 'usuario/delete/{matricula}') |
57 | 58 | # | ... | ... |
wscacicneo/model/user.py
... | ... | @@ -133,6 +133,15 @@ class UserBase(WSCacicNeo): |
133 | 133 | multivalued=True, |
134 | 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 | 146 | base_metadata = BaseMetadata( |
138 | 147 | name='users', |
... | ... | @@ -149,6 +158,7 @@ class UserBase(WSCacicNeo): |
149 | 158 | content_list.append(permissao) |
150 | 159 | content_list.append(senha) |
151 | 160 | content_list.append(favoritos) |
161 | + content_list.append(itens) | |
152 | 162 | |
153 | 163 | lbbase = Base( |
154 | 164 | metadata=base_metadata, |
... | ... | @@ -252,7 +262,15 @@ class User(user_base.metaclass): |
252 | 262 | |
253 | 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 | 275 | altera um doc ou path do doc |
258 | 276 | """ | ... | ... |
wscacicneo/templates/favoritos.pt
... | ... | @@ -5,41 +5,19 @@ |
5 | 5 | <div class="widget-head"> |
6 | 6 | <div class="pull-left">Editar</div> |
7 | 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 | 9 | </div> |
10 | 10 | <div class="clearfix"></div> |
11 | 11 | </div> |
12 | 12 | <div class="widget-content"> |
13 | 13 | <div class="padd"> |
14 | 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 | 21 | </ul> |
44 | 22 | </div> |
45 | 23 | </div> |
... | ... | @@ -60,7 +38,7 @@ |
60 | 38 | <ul tal:repeat="doc favoritos" id="favoritos-on" class="current-status"> |
61 | 39 | <li> |
62 | 40 | <label class="checkbox-inline"> |
63 | - <input type="checkbox" id="inlineCheckbox3" value="option3">${doc} | |
41 | + <a id="${doc}">${doc}</a> | |
64 | 42 | </label> |
65 | 43 | </li> |
66 | 44 | </ul> |
... | ... | @@ -69,9 +47,38 @@ |
69 | 47 | </div> |
70 | 48 | <button type="button" class="btn btn-sm btn-default">Salvar</button> |
71 | 49 | </div> |
50 | + <input style="display:none;" id="matricula" value="${request.matchdict['matricula']}"> | |
72 | 51 | </metal:content> |
73 | 52 | <metal:content fill-slot="javascript"> |
74 | 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 | 82 | </script> |
76 | 83 | </metal:content> |
77 | 84 | </metal:main> | ... | ... |
wscacicneo/templates/list_orgao.pt
wscacicneo/templates/user.pt
... | ... | @@ -102,7 +102,14 @@ |
102 | 102 | 'setor' : $('#setor').val(), |
103 | 103 | 'permissao' : $('#permissao').val(), |
104 | 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 | 114 | if (data.email.indexOf("gov.br") > -1 == false){ |
108 | 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 | 119 | ) |
120 | 120 | search = user_obj.search_user(matricula) |
121 | 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 | 127 | @view_config(route_name='config', renderer='templates/config.pt') |
125 | 128 | def config(request): |
... | ... | @@ -319,7 +322,7 @@ def post_user(request): |
319 | 322 | doc = request.params |
320 | 323 | document = doc['favoritos'] |
321 | 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 | 326 | user_obj = User( |
324 | 327 | nome = doc['nome'], |
325 | 328 | matricula = doc['matricula'], |
... | ... | @@ -330,7 +333,8 @@ def post_user(request): |
330 | 333 | setor = doc['setor'], |
331 | 334 | permissao = doc['permissao'], |
332 | 335 | senha = doc['senha'], |
333 | - favoritos = favoritos | |
336 | + favoritos = favoritos, | |
337 | + itens = itens | |
334 | 338 | ) |
335 | 339 | print(user_obj) |
336 | 340 | id_doc = user_obj.create_user() |
... | ... | @@ -441,3 +445,30 @@ def delete_user(request): |
441 | 445 | id = search.results[0]._metadata.id_doc |
442 | 446 | delete = user_obj.delete_user(id) |
443 | 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) | ... | ... |