private function _partner($sn, $data) { global $db, $config; $account = explode('-', $sn); $account = $account[0]; $account = $db->escape($account); //支付成功 if ($config['partner_fee'] * 100 == $data->total_fee && $data->sign == tenpay_sign($data, $this->mch_key)) { //是否已是合伙人 $get_level_id = 'select `level_id` from ' . $db->table('member') . ' where account = \'' . $account . '\' limit 1'; $level_id = $db->fetchOne($get_level_id); if ($level_id == 0) { $update_member = 'update ' . $db->table('member') . ' set level_id = 1'; $update_member .= ' where account = \'' . $account . '\' limit 1'; $db->update($update_member); //赠送积分给合伙人 add_memeber_exchange_log($account, 0, 0, $config['level_integral'], 0, 0, $account, '成为合伙人赠送积分'); $get_path = 'select `path` from ' . $db->table('member') . ' where `account`=\'' . $account . '\''; $path = $db->fetchOne($get_path); distribution_settle($config['partner_fee'], $path, $account . '成为合伙人'); } } else { //金额不正确或返回不正确 } }
add_memeber_exchange_log($account, 0, 0, $config['level_integral'], 0, 0, $account, '成为合伙人赠送积分'); $get_path = 'select `path` from ' . $db->table('member') . ' where `account`=\'' . $account . '\''; $path = $db->fetchOne($get_path); distribution_settle($config['partner_fee'], $path, $account . '成为合伙人'); } } else { } } else { //支付成功 $sn = $data->out_trade_no; $sn = $db->escape($sn); //产品订单 $get_order_info = 'select * from ' . $db->table('order') . ' where `order_sn`=\'' . $sn . '\''; $order = $db->fetchRow($get_order_info); add_order_log($sn, $order['account'], 3, "在线支付"); if ($order && $order['amount'] == $data->total_fee / 100 && $data->sign == tenpay_sign($data, $mch_key)) { //验证订单金额正确 //1. 设置订单为已付款 $order_data = array('status' => 3, 'pay_time' => time()); $flag = $db->autoUpdate('order', $order_data, '`order_sn`=\'' . $sn . '\' and `status`<3'); if ($flag && $db->get_affect_rows()) { $log->record($sn . '支付成功'); //2. 订单结算 $get_path = 'select `path` from ' . $db->table('member') . ' where `account`=\'' . $order['account'] . '\''; $path = $db->fetchOne($get_path); distribution_settle($order['reward_amount'], $path, $sn); //3. 新增商家收入 $business_income = $order['product_amount'] + $order['delivery_fee'] - $order['reward_amount']; if (add_business_exchange($order['business_account'], 0, $business_income, $order['account'], '用户在线支付')) { add_business_trade($order['business_account'], $business_income, $sn); } else {