zhangdehua 1 سال پیش
والد
کامیت
abc12e6939

+ 9 - 0
app/api/controller/Cart.php

@@ -16,6 +16,7 @@ use app\api\model\Cart as CartModel;
 use app\api\service\Cart as CartService;
 use app\common\exception\BaseException;
 use think\response\Json;
+use think\View;
 
 /**
  * 购物车管理
@@ -25,6 +26,14 @@ use think\response\Json;
 class Cart extends Controller
 {
     /**
+     * @return |\think\response\View
+     */
+    public function myCart()
+    {
+        return view('shoppingCart');
+    }
+
+    /**
      * 购物车商品列表
      * @return Json
      * @throws BaseException

+ 4 - 7
app/api/controller/Index.php

@@ -63,16 +63,13 @@ class Index extends Controller
 
     public function productDetail()
     {
-//        $goodsId = $this->request->param('goodsId',0);
-//        if (empty($goodsId)){
-//            return \redirect('index');
-//        }
-        $goodsId = 10001;
+        $goodsId = $this->request->param('goodsId',0);
+        if (empty($goodsId)){
+            return \redirect('index');
+        }
         $goodsModel = new GoodsModel();
         $goods =  $goodsModel->getDetails($goodsId)->toArray();
-        //dd(json_encode($goods['goods_images']));
         $goods['content'] = html_entity_decode($goods['content']);
-        //dd($goods['content']);
         return view('productDetails',['goods'=>$goods]);
     }
 

+ 2 - 1
app/api/controller/Passport.php

@@ -13,6 +13,8 @@ declare (strict_types=1);
 namespace app\api\controller;
 
 use app\api\service\passport\Login as LoginService;
+use think\facade\Cookie;
+use think\facade\Session;
 
 /**
  * 用户认证模块
@@ -32,7 +34,6 @@ class Passport extends Controller
      */
     public function login()
     {
-        //dd($this->request->method());
         if ($this->request->method() =='GET'){
             return view('logIn');
         }

+ 26 - 26
app/api/view/cart/shoppingCart.html

@@ -15,7 +15,7 @@
     <meta name="keywords" content="电子烟,关键字" />
     <meta name="Description" content="网站描述" />
     <title>购物车</title>
-    <link rel="stylesheet" href="./css/common.css?t=108">
+    <link rel="stylesheet" href="/assets/api/css/common.css?t=108">
 </head>
 
 <body>
@@ -28,9 +28,9 @@
         </div>
         <!-- pc端头部 -->
         <div id="computerEndHeader">
-            <a href="./index.html">
+            <a href="../index/index.html">
                 <h1 class="computerLogo">
-                    <img src="./asstes/icon/logo.png" alt="Free Shipping Vapes" title="Free Shipping Vapes">
+                    <img src="/assets/api/asstes/icon/logo.png" alt="Free Shipping Vapes" title="Free Shipping Vapes">
                 </h1>
             </a>
             <div class="headNavContainer">
@@ -46,29 +46,29 @@
             <div class="headIconContainer">
                 <!-- 购物车 -->
                 <div class="headIconItem shoppingCartIcon">
-                    <img src="./asstes/icon/shoppingCart.png" alt="shoppingCart" tabindex="shoppingCart">
+                    <img src="/assets/api/asstes/icon/shoppingCart.png" alt="shoppingCart" tabindex="shoppingCart">
                 </div>
                 <!-- 收藏 -->
                 <div class="headIconItem collectIcon">
-                    <img src="./asstes/icon/collect.png" alt="collect" tabindex="collect">
+                    <img src="/assets/api/asstes/icon/collect.png" alt="collect" tabindex="collect">
                 </div>
                 <!-- 个人中心 -->
                 <div class="headIconItem userIcon">
-                    <img src="./asstes/icon/user.png" alt="user" tabindex="user">
+                    <img src="/assets/api/asstes/icon/user.png" alt="user" tabindex="user">
                 </div>
             </div>
         </div>
         <!-- 移动端头部 -->
         <div id="mobileEndHeader">
             <div class="mobileEndHeaderConten">
-                <a href="./index.html">
+                <a href="../index/index.html">
                     <h1 class="mobileLogo">
-                        <img src="./asstes/icon/logo.png" alt="Free Shipping Vapes" title="Free Shipping Vapes">
+                        <img src="/assets/api/asstes/icon/logo.png" alt="Free Shipping Vapes" title="Free Shipping Vapes">
                     </h1>
                 </a>
                 <div class="mobileUserIconList">
                     <div class="mobileUserIcon userIcon">
-                        <img src="./asstes/icon/user.png" alt="user" tabindex="user">
+                        <img src="/assets/api/asstes/icon/user.png" alt="user" tabindex="user">
                     </div>
                 </div>
                 <div class="mobileMenu">
@@ -115,9 +115,9 @@
                         <p class="ltV">Sign up for the Vapesourcing newsletter</p>
                     </div>
                     <div class="footerInuptBox">
-                        <img class="mailIcon" src="./asstes/icon//mailIcon.png" alt="">
+                        <img class="mailIcon" src="/assets/api/asstes/icon/mailIcon.png" alt="">
                         <input class="footerInupt" type="text">
-                        <img class="arrowIcon" src="./asstes/icon/arrowIcon.png" alt="">
+                        <img class="arrowIcon" src="/assets/api/asstes/icon/arrowIcon.png" alt="">
                     </div>
                     <div class="footerIconContainer">
                         <div class="footerIconList">
@@ -179,10 +179,10 @@
         </div>
     </section>
 </body>
-<script src="./js/jquery-1.12.0.js"></script>
-<script src="./js/flexible.js"></script>
-<script src="./js/swiper.js?t=6"></script>
-<script src="./js/jquery.lazyload.js"></script>
+<script src="/assets/api/js/jquery-1.12.0.js"></script>
+<script src="/assets/api/js/flexible.js"></script>
+<script src="/assets/api/js/swiper.js?t=6"></script>
+<script src="/assets/api/js/jquery.lazyload.js"></script>
 <script>
     $(document).ready(function () {
         const orderPayment = (params) => {
@@ -190,17 +190,20 @@
             const vapesToken = localStorage.getItem("vapes_token");
             return new Promise(function (resolve, reject) {
                 $.ajax({
-                    url: "https://www.yhc.com/index.php?s=/api/cashier/orderPay",
+                    url: "/index.php/api/checkout/submit?payType=30&mode=cart&address_id=2",
                     method: 'POST',
-                    data: params,
+                    data: JSON.stringify(params),
                     headers: {
                         'Content-Type': 'application/json',
-                        'storeId': '0001',
+                        'storeId': '10001',
                         'platform': 'H5',
-                        'Authorization': `Bearer ${vapesToken}`
+                        'Access-Token': vapesToken,
+                        //'Authorization': `Bearer ${vapesToken}`
                     },
                     dataType: 'json',
                     success: function (response) {
+                        //console.log(response)
+                        //var plink = response.data.payment.approval_link;
                         resolve(response);
                     },
                     error: function (xhr, status, error) {
@@ -213,19 +216,16 @@
 
         $("#orderPaymentBut").on(tap, async function () {
             const params = {
-                "method": "zfb",
-                "client": "H5",
-                "orderId": "00001",
-                "extra": {
-                    "returnUrl": "www"
-                },
+                "cartIds": "10002",
+                "delivery": 10,
+                "address_id": 2
             }
             console.log(params)
             const res = await orderPayment(params)
             console.log(res)
             const { status, data } = res || {}
             if (status === 200) {
-
+                window.open(data.payment.approval_link, '_blank');
             }
         });
 

+ 1 - 1
app/api/view/index/index.html

@@ -148,7 +148,7 @@
             <!-- 新的商品模块 -->
             <div class="newGoodsContainer">
                 {foreach $newGoods as $goods}
-                <a href="./productDetails.html">
+                <a href="/index.php/api/index/productDetail.html?goodsId={$goods['goods_id']}">
                     <div class="newGoodsItem">
                         <div class="goodsImgBox">
                             <img class="lazy" src="/assets/api/asstes/icon/transparent.png"

+ 35 - 4
app/api/view/index/productDetails.html

@@ -308,22 +308,26 @@
         //用户存储token名
         const VAPES_TOKEN = "vapes_token"
 
+        var vapesToken = '';
+
+        var goodsId = {$goods.goods_id};
+        var goodsSkuId = {$goods['skuList'][0]['goods_sku_id']};
+
         //富文本处理
         function initRichText() {
             $("#richTextContainer").html(`{$goods.content | raw}`)
         }
 
-
         /**
          * 登录校验点击
          * @param state 是否需要跳转登录页
          * @returns 
          */
         const isLogin = (state) => {
-            const vapesToken = localStorage.getItem(VAPES_TOKEN);
+            vapesToken = localStorage.getItem(VAPES_TOKEN);
             state = state || true;
-            if (!vapesToken || vapesToken === "" && state) {
-                window.location.href = "./login.html?return=1"
+            if (!vapesToken || vapesToken === 'undefined' || vapesToken === "" && state) {
+                window.location.href = "../passport/login.html?return=1"
             }
             return vapesToken && vapesToken !== "";
         }
@@ -334,10 +338,37 @@
           * @returns 
           */
         function addCart(number) {
+            const state = isLogin()
+
             if (!number || number <= 0) {
                 showToast("Please enter the quantity of products")
                 return
             }
+            var dp = {
+                goodsId : goodsId,
+                goodsSkuId:goodsSkuId,
+                goodsNum:number
+            }
+            $.ajax({
+                url: "/index.php/api/cart/add",
+                headers: { platform: 'H5',"Access-Token" : vapesToken },
+                dataType: 'json',
+                data: JSON.stringify(dp),
+                type: "POST",
+                contentType: 'application/json',
+                success: function (obj) {
+                    console.log(obj);
+                    //return false;
+                    //注册成功后进入
+                    if (obj.status === 200 || obj.status === '200') {
+                        console.log("Successful")
+                        return
+
+                    }
+
+                }
+
+            })
             console.log("商品数量", number)
         }
 

+ 3 - 10
app/api/view/passport/logIn.html

@@ -180,7 +180,7 @@
             var dp = {
                 form: {
                     mobile: userName,
-                    smsCode: '',
+                    smsCode: '888888',
                     password: password,
                     isParty: false,
                     partyData: []
@@ -199,7 +199,7 @@
                     //return false;
                     //注册成功后进入
                     if (obj.status === 200 || obj.status === '200') {
-                        console.log("登录成功")
+                        console.log("登录成功",obj.data.token)
                         localStorage.setItem(VAPES_TOKEN, obj.data.token)
                         jumpPage()
                     }
@@ -207,13 +207,6 @@
                 }
 
             })
-
-            // 登录成功后进入
-            if (true) {
-                console.log("登录成功")
-                localStorage.setItem(VAPES_TOKEN, "1")
-                jumpPage()
-            }
         });
 
         //继续(注册)
@@ -303,7 +296,7 @@
                     //return false;
                     //注册成功后进入
                     if (obj.status === 200 || obj.status === '200') {
-                        console.log("注册成功")
+                        console.log("注册成功",obj.data.token)
                         localStorage.setItem(VAPES_TOKEN, obj.data.token)
                         jumpPage()
                     }

+ 1 - 1
config/session.php

@@ -13,7 +13,7 @@ return [
     // 存储连接标识 当type使用cache的时候有效
     'store'          => null,
     // 过期时间
-    'expire'         => (60 * 60) * 5,  // 5个小时
+    'expire'         => (60 * 60) * 720,  // 5个小时
     // 前缀
     'prefix'         => '',
 ];