rabin hace 2 semanas
padre
commit
b4c4cfec28

+ 1 - 1
src/place/boot.php

@@ -48,7 +48,7 @@ class Place
     public function info($account_id, $place_id, $uid)
     {
         $account = Dever::db('sector/user')->find($account_id);
-        $this->info = Dever::db('place/info')->find($place_id, ['col' => 'id,code,name,info,logo,type,money_id,uid,score_name,`update`,content']);
+        $this->info = Dever::db('place/info')->find($place_id, ['col' => 'id,code,name,info,logo,type,money_id,uid,score_name,`update`,content,share_name,share_pic,share_desc']);
         if (!$this->info) {
             Dever::error('信息有误');
         }

+ 41 - 0
src/place/interface/app/Api/Main.php

@@ -231,4 +231,45 @@ class Main extends Core
         }
         return $info;
     }
+
+    # 获取分享信息
+    public function share()
+    {
+        $sales_type = Dever::input('sales_type');
+        $sales_id = Dever::input('sales_id');
+        $type = Dever::input('type');
+        if (!$type) {
+            $type = 0;
+        }
+
+        if (!$sales_type || !$sales_id) {
+            $sales_type = $this->place->info['sales_type'];
+            $sales_id = $this->place->info['sales_id'];
+        }
+
+        if (!$this->place->uid) {
+            $this->place->uid = 0;
+        }
+
+        $result = Dever::load(\Place\Lib\Info::class)->share($this->place->info['id'], $sales_type, $sales_id, $this->place->uid, false, $type, false);
+        $share['path'] = $result['path'];
+        if ($type > 0) {
+            # 资源信息
+            $source = Dever::db('source/info')->find(['id' => $type]);
+            if (!$source['share_pic'] && $source['pic']) {
+                $source['pic'] = explode(',', $source['pic']);
+                $share['pic'] = $source['pic'][0];
+            } else {
+                $share['pic'] = $source['share_pic'];
+            }
+            $share['name'] = $source['share_name'] ?: $source['name'];
+            $share['desc'] = $source['share_desc'] ?: $source['info'];
+        } else {
+            $share['name'] = $this->place->info['share_name'] ?: $this->place->info['name'];
+            $share['pic'] = $this->place->info['share_pic'] ?: $this->place->info['logo'];
+            $share['desc'] = $this->place->info['share_desc'] ?: $this->place->info['info'];
+        }
+        $data['share'] = $share;
+        return $data;
+    }
 }

+ 1 - 2
src/place/interface/app/Api/User.php

@@ -214,14 +214,13 @@ class User extends Core
         if (!$type) {
             $type = 0;
         }
-        $applet = Dever::input('applet');
 
         if (!$sales_type || !$sales_id) {
             $sales_type = $this->place->info['sales_type'];
             $sales_id = $this->place->info['sales_id'];
         }
 
-        $result = Dever::load(\Place\Lib\Info::class)->share($this->place->info['id'], $sales_type, $sales_id, $this->place->uid, false, $type, $applet);
+        $result = Dever::load(\Place\Lib\Info::class)->share($this->place->info['id'], $sales_type, $sales_id, $this->place->uid, false, $type);
 
         # 小程序
         $data['qrcode'] = $result['applet']['wechat'];

+ 1 - 1
src/place/set/app/Lib/Info.php

@@ -20,7 +20,7 @@ class Info
     }
 
     # 生成分享需要的东西
-    public function share($place_id = 0, $sales_type = 0, $sales_id = 0, $uid = 0, $manage = false, $type = 0, $applet = '')
+    public function share($place_id = 0, $sales_type = 0, $sales_id = 0, $uid = 0, $manage = false, $type = 0, $applet = true)
     {
         $result = [];
         $info = Dever::db('place/info')->find($place_id);

+ 14 - 5
src/place/set/table/info.php

@@ -77,11 +77,20 @@ return [
             'default'   => '1',
             'value'     => 'sector/money',
         ],
-        
-        'score_name' => [
-            'name'      => '积分名称',
-            'type'      => 'varchar(32)',
-            'default'   => '积分',
+
+        'share_name' => [
+            'name'      => '分享标题',
+            'type'      => 'varchar(100)',
+        ],
+
+        'share_desc' => [
+            'name'      => '分享描述',
+            'type'      => 'varchar(500)',
+        ],
+
+        'share_pic' => [
+            'name'      => '分享图片',
+            'type'      => 'varchar(150)',
         ],
 
         'status' => [

+ 15 - 0
src/place/source/table/info.php

@@ -156,6 +156,21 @@ return [
             ],
         ],
 
+        'share_name' => [
+            'name'      => '分享标题',
+            'type'      => 'varchar(100)',
+        ],
+
+        'share_desc' => [
+            'name'      => '分享描述',
+            'type'      => 'varchar(500)',
+        ],
+
+        'share_pic' => [
+            'name'      => '分享图片',
+            'type'      => 'varchar(150)',
+        ],
+
         'sort' => [
             'name'      => '排序',
             'type'      => 'int(11)',