= simple_form_for(@configuracao_do_evento_contabil) do |f| legend strong = @configuracao_do_evento_contabil.evento_contabil.nome = f.input :evento_contabil_id, as: :hidden - campos_do_modelo = @configuracao_do_evento_contabil.evento_contabil.campos_por_modelo_de_ativacao .row .col-sm-3 = f.input :status, label: 'Status', collection: Contabilidade::ConfiguracaoDoEventoContabil.status_i18n, value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3 = f.input :modalidade_do_empenho, collection: Contabilidade::ConfiguracaoDoEventoContabil.modalidades_do_empenho_i18n, value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3 = f.input :tipo_de_pessoa, collection: Contabilidade::ConfiguracaoDoEventoContabil.tipo_de_pessoas_i18n, value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3 = f.input :modulo_de_ativacao, collection: Contabilidade::ConfiguracaoDoEventoContabil.modulo_de_ativacoes_i18n, value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3 = f.input :tipo_de_evento, collection: Contabilidade::ConfiguracaoDoEventoContabil.tipos_de_evento_i18n, value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2', id: 'tipo_de_evento' } .col-sm-3 = f.input :uso_do_bem, collection: Contabilidade::ConfiguracaoDoEventoContabil.uso_do_bens_i18n, value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3 = f.input :tipo_de_obra, collection: Contabilidade::ConfiguracaoDoEventoContabil.tipos_de_obra_i18n, value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3 = f.input :conta_pcasp_da_conta_bancaria_id, collection: @contas_pcasp_da_conta_bancaria, label_method: :codigo_formatado_e_nome, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3 = f.input :origem_da_retencao, collection: Contabilidade::ConfiguracaoDoEventoContabil.origens_da_retencao_i18n, value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3 = f.input :tipo_de_credito, collection: Contabilidade::ConfiguracaoDoEventoContabil.tipo_de_creditos_i18n, value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3 = f.input :origem_do_recurso, collection: Contabilidade::ConfiguracaoDoEventoContabil.origens_dos_recursos_i18n, value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3 = f.input :tipo_de_resto_a_pagar, collection: Contabilidade::ConfiguracaoDoEventoContabil.tipos_de_resto_a_pagar_i18n, value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3.col-sm-3 = f.input :tipo_de_reconhecimento_do_passivo, collection: Contabilidade::ConfiguracaoDoEventoContabil.tipos_de_reconhecimento_do_passivo_i18n, value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3.col-sm-3 = f.input :classificacao_vpd, collection: Contabilidade::ConfiguracaoDoEventoContabil.classificacoes_vpd_i18n, label: "Classificação VPD", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3.col-sm-3 = f.input :regime, collection: Contabilidade::ConfiguracaoDoEventoContabil.regimes_i18n, label: "Tipo de Regime", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3.col-sm-3 = f.input :tipo_de_entidade, collection: Contabilidade::ConfiguracaoDoEventoContabil.tipos_de_entidade_i18n, label: "Tipo de Entidade", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3.col-sm-3 = f.input :detalhamento_vpd_da_liquidacao, collection: Contabilidade::ConfiguracaoDoEventoContabil.detalhamentos_vpd_da_liquidacao_i18n, label: "Detalhamento VPD da Liquidação", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3.col-sm-3 = f.input :classificacao_pcasp, collection: Contabilidade::ConfiguracaoDoEventoContabil.classificacoes_pcasp_i18n, label: "Classificação PCASP", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3.col-sm-3 = f.input :tipo_de_conta_pcasp, collection: Contabilidade::ConfiguracaoDoEventoContabil.tipos_de_conta_pcasp_i18n, label: "Tipo de Conta PCASP", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3.col-sm-3 = f.input :modalidade_operacao_de_credito, collection: Contabilidade::ConfiguracaoDoEventoContabil.modalidade_operacoes_de_credito_i18n, label: "Modalidade Operação de Créditos", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3.col-sm-3 = f.input :tipo_de_ug, collection: Contabilidade::ConfiguracaoDoEventoContabil.tipos_de_ug_i18n, label: "Tipo de UG (Transf. Fin.)", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3 = f.input :conta_pcasp_id, collection: @contas_pcasp, label_method: :codigo_formatado_e_nome, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3.col-sm-3 = f.input :tipo_ddr, collection: Contabilidade::ConfiguracaoDoEventoContabil.tipos_ddr_i18n, label: "Tipo de evento DDR", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-3.col-sm-3 = f.input :tipo_de_poder, collection: Contabilidade::ConfiguracaoDoEventoContabil.tipos_de_poder_i18n, label: "Tipo de Poder", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .row legend strong Configurações Condicionais (Sim ou Não) .col-sm-4 = f.input :fluxo_completo_do_empenho, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO FIZER FLUXO COMPLETO DO EMPENHO ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :fluxo_completo_da_anulacao_do_empenho, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO FIZER FLUXO COMPLETO DA ANULAÇÃO DO EMPENHO ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :cancelamento_por_falta_de_disponibilidade_de_caixa, collection: [['Sim', true], ['Não', false]], label: "ATIVAR EM CANCELADO POR FALTA DE DISPONIBILIDADE DE CAIXA ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :plano_de_contas_encerrado, collection: [['Sim', true], ['Não', false]], label: "EVENTO DE ENCERRAMENTO ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :inversao_de_superavit_financeiro, collection: [['Sim', true], ['Não', false]], label: "INVERSOR DE SUPERAVIT FINANCEIRO ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :empenho_complementar, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO FOR EMPENHO COMPLEMENTAR ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :resto_a_pagar, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO FOR RESTO A PAGAR ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :processado, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO FOR PROCESSADO ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :receita_de_deducao, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO RECEITA FOR UMA DEDUÇÃO ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :bem_lancado, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO O BEM TIVER SIDO LANÇADO ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :obra_tombada, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO A OBRA TIVER SIDO TOMBADA ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :veio_de_uma_ordem, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO VIER DE UMA ORDEM DE COMPRA/FORNECIMENTO ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :extraorcamentario, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO FOR EXTRAORÇAMENTÁRIO ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :originado_de_um_evento_manual, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO TIVER VINCULO COM EVENTO MANUAL ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :estorno, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO FOR ESTORNO ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :vem_de_pagamento_com_retencao, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO FOR DE UM PAGAMENTO COM RETENÇÕES ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :deposito, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO FOR DEPOSITO ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :retencao, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO FOR RETENÇÃO ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :consignacao, collection: [['Sim', true], ['Não', false]], label: "ATIVAR QUANDO FOR CONSIGNAÇÃO ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :aciona_sem_valor_de_retencoes, collection: [['Sim', true], ['Não', false]], label: "ATIVAR COM O VALOR SEM RETENÇÕES ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :aciona_em_fontes_comecadas_com_2, collection: [['Sim', true], ['Não', false]], label: "ATIVAR APENAS EM FONTES COMECADAS COM 2 ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :duodecimo, collection: [['Sim', true], ['Não', false]], label: "ATIVAR APENAS EM DUODECIMO ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :devolucao_duodecimo, collection: [['Sim', true], ['Não', false]], label: "ATIVAR APENAS EM DEVOLUÇÃO DE DUODECIMO ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :ativar_pela_subconta, collection: [['Sim', true], ['Não', false]], label: "ATIVAR PELA SUBCONTA PCASP ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :ug_diferente, collection: [['Sim', true], ['Não', false]], label: "ATIVAR PARA TRANSF. FINANCEIRAS DE DIFERENTES UG ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :ativar_para_todas_as_contas, collection: [['Sim', true], ['Não', false]], label: "ATIVAR PARA TODAS AS CONTAS (DESPESA EXTRA) ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :possui_conta_bancaria, collection: [['Sim', true], ['Não', false]], label: "POSSUI CONTA BANCÁRIA (TALÕES DE RECEITA) ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :dotacao_acrescimo, collection: [['Sim', true], ['Não', false]], label: "EM ALTERAÇÃO ORÇAMENTARIA ATIVA EM ACRESCIMO", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :abertura, collection: [['Sim', true], ['Não', false]], label: "ATIVA EM EVENTOS DE ABERTURA ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .col-sm-4 = f.input :fonte_vinculada, collection: [['Sim', true], ['Não', false]], label: "FONTE VINCULADAS ?", value_method: :second, label_method: :first, include_blank: 'Selecione', input_html: { class: 's2' } .checkbox.checkbox-circle - if campos_do_modelo.include?(:ativacao_programada) .col-sm-4 = f.input :ativacao_programada, label: 'ATIVAÇÃO PROGRAMADA ?' - if campos_do_modelo.include?(:derivado_de_um_contrato) .col-sm-4 = f.input :derivado_de_um_contrato, label: 'ATIVAR QUANDO TIVER VINCULO COM CONTRATO ?' #tabela_dotacoes table.table.table-bordered.table-hover.table-responsive thead tr th.text-center width="40%" Elemento de Despesa th.text-center width="40%" Sub Elemento de Despesa th.text-center width="15%" Todos Sub Elementos? th tbody#sub_elementos_de_despesa = f.fields_for :sub_elementos_de_despesa_da_configuracao_contabil, @configuracao_do_evento_contabil.sub_elementos_de_despesa_da_configuracao_contabil do |sub_elemento| = render 'sub_elemento_de_despesa_da_configuracao_contabil_fields', f: sub_elemento tfoot tr td = link_to_add_association ' Adicionar'.html_safe, f, :sub_elementos_de_despesa_da_configuracao_contabil, :"data-association-insertion-node" => "tbody#sub_elementos_de_despesa", :"data-association-insertion-method" => "append", class: 'btn btn-primary btn-sm', id: 'btn-add-sub-elementos-de-despesa' #naturezas_das_receitas .row .col-md-12 .alert.alert-warning style="font-weight: 500;" span.fw-bold Aviso! | Ao deixar o digito como 0 o sistema não vai aplicar filtro, serão considerados os números possíveis para aquele campo #fields_da_natureza = f.fields_for :naturezas_da_receita_da_configuracao_contabil, @configuracao_do_evento_contabil.naturezas_da_receita_da_configuracao_contabil do |natureza_da_receita| = render 'natureza_da_receita_da_configuracao_contabil_fields', f: natureza_da_receita = link_to_add_association ' Adicionar'.html_safe, f, :naturezas_da_receita_da_configuracao_contabil, :"data-association-insertion-node" => "#fields_da_natureza", :"data-association-insertion-method" => "append", class: 'btn btn-primary btn-sm', id: 'btn-add-naturezas-da-configuracao-contabil' /Foi retirado por que a nova marcação sugerida pelo Isaac é Fonte vinculada sim ou não / #tabela_de_fontes / table.table.table-bordered.table-hover.table-responsive / thead / tr / th.text-center width="90%" Fonte de Recursos / th / tbody#fonte_de_recurso / = f.fields_for :fontes_da_configuracao_contabil, @configuracao_do_evento_contabil.fontes_da_configuracao_contabil do |fonte| / = render 'fonte_da_configuracao_contabil_fields', f: fonte / tfoot / tr / td / = link_to_add_association ' Adicionar'.html_safe, f, :fontes_da_configuracao_contabil, / :"data-association-insertion-node" => "tbody#fonte_de_recurso", :"data-association-insertion-method" => "append", / class: 'btn btn-primary btn-sm', id: 'btn-add-fontes-da-configuracao-contabil' .form-actions = link_to "Voltar", @configuracao_do_evento_contabil.evento_contabil, class: "btn btn-default" = f.button :submit, "Salvar", class: "btn btn-success" javascript: $(document).ready(function(){ $("#tabela_dotacoes").hide() $("#naturezas_das_receitas").hide() $("#tabela_de_fontes").hide() $("#tipo_de_evento").trigger("change") verificaQuaisCheckBoxesEstaoHabilitadas() $("body .natureza_da_receita").mask("000.0.0.0.00.0.0.00.00.00") }) $('form').submit(function() { $('body .natureza_da_receita').unmask(); }); $("#tipo_de_evento").on("change", function(){ if( $(this).val() == "inclusivo_de_dotacoes" || $(this).val() == "exclusivo_de_dotacoes" ){ $("#tabela_dotacoes").show() $("#naturezas_das_receitas").hide() $("#tabela_de_fontes").hide() } else if( $(this).val() == "inclusivo_de_receitas" || $(this).val() == "exclusivo_de_receitas" ){ $("#naturezas_das_receitas").show() $("#tabela_dotacoes").hide() $("#tabela_de_fontes").hide() } else if( $(this).val() == "inclusivo_de_fontes"){ $("#naturezas_das_receitas").hide() $("#tabela_dotacoes").hide() $("#tabela_de_fontes").show() } else{ $("#tabela_dotacoes").hide() $("#naturezas_das_receitas").hide() $("#tabela_de_fontes").hide() } }) $("body").on("change", "#incluir_todos_sub_elementos",function(){ desabilitaSelectBaseadoNaCheckBox(this); }) function desabilitaSelectBaseadoNaCheckBox(checkbox){ var linha = $(checkbox).closest("tr") if($(checkbox).is(":checked")){ $("#sub_elemento_de_despesa", linha).prop("disabled", true) $("#sub_elemento_de_despesa", linha).val("") $('#sub_elemento_de_despesa option[value=""]', linha).remove() $("#sub_elemento_de_despesa", linha).prepend(new Option('Selecione', '', true, true)); }else{ $("#sub_elemento_de_despesa", linha).prop("disabled", false) consultaAjaxDoElementoDeDespesa($("#elemento_de_despesa", linha)); } } $("body").on("change","#elemento_de_despesa",function(){ consultaAjaxDoElementoDeDespesa($(this)); }) function consultaAjaxDoElementoDeDespesa(elemento){ var linha = $(elemento).closest("tr") limpaSelectBox($("#sub_elemento_de_despesa", linha)) if(elemento.val() != ""){ $.ajax({ method: "GET", url: root_url + "pesquisas/" + elemento.val() + "/sub_elementos_filtrados_por_elemento_de_despesa", beforeSend: function(){ LoadingInterface("Carregando sub elementos...") }, success: function(data,status,xhr){ $.each(data, function(index, item){ option = new Option(item.codigo_e_descricao, item.id, true, true); select_box.append(option); }) } }) } } function limpaSelectBox(id){ select_box = $(id).empty().select2({ placeholder: "Selecione", allowClear: true }) select_box.prepend(new Option('Selecione', '', true, true)); select_box.trigger('change'); return(select_box); } function verificaQuaisCheckBoxesEstaoHabilitadas(){ $("body #incluir_todos_sub_elementos").each(function(){ if( $(this).is(":checked") ){ var linha = $(this).closest("tr") $("#sub_elemento_de_despesa", linha).prop("disabled", true) } }) } function populaSelectBox(select_box){ select_box.prepend(new Option('Selecione', '', true, true)); select_box.trigger('change'); } $(function(){ $('form').on('cocoon:after-insert', function(e, insertedItem) { $('select.s2', insertedItem).select2() console.log("aqui") }) })