From 3cc32969fb6706b3c15803377b13456de5502b5a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BA=D0=B8=D0=BD=D1=8C=D1=88=D0=B8=D0=BD=20=D0=94?= =?UTF-8?q?=D0=BC=D0=B8=D1=82=D1=80=D0=B8=D0=B9=20=D0=A1=D0=B5=D1=80=D0=B3?= =?UTF-8?q?=D0=B5=D0=B5=D0=B2=D0=B8=D1=87?= Date: Fri, 28 Nov 2025 08:53:01 +0300 Subject: [PATCH] test --- docs/api/openapi.yaml | 68 +++++++ docs/csv/1-CreatePreapprove/audit.csv | 1 + .../1-CreatePreapprove/perfomance_batch.csv | 5 + .../1-CreatePreapprove/perfomance_single.csv | 4 + docs/csv/links.csv | 6 + docs/csv/terms.csv | 3 + docs/diagrams/db.uml | 26 +++ docs/diagrams/flow.uml | 23 +++ docs/diagrams/preapprove.drawio | 179 ++++++++++++++++++ .../1-CreatePreapprove/definition.adoc | 34 ++++ docs/main.adoc | 28 +++ docs/test.adoc | 10 + readme.adoc | 6 + 13 files changed, 393 insertions(+) create mode 100644 docs/api/openapi.yaml create mode 100644 docs/csv/1-CreatePreapprove/audit.csv create mode 100644 docs/csv/1-CreatePreapprove/perfomance_batch.csv create mode 100644 docs/csv/1-CreatePreapprove/perfomance_single.csv create mode 100644 docs/csv/links.csv create mode 100644 docs/csv/terms.csv create mode 100644 docs/diagrams/db.uml create mode 100644 docs/diagrams/flow.uml create mode 100644 docs/diagrams/preapprove.drawio create mode 100644 docs/functions/1-CreatePreapprove/definition.adoc create mode 100644 docs/main.adoc create mode 100644 docs/test.adoc create mode 100644 readme.adoc diff --git a/docs/api/openapi.yaml b/docs/api/openapi.yaml new file mode 100644 index 0000000..2a1f295 --- /dev/null +++ b/docs/api/openapi.yaml @@ -0,0 +1,68 @@ +openapi: 3.0.1 +info: + title: mspa-preapprove-applications + version: 0.1.0 +paths: {} +components: + schemas: + CreatePreapproveRequest: + type: object + description: Запрос на создание предодобренного предложения + required: + - offerId + - clientId + - startAt + - endAt + - productCode + - attributes + properties: + offerId: + type: integer + format: int64 + description: Внутренний идентификатор в CM Ocean + example: 12345678 + clientId: + type: integer + format: int64 + description: Идентификатор клиента в РБО. + example: 266526931 + startAt: + type: string + format: date-time + description: Дата начала действия предложения, ISO 8601. + example: 2026-01-01T13:00:00Z + endAt: + type: string + format: date-time + description: Дата окончания действия предложения, ISO 8601. + example: 2026-01-01T13:00:00Z + productCode: + type: string + description: Код продукта. + example: CASH_LOAN + attributes: + type: object + description: Параметры продукта в рамках предодобренного предложения + additionalProperties: + type: object + CreatePreapproveResponse: + description: Ответ на запрос создания предодобренного предложения + type: object + properties: + id: + type: string + format: uuid + description: Идентификатор предодобренного предложения + example: 6e2a330e-54cb-4b5d-96da-12413fa4dbf3 + offerId: + type: integer + format: int64 + description: Внутренний идентификатор в CM Ocean + example: 12345678 + createAt: + type: string + format: date-time + description: Дата создания предодобренного предложения, ISO8601 в UTC, до секунд. + example: 2026-01-01T13:00:00Z + + diff --git a/docs/csv/1-CreatePreapprove/audit.csv b/docs/csv/1-CreatePreapprove/audit.csv new file mode 100644 index 0000000..c80fdd8 --- /dev/null +++ b/docs/csv/1-CreatePreapprove/audit.csv @@ -0,0 +1 @@ +Код события|Описание|Тип события|Атрибуты \ No newline at end of file diff --git a/docs/csv/1-CreatePreapprove/perfomance_batch.csv b/docs/csv/1-CreatePreapprove/perfomance_batch.csv new file mode 100644 index 0000000..c18251b --- /dev/null +++ b/docs/csv/1-CreatePreapprove/perfomance_batch.csv @@ -0,0 +1,5 @@ +Объем пакета|todo|todo +Объем данных в пакете|todo|todo +Время обработки|todo|todo +Число параллельных вызовов|todo|todo +Пакетов в минуту|todo|todo \ No newline at end of file diff --git a/docs/csv/1-CreatePreapprove/perfomance_single.csv b/docs/csv/1-CreatePreapprove/perfomance_single.csv new file mode 100644 index 0000000..2e5c642 --- /dev/null +++ b/docs/csv/1-CreatePreapprove/perfomance_single.csv @@ -0,0 +1,4 @@ +Время обработки одного вызова|todo|todo +Объем данных за вызов|todo|todo +Число параллельных вызовов|todo|todo +Обращений в минуту|todo|todo \ No newline at end of file diff --git a/docs/csv/links.csv b/docs/csv/links.csv new file mode 100644 index 0000000..548afb0 --- /dev/null +++ b/docs/csv/links.csv @@ -0,0 +1,6 @@ +КАР-1|https://wiki.atb.su/pages/viewpage.action?pageId=116177482 +КАР-2|https://wiki.atb.su/pages/viewpage.action?pageId=94727578 +BRD КН|https://wiki.atb.su/pages/viewpage.action?pageId=126073766 +БТ|https://wiki.atb.su/pages/viewpage.action?pageId=116181118 +Архитектура|https://wiki.atb.su/pages/viewpage.action?pageId=116181120 +SA|https://wiki.atb.su/display/aCRM/msop-preapprove-applications \ No newline at end of file diff --git a/docs/csv/terms.csv b/docs/csv/terms.csv new file mode 100644 index 0000000..705d28f --- /dev/null +++ b/docs/csv/terms.csv @@ -0,0 +1,3 @@ +Предобренное предложение|предварительно рассчитанные параметры продукта, которые могут быть изменены Банком на этапе подачи клиентом заявки на продукт +Campaign Management Ocean|система маркетинговой автоматизации +СПР|система принятия решений \ No newline at end of file diff --git a/docs/diagrams/db.uml b/docs/diagrams/db.uml new file mode 100644 index 0000000..2f5eb6d --- /dev/null +++ b/docs/diagrams/db.uml @@ -0,0 +1,26 @@ +@startuml +left to right direction + +entity "**preapprove**\nПредодобренные предложения" as preapp { + * **id** - uuid - Идентификатор предодобренного предложения + -- + **client_id** - bigint - Идентификатор клиента в РБО + **offer_id** - bigint - Идентификатор предложения в CM Ocean + .. + **product_code** - varchat(64) - Код продукта + **status** - varchar(64) - Статус предложения + **created_at** - timestamptz - Дата создания записи + **updated_at** - timestamptz - Дата обновления записи + **start_at** - timestamptz - Дата начала действия предложения + **end_at** - timestamptz - Дата завершения действия предложения + **attributes** - jsonb - Параметры продукта +} + +note left of preapp::status + * ACTIVE + * INACTIVE + * LOCKED + * USED +end note + +@enduml \ No newline at end of file diff --git a/docs/diagrams/flow.uml b/docs/diagrams/flow.uml new file mode 100644 index 0000000..fef4174 --- /dev/null +++ b/docs/diagrams/flow.uml @@ -0,0 +1,23 @@ +@startuml +left to right direction + +state "ACTIVE" as active +state "INACTIVE" as inactive +state "LOCKED" as lock +state "USED" as used + +active: Не зависимо от дат\nдействия предложения,\nтак как нужна доп проверка +inactive: Срок истёк, не использовано\nДеактивировано +lock: Изменение не возможно\nпредложение в работе +used: Предложение использовано + +[*] --> active: 1.Cоздать +active -> active: 2.Изменить\n3.Получить + +active --> inactive: 4.Деактивировать +active --> lock: 5.Заблокировать +lock --> active: 6.Снять блокировку + +lock --> used: 7.Использовать + +@enduml \ No newline at end of file diff --git a/docs/diagrams/preapprove.drawio b/docs/diagrams/preapprove.drawio new file mode 100644 index 0000000..5ee1573 --- /dev/null +++ b/docs/diagrams/preapprove.drawio @@ -0,0 +1,179 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/functions/1-CreatePreapprove/definition.adoc b/docs/functions/1-CreatePreapprove/definition.adoc new file mode 100644 index 0000000..7405336 --- /dev/null +++ b/docs/functions/1-CreatePreapprove/definition.adoc @@ -0,0 +1,34 @@ +=== Создание предодобренного предложения +Краткое описание - todo + +https://wiki.atb.su/pages/viewpage.action?pageId=130230435[Полное описание] + +==== Функциональные требования +todo + +==== Производительность и нагрузка +.Обработка одиночной операции +[format="csv",separator="|", cols="3,1,1", options="header"] +|=== +Параметр|Среднее|Максимальное +include::../../csv/1-CreatePreapprove/perfomance_single.csv[] +|=== +.Обработка пакетной операции +[format="csv",separator="|", cols="3,1,1", options="header"] +|=== +Параметр|Среднее|Максимальное +include::../../csv/1-CreatePreapprove/perfomance_batch.csv[] +|=== + +==== Aудит +.События аудита +[format="csv",separator="|", options="header"] +|=== +include::../../csv/1-CreatePreapprove/audit.csv[] +|=== + + +==== Требования к безопасности +Аутентификация/Шифрование - todo + +Чувствительный данныее - todo diff --git a/docs/main.adoc b/docs/main.adoc new file mode 100644 index 0000000..74ce022 --- /dev/null +++ b/docs/main.adoc @@ -0,0 +1,28 @@ +//краткий гайд по работе с AsciiDoc - https://powerman.name/doc/asciidoc + += mspa-preapprove-applications + +Задачи сервиса: + +* Реализовать единое место хранения, управления ЖЦ и предоставления потребителям Предодобренных предложений. +* На первом этапе предполагается работы с кредитными продуктами (КН) для клиентов розничного сектора, ввод в эксплуатацию ожидается в 3Q26. +* Требуется максимально обобщенная реализация для возможности дальнейшего расширения на проспектов, корпоративный сегмент, иные банковские и небанковские продукты. +* Собственный UI не предполагается. В дальнейшем возможно появление ЭФ для функций методов, используемых Ocean (создание, изменение параметров, деактивация). + +== Ссылки +.Артефакты +[format="csv",separator="|", cols="1,4"] +|=== +include::csv/links.csv[] +|=== + +== Термины и определения +.Глоссарий +[format="csv",separator="|", cols="1,3", options="header"] +|=== +Термин|Определение +include::csv/terms.csv[] +|=== + +== Функции +include::functions/1-CreatePreapprove/definition.adoc[] diff --git a/docs/test.adoc b/docs/test.adoc new file mode 100644 index 0000000..895ea97 --- /dev/null +++ b/docs/test.adoc @@ -0,0 +1,10 @@ + += Проверка возможностей + +== Импорт диаграми + +[plantuml, format="png", width="100px",alt="my diagram"] +-- +Alice -> Bob : ping +Bob -> Alice : pong +-- \ No newline at end of file diff --git a/readme.adoc b/readme.adoc new file mode 100644 index 0000000..683ff35 --- /dev/null +++ b/readme.adoc @@ -0,0 +1,6 @@ + += Тест + +include::docs/test.adoc[] + +include::docs/main.adoc[] \ No newline at end of file