From dae37155948937d65a00b47c6ff1558a2085835a Mon Sep 17 00:00:00 2001 From: yystopf Date: Fri, 10 Mar 2023 14:48:37 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/services/api/v1/issues/create_service.rb | 2 +- app/services/api/v1/issues/update_service.rb | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/app/services/api/v1/issues/create_service.rb b/app/services/api/v1/issues/create_service.rb index 91007fbea..821ad2787 100644 --- a/app/services/api/v1/issues/create_service.rb +++ b/app/services/api/v1/issues/create_service.rb @@ -63,7 +63,7 @@ class Api::V1::Issues::CreateService < ApplicationService if Site.has_blockchain? && @project.use_blockchain if @created_issue.blockchain_token_num.present? && @created_issue.blockchain_token_num > 0 - Blockchain::CreateIssue.call({user_id: @created_issue.author_id, project_id: @created_issue.project_id, token_num: @created_issue.blockchain_token_num}) + Blockchain::CreateIssue.call({user_id: current_user.id, project_id: @created_issue.project_id, token_num: @created_issue.blockchain_token_num}) end push_activity_2_blockchain("issue_create", @created_issue) diff --git a/app/services/api/v1/issues/update_service.rb b/app/services/api/v1/issues/update_service.rb index 04db49177..2a377d4fb 100644 --- a/app/services/api/v1/issues/update_service.rb +++ b/app/services/api/v1/issues/update_service.rb @@ -90,6 +90,9 @@ class Api::V1::Issues::UpdateService < ApplicationService private def issue_load_attributes + if current_user.id == @updated_issue.author_id && !PullAttachedIssue.exists?(issue_id: @updated_issue, fixed: true) + @updated_issue.blockchain_token_num = blockchain_token_num unless blockchain_token_num.nil? + end @updated_issue.status_id = status_id if status_id.present? @updated_issue.priority_id = priority_id if priority_id.present? @updated_issue.fixed_version_id = milestone_id unless milestone_id.nil? @@ -98,7 +101,6 @@ class Api::V1::Issues::UpdateService < ApplicationService @updated_issue.due_date = due_date unless due_date.nil? @updated_issue.subject = subject if subject.present? @updated_issue.description = description unless description.nil? - @updated_issue.blockchain_token_num = blockchain_token_num unless blockchain_token_num.nil? end def build_assigner_participants @@ -137,8 +139,8 @@ class Api::V1::Issues::UpdateService < ApplicationService def build_cirle_blockchain_token if @updated_issue.previous_changes["blockchain_token_num"].present? - unlock_balance_on_blockchain(@updated_issue.project&.user_id.to_s, @updated_issue.project_id.to_s, @updated_issue.previous_changes["blockchain_token_num"][0].to_i) if @updated_issue.previous_changes["blockchain_token_num"][0].present? - lock_balance_on_blockchain(@updated_issue.project&.user_id.to_s, @updated_issue.project_id.to_s, @updated_issue.previous_changes["blockchain_token_num"][1].to_i) if @updated_issue.previous_changes["blockchain_token_num"][1].present? + unlock_balance_on_blockchain(@updated_issue&.author_id.to_s, @updated_issue.project_id.to_s, @updated_issue.previous_changes["blockchain_token_num"][0].to_i) if @updated_issue.previous_changes["blockchain_token_num"][0].present? + lock_balance_on_blockchain(@updated_issue&.author_id.to_s, @updated_issue.project_id.to_s, @updated_issue.previous_changes["blockchain_token_num"][1].to_i) if @updated_issue.previous_changes["blockchain_token_num"][1].present? end end