示例#1
0
文件: Finance.php 项目: pancke/yyaf
 /**
  * 更新用户余额
  * 
  * @param unknown $aUser            
  * @param unknown $aParam            
  */
 public static function updMoney($aUser, $aParam, $iPayID = 0)
 {
     if (Db_Orm::getCommitCnt() == 0) {
         throw new Exception('处理钱一定要用事务处理!');
         return false;
     }
     if ($aParam['iMoney'] == 0) {
         return 1;
     }
     if (is_array($aUser)) {
         $iUserID = $aUser['iUserID'];
     } else {
         $iUserID = (int) $aUser;
     }
     $aUser = Model_User::getDetail($iUserID);
     // 增加之前余额判断
     $iRet = Model_User::query('UPDATE t_user SET iMoney=iMoney+' . $aParam['iMoney'] . ' WHERE iUserID=' . $iUserID . ' AND iMoney=' . $aUser['iMoney']);
     if ($iRet != 1) {
         Model_Base::rollback();
         throw new Exception('处理钱一定要用事务处理!');
         return false;
     }
     if ($iPayID == 0) {
         $aRow = array('iUserID' => $iUserID, 'iPayment' => $aParam['iPayment'], 'iSource' => $aParam['iSource'], 'sReaName' => isset($aParam['sReaName']) ? $aParam['sReaName'] : '', 'iPayType' => isset($aParam['iPayType']) ? $aParam['iPayType'] : 0, 'iPayMoney' => $aParam['iMoney'], 'iUserMoney' => $aUser['iMoney'] + $aParam['iMoney'], 'sOpenName' => isset($aParam['sOpenName']) ? $aParam['sOpenName'] : '', 'sBankName' => isset($aParam['sBankName']) ? $aParam['sBankName'] : '', 'sPayAccount' => isset($aParam['sPayAccount']) ? $aParam['sPayAccount'] : '', 'iPayStatus' => isset($aParam['iPayStatus']) ? $aParam['iPayStatus'] : 1, 'sPayOrder' => isset($aParam['sPayOrder']) ? $aParam['sPayOrder'] : '', 'sMyOrder' => isset($aParam['sMyOrder']) ? $aParam['sMyOrder'] : '', 'sRemark' => isset($aParam['sRemark']) ? $aParam['sRemark'] : '');
         $iPayID = self::addData($aRow);
     } else {
         $aRow = array('iAutoID' => $iPayID, 'iUserMoney' => $aUser['iMoney'] + $aParam['iMoney'], 'iPayStatus' => isset($aParam['iPayStatus']) ? $aParam['iPayStatus'] : 1, 'sPayOrder' => isset($aParam['sPayOrder']) ? $aParam['sPayOrder'] : '', 'sMyOrder' => isset($aParam['sMyOrder']) ? $aParam['sMyOrder'] : '', 'sRemark' => isset($aParam['sRemark']) ? $aParam['sRemark'] : '');
         self::updData($aRow);
     }
     return $iPayID;
 }