mirror of
https://gitlink.org.cn/Gitlink/forgeplus.git
synced 2026-05-02 19:30:48 +08:00
add: expire issue send message
This commit is contained in:
11
app/jobs/delay_expired_issue_job.rb
Normal file
11
app/jobs/delay_expired_issue_job.rb
Normal file
@@ -0,0 +1,11 @@
|
||||
class DelayExpiredIssueJob < ApplicationJob
|
||||
queue_as :message
|
||||
|
||||
def perform
|
||||
Issue.where(due_date: Date.today + 1.days).find_each do |issue|
|
||||
SendTemplateMessageJob.perform_later('IssueAssignerExpire', issue.id)
|
||||
SendTemplateMessageJob.perform_later('IssueCreatorExpire', issue.id)
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
@@ -1,5 +1,5 @@
|
||||
class SendTemplateMessageJob < ApplicationJob
|
||||
queue_as :default
|
||||
queue_as :message
|
||||
|
||||
def perform(source, *args)
|
||||
Rails.logger.info "SendTemplateMessageJob [args] #{args}"
|
||||
@@ -94,7 +94,7 @@ class SendTemplateMessageJob < ApplicationJob
|
||||
project = Project.find_by_id(project_id)
|
||||
return unless user.present? && project.present?
|
||||
receivers = User.where(id: user.id)
|
||||
receivers_string, content, notification_url = MessageTemplate::ProjectJoined.get_message_content(receivers, project)
|
||||
receivers_string, content, notification_url = MessageTemplate::ProjectLeft.get_message_content(receivers, project)
|
||||
Notice::Write::CreateService.call(receivers_string, content, notification_url, source, {user_id: user.id, project_id: project.id})
|
||||
when 'ProjectRole'
|
||||
user_id, project_id, role = args[0], args[1], args[2]
|
||||
|
||||
Reference in New Issue
Block a user