public static function payitem_cost($item_code, $use_num = '1', $obj_type = false, $use_type = 'buy', $obj_id = null, $origin_id = null) { global $uid, $username; global $_lang; $payitem_config = self::get_payitem_config(null, null, $item_code, 'item_code'); $use_cash = $payitem_config['item_cash'] * $use_num; if ($use_type == 'buy' && $use_cash) { $data = array(':item_name' => $payitem_config['item_name']); keke_finance_class::init_mem('payitem', $data); $use_cash > 0 and $fid_cash = keke_finance_class::cash_out($uid, $use_cash, 'payitem', $use_cash, '', 'payitem'); $fid_cash or kekezu::show_msg($_lang['friendly_notice'], 'index.php?do=user&view=finance&op=recharge', 3, $_lang['your_balance_not_enough']); } $record_obj = new Keke_witkey_payitem_record_class(); $record_obj->_record_id = null; $record_obj->setItem_code($item_code); $record_obj->setUid($uid); $record_obj->setUsername($username); $record_obj->setUse_type($use_type); $record_obj->setUse_cash($use_cash); $record_obj->setUse_num(intval($use_num)); $record_obj->setObj_type($obj_type); $record_obj->setObj_id($obj_id); $record_obj->setOrigin_id($origin_id); $record_obj->setOn_time(time()); $record_id = $record_obj->create_keke_witkey_payitem_record(); return $record_id; }
<?php defined('ADMIN_KEKE') or exit('Access Denied'); kekezu::admin_check_role(34); $add_service_type = keke_glob_class::get_value_add_type(); $payitem_record_obj = new Keke_witkey_payitem_record_class(); $url = "index.php?do={$do}&view={$view}&w[record_id]={$w['record_id']}&w[username]={$w['username']}&w[item_code]={$w['item_code']}&w[ord]={$w['ord']}&page={$page}&w[page_size]={$page_size}"; $where = ' 1 = 1 '; $w[record_id] and $where .= " and record_id = " . $w[record_id]; $w[username] and $where .= " and username like '%{$w['username']}%'"; $w[item_code] and $where .= " and item_code like '%{$w['item_code']}%'"; $order_where = " order by on_time desc "; is_array($w['ord']) and $order_where = ' order by ' . $w['ord'][0] . ' ' . $w['ord'][1]; $where = $where . $order_where; $all_buy_sql = "select sum(use_cash) as cash from " . TABLEPRE . "witkey_payitem_record "; $all_buy_pro = db_factory::query($all_buy_sql); $all_buy_pro = $all_buy_pro[0] ? $all_buy_pro[0] : 0; $page_obj = $kekezu->_page_obj; $page = intval($page); $page or $page = 1; $w[page_size] and $page_size = intval($w[page_size]) or $page_size = 10; $payitem_record_obj->setWhere($where); $count = $payitem_record_obj->count_keke_witkey_payitem_record(); $page_obj->setAjax(1); $page_obj->setAjaxDom("ajax_dom"); $pages = $page_obj->getPages($count, $page_size, $page, $url); $where .= $pages[where]; $payitem_record_obj->setWhere($where); $payitem_record_arr = $payitem_record_obj->query_keke_witkey_payitem_record(); require $template_obj->template(ADMIN_DIRECTORY . '/tpl/admin_payitem_' . $view);
public static function createPayitemRecord($item, $num, $type, $objId) { if (TOOL === TRUE) { if ($type == 'task') { $objInfo = db_factory::get_one(sprintf("select * from %switkey_task where task_id='%d'", TABLEPRE, $objId)); } else { $objInfo = db_factory::get_one(sprintf("select * from %switkey_service where service_id='%d'", TABLEPRE, $objId)); } $uid = $objInfo['uid']; $username = $objInfo['username']; $arrPayitemLists = self::getPayitemList($type); $data = array(':item_name' => $arrPayitemLists[$item]['item_name']); keke_finance_class::init_mem('payitem', $data); $cash = $num * $arrPayitemLists[$item]['item_cash']; if ($cash) { $intFinaId = keke_finance_class::cash_out($uid, $cash, 'payitem', $cash, $type, $objId); } else { $intFinaId = 1; } if ($intFinaId) { $objRecord = new Keke_witkey_payitem_record_class(); $objRecord->setItem_code($item); $objRecord->setUid($uid); $objRecord->setUsername($username); $objRecord->setUse_cash($cash); $objRecord->setUse_num(intval($num)); $objRecord->setObj_type($type); $objRecord->setObj_id($objId); $objRecord->setOn_time(time()); if ($item == 'tasktop' || $item == 'goodstop') { $arrRecordInfo = self::getPayitemRecord($type, $objId, $item); if ($arrRecordInfo) { $objRecord->setWhere("record_id=" . intval($arrRecordInfo['record_id'])); if (time() < $arrRecordInfo['end_time']) { $objRecord->setEnd_time($arrRecordInfo['end_time'] + 24 * 3600 * $num); } else { $objRecord->setEnd_time(time() + 24 * 3600 * $num); } $objRecord->edit_keke_witkey_payitem_record(); } else { $objRecord->setEnd_time(time() + 24 * 3600 * $num); $objRecord->create_keke_witkey_payitem_record(); } } else { $res = $objRecord->create_keke_witkey_payitem_record(); } self::updateObjStatus($item, $type, $objId); } } }