if (empty($coupon)) { message(error(-1, '没有指定的礼品兑换'), '', 'ajax'); } $credit = mc_credit_fetch($_W['member']['uid'], array($coupon['credittype'])); if ($credit[$coupon['credittype']] < $coupon['credit']) { message(error(-1, "您的 {$creditnames[$token['credittype']]} 数量不够,无法兑换."), '', 'ajax'); } $ret = activity_coupon_grant($_W['member']['uid'], $id, '', '用户使用' . $coupon['credit'] . $creditnames[$coupon['credittype']] . '兑换'); if (is_error($ret)) { message($ret, '', 'ajax'); } mc_credit_update($_W['member']['uid'], $coupon['credittype'], -1 * $coupon['credit'], array($_W['member']['uid'], '礼品兑换:' . $coupon['title'] . ' 消耗 ' . $creditnames[$coupon['credittype']] . ':' . $coupon['credit'])); if ($coupon['credittype'] == 'credit1') { mc_notice_credit1($_W['openid'], $_W['member']['uid'], -1 * $coupon['credit'], '兑换折扣券消耗积分'); } else { mc_notice_credit2($_W['openid'], $_W['member']['uid'], -1 * $coupon['credit'], 0, '线上消费,兑换折扣券'); } message(error(0, "兑换成功,您消费了 {$token['credit']} {$creditnames[$token['credittype']]}"), '', 'ajax'); } if ($do == 'mine') { $psize = 10; $pindex = max(1, intval($_GPC['page'])); $params = array(':uid' => $_W['member']['uid']); $filter['used'] = '1'; $type = 1; if ($_GPC['type'] == 'used') { $filter['used'] = '2'; $type = 2; } $coupon = activity_coupon_owned($_W['member']['uid'], $filter, $pindex, $psize); $data = $coupon['data'];
if (($_GPC[$index . '_type'] == 1 || $_GPC[$index . '_type'] == 2) && $_GPC[$index . '_value']) { $value = $_GPC[$index . '_type'] == 1 ? $_GPC[$index . '_value'] : -$_GPC[$index . '_value']; $return = mc_credit_update($uid, $index, $value, array($_W['uid'], trim($_GPC['remark']), 'system', $clerk['id'], $clerk['store_id'])); if (is_error($return)) { message($return['message']); } $openid = pdo_fetchcolumn('SELECT openid FROM ' . tablename('mc_mapping_fans') . ' WHERE acid = :acid AND uid = :uid', array(':acid' => $_W['acid'], ':uid' => $uid)); if (!empty($openid)) { if ($index == 'credit1') { mc_notice_credit1($openid, $uid, $value, '管理员后台操作积分'); } if ($index == 'credit2') { if ($value > 0) { mc_notice_recharge($openid, $uid, $value, '', "管理员后台操作余额,增加{$value}余额"); } else { mc_notice_credit2($openid, $uid, $value, 0, "管理员后台操作余额,减少{$value}余额"); } } } } else { continue; } } message('会员积分操作成功', url('mc/creditmanage/display')); } else { message('未找到指定用户', url('mc/creditmanage/display'), 'error'); } } if ($do == 'modal') { if ($_W['isajax']) { $uid = intval($_GPC['uid']);
if (empty($goods)) { message(error(-1, '没有指定的礼品兑换'), '', 'ajax'); } $credit = mc_credit_fetch($_W['member']['uid'], array($goods['credittype'])); if ($credit[$goods['credittype']] < $goods['credit']) { message(error(-1, "您的 {$creditnames[$token['credittype']]} 数量不够,无法兑换."), '', 'ajax'); } $ret = activity_goods_grant($_W['member']['uid'], $id, 'system', '用户使用' . $goods['credit'] . $creditnames[$goods['credittype']] . '兑换'); if (is_error($ret)) { message($ret, '', 'ajax'); } mc_credit_update($_W['member']['uid'], $goods['credittype'], -1 * $goods['credit'], array($_W['member']['uid'], '礼品兑换:' . $goods['title'] . ' 消耗 ' . $creditnames[$goods['credittype']] . ':' . $goods['credit'])); if ($goods['credittype'] == 'credit1') { mc_notice_credit1($_W['openid'], $_W['member']['uid'], -1 * $goods['credit'], '兑换礼品消耗积分'); } else { mc_notice_credit2($_W['openid'], $_W['member']['uid'], -1 * $goods['credit'], 0, '线上消费,兑换礼品'); } message(error($ret, "兑换成功,您消费了 {$goods['credit']} {$creditnames[$goods['credittype']]},现在去完善订单信息"), '', 'ajax'); } if ($do == 'deliver') { load()->func('tpl'); $tid = intval($_GPC['tid']); $ship = pdo_fetch('SELECT * FROM ' . tablename('activity_exchange_trades_shipping') . ' WHERE uid = :uid AND tid = :tid', array(':uid' => $_W['member']['uid'], ':tid' => $tid)); if (empty($ship)) { message('没有找到该兑换的收货人信息', '', 'error'); } $member = mc_fetch($_W['member']['uid'], array('uid', 'realname', 'resideprovince', 'residecity', 'residedist', 'address', 'zipcode', 'mobile')); $ship['name'] = !empty($ship['name']) ? $ship['name'] : $member['realname']; $ship['province'] = !empty($ship['province']) ? $ship['province'] : $member['resideprovince']; $ship['city'] = !empty($ship['city']) ? $ship['city'] : $member['residecity']; $ship['district'] = !empty($ship['district']) ? $ship['district'] : $member['residedist'];
$discount_credit = 0; } } } if ($member['credit2'] < $discount_credit) { message('余额不足', referer(), 'error'); } if ($card_setting['grant_rate'] > 0) { $credit1 = $discount_credit * $card_setting['grant_rate']; $log_credit1 = array($member['uid'], "使用会员卡消费【{$discount_credit}】元,消费返积分比率:【1:{$card_setting['grant_rate']}】,共赠送积分{$credit1}", 'card', $clerk['id']); mc_credit_update($member['uid'], 'credit1', $credit1, $log_credit1); $discount_str .= ",消费返积分比率:【1:{$card_setting['grant_rate']}】,共赠送积分{$credit1}"; } $log_credit2 = array($member['uid'], "使用会员卡消费【{$credit}】元 {$discount_str},消费门店:{$store_str}", 'card', $clerk['id']); mc_credit_update($member['uid'], 'credit2', -$discount_credit, $log_credit2); mc_notice_credit2($card_member['openid'], $member['uid'], -$discount_credit, $credit1, $store_str); message("消费成功,共扣除余额{$discount_credit}元,赠送{$credit1}积分", url('clerk/check'), 'success'); } if ($card_setting['discount_type'] != 0 && !empty($card_setting['discount'])) { $discount = $card_setting['discount']; if (!empty($discount[$member['groupid']])) { $tips = "该会员所在的会员组: {$_W['account']['groups'][$member['groupid']]['title']} ,可享受满 {$discount[$member['groupid']]['condition']} "; if ($card_setting['discount_type'] == 2) { $tips .= "打 {$discount[$member['groupid']]['discount']} 折"; } else { $tips .= "减 {$discount[$member['groupid']]['discount']} 元"; } $mine_discount = $discount[$member['groupid']]; } } }
if (is_error($status)) { exit($status['message']); } if ($type == 'credit1') { mc_group_update($uid); } $openid = pdo_fetchcolumn('SELECT openid FROM ' . tablename('mc_mapping_fans') . ' WHERE acid = :acid AND uid = :uid', array(':acid' => $_W['acid'], ':uid' => $uid)); if (!empty($openid)) { if ($type == 'credit1') { mc_notice_credit1($openid, $uid, $num, '管理员后台操作积分'); } if ($type == 'credit2') { if ($num > 0) { mc_notice_recharge($openid, $uid, $num, '', "管理员后台操作余额,增加{$value}余额"); } else { mc_notice_credit2($openid, $uid, $num, 0, '', '', "管理员后台操作余额,减少{$value}余额"); } } } exit('success'); } if ($do == 'card') { load()->model('card'); $card = card_setting(); if (empty($card)) { exit('公众号未设置会员卡'); } $member = pdo_get('mc_card_members', array('uniacid' => $_W['uniacid'], 'uid' => $user['uid'])); if (!empty($member)) { exit('该会员已领取会员卡'); }
$discount_credit = 0; } } } if ($_W['member']['credit2'] < $discount_credit) { message('余额不足', referer(), 'error'); } if ($setting['grant_rate'] > 0) { $credit1 = $discount_credit * $setting['grant_rate']; $log_credit1 = array($_W['member']['uid'], "使用会员卡消费【{$discount_credit}】元,消费返积分比率:【1:{$setting['grant_rate']}】,共赠送积分{$credit1}"); mc_credit_update($_W['member']['uid'], 'credit1', $credit1, $log_credit1); $discount_str .= ",消费返积分比率:【1:{$setting['grant_rate']}】,共赠送积分{$credit1}"; } $log_credit2 = array($_W['member']['uid'], "使用会员卡消费【{$credit}】元 {$discount_str},消费门店:{$store_str}", 'card', 0, $store_id); mc_credit_update($_W['member']['uid'], 'credit2', -$discount_credit, $log_credit2); mc_notice_credit2($_W['openid'], $_W['member']['uid'], -$discount_credit, $credit1, $store_str); message("消费成功,共扣除余额{$discount_credit}元,赠送{$credit1}积分", url('mc/bond/mycard'), 'success'); } if ($setting['discount_type'] != 0 && !empty($setting['discount'])) { $discount = $setting['discount']; if (!empty($discount[$_W['member']['groupid']])) { $tips = "您当前会员组 {$_W['member']['groupname']} ,可享受满 {$discount[$_W['member']['groupid']]['condition']}元"; if ($setting['discount_type'] == 2) { $rate = $discount[$_W['member']['groupid']]['discount'] * 10; $tips .= "打{$rate}折"; } else { $tips .= "减{$discount[$_W['member']['groupid']]['discount']}元"; } $mine_discount = $discount[$_W['member']['groupid']]; } }
if (empty($token)) { message(error(-1, '没有指定的礼品兑换'), '', 'ajax'); } $credit = mc_credit_fetch($_W['member']['uid'], array($token['credittype'])); if ($credit[$token['credittype']] < $token['credit']) { message(error(-1, "您的 {$creditnames[$token['credittype']]} 数量不够,无法兑换."), '', 'ajax'); } $ret = activity_token_grant($_W['member']['uid'], $id, '', '用户使用' . $token['credit'] . $creditnames[$token['credittype']] . '兑换'); if (is_error($ret)) { message($ret, '', 'ajax'); } mc_credit_update($_W['member']['uid'], $token['credittype'], -1 * $token['credit'], array($_W['member']['uid'], '礼品兑换:' . $token['title'] . ' 消耗 ' . $creditnames[$token['credittype']] . ':' . $token['credit'])); if ($token['credittype'] == 'credit1') { mc_notice_credit1($_W['openid'], $_W['member']['uid'], -1 * $token['credit'], '兑换代金券消耗积分'); } else { mc_notice_credit2($_W['openid'], $_W['member']['uid'], -1 * $token['credit'], 0, '线上消费,兑换代金券'); } message(error(0, "兑换成功,您消费了 {$token['credit']} {$creditnames[$token['credittype']]}"), '', 'ajax'); } if ($do == 'mine') { $psize = 10; $pindex = max(1, intval($_GPC['page'])); $params = array(':uid' => $_W['member']['uid']); $filter['used'] = '1'; $type = 1; if ($_GPC['type'] == 'used') { $filter['used'] = '2'; $type = 2; } $coupon = activity_token_owned($_W['member']['uid'], $filter, $pindex, $psize); $data = $coupon['data'];