✏️ 正在编辑: ComissionamentoCorretorPercentual.php
路径:
/srv/systems_dir/yuppiecred/application/models/DbTable/ComissionamentoCorretorPercentual.php
提示:
您可以编辑任何文件(包括二进制文件),但请注意不当修改可能导致文件损坏。
<?php class Model_DbTable_ComissionamentoCorretorPercentual extends Core_DbTable { protected $_primary = 'id'; protected $_name = 'tb_comissionamento_corretor_percentual'; protected $_referenceMap = array( 'ComissionamentoCorretor' => array( 'columns' => array('comissionamento_id'), 'refTableClass' => 'Model_DbTable_ComissionamentoCorretor', 'refColumns' => array('id') ) ); public function insert(array $data) { // retorna o último percentual de comissionamento cadastrado $result = $this->fetchRow(" comissionamento_id = {$data['comissionamento_id']} and data_final is null", 'data_inicial DESC'); if( $result ){ if( $result->data_final >= $data['data_inicial'] || $result->data_inicial >= $data['data_inicial'] ){ throw new Core_Exception("Existe um conflito de intervalo de datas."); } $comissao = isset($data['comissao']) ? $data['comissao'] : 0; $bonus = isset($data['bonus']) ? $data['bonus'] : 0; $diferimento = isset($data['diferimento']) ? $data['diferimento'] : 0; if( $result->comissao == $comissao && $result->bonus == $bonus && $result->diferimento == $diferimento ){ throw new Core_Exception("O percentual informado é igual ao último cadastrado."); } if ($result->data_final == null) { $yesterday = date('Y-m-d', strtotime("-1 days", strtotime ($data['data_inicial']) )); $this->update(array( 'data_final' => $yesterday ), "id = {$result->id}"); } } $id = parent::insert(array_filter($data)); if ($id) { $model = new Model_NotificacaoComissionamento(); $model->gravarNotificacaoComissaoAlterada($id, 'corretor'); } return $id; } public function getComissaoByIdPercentual(int $id) { $select = $this->getAdapter()->select()->from(["p" => $this->_name], []) ->joinInner(["c" => "tb_comissionamento_corretor"], "c.id = p.comissionamento_id AND p.excluido<>1", ["corretor_id", "banco_id", "convenio_id", "tipo_produto"]) ->joinInner(["b" => "tb_bancos"], "b.id = c.banco_id", []) ->where("b.enviar_notificacao_comissionamento <> 0") ->where("p.id = ?", $id); return $this->getAdapter()->fetchRow($select); } }
💾 保存文件
← 返回文件管理器