From 240606e7b0c01cfd398c6a8543ce16ea766cc15c Mon Sep 17 00:00:00 2001 From: daiao <358551898@qq.com> Date: Wed, 11 Dec 2019 09:58:34 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=93=E5=8D=B0=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/shixuns_controller.rb | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/app/controllers/shixuns_controller.rb b/app/controllers/shixuns_controller.rb index ae7f50e1c..a3fa5261a 100644 --- a/app/controllers/shixuns_controller.rb +++ b/app/controllers/shixuns_controller.rb @@ -374,15 +374,21 @@ class ShixunsController < ApplicationController def update # 镜像方面 - mirror_ids = MirrorRepository.where(id: params[:main_type]).or( MirrorRepository.where(id: params[:small_type])).pluck(:id) + mirror_ids = MirrorRepository.where(id: params[:main_type]) + .or( MirrorRepository.where(id: params[:small_type])).pluck(:id).uniq old_mirror_ids = @shixun.shixun_mirror_repositories .where(mirror_repository_id: params[:main_type]) - .or(@shixun.shixun_mirror_repositories.where(mirror_repository_id: params[:small_type])).pluck(:mirror_repository_id) + .or(@shixun.shixun_mirror_repositories.where(mirror_repository_id: params[:small_type])) + .pluck(:mirror_repository_id).uniq new_mirror_id = (mirror_ids - old_mirror_ids).map{|id| {mirror_repository_id: id}} # 转换成数组hash方便操作 + logger.info("##########new_mirror_id: #{new_mirror_id}") + logger.info("##########new_mirror_id: #{old_mirror_ids}") + logger.info("##########mirror_ids: #{mirror_ids}") # 服务配置方面 service_params = service_config_params[:shixun_service_configs] .select{|config| !old_mirror_ids.include?(config[:mirror_repository_id]) && MirrorRepository.find(config[:mirror_repository_id]).name.present?} + logger.info("#########service_params: #{service_params}") begin ActiveRecord::Base.transaction do @shixun.update_attributes(shixun_params)