= javascript_include_tag 'gestao_de_estoque/transferencia/transferencia' .alert.alert-warning[role="alert" id="alert-content" style="display: none;"] span#alert-message .alert.alert-warning[role="alert" id="alert-content" style="display: none;"] span#alert-message = form_for( @transferencia, html: { class: "form-vertical" }, role: "form" ) do |f| fieldset legend strong = @transferencia.new_record? ? 'Cadastrar' : 'Editar' ' Transferência .form-group .row .col-sm-4 = f.label :data_de_transferencia, "Data de Transferência*", class: "control-label" = f.calendar_field :data_de_transferencia, id: "data_de_transferencia" = error_for @transferencia, :data_de_transferencia .col-sm-4 = f.label :tipo_de_material, "Tipo de Material*", class: "control-label", for: "normal-field" = f.select :tipo_de_material, options_for_select( \ @tipos_de_materiais.collect {|t|[ "#{GestaoDeEstoque::Transferencia.localizar("tipo_de_material", t[0])}", t[0] ] }, @transferencia.try(:tipo_de_material) \ ), {include_blank: 'Selecione'}, class: 'form-control s2', id: "tipo_de_material" = error_for @transferencia, :tipo_de_material .col-sm-4 = f.label :classificacao_tipo_de_material, "Detalhamento*", class: "control-label" = f.select :classificacao_tipo_de_material, options_for_select( \ @classificacoes_tipo_de_material.collect {|t|[ "#{GestaoDeEstoque::Transferencia.localizar("classificacao_tipo_de_material", t[0])}", t[0] ] }, @transferencia.try(:classificacao_tipo_de_material) \ ), {include_blank: 'Selecione'}, class: 'form-control s2', id: "classificacao_tipo_de_material" = error_for @transferencia, :classificacao_tipo_de_material .form-group .row .col-sm-12 fieldset legend strong ' Dados da Origem .row .col-sm-6 = f.label :unidade_orcamentaria_id, "Unidade Orçamentária*", class: "control-label" = f.select :unidade_orcamentaria_id, options_from_collection_for_select( \ @unidades_orcamentarias, :id, :codigo_e_nome_e_exercicio, f.object.try(:unidade_orcamentaria_id) \ ), { include_blank: "Selecione" }, class: "form-control s2", id: "unidade_orcamentaria" = error_for @transferencia, :unidade_orcamentaria_id .col-sm-6 = f.label :almoxarifado_id, "Almoxarifado*", class: "control-label" = f.select :almoxarifado_id, options_from_collection_for_select(@almoxarifados_de_origem, :id, :codigo_e_nome, f.object.try(:almoxarifado_id)), { \ include_blank: "Selecione" \ }, class: "form-control s2", id: "almoxarifado" = error_for @transferencia, :almoxarifado_id .form-group .row .col-sm-12 fieldset legend strong ' Dados do Destino .row .col-sm-6 = f.label :unidade_orcamentaria_de_destino_id, "Unidade Orçamentária*", class: "control-label" = f.select :unidade_orcamentaria_de_destino_id, options_from_collection_for_select( \ @unidades_orcamentarias, :id, :codigo_e_nome_e_exercicio, f.object.try(:unidade_orcamentaria_de_destino_id) \ ), { include_blank: "Selecione" }, class: "form-control s2", id: "unidade_orcamentaria_de_destino" = error_for @transferencia, :unidade_orcamentaria_de_destino_id .col-sm-6 = f.label :almoxarifado_de_destino_id, "Almoxarifado*", class: "control-label" = f.select :almoxarifado_de_destino_id, options_from_collection_for_select(@almoxarifados_de_destino, :id, :codigo_e_nome, f.object.try(:almoxarifado_de_destino_id)), { \ include_blank: "Selecione" \ }, class: "form-control s2", id: "almoxarifado_de_destino" = error_for @transferencia, :almoxarifado_de_destino_id .row style="margin-top:20px" .col-sm-9.form-check style="padding: 10px;" = f.check_box :transferir_todos_os_itens, class: "form-check-input", id: "transferir_todos_os_itens", style: "margin-right: 5px" = f.label :transferir_todos_os_itens, "Transferir todos os itens", class: "form-check-label", for: "transferir_todos_os_itens" = error_for @transferencia, :transferir_todos_os_itens .row style="margin-top30px" .col-sm-12#section-observacao = f.label :observacao, 'Observações', class: "control-label" = f.text_area :observacao, rows: 5, cols: 10, class: "form-control", id: "observacoes" = error_for @transferencia, :observacao h6 ' (*) Campos Obrigatórios .form-actions .row .col-sm-12 = f.submit "Salvar", class: "btn btn-primary" = link_to "Cancelar", gestao_de_estoque_transferencias_path, class: "btn btn-default" - content_for :js do javascript: $(function() { $('form').on('cocoon:after-insert', function(e, insertedItem) { $('select.s2', insertedItem).select2(); $('select.s2').on('select2:select', function(evt) { $(this).focus(); }); $("[data-autonumeric=true]").autoNumeric('init'); $('.valor_unitario, .sub-total, .moeda', insertedItem).autoNumeric('init', { 'aSep': '.', 'aDec': ',', 'aPad': 2, 'vMin': 0, 'aSign': 'R$ ', 'mDec': 4 }); $(document).trigger('refresh_autonumeric'); }); $('#data_de_transferencia').on('change input', function() { const dataDeTransferencia = $(this).val(); const dataSelecionada = dataDeTransferencia.split('/').reverse().join('-'); if (dataDeTransferencia) { const dataFormatada = new Date(dataSelecionada + 'T12:00:00'); const diaDaSemana = dataFormatada.getDay(); const fimDeSemana = diaDaSemana === 0 || diaDaSemana === 6; if (fimDeSemana) { $('#alert-message').html("A data selecionada é um sábado ou domingo."); $('#alert-content').show(); } else { $.ajax({ method: 'GET', url: root_url + '/base/configuracoes_de_feriados.json', dataType: 'json', success: function(data) { const result = data.find((e) => { const dataDoFeriado = e.data_do_feriado; if (dataDoFeriado === dataSelecionada) { $('#alert-message').html("A data selecionada é um feriado."); $('#alert-content').show(); return true; } }); if (!result) { $('#alert-content').hide(); } } }); } } }); });