From b80bfd67ad5b90fa9f07df9d0d15cc930c3aaa9f Mon Sep 17 00:00:00 2001 From: Colin Darie Date: Fri, 20 Dec 2024 00:06:06 +0100 Subject: [PATCH] chore(api-geo): cache communes by code postal --- app/services/api_geo_service.rb | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/app/services/api_geo_service.rb b/app/services/api_geo_service.rb index 19931cc19..06e1cb094 100644 --- a/app/services/api_geo_service.rb +++ b/app/services/api_geo_service.rb @@ -81,9 +81,11 @@ class APIGeoService end def communes_by_postal_code(postal_code) - communes_by_postal_code_map.fetch(postal_code, []) - .filter { !_1[:code].in?(['75056', '13055', '69123']) } - .sort_by { I18n.transliterate([_1[:name], _1[:postal_code]].join(' ')) } + Rails.cache.fetch("api_geo_communes_by_pc_#{postal_code}", expires_in: 1.week, version: 3) do + communes_by_postal_code_map.fetch(postal_code, []) + .filter { !_1[:code].in?(['75056', '13055', '69123']) } + .sort_by { I18n.transliterate([_1[:name], _1[:postal_code]].join(' ')) } + end end def commune_name(departement_code, code)