diff --git a/lib/NGCP/Schema/Result/v_sound_set_files.pm b/lib/NGCP/Schema/Result/v_sound_set_files.pm new file mode 100644 index 00000000..8cf66cb0 --- /dev/null +++ b/lib/NGCP/Schema/Result/v_sound_set_files.pm @@ -0,0 +1,145 @@ +package NGCP::Schema::Result::v_sound_set_files; + +use strict; +use warnings; + +use Scalar::Util qw(blessed); +use parent 'DBIx::Class::Core'; + +our $VERSION = '2.007'; + +__PACKAGE__->load_components("InflateColumn::DateTime", "Helper::Row::ToJSON"); + +__PACKAGE__->table("provisioning.v_sound_set_files"); + +__PACKAGE__->add_columns( + "set_id", + { + data_type => "integer", + extra => { unsigned => 1 }, + is_foreign_key => 1, + is_nullable => 0, + }, + "reseller_id", + { + data_type => "integer", + extra => { unsigned => 1 }, + is_foreign_key => 1, + is_nullable => 0, + }, + "contract_id", + { + data_type => "integer", + extra => { unsigned => 1 }, + is_nullable => 1, + }, + "name", + { data_type => "varchar", is_nullable => 1, size => 256 }, + "description", + { data_type => "varchar", is_nullable => 1, size => 255 }, + "handle_id", + { + data_type => "integer", + extra => { unsigned => 1 }, + is_nullable => 1, + }, + "handle_name", + { data_type => "varchar", is_nullable => 1, size => 256 }, + "file_id", + { + data_type => "integer", + extra => { unsigned => 1 }, + is_nullable => 1, + }, + "filename", + { data_type => "varchar", is_nullable => 1, size => 256 }, + "loopplay", + { data_type => "tinyint", default_value => 0, is_nullable => 0 }, + "parent_chain", + { data_type => "varchar", is_nullable => 1, size => 256 }, + "data_set_id", + { + data_type => "integer", + extra => { unsigned => 1 }, + is_nullable => 1, + }, + "data", + { data_type => "longblob", is_nullable => 1 }, +); + + +1; +__END__ + +=encoding UTF-8 + +=head1 NAME + +NGCP::Schema::Result::v_sound_set_files + +=head1 DESCRIPTION + +This module is a schema class for the NGCP database view "provisioning.v_sound_set_files". + +=head1 COMPONENTS LOADED + +=over 4 + +=item * L + +=item * L + +=back + +=head1 TABLE: C + +=head1 ACCESSORS + +=head2 set_id + + data_type: 'integer' + is_auto_increment: 1 + is_nullable: 0 + +=head2 name + + data_type: 'varchar' + is_nullable: 1 + size: 256 + +=head2 description + + data_type: 'varchar' + is_nullable: 1 + size: 255 + +=head1 PRIMARY KEY + +=over 4 + +=item * L + +=back + +=head1 RELATIONS + +=head1 AUTHOR + +Sipwise Development Team C<< >> + +=head1 LICENSE + +This software is Copyright © 2017 by Sipwise GmbH, Austria. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this package. If not, see . diff --git a/lib/NGCP/Schema/Result/voip_sound_files.pm b/lib/NGCP/Schema/Result/voip_sound_files.pm index 21a5b34f..0a1fe305 100644 --- a/lib/NGCP/Schema/Result/voip_sound_files.pm +++ b/lib/NGCP/Schema/Result/voip_sound_files.pm @@ -27,6 +27,8 @@ __PACKAGE__->add_columns( { data_type => "tinyint", default_value => 0, is_nullable => 1 }, "codec", { data_type => "varchar", default_value => "", is_nullable => 0, size => 16 }, + "use_parent", + { data_type => "tinyint", default_value => 0, is_nullable => 0 }, ); __PACKAGE__->set_primary_key("id"); diff --git a/lib/NGCP/Schema/Result/voip_sound_sets.pm b/lib/NGCP/Schema/Result/voip_sound_sets.pm index f5fd2560..1c734d89 100644 --- a/lib/NGCP/Schema/Result/voip_sound_sets.pm +++ b/lib/NGCP/Schema/Result/voip_sound_sets.pm @@ -34,6 +34,14 @@ __PACKAGE__->add_columns( { data_type => "varchar", is_nullable => 1, size => 255 }, "contract_default", { data_type => "tinyint", default_value => 0, is_nullable => 0 }, + "parent_id", + { + data_type => "integer", + extra => { unsigned => 1 }, + is_nullable => 1, + }, + "expose_to_customer", + { data_type => "tinyint", default_value => 0, is_nullable => 0 }, ); __PACKAGE__->set_primary_key("id"); @@ -59,6 +67,13 @@ __PACKAGE__->belongs_to( { 'join_type' => 'left', is_deferrable => 1, on_delete => "CASCADE", on_update => "CASCADE" }, ); +__PACKAGE__->belongs_to( + "parent", + "NGCP::Schema::Result::voip_sound_sets", + { 'foreign.id' => 'self.parent_id' }, + { 'join_type' => 'left', is_deferrable => 1, on_delete => "SET NULL", on_update => "SET NULL" }, +); + sub TO_JSON { my ($self) = @_; return {