fix(epay-ui): show localitate + judet on intern extracts; hide cancelled rows
The intern (and gis-api-sourced) rows showed an empty "jud." with no UAT name or county, and a few dead cancelled/test rows cluttered the list. - gis-api returns siruta + uatName but judetName is null there, and the CfExtractRow type didn't even declare those fields so adaptCfRow blanked them. Added the fields to the type; adaptCfRow now surfaces uatName + siruta. - New enrichCfLocations(rows) fills missing uatName/judetName from SIRUTA via the local GisUat table (batched, one query). Applied in both list proxies (/api/cf/orders for gis rows, /api/ancpi/orders for old legacy intern rows whose judetName was stored empty). So intern rows now read "LOCALITATE, jud. X". - Hide status='cancelled' rows from the Extrase CF list (dead — payment refused / cleaned-up bad orders, e.g. the old 354686 test). failed/review stay (actionable via Reincearca). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import { NextResponse } from "next/server";
|
||||
import { prisma } from "@/core/storage/prisma";
|
||||
import { requireCfAccess } from "@/core/auth/cf-access";
|
||||
import { enrichCfLocations } from "@/modules/parcel-sync/services/cf-enrich-location";
|
||||
|
||||
export const runtime = "nodejs";
|
||||
export const dynamic = "force-dynamic";
|
||||
@@ -57,6 +58,10 @@ export async function GET(req: Request) {
|
||||
prisma.cfExtract.count({ where }),
|
||||
]);
|
||||
|
||||
// Fill missing uatName/judetName from SIRUTA (old intern rows stored an
|
||||
// empty judetName) so the list shows localitate + judet for them too.
|
||||
await enrichCfLocations(orders);
|
||||
|
||||
// Build statusMap for multi-cadastral queries (or single if requested)
|
||||
if (cadastralNumbers.length > 0) {
|
||||
const now = new Date();
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
import { NextResponse } from "next/server";
|
||||
import { getAuthSession } from "@/core/auth/require-auth";
|
||||
import { gisApi, GisApiError } from "@/lib/gis-api-client";
|
||||
import { enrichCfLocations } from "@/modules/parcel-sync/services/cf-enrich-location";
|
||||
|
||||
export const runtime = "nodejs";
|
||||
export const dynamic = "force-dynamic";
|
||||
@@ -30,9 +31,14 @@ export async function GET(request: Request) {
|
||||
const offset = Number.isFinite(offsetRaw) && offsetRaw >= 0 ? offsetRaw : 0;
|
||||
|
||||
try {
|
||||
return NextResponse.json(
|
||||
await gisApi.enrichment.cf.list({ limit, offset, status }),
|
||||
);
|
||||
const data = await gisApi.enrichment.cf.list({ limit, offset, status });
|
||||
// gis-api returns uatName + siruta but judetName is null there — fill the
|
||||
// county (and any missing UAT name) from the local GisUat table so the UI
|
||||
// can show "localitate, jud. X" on intern rows too.
|
||||
if (Array.isArray(data?.rows)) {
|
||||
await enrichCfLocations(data.rows);
|
||||
}
|
||||
return NextResponse.json(data);
|
||||
} catch (err) {
|
||||
if (err instanceof GisApiError) {
|
||||
return NextResponse.json(
|
||||
|
||||
Reference in New Issue
Block a user