You've already forked qlg.tsgz.moe
							
							
		
			
				
	
	
		
			214 lines
		
	
	
		
			7.7 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			214 lines
		
	
	
		
			7.7 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
<?php
 | 
						|
namespace wstmart\app\controller;
 | 
						|
use wstmart\common\model\GoodsCats;
 | 
						|
/**
 | 
						|
 * ============================================================================
 | 
						|
 * 商品控制器
 | 
						|
 */
 | 
						|
class Goods extends Base{
 | 
						|
    protected $beforeActionList = [
 | 
						|
          'checkAuth' => ['only'=>'history']
 | 
						|
    ];
 | 
						|
    public function tmp(){
 | 
						|
    return;
 | 
						|
        $orderNo = [100066190,100066186,100065840,100065770,100065490,100065420,100065405,100065276,100064963,100064930,100064926,100064915,100064510,100064322,100064274,100064226,100064215,100064090,100064053,100063762,100063655,100063493,100063482,100063471,100063460,100063375,100063224,100063106,100063095,100063084,100063062,100063040,100063036,100063025,100063014,100063003,100062992,100062815,100066422,100066411,100066396,100066245];
 | 
						|
        foreach ($orderNo as &$key) {
 | 
						|
            echo $key;
 | 
						|
            dump(model('OrderRefunds')->byRefund($key));
 | 
						|
        }
 | 
						|
    }
 | 
						|
	/**
 | 
						|
	 * 商品主页
 | 
						|
	 */
 | 
						|
	public function detail(){
 | 
						|
        
 | 
						|
		$m = model('goods');
 | 
						|
        //获取商品id mark 20180323
 | 
						|
        $goods_id = input('goodsId/d');
 | 
						|
        $goods = $m->getBySale($goods_id);
 | 
						|
        hook('mobileControllerGoodsIndex',['getParams'=>input()]);
 | 
						|
        // 找不到商品记录
 | 
						|
        if(empty($goods)) exit(jsonReturn("此商品已下架或被删除!".$goods_id, -22));
 | 
						|
        //记录用户浏览商品
 | 
						|
        $userId = (int)session('WST_USER.userId');
 | 
						|
        if($userId){
 | 
						|
            $data['userId']= $userId;
 | 
						|
            $data['goodsId']=$goods['goodsId'];
 | 
						|
            $data['path']='3';
 | 
						|
            $data['create_time']=time();
 | 
						|
            $result=db('page_view')->insert($data);
 | 
						|
        }
 | 
						|
        $goods['goodsDesc']=htmlspecialchars_decode($goods['goodsDesc']);
 | 
						|
        $rule = '/<img src="\/(upload.*?)"/';
 | 
						|
        preg_match_all($rule, $goods['goodsDesc'], $images);
 | 
						|
 | 
						|
        foreach($images[0] as $k=>$v){
 | 
						|
            $goods['goodsDesc'] = str_replace('/'.$images[1][$k], '__ROOT__/'.WSTConf("CONF.goodsLogo") . "\"  data-echo=\"__ROOT__/".WSTImg($images[1][$k],0), $goods['goodsDesc']);
 | 
						|
        }
 | 
						|
        if(!empty($goods)){
 | 
						|
            // $history = cookie("wx_history_goods");
 | 
						|
            // $history = is_array($history)?$history:[];
 | 
						|
            // array_unshift($history, (string)$goods['goodsId']);
 | 
						|
            // $history = array_values(array_unique($history));
 | 
						|
            // if(!empty($history)){
 | 
						|
            //     cookie("wx_history_goods",$history,25920000);
 | 
						|
            // }
 | 
						|
                        
 | 
						|
            $goods['imgcount'] =  count($goods['gallery']);
 | 
						|
            //$goods['imgwidth'] = 'width:'.$goods['imgcount'].'00%';
 | 
						|
        }
 | 
						|
        //添加注册推荐人 mark 20180323
 | 
						|
        $goods['goods_url'] = url('mgoods-'.$goods_id.'.html','pName='.session('WST_USER.loginName'),'',true);
 | 
						|
        $goods['goodsCount'] = $m->getGoodsCount($goods['shopId']);//全部商品数
 | 
						|
        $goods['shopAccreds'] = model('shops')->shopAccreds($goods['shopId']);//店铺认证      
 | 
						|
        $goods['newGoodsCount'] = $m->getNewGoodsCount($goods['shopId']);//上新数
 | 
						|
        $goods['favoritesShopsNum'] = model('favorites')->getFavoritesShopsNum($goods['shopId']);//关注数
 | 
						|
        $goods['isFavorites'] = 0;//未关注该商品
 | 
						|
        if($userId){
 | 
						|
            $isFavorites = model('favorites')->isGetFavorites($goods['goodsId'],$userId);
 | 
						|
            if($isFavorites){
 | 
						|
                $goods['isFavorites'] = 1;//已关注该商品
 | 
						|
            }
 | 
						|
        }
 | 
						|
        $couponList = $this->getCouponList(0);
 | 
						|
        if(isset($couponList['data'])){
 | 
						|
            $goods['couponList'] = $couponList['data'];//优惠券列表
 | 
						|
        }else{
 | 
						|
            $goods['couponList'] = [];//优惠券列表
 | 
						|
        }
 | 
						|
 | 
						|
        $goods['promotionList'] = $this->getPromotionList($goods['shopId'], $goods['goodsId'],0);//获取可用的满减活动
 | 
						|
        $goods['oneAppraises'] = model('goods_appraises')->getOneAppraises($goods['goodsId']);//获取一个评论  
 | 
						|
         
 | 
						|
        $goods['showWhsle'] = 0;//是否显示批发价
 | 
						|
        // $hyhlm_id = session('WST_USER.hyhlm_id');//联盟ID
 | 
						|
        // if($hyhlm_id){
 | 
						|
        //     $lm_info = getLMUserByID($hyhlm_id,'u_level');
 | 
						|
        //     if($lm_info['u_level'] >= 1){
 | 
						|
        //         $goods['showWhsle'] = 1;
 | 
						|
        //     }
 | 
						|
        // }
 | 
						|
       // hook('afterGetGoods',['params'=>&$goods]);
 | 
						|
        
 | 
						|
        //dump($goods);die;
 | 
						|
        //exit(json_encode($goods));
 | 
						|
         // dump(hook('mobileDocumentGoodsPropDetail'));
 | 
						|
         //    dump(hook('mobileDocumentGoodsPromotionDetail',['goods'=>$goods]));
 | 
						|
         //die;
 | 
						|
        $rsv = jsonReturn('', 1,$goods);
 | 
						|
     
 | 
						|
        exit($rsv);
 | 
						|
	}
 | 
						|
    function gbk_to_utf8($data) {
 | 
						|
        if( is_array($data) ) {
 | 
						|
            foreach ($data as $k => $v) {
 | 
						|
                if ( is_array($v) ) {
 | 
						|
                    $data[$k] = $this->gbk_to_utf8($v);
 | 
						|
                } else {
 | 
						|
                    $data[$k] = iconv('GBK', 'UTF-8//IGNORE', $v); 
 | 
						|
                }
 | 
						|
            }
 | 
						|
            return $data;
 | 
						|
        } else {
 | 
						|
            $data = iconv('GBK', 'UTF-8//IGNORE', $data);
 | 
						|
            return $data;
 | 
						|
        }
 | 
						|
    }
 | 
						|
    /**
 | 
						|
     * 获取优惠券列表
 | 
						|
     * @param  integer $returnJson [是否返回json数据]
 | 
						|
     * @return [type]              [description]
 | 
						|
     */
 | 
						|
    public function getCouponList($returnJson = 1){
 | 
						|
    	return;
 | 
						|
        $m = new \addons\coupon\model\Coupons();
 | 
						|
        $data = $m->getCouponsByGoods();
 | 
						|
        if($returnJson  == 1){
 | 
						|
          exit(json_encode($data));
 | 
						|
        }else{
 | 
						|
          return $data;
 | 
						|
        }
 | 
						|
    }
 | 
						|
    /**
 | 
						|
     * 获取满就送列表
 | 
						|
     * @param  [type]  $shopId     [商铺ID]
 | 
						|
     * @param  [type]  $goodsId    [商品ID]
 | 
						|
     * @param  integer $returnJson [是否返回json数据]
 | 
						|
     * @return [type]              [description]
 | 
						|
     */
 | 
						|
    public function getPromotionList($shopId=0,$goodsId=0,$returnJson = 1){
 | 
						|
    	return;
 | 
						|
        $shopId = ($shopId==0)?(int)input('shopId'):$shopId;
 | 
						|
        $goodsId = ($goodsId==0)?(int)input('goodsId'):$goodsId;
 | 
						|
        $rm = new \addons\reward\model\Rewards(); 
 | 
						|
        $data = $rm->getAvailableRewards($shopId, $goodsId);
 | 
						|
        if($returnJson  == 1){
 | 
						|
          exit(json_encode("",1,$data));
 | 
						|
        }else{
 | 
						|
          return $data;
 | 
						|
        }
 | 
						|
    }
 | 
						|
	/**
 | 
						|
     * 商品列表
 | 
						|
     */
 | 
						|
    public function lists(){
 | 
						|
    	$this->assign("keyword", input('keyword'));
 | 
						|
    	$this->assign("catId", input('catId/d'));
 | 
						|
    	$this->assign("brandId", input('brandId/d'));
 | 
						|
    	return $this->fetch('goods_list');
 | 
						|
    }
 | 
						|
    /**
 | 
						|
     * 获取列表
 | 
						|
     */
 | 
						|
    public function pageQuery(){
 | 
						|
    	$m = model('goods');
 | 
						|
    	$gc = new GoodsCats();
 | 
						|
    	$catId = (int)input('catId');
 | 
						|
    	if($catId>0){
 | 
						|
    		$goodsCatIds = $gc->getParentIs($catId);
 | 
						|
    	}else{
 | 
						|
    		$goodsCatIds = [];
 | 
						|
    	}
 | 
						|
    	$from = (int)input("from", 0);
 | 
						|
        $scale = 0;
 | 
						|
    	switch ($from){
 | 
						|
            case 1:
 | 
						|
                $scale = dataConf('discountRateGtToShopping');
 | 
						|
                break;
 | 
						|
            case 2:
 | 
						|
                $scale = dataConf('discountRateGtToHelp');
 | 
						|
                break;
 | 
						|
            case 3:
 | 
						|
                $scale = dataConf('discountRateGtToHelpShopping');
 | 
						|
                break;
 | 
						|
        }
 | 
						|
        $_where['discountRate'] = [">=", $scale];
 | 
						|
    	$rs = $m->pageQuery($goodsCatIds, $_where);
 | 
						|
    	foreach ($rs['Rows'] as $key =>$v){
 | 
						|
    		$rs['Rows'][$key]['goodsImg'] = WSTImg($v['goodsImg'],2);
 | 
						|
    	}
 | 
						|
        // `券`标签
 | 
						|
        hook('afterQueryGoods',['page'=>&$rs]);
 | 
						|
    	exit(jsonReturn("", 1,$rs));
 | 
						|
    }
 | 
						|
 | 
						|
    /**
 | 
						|
    * 浏览历史页面
 | 
						|
    */
 | 
						|
    public function history(){
 | 
						|
        return $this->fetch('users/history/list');
 | 
						|
    }
 | 
						|
    /**
 | 
						|
    * 获取浏览历史
 | 
						|
    */
 | 
						|
    public function historyQuery(){
 | 
						|
        $rs = model('goods')->historyQuery();
 | 
						|
        if(!empty($rs)){
 | 
						|
	        foreach($rs['Rows'] as $k=>$v){
 | 
						|
	            $rs['Rows'][$k]['goodsImg'] = WSTImg($v['goodsImg'],3);
 | 
						|
	        }
 | 
						|
        }
 | 
						|
        return $rs;
 | 
						|
    }
 | 
						|
}
 |