Commit 0fa6e86d4ffa4153616d10859efdca3d87271d35
1 parent
3199bfe3
Exists in
master
and in
7 other branches
Novo modelo para as listas do sistema de adm
Showing
4 changed files
with
97 additions
and
46 deletions
Show diff stats
admin1/js/core.js
... | ... | @@ -152,6 +152,16 @@ i3GEOadmin.core = { |
152 | 152 | } |
153 | 153 | } |
154 | 154 | ); |
155 | + $("#corpo .list-group-item").each( | |
156 | + function(i,el){ | |
157 | + if(obj.value == ""){ | |
158 | + $(el).show(); | |
159 | + } | |
160 | + else { | |
161 | + $(el).hide(); | |
162 | + } | |
163 | + } | |
164 | + ); | |
155 | 165 | if(obj.value != ""){ |
156 | 166 | $("#"+obj.value).show(); |
157 | 167 | $("#body-"+obj.value).collapse('show'); | ... | ... |
admin1/usuarios/operacoes/exec.php
... | ... | @@ -31,7 +31,9 @@ include_once(dirname(__FILE__)."/../../../admin/php/login.php"); |
31 | 31 | $funcoesEdicao = array( |
32 | 32 | "ADICIONAR", |
33 | 33 | "ALTERAR", |
34 | - "EXCLUIR" | |
34 | + "EXCLUIR", | |
35 | + "LISTA", | |
36 | + "LISTAUNICO" | |
35 | 37 | ); |
36 | 38 | if(in_array(strtoupper($funcao),$funcoesEdicao)){ |
37 | 39 | if(verificaOperacaoSessao("admin/html/operacoes") === false){ |
... | ... | @@ -93,27 +95,36 @@ switch ($funcao) |
93 | 95 | retornaJSON($dados); |
94 | 96 | exit; |
95 | 97 | break; |
98 | + case "LISTAUNICO": | |
99 | + $operacoes = pegaDados("SELECT id_operacao,codigo,descricao from ".$esquemaadmin."i3geousr_operacoes where id_operacao = $id_operacao order by codigo",$dbh,false); | |
100 | + $papeisoperacao = pegaDados("SELECT P.id_papel, P.nome, P.descricao,OP.id_operacao FROM ".$esquemaadmin."i3geousr_operacoespapeis AS OP JOIN ".$esquemaadmin."i3geousr_papeis AS P ON OP.id_papel = P.id_papel WHERE OP.id_operacao = $id_operacao ",$dbh,false); | |
101 | + if($operacoes === false || $papeisoperacao === false){ | |
102 | + $dbhw = null; | |
103 | + $dbh = null; | |
104 | + header("HTTP/1.1 500 erro ao consultar banco de dados"); | |
105 | + exit; | |
106 | + } | |
107 | + $operacao = $operacoes[0]; | |
108 | + $operacao["papeis"] = $papeisoperacao[0]; | |
109 | + //todos os papeis | |
110 | + $papeis = pegaDados("SELECT * from ".$esquemaadmin."i3geousr_papeis order by nome",$dbh); | |
111 | + $dbhw = null; | |
112 | + $dbh = null; | |
113 | + if($papeis === false){ | |
114 | + header("HTTP/1.1 500 erro ao consultar banco de dados"); | |
115 | + exit; | |
116 | + } | |
117 | + retornaJSON(array("operacao"=>$operacao,"papeis"=>$papeis)); | |
118 | + break; | |
119 | + | |
96 | 120 | case "LISTA": |
97 | 121 | $operacoes = pegaDados("SELECT id_operacao,codigo,descricao from ".$esquemaadmin."i3geousr_operacoes order by codigo",$dbh,false); |
98 | - $papeis = pegaDados("SELECT P.id_papel, P.nome, P.descricao, OP.id_operacao FROM ".$esquemaadmin."i3geousr_operacoes AS O JOIN ".$esquemaadmin."i3geousr_operacoespapeis AS OP ON O.id_operacao = OP.id_operacao JOIN ".$esquemaadmin."i3geousr_papeis AS P ON OP.id_papel = P.id_papel ",$dbh,false); | |
99 | - if($operacoes === false || $papeis === false){ | |
122 | + if($operacoes === false){ | |
100 | 123 | $dbhw = null; |
101 | 124 | $dbh = null; |
102 | 125 | header("HTTP/1.1 500 erro ao consultar banco de dados"); |
103 | 126 | exit; |
104 | 127 | } |
105 | - $o = array(); | |
106 | - foreach ($operacoes as $operacao){ | |
107 | - //pega os papeis registrados para cada operacao | |
108 | - $p = array(); | |
109 | - foreach ($papeis as $papel){ | |
110 | - if($papel["id_operacao"] == $operacao["id_operacao"]){ | |
111 | - $p[$papel["id_papel"]] = $papel; | |
112 | - } | |
113 | - } | |
114 | - $operacao["papeis"] = $p; | |
115 | - $o[] = $operacao; | |
116 | - } | |
117 | 128 | $papeis = pegaDados("SELECT * from ".$esquemaadmin."i3geousr_papeis order by nome",$dbh); |
118 | 129 | $dbhw = null; |
119 | 130 | $dbh = null; |
... | ... | @@ -121,7 +132,7 @@ switch ($funcao) |
121 | 132 | header("HTTP/1.1 500 erro ao consultar banco de dados"); |
122 | 133 | exit; |
123 | 134 | } |
124 | - retornaJSON(array("operacoes"=>$o,"papeis"=>$papeis)); | |
135 | + retornaJSON(array("operacoes"=>$operacoes,"papeis"=>$papeis)); | |
125 | 136 | break; |
126 | 137 | case "EXCLUIR": |
127 | 138 | $retorna = excluir($id_operacao,$dbhw); | ... | ... |
admin1/usuarios/operacoes/index.js
... | ... | @@ -57,7 +57,7 @@ Obtém a lista de operacoes |
57 | 57 | var templatePapeis = $("#templateInputPapeis").html(); |
58 | 58 | //template do form de cada operacao |
59 | 59 | var templateLista = $("#templateLista").html(); |
60 | - templateLista = templateLista.replace("{{{templateFormLista}}}",$("#templateFormLista").html()); | |
60 | + //templateLista = templateLista.replace("{{{templateFormLista}}}",$("#templateFormLista").html()); | |
61 | 61 | //lista todas as operacoes |
62 | 62 | var html = Mustache.to_html( |
63 | 63 | "{{#data}}" + templateLista + "{{/data}}", |
... | ... | @@ -67,29 +67,9 @@ Obtém a lista de operacoes |
67 | 67 | { |
68 | 68 | "data":json["operacoes"], |
69 | 69 | "onExcluir": "i3GEOadmin.operacoes.excluirDialogo",//funcao |
70 | - "onSalvar": "i3GEOadmin.operacoes.salvarDialogo",//funcao | |
70 | + "onEditar": "i3GEOadmin.operacoes.editarDialogo",//funcao | |
71 | 71 | "labelCodigo": i3GEOadmin.operacoes.dicionario.codigo, |
72 | - "labelDescricao": i3GEOadmin.operacoes.dicionario.descricao, | |
73 | - "inputPapeis": function(){ | |
74 | - //marca os checkbox | |
75 | - var p = this.papeis; | |
76 | - $(json["papeis"]).each( | |
77 | - function(i,el){ | |
78 | - if(p && el.id_papel && (p[el.id_papel] || el.id_papel == 1)){ | |
79 | - json["papeis"][i]["checked"] = "checked"; | |
80 | - } | |
81 | - else{ | |
82 | - json["papeis"][i]["checked"] = ""; | |
83 | - } | |
84 | - } | |
85 | - ); | |
86 | - return Mustache.to_html( | |
87 | - "{{#data}}" + templatePapeis + "{{/data}}", | |
88 | - { | |
89 | - "data":json["papeis"] | |
90 | - } | |
91 | - ); | |
92 | - } | |
72 | + "labelDescricao": i3GEOadmin.operacoes.dicionario.descricao | |
93 | 73 | } |
94 | 74 | ) |
95 | 75 | ); |
... | ... | @@ -144,10 +124,64 @@ Obtém a lista de operacoes |
144 | 124 | i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); |
145 | 125 | }); |
146 | 126 | }, |
127 | + editarDialogo: function(id){ | |
128 | + i3GEOadmin.core.fechaModalGeral(); | |
129 | + i3GEOadmin.core.modalAguarde(true); | |
130 | + $.post( | |
131 | + "exec.php?funcao=listaunico", | |
132 | + "id_operacao=" + id | |
133 | + ) | |
134 | + .done( | |
135 | + function(data, status){ | |
136 | + var json = jQuery.parseJSON(data); | |
137 | + var html = Mustache.to_html( | |
138 | + "{{#data}}" + $("#templateFormLista").html() + "{{/data}}", | |
139 | + $.extend( | |
140 | + {}, | |
141 | + i3GEOadmin.operacoes.dicionario, | |
142 | + { | |
143 | + "data":json["operacao"], | |
144 | + "labelCodigo": i3GEOadmin.operacoes.dicionario.codigo, | |
145 | + "labelDescricao": i3GEOadmin.operacoes.dicionario.descricao, | |
146 | + "onExcluir": "i3GEOadmin.core.fechaModalGeral",//funcao | |
147 | + "onSalvar": "i3GEOadmin.operacoes.salvarDialogo",//funcao | |
148 | + "inputPapeis": function(){ | |
149 | + //marca os checkbox | |
150 | + var p = this.papeis; | |
151 | + $(json["papeis"]).each( | |
152 | + function(i,el){ | |
153 | + if(p && el.id_papel && (p[el.id_papel] || el.id_papel == 1)){ | |
154 | + json["papeis"][i]["checked"] = "checked"; | |
155 | + } | |
156 | + else{ | |
157 | + json["papeis"][i]["checked"] = ""; | |
158 | + } | |
159 | + } | |
160 | + ); | |
161 | + return Mustache.to_html( | |
162 | + "{{#data}}" + $("#templateInputPapeis").html() + "{{/data}}", | |
163 | + { | |
164 | + "data":json["papeis"] | |
165 | + } | |
166 | + ); | |
167 | + } | |
168 | + } | |
169 | + ) | |
170 | + ); | |
171 | + i3GEOadmin.core.abreModalGeral(html); | |
172 | + } | |
173 | + ) | |
174 | + .fail( | |
175 | + function(data){ | |
176 | + i3GEOadmin.core.modalAguarde(false); | |
177 | + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); | |
178 | + } | |
179 | + ); | |
180 | + }, | |
147 | 181 | adicionaDialogo: function(){ |
148 | 182 | i3GEOadmin.core.abreModalGeral(i3GEOadmin.operacoes.formAdiciona); |
149 | 183 | }, |
150 | -// os parametros sao obtidos do formulario aberto do modal | |
184 | + //os parametros sao obtidos do formulario aberto do modal | |
151 | 185 | adiciona: function(){ |
152 | 186 | var parametros = $("#modalGeral form").serialize(); |
153 | 187 | i3GEOadmin.core.fechaModalGeral(); | ... | ... |
admin1/usuarios/operacoes/index.php
... | ... | @@ -90,9 +90,7 @@ include "../../head.php"; |
90 | 90 | <div class="row-content"> |
91 | 91 | <h3 class="list-group-item-heading {{escondido}}"> |
92 | 92 | {{{codigo}}} |
93 | - | |
94 | - <a class="btn btn-danger btn-fab btn-fab-mini pull-right" role="button" data-toggle="collapse" href="#body-form-{{id_operacao}}" | |
95 | - aria-expanded="false" aria-controls="#body-form-{{id_operacao}}"> | |
93 | + <a href="javascript:void(0)" onclick="{{onEditar}}('{{id_operacao}}')" class="btn btn-danger btn-fab btn-fab-mini pull-right" role="button" aria-expanded="false" > | |
96 | 94 | <i class="material-icons md-18">edit</i> |
97 | 95 | </a> |
98 | 96 | <span class="pull-right"> </span> |
... | ... | @@ -101,9 +99,7 @@ include "../../head.php"; |
101 | 99 | </a> |
102 | 100 | </h3> |
103 | 101 | </div> |
104 | - <div class="panel-body panel-collapse collapse" id="body-form-{{id_operacao}}"> | |
105 | - {{{templateFormLista}}} | |
106 | - </div> | |
102 | + | |
107 | 103 | <div class="list-group-separator"></div> |
108 | 104 | </div> |
109 | 105 | </script> | ... | ... |