| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 | <?php/** * GoodsController.php UTF-8 * h5 wap 商品详情 * * @date    : 2018/4/27 17:39 * * @license 这不是一个自由软件,未经授权不许任何使用和传播。 * @author  : liuhongliang <lhl@huosdk.com> * @version : HUOSDK 8.0 */namespace h5wap\wap\controller;use h5wap\common\controller\V2BaseController;use huo\controller\gift\Gift;use huo\controller\member\Member;use huo\controller\shop\Goods;use huo\controller\shop\ItgOrder;use huo\logic\shop\ItgOrderLogic;use huolib\constant\MemItgConst;use huolib\status\CommonStatus;use huolib\status\ShopStatus;class GoodsController extends V2BaseController {    /**     * H5WAP商品列表     * http://doc.1tsdk.com/138?page_id=3220     * 【域名】/wap/goods/list     *     */    public function index() {        $_mem_id = $this->mem_id;        $_param = $this->request->param();        $_can_exchange = $this->request->param('can_exchange');        $_can_ex = false;        if (2 == $_can_exchange) {            $_can_ex = true;        }        $_page = $this->request->param('page/d', 1);        $_offset = $this->request->param('offset/d', 2);        $_page = $_page.','.$_offset;        if (empty($_param['flag'])) {            $_param['flag'] = ['neq', MemItgConst::SHOP_FLAG_LOTTERY];        }        $_goods = (new Goods())->getList($_param, $_page, $_mem_id, $_can_ex);        if (ShopStatus::NO_ERROR != $_goods['code']) {            $this->returnData($_goods);        }        $this->returnData($_goods);    }    /**     * 商品详情页     * http://doc.1tsdk.com/138?page_id=3115     * 【域名】/wap/goods/detail     */    public function detail() {        $_user_info = (new Member())->getMemInfo($this->mem_id);        $this->assign('userinfo', $_user_info);        $_goods_id = $this->request->param('goods_id');        $_order_id = $this->request->param('order_id', 0);        $_goods_data = (new Goods())->getDetail($_goods_id);        if (CommonStatus::NO_ERROR != $_goods_data['code']) {            return $this->returnData($_goods_data);        }        //如果是抽奖商品,需要传递order_id        $_itg_order_data = (new ItgOrder())->getDetail($_order_id);        if ($_itg_order_data['code'] == CommonStatus::NO_ERROR) {            $this->assign("order", $_itg_order_data['data']);        } else {            $this->assign(                "order", [                           'order_id'        => '',                           'shipping_status' => ''                       ]            );        }        if (MemItgConst::GOODS_IS_GIFT == $_goods_data['data']['object_name']) {            $_gift_class = new Gift();            $_gift_data = $_gift_class->getGiftDetail($_goods_data['data']['object_id'], $this->mem_id);            if (CommonStatus::NO_ERROR == $_goods_data['code']) {                $this->assign('goods', $_goods_data['data']);                $this->assign('gift', $_gift_data['data']);                return $this->fetch('goods/gift');            }        }        //获取发货信息        $_itg_order_logic = new ItgOrderLogic();        $_where['mem_id'] = $this->mem_id;        $_where['goods_id'] = $_goods_id;        $_award_ad = $_itg_order_logic->getDetail($_where);        if (isset($_goods_data['data']['integral'])) {            $_goods_data['data']['integral'] = (int)$_goods_data['data']['integral'];        }        $this->assign('goods', $_goods_data['data']);        return $this->fetch('goods/detail');    }    /**     * 兑换记录     *     * @return mixed     * @throws \think\exception\DbException     */    public function myGoods() {        $_map['mem_id'] = $this->mem_id;        $_map['list_rows'] = 100;        $_item_obj = (new ItgOrderLogic())->getList($_map);        $_shipping_status = array(            MemItgConst::SHIP_STATUS_NOT  => '未发货',            MemItgConst::SHIP_STATUS_SUC  => '已发货',            MemItgConst::SHIP_STATUS_FAIL => '发货失败',        );        $_data = $_item_obj->toArray();        foreach ($_data['data'] as $_k => $_v) {            $_data['data'][$_k]['shipping_status_txt'] = $_shipping_status[$_v['shipping_status']];            $_order = (new ItgOrder())->getDetail($_v['order_id']);            $_data['data'][$_k]['order'] = $_order;        }        $this->assign('list', $_data);        return $this->fetch('goods/myGoods');    }}
 |