Ejemplo n.º 1
0
 /**
  * 根据经纪人id查询该经纪人的还款记录
  */
 public function searchQueue()
 {
     $brokerId = APF::get_instance()->get_request()->get_parameter('brokerId');
     $sqlResult = Model_Broker_AjkPppccoinQueen::data_access()->filter_by_op('brokerid', '=', $brokerId)->find();
     return array('status' => 'success', 'info' => $sqlResult);
 }
 /**
  * 写返现日志和返现队列
  *
  * @param int $cityId
  * @param int $brokerId
  * @param int $amount
  * @param string $note
  * @param int $cashBackType
  * @return bool
  */
 private function doCashBack($cityId, $brokerId, $amount, $note, $cashBackType)
 {
     $cashBackLog = array('cityId' => $cityId, 'brokerId' => $brokerId, 'amount' => $amount, 'remark' => $note, 'createTime' => date('Y-m-d H:i:s'));
     $effectRowCount = Model_Choice_AjkBrokerChoiceConsumeCashBackLog::create($cashBackLog)->save();
     if ($effectRowCount != 1) {
         $this->logMsg(sprintf('保存经纪人返现日志失败 %s', json_encode($cashBackLog)));
         return false;
     }
     $this->logMsg(sprintf('保存经纪人返现日志成功 %s', json_encode($cashBackLog)));
     /** 写返现队列开始 */
     $cashBackTypeId = intval($this->getCashBackTypeId($cashBackType, $this->_calculateDate));
     if ($cashBackTypeId == 0) {
         $this->logMsg(sprintf('获取经纪人返现队列类型ID失败, actType=%d typeDate=%d', $cashBackType, $this->_calculateDate));
         return false;
     }
     /** 获取经纪人返现队列中是否已经存在 */
     $cashBackQueue = Model_Broker_AjkPppccoinQueen::getBrokerQueue($brokerId, $cashBackTypeId, true);
     if (!empty($cashBackQueue)) {
         $this->logMsg(sprintf('经纪人[%d] 返现[%d] 队列已经存在 %s', $brokerId, $amount, json_encode($cashBackQueue)));
         return false;
     }
     $cashBackQueueData = array('typeid' => $cashBackTypeId, 'brokerid' => $brokerId, 'accounttype' => 1, 'amount' => $amount, 'remark' => $note, 'addtime' => time(), 'cityid' => $cityId);
     try {
         if (1 != Model_Broker_AjkPppccoinQueen::create($cashBackQueueData)->save()) {
             $this->logMsg(sprintf('经纪人[%d] 返现[%d] 写返现队列失败 %s', $brokerId, $amount, json_encode($cashBackQueueData)));
             return false;
         }
     } catch (Exception $e) {
         $this->logMsg(sprintf('经纪人[%d] 返现[%d] 写返现队列失败 %s', $brokerId, $amount, json_encode($cashBackQueueData)));
         $this->logMsg(sprintf('经纪人[%d] 返现[%d] 写返现队列异常 %s', $brokerId, $amount, $e->getMessage()));
         return false;
     }
     return true;
 }
Ejemplo n.º 3
0
 /**
  * 安币返还,每个$cashBackTypeId只能返还一次
  * @param $brokerId
  * @param $cityId
  * @param $amount 返还金额,单位“分”
  * @param $cashBackTypeId 该id由self::getCashBackTypeId生成
  * @param $note 经纪人账户日志里面展示的备注
  * @param int $accounttype 1-经纪人个人账户,2-经纪人公司账户
  * @return bool
  */
 public static function addCashBack($brokerId, $cityId, $amount, $cashBackTypeId, $note, $accounttype = 2)
 {
     $cashBackQueueData = array('typeid' => $cashBackTypeId, 'brokerid' => $brokerId, 'accounttype' => $accounttype, 'amount' => $amount, 'remark' => $note, 'addtime' => time(), 'cityid' => $cityId);
     return Model_Broker_AjkPppccoinQueen::addQueue($cashBackQueueData);
 }
Ejemplo n.º 4
0
 /**
  * 返钱
  * @param $typeId 返还类型Id -> ppc_db.ajk_ppccoin_type
  * @param $accountType '送回帐号类型,1个人账户,2公司账户'
  * @param $brokerId
  * @param $brokerType int 经纪人类型,1-二手房经纪人,2-好租经纪人,3-金铺经纪人 -> 建议统一二手房
  * @param $amount 送钱金额,单位分
  * @param $remark 备注
  * @param $cityId
  * @param $brokerAccountType int 账户类型,1-二手房经纪人,2-好租经纪人,3-金铺经纪人
  * @return int
  */
 public static function addReturnQueue($brokerId, $cityId, $typeId, $amount, $remark, $accountType = 2, $brokerAccountType = 1, $brokerType = 1)
 {
     return Model_Broker_AjkPppccoinQueen::addQueue(array('typeid' => $typeId, 'accounttype' => $accountType, 'brokerid' => $brokerId, 'amount' => $amount, 'remark' => $remark, 'cityid' => $cityId, 'brokertype' => $brokerType, 'brokeraccounttype' => $brokerAccountType, 'addtime' => time(), 'updatetime' => time()));
 }