本文整理汇总了PHP中log_account_change函数的典型用法代码示例。如果您正苦于以下问题:PHP log_account_change函数的具体用法?PHP log_account_change怎么用?PHP log_account_change使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了log_account_change函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: refund_confirm_order_goods
function refund_confirm_order_goods($rec_id, $refund_status)
{
$row = $GLOBALS['db']->getRow("select og.rec_id,o.user_id,og.goods_price*og.goods_number as refund_money,o.order_sn,og.goods_number,og.goods_name from " . $GLOBALS['hhs']->table("order_goods") . " as og," . $GLOBALS['hhs']->table("order_info") . " as o where o.order_id=og.order_id and refund_status='1' and rec_id='{$rec_id}'");
empty($row) ? die("inalid") : extract($row);
if ($rec_id > 0) {
if ($refund_status == 2) {
$change_desc = "订单{$order_sn}中的{$goods_name}退款成功,返还余额";
log_account_change($user_id, $refund_money, 0, 0, 0, $change_desc, ACT_OTHER);
}
$GLOBALS['db']->query("update " . $GLOBALS['hhs']->table("order_goods") . " set refund_status='{$refund_status}',refund_confirm_time='" . gmtime() . "' where rec_id='{$rec_id}'");
}
}
示例2: action_insert
function action_insert()
{
// 全局变量
$user = $GLOBALS['user'];
$_CFG = $GLOBALS['_CFG'];
$_LANG = $GLOBALS['_LANG'];
$smarty = $GLOBALS['smarty'];
$db = $GLOBALS['db'];
$ecs = $GLOBALS['ecs'];
$user_id = $_SESSION['user_id'];
/* 检查权限 */
admin_priv('users_manage');
$username = empty($_POST['username']) ? '' : trim($_POST['username']);
$password = empty($_POST['password']) ? '' : trim($_POST['password']);
$email = empty($_POST['email']) ? '' : trim($_POST['email']);
$sex = empty($_POST['sex']) ? 0 : intval($_POST['sex']);
$sex = in_array($sex, array(0, 1, 2)) ? $sex : 0;
$birthday = $_POST['birthdayYear'] . '-' . $_POST['birthdayMonth'] . '-' . $_POST['birthdayDay'];
$rank = empty($_POST['user_rank']) ? 0 : intval($_POST['user_rank']);
$credit_line = empty($_POST['credit_line']) ? 0 : floatval($_POST['credit_line']);
/* 代码增加2014-12-23 by www.68ecshop.com _star */
$real_name = empty($_POST['real_name']) ? '' : trim($_POST['real_name']);
$card = empty($_POST['card']) ? '' : trim($_POST['card']);
$country = $_POST['country'];
$province = $_POST['province'];
$city = $_POST['city'];
$district = $_POST['district'];
$address = empty($_POST['address']) ? '' : trim($_POST['address']);
$status = $_POST['status'];
/* 代码增加2014-12-23 by www.68ecshop.com _end */
$users =& init_users();
if (!$users->add_user($username, $password, $email)) {
/* 插入会员数据失败 */
if ($users->error == ERR_INVALID_USERNAME) {
$msg = $_LANG['username_invalid'];
} elseif ($users->error == ERR_USERNAME_NOT_ALLOW) {
$msg = $_LANG['username_not_allow'];
} elseif ($users->error == ERR_USERNAME_EXISTS) {
$msg = $_LANG['username_exists'];
} elseif ($users->error == ERR_INVALID_EMAIL) {
$msg = $_LANG['email_invalid'];
} elseif ($users->error == ERR_EMAIL_NOT_ALLOW) {
$msg = $_LANG['email_not_allow'];
} elseif ($users->error == ERR_EMAIL_EXISTS) {
$msg = $_LANG['email_exists'];
} else {
// die('Error:'.$users->error_msg());
}
sys_msg($msg, 1);
}
/* 注册送积分 */
if (!empty($GLOBALS['_CFG']['register_points'])) {
log_account_change($_SESSION['user_id'], 0, 0, $GLOBALS['_CFG']['register_points'], $GLOBALS['_CFG']['register_points'], $_LANG['register_points']);
}
/* 把新注册用户的扩展信息插入数据库 */
$sql = 'SELECT id FROM ' . $ecs->table('reg_fields') . ' WHERE type = 0 AND display = 1 ORDER BY dis_order, id';
// 读出所有扩展字段的id
$fields_arr = $db->getAll($sql);
$extend_field_str = '';
// 生成扩展字段的内容字符串
$user_id_arr = $users->get_profile_by_name($username);
foreach ($fields_arr as $val) {
$extend_field_index = 'extend_field' . $val['id'];
if (!empty($_POST[$extend_field_index])) {
$temp_field_content = strlen($_POST[$extend_field_index]) > 100 ? mb_substr($_POST[$extend_field_index], 0, 99) : $_POST[$extend_field_index];
$extend_field_str .= " ('" . $user_id_arr['user_id'] . "', '" . $val['id'] . "', '" . $temp_field_content . "'),";
}
}
$extend_field_str = substr($extend_field_str, 0, -1);
if ($extend_field_str) {
$sql = 'INSERT INTO ' . $ecs->table('reg_extend_info') . ' (`user_id`, `reg_field_id`, `content`) VALUES' . $extend_field_str;
$db->query($sql);
}
/* 更新会员的其它信息 */
$other = array();
$other['credit_line'] = $credit_line;
$other['user_rank'] = $rank;
$other['sex'] = $sex;
$other['birthday'] = $birthday;
$other['reg_time'] = local_strtotime(local_date('Y-m-d H:i:s'));
$other['msn'] = isset($_POST['extend_field1']) ? htmlspecialchars(trim($_POST['extend_field1'])) : '';
$other['qq'] = isset($_POST['extend_field2']) ? htmlspecialchars(trim($_POST['extend_field2'])) : '';
$other['office_phone'] = isset($_POST['extend_field3']) ? htmlspecialchars(trim($_POST['extend_field3'])) : '';
$other['home_phone'] = isset($_POST['extend_field4']) ? htmlspecialchars(trim($_POST['extend_field4'])) : '';
$other['mobile_phone'] = isset($_POST['extend_field5']) ? htmlspecialchars(trim($_POST['extend_field5'])) : '';
$db->autoExecute($ecs->table('users'), $other, 'UPDATE', "user_name = '{$username}'");
/* 代码增加2014-12-23 by www.68ecshop.com _star */
if (isset($_FILES['face_card']) && $_FILES['face_card']['tmp_name'] != '') {
$face_card = $image->upload_image($_FILES['face_card']);
if ($face_card === false) {
sys_msg($image->error_msg(), 1, array(), false);
}
}
if (isset($_FILES['back_card']) && $_FILES['back_card']['tmp_name'] != '') {
$back_card = $image->upload_image($_FILES['back_card']);
if ($back_card === false) {
sys_msg($image->error_msg(), 1, array(), false);
}
}
$sql = "update " . $ecs->table('users') . " set `real_name`='{$real_name}',`card`='{$card}',`country`='{$country}',`province`='{$province}',`city`='{$city}',`district`='{$district}',`address`='{$address}',`status`='{$status}' where user_name = '" . $username . "'";
//.........这里部分代码省略.........
示例3: floor
case TO_R:
$result_points = floor($num * $to / $from);
$user->set_points($row['user_name'], array($bbs_key => 0 - $num));
//调整论坛积分
log_account_change($row['user_id'], 0, 0, $result_points, 0, $_LANG['transform_points'], ACT_OTHER);
show_message(sprintf($_LANG['to_rank_points'], $num, $points_name[$bbs_key]['title'], $result_points), $_LANG['transform_points'], 'user.php?act=transform_points');
case FROM_P:
$result_points = floor($num * $to / $from);
log_account_change($row['user_id'], 0, 0, 0, 0 - $num, $_LANG['transform_points'], ACT_OTHER);
//调整商城积分
$user->set_points($row['user_name'], array($bbs_key => $result_points));
//调整论坛积分
show_message(sprintf($_LANG['from_pay_points'], $num, $result_points, $points_name[$bbs_key]['title']), $_LANG['transform_points'], 'user.php?act=transform_points');
case FROM_R:
$result_points = floor($num * $to / $from);
log_account_change($row['user_id'], 0, 0, 0 - $num, 0, $_LANG['transform_points'], ACT_OTHER);
//调整商城积分
$user->set_points($row['user_name'], array($bbs_key => $result_points));
//调整论坛积分
show_message(sprintf($_LANG['from_rank_points'], $num, $result_points, $points_name[$bbs_key]['title']), $_LANG['transform_points'], 'user.php?act=transform_points');
}
} elseif ($action == 'act_transform_ucenter_points') {
$rule = array();
if ($_CFG['points_rule']) {
$rule = unserialize($_CFG['points_rule']);
}
$shop_points = array(0 => 'rank_points', 1 => 'pay_points');
$sql = "SELECT user_id, user_name, pay_points, rank_points FROM " . $ecs->table('users') . " WHERE user_id='{$user_id}'";
$row = $db->getRow($sql);
$exchange_amount = intval($_POST['amount']);
$fromcredits = intval($_POST['fromcredits']);
示例4: order_refund
/**
* 订单退款
* @param array $order 订单
* @param int $refund_type 退款方式 1 到帐户余额 2 到退款申请(先到余额,再申请提款) 3 不处理
* @param string $refund_note 退款说明
* @param float $refund_amount 退款金额(如果为0,取订单已付款金额)
* @return bool
*/
function order_refund($order, $refund_type, $refund_note, $refund_amount = 0)
{
/* 检查参数 */
$user_id = $order['user_id'];
if ($user_id == 0 && $refund_type == 1) {
die('anonymous, cannot return to account balance');
}
$amount = $refund_amount > 0 ? $refund_amount : $order['money_paid'];
if ($amount <= 0) {
return true;
}
if (!in_array($refund_type, array(1, 2, 3))) {
die('invalid params');
}
/* 备注信息 */
if ($refund_note) {
$change_desc = $refund_note;
} else {
include_once ROOT_PATH . 'languages/' . $GLOBALS['_CFG']['lang'] . '/admin/order.php';
$change_desc = sprintf($GLOBALS['_LANG']['order_refund'], $order['order_sn']);
}
/* 处理退款 */
if (1 == $refund_type) {
log_account_change($user_id, $amount, 0, 0, 0, $change_desc);
return true;
} elseif (2 == $refund_type) {
/* 如果非匿名,退回余额 */
if ($user_id > 0) {
log_account_change($user_id, $amount, 0, 0, 0, $change_desc);
}
/* user_account 表增加提款申请记录 */
$account = array('user_id' => $user_id, 'amount' => -1 * $amount, 'add_time' => gmtime(), 'user_note' => $refund_note, 'process_type' => SURPLUS_RETURN, 'admin_user' => $_SESSION['admin_name'], 'admin_note' => sprintf($GLOBALS['_LANG']['order_refund'], $order['order_sn']), 'is_paid' => 0);
$GLOBALS['db']->autoExecute($GLOBALS['ecs']->table('user_account'), $account, 'INSERT');
return true;
} else {
return true;
}
}
示例5: return_user_surplus_integral_bonus
/**
* 退回余额、积分、红包(取消、无效、退货时),把订单使用余额、积分、红包设为0
* @param array $order 订单信息
*/
function return_user_surplus_integral_bonus($order)
{
/* 处理余额、积分、红包 */
if ($order['user_id'] > 0 && $order['surplus'] > 0) {
$surplus = $order['money_paid'] < 0 ? $order['surplus'] + $order['money_paid'] : $order['surplus'];
log_account_change($order['user_id'], $surplus, 0, 0, 0, sprintf($GLOBALS['_LANG']['return_order_surplus'], $order['order_sn']));
$GLOBALS['db']->query("UPDATE " . $GLOBALS['ecs']->table('order_info') . " SET `order_amount` = '0' WHERE `order_id` =" . $order['order_id']);
}
if ($order['user_id'] > 0 && $order['integral'] > 0) {
log_account_change($order['user_id'], 0, 0, 0, $order['integral'], sprintf($GLOBALS['_LANG']['return_order_integral'], $order['order_sn']));
}
if ($order['bonus_id'] > 0) {
unuse_bonus($order['bonus_id']);
}
/* 修改订单 */
$arr = array('bonus_id' => 0, 'bonus' => 0, 'integral' => 0, 'integral_money' => 0, 'surplus' => 0);
update_order($order['order_id'], $arr);
}
示例6: sprintf
$up_uid = $row['user_id'];
if (empty($up_uid) || empty($row['user_name'])) {
break;
} else {
$info = sprintf($_LANG['separate_info'], $order_sn, $setmoney, $setpoint);
log_account_change($up_uid, $setmoney, 0, $setpoint, 0, $info);
write_affiliate_log($oid, $up_uid, $row['user_name'], $setmoney, $setpoint, $separate_by);
}
}
} else {
//推荐订单分成
$row = $db->getRow("SELECT o.parent_id, u.user_name FROM " . $GLOBALS['ecs']->table('order_info') . " o" . " LEFT JOIN" . $GLOBALS['ecs']->table('users') . " u ON o.parent_id = u.user_id" . " WHERE o.order_id = '{$oid}'");
$up_uid = $row['parent_id'];
if (!empty($up_uid) && $up_uid > 0) {
$info = sprintf($_LANG['separate_info'], $order_sn, $money, $point);
log_account_change($up_uid, $money, 0, $point, 0, $info);
write_affiliate_log($oid, $up_uid, $row['user_name'], $money, $point, $separate_by);
} else {
$links[] = array('text' => $_LANG['affiliate_ck'], 'href' => 'affiliate_ck.php?act=list');
sys_msg($_LANG['edit_fail'], 1, $links);
}
}
$sql = "UPDATE " . $GLOBALS['ecs']->table('order_info') . " SET is_separate = 1" . " WHERE order_id = '{$oid}'";
$db->query($sql);
}
$links[] = array('text' => $_LANG['affiliate_ck'], 'href' => 'affiliate_ck.php?act=list');
sys_msg($_LANG['edit_ok'], 0, $links);
}
function get_affiliate_ck()
{
$affiliate = unserialize($GLOBALS['_CFG']['affiliate']);
示例7: order_paid
/**
* 修改订单的支付状态
*
* @access public
* @param string $log_id 支付编号
* @param integer $pay_status 状态
* @param string $note 备注
* @return void
*/
function order_paid($log_id, $pay_status = PS_PAYED, $note = '')
{
/* 取得支付编号 */
$log_id = intval($log_id);
if ($log_id > 0) {
/* 取得要修改的支付记录信息 */
$sql = "SELECT * FROM " . $GLOBALS['ecs']->table('pay_log') . " WHERE log_id = '{$log_id}'";
$pay_log = $GLOBALS['db']->getRow($sql);
if ($pay_log && $pay_log['is_paid'] == 0) {
/* 修改此次支付操作的状态为已付款 */
$sql = 'UPDATE ' . $GLOBALS['ecs']->table('pay_log') . " SET is_paid = '1' WHERE log_id = '{$log_id}'";
$GLOBALS['db']->query($sql);
/* 根据记录类型做相应处理 */
if ($pay_log['order_type'] == PAY_ORDER) {
/* 取得订单信息 */
$sql = 'SELECT order_id, order_sn, consignee, address, tel, shipping_id ' . 'FROM ' . $GLOBALS['ecs']->table('order_info') . " WHERE order_id = '{$pay_log['order_id']}'";
$order = $GLOBALS['db']->getRow($sql);
$order_id = $order['order_id'];
$order_sn = $order['order_sn'];
/* 修改订单状态为已付款 */
$sql = 'UPDATE ' . $GLOBALS['ecs']->table('order_info') . " SET order_status = '" . OS_CONFIRMED . "', " . " confirm_time = '" . gmtime() . "', " . " pay_status = '{$pay_status}', " . " pay_time = '" . gmtime() . "', " . " money_paid = order_amount," . " order_amount = 0 " . "WHERE order_id = '{$order_id}'";
$GLOBALS['db']->query($sql);
/* 记录订单操作记录 */
order_action($order_sn, OS_CONFIRMED, SS_UNSHIPPED, $pay_status, $note, $GLOBALS['_LANG']['buyer']);
/* 如果需要,发短信 */
if ($GLOBALS['_CFG']['sms_order_payed'] == '1' && $GLOBALS['_CFG']['sms_shop_mobile'] != '') {
include_once ROOT_PATH . 'includes/cls_sms.php';
$sms = new sms();
$sms->send($GLOBALS['_CFG']['sms_shop_mobile'], sprintf($GLOBALS['_LANG']['order_payed_sms'], $order_sn, $order['consignee'], $order['tel']), 0);
}
/* 对虚拟商品的支持 */
$virtual_goods = get_virtual_goods($order_id);
if (!empty($virtual_goods)) {
$msg = '';
if (!virtual_goods_ship($virtual_goods, $msg, $order_sn, true)) {
$GLOBALS['_LANG']['pay_success'] .= '<div style="color:red;">' . $msg . '</div>' . $GLOBALS['_LANG']['virtual_goods_ship_fail'];
}
/* 如果订单没有配送方式,自动完成发货操作 */
if ($order['shipping_id'] == -1) {
/* 将订单标识为已发货状态,并记录发货记录 */
$sql = 'UPDATE ' . $GLOBALS['ecs']->table('order_info') . " SET shipping_status = '" . SS_SHIPPED . "', shipping_time = '" . gmtime() . "'" . " WHERE order_id = '{$order_id}'";
$GLOBALS['db']->query($sql);
/* 记录订单操作记录 */
order_action($order_sn, OS_CONFIRMED, SS_SHIPPED, $pay_status, $note, $GLOBALS['_LANG']['buyer']);
}
}
} elseif ($pay_log['order_type'] == PAY_SURPLUS) {
/* 更新会员预付款的到款状态 */
$sql = 'UPDATE ' . $GLOBALS['ecs']->table('user_account') . " SET paid_time = '" . gmtime() . "', is_paid = 1" . " WHERE id = '{$pay_log['order_id']}' LIMIT 1";
$GLOBALS['db']->query($sql);
/* 取得添加预付款的用户以及金额 */
$sql = "SELECT user_id, amount FROM " . $GLOBALS['ecs']->table('user_account') . " WHERE id = '{$pay_log['order_id']}'";
$arr = $GLOBALS['db']->getRow($sql);
/* 修改会员帐户金额 */
$_LANG = array();
include_once ROOT_PATH . 'languages/' . $GLOBALS['_CFG']['lang'] . '/user.php';
log_account_change($arr['user_id'], $arr['amount'], 0, 0, 0, $_LANG['surplus_type_0'], ACT_SAVING);
}
} else {
/* 取得已发货的虚拟商品信息 */
$post_virtual_goods = get_virtual_goods($pay_log['order_id'], true);
/* 有已发货的虚拟商品 */
if (!empty($post_virtual_goods)) {
$msg = '';
/* 检查两次刷新时间有无超过12小时 */
$sql = 'SELECT pay_time, order_sn FROM ' . $GLOBALS['ecs']->table('order_info') . " WHERE order_id = '{$pay_log['order_id']}'";
$row = $GLOBALS['db']->getRow($sql);
$intval_time = gmtime() - $row['pay_time'];
if ($intval_time > 0 && $intval_time < 3600 * 12) {
$virtual_card = array();
foreach ($post_virtual_goods as $code => $goods_list) {
/* 只处理虚拟卡 */
if ($code == 'virtual_card') {
foreach ($goods_list as $goods) {
if ($info = virtual_card_result($row['order_sn'], $goods)) {
$virtual_card[] = array('goods_id' => $goods['goods_id'], 'goods_name' => $goods['goods_name'], 'info' => $info);
}
}
$GLOBALS['smarty']->assign('virtual_card', $virtual_card);
}
}
} else {
$msg = '<div>' . $GLOBALS['_LANG']['please_view_order_detail'] . '</div>';
}
$GLOBALS['_LANG']['pay_success'] .= $msg;
}
/* 取得未发货虚拟商品 */
$virtual_goods = get_virtual_goods($pay_log['order_id'], false);
if (!empty($virtual_goods)) {
$GLOBALS['_LANG']['pay_success'] .= '<br />' . $GLOBALS['_LANG']['virtual_goods_ship_fail'];
}
//.........这里部分代码省略.........
示例8: get_user_surplus
if ($is_paid == '1' && $account['process_type'] == '1') {
$user_account = get_user_surplus($account['user_id']);
$fmt_amount = str_replace('-', '', $amount);
//如果扣除的余额多于此会员拥有的余额,提示
if ($fmt_amount > $user_account) {
$link[] = array('text' => $_LANG['go_back'], 'href' => 'javascript:history.back(-1)');
sys_msg($_LANG['surplus_amount_error'], 0, $link);
}
update_user_account($id, $amount, $admin_note, $is_paid);
//更新会员余额数量
log_account_change($account['user_id'], $amount, 0, 0, 0, $_LANG['surplus_type_1'], ACT_DRAWING);
} elseif ($is_paid == '1' && $account['process_type'] == '0') {
//如果是预付款,并且已完成, 更新此条记录,增加相应的余额
update_user_account($id, $amount, $admin_note, $is_paid);
//更新会员余额数量
log_account_change($account['user_id'], $amount, 0, 0, 0, $_LANG['surplus_type_0'], ACT_SAVING);
} elseif ($is_paid == '0') {
/* 否则更新信息 */
$sql = "UPDATE " . $ecs->table('user_account') . " SET " . "admin_user = '{$_SESSION['admin_name']}', " . "admin_note = '{$admin_note}', " . "is_paid = 0 WHERE id = '{$id}'";
$db->query($sql);
}
/* 记录管理员日志 */
admin_log('(' . addslashes($_LANG['check']) . ')' . $admin_note, 'edit', 'user_surplus');
/* 提示信息 */
$link[0]['text'] = $_LANG['back_list'];
$link[0]['href'] = 'user_account.php?act=list&' . list_link_postfix();
sys_msg($_LANG['attradd_succed'], 0, $link);
}
} elseif ($_REQUEST['act'] == 'query') {
$list = account_list();
$smarty->assign('list', $list['list']);
示例9: done
//.........这里部分代码省略.........
$GLOBALS['db']->autoExecute($GLOBALS['ecs']->table('order_info'), $order, 'INSERT');
$error_no = $GLOBALS['db']->errno();
if ($error_no > 0 && $error_no != 1062)
{
die($GLOBALS['db']->errorMsg());
}
}
while ($error_no == 1062); //如果是订单号重复则重新提交数据
$new_order_id = $db->insert_id();
$order['order_id'] = $new_order_id;
/* 插入订单商品 */
$sql = "INSERT INTO " . $ecs->table('order_goods') . "( " .
"order_id, goods_id, goods_name, goods_sn, goods_number, market_price, ".
"goods_price, goods_attr, is_real, extension_code, parent_id, is_gift, goods_attr_id) ".
" SELECT '$new_order_id', goods_id, goods_name, goods_sn, goods_number, market_price, ".
"goods_price, goods_attr, is_real, extension_code, parent_id, is_gift, goods_attr_id".
" FROM " .$ecs->table('cart') .
" WHERE session_id = '".SESS_ID."' AND rec_type = '$flow_type'";
$db->query($sql);
/* 修改拍卖活动状态 */
if ($order['extension_code']=='auction')
{
$sql = "UPDATE ". $ecs->table('goods_activity') ." SET is_finished='2' WHERE act_id=".$order['extension_id'];
$db->query($sql);
}
/* 处理余额、积分、红包 */
if ($order['user_id'] > 0 && $order['surplus'] > 0)
{
log_account_change($order['user_id'], $order['surplus'] * (-1), 0, 0, 0, sprintf($_LANG['pay_order'], $order['order_sn']));
}
if ($order['user_id'] > 0 && $order['integral'] > 0)
{
log_account_change($order['user_id'], 0, 0, 0, $order['integral'] * (-1), sprintf($_LANG['pay_order'], $order['order_sn']));
}
if ($order['bonus_id'] > 0 && $temp_amout > 0)
{
use_bonus($order['bonus_id'], $new_order_id);
}
/* 如果使用库存,且下订单时减库存,则减少库存 */
if ($_CFG['use_storage'] == '1' && $_CFG['stock_dec_time'] == SDT_PLACE)
{
//change_order_goods_storage($order['order_id'], true, SDT_PLACE);
}
error_log('1',3,'flow.log');
/* 给商家发邮件 */
/* 增加是否给客服发送邮件选项 */
if ($_CFG['send_service_email'] && $_CFG['service_email'] != '')
{
error_log('2',3,'flow.log');
$tpl = get_mail_template('remind_of_new_order');
/*
$smarty->assign('order', $order);
$smarty->assign('goods_list', $cart_goods);
$smarty->assign('shop_name', $_CFG['shop_name']);
$smarty->assign('send_date', date($_CFG['time_format']));
$content = $smarty->fetch('str:' . $tpl['template_content']);
*/
send_mail($_CFG['shop_name'], $_CFG['service_email'], $tpl['template_subject'], $content, $tpl['is_html']);
}
示例10: admin_priv
admin_priv('back_view');
$status_refund = '1';
$back_id = intval(trim($_REQUEST['back_id']));
// 退换货订单id
$action_note = isset($_REQUEST['action_note']) ? trim($_REQUEST['action_note']) : '';
$order = back_order_info($back_id);
$sql = "update " . $ecs->table('back_goods') . " set status_refund='{$status_refund}' where back_id='{$back_id}' and (back_type='0' or back_type='4') ";
$db->query($sql);
$refund_money_2 = $_REQUEST['refund_money_2'] + $_REQUEST['refund_shipping_fee'];
$refund_desc = $_REQUEST['refund_desc'] . ($_REQUEST['refund_shipping'] ? '\\n(已退运费:' . $_REQUEST['refund_shipping_fee'] . ')' : '');
$sql2 = "update " . $ecs->table('back_order') . " set status_refund='{$status_refund}', refund_money_2='{$refund_money_2}', refund_type='{$_REQUEST['refund_type']}', refund_desc='{$refund_desc}' where back_id='{$back_id}' ";
$db->query($sql2);
/* 退回用户余额 */
if ($_REQUEST['refund_type'] == '1') {
$desc_back = "订单" . $order['order_id'] . '退款';
log_account_change($order['user_id'], $refund_money_2, 0, 0, 0, $desc_back);
//是否开启余额变动给客户发短信-退款
if ($_CFG['sms_user_money_change'] == 1) {
$sql = "SELECT user_money,mobile_phone FROM " . $GLOBALS['ecs']->table('users') . " WHERE user_id = '" . $order['user_id'] . "'";
$users = $GLOBALS['db']->getRow($sql);
$content = sprintf($_CFG['sms_return_goods_tpl'], $refund_money_2, $users['user_money'], $_CFG['sms_sign']);
if ($users['mobile_phone']) {
include_once '../send.php';
sendSMS($users['mobile_phone'], $content);
}
}
}
/* 记录log */
back_action($back_id, $order['status_back'], $status_refund, $action_note);
$links[] = array('text' => '返回退款/退货及维修详情', 'href' => 'back.php?act=back_info&back_id=' . $back_id);
sys_msg('恭喜,成功操作!', 1, $links);
示例11: sendIntegral
function sendIntegral($wxid, $num = 0, $key = "")
{
$uid = $this->isBindUser($wxid);
if ($uid) {
if ($key) {
$sql = "SELECT * FROM " . $GLOBALS['ecs']->table('weixin_keywords') . " where `key`='{$key}'";
$rs = $GLOBALS['db']->getRow($sql);
if ($rs && $rs['jf_type'] > 0 && $rs['jf_num'] > 0) {
$num = $rs['jf_num'];
if ($rs['jf_type'] == 1) {
$maxNum = $GLOBALS['db']->getOne("SELECT sum(num) FROM " . $GLOBALS['ecs']->table('weixin_jflog') . " where fake_id='{$wxid}' and `key_id`='{$rs['id']}'");
if ($maxNum > 0) {
return false;
}
}
if ($rs['jf_type'] == 2) {
$ymd = date('Y-m-d');
$maxNum = $GLOBALS['db']->getOne("SELECT sum(num) FROM " . $GLOBALS['ecs']->table('weixin_jflog') . " where fake_id='{$wxid}' and `key_id`='{${$rs['id']}}' and createymd='{$ymd}'");
if ($maxNum + $rs['jf_num'] > $rs['jf_maxnum']) {
return false;
}
}
}
}
if ($num > 0) {
log_account_change($uid, 0, 0, 0, $num, "微信活动赠送积分");
$createtime = time();
$createymd = date('Y-m-d');
$GLOBALS['db']->query("insert into " . $GLOBALS['ecs']->table('weixin_jflog') . " (`fake_id`,`jf_type`,`key_id`,`createtime`,`createymd`,`num`) value (\n\t\t\t\t\t'{$wxid}','{$rs['jf_type']}','{$rs['id']}','{$createtime}','{$createymd}','{$num}')");
}
return true;
}
return false;
}
示例12: array
$db->query($sql);
}
$links[] = array('text' => $_LANG['affiliate_ck'], 'href' => 'affiliate_ck.php?act=list');
sys_msg($_LANG['edit_ok'], 0, $links);
} elseif ($_REQUEST['act'] == 'rollback') {
$logid = (int) $_REQUEST['logid'];
$stat = $db->getRow("SELECT * FROM " . $GLOBALS['ecs']->table('affiliate_log') . " WHERE log_id = '{$logid}'");
if (!empty($stat)) {
if ($stat['separate_type'] == 1) {
//推荐订单分成
$flag = -2;
} else {
//推荐注册分成
$flag = -1;
}
log_account_change($stat['user_id'], -$stat['money'], 0, -$stat['point'], 0, $_LANG['loginfo']['cancel']);
$sql = "UPDATE " . $GLOBALS['ecs']->table('affiliate_log') . " SET separate_type = '{$flag}'" . " WHERE log_id = '{$logid}'";
$db->query($sql);
}
$links[] = array('text' => $_LANG['affiliate_ck'], 'href' => 'affiliate_ck.php?act=list');
sys_msg($_LANG['edit_ok'], 0, $links);
} elseif ($_REQUEST['act'] == 'separate') {
include_once ROOT_PATH . 'includes/lib_order.php';
require_once 'SqlHelper.php';
$sqlhelper = new SqlHelper();
$affiliate = unserialize($GLOBALS['_CFG']['affiliate']);
empty($affiliate) && ($affiliate = array());
$separate_by = $affiliate['config']['separate_by'];
$oid = (int) $_REQUEST['oid'];
$order_id = $oid;
//根据订单Id求买家id
示例13: action_vc_login_act
function action_vc_login_act()
{
$user = $GLOBALS['user'];
$_CFG = $GLOBALS['_CFG'];
$_LANG = $GLOBALS['_LANG'];
$smarty = $GLOBALS['smarty'];
$db = $GLOBALS['db'];
$ecs = $GLOBALS['ecs'];
$user_id = $GLOBALS['user_id'];
include_once (ROOT_PATH . 'includes/lib_clips.php');
$nowtime = gmtime();
$vc_sn = isset($_POST['vcard']) ? trim($_POST['vcard']) : '';
$vc_pwd = isset($_POST['pwd']) ? trim($_POST['pwd']) : '';
if(empty($vc_sn) || empty($vc_pwd))
{
show_message('卡号或密码都不能为空', '返回重新登录', 'user.php?act=vc_login');
}
$sql = "select vc.*, vt.type_money, vt.use_start_date, vt.use_end_date from " . $ecs->table('valuecard') . " AS vc " . " left join " . $ecs->table('valuecard_type') . " AS vt " . "on vc.vc_type_id = vt.type_id where vc.vc_sn= '$vc_sn' ";
$vcrow = $db->getRow($sql);
if(! $vcrow)
{
show_message('该储值卡号不存在', '请查证后重新登录', 'user.php?act=vc_login');
}
if($vc_pwd != $vcrow['vc_pwd'])
{
show_message('密码错误', '请查证后重新登录', 'user.php?act=vc_login');
}
if($nowtime < $vcrow['use_start_date'])
{
show_message('对不起,该储值卡还未到开始使用日期', '请过几天再登录试试', 'user.php?act=vc_login');
}
if($nowtime > $vcrow['use_end_date'])
{
show_message('对不起,该储值卡已过期', '请换个卡号重新登录', 'user.php?act=vc_login');
}
if($vcrow['user_id'])
{
show_message('对不起,该储值卡已使用', '请换个卡号重新登录', 'user.php?act=vc_login');
}
$sql = 'INSERT INTO ' . $GLOBALS['ecs']->table('user_account') . ' (user_id, admin_user, amount, add_time, paid_time, admin_note, user_note, process_type, payment, is_paid)' . " VALUES ('$user_id', '', '$vcrow[type_money]', '" . gmtime() . "', '" . gmtime() . "', '', '储值卡充值', '0', '储值卡号:$vc_sn', 1)";
$GLOBALS['db']->query($sql);
log_account_change($user_id, $vcrow['type_money'], 0, 0, 0, '储值卡充值,卡号:' . $vc_sn, ACT_OTHER);
$sql = "update " . $ecs->table('valuecard') . " set user_id='$user_id', used_time='$nowtime' where vc_id='$vcrow[vc_id]' ";
$db->query($sql);
show_message('恭喜,已成功充值!', '返回上一页', 'user.php?act=vc_login');
$smarty->display('user_transaction.dwt');
}
示例14: cancel_order
/**
* 取消一个用户订单
*
* @access public
* @param int $order_id 订单ID
* @param int $user_id 用户ID
*
* @return void
*/
function cancel_order($order_id, $user_id = 0)
{
/* 查询订单信息,检查状态 */
$sql = "SELECT user_id, order_id, order_sn , surplus , integral , bonus_id, order_status, shipping_status, pay_status, pay_id, money_paid " . " FROM " . $GLOBALS['ecs']->table('order_info') . " WHERE order_id = '{$order_id}'";
$order = $GLOBALS['db']->getRow($sql);
if (empty($order)) {
$GLOBALS['err']->add($GLOBALS['_LANG']['order_exist']);
return false;
}
// 如果用户ID大于0,检查订单是否属于该用户
if ($user_id > 0 && $order['user_id'] != $user_id) {
$GLOBALS['err']->add($GLOBALS['_LANG']['no_priv']);
return false;
}
// 订单状态只能是“未确认”
if ($order['order_status'] != OS_UNCONFIRMED) {
$GLOBALS['err']->add($GLOBALS['_LANG']['current_os_not_unconfirmed']);
return false;
}
$pay_status = PS_UNPAYED;
// 如果已付款,走退款流程
if ($order['pay_status'] == PS_PAYED && $order['money_paid'] > 0) {
//查找paylog
$sql = "SELECT * FROM " . $GLOBALS['ecs']->table('pay_log') . " WHERE order_id = '{$order['order_id']}' AND pay_id = '{$order['pay_id']}' AND is_paid = 1 ORDER BY log_id DESC LIMIT 1";
$paylog = $GLOBALS['db']->getRow($sql);
//退款申请
$refund_data = array('order_id' => $order['order_id'], 'log_id' => $paylog['log_id'], 'outer_sn' => $paylog['outer_sn'], 'pay_id' => $order['pay_id'], 'user_id' => $order['user_id'], 'order_amount' => $order['money_paid'], 'refund_amount' => $order['money_paid'], 'create_time' => time());
$pay_status = PS_REFUNDING;
$payment = payment_info($order['pay_id']);
if ($payment['self_refund'] == 1) {
//支持自助退款
include_once ROOT_PATH . 'include/modules/payment/' . $payment['pay_code'] . '.php';
$pay_obj = new $payment['pay_code']();
$result = $pay_obj->refund($order, unserialize_config($payment['pay_config']));
if (!$result) {
$GLOBALS['err']->add('退款失败,请联系客服处理');
} else {
$pay_status = PS_REFUND;
$refund_data['refund_admin'] = 0;
$refund_data['refund_time'] = time();
$refund_data['finish_time'] = time();
$refund_data['status'] = 2;
//TODO:发送微信模板消息或短信通知
}
} else {
$GLOBALS['err']->add('等待客服审核退款申请');
}
$GLOBALS['db']->autoExecute($GLOBALS['ecs']->table('refund_apply'), $refund_data, 'INSERT');
}
//将用户订单设置为取消
$sql = "UPDATE " . $GLOBALS['ecs']->table('order_info') . " SET order_status = " . OS_CANCELED . ", pay_status = " . $pay_status . " WHERE order_id = '{$order_id}'";
if ($GLOBALS['db']->query($sql)) {
/* 记录log */
order_action($order['order_sn'], OS_CANCELED, $order['shipping_status'], PS_UNPAYED, $GLOBALS['_LANG']['buyer_cancel'], 'buyer');
/* 退货用户余额、积分、红包 */
if ($order['user_id'] > 0 && $order['surplus'] > 0) {
$change_desc = sprintf($GLOBALS['_LANG']['return_surplus_on_cancel'], $order['order_sn']);
log_account_change($order['user_id'], $order['surplus'], 0, 0, 0, $change_desc);
}
if ($order['user_id'] > 0 && $order['integral'] > 0) {
$change_desc = sprintf($GLOBALS['_LANG']['return_integral_on_cancel'], $order['order_sn']);
log_account_change($order['user_id'], 0, 0, 0, $order['integral'], $change_desc);
}
if ($order['user_id'] > 0 && $order['bonus_id'] > 0) {
change_user_bonus($order['bonus_id'], $order['order_id'], false);
}
/* 如果使用库存,且下订单时减库存,则增加库存 */
if ($GLOBALS['_CFG']['use_storage'] == '1' && $GLOBALS['_CFG']['stock_dec_time'] == SDT_PLACE) {
change_order_goods_storage($order['order_id'], false, 1);
}
/* 修改订单 */
$arr = array('bonus_id' => 0, 'bonus' => 0, 'integral' => 0, 'integral_money' => 0, 'surplus' => 0);
update_order($order['order_id'], $arr);
return true;
} else {
return false;
}
}
示例15: cancel_order
/**
* 取消一个用户订单
*
* @access public
* @param int $order_id 订单ID
* @param int $user_id 用户ID
* @param int $action 取消类型
*
* @return void
*/
function cancel_order($order_id, $user_id = 0, $action = OS_CANCELED)
{
/* 查询订单信息,检查状态 */
$sql = "SELECT user_id, order_id, order_sn , surplus , integral , bonus_id, order_status, shipping_status, pay_status, pay_id, money_paid " . " FROM " . $GLOBALS['ecs']->table('order_info') . " WHERE order_id = '{$order_id}'";
$order = $GLOBALS['db']->GetRow($sql);
if (empty($order)) {
$GLOBALS['err']->add($GLOBALS['_LANG']['order_exist']);
return false;
}
// 如果用户ID大于0,检查订单是否属于该用户
if ($user_id > 0 && $order['user_id'] != $user_id) {
$GLOBALS['err']->add($GLOBALS['_LANG']['no_priv']);
return false;
}
// 订单状态只能是“未确认”
if ($order['order_status'] != OS_UNCONFIRMED) {
$GLOBALS['err']->add($GLOBALS['_LANG']['current_os_not_unconfirmed']);
return false;
}
// 如果已付款,走退款流程
if ($order['pay_status'] == PS_PAYED && $order['money_paid'] > 0) {
$payment = payment_info($order['pay_id']);
include_once ROOT_PATH . 'include/modules/payment/' . $payment['pay_code'] . '.php';
$pay_obj = new $payment['pay_code']();
$result = $pay_obj->refund($order, unserialize_config($payment['pay_config']));
if (!$result) {
$GLOBALS['err']->add('退款失败,请联系客服处理。');
return false;
}
}
//将用户订单设置为取消
$sql = "UPDATE " . $GLOBALS['ecs']->table('order_info') . " SET order_status = '{$action}', pay_status = " . PS_UNPAYED . " WHERE order_id = '{$order_id}'";
if ($GLOBALS['db']->query($sql)) {
/* 记录log */
order_action($order['order_sn'], $action, $order['shipping_status'], PS_UNPAYED, $GLOBALS['_LANG']['buyer_cancel'], 'buyer');
/* 退货用户余额、积分、红包 */
if ($order['user_id'] > 0 && $order['surplus'] > 0) {
$change_desc = sprintf($GLOBALS['_LANG']['return_surplus_on_cancel'], $order['order_sn']);
log_account_change($order['user_id'], $order['surplus'], 0, 0, 0, $change_desc);
}
if ($order['user_id'] > 0 && $order['integral'] > 0) {
$change_desc = sprintf($GLOBALS['_LANG']['return_integral_on_cancel'], $order['order_sn']);
log_account_change($order['user_id'], 0, 0, 0, $order['integral'], $change_desc);
}
if ($order['user_id'] > 0 && $order['bonus_id'] > 0) {
change_user_bonus($order['bonus_id'], $order['order_id'], false);
}
/* 如果使用库存,且下订单时减库存,则增加库存 */
if ($GLOBALS['_CFG']['use_storage'] == '1' && $GLOBALS['_CFG']['stock_dec_time'] == SDT_PLACE) {
change_order_goods_storage($order['order_id'], false, 1);
}
/* 修改订单 */
$arr = array('bonus_id' => 0, 'bonus' => 0, 'integral' => 0, 'integral_money' => 0, 'surplus' => 0);
update_order($order['order_id'], $arr);
return true;
} else {
die($GLOBALS['db']->errorMsg());
}
}