AnimeCheckImgUrlCommand.php 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <?php
  2. namespace App\Console\Anime;
  3. use Illuminate\Console\Command;
  4. use Illuminate\Support\Facades\DB;
  5. class AnimeCheckImgUrlCommand extends Command
  6. {
  7. /**
  8. * The name and signature of the console command.
  9. *
  10. * @var string
  11. */
  12. protected $signature = 'Anime:checkImgUrl';
  13. /**
  14. * The console command description.
  15. *
  16. * @var string
  17. */
  18. protected $description = '检查动漫对话角色和场景图片生成状态';
  19. /**
  20. * Execute the console command.
  21. *
  22. * @return int
  23. */
  24. public function handle()
  25. {
  26. dLog('generate')->info('====================开始检查动漫对话角色和场景图片生成状态====================');
  27. $time_start = microtime(true);
  28. // 获取待执行的动漫对话数据
  29. $data = DB::table('mp_animes')->where('status', '执行中')->select('roles', 'scenes')->get();
  30. // foreach ($data as $val) {
  31. // $roles = json_decode($val->roles, true);
  32. // $scenes = json_decode($val->scenes, true);
  33. // $role_count = count($roles);
  34. // $scene_count = count($scenes);
  35. // $role_success_count = 0;
  36. // $scene_success_count = 0;
  37. // for ($i=0; $i < $role_count; $i++) {
  38. // if (isset($roles[$i]['url']) && !empty($roles[$i]['url'])) {
  39. // $role_success_count++;
  40. // }
  41. // }
  42. // for ($i=0; $i < $scene_count; $i++) {
  43. // if (isset($scenes[$i]['url']) && !empty($scenes[$i]['url'])) {
  44. // $scene_success_count++;
  45. // }
  46. // }
  47. // if ($role_success_count == $role_count && $scene_success_count == $scene_count) {
  48. // // 更新状态为已完成
  49. // DB::table('mp_animes')->where('status', '执行中')->update(['status' => '已完成']);
  50. // dLog('generate')->info('动漫对话图片已生成完成');
  51. // }
  52. // }
  53. // $this->info('检查完成');
  54. $time_end = microtime(true);
  55. dLog('generate')->info('脚本执行时间: '.round($time_end-$time_start, 2).'秒');
  56. dLog('generate')->info('====================结束检查动漫对话角色和场景图片生成状态====================');
  57. }
  58. }