change bugs

This commit is contained in:
sylor_huang@126.com 2020-07-15 01:40:09 +08:00
parent ae037203e8
commit d83f3c6f13
1 changed files with 55 additions and 43 deletions

View File

@ -174,9 +174,11 @@ class SyncForgeController < ApplicationController
SyncLog.sync_log("***2. begin_to_syncissues---------------") SyncLog.sync_log("***2. begin_to_syncissues---------------")
begin begin
forge_issue_ids = project&.issues&.select(:id)&.pluck(:id) forge_issue_ids = project&.issues&.select(:id)&.pluck(:id)
sync_projects_params = {}
unless forge_issue_ids.size.to_i < old_issues_params[:count].to_i
forge_journal_ids = Journal.select([:id, :journalized_id, :journalized_type]).where(journalized_id: forge_issue_ids).pluck(:id) forge_journal_ids = Journal.select([:id, :journalized_id, :journalized_type]).where(journalized_id: forge_issue_ids).pluck(:id)
diff_issue_ids = old_issues_params[:ids] - forge_issue_ids diff_issue_ids = old_issues_params[:ids] - forge_issue_ids
sync_projects_params = {}
if diff_issue_ids.size == 0 #issue数量一样判断评论是否有增减 if diff_issue_ids.size == 0 #issue数量一样判断评论是否有增减
diff_journal_ids = old_issues_params[:journals][:ids] - forge_journal_ids diff_journal_ids = old_issues_params[:journals][:ids] - forge_journal_ids
unless diff_journal_ids.size == 0 unless diff_journal_ids.size == 0
@ -195,6 +197,8 @@ class SyncForgeController < ApplicationController
parent_id: project_id parent_id: project_id
} }
end end
end
SyncProjectsJob.perform_later(sync_projects_params, gitea_main) if sync_projects_params.present? SyncProjectsJob.perform_later(sync_projects_params, gitea_main) if sync_projects_params.present?
SyncLog.sync_log("***2. end_to_syncissues---------------") SyncLog.sync_log("***2. end_to_syncissues---------------")
rescue Exception => e rescue Exception => e
@ -205,6 +209,7 @@ class SyncForgeController < ApplicationController
def change_project_watchers(project, watchers,gitea_main) def change_project_watchers(project, watchers,gitea_main)
SyncLog.sync_log("***5. begin_to_sync_watchers---------------") SyncLog.sync_log("***5. begin_to_sync_watchers---------------")
forge_watchers_ids = project&.watchers&.select(:id)&.pluck(:id) forge_watchers_ids = project&.watchers&.select(:id)&.pluck(:id)
unless forge_watchers_ids.size.to_i < watchers[:count].to_i
diff_target_ids = watchers[:ids] - forge_watchers_ids diff_target_ids = watchers[:ids] - forge_watchers_ids
if diff_target_ids.size > 0 if diff_target_ids.size > 0
sync_projects_params = { sync_projects_params = {
@ -214,14 +219,16 @@ class SyncForgeController < ApplicationController
parent_id: project.id parent_id: project.id
} }
SyncProjectsJob.perform_later(sync_projects_params,gitea_main) SyncProjectsJob.perform_later(sync_projects_params,gitea_main)
SyncLog.sync_log("***5. begin_to_sync_watchers---------------")
end end
end end
SyncLog.sync_log("***5. begin_to_sync_watchers---------------")
end
def change_project_versions(project, versions,gitea_main) def change_project_versions(project, versions,gitea_main)
SyncLog.sync_log("***4. begin_to_sync_versions---------------") SyncLog.sync_log("***4. begin_to_sync_versions---------------")
forge_version_ids = project&.versions&.select(:id)&.pluck(:id) forge_version_ids = project&.versions&.select(:id)&.pluck(:id)
unless forge_version_ids.size < versions[:count].to_i
diff_version_ids = versions[:ids] - forge_version_ids diff_version_ids = versions[:ids] - forge_version_ids
if diff_version_ids.size > 0 if diff_version_ids.size > 0
sync_projects_params = { sync_projects_params = {
@ -231,6 +238,8 @@ class SyncForgeController < ApplicationController
parent_id: project.id parent_id: project.id
} }
SyncProjectsJob.perform_later(sync_projects_params,gitea_main) SyncProjectsJob.perform_later(sync_projects_params,gitea_main)
end
SyncLog.sync_log("***4. end_to_sync_versions---------------") SyncLog.sync_log("***4. end_to_sync_versions---------------")
end end
end end
@ -238,6 +247,7 @@ class SyncForgeController < ApplicationController
def change_project_members(project, members,gitea_main) def change_project_members(project, members,gitea_main)
SyncLog.sync_log("***3. begin_to_sync_members---------------") SyncLog.sync_log("***3. begin_to_sync_members---------------")
forge_member_ids = project&.members&.select(:id)&.pluck(:id) forge_member_ids = project&.members&.select(:id)&.pluck(:id)
unless forge_member_ids.size < members[:count]
diff_member_ids = members[:ids] - forge_member_ids diff_member_ids = members[:ids] - forge_member_ids
if diff_member_ids.size > 0 if diff_member_ids.size > 0
sync_projects_params = { sync_projects_params = {
@ -247,6 +257,8 @@ class SyncForgeController < ApplicationController
parent_id: project.id parent_id: project.id
} }
SyncProjectsJob.perform_later(sync_projects_params,gitea_main) SyncProjectsJob.perform_later(sync_projects_params,gitea_main)
end
SyncLog.sync_log("***3. end_to_sync_members---------------") SyncLog.sync_log("***3. end_to_sync_members---------------")
end end
end end