update pr model and webhook

This commit is contained in:
chenjing 2023-04-07 09:50:35 +08:00 committed by yystopf
parent cd489d3b97
commit 39c2166c12
2 changed files with 24 additions and 5 deletions

View File

@ -60,8 +60,8 @@ class TouchWebhookJob < ApplicationJob
end
when 'PullRequestComment'
pull_id, sender_id, comment_id = args[0], args[1], args[2]
pull = PullRequest.find_by_id pull_id
issue_id, sender_id, comment_id = args[0], args[1], args[2]
pull = Issue.find_by_id(issue_id).try(:pull_request)
comment = pull.issue.comment_journals.find_by_id comment_id
sender = User.find_by_id sender_id
return if pull.nil? || sender.nil? || comment.nil?

View File

@ -119,16 +119,35 @@ class PullRequest < ApplicationRecord
end
def to_builder
Jbuilder.new do |pull|
Jbuilder.new do |pull|
pull.(self, :id, :gitea_number, :title, :body, :base, :head, :is_original, :comments_count)
pull.created_at self.created_at.strftime("%Y-%m-%d %H:%M")
pull.updated_at self.updated_at.strftime("%Y-%m-%d %H:%M")
pull.user self.user.to_builder
if self.fork_project.present?
pull.fork_project self.fork_project.to_builder
else
pull.fork_project nil
end
pull.created_at self.created_at.strftime("%Y-%m-%d %H:%M")
pull.updated_at self.updated_at.strftime("%Y-%m-%d %H:%M")
pull.status self.pr_status
pull.url self.pr_url
end
end
def pr_url
return nil if self.project.nil?
"#{Rails.application.config_for(:configuration)['platform_url']}/#{self.project.owner.login}/#{self.project.name}/pulls/#{self.id}"
end
def pr_status
case status
when 0
"OPEN"
when 1
"MERGED"
when 2
"CLOSED"
end
end
end