Skip to content

Commit b745e24

Browse files
authored
Business API - fix for liquidation businesses (#4144)
Signed-off-by: Kial Jinnah <kialj876@gmail.com>
1 parent 5c537c4 commit b745e24

5 files changed

Lines changed: 17 additions & 3 deletions

File tree

legal-api/src/legal_api/models/business.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,6 +198,7 @@ class AssociationTypes(Enum):
198198
"founding_date",
199199
"identifier",
200200
"in_liquidation",
201+
"in_liquidation_date",
201202
"jurisdiction",
202203
"last_agm_date",
203204
"last_ar_date",

legal-api/src/legal_api/services/authz.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -976,7 +976,7 @@ def business_blocker_check(business: Business, is_ignore_draft_blockers: bool =
976976

977977
if business.in_liquidation:
978978
business_blocker_checks[BusinessBlocker.IN_LIQUIDATION] = True
979-
if LegislationDatetime.datenow() >= business.next_lr_min_date:
979+
if business.next_lr_min_date and LegislationDatetime.datenow() >= business.next_lr_min_date:
980980
business_blocker_checks[BusinessBlocker.MIN_LR_DATE_REACHED] = True
981981

982982
if has_notice_of_withdrawal_filing_blocker(business, is_ignore_draft_blockers):

legal-api/tests/unit/services/warnings/business/business_checks/test_in_liquidation.py

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
import copy
1616

1717
import pytest
18+
from psycopg2.tz import FixedOffsetTimezone
1819
from datedelta import datedelta
1920

2021
from legal_api.models import Business
@@ -24,7 +25,7 @@
2425
from tests.unit.models import factory_business
2526

2627
FOUNDING_DATE = datetime(2023, 3, 3)
27-
IN_LIQUIDATION_DATE = datetime(2024, 6, 10)
28+
IN_LIQUIDATION_DATE = datetime(2024, 6, 10, 0, 0, tzinfo=FixedOffsetTimezone(0))
2829

2930
@pytest.mark.parametrize('test_name, founding_date, in_liquidation_date, last_lr_year, expected_meta_data', [
3031
('NOT_IN_LIQUIDATION', datetime.now(), None, None, {}),
@@ -39,6 +40,13 @@
3940
'inLiquidationDate': IN_LIQUIDATION_DATE,
4041
'lastLiquidationReportYear': 2025,
4142
'nextLiquidationReportMinDate': date(2026, 3, 2)}
43+
),
44+
# Should not happen, but need to make sure it still returns for this case
45+
('IN_LIQUIDATION_no_in_liquidation_date', FOUNDING_DATE, None, None,
46+
{
47+
'inLiquidationDate': None,
48+
'lastLiquidationReportYear': None,
49+
'nextLiquidationReportMinDate': None}
4250
)
4351
])
4452
def test_check_business(session, test_name, founding_date, in_liquidation_date, last_lr_year, expected_meta_data):
@@ -50,6 +58,10 @@ def test_check_business(session, test_name, founding_date, in_liquidation_date,
5058
in_liquidation_date=in_liquidation_date,
5159
last_lr_year=last_lr_year)
5260

61+
if test_name != 'NOT_IN_LIQUIDATION':
62+
business.in_liquidation = True
63+
business.save()
64+
5365
result = check_business(business)
5466

5567
if test_name == 'NOT_IN_LIQUIDATION':

python/common/business-registry-model/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "business-model"
3-
version = "3.3.22"
3+
version = "3.3.23"
44
description = ""
55
authors = [
66
{name = "thor",email = "1042854+thorwolpert@users.noreply.github.com"}

python/common/business-registry-model/src/business_model/models/business.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,7 @@ class AssociationTypes(Enum):
222222
'founding_date',
223223
'identifier',
224224
'in_liquidation',
225+
'in_liquidation_date',
225226
'jurisdiction',
226227
'last_agm_date',
227228
'last_ar_date',

0 commit comments

Comments
 (0)