dever 3 anni fa
parent
commit
de007b1b23
2 ha cambiato i file con 72 aggiunte e 27 eliminazioni
  1. 57 26
      app/collection/lib/Create.php
  2. 15 1
      app/collection/lib/Spider.php

+ 57 - 26
app/collection/lib/Create.php

@@ -23,66 +23,79 @@ class Create
         	}
         }
 
-        # 1章最多15篇
         $max = 15;
         $result = array();
-        //唯美 第1章(时光)12季(主章节),1季12章(子章节),1章15篇(内容)
+
+        print_r($info);die;
         if ($info) {
             if ($info['reorder'] >= $max) {
             	$max = 12;
                 $result['reorder'] = $info['reorder'] = 1;
-
+                $result['page_id'] = $info['page_id'];
                 $page = Dever::db('collection/page')->find($info['page_id']);
                 if ($page) {
+                    $result['parent_times_id'] = $page['times_id_parent'];
+                    $result['times_id'] = $page['times_id'];
+                    $result['parent_page_id'] = $page['page_id'];
 
                 	if ($page['reorder'] >= $max) {
+                        $parent_page = Dever::db('collection/page')->find($result['parent_page_id']);
+                		
+                        if ($parent_page['reorder'] >= $max) {
+                            $result['parent_page_reorder'] = 1;
 
-                		# 超出子章节最大值,创建新的主章节
-                		$result['page_id'] = $this->createPage($info_id, $source_id, $page['times_id_parent'], $page['times_id'], $result['page_reorder'], $page['page_id'], $desc, $cover);
+                            $times = Dever::db('collection/times')->find($page['times_id']);
+
+                            $result['times_reorder'] = $times['reorder'] + 1;
+                            $result['times_id'] = $this->createTimes($info_id, $source_id, $result['times_reorder'], '', $year, $result['parent_times_id']);
+
+                        } else {
+                            $result['parent_page_reorder'] = $parent_page['reorder'] + 1;
+                        }
 
+                        $result['parent_page_id'] = $this->createPage($info_id, $source_id, $result['parent_times_id'], $result['times_id'], $result['parent_page_reorder']);
+
+                        $result['page_reorder'] = 1;
                 	} else {
                 		# 直接创建子章节
                 		$result['page_reorder'] = $page['reorder'] + 1;
-
-                		$result['page_id'] = $this->createPage($info_id, $source_id, $page['times_id_parent'], $page['times_id'], $result['page_reorder'], $page['page_id'], $desc, $cover);
-
                 	}
-                }
-
-                $result['content_id'] = $this->createContent($info_id, $source_id, $result['page_id'], $type, $result['reorder'], $cover);
 
+                    $result['page_id'] = $this->createPage($info_id, $source_id, $result['parent_times_id'], $result['times_id'], $result['page_reorder'], $result['parent_page_id'], $desc, $cover);
+                }
             } else {
                 $result['reorder'] = $info['reorder'] + 1;
-
-                $result['page_id'] = $info['page_id'];
-                $result['content_id'] = $this->createContent($info_id, $source_id, $result['page_id'], $type, $result['reorder'], $cover);
-                
             }
+
+            $result['content_id'] = $this->createContent($info_id, $source_id, $result['page_id'], $type, $result['reorder'], $cover);
         } else {
-        	$times_id_parent = $this->createTimes($info_id, $source_id, 1, $name);
-            if ($times_id_parent) {
-                $times_id = $this->createTimes($info_id, $source_id, 1, '', $year, $times_id_parent);
-                if ($times_id) {
-                	$parent_page_id = $this->createPage($info_id, $source_id, $times_id_parent, $times_id, 1, -1);
+            $result['reorder'] = $result['times_reorder'] = $result['parent_page_reorder'] = $result['page_reorder'] = 1;
+        	$result['parent_times_id'] = $this->createTimes($info_id, $source_id, $result['times_reorder'], $name);
+            if ($result['parent_times_id']) {
+                $result['times_id'] = $this->createTimes($info_id, $source_id, $result['times_reorder'], '', $year, $result['parent_times_id']);
+                if ($result['times_id']) {
+                	$result['parent_page_id'] = $this->createPage($info_id, $source_id, $result['parent_times_id'], $result['times_id'], $result['parent_page_reorder'], -1);
 
-                    if ($parent_page_id) {
+                    if ($result['parent_page_id']) {
 
-                        $page_id = $this->createPage($info_id, $source_id, $times_id_parent, $times_id, 1, $parent_page_id, $desc, $cover);
+                        $result['page_id'] = $this->createPage($info_id, $source_id, $result['parent_times_id'], $result['times_id'], $result['page_reorder'], $result['parent_page_id'], $desc, $cover);
 
-                        if ($page_id) {
-                            $content_id = $this->createContent($info_id, $source_id, $page_id, $type, 1, $cover);
+                        if ($result['page_id']) {
+                            $result['content_id'] = $this->createContent($info_id, $source_id, $result['page_id'], $type, $result['reorder'], $cover);
                         }
                     }
                 }
         	}
         }
 
-        if ($content_id) {
+        if ($result['content_id'] && $data) {
         	if ($type == 11) {
-        		$this->createPic($info_id, $content_id, $data);
+        		$this->createPic($info_id, $result['content_id'], $data);
         	}
         }
 
+        print_r($result);die;
+
         return $result;
     }
 
@@ -154,4 +167,22 @@ class Create
     	$param['reorder'] = $reorder;
     	return Dever::upinto($table, $where, $param);
     }
+
+    # 生成图片
+    public function createPic($id, $content_id, $pic)
+    {
+        $table = 'content/pic';
+        $where['info_id'] = $id;
+        $where['content_id'] = $content_id;
+        foreach ($pic as $k => $v) {
+            $where['pic_key'] = md5($v);
+            $param['pic'] = $v;
+            $v = Dever::curl($v . '?imageInfo');
+            $v = Dever::json_decode($v);
+            if (isset($v['width']) && $v['width'] > 0) {
+                Dever::upinto($table, $where, $param);
+                Dever::load('collection/lib/content')->updateTypeId($id, '', $where);
+            }
+        }
+    }
 }

+ 15 - 1
app/collection/lib/Spider.php

@@ -34,10 +34,22 @@ class Spider
     # 从采集的数据导入 一天采集一次,一次使用12个
     public function import_api()
     {
+
         # 导入到唯美中
         # 每年12期,
-        $id = Dever::input('info_id', 5);
+        $info_id = Dever::input('info_id', 5);
         $source_id = $where['pid'] = Dever::input('pid', 14);
+
+        $name = '测试';
+        $desc = '测试测试';
+        $year = '';
+
+        $data = 'https://img.lianzhixiu.com/uploads/allimg/202003/9999/43eefe151d.jpg,https://img.lianzhixiu.com/uploads/allimg/202003/9999/31020deb3d.jpg',
+
+        Dever::load('collection/lib/create')->up($info_id, $source_id, $name, $desc, $year, $type = 11, $data, $cover = '');
+
+        echo 1;die;
+
         $where['use'] = 1;
         $where['limit'] = '0,15';
         $data = Dever::db('spider/data')->getAll($where);
@@ -48,6 +60,8 @@ class Spider
 
         $page_desc = '';
 
+
+
         $date = explode('-', date('Y-m-d'));
 
         $param = array();