正在显示
4 个修改的文件
包含
18 行增加
和
2 行删除
| @@ -36,7 +36,11 @@ class UpdateSeoTdkCrontab extends Command | @@ -36,7 +36,11 @@ class UpdateSeoTdkCrontab extends Command | ||
| 36 | { | 36 | { |
| 37 | $project_ids = Project::where('type', Project::TYPE_TWO)->pluck('id')->toArray(); | 37 | $project_ids = Project::where('type', Project::TYPE_TWO)->pluck('id')->toArray(); |
| 38 | foreach ($project_ids as $project_id){ | 38 | foreach ($project_ids as $project_id){ |
| 39 | + try { | ||
| 39 | ProjectUpdateTdk::add_task($project_id); | 40 | ProjectUpdateTdk::add_task($project_id); |
| 41 | + }catch (\Exception $e){ | ||
| 42 | + | ||
| 43 | + } | ||
| 40 | } | 44 | } |
| 41 | } | 45 | } |
| 42 | 46 |
| @@ -43,7 +43,7 @@ class Kernel extends ConsoleKernel | @@ -43,7 +43,7 @@ class Kernel extends ConsoleKernel | ||
| 43 | $schedule->command('domain_info')->dailyAt('01:20')->withoutOverlapping(1);// 更新域名|证书结束时间,每天凌晨1点执行一次 | 43 | $schedule->command('domain_info')->dailyAt('01:20')->withoutOverlapping(1);// 更新域名|证书结束时间,每天凌晨1点执行一次 |
| 44 | $schedule->command('last_inquiry')->dailyAt('04:00')->withoutOverlapping(1);// 最近一次询盘信息 | 44 | $schedule->command('last_inquiry')->dailyAt('04:00')->withoutOverlapping(1);// 最近一次询盘信息 |
| 45 | // $schedule->command('update_progress')->everyThirtyMinutes()->withoutOverlapping(1);//监控更新 | 45 | // $schedule->command('update_progress')->everyThirtyMinutes()->withoutOverlapping(1);//监控更新 |
| 46 | - $schedule->command('update_seo_tdk_crontab')->dailyAt('00:00')->withoutOverlapping(1); //更新上线项目TDK | 46 | + $schedule->command('update_seo_tdk_crontab')->dailyAt('20:00')->withoutOverlapping(1); //更新上线项目TDK |
| 47 | // $schedule->command('website_data')->dailyAt('01:00')->withoutOverlapping(1); // 向AICC推送数据 | 47 | // $schedule->command('website_data')->dailyAt('01:00')->withoutOverlapping(1); // 向AICC推送数据 |
| 48 | // $schedule->command('project_file_pdf')->dailyAt('00:00')->withoutOverlapping(1); // 网站项目数据,生成PDF文件 | 48 | // $schedule->command('project_file_pdf')->dailyAt('00:00')->withoutOverlapping(1); // 网站项目数据,生成PDF文件 |
| 49 | $schedule->command('sync_manager')->dailyAt('01:00')->withoutOverlapping(1); //TODO::手机号码同步 每天执行一次 | 49 | $schedule->command('sync_manager')->dailyAt('01:00')->withoutOverlapping(1); //TODO::手机号码同步 每天执行一次 |
| @@ -40,7 +40,11 @@ class UpdateController extends BaseController | @@ -40,7 +40,11 @@ class UpdateController extends BaseController | ||
| 40 | ], [ | 40 | ], [ |
| 41 | 'project_id.required' => 'project_id不能为空', | 41 | 'project_id.required' => 'project_id不能为空', |
| 42 | ]); | 42 | ]); |
| 43 | + try { | ||
| 43 | ProjectUpdateTdk::add_task($this->param['project_id']); | 44 | ProjectUpdateTdk::add_task($this->param['project_id']); |
| 45 | + }catch (\Exception $e){ | ||
| 46 | + $this->fail($e->getMessage()); | ||
| 47 | + } | ||
| 44 | $this->response('任务添加成功'); | 48 | $this->response('任务添加成功'); |
| 45 | } | 49 | } |
| 46 | 50 |
| @@ -27,14 +27,20 @@ class ProjectUpdateTdk extends Base | @@ -27,14 +27,20 @@ class ProjectUpdateTdk extends Base | ||
| 27 | /** | 27 | /** |
| 28 | * 新建任务 | 28 | * 新建任务 |
| 29 | * @param $project_id | 29 | * @param $project_id |
| 30 | + * @throws \Exception | ||
| 30 | * @author zbj | 31 | * @author zbj |
| 31 | * @date 2023/11/9 | 32 | * @date 2023/11/9 |
| 32 | */ | 33 | */ |
| 33 | public static function add_task($project_id){ | 34 | public static function add_task($project_id){ |
| 34 | - Redis::lpush('updateSeoTdk', $project_id); | 35 | + $task = self::where('project_id', $project_id)->where('status', self::STATUS_PENDING)->first(); |
| 36 | + if($task){ | ||
| 37 | + throw new \Exception('该项目有未执行的任务,请勿重复添加'); | ||
| 38 | + } | ||
| 35 | $model = new self(); | 39 | $model = new self(); |
| 36 | $model->project_id = $project_id; | 40 | $model->project_id = $project_id; |
| 37 | $model->save(); | 41 | $model->save(); |
| 42 | + | ||
| 43 | + Redis::lpush('updateSeoTdk', $project_id); | ||
| 38 | } | 44 | } |
| 39 | 45 | ||
| 40 | /** | 46 | /** |
| @@ -114,6 +120,8 @@ class ProjectUpdateTdk extends Base | @@ -114,6 +120,8 @@ class ProjectUpdateTdk extends Base | ||
| 114 | 120 | ||
| 115 | $data->save(); | 121 | $data->save(); |
| 116 | 122 | ||
| 123 | + self::where('project_id', $data['project_id'])->where('status', self::STATUS_PENDING)->update(['status' => self::STATUS_SUCCESS]); | ||
| 124 | + | ||
| 117 | DB::commit(); | 125 | DB::commit(); |
| 118 | } catch (\Exception $e) { | 126 | } catch (\Exception $e) { |
| 119 | DB::rollback(); | 127 | DB::rollback(); |
-
请 注册 或 登录 后发表评论