✏️ 正在编辑: ComissionamentoCorretor.php
路径:
/srv/systems_dir/yuppiecred-bkp/application/models/DbTable/ComissionamentoCorretor.php
提示:
您可以编辑任何文件(包括二进制文件),但请注意不当修改可能导致文件损坏。
<?php class Model_DbTable_ComissionamentoCorretor extends Core_DbTable { protected $_primary = 'id'; protected $_name = 'tb_comissionamento_corretor'; protected $_dependentTables = array( 'Model_DbTable_ComissionamentoCorretorPercentual' ); protected $_referenceMap = array( 'Corretor' => array( 'columns' => array( 'corretor_id' ), 'refTableClass' => 'Model_DbTable_Corretor', 'refColumns' => array( 'id' ) ), 'Banco' => array( 'columns' => array( 'banco_id' ), 'refTableClass' => 'Model_DbTable_Banco', 'refColumns' => array( 'id' ) ), 'Tabela' => array( 'columns' => array( 'tabela_id' ), 'refTableClass' => 'Model_DbTable_Tabela', 'refColumns' => array( 'id' ) ), 'Convenio' => array( 'columns' => array( 'convenio_id' ), 'refTableClass' => 'Model_DbTable_Convenio', 'refColumns' => array( 'id' ) ), 'Produto' => array( 'columns' => array( 'produto' ), 'refTableClass' => 'Model_DbTable_Produto', 'refColumns' => array( 'codigo' ) ) ); public function insert(array $data) { if( isset($data['valor_de']) && isset($data['valor_a']) && $data['valor_de'] > $data['valor_a'] ){ throw new Exception("Atenção! Intervalo de valores está incorreto."); } if( isset($data['prazo_de']) && isset($data['prazo_a']) && $data['prazo_de'] > $data['prazo_a'] ){ throw new Exception("Atenção! Intervalo de prazos está incorreto."); } $exist = $this->exist($data); if( (is_int($exist) && $exist == -1) || $exist instanceof Zend_Db_Table_Row_Abstract ){ return $exist->id; } return parent::insert(array_filter($data)); } public function exist(array $data) { $result = false; //zero = não existe if( isset($data['corretor_id']) && isset($data['banco_id']) && isset($data['convenio_id']) && isset($data['prazo_de']) && isset($data['prazo_a']) && isset($data['tabela_id']) && isset($data['valor_de']) && isset($data['valor_a'])){ $params = [ "corretor_id = '{$data['corretor_id']}'", "banco_id = '{$data['banco_id']}'", "convenio_id = '{$data['convenio_id']}'", "tabela_id = '{$data['tabela_id']}'", "((valor_a >= '{$data['valor_de']}' AND valor_de <= '{$data['valor_de']}') OR " . "(valor_a >= '{$data['valor_a']}' AND valor_de <= '{$data['valor_a']}'))", "((prazo_a >= '{$data['prazo_de']}' AND prazo_de <= '{$data['prazo_de']}') OR " . "(prazo_a >= '{$data['prazo_a']}' AND prazo_de <= '{$data['prazo_a']}'))", "((taxa_contrato_de <= '{$data['taxa_contrato_de']}' AND taxa_contrato_a >= '{$data['taxa_contrato_de']}') OR " . "(taxa_contrato_de <= '{$data['taxa_contrato_a']}' AND taxa_contrato_a >= '{$data['taxa_contrato_a']}'))", "desativado <> 1" ]; if (!empty($data['idade_inicial']) && !empty($data['idade_final'])) { $params[] = "((idade_inicial <= '{$data['idade_inicial']}' AND idade_final >= '{$data['idade_inicial']}') OR " . "(idade_inicial <= '{$data['idade_final']}' AND idade_final >= '{$data['idade_final']}'))"; } if (!empty($data['id'])) { $params[] = "id <> '{$data['id']}'"; } if (!empty($data['tipo_produto'])) { $params[] = "tipo_produto = '{$data['tipo_produto']}'"; } $where = implode(' AND ', $params); $dados = $this->fetchRow($where); if( count($dados) > 0){ $result = $dados; } } else { $result = -1; //campos obrigatorios não preenchidos } return $result; } public function update(array $data, $where, $registerLog = true) { if( !isset($data['excluido']) && empty($data['excluido']) ){ if( $data['valor_de'] > $data['valor_a'] ){ throw new Exception("Atenção! Intervalo de valores está incorreto."); } if( $data['prazo_de'] > $data['prazo_a'] ){ throw new Exception("Atenção! Intervalo de prazos está incorreto."); } if(empty($data['prazo'])){ $data['prazo'] = 0; } $exist = $this->exist($data); if( $exist == -1 || $exist instanceof Zend_Db_Table_Row_Abstract ){ throw new Exception("Ocorreu um erro na inserção da comissão."); } } return parent::update($data, $where, $registerLog); } public function updateComissionamento(array $data, $where, $registerLog = true) { return parent::update($data, $where, $registerLog); } public function fetchAll($where = null, $order = null, $count = null, $offset = null) { if( ($where instanceof Zend_Db_Table_Select ) ){ $strWhere = "{$this->_name}.excluido<>1"; foreach ( $where->getPart(Zend_Db_Table_Select::WHERE) as $w ) { $strWhere .= ' AND ' . $w; } $where->where($strWhere); } elseif( is_array($where) ){ $where[] = "{$this->_name}.excluido<>1"; } elseif( $where != null ){ $where .= " AND {$this->_name}.excluido<>1"; } else { $where = "{$this->_name}.excluido<>1"; } return parent::fetchAll($where, $order, $count, $offset); } }
💾 保存文件
← 返回文件管理器