Commit 5d710f59 authored by Paulo Parente's avatar Paulo Parente

atualização programas transferegov

parent 1df099bd
......@@ -164,9 +164,10 @@ use App\Mod_transferegov\Secretarias;
use App\Mod_transferegov\Subeixos;
use App\Mod_transferegov\Modalidades;
use App\Mod_transferegov\GruposModalidade;
use App\Mod_transferegov\Programa as Mod_transferegovPrograma;
use App\Mod_transferegov\Programas as Mod_transferegovProgramas;
use App\Mod_transferegov\ViewListaProgramas;
use Illuminate\Http\Request;
class ApiController extends Controller
{
......@@ -1192,20 +1193,102 @@ class ApiController extends Controller
//Programas TransfereGov
public function BuscarProgramasTransferegov(Request $request){
$query = ViewListaProgramas::leftJoin('mcid_paineis.view_programas_cidades','view_lista_programas_2024.cod_programa','=','view_programas_cidades.cod_programa')
->select(
'view_lista_programas_2024.cod_programa',
'view_lista_programas_2024.nom_programa',
'view_lista_programas_2024.cod_orgao_sup_programa',
'view_lista_programas_2024.num_ano_disponiblizacao',
'view_lista_programas_2024.dsc_sit_programa',
'view_lista_programas_2024.num_acao_orcamentaria',
'view_programas_cidades.cod_programa as cod_programa_cidades',
'view_programas_cidades.cod_acao',
'view_programas_cidades.cod_resultado_primario',
'view_programas_cidades.txt_rp',
'view_programas_cidades.id_secretaria',
'view_programas_cidades.txt_sigla_secretaria',
'view_programas_cidades.cod_eixo',
'view_programas_cidades.txt_eixo',
'view_programas_cidades.cod_subeixo',
'view_programas_cidades.txt_subeixo',
'view_programas_cidades.cod_modalidade',
'view_programas_cidades.txt_modalidade',
'view_programas_cidades.cod_grupo_modalidade',
'view_programas_cidades.txt_grupo_modalidade',
'view_programas_cidades.bln_novo_pac'
);
if($request->ano){ $query->where('view_lista_programas_2024.num_ano_disponiblizacao', $request->ano); }
if($request->rp){ $query->where('view_programas_cidades.cod_resultado_primario', $request->rp); }
if($request->bln_novo_pac){ $query->where('view_programas_cidades.bln_novo_pac', $request->bln_novo_pac); }
if($request->secretaria){ $query->where('view_programas_cidades.id_secretaria', $request->secretaria); }
if($request->eixo){ $query->where('view_programas_cidades.cod_eixo', $request->eixo); }
if($request->subeixo){ $query->where('view_programas_cidades.cod_subeixo', $request->subeixo); }
if($request->modalidade){ $query->where('view_programas_cidades.cod_modalidade', $request->modalidade); }
if($request->grupo){ $query->where('view_programas_cidades.cod_grupo_modalidade', $request->grupo); }
if($request->txt_busca){
//Colunas específicas para buscar por texto
$colunas = [
'view_lista_programas_2024.cod_programa',
'view_lista_programas_2024.nom_programa',
'view_lista_programas_2024.cod_orgao_sup_programa',
'view_lista_programas_2024.dsc_sit_programa',
'view_lista_programas_2024.num_acao_orcamentaria',
'view_programas_cidades.cod_programa',
'view_programas_cidades.cod_acao',
'view_programas_cidades.txt_rp',
'view_programas_cidades.txt_sigla_secretaria',
'view_programas_cidades.txt_eixo',
'view_programas_cidades.txt_subeixo',
'view_programas_cidades.txt_modalidade',
'view_programas_cidades.txt_grupo_modalidade'
];
//Verifica em cada coluna se o texto informado no filtro existe
$query->where(function ($query) use ($colunas, $request) {
foreach ($colunas as $index => $coluna) {
if ($index === 0) {
$query->where($coluna, 'ILIKE', '%' . $request->txt_busca . '%');
} else {
$query->orWhere($coluna, 'ILIKE', '%' . $request->txt_busca . '%');
}
}
});
}
$resultados = $query->orderby('cod_programa','desc')->get();
return $resultados;
}
public function BuscarEixosTransferegov()
{
$where = [7, 10];
return Eixos::whereIn('cod_eixo', $where)->orderBy('txt_eixo')->get();
}
public function BuscarSubeixosTransferegov($eixoId)
public function BuscarSubeixosTransferegov(Request $request)
{
return Subeixos::where('cod_eixo', $eixoId)->orderBy('txt_subeixo')->get();
$where = [];
//Se a api recebeu um parâmetro EIXO como filtro
if ($request->eixo){
$where[] = ['cod_eixo', $request->eixo];
}
return Subeixos::where($where)->orderBy('txt_subeixo')->get();
}
public function BuscarModalidadesTransferegov($subeixoId)
public function BuscarModalidadesTransferegov(Request $request)
{
return Modalidades::where('cod_subeixo', $subeixoId)->orderBy('txt_modalidade')->get();
$where = [];
if($request->subeixo){
$where[] = ['cod_subeixo', $request->subeixo];
}
return Modalidades::where($where)->orderBy('txt_modalidade')->get();
}
public function BuscarGrupoModalidadeTransferegov()
......@@ -1222,32 +1305,17 @@ class ApiController extends Controller
public function BuscarRpsTransferegov()
{
/*
$where = ['RP2', 'RP3', 'RP6', 'RP7', 'RP8'];
return Rps::whereIn('txt_rp',$where)->orderBy('txt_rp')->get();
*/
return Rps::orderBy('txt_rp')->get();
}
public function BuscarAcoes()
{
/*
$where = [
"0022", "00AF", "00CW", "00CX",
"00CY", "00SW", "00SY", "00SZ",
"00T0", "00T1", "00T2", "00T3",
"00TH", "00TI", "00TJ", "00TK",
"00TM", "00TN", "00TO", "00TP",
"00TQ", "00VC", "00VD", "00VJ",
"00VK", "00VM", "20Z9", "212B",
"21GR", "2843", "2D49", "6438",
"8865", "8872", "8873", "8874"
];
return Acoes::whereIn('cod_acao_governo', $where)->get();*/
return Acoes::orderBy('cod_acao_governo')->get();
}
//carteira investimento
......
......@@ -137,16 +137,11 @@ class ProgramaController extends Controller
public function listarProgramas()
{
if (auth()->check()){
$programasTransferegov = ViewListaProgramas::leftJoin('mcid_paineis.tab_programas_cidades','view_lista_programas_2024.cod_programa','=','tab_programas_cidades.cod_programa')
->select('view_lista_programas_2024.*', 'tab_programas_cidades.cod_programa as cod_programa_cidades')
->orderby('cod_programa','desc')->get();
return view("modulo_transferegov.listar_programas", compact("programasTransferegov"));
return view("modulo_transferegov.listar_programas");
}else{
return redirect('/login');
}
}
}
This diff is collapsed.
......@@ -468,19 +468,25 @@ Vue.component(
"altera-situacao-monitoramento-projeto",
require("./components/mod_plancidades/validacao_monitoramento/AlteraSituacaoMonitoramentoProjeto.vue")
);
//Transferegov - Programas
Vue.component(
"registro-programa",
require("./components/mod_transferegov/RegistoPrograma.vue")
);
Vue.component(
"registro-programa",
require("./components/mod_transferegov/RegistoPrograma.vue")
);
Vue.component(
"listar-programas",
require("./components/mod_transferegov/ListarProgramas.vue")
);
Vue.component(
"cadastro-destaque",
require("./components/mod_briefing/CadastroDestaque.vue")
);
Vue.component(
"cadastro-destaque",
require("./components/mod_briefing/CadastroDestaque.vue")
);
......
......@@ -127,7 +127,8 @@
<div class="column col-6">
<label>Grupo Modalidade</label>
<select class="form-select br-select" name="grupo" id="grupo" v-model="grupo" required>
<select class="form-select br-select" name="grupo" id="grupo" v-model="grupo"
:disabled="this.modalidade == ''" required>
<option value="">Escolha uma opção:</option>
<option v-for="item in grupos" v-text="item.txt_grupo_modalidade" :key="item.cod_grupo_modalidade"
:value="item.cod_grupo_modalidade"></option>
......@@ -187,7 +188,7 @@
this.modalidade = '';
if (this.eixo != '') {
axios.get(this.url + '/api/transferegov/programas/subeixos/' + this.eixo).then(resposta => {
axios.get(this.url + '/api/transferegov/programas/subeixos/', {params: {eixo: this.eixo}}).then(resposta => {
this.subeixos = resposta.data;
}).catch(error => {
console.log(error);
......@@ -200,7 +201,7 @@
this.modalidade = '';
if (this.subeixo != '') {
axios.get(this.url + '/api/transferegov/programas/modalidades/' + this.subeixo).then(resposta => {
axios.get(this.url + '/api/transferegov/programas/modalidades/', {params: {subeixo: this.subeixo}}).then(resposta => {
this.modalidades = resposta.data;
}).catch(error => {
console.log(error);
......@@ -211,6 +212,7 @@
onChangeNovoPac(){
this.eixo = '';
this.modalidade='';
this.onChangeEixo();
},
},
......@@ -262,10 +264,8 @@
this.modalidade = this.programaCidades.cod_modalidade ? this.programaCidades.cod_modalidade:'';
this.acao = this.programaCidades.cod_acao;
this.bln_novo_pac = this.programaCidades.bln_novo_pac;
this.grupo = this.programaCidades.cod_grupo_modalidade;
this.grupo = this.programaCidades.cod_grupo_modalidade ? this.programaCidades.cod_grupo_modalidade:'';
}
}
}
</script>
......@@ -122,7 +122,7 @@
<td class="p-3 text-right">
@if($dados->bln_registro_validado == FALSE && $dados->bln_valida_beneficiario == false && $dados->bln_valida_cnpj == true && !empty($dados->num_emenda))
@if($dados->user_id != Auth::user()->id)
@if($dados->user_id == Auth::user()->id)
<button class="br-button mr-3 warning small block" type="button" onclick="window.location.href='/rp/arquivo/editar/registro/emenda/{{$dados->emenda_comissao_id}}'">
<i class="fas fa-edit"></i>Editar
</button>
......
......@@ -19,67 +19,11 @@
:barracompartilhar="false">
</cabecalho-relatorios>
<div class="row justify-content-center">
<div class="col col-sm-12 col-md-3">
<div class="br-card mb-3">
<div class="card-content">
<div class="row justify-content-between">
<div class="column col-3">
<p class="text-weight-semi-bold text-up-02">Filtros</p>
</div>
</div>
<listar-programas
:url="'{{ url('/') }}'">
<div class=""><span class="feedback info" role="alert"><i class="fas fa-info-circle" aria-hidden="true"></i>Em desenvolvimento</span>
</div>
<hr>
<div class="d-flex flex-column">
<div class="mb-3">
<label for="filtro2">Ano</label>
<select class="form-select br-select" name="filtro2" id="filtro2" disabled>Todos
<option value="opcao1">2024</option>
</select>
</div>
<div class="mb-3">
<label for="filtro3">Registro</label>
<select class="form-select br-select" name="filtro3" id="filtro3" disabled>Todos
<option value="opcao1">Pendente</option>
<option value="opcao2">Concluído</option>
</select>
</div>
<div class="mb-3">
<div class="br-input">
<label for="filtro1">Cod. Programa</label>
<input class="br-input" name="filtro1" id="filtro1" disabled>
</div>
</div>
</div>
<hr>
<div class="d-flex flex-column align-items-end">
<button class="br-button primary mr-3" type="button" disabled>Aplicar</button>
</div>
</div>
</div>
</div>
<div class="col col-sm-9">
<div class="br-card">
<div class="card-content">
<div class='overflow-scroll py-3' style="height:70vh">
@foreach ($programasTransferegov as $programaTransferegov)
@include('modulo_transferegov.card_programa')
@endforeach
</div>
</div>
</div>
</div>
</div>
</listar-programas>
</div>
......
......@@ -319,10 +319,13 @@ Route::get('/carteira_investimento/secretarias', 'ApiController@buscarSecretaria
Route::get('/carteira_investimento/download/{file_name}', 'ApiController@downloadCarteira');
//TransfereGov
//Programas
Route::get('/transferegov/programas/buscar', 'ApiController@BuscarProgramasTransferegov');
//Eixos
Route::get('/transferegov/programas/eixos', 'ApiController@BuscarEixosTransferegov');
Route::get('/transferegov/programas/subeixos/{eixoId}', 'ApiController@BuscarSubeixosTransferegov');
Route::get('/transferegov/programas/modalidades/{subeixoId}', 'ApiController@BuscarModalidadesTransferegov');
Route::get('/transferegov/programas/subeixos', 'ApiController@BuscarSubeixosTransferegov');
Route::get('/transferegov/programas/modalidades', 'ApiController@BuscarModalidadesTransferegov');
Route::get('/transferegov/programas/grupos', 'ApiController@BuscarGrupoModalidadeTransferegov');
//Resto
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment