MT#60238 /api/customerpreferences allow subscriberadmin

* subscriberadmin roles can now handle customer preferences
  belonging to the same customer and only those with
  expose_to_customer = '1'

Change-Id: Iae9ab5d4a96a065b1a627d180dd523e805d954f3
mr13.0
Kirill Solomko 11 months ago
parent f81481ea66
commit 9a2d66a00a

@ -9,7 +9,7 @@ sub allowed_methods{
use parent qw/NGCP::Panel::Role::Entities NGCP::Panel::Role::API::Preferences/;
__PACKAGE__->set_config({
allowed_roles => [qw/admin reseller ccareadmin ccare/],
allowed_roles => [qw/admin reseller ccareadmin ccare subscriberadmin/],
});
sub item_name{

@ -8,8 +8,8 @@ use parent qw/NGCP::Panel::Role::EntitiesItem NGCP::Panel::Role::API::Preference
__PACKAGE__->set_config({
PATCH => { ops => [qw/add replace remove copy/] },
allowed_roles => {
Default => [qw/admin reseller ccareadmin ccare/],
Journal => [qw/admin reseller ccareadmin ccare/],
Default => [qw/admin reseller ccareadmin ccare subscriberadmin/],
Journal => [qw/admin reseller ccareadmin ccare subscriberadmin/],
}
});

@ -199,6 +199,11 @@ sub _item_rs {
}, {
join => 'contact',
});
} elsif ($c->user->roles eq 'subscriberadmin') {
$item_rs = $c->model('DB')->resultset('contracts')->search({
'me.id' => $c->user->account_id,
'me.status' => { '!=' => 'terminated' },
});
}
}
return $item_rs;

Loading…
Cancel
Save