public function index(){ $data = input();//接值 //赋值 $goods_id = $data['goods_id']; $spec_goods_id = $data['spec_goods_id']; $number = $data['number']; $goods = \app\common\model\Goods::where('id',$goods_id)->find();//商品 $value_ids =SpecGoods::where('id',$spec_goods_id)->find();//规格 LogCart::addCart($goods_id,$spec_goods_id,$number); // return json($goods_id); return view('index',['goods'=>$goods,'number'=>$number,'value'=>$value_ids]); } public function cart(){ $data = LogCart::getCart(); $prices=0; foreach ($data as $k=>$v){ $data[$k]['goods'] = \app\common\model\Goods::where('id',$v['goods_id'])->find(); $data[$k]['spec_goods'] = SpecGoods::where('id',$v['spec_goods_id'])->find(); $data[$k]['sumprice'] = $v['number'] * $data[$k]['spec_goods']['price']; $prices += $data[$k]['sumprice']; } return view('cart',['data'=>$data,'price'=>$prices]); } public function order(){ if (!session("?user")){ $this->error('未登录,请前去登录','login/login'); } $data = \app\common\model\Cart::where('user_id',session("user")['id'])->where('is_check',1)->select(); $prices=0; foreach ($data as $k=>$v){ $data[$k]['goods'] = \app\common\model\Goods::where('id',$v['goods_id'])->find(); $data[$k]['spec_goods'] = SpecGoods::where('id',$v['spec_goods_id'])->find(); $data[$k]['sumprice'] = $v['number'] * $data[$k]['spec_goods']['price']; $prices += $data[$k]['sumprice']; } $address = Address::where('user_id',session("user")['id'])->select(); return view('order',['data'=>$data,'address'=>$address,'price'=>$prices]); } public function pay(){ $data = \app\common\model\Cart::where('user_id',session("user")['id'])->where('is_check',1)->select(); $prices=0; foreach ($data as $k=>$v){ $data[$k]['goods'] = \app\common\model\Goods::where('id',$v['goods_id'])->find(); $data[$k]['spec_goods'] = SpecGoods::where('id',$v['spec_goods_id'])->find(); $data[$k]['sumprice'] = $v['number'] * $data[$k]['spec_goods']['price']; $prices += $data[$k]['sumprice']; } $address = Address::where('user_id',session("user")['id'])->select(); $data['WIDout_trade_no']="bawei666".rand(1000,99999999); $data['WIDsubject']="bawei666"; $data['WIDtotal_amount']=$prices; $data['WIDbody']="asdsadassasd"; return view('',['data'=>$data]); } public function pagepay() { require_once VENDOR_PATH.'alipay/config.php'; require_once VENDOR_PATH.'alipay/pagepay/service/AlipayTradeService.php'; require_once VENDOR_PATH.'alipay/pagepay/buildermodel/AlipayTradePagePayContentBuilder.php'; //商户订单号,商户网站订单系统中唯一订单号,必填 $out_trade_no = trim($_POST['WIDout_trade_no']); //订单名称,必填 $subject = trim($_POST['WIDsubject']); //付款金额,必填 $total_amount = trim($_POST['WIDtotal_amount']); //商品描述,可空 $body = trim($_POST['WIDbody']); //构造参数 $payRequestBuilder = new \AlipayTradePagePayContentBuilder(); $payRequestBuilder->setBody($body); $payRequestBuilder->setSubject($subject); $payRequestBuilder->setTotalAmount($total_amount); $payRequestBuilder->setOutTradeNo($out_trade_no); $aop = new \AlipayTradeService($config); /** * pagePay 电脑网站支付请求 * @param $builder 业务参数,使用buildmodel中的对象生成。 * @param $return_url 同步跳转地址,公网可以访问 * @param $notify_url 异步通知地址,公网可以访问 * @return $response 支付宝返回的信息 */ $response = $aop->pagePay($payRequestBuilder,$config['return_url'],$config['notify_url']); //输出表单 var_dump($response); }
public static function addCart($goods_id,$spec_goods_id,$number){ if (session('?user')){ $where['goods_id'] = $goods_id; $where['spec_goods_id'] = $spec_goods_id; $where['user_id'] = session('user.id'); $info = Cart::where($where)->find(); if ($info){ $info->number += $number; $info->save(); }else{ $where['number'] = $number; $info = Cart::create($where); } }else{ $list = cookie('cart') ? : []; $key = $goods_id.'_'.$spec_goods_id; if (isset($list[$key])){ $list[$key]['number'] += $number; }else{ $list[$key] = [ 'id'=>$key, 'goods_id'=>$goods_id, 'spec_goods_id'=>$spec_goods_id, 'number'=>$number, 'is_check'=>1 ]; } cookie('cart',$list,86400); } } public static function getCart(){ if (session('?user')){ $user_info = session('user'); $res = Cart::where('user_id',$user_info['id'])->select(); }else{ $res = cookie('cart'); } return $res; }