diff --git a/abonapp/models.py b/abonapp/models.py index 08f4d43..d2b2408 100644 --- a/abonapp/models.py +++ b/abonapp/models.py @@ -209,7 +209,7 @@ class Abon(BaseAccount): return ct.manage_access(self) # make subscriber from agent structure - def build_agent_struct(self): + def build_agent_struct(self, raise_errs=True): abon_addresses = tuple(ip_address(i.ip) for i in self.ip_addresses.filter(is_active=True)) # if not abon_addresses: # return @@ -221,9 +221,10 @@ class Abon(BaseAccount): agent_trf = TariffStruct(trf.id, trf.speedIn, trf.speedOut) if len(abon_addresses) > 0: return AbonStruct(self.pk, abon_addresses, agent_trf, self.is_access()) - raise LogicError(_('Account "%(username)s" not have any active leases') % { - 'username': self.username - }) + if raise_errs: + raise LogicError(_('Account "%(username)s" not have any active leases') % { + 'username': self.username + }) def nas_sync_self(self) -> Optional[Exception]: """ diff --git a/nas_app/nas_managers/core.py b/nas_app/nas_managers/core.py index 777f7f3..962a393 100644 --- a/nas_app/nas_managers/core.py +++ b/nas_app/nas_managers/core.py @@ -112,7 +112,7 @@ class BaseTransmitter(ABC): :param users_from_db: QuerySet of all subscribers that can have service :return: Tuple of 2 lists that contain list to add users and list to remove users """ - users_struct_gen = (ab.build_agent_struct() for ab in users_from_db if ab.is_access()) + users_struct_gen = (ab.build_agent_struct(raise_errs=False) for ab in users_from_db if ab is not None and ab.is_access()) users_struct_set = set(ab for ab in users_struct_gen if ab is not None and ab.tariff is not None) users_from_nas = set(self.read_users()) if len(users_from_nas) < 1: @@ -127,9 +127,9 @@ class BaseTransmitter(ABC): print('List for del:', len(list_for_del)) for ld in list_for_del: print('\t', ld) - self.remove_user_range(list_for_del) + #self.remove_user_range(list_for_del) if len(list_for_add) > 0: print('List for add:', len(list_for_add)) for la in list_for_add: print('\t', la) - self.add_user_range(list_for_add) + #self.add_user_range(list_for_add)