Commit b978d374ca629e8cfaaea6ebeddabd91a645691c

Authored by Adley
2 parents 8bc0494a 4650b42f
Exists in master

Merge branch 'master' of https://github.com/lightbase/WSCacicNeo

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
... ... @@ -58,7 +58,6 @@
58 58 </metal:content>
59 59 <metal:content fill-slot="javascript">
60 60 <script type="text/javascript">
61   - });
62 61 </script>
63 62 </metal:content>
64 63 </metal:main>
... ...
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)
... ...