UX: Deep-links на сервисы НСПД из Site Finder (Open on ПКК, верификация) #97

Closed
opened 2026-05-12 05:57:12 +00:00 by lekss361 · 1 comment
lekss361 commented 2026-05-12 05:57:12 +00:00 (Migrated from github.com)

Эшелон: UX / Trust building

Контекст

НСПД — официальный портал Росреестра / Роскадастра. Аудит показал что они имеют 22 сервиса (urban-analyze, construction-nspd, market-analysis, integrated-development-territories и др.), но все за ЕСИА-авторизацией. Это сильный аргумент trust:

  • Наш Site Finder — без ЕСИА (быстро, удобно)
  • Деплеломер хочет верифицировать данные в официальном источнике — даём прямые deep-links

Что сделать

1. Кнопка «Открыть в НСПД» в карточке участка (Site Finder)

После каждого analyze добавить блок «Верифицировать в НСПД»:

  • «Открыть на ПКК»https://nspd.gov.ru/map?thematic=PKK&theme_id=1&coordinate_x={x_3857}&coordinate_y={y_3857}&zoom=18 (центр участка)
  • «Градостроительная проработка»https://nspd.gov.ru/urban-analyze (если есть auth, иначе landing с CTA «Войти через ЕСИА»)
  • «Кадастровая стоимость»https://nspd.gov.ru/cadastral-price/search (поиск через cad_num)
  • «Подобрать землю»https://nspd.gov.ru/construction-nspd — для exploration

2. UI placement

В ScoreCard.tsx или новом OfficialSourcesBlock.tsx — отдельный блок внизу карточки:

📋 Верифицировать в источниках:
[Открыть на ПКК ↗] [Кадастровая стоимость ↗] [Все сервисы НСПД ↗]

Открываются в новой вкладке (target="_blank" + rel="noopener").

3. Координаты в EPSG:3857

/site-finder использует WGS84, НСПД — Web Mercator metres. Конвертация:

// EPSG:4326 → EPSG:3857
function toMercator(lon: number, lat: number): [number, number] {
  const x = lon * 20037508.34 / 180;
  const latRad = lat * Math.PI / 180;
  const y = Math.log(Math.tan((Math.PI / 4) + (latRad / 2))) * 20037508.34 / Math.PI;
  return [x, y];
}

(Или использовать proj4js — есть в backend через Shapely; на frontend можно избежать lib и считать формулой.)

В PDF отчёте «Site Analysis Report» — раздел «Официальные источники»:

  • QR-коды для быстрого открытия с экрана
  • Списком URL + descrition

Acceptance

  • Block «Верифицировать в источниках» рендерится в /site-finder
  • Deep-link на ПКК открывает правильную точку (зум-уровень 18, центр участка)
  • Все ссылки target=\"_blank\" rel=\"noopener noreferrer\"
  • Mobile responsive
  • QR в PDF — опционально (если #49 X3 уже сделан)

Owner

frontend-engineer (UI block + utility функция конвертации координат)

Effort

~0.5 дня

Dependencies

— (можно делать независимо, сразу)

Why high ROI / low effort

  • Trust building для встреч с девелоперами — «мы не выдумываем данные, вот первоисточник»
  • Marketing differentiation — «у нас без ЕСИА, у НСПД с»
  • Reduces support burden — пользователь сам может верифицировать данные
  • Research: NSPD_API_Map_May12 (раздел про 22 сервиса)
  • Cross-ref: #49 X3 (PDF report) — если QR-коды
**Эшелон:** UX / Trust building ## Контекст НСПД — официальный портал Росреестра / Роскадастра. Аудит показал что они имеют **22 сервиса** (urban-analyze, construction-nspd, market-analysis, integrated-development-territories и др.), но **все за ЕСИА-авторизацией**. Это сильный аргумент trust: - Наш Site Finder — без ЕСИА (быстро, удобно) - Деплеломер хочет верифицировать данные в официальном источнике — даём прямые deep-links ## Что сделать ### 1. Кнопка «Открыть в НСПД» в карточке участка (Site Finder) После каждого analyze добавить блок «Верифицировать в НСПД»: - **«Открыть на ПКК»** → `https://nspd.gov.ru/map?thematic=PKK&theme_id=1&coordinate_x={x_3857}&coordinate_y={y_3857}&zoom=18` (центр участка) - **«Градостроительная проработка»** → `https://nspd.gov.ru/urban-analyze` (если есть auth, иначе landing с CTA «Войти через ЕСИА») - **«Кадастровая стоимость»** → `https://nspd.gov.ru/cadastral-price/search` (поиск через cad_num) - **«Подобрать землю»** → `https://nspd.gov.ru/construction-nspd` — для exploration ### 2. UI placement В `ScoreCard.tsx` или новом `OfficialSourcesBlock.tsx` — отдельный блок внизу карточки: ``` 📋 Верифицировать в источниках: [Открыть на ПКК ↗] [Кадастровая стоимость ↗] [Все сервисы НСПД ↗] ``` Открываются в новой вкладке (target=\"_blank\" + rel=\"noopener\"). ### 3. Координаты в EPSG:3857 `/site-finder` использует WGS84, НСПД — Web Mercator metres. Конвертация: ```typescript // EPSG:4326 → EPSG:3857 function toMercator(lon: number, lat: number): [number, number] { const x = lon * 20037508.34 / 180; const latRad = lat * Math.PI / 180; const y = Math.log(Math.tan((Math.PI / 4) + (latRad / 2))) * 20037508.34 / Math.PI; return [x, y]; } ``` (Или использовать proj4js — есть в backend через Shapely; на frontend можно избежать lib и считать формулой.) ### 4. Deep-links в PDF report (#49 X3) В PDF отчёте «Site Analysis Report» — раздел «Официальные источники»: - QR-коды для быстрого открытия с экрана - Списком URL + descrition ## Acceptance - [ ] Block «Верифицировать в источниках» рендерится в `/site-finder` - [ ] Deep-link на ПКК открывает правильную точку (зум-уровень 18, центр участка) - [ ] Все ссылки `target=\"_blank\" rel=\"noopener noreferrer\"` - [ ] Mobile responsive - [ ] QR в PDF — опционально (если #49 X3 уже сделан) ## Owner `frontend-engineer` (UI block + utility функция конвертации координат) ## Effort ~0.5 дня ## Dependencies — (можно делать независимо, сразу) ## Why high ROI / low effort - **Trust building** для встреч с девелоперами — «мы не выдумываем данные, вот первоисточник» - **Marketing differentiation** — «у нас без ЕСИА, у НСПД с» - **Reduces support burden** — пользователь сам может верифицировать данные ## Links - Research: [[NSPD_API_Map_May12]] (раздел про 22 сервиса) - Cross-ref: #49 X3 (PDF report) — если QR-коды
Owner

Status update — НЕ реализовано. ScoreCard.tsx / OfficialSourcesBlock.tsx с deep-links на НСПД отсутствуют. Координаты EPSG:3857 utility функция не добавлена.

Low effort (~0.5 дня), trust booster. Остаётся в backlog priority/normal.

Status update — НЕ реализовано. `ScoreCard.tsx` / `OfficialSourcesBlock.tsx` с deep-links на НСПД отсутствуют. Координаты EPSG:3857 utility функция не добавлена. Low effort (~0.5 дня), trust booster. Остаётся в backlog priority/normal.
Sign in to join this conversation.
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lekss361/gendesign#97
No description provided.