Skip to content

Commit

Permalink
fix: Hl 1556 csv report (#3544)
Browse files Browse the repository at this point in the history
* fix: powerbi csv data for the compact csv report

* fix: remove duplicate column

* fix: csv dates to Y-m-d format

* fix: exception test ahjo statuses
  • Loading branch information
rikuke authored Nov 18, 2024
1 parent cb09842 commit d3caae5
Show file tree
Hide file tree
Showing 5 changed files with 23 additions and 19 deletions.
2 changes: 1 addition & 1 deletion backend/benefit/applications/api/v1/application_views.py
Original file line number Diff line number Diff line change
Expand Up @@ -781,7 +781,7 @@ def export_csv(self, request) -> StreamingHttpResponse:
request.query_params.get("compact_list", "false").lower() == "true"
)

return self._csv_response(filtered_queryset, compact_list)
return self._csv_response(queryset=filtered_queryset, compact_list=compact_list)

APPLICATION_ORDERING = "application_number"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ def get_export_notes(application):

def format_datetime(value):
if value:
return value.isoformat()
return value.strftime("%Y-%m-%d")
else:
return ""

Expand Down Expand Up @@ -113,7 +113,6 @@ def CSV_COLUMNS(self) -> List[CsvColumn]:
CsvColumn(
"Hakemuksen tyyppi", "application_origin", get_application_origin_label
),
CsvColumn("Hakemus saapunut", "created_at", format_datetime),
csv_default_column(
"Koonnin status", "batch.status", get_batch_status_label
),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,10 @@ class ApplicationsPowerBiCsvService(ApplicationsCsvService):
def get_completed_in_talpa_date(
self, application: Application
) -> Union[datetime, None]:
if application.batch.status == ApplicationBatchStatus.COMPLETED:
if (
application.batch
and application.batch.status == ApplicationBatchStatus.COMPLETED
):
return application.batch.modified_at.strftime("%d.%m.%Y")
return None

Expand Down
10 changes: 5 additions & 5 deletions backend/benefit/applications/tests/test_ahjo_requests.py
Original file line number Diff line number Diff line change
Expand Up @@ -231,31 +231,31 @@ def test_ahjo_application_requests(
AhjoOpenCaseRequest,
AhjoRequestType.OPEN_CASE,
"POST",
AhjoStatusEnum.SUBMITTED_BUT_NOT_SENT_TO_AHJO,
AhjoStatusEnum.REQUEST_TO_OPEN_CASE_SENT,
),
(
AhjoDecisionProposalRequest,
AhjoRequestType.SEND_DECISION_PROPOSAL,
"POST",
AhjoStatusEnum.CASE_OPENED,
AhjoStatusEnum.DECISION_PROPOSAL_SENT,
),
(
AhjoUpdateRecordsRequest,
AhjoRequestType.UPDATE_APPLICATION,
"PUT",
AhjoStatusEnum.DECISION_PROPOSAL_SENT,
AhjoStatusEnum.UPDATE_REQUEST_SENT,
),
(
AhjoDeleteCaseRequest,
AhjoRequestType.DELETE_APPLICATION,
"DELETE",
AhjoStatusEnum.CASE_OPENED,
AhjoStatusEnum.DELETE_REQUEST_SENT,
),
(
AhjoAddRecordsRequest,
AhjoRequestType.ADD_RECORDS,
"POST",
AhjoStatusEnum.CASE_OPENED,
AhjoStatusEnum.NEW_RECORDS_REQUEST_SENT,
),
(
AhjoSubscribeDecisionRequest,
Expand Down
22 changes: 12 additions & 10 deletions backend/benefit/applications/tests/test_applications_report.py
Original file line number Diff line number Diff line change
Expand Up @@ -687,23 +687,25 @@ def test_applications_csv_output(applications_csv_service): # noqa: C901
elif "Siirrettävä Ahjo-rivi / alkupäivä" in col.heading:
assert (
csv_lines[1][idx]
== f'"{application1.calculation.ahjo_rows[0].start_date.isoformat()}"'
== f'"{application1.calculation.ahjo_rows[0].start_date.strftime("%Y-%m-%d")}"'
)
assert (
csv_lines[2][idx]
== f'"{application2.calculation.ahjo_rows[0].start_date.isoformat()}"'
== f'"{application2.calculation.ahjo_rows[0].start_date.strftime("%Y-%m-%d")}"'
)
elif "Siirrettävä Ahjo-rivi / päättymispäivä" in col.heading:
assert (
csv_lines[1][idx]
== f'"{application1.calculation.ahjo_rows[0].end_date.isoformat()}"'
== f'"{application1.calculation.ahjo_rows[0].end_date.strftime("%Y-%m-%d")}"'
)
assert (
csv_lines[2][idx]
== f'"{application2.calculation.ahjo_rows[0].end_date.isoformat()}"'
== f'"{application2.calculation.ahjo_rows[0].end_date.strftime("%Y-%m-%d")}"'
)
elif "Käsittelypäivä" in col.heading:
assert csv_lines[1][idx] == f'"{application1.handled_at.isoformat()}"'
assert (
csv_lines[1][idx] == f'"{application1.handled_at.strftime("%Y-%m-%d")}"'
)
elif "Siirrettävä Ahjo-rivi / määrä eur kk" in col.heading:
assert (
Decimal(csv_lines[1][idx])
Expand All @@ -716,11 +718,11 @@ def test_applications_csv_output(applications_csv_service): # noqa: C901
elif "Palkkatuki 1 / alkupäivä" in col.heading:
assert (
csv_lines[1][idx]
== f'"{application1.pay_subsidies.all()[0].start_date.isoformat()}"'
== f'"{application1.pay_subsidies.all()[0].start_date.strftime("%Y-%m-%d")}"'
)
assert (
csv_lines[2][idx]
== f'"{application2.pay_subsidies.all()[0].start_date.isoformat()}"'
== f'"{application2.pay_subsidies.all()[0].start_date.strftime("%Y-%m-%d")}"'
)
elif "De minimis 1 / myöntäjä" in col.heading:
assert (
Expand All @@ -734,11 +736,11 @@ def test_applications_csv_output(applications_csv_service): # noqa: C901
elif "De minimis 2 / myönnetty" in col.heading:
assert (
csv_lines[1][idx]
== f'"{application1.de_minimis_aid_set.all()[1].granted_at.isoformat()}"'
== f'"{application1.de_minimis_aid_set.all()[1].granted_at.strftime("%Y-%m-%d")}"'
)
assert (
csv_lines[2][idx]
== f'"{application2.de_minimis_aid_set.all()[1].granted_at.isoformat()}"'
== f'"{application2.de_minimis_aid_set.all()[1].granted_at.strftime("%Y-%m-%d")}"'
)
elif "Laskelman lopputulos" in col.heading:
assert (
Expand Down Expand Up @@ -947,7 +949,7 @@ def test_applications_csv_non_ascii_characters(
csv_lines = split_lines_at_semicolon(
applications_csv_service_with_one_application.get_csv_string()
)
assert csv_lines[1][13] == '"test äöÄÖtest"' # string is quoted
assert csv_lines[1][12] == '"test äöÄÖtest"' # string is quoted


def test_applications_csv_delimiter(applications_csv_service_with_one_application):
Expand Down

0 comments on commit d3caae5

Please sign in to comment.