fix: destroy decrement forked count
This commit is contained in:
parent
f9d4316a8e
commit
1a9ed1425e
|
@ -131,7 +131,7 @@ class Project < ApplicationRecord
|
||||||
after_create :incre_user_statistic, :incre_platform_statistic
|
after_create :incre_user_statistic, :incre_platform_statistic
|
||||||
after_save :check_project_members, :reset_cache_data
|
after_save :check_project_members, :reset_cache_data
|
||||||
before_save :set_invite_code, :reset_unmember_followed, :set_recommend_and_is_pinned
|
before_save :set_invite_code, :reset_unmember_followed, :set_recommend_and_is_pinned
|
||||||
before_destroy :decre_project_common
|
before_destroy :decre_project_common, :decre_forked_from_project_count
|
||||||
after_destroy :decre_user_statistic, :decre_platform_statistic
|
after_destroy :decre_user_statistic, :decre_platform_statistic
|
||||||
scope :project_statics_select, -> {select(:id,:name, :is_public, :identifier, :status, :project_type, :user_id, :forked_count, :description, :visits, :project_category_id, :project_language_id, :license_id, :ignore_id, :watchers_count, :created_on)}
|
scope :project_statics_select, -> {select(:id,:name, :is_public, :identifier, :status, :project_type, :user_id, :forked_count, :description, :visits, :project_category_id, :project_language_id, :license_id, :ignore_id, :watchers_count, :created_on)}
|
||||||
scope :no_anomory_projects, -> {where("projects.user_id is not null and projects.user_id != ?", 2)}
|
scope :no_anomory_projects, -> {where("projects.user_id is not null and projects.user_id != ?", 2)}
|
||||||
|
@ -173,6 +173,14 @@ class Project < ApplicationRecord
|
||||||
CacheAsyncClearJob.perform_later('project_common_service', self.id)
|
CacheAsyncClearJob.perform_later('project_common_service', self.id)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def decre_forked_from_project_count
|
||||||
|
forked_project = self.forked_from_project
|
||||||
|
if forked_project.present?
|
||||||
|
forked_project.decrement(:forked_count, 1)
|
||||||
|
forked_project.save
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
def incre_user_statistic
|
def incre_user_statistic
|
||||||
CacheAsyncSetJob.perform_later("user_statistic_service", {project_count: 1, project_language_count_key: self.project_language&.name, project_language_count: 1}, self.user_id)
|
CacheAsyncSetJob.perform_later("user_statistic_service", {project_count: 1, project_language_count_key: self.project_language&.name, project_language_count: 1}, self.user_id)
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue