This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
# CVP IS organization-first procurement discovery
|
||||
# CVP IS procurement discovery routes
|
||||
|
||||
Use these routes as additional discovery paths for Lithuanian public-procurement evidence. They are not a complete procurement history.
|
||||
|
||||
@@ -18,6 +18,21 @@ Keep the remaining advanced-search fields present and empty when reproducing the
|
||||
|
||||
Live validation on 2026-08-19 used both `Lietuvos Respublikos Vyriausybės kanceliarija` and partial `Vyriausybės kanceliarija`. Each returned HTTP `200` HTML, the same `39` total rows, and authority cells displaying the exact full legal name. The first page exposed ten rows, including IT-relevant titles, confirming that this route is useful for current-procurement discovery but still requires row-level identity and body-level stage checks.
|
||||
|
||||
## Result-detail routes keyed by Pirkimo ID
|
||||
|
||||
Treat the search result's **Pirkimo ID** as the procurement `resourceId`. For each retained result, open all three public views rather than relying only on the search row:
|
||||
|
||||
1. **Order data:** `https://viesiejipirkimai.lt/epps/cft/prepareViewCfTWS.do?resourceId=<resourceId>`
|
||||
- Returns HTML with extensive procurement metadata such as exact buyer/profile link, title, description, object type, directive, procedure, contract type, CPV codes, contact, thresholds, submission/opening dates, duration, funding, publication date, language, winner-selection date when present, and planned contract date.
|
||||
2. **Additional notices/posts:** `https://viesiejipirkimai.lt/epps/cft/viewContractNotices.do?resourceId=<resourceId>`
|
||||
- Returns an HTML notice table with type, upload date, language, status, publication date, and actions. Preserve every distinct notice because tender, correction, award, amendment, and other stages are separate evidence objects.
|
||||
- The notice-type anchor can lead to a short official summary PDF through `downloadNotice.do?...&resourceId=<resourceId>`. Verify MIME type, `%PDF-` header, size, and extracted text before using it.
|
||||
3. **Procurement documents:** `https://viesiejipirkimai.lt/epps/cft/listContractDocuments.do?resourceId=<resourceId>`
|
||||
- Returns an HTML document table with addition ID, title, filename, description, language, versions, and actions. Documents may include ZIP archives, XML, specifications, conditions, draft contracts, questions/answers, or other attachments.
|
||||
- Some anonymous document actions are JavaScript handlers rather than direct anchor URLs and pass an individual `documentId` into `prepareAnonymousDownload.do`; parse the handler and use the portal's anonymous-download flow rather than treating `href="#"` as a missing document or inventing a download URL.
|
||||
|
||||
Live validation on 2026-08-19 used `resourceId=9279980`. All three routes returned HTTP `200` HTML and consistently identified buyer `LITGRID AB (PV)` and procurement **Vertybinių popierių apskaita (skelbiama apklausa be derybų)**. The order page exposed detailed fields; the notices page exposed one published notice and a `downloadNotice.do` PDF; the documents page exposed `Pirkimo sąlygos paskelbimui.zip` (`documentId=9280091`) and `c4t_9279980_1.xml` (`documentId=9280218`). The notice download returned a 2,029,056-byte, four-page `application/pdf` with a valid `%PDF-` header and extractable buyer/procedure text. These routes reveal evidence candidates, but their bodies and stages still control what claims are supportable.
|
||||
|
||||
## Validated organization-first route
|
||||
|
||||
1. Open `https://viesiejipirkimai.lt/epps/viewOrganisations.do` and search the exact client legal name, then former-name and abbreviation variants where needed. The live organization form uses `POST /epps/viewOrganisations.do` with lowercase field names, including `within=template.group.ca`, `name=<exact legal name>`, and optional `shortName`, `city`, and `street`; preserve the session cookie and normal referrer when reproducing the form request. Do not invent a GET query parameter or capitalize `name` from the input element's `id="Name"`. If a byte-exact authoritative name yields no row, retry only bounded typography/legal-form variants such as removing Lithuanian quotation marks or using the portal's likely `AB`, `VšĮ`, or expanded legal-form rendering. Record which query matched.
|
||||
|
||||
Reference in New Issue
Block a user