大更新,1投稿系统参考文献的类型增加功能,,,2官网数据库功能

This commit is contained in:
wangjinlei
2026-07-08 11:15:44 +08:00
parent 186126a726
commit 05af67bc1a
22 changed files with 1634 additions and 81 deletions

View File

@@ -0,0 +1,37 @@
<?php
namespace app\api\job;
use think\queue\Job;
use app\master\service\DbPushManager;
/**
* 数据库收录推送 - 异步队列任务
* 队列名dbpush
*/
class dbpush
{
public function handle(Job $job, $data)
{
$manager = new DbPushManager();
$ok = $manager->executeAndLog(
$data['log_id'],
$data['stage_id'],
$data['pusher'],
isset($data['options']) ? $data['options'] : []
);
if ($ok) {
$job->delete();
return;
}
// 失败重试
$max = (int) config('dbpush.max_attempt');
if ($job->attempts() >= $max) {
$job->delete();
} else {
$job->release(30); // 30 秒后重试
}
}
}

View File

@@ -8,11 +8,12 @@ class mysftp {
public function push(Job $job, $data){
$job->delete();
//链接sftp服务器
$config['host'] = 'ftp.portico.org';
$config['port'] = 22;
$config['username'] = "TMR";
$config['password'] = "h6EHD8";
//链接sftp服务器(凭证走 dbpush 配置,历史值兜底)
$cred = config('dbpush.credentials.portico');
$config['host'] = isset($cred['host']) ? $cred['host'] : 'ftp.portico.org';
$config['port'] = isset($cred['port']) ? $cred['port'] : 22;
$config['username'] = isset($cred['user']) ? $cred['user'] : "TMR";
$config['password'] = isset($cred['pass']) ? $cred['pass'] : "h6EHD8";
$sftp_obj = new Sftp($config);
$sftp_obj->upftp($data['local'],$data['remote']);
}