groupBy('book','para') ->orderBy('book') ->get(); $bar = $this->output->createProgressBar(count($chapters)); foreach ($chapters as $key => $chapter) { # code... $max=0; #章节长度 $paraEnd = PaliText::where('book',$chapter->book) ->where('paragraph',$chapter->para) ->value('chapter_len')+$chapter->para-1; $svg = ""; $svg .= "where('book_id',$chapter->book) ->whereBetween('paragraph',[$chapter->para,$paraEnd]) ->count(); $x=($days-$i)*($img_width/$days); $y=(300-$count)*($img_height/300)-$linewidth; $svg .= "{$x},{$y} "; } $svg .= "' style='fill:none;stroke:green;stroke-width:{$linewidth}' />"; $filename = "cd_{$chapter->book}_{$chapter->para}.svg"; Storage::disk('local')->put("public/images/chapter_dynamic/{$filename}", $svg); $bar->advance(); } $bar->finish(); $this->info('更新缺的章节空白图'); // 更新缺的章节空白图 $chapters = PaliText::select('book','paragraph') ->where('level', '<', 8) ->get(); $bar = $this->output->createProgressBar(count($chapters)); $svg = ""; foreach ($chapters as $key => $chapter) { $filename = "cd_{$chapter->book}_{$chapter->paragraph}.svg"; if(!Storage::disk('local')->exists("public/images/chapter_dynamic/{$filename}")){ Storage::disk('local')->put("public/images/chapter_dynamic/{$filename}", $svg); } $bar->advance(); } $bar->finish(); return 0; } }