yingzi před 2 roky
rodič
revize
c40ae901ed

+ 42 - 4
app/api/controller/Pub.php

@@ -21,6 +21,7 @@ use think\Image;
 
 use app\model\api\AppBug;
 use app\model\api\ShowTemplate;
+use app\model\api\UserShowTemplate;
 use app\model\api\ServiceType;
 use app\model\api\ServiceTimeType;
 use app\model\api\Advert as AdvertModel;
@@ -43,6 +44,40 @@ class Pub extends BaseController
         return true;
     }
     
+    /**
+     * 获取模板详情
+     * @param Request $request
+     * @return type
+     */
+    public function getShowTemplateItem(Request $request){
+        $post = UtilService::getMore([
+            ['id', '','empty','参数错误'],
+        ], $request);
+        $data = (new ShowTemplate)
+                ->field("id,title,price,old_price,status,imgs,is_hot,is_recommend,code,look_count")
+                ->where("id",$post["id"])
+                ->find();
+        if(empty($data)){
+            return app('json')->fail("模板不存在");
+        }
+        if($data["status"]!=1){
+            return app('json')->fail("模板已下架");
+        }
+        $data["is_use"]      = 0;
+        $data["imgs"]        = getImageAr($data["imgs"]);
+        $data["img"]         = empty($data["imgs"]) ? "" : $data["imgs"][0];
+        $data["sales_count"] = $data["real_sales"] + $data["unreal_sales"];
+        unset($data["real_sales"]);
+        unset($data["unreal_sales"]);
+        //验证是否购买过并添加浏览记录
+        $this->checkUser($request->header("token", ""));
+        if(!empty($this->user)){
+            $data["is_use"]=(new UserShowTemplate)->where("uid",$this->user["uid"])->count()>0?1:0;
+            (new ShowTemplate)->where('id', $data["id"])->inc('look_count', 1)->update();
+        }
+        return app('json')->success($data);
+    }
+    
     /**
      * 获取皮肤模板列表
      * @param Request $request
@@ -69,15 +104,18 @@ class Pub extends BaseController
         $data=null;
         if($totalCount>0){
             $data = (new ShowTemplate)
-                ->field("id,title,price,old_price,status,imgs,is_hot,is_recommend,code")
+                ->field("id,title,price,old_price,status,imgs,is_hot,is_recommend,code,look_count")
                 ->where($where)
                 ->order("id", "desc")
                 ->page((int)$post["page"], $post["pageSize"])
                 ->select();
             foreach($data as $k=>$v){
-                $data[$k]["is_use"] = 0;//是否已经购买或者可以使用
-                $data[$k]["imgs"]   = getImageAr($v["imgs"]);
-                $data[$k]["img"]    = empty($data[$k]["imgs"]) ? "" : $data[$k]["imgs"][0];
+                $data[$k]["is_use"]      = 0;//是否已经购买或者可以使用
+                $data[$k]["imgs"]        = getImageAr($v["imgs"]);
+                $data[$k]["img"]         = empty($data[$k]["imgs"]) ? "" : $data[$k]["imgs"][0];
+                $data[$k]["sales_count"] = $data[$k]["real_sales"] + $data[$k]["unreal_sales"];
+                unset($data[$k]["real_sales"]);
+                unset($data[$k]["unreal_sales"]);
             }
         }
         $data = empty($data)?[]:$data;

+ 2 - 0
app/api/route/pub.php

@@ -16,6 +16,8 @@ use think\facade\Route;
 Route::group('pub', function () {
     //获取皮肤模板列表
     Route::rule('getShowTemplateList','Pub/getShowTemplateList');
+    //获取模板详情
+    Route::rule('getShowTemplateItem','Pub/getShowTemplateItem');
     //获取服务类型列表
     Route::rule('getServiceTypeList','Pub/getServiceTypeList');
     //获取收费时长类型

+ 14 - 0
app/model/api/UserShowTemplate.php

@@ -0,0 +1,14 @@
+<?php
+declare (strict_types = 1);
+
+namespace app\model\api;
+
+use think\Model;
+
+/**
+ * @mixin \think\Model
+ */
+class UserShowTemplate extends Model
+{
+    //
+}