public function doMobileCheckprize() { global $_W, $_GPC; if (empty($_SERVER["HTTP_X_REQUESTED_WITH"]) || strtolower($_SERVER["HTTP_X_REQUESTED_WITH"]) != "xmlhttprequest") { exit('非法访问'); } load()->model('activity'); $id = $_GPC['id']; $reply = pdo_fetch("SELECT * FROM " . tablename($this->table_reply) . " WHERE id = :id", array(':id' => $id)); if (!empty($reply)) { if (empty($_W['fans']['from_user'])) { //防止错误提交的数据 $errorCode = 10999; } else { $from_user = $_W['fans']['from_user']; $fans = pdo_fetch("SELECT fanid,uid FROM " . tablename('mc_mapping_fans') . " WHERE `openid`='{$from_user}' LIMIT 1"); $uid = '0'; if ($fans['uid'] != '0') { $uid = $fans['uid']; } else { $uid = mc_update($uid, array('email' => md5($from_user) . '@wdlcms.com')); if (!empty($fans['fanid']) && !empty($uid)) { pdo_update('mc_mapping_fans', array('uid' => $uid), array('fanid' => $fans['fanid'])); } } $profile = mc_fetch($uid); $awardnum = pdo_fetchcolumn('SELECT COUNT(*) FROM ' . tablename($this->table_award) . " WHERE reply_id = '{$id}' AND uid = '{$uid}'"); $awardfans = pdo_fetch("SELECT * FROM " . tablename($this->table_fans) . " WHERE reply_id = '{$id}' AND uid = '{$uid}'"); $t = mktime(0, 0, 0, date("m", time()), date("d", time()), date("y", time())); if (empty($awardfans)) { $data1 = array('reply_id' => $id, 'from_user' => $from_user, 'uid' => $uid, 'todaynum' => '0', 'totalnum' => '0', 'awardnum' => '0', 'last_time' => time(), 'createtime' => time()); pdo_insert($this->table_fans, $data1); } elseif ($awardfans['last_time'] < $t) { $data2 = array('todaynum' => '0', 'last_time' => time()); pdo_update($this->table_fans, $data2, array('id' => $awardfans['id'])); } if (time() <= $reply['starttime'] || time() >= $reply['endtime'] || $reply['status'] == 0) { $errorCode = 1; } elseif ($reply['status'] == 2) { $errorCode = 1; } elseif ($reply['groupid'] != 0 && $reply['groupid'] != $profile['groupid']) { $errorCode = 1; } elseif ($reply['need_num'] > $profile[$reply['need_type']]) { $errorCode = 1; } elseif ($awardnum >= $reply['awardnum']) { $errorCode = 1; } elseif ($awardfans['totalnum'] >= $reply['playnum']) { $errorCode = 1; } elseif ($awardfans['todaynum'] >= $reply['dayplaynum']) { $errorCode = 1; } else { mc_credit_update($uid, $reply['need_type'], '-' . $reply['need_num'], array('1', '幸运大抽奖 消耗 ' . $this->getcreditname($reply['need_type']) . ':' . $reply['need_num'])); $data3 = array('todaynum' => $awardfans['todaynum'] + 1, 'totalnum' => $awardfans['totalnum'] + 1, 'last_time' => time()); pdo_update($this->table_fans, $data3, array('id' => $awardfans['id'])); /*中奖部分代码开始*/ $rate = $reply['rate']; $prizes = iunserializer($reply['prizes']); $p_num = $prizes['p1_num'] + $prizes['p2_num'] + $prizes['p3_num'] + $prizes['p4_num']; empty($p_num) && ($p_num = 1); $arr['p1'] = round(100 * $rate * $prizes['p1_num'] / $p_num); $arr['p2'] = round(100 * $rate * $prizes['p2_num'] / $p_num); $arr['p3'] = round(100 * $rate * $prizes['p3_num'] / $p_num); $arr['p4'] = round(100 * $rate * $prizes['p4_num'] / $p_num); $arr['p5'] = 10000 - $arr['p1'] - $arr['p2'] - $arr['p3'] - $arr['p4']; if ($awardnum >= $p_num) { $result = 'p5'; } else { $result = $this->get_rand($arr); //返回结果为键值p1,p2,p3,p4 } /*中奖部分代码结束*/ if ($result == 'p5') { if ($reply['give_num'] != 0) { mc_credit_update($uid, $reply['give_type'], $reply['give_num'], array('1', '幸运大抽奖 未中奖赠送 ' . $this->getcreditname($reply['give_type']) . ':' . $reply['give_num'])); } } else { if ($reply['give_num'] != 0 && $reply['onlynone'] != 1) { $give_point = $reply['give_num']; $give_name = $this->getcreditname($reply['give_type']); mc_credit_update($uid, $reply['give_type'], $reply['give_num'], array('1', '幸运大抽奖 未中奖赠送 ' . $this->getcreditname($reply['give_type']) . ':' . $reply['give_num'])); } $errorCode = 0; if ($result == 'p1') { if ($prizes['p1_type'] != 2 && $prizes['p1_type'] != 3 && $prizes['p1_type'] != 4) { //积分类奖品 $point = $prizes['p1_score']; $point_name = $this->getcreditname($prizes['p1_type']); mc_credit_update($uid, $prizes['p1_type'], $point, array('1', '幸运大抽奖 中奖获得 ' . $this->getcreditname($prizes['p1_type']) . ':' . $point)); $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=mc&a=bond&do=credits&credittype=' . $prizes['p1_type']; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => $this->getcreditname($prizes['p1_type']) . ':' . $point, 'prizetype' => $prizes['p1_type'], 'level' => '1', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); } elseif ($prizes['p1_type'] == 2) { //非积分类奖品:折扣券 $point = 0; $couponid = $prizes['p1_score']; $coupon = activity_coupon_info($couponid, $_W['uniacid']); $ret = activity_coupon_grant($uid, $couponid, 'hx_lottery', '幸运大转盘中奖获得'); if (is_error($ret)) { //领取错误做等值处理 $remsg = ' 由于' . $ret['message'] . ' 奖品转换为等值' . $this->getcreditname($coupon['credittype']) . ':' . $coupon['credit']; mc_credit_update($uid, $coupon['credittype'], $coupon['credit'], array('1', '幸运大抽奖 等价 ' . $this->getcreditname($coupon['credittype']) . ':' . $coupon['credit'] . '原因:' . $ret['message'])); } $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=activity&a=coupon&do=mine'; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => '折扣券:' . $coupon['title'], 'prizetype' => 'coupon', 'level' => '1', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); $title = '折扣券'; $type = '折扣券'; $value = 1; } elseif ($prizes['p1_type'] == 3) { //非积分类奖品:代金券 $point = 0; $tokenid = $prizes['p1_score']; $token = activity_token_info($tokenid, $_W['uniacid']); $ret = activity_token_grant($uid, $tokenid, 'hx_lottery', '幸运大转盘中奖获得'); if (is_error($ret)) { //领取错误做等值处理 $remsg = ' 由于' . $ret['message'] . ' 奖品转换为等值' . $this->getcreditname($token['credittype']) . ':' . $token['credit']; mc_credit_update($uid, $token['credittype'], $token['credit'], array('1', '幸运大抽奖 等价 ' . $this->getcreditname($token['credittype']) . ':' . $token['credit'] . '原因:' . $ret['message'])); } $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=activity&a=token&do=mine'; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => '折扣券:' . $token['title'], 'prizetype' => 'token', 'level' => '1', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); $title = '代金券'; $type = '代金券'; $value = 1; } elseif ($prizes['p1_type'] == 4) { //非积分类奖品:真实物品 $point = 0; $goodsid = $prizes['p1_score']; $goods = activity_exchange_info($goodsid, $_W['uniacid']); $ret = activity_goods_grant($uid, $goodsid, 'hx_lottery', '幸运大转盘中奖获得'); if (is_error($ret)) { //领取错误做等值处理 $remsg = ' 由于' . $ret['message'] . ' 奖品转换为等值' . $this->getcreditname($goods['credittype']) . ':' . $goods['credit']; mc_credit_update($uid, $goods['credittype'], $goods['credit'], array('1', '幸运大抽奖 等价 ' . $this->getcreditname($goods['credittype']) . ':' . $goods['credit'] . '原因:' . $ret['message'])); } $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=activity&a=goods&do=mine'; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => '折扣券:' . $goods['title'], 'prizetype' => 'goods', 'level' => '1', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); $title = '真实物品券'; $type = '真实物品券'; $value = 1; } $award = array('title' => $title, 'value' => $value, 'type' => $type, 'remsg' => $remsg, 'point' => $point, 'point_name' => $point_name, 'give_point' => $give_point, 'give_name' => $give_name, 'level' => '1', 'detail_url' => $detail_url); } elseif ($result == 'p2') { if ($prizes['p2_type'] != 2 && $prizes['p2_type'] != 3 && $prizes['p2_type'] != 4) { //积分类奖品 $point = $prizes['p2_score']; $point_name = $this->getcreditname($prizes['p2_type']); mc_credit_update($uid, $prizes['p2_type'], $point, array('1', '幸运大抽奖 中奖获得 ' . $this->getcreditname($prizes['p2_type']) . ':' . $point)); $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=mc&a=bond&do=credits&credittype=' . $prizes['p2_type']; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => $this->getcreditname($prizes['p2_type']) . ':' . $point, 'prizetype' => $prizes['p2_type'], 'level' => '2', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); } elseif ($prizes['p2_type'] == 2) { //非积分类奖品:折扣券 $point = 0; $couponid = $prizes['p2_score']; $coupon = activity_coupon_info($couponid, $_W['uniacid']); $ret = activity_coupon_grant($uid, $couponid, 'hx_lottery', '幸运大转盘中奖获得'); if (is_error($ret)) { //领取错误做等值处理 $remsg = ' 由于' . $ret['message'] . ' 奖品转换为等值' . $this->getcreditname($coupon['credittype']) . ':' . $coupon['credit']; mc_credit_update($uid, $coupon['credittype'], $coupon['credit'], array('1', '幸运大抽奖 等价 ' . $this->getcreditname($coupon['credittype']) . ':' . $coupon['credit'] . '原因:' . $ret['message'])); } $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=activity&a=coupon&do=mine'; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => '折扣券:' . $coupon['title'], 'prizetype' => 'coupon', 'level' => '2', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); $title = '折扣券'; $type = '折扣券'; $value = 1; } elseif ($prizes['p2_type'] == 3) { //非积分类奖品:代金券 $point = 0; $tokenid = $prizes['p2_score']; $token = activity_token_info($tokenid, $_W['uniacid']); $ret = activity_token_grant($uid, $tokenid, 'hx_lottery', '幸运大转盘中奖获得'); if (is_error($ret)) { //领取错误做等值处理 $remsg = ' 由于' . $ret['message'] . ' 奖品转换为等值' . $this->getcreditname($token['credittype']) . ':' . $token['credit']; mc_credit_update($uid, $token['credittype'], $token['credit'], array('1', '幸运大抽奖 等价 ' . $this->getcreditname($token['credittype']) . ':' . $token['credit'] . '原因:' . $ret['message'])); } $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=activity&a=token&do=mine'; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => '折扣券:' . $token['title'], 'prizetype' => 'token', 'level' => '2', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); $title = '代金券'; $type = '代金券'; $value = 1; } elseif ($prizes['p2_type'] == 4) { //非积分类奖品:真实物品 $point = 0; $goodsid = $prizes['p2_score']; $goods = activity_exchange_info($goodsid, $_W['uniacid']); $ret = activity_goods_grant($uid, $goodsid, 'hx_lottery', '幸运大转盘中奖获得'); if (is_error($ret)) { //领取错误做等值处理 $remsg = ' 由于' . $ret['message'] . ' 奖品转换为等值' . $this->getcreditname($goods['credittype']) . ':' . $goods['credit']; mc_credit_update($uid, $goods['credittype'], $goods['credit'], array('1', '幸运大抽奖 等价 ' . $this->getcreditname($goods['credittype']) . ':' . $goods['credit'] . '原因:' . $ret['message'])); } $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=activity&a=goods&do=mine'; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => '折扣券:' . $goods['title'], 'prizetype' => 'goods', 'level' => '2', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); $title = '真实物品券'; $type = '真实物品券'; $value = 1; } $award = array('title' => $title, 'value' => $value, 'type' => $type, 'remsg' => $remsg, 'point' => $point, 'point_name' => $point_name, 'give_point' => $give_point, 'give_name' => $give_name, 'level' => '2', 'detail_url' => $detail_url); } elseif ($result == 'p3') { if ($prizes['p3_type'] != 2 && $prizes['p3_type'] != 3 && $prizes['p3_type'] != 4) { //积分类奖品 $point = $prizes['p3_score']; $point_name = $this->getcreditname($prizes['p3_type']); mc_credit_update($uid, $prizes['p3_type'], $point, array('1', '幸运大抽奖 中奖获得 ' . $this->getcreditname($prizes['p3_type']) . ':' . $point)); $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=mc&a=bond&do=credits&credittype=' . $prizes['p3_type']; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => $this->getcreditname($prizes['p3_type']) . ':' . $point, 'prizetype' => $prizes['p3_type'], 'level' => '3', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); } elseif ($prizes['p3_type'] == 2) { //非积分类奖品:折扣券 $point = 0; $couponid = $prizes['p3_score']; $coupon = activity_coupon_info($couponid, $_W['uniacid']); $ret = activity_coupon_grant($uid, $couponid, 'hx_lottery', '幸运大转盘中奖获得'); if (is_error($ret)) { //领取错误做等值处理 $remsg = ' 由于' . $ret['message'] . ' 奖品转换为等值' . $this->getcreditname($coupon['credittype']) . ':' . $coupon['credit']; mc_credit_update($uid, $coupon['credittype'], $coupon['credit'], array('1', '幸运大抽奖 等价 ' . $this->getcreditname($coupon['credittype']) . ':' . $coupon['credit'] . '原因:' . $ret['message'])); } $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=activity&a=coupon&do=mine'; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => '折扣券:' . $coupon['title'], 'prizetype' => 'coupon', 'level' => '3', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); $title = '折扣券'; $type = '折扣券'; $value = 1; } elseif ($prizes['p3_type'] == 3) { //非积分类奖品:代金券 $point = 0; $tokenid = $prizes['p3_score']; $token = activity_token_info($tokenid, $_W['uniacid']); $ret = activity_token_grant($uid, $tokenid, 'hx_lottery', '幸运大转盘中奖获得'); if (is_error($ret)) { //领取错误做等值处理 $remsg = ' 由于' . $ret['message'] . ' 奖品转换为等值' . $this->getcreditname($token['credittype']) . ':' . $token['credit']; mc_credit_update($uid, $token['credittype'], $token['credit'], array('1', '幸运大抽奖 等价 ' . $this->getcreditname($token['credittype']) . ':' . $token['credit'] . '原因:' . $ret['message'])); } $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=activity&a=token&do=mine'; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => '折扣券:' . $token['title'], 'prizetype' => 'token', 'level' => '3', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); $title = '代金券'; $type = '代金券'; $value = 1; } elseif ($prizes['p3_type'] == 4) { //非积分类奖品:真实物品 $point = 0; $goodsid = $prizes['p3_score']; $goods = activity_exchange_info($goodsid, $_W['uniacid']); $ret = activity_goods_grant($uid, $goodsid, 'hx_lottery', '幸运大转盘中奖获得'); if (is_error($ret)) { //领取错误做等值处理 $remsg = ' 由于' . $ret['message'] . ' 奖品转换为等值' . $this->getcreditname($goods['credittype']) . ':' . $goods['credit']; mc_credit_update($uid, $goods['credittype'], $goods['credit'], array('1', '幸运大抽奖 等价 ' . $this->getcreditname($goods['credittype']) . ':' . $goods['credit'] . '原因:' . $ret['message'])); } $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=activity&a=goods&do=mine'; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => '折扣券:' . $goods['title'], 'prizetype' => 'goods', 'level' => '3', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); $title = '真实物品券'; $type = '真实物品券'; $value = 1; } $award = array('title' => $title, 'value' => $value, 'type' => $type, 'remsg' => $remsg, 'point' => $point, 'point_name' => $point_name, 'give_point' => $give_point, 'give_name' => $give_name, 'level' => '3', 'detail_url' => $detail_url); } elseif ($result == 'p4') { if ($prizes['p4_type'] != 2 && $prizes['p4_type'] != 3 && $prizes['p4_type'] != 4) { //积分类奖品 $point = $prizes['p4_score']; $point_name = $this->getcreditname($prizes['p4_type']); mc_credit_update($uid, $prizes['p4_type'], $point, array('1', '幸运大抽奖 中奖获得 ' . $this->getcreditname($prizes['p4_type']) . ':' . $point)); $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=mc&a=bond&do=credits&credittype=' . $prizes['p4_type']; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => $this->getcreditname($prizes['p4_type']) . ':' . $point, 'prizetype' => $prizes['p4_type'], 'level' => '4', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); } elseif ($prizes['p4_type'] == 2) { //非积分类奖品:折扣券 $point = 0; $couponid = $prizes['p4_score']; $coupon = activity_coupon_info($couponid, $_W['uniacid']); $ret = activity_coupon_grant($uid, $couponid, 'hx_lottery', '幸运大转盘中奖获得'); if (is_error($ret)) { //领取错误做等值处理 $remsg = ' 由于' . $ret['message'] . ' 奖品转换为等值' . $this->getcreditname($coupon['credittype']) . ':' . $coupon['credit']; mc_credit_update($uid, $coupon['credittype'], $coupon['credit'], array('1', '幸运大抽奖 等价 ' . $this->getcreditname($coupon['credittype']) . ':' . $coupon['credit'] . '原因:' . $ret['message'])); } $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=activity&a=coupon&do=mine'; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => '折扣券:' . $coupon['title'], 'prizetype' => 'coupon', 'level' => '4', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); $title = '折扣券'; $type = '折扣券'; $value = 1; } elseif ($prizes['p4_type'] == 3) { //非积分类奖品:代金券 $point = 0; $tokenid = $prizes['p4_score']; $token = activity_token_info($tokenid, $_W['uniacid']); $ret = activity_token_grant($uid, $tokenid, 'hx_lottery', '幸运大转盘中奖获得'); if (is_error($ret)) { //领取错误做等值处理 $remsg = ' 由于' . $ret['message'] . ' 奖品转换为等值' . $this->getcreditname($token['credittype']) . ':' . $token['credit']; mc_credit_update($uid, $token['credittype'], $token['credit'], array('1', '幸运大抽奖 等价 ' . $this->getcreditname($token['credittype']) . ':' . $token['credit'] . '原因:' . $ret['message'])); } $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=activity&a=token&do=mine'; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => '折扣券:' . $token['title'], 'prizetype' => 'token', 'level' => '4', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); $title = '代金券'; $type = '代金券'; $value = 1; } elseif ($prizes['p4_type'] == 4) { //非积分类奖品:真实物品 $point = 0; $goodsid = $prizes['p4_score']; $goods = activity_exchange_info($goodsid, $_W['uniacid']); $ret = activity_goods_grant($uid, $goodsid, 'hx_lottery', '幸运大转盘中奖获得'); if (is_error($ret)) { //领取错误做等值处理 $remsg = ' 由于' . $ret['message'] . ' 奖品转换为等值' . $this->getcreditname($goods['credittype']) . ':' . $goods['credit']; mc_credit_update($uid, $goods['credittype'], $goods['credit'], array('1', '幸运大抽奖 等价 ' . $this->getcreditname($goods['credittype']) . ':' . $goods['credit'] . '原因:' . $ret['message'])); } $detail_url = $_W['siteroot'] . 'app/index.php?i=' . $_W['uniacid'] . '&c=activity&a=goods&do=mine'; $awarddata = array('reply_id' => $id, 'uid' => $uid, 'name' => '折扣券:' . $goods['title'], 'prizetype' => 'goods', 'level' => '4', 'createtime' => time(), 'consumetime' => time(), 'status' => 1); $title = '真实物品券'; $type = '真实物品券'; $value = 1; } $award = array('title' => $title, 'value' => $value, 'type' => $type, 'remsg' => !empty($remsg) ? $remsg : ' ', 'point' => $point, 'point_name' => $point_name, 'give_point' => $give_point, 'give_name' => $give_name, 'level' => '4', 'detail_url' => $detail_url); } pdo_insert($this->table_award, $awarddata); pdo_update($this->table_fans, array('awardnum' => $awardfans['awardnum'] + 1), array('id' => $awardfans['id'])); } } } } $data['code'] = $errorCode; $data['msg'] = $errorMsg; $data['data'] = $award; echo json_encode($data); }
$pindex = max(1, intval($_GPC['page'])); $psize = 10; $lists = pdo_fetchall('SELECT couponid,title,thumb,type,credittype,credit,endtime,description FROM ' . tablename('activity_coupon') . ' WHERE uniacid = :uniacid AND type = :type AND endtime > :endtime ORDER BY endtime ASC LIMIT ' . ($pindex - 1) * $psize . ',' . $psize, array(':uniacid' => $_W['uniacid'], ':type' => 2, ':endtime' => TIMESTAMP)); $pager = pagination($total, $pindex, $psize); } if ($do == 'post') { $id = intval($_GPC['id']); $token = activity_token_info($id, $_W['uniacid']); if (empty($token)) { message('没有指定的礼品兑换.'); } $credit = mc_credit_fetch($_W['member']['uid'], array($token['credittype'])); if ($credit[$token['credittype']] < $token['credit']) { message('您的' . $creditnames[$token['credittype']] . '数量不够,无法兑换.'); } $ret = activity_token_grant($_W['member']['uid'], $id, 'system', '用户使用' . $token['credit'] . $creditnames[$token['credittype']] . '兑换'); if (is_error($ret)) { message($ret['message']); } mc_credit_update($_W['member']['uid'], $token['credittype'], -1 * $token['credit'], array($_W['member']['uid'], '礼品兑换:' . $token['title'] . ' 消耗 ' . $creditnames[$token['credittype']] . ':' . $token['credit'])); message("兑换成功,您消费了 {$token['credit']} {$creditnames[$token['credittype']]}", url('activity/token/mine')); } 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;
$log = array($uid, "领取会员卡,赠送{$card['grant']['credit1']}积分", 'system', $clerk['id'], $clerk['store_id']); mc_credit_update($uid, 'credit1', $card['grant']['credit1'], $log); } if ($card['grant']['credit2'] > 0) { $log = array($uid, "领取会员卡,赠送{$card['credit2']['credit1']}余额", 'system', $clerk['id'], $clerk['store_id']); mc_credit_update($uid, 'credit2', $card['grant']['credit2'], $log); } if ($card['grant']['coupon'] > 0) { if ($card['grant']['coupon'] > 0) { $coupon = pdo_fetch('SELECT couponid,title,type FROM ' . tablename('activity_coupon') . ' WHERE uniacid = :uniacid AND couponid = :couponid', array(':uniacid' => $_W['uniacid'], ':couponid' => $card['grant']['coupon'])); } load()->model('activity'); if ($coupon['type'] == 1) { $status = activity_coupon_grant($uid, $coupon['couponid'], 'card', '领取会员卡,赠送优惠券'); } else { $status = activity_token_grant($uid, $coupon['couponid'], 'card', '领取会员卡,赠送优惠券'); } } exit('success'); } } if ($do == 'group') { $credit6 = floatval($_GPC['credit6']); $credit = $credit1 + $credit6; if ($credit < 0) { exit('积分和贡献相加不能小于0'); } if ($credit6 != $user['credit6']) { mc_credit_update($uid, 'credit6', -$user['credit6'] + $credit6, array(0, "通过修改贡献值,来变更会员用户组", 'group', $clerk['id'], $clerk['store_id'])); } $groupid = $user['groupid'];
} if (empty($exchange)) { message('没有指定的礼品兑换.'); } $credit = mc_credit_fetch($uid, array($exchange['credittype'])); if ($credit[$exchange['credittype']] < $exchange['credit']) { message($creditnames[$exchange['credittype']] . '数量不够,无法兑换.'); } $extype = intval($exchange['type']); if ($extype == 1) { $ret = activity_coupon_grant($uid, $exchange['extra']['id']); if (is_error($ret)) { message($ret['message']); } } elseif ($extype == 2) { $ret = activity_token_grant($uid, $exchange['extra']['id']); if (is_error($ret)) { message($ret['message']); } } elseif ($extype == 5) { $ret = activity_module_grant($uid, $exid); if (is_error($ret)) { message($ret['message']); } } $trade = array('uniacid' => $_W['uniacid'], 'uid' => $uid, 'exid' => $exid, 'type' => $exchange['type'], 'createtime' => TIMESTAMP, 'extra' => iserializer($exchange)); $tradetype = array('1' => 'coupons', '2' => 'tokens'); pdo_insert('activity_exchange_trades', $trade); mc_credit_update($uid, $exchange['credittype'], -1 * $exchange['credit'], array($uid, '礼品兑换:' . $exchange['title'] . ' 消耗 ' . $creditnames[$exchange['credittype']] . ':' . $exchange['credit'])); message("兑换成功,您消费了 {$exchange['credit']} {$creditnames[$exchange['credittype']]}", url("mc/bond/{$tradetype[$extype]}", array('type' => $extype))); } elseif ($do == 'shipping') {
$notice = ''; if ($setting['grant']['credit1'] > 0) { $log = array($_W['member']['uid'], "领取会员卡,赠送{$setting['grant']['credit1']}积分"); mc_credit_update($_W['member']['uid'], 'credit1', $setting['grant']['credit1'], $log); $notice .= "赠送【{$setting['grant']['credit1']}】积分"; } if ($setting['grant']['credit2'] > 0) { $log = array($_W['member']['uid'], "领取会员卡,赠送{$setting['credit2']['credit1']}余额"); mc_credit_update($_W['member']['uid'], 'credit2', $setting['grant']['credit2'], $log); $notice .= ",赠送【{$setting['grant']['credit2']}】余额"; } if ($setting['grant']['coupon'] > 0 && !empty($coupon)) { if ($coupon['type'] == 1) { $status = activity_coupon_grant($_W['member']['uid'], $coupon['couponid'], 'card', '领取会员卡,赠送优惠券'); } else { $status = activity_token_grant($_W['member']['uid'], $coupon['couponid'], 'card', '领取会员卡,赠送优惠券'); } if (!is_error($status)) { $notice .= ",赠送【{$coupon['title']}】优惠券"; } } $time = date('Y-m-d H:i'); $url = murl('mc/bond/mycard/', array(), true, true); $info = "【{$_W['account']['name']}】- 领取会员卡通知\n"; $info .= "您在{$time}成功领取会员卡,{$notice}。\n\n"; $info .= "<a href='{$url}'>点击查看详情</a>"; $status = mc_notice_custom_text($info, $_W['openid']); message("领取会员卡成功<br>{$notice}", url('mc/bond/mycard'), 'success'); } else { message('领取会员卡失败.', referer(), 'error'); }