Forráskód Böngészése

修改任务规则、添加任务规则

15313670163 4 hónapja
szülő
commit
6593fedf0f

+ 69 - 26
app/JsonRpc/CollectorService.php

@@ -30,9 +30,6 @@ class CollectorService implements CollectorServiceInterface
         $isweb = Web::where($where)->first();
         $isweb = Web::where($where)->first();
         if(empty($isweb)){
         if(empty($isweb)){
             date_default_timezone_set('Asia/Shanghai');
             date_default_timezone_set('Asia/Shanghai');
-            $time = time();
-            $catetime = date('Y-m-d H:i:s', $time);
-            $data['created_at'] = $catetime;
             $web = Web::insert($data);
             $web = Web::insert($data);
             
             
         }else{
         }else{
@@ -85,10 +82,11 @@ class CollectorService implements CollectorServiceInterface
     {
     {
         
         
         $web = Web::where('id',$data['id'])->first();
         $web = Web::where('id',$data['id'])->first();
-        if(empty($web->toArray())){
+        if(empty($web)){
             return Result::error('请输入正确的网站id!');
             return Result::error('请输入正确的网站id!');
             
             
         }else{
         }else{
+            date_default_timezone_set('Asia/Shanghai');
             $id = Web::where('id',$data['id'])->update($data);
             $id = Web::where('id',$data['id'])->update($data);
             if(empty($id)){
             if(empty($id)){
                 return Result::error('无法修改!');
                 return Result::error('无法修改!');
@@ -140,11 +138,6 @@ class CollectorService implements CollectorServiceInterface
         }
         }
         return Result::success($result);
         return Result::success($result);
     }
     }
-    /**
-     * 添加规则任务
-     * @param array $data
-     * @return array|mixed
-     */
     public function addRule(array $data): array
     public function addRule(array $data): array
     {
     {
         $web = Web::where('id',$data['web_id'])->get();
         $web = Web::where('id',$data['web_id'])->get();
@@ -155,20 +148,62 @@ class CollectorService implements CollectorServiceInterface
             $rulename = Rule::where('name',$data['name'])->get();
             $rulename = Rule::where('name',$data['name'])->get();
             //查找是否存在规则名称重复的
             //查找是否存在规则名称重复的
             if(empty($rulename->toArray())){
             if(empty($rulename->toArray())){
+                //(若是多类型参数一起传过来则根据类型,只获取对应类型需要的参数)
+                switch($data['type']){
+                    case 1:
+                        $rule = [
+                            'name' => $data['name'],
+                            'web_id' => $data['web_id'],
+                            'first_url' => $data['first_url'],
+                            'second_start' => $data['second_start'],
+                            'second_num' => $data['second_num'],
+                            'second_end' => $data['second_end'],
+                            'end_pagenum' => $data['end_pagenum'],
+                            'start' => $data['start'],
+                            'title' => $data['title'],
+                            'content' => $data['content']
+                        ];
+                        // var_dump("============1============");       
+                        break;         
+                    case 2:
+                        $rule = [
+                            'name' => $data['name'],
+                            'web_id' => $data['web_id'],
+                            'first_url' => $data['first_url'],
+                            'parameter' => $data['parameter'],
+                            'start' => $data['start'],
+                            'title' => $data['title'],
+                            'content' => $data['content']
+                        ];  
+                        // var_dump("============2============");       
+                        break;        
+                    default:
+                        $rule = [
+                            'name' => $data['name'],
+                            'web_id' => $data['web_id'],
+                            'diy_rule' => $data['diy_rule']
+                        ];        
+                        // var_dump("============3============");       
+                        break;              
+                }
+                if(isset($data['source']) && $data['type'] != 3){
+                    $rule ['source'] = $data['source'];
+                }
+                if(isset($data['writer_class']) && $data['type'] != 3){
+                    $rule ['writer_class'] = $data['writer_class'];
+                }
+                if(isset($data['writer']) && $data['type'] != 3){
+                    $rule ['writer'] = $data['writer'];
+                }
                 date_default_timezone_set('Asia/Shanghai');
                 date_default_timezone_set('Asia/Shanghai');
-                $time = time();
-                $catetime = date('Y-m-d H:i:s', $time);
-                $data['created_at'] = $catetime;
-                unset($data['type']);
                 //若不存在,根据网站类型添加到不行类型的规则表中
                 //若不存在,根据网站类型添加到不行类型的规则表中
-                $id = Rule::insertGetId($data);
-                $result = ['data' => $id];
+                $result = Rule::insertGetId($rule);
                 
                 
             }else{
             }else{
                 return Result::error('此任务已存在!');
                 return Result::error('此任务已存在!');
             }  
             }  
         }
         }
-        return Result::success($result['data']);
+        return Result::success($result);
     }
     }
     
     
     /**
     /**
@@ -226,16 +261,17 @@ class CollectorService implements CollectorServiceInterface
      */
      */
     public function upRule(array $data): array
     public function upRule(array $data): array
     {
     {
-        $rule = Rule::where('id',$data['id'])->first();
+        $rule = Rule::where('id',$data['id'])->select('id')->first();
+        unset($data['type']);
         if(empty($rule)){
         if(empty($rule)){
             return Result::error('请输入正确的规则任务id!');
             return Result::error('请输入正确的规则任务id!');
             
             
         }else{
         }else{
-            $rulename = Rule::where('name',$data['name'])->first();
+            $rulename = Rule::where('id','!=',$rule['id'])->where('name',$data['name'])->select('name')->first();
             if(empty($rulename)){
             if(empty($rulename)){
                 $result = Rule::where('id',$data['id'])->update($data);
                 $result = Rule::where('id',$data['id'])->update($data);
             }else{
             }else{
-                return Result::error('此任务名称已存在!');
+                return Result::error('已存在此任务规则名称!');
             }
             }
         }
         }
        
        
@@ -255,10 +291,10 @@ class CollectorService implements CollectorServiceInterface
             
             
         }else{
         }else{
             //查找是否存在已导入的文章
             //查找是否存在已导入的文章
-            $art_num = Article::where('rule_id',$data['rule'])->where('state',1)->count();
+            $art_num = Article::where('rule_id',$data['rule_id'])->where('state',1)->count();
             if($art_num==0){
             if($art_num==0){
                 //查找是否存在已采集但是未导入的文章
                 //查找是否存在已采集但是未导入的文章
-                $colart_num = Article::where('rule_id',$data['rule'])->where('state',0)->count();
+                $colart_num = Article::where('rule_id',$data['rule_id'])->where('state',0)->count();
                 if($colart_num==0){
                 if($colart_num==0){
                     $result['rule'] = Rule::where($where)->delete();
                     $result['rule'] = Rule::where($where)->delete();
                 }else{
                 }else{
@@ -266,7 +302,7 @@ class CollectorService implements CollectorServiceInterface
                         Db::beginTransaction();
                         Db::beginTransaction();
                         //若有已采集但未导入的文章,删除规则任务及相应的未导入的文章
                         //若有已采集但未导入的文章,删除规则任务及相应的未导入的文章
                         $result['rule'] = Rule::where($where)->delete();
                         $result['rule'] = Rule::where($where)->delete();
-                        $result['art'] = Article::where('rule_id',$data['id'])->delete();
+                        $result['art'] = Article::where('rule_id',$data['rule_id'])->delete();
                         Db::commit();
                         Db::commit();
                     } catch(\Throwable $ex){
                     } catch(\Throwable $ex){
                         Db::rollBack();
                         Db::rollBack();
@@ -347,6 +383,9 @@ class CollectorService implements CollectorServiceInterface
     {
     {
         $where = ['id' => $data['art_id']];
         $where = ['id' => $data['art_id']];
         $inf = Article::where($where)->first();
         $inf = Article::where($where)->first();
+        if($inf==null){
+            return Result::error('请输入正确的资讯id!');
+        }
         $info =  Article::where($where)
         $info =  Article::where($where)
         ->leftJoin('article_data','article_id','id')
         ->leftJoin('article_data','article_id','id')
         ->select('article.*','article_data.content')
         ->select('article.*','article_data.content')
@@ -355,9 +394,7 @@ class CollectorService implements CollectorServiceInterface
             $category = Category::where(['id'=>$info['catid']])->select('name')->first();
             $category = Category::where(['id'=>$info['catid']])->select('name')->first();
             $info['category'] = $category['name'];
             $info['category'] = $category['name'];
         }
         }
-        if(empty($info)){
-            return Result::error('请输入正确的资讯id!');
-        }
+        
         return  Result::success($info);
         return  Result::success($info);
     }
     }
     /**
     /**
@@ -374,6 +411,9 @@ class CollectorService implements CollectorServiceInterface
         unset($data['content']);
         unset($data['content']);
         //去掉此元素
         //去掉此元素
         $info =  Article::where('id',$id)->first();  
         $info =  Article::where('id',$id)->first();  
+        if($info==null){
+            return Result::error('请输入正确的文章id!');
+        }
         if($info['state']==1){
         if($info['state']==1){
             return Result::error('此文章已导入 ,不可编辑!');
             return Result::error('此文章已导入 ,不可编辑!');
         }else{
         }else{
@@ -405,6 +445,9 @@ class CollectorService implements CollectorServiceInterface
     {
     {
         $id = $data['art_id'];
         $id = $data['art_id'];
         $info = Article::where('id',$id)->first();
         $info = Article::where('id',$id)->first();
+        if($info==null){
+            return Result::error('请输入正确的文章id!');
+        }
         if($info['state']==1){
         if($info['state']==1){
             return Result::error('此文章已导入,不可删除!'); 
             return Result::error('此文章已导入,不可删除!'); 
         }else{
         }else{
@@ -448,7 +491,7 @@ class CollectorService implements CollectorServiceInterface
                 if($art_catid>0){
                 if($art_catid>0){
                     $result = Article::whereIn('id',$info)->update(['catid'=>$catid['catid']]);
                     $result = Article::whereIn('id',$info)->update(['catid'=>$catid['catid']]);
                 }else{
                 }else{
-                    $result = ['已全部关联导航,无需导入!'];
+                    $result = ['已全部关联导航,无需再次关联!'];
                 }
                 }
             }else{
             }else{
                 //若不存在已导入的文章则判断是否存在导航id
                 //若不存在已导入的文章则判断是否存在导航id

+ 0 - 32
runtime/container/proxy/App_Controller_AbstractController.proxy.php

@@ -1,32 +0,0 @@
-<?php
-
-declare (strict_types=1);
-/**
- * This file is part of Hyperf.
- *
- * @link     https://www.hyperf.io
- * @document https://hyperf.wiki
- * @contact  group@hyperf.io
- * @license  https://github.com/hyperf/hyperf/blob/master/LICENSE
- */
-namespace App\Controller;
-
-use Hyperf\Di\Annotation\Inject;
-use Hyperf\HttpServer\Contract\RequestInterface;
-use Hyperf\HttpServer\Contract\ResponseInterface;
-use Psr\Container\ContainerInterface;
-abstract class AbstractController
-{
-    use \Hyperf\Di\Aop\ProxyTrait;
-    use \Hyperf\Di\Aop\PropertyHandlerTrait;
-    function __construct()
-    {
-        $this->__handlePropertyHandler(__CLASS__);
-    }
-    #[Inject]
-    protected ContainerInterface $container;
-    #[Inject]
-    protected RequestInterface $request;
-    #[Inject]
-    protected ResponseInterface $response;
-}

+ 0 - 31
runtime/container/proxy/App_Controller_IndexController.proxy.php

@@ -1,31 +0,0 @@
-<?php
-
-declare (strict_types=1);
-/**
- * This file is part of Hyperf.
- *
- * @link     https://www.hyperf.io
- * @document https://hyperf.wiki
- * @contact  group@hyperf.io
- * @license  https://github.com/hyperf/hyperf/blob/master/LICENSE
- */
-namespace App\Controller;
-
-class IndexController extends AbstractController
-{
-    use \Hyperf\Di\Aop\ProxyTrait;
-    use \Hyperf\Di\Aop\PropertyHandlerTrait;
-    function __construct()
-    {
-        if (method_exists(parent::class, '__construct')) {
-            parent::__construct(...func_get_args());
-        }
-        $this->__handlePropertyHandler(__CLASS__);
-    }
-    public function index()
-    {
-        $user = $this->request->input('user', 'Hyperf');
-        $method = $this->request->getMethod();
-        return ['method' => $method, 'message' => "Hello {$user}."];
-    }
-}

A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 0 - 0
runtime/container/scan.cache


+ 1 - 1
runtime/hyperf.pid

@@ -1 +1 @@
-805
+9765

A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 1001 - 625
runtime/logs/hyperf.log


Nem az összes módosított fájl került megjelenítésre, mert túl sok fájl változott