✏️ 正在编辑: FolhaPagamentoController.php
路径:
/srv/systems_dir/yuppiecred/application/controllers/FolhaPagamentoController.php
提示:
您可以编辑任何文件(包括二进制文件),但请注意不当修改可能导致文件损坏。
<?php class FolhaPagamentoController extends Zend_Controller_Action { public function indexAction() { $form = new Form_Filtro_FolhaPagamento(); $request = $this->getRequest(); $fields = array(); if ($request->isPost() && $form->isValid($request->getPost())) { $fields = $request->getPost(); $form->populate($fields); $folha = new Model_FolhaPagamento(); $this->view->paginator = $folha->listar($fields, 'nome ASC'); } $this->view->form = $form; } public function folhaBeneficiosAction() { $form = new Form_Filtro_FolhaBeneficios(); $request = $this->getRequest(); $fields = []; if ($request->isPost()) { $fields = $request->getPost(); $form->populate($fields); } $folha = new Model_FolhaPagamento(); $this->view->paginator = $folha->listarBeneficios($fields, 'nome ASC'); $this->view->form = $form; } public function saveAction() { $request = $this->getRequest(); $id = (int) $request->getParam('id'); $form = new Form_FolhaPagamento(); if ($request->isPost()) { if ($form->isValid($request->getPost())) { $folha = new Model_FolhaPagamento($request->getPost()); try { $id = $folha->salvar($folha); $this->_helper->flashMessenger(array( 'success' => 'Dados salvos com sucesso.' )); } catch (Zend_Exception $e) { $this->_helper->flashMessenger($e->getMessage()); } } } if ($id > 0) { $folha = new Model_FolhaPagamento(); $dados = $folha->exibir($id); $form->populate($dados->toArray()); } $this->view->form = $form; } public function deleteAction() { $request = $this->getRequest(); $itens = $request->getPost('itens'); $id = (int) $request->getParam('id'); $listaItens = $itens ? $itens : array( $id ); $count = 0; foreach ($listaItens as $item) { $folha = new Model_FolhaPagamento(); if ($folha->excluir($item)) { $count++; } } if ($count > 0) { $this->_helper->flashMessenger(['success' => "{$count} folha(s) de pagamento(s) excluída(s) com sucesso."]); } else { $this->_helper->flashMessenger(['alert' => "Nenhum item foi excluído."]); } $this->_redirect('/folha-pagamento'); } public function gerarFolhaAction() { $form = new Form_FolhaPagamentoGerar(); $result = null; if ($this->getRequest()->isPost() && $form->isValid($this->getRequest()->getPost())) { $folha = new Model_FolhaPagamento(); $empresas = $this->getRequest()->getPost('empresa_id'); foreach ( $empresas as $empresaId ) { try { $dbtableEmpresa = new Model_DbTable_Empresa(); $empresaObj = $dbtableEmpresa->fetchRow("id = " . $empresaId); $result = $folha->gerarFolha($empresaId, $form->getValue('data_folha'), $form->getValue('dias_trabalhados')); if ($result > 0) { $this->_helper->flashMessenger(array( 'success' => "Folha de pagamento gerada para empresa {$empresaObj->nome}." )); } else { $this->_helper->flashMessenger(array( 'alert' => "Atenção! A folha de pagamento não foi gerada para empresa {$empresaObj->nome}" )); } } catch (Exception $exc) { $this->_helper->flashMessenger(array( 'alert' => $exc->getMessage() )); continue; } } } $this->view->form = $form; } public function getDiasUteisMesAction() { $this->_helper->viewRenderer->setNoRender(); $this->_helper->getHelper('layout')->disableLayout(); $util = new Core_Util(); $dt = new Zend_Date($this->getRequest()->getParam('data_folha')); $dias = (int) $util->getQtdDiasUteisMes($dt->get('MM/yyyy')); $this->_helper->json(array( 'qtd_dias' => $dias )); } public function acoesAction() { switch ($this->getRequest()->getParam('opcao')) { case "deletar-itens": $this->_forward("delete"); break; case "lancar-itens": $this->_forward("lancar-financeiro"); break; } } public function lancarFinanceiroAction() { $request = $this->getRequest(); $itens = $request->getParam('itens'); $cont = 0; if (empty($itens)) { $this->_helper->flashMessenger(['error' => "Você precisa selecionar pelo menos 1 item para lançar no financeiro"]); $this->_helper->redirector("index"); } foreach ($itens as $item) { try { $folha = new Model_FolhaPagamento(); if ($folha->lancarDespesa($item)) { $cont++; } } catch (Core_Exception $e) { $this->_helper->flashMessenger(['error' => $e->getMessage()]); } catch (\Throwable $th) { $this->_helper->flashMessenger(['error' => "Um erro inesperado ocorreu no lançamento da despesa"]); } } $mensagem = ['alert' => "Nenhuma despesa foi lançada"]; if ($cont > 0) { $mensagem = ['success' => "Despesas geradas com sucesso!"]; } $this->_helper->flashMessenger($mensagem); $this->_helper->redirector("index"); } }
💾 保存文件
← 返回文件管理器