pointvoucher(); } /** * 代金券列表 */ public function pointvoucher() { $voucher_model = model('voucher'); //代金券模板状态 $templatestate_arr = $voucher_model->getTemplateState(); //查询会员信息 $member_info = model('member')->getMemberInfoByID(session('member_id')); //查询代金券列表 $where = array(); $where[] = array('vouchertemplate_if_private', '=', 0); $where[] = array('vouchertemplate_state', '=', $templatestate_arr['usable'][0]); $where[] = array('vouchertemplate_enddate', '>', TIMESTAMP); if (intval(input('storeclass_id')) > 0) { $where[] = array('vouchertemplate_sc_id', '=', intval(input('storeclass_id'))); } if (intval(input('price')) > 0) { $where[] = array('vouchertemplate_price', '=', intval(input('price'))); } //查询仅我能兑换和所需积分 $points_filter = array(); if (intval(input('isable')) == 1) { $points_filter['isable'] = $member_info['member_points']; } if (intval(input('points_min')) > 0) { $points_filter['min'] = intval(input('points_min')); } if (intval(input('points_max')) > 0) { $points_filter['max'] = intval(input('points_max')); } if (count($points_filter) > 0) { asort($points_filter); if (count($points_filter) > 1) { $points_filter = array_values($points_filter); $where[] = array('vouchertemplate_points', 'between', array($points_filter[0], $points_filter[1])); } else { if ($points_filter['min']) { $where[] = array('vouchertemplate_points', '>=', $points_filter['min']); } elseif ($points_filter['max']) { $where[] = array('vouchertemplate_points', '<=', $points_filter['max']); } elseif ($points_filter['isable']) { $where[] = array('vouchertemplate_points', '<=', $points_filter['isable']); } } } //排序 switch (input('orderby')) { case 'exchangenumdesc': $orderby = 'vouchertemplate_giveout desc,'; break; case 'exchangenumasc': $orderby = 'vouchertemplate_giveout asc,'; break; case 'pointsdesc': $orderby = 'vouchertemplate_points desc,'; break; case 'pointsasc': $orderby = 'vouchertemplate_points asc,'; break; default: $orderby = ''; } $orderby .= 'vouchertemplate_id desc'; $voucherlist = $voucher_model->getVouchertemplateList($where, '*', 0, 18, $orderby); $page_count = $voucher_model->page_info; //查询代金券面额 $pricelist = $voucher_model->getVoucherPriceList(); //查询店铺分类 $store_class = rkcache('storeclass', true); $result = array_merge(array('voucherlist' => $voucherlist, 'pricelist' => $pricelist, 'store_class' => $store_class), mobile_page($page_count)); ds_json_encode(10000, '', $result); } /** * 兑换代金券保存信息 * */ public function voucherexchange_save() { $member_id = $this->getMemberIdIfExists(); if (!$member_id) { ds_json_encode(10001, lang('param_error')); } $vid = intval(input('post.vid')); if ($vid <= 0) { ds_json_encode(10001, lang('param_error')); } $seller_model = model('seller'); $seller_info = $seller_model->getSellerInfo(array('member_id' => $member_id)); $voucher_model = model('voucher'); //验证是否可以兑换代金券 $data = $voucher_model->getCanChangeTemplateInfo($vid, intval($member_id), $seller_info['store_id']); if ($data['state'] == false) { ds_json_encode(10001, $data['msg']); } //添加代金券信息 $data = $voucher_model->exchangeVoucher($data['info'], $member_id); if ($data['state'] == true) { ds_json_encode(10000, $data['msg']); } else { ds_json_encode(10001, $data['msg']); } } }