mirror of
https://github.com/kuaifan/dootask.git
synced 2025-12-14 12:42:51 +00:00
perf: 优化签到消息
This commit is contained in:
parent
7464de3adc
commit
277115a30f
@ -5,6 +5,7 @@ namespace App\Models;
|
||||
use App\Module\Base;
|
||||
use App\Module\Doo;
|
||||
use App\Module\Extranet;
|
||||
use App\Tasks\JokeSoupTask;
|
||||
use Cache;
|
||||
use Carbon\Carbon;
|
||||
|
||||
@ -229,8 +230,8 @@ class UserBot extends AbstractModel
|
||||
if ($checkins && $botUser = User::botGetOrCreate('check-in')) {
|
||||
$getJokeSoup = function($type) {
|
||||
$pre = $type == "up" ? "每日开心:" : "心灵鸡汤:";
|
||||
$key = $type == "up" ? "JokeSoupTask:jokes" : "JokeSoupTask:soups";
|
||||
$array = Base::json2array(Cache::get($key));
|
||||
$key = $type == "up" ? "jokes" : "soups";
|
||||
$array = Base::json2array(Cache::get(JokeSoupTask::keyName($key)));
|
||||
if ($array) {
|
||||
$item = $array[array_rand($array)];
|
||||
if ($item) {
|
||||
|
||||
@ -17,7 +17,10 @@ use Carbon\Carbon;
|
||||
*/
|
||||
class JokeSoupTask extends AbstractTask
|
||||
{
|
||||
private $keyPrefix = "JokeSoupTask-v2";
|
||||
public static function keyName($key)
|
||||
{
|
||||
return "JokeSoupTask-v2:{$key}";
|
||||
}
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
@ -27,24 +30,24 @@ class JokeSoupTask extends AbstractTask
|
||||
public function start()
|
||||
{
|
||||
// 判断每分钟执行一次
|
||||
if (Cache::get("{$this->keyPrefix}:YmdHi") == date("YmdHi")) {
|
||||
if (Cache::get(self::keyName("YmdHi")) == date("YmdHi")) {
|
||||
return;
|
||||
}
|
||||
Cache::put("{$this->keyPrefix}:YmdHi", date("YmdHi"), Carbon::now()->addDay());
|
||||
Cache::put(self::keyName("YmdHi"), date("YmdHi"), Carbon::now()->addDay());
|
||||
//
|
||||
$array = Base::json2array(Cache::get("{$this->keyPrefix}:jokes"));
|
||||
$array = Base::json2array(Cache::get(self::keyName("jokes")));
|
||||
$data = Extranet::randJoke();
|
||||
if ($data) {
|
||||
$array[] = $data;
|
||||
}
|
||||
Cache::forever("{$this->keyPrefix}:jokes", Base::array2json(array_slice($array, -200)));
|
||||
Cache::forever(self::keyName("jokes"), Base::array2json(array_slice($array, -200)));
|
||||
//
|
||||
$array = Base::json2array(Cache::get("{$this->keyPrefix}:soups"));
|
||||
$array = Base::json2array(Cache::get(self::keyName("soups")));
|
||||
$data = Extranet::soups();
|
||||
if ($data) {
|
||||
$array[] = $data;
|
||||
}
|
||||
Cache::forever("{$this->keyPrefix}:soups", Base::array2json(array_slice($array, -200)));
|
||||
Cache::forever(self::keyName("soups"), Base::array2json(array_slice($array, -200)));
|
||||
}
|
||||
|
||||
public function end()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user