123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167 |
- <?php
- /**
- * ShopController.php UTF-8
- *
- * h5 wap 积分商城
- *
- * @date : 2018/4/27 17:34
- *
- * @license 这不是一个自由软件,未经授权不许任何使用和传播。
- * @author : liuhongliang <lhl@huosdk.com>
- * @version : HUOSDK 8.0
- */
- namespace h5wap\wap\controller;
- use h5wap\common\controller\V2BaseController;
- use huo\controller\integral\MemIa;
- use huo\controller\lottery\Lottery;
- use huo\controller\member\Member;
- use huo\controller\posts\Posts;
- use huo\controller\shop\Goods;
- use huo\controller\shop\ItgOrder;
- use huo\controller\sign\Sign;
- use huo\model\shop\ItgOrderModel;
- use huolib\constant\MemItgConst;
- use huolib\constant\NewsConst;
- use huolib\status\CommonStatus;
- use huolib\status\NewsStatus;
- use huolib\status\ShopStatus;
- class ShopController extends V2BaseController {
- public function _initialize() {
- parent::_initialize();
- }
- /**
- * h5wap积分商城首页
- * http://doc.1tsdk.com/138?page_id=3114
- *
- * 【域名】/wap/shop/index
- *
- * @throws \think\Exception
- */
- public function index() {
- $_user_info = (new Member())->getMemInfo($this->mem_id);
- $this->assign('userinfo', $_user_info);
- $this->assign('has_task', ((new MemIa($this->mem_id))->getHasMemIa()));
- $_map['is_real'] = MemItgConst::GOODS_IS_VIRTUAL;
- $_map['flag'] = array("lt", 5);
- $_virtual_goods = (new Goods())->getList($_map, '', $this->mem_id);
- $this->assign('virtual_goods', $_virtual_goods['data']);
- $_sign_conf = (new Sign())->getSignConf();
- $_sign_list['count'] = count($_sign_conf);
- $_sign_list['list'] = $_sign_conf;
- $this->assign('sign_list', $_sign_list);
- return $this->fetch('shop/index');
- }
- public function index2() {
- $_user_info = (new Member())->getMemInfo($this->mem_id);
- $this->assign('userinfo', $_user_info);
- $this->assign('has_task', ((new MemIa($this->mem_id))->getHasMemIa()));
- $_map['is_real'] = MemItgConst::GOODS_IS_VIRTUAL;
- $_map['flag'] = array("lt", 5);
- $_virtual_goods = (new Goods())->getList($_map, '', $this->mem_id);
- $this->assign('virtual_goods', $_virtual_goods['data']);
- $_user_info = (new Member())->getMemInfo($this->mem_id);
- $this->assign('userinfo', $_user_info);
- $this->assign('has_task', ((new MemIa($this->mem_id))->getHasMemIa()));
- //查出抽奖详情
- $_activity_draw = (new Lottery())->getDetail($this->mem_id, NewsConst::SHOP_DRAW_ACT_ID);
- $this->assign('activity_draw', $_activity_draw['data']);
- $_sign_conf = (new Sign())->getSignConf();
- $_sign_list['count'] = count($_sign_conf);
- $_sign_list['list'] = $_sign_conf;
- $this->assign('sign_list', $_sign_list);
- return $this->fetch('shop/index2');
- }
- /**
- * h5wap积分商城首页2,直接抽奖类型
- * http://doc.1tsdk.com/138?page_id=3114
- *
- * 【域名】/wap/shop/index
- *
- * @throws \think\Exception
- */
- public function indexDraw() {
- $_user_info = (new Member())->getMemInfo($this->mem_id);
- $this->assign('userinfo', $_user_info);
- $this->assign('has_task', ((new MemIa($this->mem_id))->getHasMemIa()));
- //查出抽奖详情
- $_activity_draw = (new Lottery())->getDetail($this->mem_id, NewsConst::SHOP_DRAW_ACT_ID);
- $this->assign('activity_draw', $_activity_draw['data']);
- // print_r($_activity_draw);
- // exit;
- $_sign_conf = (new Sign())->getSignConf();
- $_sign_list['count'] = count($_sign_conf);
- $_sign_list['list'] = $_sign_conf;
- $this->assign('sign_list', $_sign_list);
- return $this->fetch('shop/index');
- }
- /**
- * 商品兑换
- * http://doc.1tsdk.com/138?page_id=3146
- * 【域名】/v8/goods/exchange
- */
- public function exchange() {
- $this->checkLogin();
- $_mem_id = $this->mem_id;
- $_goods_id = $this->request->param('goods_id');
- $_order_id = $this->request->param('order_id', 0);
- $address['consignee'] = $this->request->param('consignee/s', '');
- $address['mobile'] = $this->request->param('mobile/s', '');
- $address['country'] = $this->request->param('country/d', 0);
- $address['province'] = $this->request->param('province/d', 0);
- $address['city'] = $this->request->param('city/d', 0);
- $address['district'] = $this->request->param('district/d', 0);
- $address['town'] = $this->request->param('town/d', 0);
- $address['address'] = $this->request->param('address/s', '');
- $address['zipcode'] = $this->request->param('zipcode/s', '');
- //如果是抽奖商品,直接将订单地址填入,改变发货状态
- $_itg_order_data = (new ItgOrder())->getDetail($_order_id);
- if ($_itg_order_data['code'] == CommonStatus::NO_ERROR) {
- if ($_itg_order_data['data']['mem_id'] != $_mem_id) {
- return $this->error("您不能兑换他人奖品!");
- }
- $_news_class = new Posts();
- $_posts_data = $_news_class->getDetail($_itg_order_data['data']['act_id']);
- if (CommonStatus::NO_ERROR != $_posts_data['code']) {
- $this->returnData($_posts_data);
- }
- //活动结束
- if ($_posts_data['data']['end_time'] < time()) {
- $_code = NewsStatus::NEWS_CNT_PASTED;
- return $this->error(NewsStatus::getMsg($_code), $_code);
- }
- $_itg_order_data['data']['shipping_status'] = MemItgConst::SHIP_STATUS_NOT;
- $_itg_order_data['data']['consignee'] = $address['consignee'];
- $_itg_order_data['data']['mobile'] = $address['mobile'];
- $_itg_order_data['data']['country'] = $address['country'];
- $_itg_order_data['data']['province'] = $address['province'];
- $_itg_order_data['data']['city'] = $address['city'];
- $_itg_order_data['data']['district'] = $address['district'];
- $_itg_order_data['data']['town'] = $address['town'];
- $_itg_order_data['data']['address'] = $address['address'];
- $_itg_order_data['data']['zipcode'] = $address['zipcode'];
- $_rs = (new ItgOrderModel())->updateOrder($_itg_order_data['data'], $_itg_order_data['data']['id']);
- if (!$_rs) {
- return $this->error(CommonStatus::INNER_ERROR);
- }
- return $this->success();
- }
- $_data = (new ItgOrder())->exchange($this->mem_id, $_goods_id, $address);
- if (CommonStatus::NO_ERROR != $_data['code']) {
- return $this->returnData($_data);
- }
- return $this->returnData($_data);
- }
- }
|