✏️ 正在编辑: CorretorCredito.php
路径:
/srv/systems_dir/yuppiecred-lidernegocios/application/models/CorretorCredito.php
提示:
您可以编辑任何文件(包括二进制文件),但请注意不当修改可能导致文件损坏。
<?php class Model_CorretorCredito { private $_id; private $_corretorId; private $_credito; public function getId() { return $this->_id; } public function setId($id) { $this->_id = $id; } public function getCorretorId() { return $this->_corretorId; } public function setCorretorId($corretorId) { $this->_corretorId = $corretorId; } public function getCredito() { return $this->_credito; } public function setCredito($credito) { $this->_credito = str_replace(array( '.', ',' ), array( '', '.' ), $credito); } public function __construct($options = null) { if( is_array($options) ){ $this->setOptions($options); } } public function setOptions(array $options) { $methods = get_class_methods($this); foreach ( $options as $key => $value ) { $explode = explode("_", $key); $methodName = ''; foreach ( $explode as $v ) { $methodName .= ucfirst($v); } $key = $methodName != '' ? $methodName : $key; $method = 'set' . ucfirst($key); if( in_array($method, $methods) ){ $this->$method($value); } } return $this; } public function _toArray() { $dbtable = new Model_DbTable_CorretorCredito(); $info = $dbtable->info(); $methods = get_class_methods($this); $data = array( ); foreach ( $info['cols'] as $key ) { $col = $key; $explode = explode("_", $key); $methodName = ''; foreach ( $explode as $v ) { $methodName .= ucfirst($v); } $key = $methodName != '' ? $methodName : $key; $method = 'get' . ucfirst($key); if( in_array($method, $methods) ){ $data[$col] = $this->$method(); } } return $data; } /** * Insere ou altera o registro passado por parâmetro * @param Model_CorretorCredito $corretorCredito */ public function salvar(Model_CorretorCredito $corretorCredito) { $dbtable = new Model_DbTable_CorretorCredito(); if( $corretorCredito->getId() > 0 ){ $dbtable->update($corretorCredito->_toArray(), "id = " . $corretorCredito->getId()); return $corretorCredito->getId(); } else { return $dbtable->insert($corretorCredito->_toArray()); } } /** * Retorna uma lista * @param string $where * @param string $order * @param int $count * @param int $offset * @return array */ public function listar($fields, $order = "id ASC") { $params = array( ); $where = null; if( isset($fields['corretor_id']) && !empty($fields['corretor_id']) ){ $params[] = "corretor_id = " . $fields['corretor_id']; } if( count($params) > 0 ) $where = implode(" AND ", $params); $dbtable = new Model_DbTable_CorretorCredito(); return $dbtable->fetchAll($where, $order); } /** * Exclui o registro passado por parâmetro * @param int $id * @return int The number of rows deleted */ public function excluir($id) { $consultaMultiBr = new Model_DbTable_ConsultaHiscon(); if( $id > 0 ){ $dbtable = new Model_DbTable_CorretorCredito(); $dados = $this->exibir($id); $somaTotal = $consultaMultiBr->calculaCreditosRestantes($dados->corretor_id); $vlTotal = $somaTotal-$dados->credito; if($vlTotal < 0){ throw new Exception("Atenção! Não foi possível excluir o crédito."); } return $dbtable->delete("id = " . $id); } return null; } /** * Retorna um fetchRow do item passado por parâmetro * @param int $id * @return Zend_Db_Table_Row_Abstract | null */ public function exibir($id) { $dbtable = new Model_DbTable_CorretorCredito(); return $dbtable->fetchRow("id = " . $id); } public function getTotalCredito($corretorId) { $dbtable = new Model_DbTable_CorretorCredito(); $select = $dbtable->getAdapter()->select()->from(array('c' => 'tb_corretores_creditos'), array()) ->joinInner(array('p' => 'tb_pacotes_multibr'), 'c.pacote_id = p.id', array('total' => 'SUM(creditos)')) ->where('c.excluido<>1 AND c.corretor_id = ' . $corretorId); return $dbtable->getAdapter()->fetchCol($select); } }
💾 保存文件
← 返回文件管理器