Возврат: решение председателя — со-подпись на заявлении пайщика (не отдельный документ) #96
Reference in New Issue
Block a user
Delete Branch "feat/mkt-return-chairman-cosign"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Принятие гарантийного возврата (
accretrn) оформляется второй подписью председателя КУ на том же заявлении пайщика (канон двухподписных актов), а не отдельным документом-решением. Удалённое рассмотрение и отказы — процедурные действия без подписи документа.Контракт marketplace
return_request: убраныdecision_remote/decision_visit;statementприaccretrnперезаписывается версией с двумя подписями.accretrn(… statement)требует обе подписи (verify_document_or_fail{orderer, chairman});aprretrem/rejretrem/rejretrnбольше не принимают документ.marketplace.wasm).cooptypes
IAprRetRem/IRejRetRem/IRejRetrnбезdecision;IAccRetrn.decision→statement.backend (controller)
accretrnпринимает со-подписанное заявление (signed_statement).standard p.mkt.return
registry_id800→1104 (членская модель, приведено к коду).Follow-up (отдельный срез)
Чтобы приём заработал e2e: персистентность подписанного заявления в claim + экспозиция в claim-DTO + со-подпись в desktop
OnSiteDecisionDialog+ zeus regen. Требует новой колонки/миграции — выношу отдельной историей.Принятие гарантийного возврата (accretrn) оформляется второй подписью председателя КУ на том же заявлении пайщика (канон двухподписных актов), а не отдельным документом. Удалённое рассмотрение (aprretrem/rejretrem) и отказ на осмотре (rejretrn) — процедурные действия без подписи документа. Контракт: - table return_request: убраны поля decision_remote / decision_visit; statement при accretrn перезаписывается версией с обеими подписями. - accretrn принимает document2 statement, требует обе подписи (verify_document_or_fail{orderer, chairman}); aprretrem/rejretrem/rejretrn больше не принимают документ. - собран зелёным (marketplace.wasm). cooptypes: интерфейсы IAprRetRem/IRejRetRem/IRejRetrn без decision, IAccRetrn.decision → statement. backend: сервис/DTO/резолвер — удалённые шаги и отказ без документа, accretrn принимает со-подписанное заявление (signed_statement). standard p.mkt.return: registry 800→1104 (членская модель, = коду), секция документов и подписи переписаны на бизнес-язык; один документ — заявление с подписью пайщика и со-подписью председателя при принятии. Follow-up (отдельный срез): персистентность подписанного заявления в claim + экспозиция в DTO + со-подпись в desktop OnSiteDecisionDialog + zeus regen. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>При подаче заявления на гарантийный возврат backend теперь сохраняет подписанное пайщиком заявление (registry 1104) в claim — новая jsonb-колонка marketplace_return_claim.statement (создаётся synchronize). Раньше документ уходил только в цепь, и председателю было нечего со-подписывать. - types/entity/typeorm/mapper/repo: поле statement (ISignedDocumentDomainInterface | null). - submitReturnClaim сохраняет input.signed_statement в claim. - новый метод getChairmanReturnSignablePayload + запрос marketplaceReturnClaimChairmanSignablePayload → DocumentAggregate {rawDocument + подпись пайщика}; председатель накладывает вторую подпись (signDocument(raw, chairman, 2, [document])) — канон APP-приёмки. Ownership: член КУ доставки (как в marketplaceReturnClaim). Follow-up: desktop OnSiteDecisionDialog (со-подпись на приёме) + zeus regen (generate-schema/generate-client/sdk build) — блокированы codegen-пайплайном. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>