/** * 放款 */ function do_loans() { $id = intval($_REQUEST['id']); $repay_start_time = strim($_REQUEST['repay_start_time']); require_once APP_ROOT_PATH . 'system/libs/user.php'; require_once APP_ROOT_PATH . 'system/common.php'; require_once APP_ROOT_PATH . "app/Lib/common.php"; $result = do_loans($id, $repay_start_time); //更新凭证 $loan_data = array(); $loan_data['loans_pic'] = strim($_REQUEST["loans_pic"]); $GLOBALS['db']->autoExecute(DB_PREFIX . "deal", $loan_data, "UPDATE", "id=" . $id); //投标 收益奖励 $list = array(); if ($result['status'] == 2) { ajax_return($result); } elseif ($result['status'] == 1) { $sql_list = "select * from " . DB_PREFIX . "deal_load where deal_id='{$id}' "; $list = $GLOBALS['db']->getAll($sql_list); foreach ($list as $k => $v) { //投标人 VIP升级 $tuser_id = $v['user_id']; $ttype = 1; $ttype_info = 2; $tresultdate = syn_user_vip($tuser_id, $ttype, $ttype_info); } $this->get_manage($id); //VIP升级 -借款 $user_id = M("Deal")->where("id='{$id}'")->getField("user_id"); $type = 1; $type_info = 1; $resultdate = syn_user_vip($user_id, $type, $type_info); $this->success($result['info']); } else { $this->error($result['info']); } }
/** * 更新 用户回款 计划数据 * @param unknown_type $deal_id * @param unknown_type $deal_repay_id */ function syn_deal_repay_status($deal_id, $deal_repay_id) { //has_repay 0未收到还款,1已收到还款 $deal_id = intval($deal_id); $deal_repay_id = intval($deal_repay_id); $deal = $GLOBALS['db']->getRow("SELECT * FROM " . DB_PREFIX . "deal WHERE id=" . $deal_id); $deal['url'] = url("index", "deal", array("id" => $deal['id'])); $deal["user"] = $GLOBALS['db']->getRow("SELECT * FROM " . DB_PREFIX . "user WHERE id=" . $deal['user_id']); //未还款记录数 $sql = "select count(*) from " . DB_PREFIX . "deal_load_repay where has_repay = 0 and deal_id = " . $deal_id . " and repay_id = " . $deal_repay_id; $has_repay_0 = $GLOBALS['db']->getOne($sql); //已经还款记录数 $sql = "select count(*) from " . DB_PREFIX . "deal_load_repay where has_repay = 1 and deal_id = " . $deal_id . " and repay_id = " . $deal_repay_id; $has_repay_1 = $GLOBALS['db']->getOne($sql); //第几期 $kk = $GLOBALS['db']->getOne("select l_key from " . DB_PREFIX . "deal_load_repay where deal_id = " . $deal_id . " and repay_id = " . $deal_repay_id); //has_repay 0未还,1已还 2部分还款 if ($has_repay_0 == 0 && $has_repay_1 == 0 || $has_repay_0 == 0 && $has_repay_1 > 0) { $deal_rs_sql = "select sum(true_interest_money) as total_true_interest_money," . "sum(true_self_money) as total_true_self_money," . "sum(true_repay_money) as total_true_repay_money," . "sum(true_repay_manage_money) as total_true_repay_manage_money," . "sum(repay_manage_impose_money) as total_repay_manage_impose_money, " . "sum(impose_money) as total_impose_money " . "from " . DB_PREFIX . "deal_load_repay where deal_id = " . $deal_id . " and repay_id = " . $deal_repay_id; $deal_rs = $GLOBALS['db']->getRow($deal_rs_sql); $last_Rs = $GLOBALS['db']->getRow("SELECT `status`,`true_repay_time`,`repay_time` from " . DB_PREFIX . "deal_load_repay where deal_id = " . $deal_id . " and repay_id = " . $deal_repay_id . " ORDER BY `true_repay_time` DESC"); $deal_repay_data['true_repay_money'] = $deal_rs['total_true_repay_money']; $deal_repay_data['true_manage_money'] = $deal_rs['total_true_repay_manage_money']; $deal_repay_data['manage_impose_money'] = $deal_rs['total_repay_manage_impose_money']; $deal_repay_data['true_self_repay'] = $deal_rs['total_true_self_money']; $deal_repay_data['impose_money'] = $deal_rs['total_impose_money']; $deal_repay_data['true_interest_money'] = $deal_rs['total_true_interest_money']; $deal_repay_data['true_repay_time'] = $last_Rs['true_repay_time']; $deal_repay_data['true_repay_date'] = to_date($last_Rs['true_repay_time']); $deal_repay_data['status'] = $last_Rs['status']; $deal_repay_data['has_repay'] = 1; //返佣金额 $rebate_rs = get_rebate_fee($deal['user_id'], "borrow"); $deal_repay_data['true_manage_money_rebate'] = floatval($deal_repay_data['true_manage_money']) * floatval($rebate_rs['rebate']) / 100; $true_manage_money_rebate = $deal_repay_data['true_manage_money'] * floatval($rebate_rs['rebate']) / 100; //借款者返佣 if ($true_manage_money_rebate != 0) { /*ok*/ $reback_memo = sprintf($GLOBALS['lang']["BORROW_REBATE_LOG"], $deal["url"], $deal["name"], $deal["user"]["user_name"], intval($kk) + 1); reback_rebate_money($deal['user_id'], $true_manage_money_rebate, "borrow", $reback_memo); } require_once APP_ROOT_PATH . "system/libs/user.php"; if ($last_Rs['status'] > 1) { $impose_day = ceil(($last_Rs['true_repay_time'] - $last_Rs['repay_time'] + 24 * 3600 - 1) / 24 / 3600); //VIP降级-逾期还款 $type = 2; $type_info = 5; $resultdate = syn_user_vip($deal['user_id'], $type, $type_info); if ($impose_day < app_conf('YZ_IMPSE_DAY')) { modify_account(array("point" => trim(app_conf('IMPOSE_POINT'))), $deal['user_id'], "[<a href='" . $deal['url'] . "' target='_blank'>" . $deal['name'] . "</a>],第" . ($kk + 1) . "期,逾期还款", 11); $repay_update_data['status'] = 2; } else { modify_account(array("point" => trim(app_conf('YZ_IMPOSE_POINT'))), $deal['user_id'], "[<a href='" . $deal['url'] . "' target='_blank'>" . $deal['name'] . "</a>],第" . ($kk + 1) . "期,严重逾期", 11); $repay_update_data['status'] = 3; } } elseif ($last_Rs['status'] == 1) { //VIP升级 -正常还款 $type = 1; $type_info = 3; $resultdate = syn_user_vip($deal['user_id'], $type, $type_info); } elseif ($last_Rs['status'] == 0) { //VIP升级 -提前还款 $type = 1; $type_info = 4; $resultdate = syn_user_vip($deal['user_id'], $type, $type_info); } $GLOBALS['db']->autoExecute(DB_PREFIX . "deal_repay", $deal_repay_data, "UPDATE", "id = " . $deal_repay_id); $last_repay_key = $kk; //判断本借款是否还款完毕 if ($GLOBALS['db']->getOne("SELECT count(*) FROM " . DB_PREFIX . "deal_repay WHERE deal_id=" . $deal['id'] . " and l_key=" . $last_repay_key . " AND has_repay <> 1 ") == 0) { //全部还完 if ($GLOBALS['db']->getRow("SELECT * FROM " . DB_PREFIX . "deal_repay WHERE deal_id=" . $deal['id'] . " and has_repay=0 ") == 0) { //判断获取的信用是否超过限制 if ($GLOBALS['db']->getOne("SELECT sum(point) FROM " . DB_PREFIX . "user_point_log WHERE `type`=6 AND user_id=" . $deal['user_id']) < (int) trim(app_conf('REPAY_SUCCESS_LIMIT'))) { //获取上一次还款时间 $befor_repay_time = $GLOBALS['db']->getOne("SELECT MAX(create_time) FROM " . DB_PREFIX . "user_point_log WHERE `type`=6 AND user_id=" . $deal['user_id']); $day = ceil(($last_Rs['true_repay_time'] - $befor_repay_time) / 24 / 3600); //当天数大于等于间隔时间 获得信用 if ($day >= (int) trim(app_conf('REPAY_SUCCESS_DAY'))) { modify_account(array("point" => trim(app_conf('REPAY_SUCCESS_POINT'))), $deal['user_id'], "[<a href='" . $deal['url'] . "' target='_blank'>" . $deal['name'] . "</a>],还清借款", 4); } } //用户获得额度 modify_account(array("quota" => trim(app_conf('USER_REPAY_QUOTA'))), $deal['user_id'], "[<a href='" . $deal['url'] . "' target='_blank'>" . $deal['name'] . "</a>],还清借款获得额度", 4); } } sys_user_status(intval($GLOBALS['user_info']['id']), false, true); syn_deal_status($deal_id); syn_transfer_status(0, $deal_id); } else { if ($has_repay_0 > 0 && $has_repay_1 == 0) { $sql = "update " . DB_PREFIX . "deal_repay set has_repay = 0 where id = " . $deal_repay_id; } else { $sql = "update " . DB_PREFIX . "deal_repay set has_repay = 2 where id = " . $deal_repay_id; } } $GLOBALS['db']->query($sql); }