Add Gitea sync service with full and incremental modes, paged API fetch, upsert logic for users/repos/commits/PRs, and error aggregation. Add migration for git_users, git_repositories, git_commits, git_pull_requests with indexes and unique constraints; add models and sync scripts for full/incremental jobs. Update Gitea UI and dashboard filters (user/repo/date), aggregate commit loading across repositories, and wire routes/controllers/sidebar for dashboard and sync endpoints.
35 lines
716 B
PHP
35 lines
716 B
PHP
<?php namespace App\Models;
|
|
|
|
use CodeIgniter\Model;
|
|
|
|
class GitPullRequestsModel extends Model
|
|
{
|
|
protected $table = 'git_pull_requests';
|
|
protected $primaryKey = 'id';
|
|
protected $useAutoIncrement = true;
|
|
protected $returnType = 'array';
|
|
protected $useSoftDeletes = false;
|
|
protected $protectFields = true;
|
|
protected $allowedFields = [
|
|
'gitea_pr_id',
|
|
'repository_id',
|
|
'author_user_id',
|
|
'number',
|
|
'title',
|
|
'body',
|
|
'state',
|
|
'is_draft',
|
|
'is_merged',
|
|
'merged_at',
|
|
'closed_at',
|
|
'created_at_gitea',
|
|
'updated_at_gitea',
|
|
'html_url',
|
|
];
|
|
|
|
protected $useTimestamps = true;
|
|
protected $dateFormat = 'datetime';
|
|
protected $createdField = 'created_at';
|
|
protected $updatedField = 'updated_at';
|
|
}
|