application/index/controller/UserCart.php

(开头部分) 4KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

<?php

namespace app\index\controller;
use app\index\model\GoodsSpace;
use app\index\model\CartSpace;

class UserCart extends UserBase {

    public function index() {
        $buy_or_cart= session("buy_or_cart","", "index");
        if(!$buy_or_cart){$buy_or_cart=2;}
        $CartSpace_old = CartSpace::where(['buy_uid'=> session('uid','', 'index'),'buy_or_cart'=> $buy_or_cart])->order('update_time', 'desc')->select();
        //获得购物车的商品状态关联数组 goods_id为索引 goods_status为数值 方便下边foreach调用商品状态
      $goods_status_arr= $this->get_goods_status($CartSpace_old);
//只有商品状态为2的在售商品才在用户购物车显示
          foreach ($CartSpace_old as $value) {
             if( $goods_status_arr[$value['goods_id']]==2){
           $value['arr_pic']=explode(",", $value['pic']);
           $CartSpace[]= $value;
             }
        }
        $this->assign('buy_or_cart', $buy_or_cart);
        $this->assign('CartSpace', $CartSpace);
        return $this->fetch();
    }
      //获得购物车的商品状态关联数组列表 为了调出商品当前状态,看是否已经下架 
    private function get_goods_status($CartSpace_old) {
      
        foreach ($CartSpace_old as $value) {
                $goods_ids[]=  $value['goods_id'];
            }
             $GoodsSpace= GoodsSpace::all($goods_ids);
              foreach ($GoodsSpace as $value) {
                   $goodlist[$value['id'] ] = $value['goods_status'] ;
              } 
              return $goodlist;
    }
    
     //删除商品 动作 
    public function del_goods_action() {
        //检查当前删除购物商品的人是否是之前商品购买者 防止外部代码删除 
        if(session('uid','', 'index')==request()->param('value')){
        $res=CartSpace::where('id', request()->param('id'))->delete();
       return $this->json_data($res);
        }
    }

    public function add_cart_form() {
        $brand = db('cart_brand_space')->order('id', 'asc')->select();

        $this->assign('brand', $brand);
        return $this->fetch();
    }

    public function edit_cart_form() {
        $CartSpace = CartSpace::get(['id' => request()->param('id')]);
        if ($CartSpace['pic']) { $arr_pic = explode(",", $CartSpace['pic']);}
        if ($CartSpace['color']) { $arr_color = explode(",", $CartSpace['color']);}
        if ($CartSpace['model']) {$arr_model = explode(",", $CartSpace['model']); }
        $cate2 = db('cart_type_space')->where('pid', $CartSpace['cart_type'])->order('id', 'asc')->select();
后面还有 59 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。