diff --git a/app/controllers/frames_controller.rb b/app/controllers/frames_controller.rb index b2319ed93..4af083e45 100644 --- a/app/controllers/frames_controller.rb +++ b/app/controllers/frames_controller.rb @@ -121,7 +121,7 @@ def frame_params end def set_frame - @frame = Frame.all.includes(servers: [modele: [:category, :composants], + @frame = Frame.all.includes(servers: [modele: [:category, :components], cards: [:composant, ports: [connection: [cable: :connections]], card_type: [:port_type],]], diff --git a/app/controllers/modeles_controller.rb b/app/controllers/modeles_controller.rb index ccc9880f8..c50c35217 100644 --- a/app/controllers/modeles_controller.rb +++ b/app/controllers/modeles_controller.rb @@ -17,11 +17,11 @@ def show def new @modele = Modele.new - @modele.composants.build(:name => 'ALIM', type_composant_id: 4) - @modele.composants.build(:name => 'IPMI', type_composant_id: 4) - @modele.composants.build(:name => 'CM', type_composant_id: 4) + @modele.components.build(:name => 'ALIM', type_composant_id: 4) + @modele.components.build(:name => 'IPMI', type_composant_id: 4) + @modele.components.build(:name => 'CM', type_composant_id: 4) 7.times do |i| - @modele.composants.build(:name => "SL#{i + 1}", type_composant_id: 4) + @modele.components.build(:name => "SL#{i + 1}", type_composant_id: 4) end end @@ -84,7 +84,7 @@ def modele_params network_types: [], enclosures_attributes: [ :id, :modele_id, :_destroy, :position, :display, :grid_areas, - composants_attributes: [:type_composant_id, :enclosure_id, :name, :position, :_destroy, :id], + components_attributes: [:type_composant_id, :enclosure_id, :name, :position, :_destroy, :id], ] ) end diff --git a/app/models/card.rb b/app/models/card.rb index d47dffb6f..907c625ea 100644 --- a/app/models/card.rb +++ b/app/models/card.rb @@ -17,7 +17,7 @@ class Card < ApplicationRecord delegate :is_power_input?, to: :card_type, allow_nil: true belongs_to :server - belongs_to :composant + belongs_to :composant, class_name: "EnclosureComponent" delegate :frame, to: :server # TODO: replace by has_one? has_many :ports diff --git a/app/models/enclosure.rb b/app/models/enclosure.rb index a1a055713..7acef8b90 100644 --- a/app/models/enclosure.rb +++ b/app/models/enclosure.rb @@ -5,9 +5,9 @@ class Enclosure < ApplicationRecord acts_as_list scope: [:modele_id] belongs_to :modele - has_many :composants, -> { order(position: :asc) } + has_many :components, -> { order(position: :asc) }, class_name: "EnclosureComponent" - accepts_nested_attributes_for :composants, + accepts_nested_attributes_for :components, :allow_destroy => true, :reject_if => :all_blank end diff --git a/app/models/composant.rb b/app/models/enclosure_component.rb similarity index 83% rename from app/models/composant.rb rename to app/models/enclosure_component.rb index 0d5a72499..7b550ea08 100644 --- a/app/models/composant.rb +++ b/app/models/enclosure_component.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -class Composant < ApplicationRecord +class EnclosureComponent < ApplicationRecord include PublicActivity::Model tracked owner: ->(controller, model) { controller && controller.current_user } tracked :parameters => { @@ -15,7 +15,7 @@ class Composant < ApplicationRecord has_many :cards - scope :slots, -> { where(type_composant: TypeComposant.find_by_name('SLOT')).order("composants.position ASC") } + scope :slots, -> { where(type_composant: TypeComposant.find_by_name('SLOT')).order("enclosure_components.position ASC") } def to_s name.to_s diff --git a/app/models/frame.rb b/app/models/frame.rb index 0e72eb018..8f29161c1 100644 --- a/app/models/frame.rb +++ b/app/models/frame.rb @@ -138,7 +138,7 @@ def init_pdus side: Pdu.calculated_side(frame, line_name), color: line_name == 'A' ? 'J' : 'B') puts "ERROR: #{pdu}" unless pdu.valid? - enclosure.composants.each do |composant| + enclosure.components.each do |composant| card = Card.find_or_create_by(card_type: card_type, server: pdu, composant: composant) diff --git a/app/models/modele.rb b/app/models/modele.rb index 3f406016a..ba63e01e5 100644 --- a/app/models/modele.rb +++ b/app/models/modele.rb @@ -16,7 +16,7 @@ class Modele < ApplicationRecord has_many :servers, dependent: :restrict_with_error has_many :enclosures, dependent: :restrict_with_error - has_many :composants, through: :enclosures + has_many :components, through: :enclosures belongs_to :manufacturer, counter_cache: true belongs_to :architecture, counter_cache: true diff --git a/app/models/type_composant.rb b/app/models/type_composant.rb index bd99aa041..599b65c48 100644 --- a/app/models/type_composant.rb +++ b/app/models/type_composant.rb @@ -5,5 +5,5 @@ class TypeComposant < ApplicationRecord tracked owner: ->(controller, model) { controller && controller.current_user } has_changelog - has_many :composants + has_many :components, class_name: "EnclosureComponent" end diff --git a/app/queries/frames/including_servers_query.rb b/app/queries/frames/including_servers_query.rb index fe007a41b..33bbe66ba 100644 --- a/app/queries/frames/including_servers_query.rb +++ b/app/queries/frames/including_servers_query.rb @@ -7,7 +7,7 @@ def self.call(relation = Frame.all, order = nil) bay: [:frames], servers: [ :frame, :gestion, :cluster, - modele: [:category, :composants], + modele: [:category, :components], cards: [ :composant, ports: [:cable, connection: :cable], diff --git a/app/views/islets/_network_capacity.html.erb b/app/views/islets/_network_capacity.html.erb index ab8fdfb93..a57dc8a15 100644 --- a/app/views/islets/_network_capacity.html.erb +++ b/app/views/islets/_network_capacity.html.erb @@ -12,7 +12,7 @@ grid-row: <%= "#{bay.lane.to_i}/#{bay.lane.to_i+1}" %>;"> <% frames.each_with_index do |frame, index| %> <% # TODO: move in the action or a model method %> - <% servers = frame.servers.includes(:bay, :stack, modele: { enclosures: :composants }, + <% servers = frame.servers.includes(:bay, :stack, modele: { enclosures: :components }, cards: [{ card_type: :port_type }, { ports: :cable }]) .where("servers.network_types @> ?", "{#{network}}") # Switch LAN %> @@ -40,7 +40,7 @@ <% if server.modele.present? %> <% server.modele.enclosures.each do |enclosure| %> <% cards = server.cards %> - <% components_per_enclosure = enclosure.composants.reject { |c| c.name&.downcase == "alim" } %> + <% components_per_enclosure = enclosure.components.reject { |c| c.name&.downcase == "alim" } %> <% if enclosure.display != 'horizontal' %>
| <%= ports_by_card(port_type: PortType.find_by_name('RJ'), - port_quantity: server.modele.composants.where(type_composant_id: 3).count, + port_quantity: server.modele.components.where(type_composant_id: 3).count, ports_data: Port.where(card: server.cards.joins(composant: :type_composant).where('type_composants.name = ?', 'CM')) )%> |