public function contact() { $id = intval($_REQUEST['id']); if ($id == 0) { echo "不存在的债权"; die; } //先执行更新借贷信息 $deal_id = $GLOBALS['db']->getOne("SELECT deal_id FROM " . DB_PREFIX . "deal_load WHERE id=" . $id); if ($deal_id == 0) { echo "不存在的债权"; die; } else { syn_deal_status($deal_id); } $condition = ' AND dlt.id=' . $id . ' AND d.deal_status >= 4 and d.is_effect=1 and d.is_delete=0 and d.loantype = 0 and d.repay_time_type =1 and d.publish_wait=0 and (dlt.user_id=' . $GLOBALS['user_info']['id'] . ' or dlt.t_user_id = ' . $GLOBALS['user_info']['id'] . ') '; $union_sql = " LEFT JOIN " . DB_PREFIX . "deal_load_transfer dlt ON dlt.deal_id = dl.deal_id "; $sql = 'SELECT dlt.id,dlt.deal_id,dlt.load_id,dlt.transfer_amount,dlt.near_repay_time,dlt.user_id,d.next_repay_time,d.last_repay_time,d.rate,d.repay_start_time,d.repay_time,dlt.load_money,dlt.id as dltid,dlt.status as tras_status,dlt.t_user_id,dlt.transfer_amount,dlt.create_time as tras_create_time,dlt.transfer_time,d.user_id as duser_id FROM ' . DB_PREFIX . 'deal_load dl LEFT JOIN ' . DB_PREFIX . 'deal d ON d.id = dl.deal_id ' . $union_sql . ' WHERE 1=1 ' . $condition; $transfer = $GLOBALS['db']->getRow($sql); if ($transfer) { //下个还款日 $transfer['next_repay_time_format'] = to_date($transfer['near_repay_time'], "Y 年 m 月 d 日"); $transfer['near_repay_time_format'] = to_date(next_replay_month($transfer['near_repay_time'], " -1 "), "Y 年 m 月 d 日"); //什么时候开始借 $transfer['repay_start_time_format'] = to_date($transfer['repay_start_time'], "Y 年 m 月 d 日"); //还款日 $transfer['final_repay_time'] = next_replay_month($transfer['repay_start_time'], $transfer['repay_time']); $transfer['final_repay_time_format'] = to_date($transfer['final_repay_time'], "Y 年 m 月 d 日"); //剩余期数 $transfer['how_much_month'] = how_much_month($transfer['near_repay_time'], $transfer['final_repay_time']) + 1; //本息还款金额 $transfer['month_repay_money'] = pl_it_formula($transfer['load_money'], $transfer['rate'] / 12 / 100, $transfer['repay_time']); $transfer['month_repay_money_format'] = format_price($transfer['month_repay_money']); //剩余多少钱未回 $transfer['all_must_repay_money'] = $transfer['month_repay_money'] * $transfer['how_much_month']; $transfer['all_must_repay_money_format'] = format_price($transfer['all_must_repay_money']); //剩余多少本金未回 $transfer['left_benjin'] = get_benjin($transfer['repay_time'] - $transfer['how_much_month'] - 1, $transfer['repay_time'], $transfer['load_money'], $transfer['month_repay_money'], $transfer['rate']); $transfer['left_benjin_format'] = format_price($transfer['left_benjin']); //剩多少利息 $transfer['left_lixi'] = $transfer['all_must_repay_money'] - $transfer['left_benjin']; $transfer['left_lixi_format'] = format_price($transfer['left_lixi']); //投标价格 $transfer['load_money_format'] = format_price($transfer['load_money']); //转让价格 $transfer['transfer_amount_format'] = format_price($transfer['transfer_amount']); //转让管理费 $transfer_fee = $transfer['transfer_amount'] * (double) app_conf("USER_LOAD_TRANSFER_FEE"); if ($transfer_fee != 0) { $transfer_fee = $transfer_fee / 100; } $transfer['transfer_fee_format'] = format_price($transfer_fee); //转让收益 $transfer['transfer_income_format'] = format_price($transfer['all_must_repay_money'] - $transfer['transfer_amount']); if ($transfer['tras_create_time'] != "") { $transfer['tras_create_time_format'] = to_date($transfer['tras_create_time'], "Y 年 m 月 d 日"); } $transfer['transfer_time_format'] = to_date($transfer['transfer_time'], "Y 年 m 月 d 日"); $transfer['user'] = get_user("user_name,real_name,idno,level_id", $transfer['user_id']); $transfer['tuser'] = get_user("user_name,real_name,idno,level_id", $transfer['t_user_id']); $transfer['duser'] = get_user("user_name,real_name,idno,level_id", $transfer['duser_id']); $GLOBALS['tmpl']->assign('transfer', $transfer); } else { echo "不存在的债权"; die; } $contract = $GLOBALS['tmpl']->fetch("str:" . app_conf("TCONTRACT")); $GLOBALS['tmpl']->assign('contract', $contract); $GLOBALS['tmpl']->display("inc/uc/transfer_contact.html"); }
function send_transfer_contract_email($id, $transfer) { if ($id == 0 && !$transfer) { return false; } if (app_conf('MAIL_ON') == 0 || app_conf('MAIL_SEND_CONTRACT_ON') == 0) { return false; } if (!$transfer) { $condition = ' AND dlt.id=' . $id . ' AND d.deal_status >= 4 and d.is_effect=1 and d.is_delete=0 and d.repay_time_type =1 and d.publish_wait=0 and (dlt.user_id=' . $GLOBALS['user_info']['id'] . ' or dlt.t_user_id = ' . $GLOBALS['user_info']['id'] . ') '; $union_sql = " LEFT JOIN " . DB_PREFIX . "deal_load_transfer dlt ON dlt.deal_id = dl.deal_id "; $sql = 'SELECT dlt.id,dlt.deal_id,dlt.load_id,dlt.transfer_amount,dlt.near_repay_time,dlt.user_id,d.next_repay_time,d.last_repay_time,d.rate,d.repay_start_time,d.repay_time,dlt.load_money,dlt.id as dltid,dlt.status as tras_status,dlt.t_user_id,dlt.transfer_amount,dlt.create_time as tras_create_time,dlt.transfer_time,d.user_id as duser_id FROM ' . DB_PREFIX . 'deal_load dl LEFT JOIN ' . DB_PREFIX . 'deal d ON d.id = dl.deal_id ' . $union_sql . ' WHERE 1=1 ' . $condition; $transfer = $GLOBALS['db']->getRow($sql); } if ($transfer) { //下个还款日 $transfer['next_repay_time_format'] = to_date($transfer['near_repay_time'], "Y 年 m 月 d 日"); $transfer['near_repay_time_format'] = to_date(next_replay_month($transfer['near_repay_time'], " -1 "), "Y 年 m 月 d 日"); //什么时候开始借 $transfer['repay_start_time_format'] = to_date($transfer['repay_start_time'], "Y 年 m 月 d 日"); //还款日 $transfer['final_repay_time'] = next_replay_month($transfer['repay_start_time'], $transfer['repay_time']); $transfer['final_repay_time_format'] = to_date($transfer['final_repay_time'], "Y 年 m 月 d 日"); //剩余期数 $transfer['how_much_month'] = how_much_month($transfer['near_repay_time'], $transfer['final_repay_time']) + 1; $transfer_rs = deal_transfer($transfer); //本息还款金额 $transfer['month_repay_money'] = $transfer_rs['month_repay_money']; //剩余多少钱未回 $transfer['all_must_repay_money'] = $transfer_rs['all_must_repay_money']; //剩余多少本金未回 $transfer['left_benjin'] = $transfer_rs['left_benjin']; $transfer['month_repay_money_format'] = format_price($transfer['month_repay_money']); $transfer['all_must_repay_money_format'] = format_price($transfer['all_must_repay_money']); $transfer['left_benjin_format'] = format_price($transfer['left_benjin']); //剩多少利息 $transfer['left_lixi'] = $transfer['all_must_repay_money'] - $transfer['left_benjin']; $transfer['left_lixi_format'] = format_price($transfer['left_lixi']); //投标价格 $transfer['load_money_format'] = format_price($transfer['load_money']); //转让价格 $transfer['transfer_amount_format'] = format_price($transfer['transfer_amount']); //转让管理费 $transfer['transfer_fee_format'] = format_price($transfer['transfer_amount'] * (double) app_conf("USER_LOAD_TRANSFER_FEE")); //转让收益 $transfer['transfer_income_format'] = format_price($transfer['all_must_repay_money'] - $transfer['transfer_amount']); if ($transfer['tras_create_time'] != "") { $transfer['tras_create_time_format'] = to_date($transfer['tras_create_time'], "Y 年 m 月 d 日"); } $transfer['transfer_time_format'] = to_date($transfer['transfer_time'], "Y 年 m 月 d 日"); $transfer['user'] = get_user("user_name,email,real_name,idno,level_id", $transfer['user_id']); $transfer['tuser'] = get_user("user_name,email,real_name,idno,level_id", $transfer['t_user_id']); $transfer['duser'] = get_user("user_name,email,real_name,idno,level_id", $transfer['duser_id']); $GLOBALS['tmpl']->assign('transfer', $transfer); $contract = $GLOBALS['tmpl']->fetch("str:" . app_conf("TCONTRACT")); $msg_data['dest'] = $transfer['user']['email']; $msg_data['send_type'] = 1; $msg_data['title'] = "债权“Z-" . $transfer['load_id'] . "”的电子协议!"; $msg_data['content'] = addslashes($contract); $msg_data['send_time'] = 0; $msg_data['is_send'] = 0; $msg_data['create_time'] = TIME_UTC; $msg_data['user_id'] = $transfer['user_id']; $msg_data['is_html'] = 1; //发送给转让者 $GLOBALS['db']->autoExecute(DB_PREFIX . "deal_msg_list", $msg_data); //发送给承接者 $msg_data['dest'] = $transfer['tuser']['email']; $msg_data['user_id'] = $transfer['t_user_id']; $GLOBALS['db']->autoExecute(DB_PREFIX . "deal_msg_list", $msg_data); } }
function getUcTransferBuys($page, $status) { if ($page == 0) { $page = 1; } $limit = ($page - 1) * app_conf("PAGE_SIZE") . "," . app_conf("PAGE_SIZE"); $page_args = array(); $condition = ' and d.is_effect=1 and d.is_delete=0 and d.repay_time_type =1 and d.publish_wait=0 and dlt.t_user_id=' . $GLOBALS['user_info']['id'] . " "; $union_sql = " LEFT JOIN " . DB_PREFIX . "deal_load_transfer dlt ON dlt.deal_id = dl.deal_id and dlt.load_id=dl.id "; switch ($status) { case 1: //回收中 $condition .= " AND d.deal_status = 4 "; break; case 2: //已回收 $condition .= " AND d.deal_status = 5 "; break; default: //默认 $condition .= " AND d.deal_status >= 4 "; break; } $count_sql = 'SELECT count(dl.id) FROM ' . DB_PREFIX . 'deal_load dl LEFT JOIN ' . DB_PREFIX . 'deal d ON d.id = dl.deal_id ' . $union_sql . ' WHERE 1=1 ' . $condition; $rs_count = $GLOBALS['db']->getOne($count_sql . " LIMIT {$limit} "); $list = array(); if ($rs_count > 0) { $list_sql = 'SELECT dl.id as dlid,d.*,dl.money as load_money,dlt.id as dltid,dlt.status as tras_status,dlt.t_user_id,dlt.transfer_amount,dlt.create_time as tras_create_time,dlt.transfer_time FROM ' . DB_PREFIX . 'deal_load dl LEFT JOIN ' . DB_PREFIX . 'deal d ON d.id = dl.deal_id ' . $union_sql . ' WHERE 1=1 ' . $condition . " ORDER BY dlid DESC"; $list = $GLOBALS['db']->getAll($list_sql); foreach ($list as $k => $v) { //最后还款日 $list[$k]['final_repay_time'] = next_replay_month($v['repay_start_time'], $v['repay_time']); $list[$k]['final_repay_time_format'] = to_date($list[$k]['final_repay_time'], "Y-m-d"); //剩余期数 if ($v['deal_status'] == 4) { if (intval($v['last_repay_time']) > 0) { $list[$k]['how_much_month'] = how_much_month($v['last_repay_time'], $list[$k]['final_repay_time']); } else { $list[$k]['how_much_month'] = how_much_month($v['repay_start_time'], $list[$k]['final_repay_time']); } } else { $list[$k]['how_much_month'] = 0; } $transfer_rs = deal_transfer($list[$k]); $list[$k]['month_repay_money'] = $transfer_rs['month_repay_money']; if ($v['deal_status'] == 4) { $transfer_rs = deal_transfer($list[$k]); //剩余多少钱未回 $list[$k]['all_must_repay_money'] = $transfer_rs['all_must_repay_money']; $list[$k]['left_benjin'] = $transfer_rs['left_benjin']; $list[$k]['left_benjin_format'] = format_price($list[$k]['left_benjin'] / 10000) . "万"; //剩多少利息 $list[$k]['left_lixi'] = $list[$k]['all_must_repay_money'] - $list[$k]['left_benjin']; $list[$k]['left_lixi_format'] = format_price($list[$k]['left_lixi']); } else { $list[$k]['left_benjin_format'] = format_price(0); $list[$k]['left_lixi_format'] = format_price(0); } //转让价格 $list[$k]['transfer_amount_format'] = format_price($v['transfer_amount'] / 10000, 3) . "万"; if ($v['tras_create_time'] != "") { $list[$k]['tras_create_time_format'] = to_date($v['tras_create_time'], "Y-m-d"); } if (intval($v['transfer_time']) > 0) { $list[$k]['transfer_time_format'] = to_date($v['transfer_time'], "Y-m-d"); } $list[$k]['tras_status_op'] = 5; if ($v['deal_status'] == 4) { $list[$k]['tras_status_format'] = '回收中'; } elseif ($v['deal_status'] == 5) { $list[$k]['tras_status_format'] = '已回收'; } $durl = "/index.php?ctl=deal&act=mobile&is_sj=1&id=" . $v['id']; $list[$k]['app_url'] = str_replace("/mapi", "", SITE_DOMAIN . $durl); } return array('list' => $list, 'count' => $rs_count); } else { return array('list' => null, 'count' => 0); } }
function get_transfer_list($limit, $condition = '', $extfield, $union_sql, $orderby = '') { //获取转让列表 $count_sql = 'SELECT count(dlt.id) FROM ' . DB_PREFIX . 'deal_load_transfer dlt LEFT JOIN ' . DB_PREFIX . 'deal d ON d.id =dlt.deal_id WHERE dlt.status=1 and d.is_effect=1 AND d.is_delete = 0 ' . $condition; $rs_count = $GLOBALS['db']->getOne($count_sql); if ($rs_count > 0) { $list_sql = 'SELECT dlt.*,d.loantype,d.name,d.icon,d.cate_id,d.user_id as duser_id,d.rate,d.repay_time,d.repay_time_type ' . $extfield . ' FROM ' . DB_PREFIX . 'deal_load_transfer dlt LEFT JOIN ' . DB_PREFIX . 'deal d ON d.id =dlt.deal_id ' . $union_sql . ' WHERE dlt.status=1 and d.is_effect=1 AND d.is_delete = 0 ' . $condition; $list_sql .= ' ORDER BY ' . $orderby; $list_sql .= ' LIMIT ' . $limit; $list = $GLOBALS['db']->getAll($list_sql); foreach ($list as $k => $v) { $list[$k]['duser'] = get_user("user_name,level_id,province_id,city_id", $v['duser_id']); $list[$k]['user'] = get_user("user_name,level_id,province_id,city_id", $v['user_id']); if ($v['t_user_id'] > 0) { $list[$k]['tuser'] = get_user("user_name,level_id,province_id,city_id", $v['t_user_id']); } else { $list[$k]['tuser'] = null; } if ($list[$k]['tuser'] === false) { $list[$k]['tuser'] = null; } if ($list[$k]['duser'] === false) { $list[$k]['duser'] = null; } if ($list[$k]['user'] === false) { $list[$k]['user'] = null; //new ArrayObject(); {} } $list[$k]['url'] = url("index", "transfer#detail", array("id" => $v['id'])); //$deal['url'] = $durl; //x $durl = "/index.php?ctl=deal&act=mobile&id=".$v['deal_id']; $durl = APP_ROOT . "/wap/index.php?ctl=transfer_mobile&is_sj=1&id=" . $v['deal_id']; $list[$k]['app_url'] = str_replace("/mapi", "", SITE_DOMAIN . $durl); //剩余期数 $list[$k]['how_much_month'] = how_much_month($v['near_repay_time'], $v['last_repay_time']) + 1; if ($v['cate_id'] > 0) { $list[$k]['cate_info'] = $GLOBALS['db']->getRowCached("select id,name,brief,uname,icon from " . DB_PREFIX . "deal_cate where id = " . $v['cate_id'] . " and is_effect = 1 and is_delete = 0"); } //本息还款金额 if ($v['loantype'] == 0) { $list[$k]['month_repay_money'] = pl_it_formula($v['load_money'], $v['rate'] / 12 / 100, $v['repay_time']); //剩余多少钱未回 $list[$k]['all_must_repay_money'] = $list[$k]['month_repay_money'] * $list[$k]['how_much_month']; //剩余多少本金未回 $list[$k]['left_benjin'] = get_benjin($v['repay_time'] - $list[$k]['how_much_month'] - 1, $v['repay_time'], $v['load_money'], $list[$k]['month_repay_money'], $v['rate']); } elseif ($v['loantype'] == 1) { $list[$k]['month_repay_money'] = av_it_formula($v['load_money'], $v['rate'] / 12 / 100); //剩余多少钱未回 $list[$k]['all_must_repay_money'] = $list[$k]['month_repay_money'] * $list[$k]['how_much_month'] + $v['load_money']; //剩余多少本金未回 $list[$k]['left_benjin'] = $v['load_money']; } elseif ($v['loantype'] == 2) { $list[$k]['month_repay_money'] = 0; //剩余多少钱未回 $list[$k]['all_must_repay_money'] = $v['load_money'] * $v['rate'] / 12 / 100 * $v['repay_time'] + $v['load_money']; //剩余多少本金未回 $list[$k]['left_benjin'] = $v['load_money']; } $list[$k]['left_benjin_format'] = format_price($list[$k]['left_benjin'] / 10000) . "万"; //剩多少利息 $list[$k]['left_lixi'] = $list[$k]['all_must_repay_money'] - $list[$k]['left_benjin']; $list[$k]['left_lixi_format'] = format_price($list[$k]['left_lixi']); $list[$k]['remain_time'] = $v['near_repay_time'] - TIME_UTC + 24 * 3600 - 1; $list[$k]['remain_time_format'] = remain_time($list[$k]['remain_time']); $list[$k]['near_repay_time_format'] = to_date($v['near_repay_time'], "Y-m-d"); $list[$k]['transfer_amount_format'] = format_price($v['transfer_amount'] / 10000) . "万"; //转让收益 $list[$k]['transfer_income'] = $list[$k]['all_must_repay_money'] - $list[$k]['transfer_amount']; $list[$k]['transfer_income_format'] = format_price($list[$k]['transfer_income']); // $list[$k]['transfer_time_format'] = to_date($v['transfer_time'], "Y-m-d"); } $result["list"] = $list; } $result["rs_count"] = $rs_count; return $result; }