= javascript_include_tag 'bomcobox' = javascript_include_tag "contabilidade/obras/form" = javascript_include_tag "contabilidade/obras/busca-cep" .alert.alert-warning[role="alert" id="alert-content" style="display: none;"] span#alert-message = form_for( obra, html: { class: "form-vertical" }, role: "form" ) do |f| fieldset legend strong = obra.new_record? ? 'Cadastrar' : 'Editar' ' Obra = f.hidden_field :contrato_id, value: @obra.contrato_id, id: "contrato" legend ' Dados da Obra .form-group .row .col-sm-2 = f.label :codigo, 'Cód. Sequencial*', class: "control-label", for: "normal-field" = f.number_field :codigo, placeholder: "0001", class: "form-control" = error_for obra, :codigo .col-sm-3 = f.label :tipo_de_obra, 'Tipo de Obra*', class: 'control-label' = f.select :tipo_de_obra, options_for_select(\ tipos_de_obra.collect {|t|[ Contabilidade::Obra.localizar("tipo_de_obra", t[0]), t[0] ] }, obra.tipo_de_obra.nil? ? params[:servico].present? ? 'servico' : 'obra' : obra.try(:tipo_de_obra) \ ), {include_blank: 'Selecione'}, class: 'form-control s2' = error_for obra, :tipo_de_obra .col-sm-7 = f.label :contrato_id, 'Contrato*', class: "control-label", for: "normal-field" a#detalhesContrato = f.select :contrato_id, options_for_select(@contratos.map{ |c| [c.numero_e_contratado, c.id, {'data-valor' => c.valor_do_contrato}] }, obra.contrato_id),\ {include_blank: 'Selecione'}, class: "form-control s2", id: "contrato_id" = error_for obra, :contrato_id .row#div_objeto_do_contrato style="margin-top: 30px" .col-sm-12 = f.label :objeto_do_contrato, "Objeto do Contrato:", class: "control-label" p#objeto_do_contrato .form-group .row - if obra.possui_medicoes? .col-sm-3 = f.label :data, "Valor*", class: "control-label" p.form-control-static = obra.valor.to_f.real_contabil - else .col-sm-3 = f.label :valor, 'Valor*', class: "control-label", for: "normal-field" = f.text_field :valor, class: "form-control", placeholder: 'R$ 0,00', data: { autonumeric: true, 'a-sep'=> '.', 'a-dec'=>',', 'a-sign'=> 'R$ ', 'v-min'=> '0.00', 'v-max'=> '9999999999.99'}, disabled: true, id: "valor" = error_for obra, :valor .col-sm-3 .checkbox.checkbox-circle = f.check_box :possui_garantia = f.label :possui_garantia, "Possui Garantia Contratual?" .col-sm-3 .checkbox.checkbox-circle = f.check_box :possui_estudos_projetos = f.label :possui_estudos_projetos, "Possui Estudos/Projetos?" = f.hidden_field :formulario_de_estudos .form-group .row .col-sm-12 = f.label :apelido_da_obra, 'Apelido da Obra/Serv.', class: "control-label", for: "normal-field" = f.text_field :apelido_da_obra, class: "form-control", placeholder: 'Informe aqui um apelido para facilitar a identificação da obra/serviço', maxlength: 60 = error_for obra, :apelido_da_obra .form-group .row .col-sm-12 = f.label :descricao, 'Descrição da Obra*', class: "control-label", for: "normal-field" = f.text_area :descricao, class: "form-control", rows: 3 = error_for obra, :descricao legend ' Dados da Execução .form-group .row .col-sm-3 = f.label :data, "Início da Obra*", class: "control-label", for: "normal-field" .input-group = f.text_field :data_de_inicio, placeholder: '00/00/0000', class: "form-control date-picker", autocomplete: "off" span.input-group-addon span.icone-calendario = error_for obra, :data_de_inicio .col-sm-3 = f.label :data, "Previsão de Término*", class: "control-label", for: "normal-field" .input-group = f.text_field :data_prevista_de_termino, placeholder: '00/00/0000', class: "form-control date-picker", autocomplete: "off" span.input-group-addon span.icone-calendario = error_for obra, :data_prevista_de_termino .col-sm-3 = f.label :numero_do_crea, 'ART de Execução*', class: "control-label", for: "normal-field" = f.text_field :numero_do_crea, class: "form-control" , maxlength: 25 = error_for obra, :numero_do_crea .col-sm-3 = f.label :cei, 'Matrícula CEI/CNO', class: "control-label", for: "normal-field" = f.text_field :cei, class: "form-control" , maxlength: 12 = error_for obra, :cei - if Configuracao.last.try(:utiliza_evento_contabil?) legend ' Classificação Contábil .form-group .row .col-sm-6 = f.label :classificacao_do_bem, 'Classificação da Obra*', class: "control-label", for: "normal-field" = f.select :conta_id, options_from_collection_for_select( @classificacoes_de_bens, \ :id, :codigo_formatado_e_nome, obra.conta_id \ ), {include_blank: 'Selecione'}, class: "form-control s2" = error_for obra, :classificacao_do_bem - unless params[:servico].present? || @obra.servico? .col-sm-3 = f.label :uso_do_bem, 'Uso do Bem', class: "control-label", for: "normal-field" = f.select :uso_do_bem, options_for_select( @usos_de_bens.collect { |t| [ Contabilidade::Empenho.localizar("uso_do_bem", t[0]), t[0]] }, \ @obra.try(:uso_do_bem), \ ), {include_blank: 'Selecione'}, class: 'form-control s2', data: { value: @obra.try(:uso_do_bem) } = error_for obra, :uso_do_bem = hidden_field_tag 'exercicio', @exercicio .col-sm-3 = f.label :conta_pcasp_id, 'Tipo do Bem', class: "control-label", for: "normal-field" = f.select :conta_pcasp_id, options_for_select( \ @contas_pcasp.nil? ? [] : @contas_pcasp.to_a.collect { |conta| [conta.nome, conta.id] }, \ @contas_pcasp.nil? ? nil : @obra.try(:conta_pcasp_id) \ ), {include_blank: 'Selecione'}, class: 'form-control s2', data: { value: !@contas_pcasp.nil? ? @obra.try(:conta_pcasp_id) : nil } = error_for obra, :conta_pcasp_id span.help-block ' Selecione um uso do bem para filtrar os tipos do bem. legend ' Outras Informações .form-group .row .col-sm-4 = f.label :tipo_de_administracao_id, 'Tipo de Administração*', class: "control-label", for: "normal-field" = f.select :tipo_de_administracao_id, options_from_collection_for_select( tipos_de_administracao, \ :id, :codigo_e_descricao, obra.tipo_de_administracao_id \ ), {include_blank: 'Selecione'}, class: "form-control s2" = error_for obra, :tipo_de_administracao_id .col-sm-3 = f.label :tombo_do_terreno, 'Tombo do Terreno', class: "control-label", for: "normal-field" = f.text_field :tombo_do_terreno, class: "form-control", maxlength: 20 = error_for obra, :tombo_do_terreno .col-sm-3 = f.label :tombo_da_construcao, 'Tombo da Construção', class: "control-label", for: "normal-field" = f.text_field :tombo_da_construcao, class: "form-control", maxlength: 20 = error_for obra, :tombo_da_construcao legend ' Licença e Alvará .form-group .row .col-sm-3 = f.label :data, "Data da Licença", class: "control-label", for: "normal-field" .input-group = f.text_field :data_da_licenca, placeholder: '00/00/0000', class: "form-control date-picker", autocomplete: "off" span.input-group-addon span.icone-calendario = error_for obra, :data_da_licenca .col-sm-2 = f.label :licenca_ambiental, 'Nº da Licença', class: "control-label", for: "normal-field" = f.text_field :licenca_ambiental, class: "form-control" , maxlength: 12 = error_for obra, :licenca_ambiental .col-sm-7 = f.label :orgao_licenca, 'Orgão Licenciador', class: "control-label", for: "normal-field" = f.text_field :orgao_licenca, class: "form-control", maxlength: 80 = error_for obra, :orgao_licenca .form-group .row .col-sm-3 = f.label :data, "Data do Alvará", class: "control-label", for: "normal-field" .input-group = f.text_field :data_do_alvara, placeholder: '00/00/0000', class: "form-control date-picker", autocomplete: "off" span.input-group-addon span.icone-calendario = error_for obra, :data_do_alvara .col-sm-2 = f.label :numero_do_alvara, 'Nº do Alvará', class: "control-label", for: "normal-field" = f.text_field :numero_do_alvara, class: "form-control" = error_for obra, :numero_do_alvara .col-sm-3 = f.label :validade_do_alvara, 'Validade do Alvará (dias)', class: "control-label", for: "normal-field" = f.number_field :validade_do_alvara, class: "form-control" = error_for obra, :validade_do_alvara legend ' Fontes .form-group .row .col-sm-4 = f.label "Tipo de Controle*", class: "control-label", for: "normal-field" = f.select :fonte_de_origem, options_for_select( \ Contabilidade::Obra.fontes_de_origem.collect { |t| [ Contabilidade::Obra.localizar("fonte_de_origem", t[0]), t[0] ] }, @obra.try(:fonte_de_origem) \ ), { include_blank: 'Selecione' }, class: 'form-control s2', id: 'fonte_de_origem', data: { value: @obra.try(:fonte_de_origem) } = error_for @obra, :fonte_de_origem .col-sm-4 = f.label "Programa de Trabalho", class: "control-label", for: "normal-field" = f.text_field :programa_de_trabalho, class: "form-control", id: "programa_de_trabalho", maxlength: 20 = error_for obra, :programa_de_trabalho .col-sm-4 = f.label "Contrapartida", class: "control-label", for: "normal-field" = f.select :fonte_de_contrapartida, options_for_select( \ Contabilidade::Obra.fontes_de_contrapartida.collect { |t| [ Contabilidade::Obra.localizar("fonte_de_contrapartida", t[0]), t[0] ] }, @obra.try(:fonte_de_contrapartida) \ ), { include_blank: 'Selecione' }, class: 'form-control s2', id: 'fonte_de_contrapartida', data: { value: @obra.try(:fonte_de_contrapartida) } = error_for @obra, :fonte_de_contrapartida legend ' Localização da Obra/Serviço de Engenharia .form-group .row .col-sm-3 = f.label :cep, 'CEP', class: "control-label", for: "normal-field" .input-group = f.text_field :cep, placeholder: '00000-000', class: "form-control" , maxlength: 9 span.input-group-btn button.btn.btn-primary.buscar-cep type='button' data-toggle="tooltip" data-placement="top" title="Buscar endereço via CEP" span.glyphicon.glyphicon-search = error_for obra, :cep span.error_explanation#buscar-cep-error .col-sm-6 label.control-label for="normal-field" br = link_to "CEP - Correios", "http://www.buscacep.correios.com.br/sistemas/buscacep/buscaCepEndereco.cfm", target:"_blank" span.help-block ' Não sabe o CEP? Clique aqui para buscar o CEP no site dos Correios. .form-group .row .col-sm-6 = f.label :logradouro, class: "control-label", for: "normal-field" = f.text_field :logradouro, class: "form-control" , maxlength: 120 = error_for obra, :logradouro .col-sm-2 = f.label "Número", class: "control-label", for: "normal-field" = f.text_field :numero_logradouro, class: "form-control" , maxlength: 8 = error_for obra, :numero_logradouro .col-sm-4 = f.label :bairro, class: "control-label", for: "normal-field" = f.text_field :bairro, class: "form-control" , maxlength: 60 = error_for obra, :bairro .form-group .row .col-sm-4 = f.label :complemento, class: "control-label", for: "normal-field" = f.text_field :complemento, class: "form-control" , maxlength: 80 = error_for obra, :complemento .col-sm-2 = f.label :uf, 'UF da Cidade', class: 'control-label' = select_tag 'estados', options_from_collection_for_select( @estados, :id, :uf, obra.cidade.try( :estado_id ) \ ), include_blank: 'Selecione', class: 'form-control s2' .col-sm-4 = f.label :cidade, 'Cidade', class: 'control-label' - if obra.cidade.present? = f.select :cidade_id, [], { include_blank: "#{obra.cidade.nome}" }, class: 'form-control s2', data: { value: obra.cidade_id } - else = f.select :cidade_id, [], { include_blank: 'Selecione um estado para escolher uma cidade' }, class: 'form-control s2', data: { value: obra.cidade_id } = error_for obra, :cidade_id, :cidade .form-group h6 ' (*) Campos Obrigatórios .form-actions .row .col-sm-12 = f.submit "Salvar", class: "btn btn-primary" - if obra.id.present? = link_to "Cancelar", rota_obra(obra), class: "btn btn-default" - else = link_to "Cancelar", rota_obras, class: "btn btn-default"