Exemplo n.º 1
0
 $pay_order_data = array('add_time' => time(), 'total_amount' => $total_amount, 'real_amount' => $real_amount, 'integral_amount' => 0, 'integral_given_amount' => 0, 'item_name' => $lang['level'][$level_id] . '注册', 'recommend' => $recommend, 'recommend_id' => $recommend_info['id'], 'payment_id' => 1, 'payment_name' => '微信支付', 'payment_code' => 'Wechat', 'type' => 1, 'balance_paid' => $balance_paid, 'reward_paid' => $reward_paid, 'account' => $account);
 $response['status'] = 1;
 if ($real_amount == 0) {
     $response['status'] = 3;
     $pay_order_data['status'] = 3;
     $pay_order_data['pay_time'] = time();
 }
 $pay_order_sn = '';
 do {
     $pay_order_sn = time() . rand(1000, 9999);
     $check_pay_order_sn = 'select `order_sn` from ' . $db->table('pay_order') . ' where `order_sn`=\'' . $pay_order_sn . '\'';
 } while ($db->fetchOne($check_pay_order_sn));
 $pay_order_data['order_sn'] = $pay_order_sn;
 if ($db->autoInsert('pay_order', array($pay_order_data))) {
     if ($balance_paid || $reward_paid) {
         member_account_change($_SESSION['account'], -1 * $balance_paid, -1 * $reward_paid, 0, 0, 0, 0, $_SESSION['account'], 2, $pay_order_sn);
     }
     //根据订单状态判断是否需要发起支付
     if ($response['status'] == 3) {
         //解冻会员
         if ($level_id == 2) {
             $db->autoUpdate('member', array('status' => 2, 'level_expired' => time() + 365 * 24 * 3600), '`account`=\'' . $account . '\'');
         } else {
             $db->autoUpdate('member', array('status' => 2), '`account`=\'' . $account . '\'');
         }
         //结算
         settle($recommend_info['recommend_path'] . $register_id . ',', $total_amount, $pay_order_sn);
     } else {
         $res = create_prepay($config['appid'], $config['mch_id'], $config['mch_key'], $_SESSION['openid'], $real_amount, $config['site_name'], $pay_order_sn, $pay_order_sn);
         $res = simplexml_load_string($res);
         if ($res->prepay_id) {
Exemplo n.º 2
0
 */
include 'library/init.inc.php';
back_base_init();
$template = 'reward/';
assign('subTitle', '奖金管理');
$action = 'edit|add|view|delete|detail';
$operation = 'edit|add|export|send';
$act = check_action($action, getGET('act'));
$act = $act == '' ? 'view' : $act;
$opera = check_action($operation, getPOST('opera'));
//===========================================================================
if ($opera == 'send') {
    $get_reward_list = 'select `account`,`reward`,`remark`,`type`,`id` from ' . $db->table('reward') . ' where `status`=1';
    $reward_list = $db->fetchAll($get_reward_list);
    foreach ($reward_list as $reward) {
        if (member_account_change($reward['account'], 0, $reward['reward'], -1 * $reward['reward'], 0, 0, 0, $_SESSION['admin_account'], 4, $reward['remark'])) {
            $reward_status = array('status' => 2, 'solve_time' => time());
            $db->autoUpdate('reward', $reward_status, '`id`=' . $reward['id']);
        }
    }
    show_system_message('奖金发放完毕');
}
if ($opera == 'export') {
    $reward_id = getPOST('order_id');
    $account = getGET('account');
    $status = intval(getGET('status'));
    $type = intval(getGET('type'));
    $begin_time = getGET('begin_time');
    $end_time = getGET('end_time');
    $sql = 'select * from ' . $db->table('reward');
    $where = ' where 1';
Exemplo n.º 3
0
        } else {
            $total_amount = $amount + $config['fee_rate'] * $amount;
            if ($withdraw_await < $total_amount) {
                $response['msg'] .= '-可提现金额不足<br/>';
            }
        }
        if ($password == '') {
            $response['msg'] .= '-请填写账户密码<br/>';
        } else {
            if (!verify_password($_SESSION['account'], $password)) {
                $response['msg'] .= '-账户密码错误<br/>';
            }
        }
        if ($response['msg'] == '') {
            if ($withdraw_sn = add_withdraw($_SESSION['account'], $amount, $bank_id)) {
                member_account_change($_SESSION['account'], 0, -1 * $total_amount, 0, 0, 0, 0, $_SESSION['account'], 9, $withdraw_sn . '申请提现');
                $response['error'] = 0;
                $response['msg'] = '提现申请提交成功';
                $response['withdraw_sn'] = $withdraw_sn;
            } else {
                $response['msg'] = '001:系统繁忙,请稍后再试';
            }
        }
    } else {
        $response['msg'] = '404:参数错误';
    }
    echo json_encode($response);
    exit;
}
if ($act == '') {
    $act = 'opera';
Exemplo n.º 4
0
/**
 * 更新充值状态
 * @param $recharge_sn
 * @param $status
 * @param $operator
 * @param $remark
 */
function update_recharge($recharge_sn, $status, $operator, $remark)
{
    global $db;
    $get_recharge = 'select * from ' . $db->table('recharge') . ' where `recharge_sn`=\'' . $recharge_sn . '\'';
    $recharge = $db->fetchRow($get_recharge);
    $recharge_status = array('status' => $status);
    if ($status == 3) {
        if (!member_account_change($recharge['account'], $recharge['amount'], 0, 0, 0, 0, 0, $operator, 1, $remark)) {
            return false;
        }
        $recharge_status['pay_time'] = time();
    }
    if ($db->autoUpdate('recharge', $recharge_status, '`recharge_sn`=\'' . $recharge_sn . '\'')) {
        add_recharge_log($recharge_sn, $operator, $recharge['status'], $status, $remark);
        return true;
    }
    return false;
}
Exemplo n.º 5
0
         $current_level = $node['level_id'];
     } else {
         if ($current_level == $node['level_id'] && $level_equal--) {
             $log->record('平级奖' . $current_level);
             if ($current_level == 6) {
                 $_refund = $config['level_' . $current_level . (4 - $level_equal)] * $c['number'];
                 if ($_refund > 0) {
                     add_reward($node['account'], $_refund, 0, $order_sn, '平级奖');
                     member_account_change($node['account'], 0, 0, $_refund, 0, 0, 0, $_SESSION['account'], 3, $order_sn . '奖金');
                 }
             } else {
                 if (isset($config['level_' . $current_level])) {
                     $refund = $config['level_' . $current_level] * $c['number'];
                     if ($refund > 0) {
                         add_reward($node['account'], $refund, 0, $order_sn, '平级奖');
                         member_account_change($node['account'], 0, 0, $refund, 0, 0, 0, $_SESSION['account'], 3, $order_sn . '奖金');
                     }
                 }
             }
         }
     }
 }
 //升级判断
 if ($member_info['level_id'] < 5 && $c['number'] == $price_list_json[$member_info['level_id'] + 1]['min_number']) {
     $member_data = array('level_id' => $member_info['level_id'] + 1);
     $can_level_up = 1;
     if ($member_data['level_id'] == 5) {
         $check_group = 'select `account` from ' . $db->table('member') . ' where `recommend_id`=' . $member_info['id'] . ' and `level_id`=4';
         if ($db->fetchOne($check_group)) {
             $can_level_up = 1;
         } else {
Exemplo n.º 6
0
        if (is_mobile($target)) {
            $field = 'mobile';
        }
        if (is_email($target)) {
            $field = 'email';
        }
        $check_target = 'select `account` from ' . $db->table('member') . ' where `' . $field . '`=\'' . $target . '\'';
        if (!($target = $db->fetchOne($check_target))) {
            $response['msg'] .= "-转入账号不存在\n";
        }
    }
    $remark = $db->escape($remark);
    if ($response['msg'] == '') {
        $db->begin();
        if (member_account_change($_SESSION['account'], -1 * $reward, 0, 0, 0, 0, 0, $_SESSION['account'], 6, $remark)) {
            if (member_account_change($target, $reward, 0, 0, 0, 0, 0, $_SESSION['account'], 6, $remark)) {
                $db->commit();
                $response['error'] = 0;
                $response['msg'] = '奖金转出成功';
            } else {
                $db->rollback();
                $response['msg'] = '奖金转出失败,请稍后再试';
            }
        } else {
            $db->rollback();
            $response['msg'] = '奖金转出失败,请稍后再试';
        }
    }
    echo json_encode($response);
    exit;
}