✏️ 正在编辑: Funcionario.php
路径:
/srv/systems_dir/yuppiecred/application/forms/Funcionario.php
提示:
您可以编辑任何文件(包括二进制文件),但请注意不当修改可能导致文件损坏。
<?php class Form_Funcionario extends Core_Form { public function init() { $params = $this->_getParams(); $id = $params['id']; $this->setName('f_save_funcionario'); $this->addElement('hidden', 'id', array( 'class' => 'invisivel' )); $select = new Zend_Form_Element_Select('empresa_id'); $select->setLabel('Empresa:') ->setRequired(true) ->addMultiOptions(Core_Combos::getEmpresasOptions()); $this->addElement($select); $this->addElement('text', 'nome', array( 'label' => 'Nome:', 'required' => true, 'size' => 35 )); $this->addElement('text', 'cpf_responsavel', array( 'label' => 'CPF:', 'required' => true, 'onkeypress' => 'mascara(this, fcpf)', 'maxlength' => 14 )); $this->addElement('text', 'data_nascimento', array( 'label' => 'Data Nascimento:', 'onkeypress' => 'mascara(this, data)', 'maxlength' => 10, 'size' => 11, 'validators' => array( new Validators_DataNascimento() ) )); $this->addElement('text', 'email', array( 'label' => 'E-mail:', 'validators' => array( 'EmailAddress' ), 'size' => 35 )); $this->addElement('text', 'fone', array( 'label' => 'Fone:', 'onkeypress' => 'mascara(this, telefone)', 'maxlength' => 14, 'size' => 15 )); $this->addElement('text', 'celular', array( 'label' => 'Celular:', 'onkeypress' => 'mascara(this, telefone)', 'maxlength' => 15, 'size' => 15 )); $this->addElement('text', 'cep', array( 'label' => 'CEP:', 'onkeypress' => 'mascara(this, soNumeros)', 'maxlength' => 8, 'size' => 10 )); $this->addElement('text', 'endereco', array( 'label' => 'Endereço:', 'size' => 35 )); $this->addElement('text', 'complemento', array( 'label' => 'Complemento:', 'size' => 35 )); $this->addElement('text', 'bairro', array( 'label' => 'Bairro:', )); $this->addElement('text', 'cidade', array( 'label' => 'Cidade:', )); $this->addElement('text', 'uf', array( 'label' => 'UF:', 'maxlength' => 2, 'size' => 3, 'validators' => array( new Validators_Uf() ) )); $this->addElement('text', 'responsavel', array( 'label' => 'Reponsável:', 'size' => 35 )); $select = new Zend_Form_Element_Select('banco'); $select->setLabel('Banco:') ->setAttrib('class', 'comboautocomplete') ->addMultiOptions(Core_Combos::getBancosFebrabanOptions()); $this->addElement($select); $this->addElement('text', 'agencia', array( 'label' => 'Agência:', )); $this->addElement('text', 'conta', array( 'label' => 'Conta:', )); $this->addElement('text', 'titular', array( 'label' => 'Titular:', 'size' => 35, )); $this->addElement('text', 'cpf_titular', array( 'label' => 'CPF Titular:', 'onkeypress' => 'mascara(this, fcpf)', 'maxlength' => 14, 'validators' => array( new Validators_Cpf() ) )); $select = new Zend_Form_Element_Select('tipo_conta'); $select->setLabel('Tipo de Conta:') ->addMultiOptions(Core_Combos::getTiposContasOptions()); $this->addElement($select); $this->addElement('textarea', 'obs', array( 'label' => 'OBS:', 'rows' => 5, 'cols' => 40 )); $this->addElement('text', 'chave_pix', [ 'label' => 'Chave PIX', 'size' => 35, 'maxlength' => 50 ]); $this->addElement(Form_DatePicker::getDatePicker('data_contratacao', 'Data contratação:', null, true)); $select = new Zend_Form_Element_Select('setor_id'); $select->setLabel('Setor:') ->addMultiOptions(Core_Combos::getSetoresCadastroOptions()); $this->addElement($select); $select = new Zend_Form_Element_Select('cargo_id'); $select->setLabel('Cargo:') ->setRequired(true) ->addMultiOptions(Core_Combos::getCargosOptions()); $this->addElement($select); $select = new Zend_Form_Element_Select('tipo_vinculo'); $select->setLabel('Vínculo:') ->setRequired(true) ->addMultiOptions([ '' => '', 'CLT' => 'CLT', 'PSPF' => 'PSPF', 'PSPJ' => 'PSPJ', 'Estagio' => 'Estagio', ]); $this->addElement($select); $this->addElement(Form_DatePicker::getDatePicker('data_desligamento', 'Data desligamento:', null, false)); $select = new Zend_Form_Element_Select('modelo_desligamento'); $select->setLabel('Modelo desligamento:') ->addMultiOptions(Core_Combos::getModeloDesligamentoOptions()); $this->addElement($select); $this->addElement('text', 'salario_base', array( 'label' => 'Salário Base (R$):', 'size' => 10, 'onkeypress' => 'mascara(this, mvalor)', 'required' => true )); $this->getElement('salario_base')->addDecorator('Label', array( 'tag' => 'dt', 'tagClass' => 'clear' )); $select = new Zend_Form_Element_Select('optante_transporte'); $select->setLabel('Recebe vale transporte?') ->addMultiOptions([ 0 => 'Não', 1 => 'Sim' ]); $this->addElement($select); $this->addElement('text', 'vale_transporte', array( 'label' => 'Vale Transporte (R$):', 'size' => 10, 'onkeypress' => 'mascara(this, mvalor)', 'required' => true )); $this->addElement('text', 'vale_alimentacao', array( 'label' => 'Vale Alimentação (R$):', 'size' => 10, 'onkeypress' => 'mascara(this, mvalor)', 'required' => true )); $this->addElement('button', 'btn_detalhe', array( 'label' => 'Detalhamento de custos', 'class' => 'bt_new', 'onclick' => "getDetalhamentoCustos($id)" )); $this->addElement('button', 'btn_back', array( 'label' => 'Voltar', 'class' => 'bt_back', 'onclick' => "window.location='" . $this->getView()->baseUrl() . "/funcionario'" )); $this->addElement('submit', 'btn_save', array( 'label' => 'Salvar', 'class' => 'bt_save' )); $this->addElement('button', 'btn_new', array( 'label' => 'Novo Cadastro', 'class' => 'bt_new', 'onclick' => "window.location='" . $this->getView()->baseUrl() . "/funcionario/save'" )); $this->_agruparCampos(); $this->_setDefaultDecorators(); } protected function _setDefaultDecorators() { $this->setDecorators( array( 'FormElements', array( 'HtmlTag', array( 'tag' => 'dl', 'class' => 'zend_form form_funcionario' ) ), 'Form' )); } protected function _agruparCampos() { $this->addDisplayGroup(array('empresa_id', 'nome', 'cpf_responsavel', 'data_nascimento', 'email', 'fone', 'celular' ), 'dados_pessoais', array( 'legend' => 'Dados Pessoais')); $this->addDisplayGroup(array( 'cep', 'endereco', 'complemento', 'bairro', 'cidade', 'uf' ), 'grp_endereco', array( 'legend' => 'Endereco')); $this->addDisplayGroup( ['responsavel', 'banco', 'agencia', 'conta', 'titular', 'cpf_titular', 'tipo_conta', 'chave_pix', 'obs'], 'dados_bancarios', ['legend' => 'Dados bancários'] ); $this->addDisplayGroup([ 'cargo_id', 'setor_id', 'data_contratacao', 'data_desligamento', 'motivo_desligamento', 'modelo_desligamento', 'tipo_vinculo', 'salario_base', 'vale_alimentacao', 'optante_transporte', 'vale_transporte', 'btn_detalhe' ], 'dados_contrato', ['legend' => 'Dados de contrato']); $this->addDisplayGroup(array( 'btn_back', 'btn_save', 'btn_new' ), 'buttons'); foreach ( $this->getDisplayGroups() as $displayGroup ) { $displayGroup->removeDecorator('DtDdWrapper'); $displayGroup->removeDecorator('HtmlTag'); if( $displayGroup->getName() == 'buttons' ){ foreach ( $displayGroup->getElements() as $element ) { $element->setDecorators(array( 'ViewHelper' )); } } } } public function populate(array $values) { $datas = ['data_contratacao', 'data_desligamento']; foreach ($datas as $data){ $values[$data] = !empty($values[$data]) && is_bool(strpos($values[$data], '0000-00-00')) ? date('d/m/Y', strtotime($values[$data])) : ''; } $valores = ['salario_base', 'vale_transporte', 'vale_alimentacao']; foreach($valores as $valor){ if(isset($values[$valor])){ $values[$valor] = !strstr($values[$valor], ",") ? number_format($values[$valor], 2, ',', '.') : $values[$valor]; } else { $values[$valor] = "0,00"; } } return parent::populate($values); } }
💾 保存文件
← 返回文件管理器