diff --git a/ecs/jskult-webapp/src/controller/ultmarc.py b/ecs/jskult-webapp/src/controller/ultmarc.py index 5efa8530..8ba036e1 100644 --- a/ecs/jskult-webapp/src/controller/ultmarc.py +++ b/ecs/jskult-webapp/src/controller/ultmarc.py @@ -4,8 +4,8 @@ from fastapi import APIRouter, Depends, Request from src.depends.services import get_service from src.model.internal.session import UserSession -from src.model.request.ultmarc_doctor import ( - UltmarcDoctorInfoModel, UltmarcDoctorSearchModel) +from src.model.request.ultmarc_doctor import (UltmarcDoctorInfoModel, + UltmarcDoctorSearchModel) from src.model.request.ultmarc_inst import (UltmarcInstInfoModel, UltmarcInstSearchModel) from src.router.session_router import AuthenticatedRoute @@ -77,7 +77,8 @@ def search_inst( ultmarc = ultmarc_service.prepare_ultmarc_inst_search_view() ultmarc.is_batch_processing = is_batch_processing ultmarc.inst_data = ultmarc_inst_data - ultmarc.form_data = ultmarc_inst_form + # 画面表示用にエスケープを解除して返す + ultmarc.form_data = ultmarc_inst_form.unescape() # セッション書き換え session.update( diff --git a/ecs/jskult-webapp/src/model/request/ultmarc_inst.py b/ecs/jskult-webapp/src/model/request/ultmarc_inst.py index 7b60bfd9..ba9cce90 100644 --- a/ecs/jskult-webapp/src/model/request/ultmarc_inst.py +++ b/ecs/jskult-webapp/src/model/request/ultmarc_inst.py @@ -1,3 +1,4 @@ +import html from typing import Optional from fastapi import Form @@ -46,6 +47,12 @@ class UltmarcInstSearchModel(BaseModel): pagination_page_number=pagination_page_number ) + def unescape(self): + for k, v in self.dict().items(): + if v is not None and type(v) is str: + setattr(self, k, html.unescape(v)) + return self + class UltmarcInstInfoModel(BaseModel): inst_id: Optional[str]