diff --git a/lawrisk_v2_service.py b/lawrisk_v2_service.py index 2db128c..a4a26fd 100644 --- a/lawrisk_v2_service.py +++ b/lawrisk_v2_service.py @@ -114,16 +114,13 @@ def search_v2(query: str, return_debug: bool = False) -> Dict[str, Any]: continue region_id, theme_id = option_id.split(":", 1) payload = load_theme_payload(region_id, theme_id) - prompt_text = _compose_prompt(payload) results.append( { "id": option_id, "display_name": item["display_name"], "region": payload["region"], "theme": payload["theme"], - "business_scopes": payload["business_scopes"], "permits": payload["permits"], - "prompt_snippet": prompt_text, } ) diff --git a/licensing_repo.py b/licensing_repo.py index ff2a6d5..18a031d 100644 --- a/licensing_repo.py +++ b/licensing_repo.py @@ -114,13 +114,20 @@ def load_permits_and_risks(region_id: str, theme_id: str) -> List[Dict[str, obje rk.risk_content, rk.legal_basis, rk.document_no, - rk.summary + rk.summary, + rpd.permit_status, + rpd.subitem_summary, + rpd.responsible_contact, + rpd.jurisdiction_scope FROM region_theme_permits rtp JOIN permits p ON p.id = rtp.permit_id LEFT JOIN region_permit_risks rpr ON rpr.region_id = rtp.region_id AND rpr.permit_id = rtp.permit_id LEFT JOIN risks rk ON rk.id = rpr.risk_id + LEFT JOIN region_permit_details rpd + ON rpd.region_id = rtp.region_id + AND rpd.permit_id = rtp.permit_id WHERE rtp.region_id = %s AND rtp.theme_id = %s ORDER BY p.name, rk.risk_content """ @@ -129,7 +136,19 @@ def load_permits_and_risks(region_id: str, theme_id: str) -> List[Dict[str, obje cur = conn.cursor() cur.execute(sql, (region_id, theme_id)) for row in cur.fetchall(): - permit_id, permit_name, risk_id, risk_content, legal_basis, document_no, summary = row + ( + permit_id, + permit_name, + risk_id, + risk_content, + legal_basis, + document_no, + summary, + permit_status, + subitem_summary, + responsible_contact, + jurisdiction_scope, + ) = row pid = str(permit_id) entry = permits.setdefault( pid, @@ -138,8 +157,20 @@ def load_permits_and_risks(region_id: str, theme_id: str) -> List[Dict[str, obje "name": str(permit_name), "business_scopes": [], "risks": [], + "permit_status": None, + "subitem_summary": None, + "responsible_contact": None, + "jurisdiction_scope": None, }, ) + if entry["permit_status"] is None and permit_status: + entry["permit_status"] = permit_status.strip() or None + if entry["subitem_summary"] is None and subitem_summary: + entry["subitem_summary"] = subitem_summary.strip() or None + if entry["responsible_contact"] is None and responsible_contact: + entry["responsible_contact"] = responsible_contact.strip() or None + if entry["jurisdiction_scope"] is None and jurisdiction_scope: + entry["jurisdiction_scope"] = jurisdiction_scope.strip() or None if risk_id is not None: entry["risks"].append( {