Commit Graph

12 Commits

Author SHA1 Message Date
Тимур Городецкий ee282b61b7 feat: show current vs new plan before importing works
A file value replaces the planned volume of an existing work. Before the
import the page now lists such works with their current and new volume
and unit, highlighting changes and greying out rows that stay the same,
so the user sees what will be overwritten.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-23 09:54:12 +05:00
Тимур Городецкий a98162fce7 feat: save works imported from Excel
After a clean check the page loads the existing works of each object and
shows how many works will be created and updated. "Import" writes them
with the same requests as the work dialog: a work with the same title on
the object gets only its planned volume and unit updated, so loading the
same file again does not duplicate works.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-22 17:52:41 +05:00
Тимур Городецкий 1ba67fe4c1 feat: import reports from Excel
The /Import/StroyBot/Reports endpoint only validates the file, so the
check now runs as soon as a file is picked. When there are no errors,
"Import" builds the reports from the ids in the response and saves them
with the same Dataverse code as the report form: one report per date,
company, shift and object; resources nested under their work; idle and
repair hours as separate rows.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-22 17:01:27 +05:00
Тимур Городецкий 0ae52ccd6b docs: drop open questions to the API team
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-20 10:12:18 +05:00
Тимур Городецкий df4998c75e docs: record weather check test results
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-20 10:08:53 +05:00
Тимур Городецкий d606f8371c feat: weather conditions check from stroy-bot-main
Ports the weather check added to stroy-bot-main on 2026-10-16: daily
station weather, report positions with weather per shift and the AI
assessment of working conditions. Opens as ?page=weather&start=&end=
instead of the #weathercheck hash, and hub dates survive the way back.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-20 09:47:02 +05:00
Тимур Городецкий b18cf50efd docs: add responsive layout checks to the test plan
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-19 16:19:59 +05:00
Тимур Городецкий 76878c7617 docs: record report fixes and the import test blocker
Import tests wait for an estimate in the catalogue: the API returns
totalCount 0 for every project.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-19 16:17:57 +05:00
Тимур Городецкий cb810972c4 feat: searchable unit picker in the work form
Units dictionary has around a hundred entries; typing now filters the
list and Enter picks the first match. Only dictionary values can be
chosen, as before. Generic SearchableSelect lives in shared until the
ui-kit gets one.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-19 10:07:07 +05:00
Тимур Городецкий 650bce809a docs: align hub status scenarios with real SharePoint choices
Status choices in the Проекты list are Текущий / Архивный, so the legacy
archive rule matches real data; the projects portal writes its own
status to the API catalogue, which StroyBot does not read.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-16 11:45:04 +05:00
Тимур Городецкий bb7093de20 docs: fix session restore scenario, record ui-kit look decision
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-16 10:59:36 +05:00
Тимур Городецкий 1532017c0b docs: add step-by-step manual test plan
Scenarios per section with expected results, role switching with one
account, side-by-side comparison with the legacy pages and a bug report
template, so the workbench check can be done systematically.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-16 10:13:15 +05:00