TT#173700 /api/topuplogs expand related fixups

* Role::API::Contracts add item_by_id() that calls contract_by_id()
* Utils::ProfilePackages::catchup_contract_balances return if
  $contract object is undef
* Form::Topup::Log::contract_id expands into Role::API::Customers
  instead of Role::API::Contracts

Change-Id: Id4fc67b8ea1e91f350d0172aafc2b722f34e61f3
mr11.0
Kirill Solomko 3 years ago
parent ad6a05e391
commit 68af361060

@ -56,6 +56,12 @@ has_field 'contract_id' => (
type => 'PosInteger',
label => 'The subscriber\'s customer contract.',
required => 0,
element_attr => {
expand => {
class => 'NGCP::Panel::Role::API::Customers',
allowed_roles => [qw(admin reseller)],
},
},
);
has_field 'amount' => (

@ -1361,6 +1361,7 @@ sub expand_field {
my $form = $class->get_form($c) // return;
my $item = $class->item_by_id($c, $id) // return;
my $item_res = $class->resource_from_item($c, $item, $form);
my $data = $class->post_process_hal_resource($c, $item, $item_res, $form);

@ -118,6 +118,8 @@ sub contract_by_id {
return $item_rs->find($id);
}
sub item_by_id { shift->contract_by_id(@_) }
sub update_contract {
my ($self, $c, $contract, $old_resource, $resource, $form, $now) = @_;

@ -216,6 +216,8 @@ sub catchup_contract_balances {
my %params = @_;
my($c,$contract,$old_package,$now,$suppress_underrun,$is_create_next,$last_notopup_discard_intervals,$last_carry_over_mode,$topup_amount,$profiles_added) = @params{qw/c contract old_package now suppress_underrun is_create_next last_notopup_discard_intervals last_carry_over_mode topup_amount profiles_added/};
return unless $contract;
my $schema = $c->model('DB');
$contract = NGCP::Panel::Utils::Contract::acquire_contract_rowlocks(schema => $schema, contract_id => $contract->id);
$now //= NGCP::Panel::Utils::DateTime::set_local_tz($contract->modify_timestamp);

Loading…
Cancel
Save