docs(sprint6): TD-6 done
This commit is contained in:
parent
ec0cff7fc4
commit
8f0773eab3
|
|
@ -7,10 +7,15 @@ unit + integration тесты, коммит порцией, отметка `[x]`
|
||||||
|
|
||||||
## Чек-лист
|
## Чек-лист
|
||||||
|
|
||||||
1. [ ] **TD-6 Concurrency-токены на документах** — `RowVersion` (PostgreSQL
|
1. [x] **TD-6 Concurrency-токены на документах** — `RowVersion` (PostgreSQL
|
||||||
`xmin` через `IsRowVersion`) на Supply/Demand/RetailSale/Transfer/Inventory.
|
`xmin` через `IsRowVersion`) на Supply/Demand/RetailSale/Transfer/Inventory.
|
||||||
Миграция. EF concurrency check. 409 при конфликте. Тест: два параллельных
|
Миграция. EF concurrency check. 409 при конфликте. Тест: два параллельных
|
||||||
PUT → один 200, другой 409.
|
PUT → один 200, другой 409.
|
||||||
|
✅ Postgres `xmin` (system column, без миграции) через
|
||||||
|
`UseXminAsConcurrencyToken` для 5 документов + `IVersionedEntity`-marker.
|
||||||
|
SuppliesController PUT принимает `Xmin`, сверяет, 409 при mismatch.
|
||||||
|
Bonus: Supply.Update перешёл на ExecuteDelete+AddRange (тот же fix что
|
||||||
|
в RetailSale). 2 интеграционных теста.
|
||||||
2. [ ] **TD-2 FluentValidation** — `FluentValidation.AspNetCore`, validator'ы
|
2. [ ] **TD-2 FluentValidation** — `FluentValidation.AspNetCore`, validator'ы
|
||||||
для SupplyInputDto/RetailSaleInputDto/ProductInputDto/CounterpartyInputDto/
|
для SupplyInputDto/RetailSaleInputDto/ProductInputDto/CounterpartyInputDto/
|
||||||
EmployeeInputDto. Auto-register. Тесты на каждый.
|
EmployeeInputDto. Auto-register. Тесты на каждый.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue