add new schemes

This commit is contained in:
Andrey
2024-05-27 11:13:41 +03:00
parent e084f73d6b
commit 44480f67cf
13 changed files with 520 additions and 162 deletions

251
oms/order mongoDB.puml Normal file
View File

@@ -0,0 +1,251 @@
@startjson
<style>
' Общий стиль схемы задан здесь
jsonDiagram {
node {
LineColor #000
FontName Helvetica
FontColor black
FontSize 18
FontStyle bold
}
arrow {
LineColor #000
LineThickness 3
LineStyle 2
}
highlight {
BackGroundColor #e5e5e5
FontColor black
}
}
' Здесь находятся расцветки изменений. Необходимо создать новый объект по образу .firstChange
.firstChange {
FontColor blue
}
</style>
' Здесь указываем какие атрибуты нужно подсвечивать в схеме
#highlight "order" / "Recipient" / "ID" <<firstChange>>
#highlight "order" / "Recipient" / "RecipientAddress" <<firstChange>>
#highlight "order" / "Recipient" / "RecipientPhone" <<firstChange>>
#highlight "order" / "Recipient" / "RecipientName" <<firstChange>>
{
"order": {
"orderID": "uuid || Номер заказа",
"managerInfo": {
"CreatedBy": "uuid || Идентификатор автора заказа из AD",
"CreatedFullName": "string || ФИО автора заказа",
"UpdatedBy": "uuid || Идентификатор последнего обновлявшего заказ",
"UpdatedFullName": "string || ФИО последнего обновлявшего заказ",
"ManagerGroup": "int || Идентификатор группы менеджера",
"ManagerPhoneNumber": "string || Номер телефона менеджера",
"ManagerExtensionNumber": "string || Добавочный номер телефона менеджера"
},
"RootOrder": "uuid || UUID корневого заказа",
"Number": "string || Номер заказа в формате ****-******-*****",
"OrderStatus": "int || Идентификатор статуса заказа (от 0 до 7)",
"Contractor": {
"Type": "int || Тип контрагента.",
"B2CContractor": {
"Person": {
"ID": "uuid || Идентификатор (UUID) контрагента",
"FullName": "string || Полное ФИО КА",
"Phone": "string || Номер телефона КА",
"Email": "string || Email адрес КА"
}
},
"B2BContractor": {
"ID": "uuid || Идентификатор (UUID) контрагента",
"Name": "string || Полное наименование КА",
"TIN": "string || Номер ИНН",
"ContactPersons (array)": {
"Person": {
"ID": "uuid || Идентификатор (UUID) контрагента",
"FullName": "string || Полное ФИО КА",
"Phone": "string || Номер телефона КА",
"Email": "string || Email адрес КА"
},
"SmsPhoneNumber": "string || Номер телефона для СМС"
},
"CurrentContactPersonID": "uuid || ID выбранного КЛ для заказа",
"Curator": {
"ID": "uuid || Идентификатор куратора",
"FullName": "string || ФИО куратора"
},
"Contract": {
"ID": "uuid || Идентификатор договора",
"Number": "string || Номер договора",
"Kind": "int || Тип договора"
},
"BaseDocumentSettings": {
"GovernmentContractID": "string || Идентификатор государственного контракта",
"InvoiceTransferBasis": "string || Основание передачи в счете на оплату",
"ShippingDocuments": {
"TransferBasisDocument": "string || документ-основание передачи(сдачи)/получения(приемки)",
"TransferBasisAdditionalDetails": "string || Дополнительные сведения основания передачи",
"OtherInformation": "string || Иные сведения"
}
}
}
},
"Recipient": {
"ID": "uuid || Идентификатор (UUID) грузополучателя",
"RecipientName": "string || Имя грузополучателя заказа",
"RecipientPhone": "string || Номер телефона грузополучателя",
"RecipientAddress": "string || Адрес грузополучателя"
},
"Properties": {
"BasicTimestamps": {
"CreatedAt": "date-time || Дата и время создания заказа",
"UpdatedAt": "date-time || Дата и время последнего обновления заказа"
},
"OriginID": "int || Идентификатор источника заказа",
"SiteOrderDate": "date-time || Дата и время заказа выбранное на сайте",
"OrderComment": "string || Комментарий к заказу. Во wtis: primSklad",
"TtnNumber": "string || Номер ТТН",
"TtnDate": "string || Дата ТТН",
"IsPartialShipmentFromSite": "bool || Признак ЧО с сайта",
"PaymentAmount": "float || Сумма внесенной оплаты",
"BookingEndDates": "array || Массив с датами истечения бронирования заказа",
"IsPrepaymentRequired": "bool || Признак Необходима предоплата",
"RegionGUID": "uuid || Идентификатор (UUID) региона",
"RegionName": "string || Наименование региона",
"TypeOrderFromSite": "string || Тип заказа с сайта. normal / fast",
"Firma": "GUID фирмы отгружающей товар."
},
"Artifacts": {
"PartialShipment": "bool || Признак Частичная отгрузка",
"OrderMasterSystem": "string || Признак мастер-система по заказу",
"KkmDate": "string || Дата ККМ",
"KkmAmount": "float || Сумма оплаты через ККМ",
"PaymentKkm": "bool || Признак оплата через ККМ",
"PaymentCb": "bool || Признак оплата по счету",
"PaymentCard": "bool || Признак картой",
"IsEwalletPayment": "bool || Признак оплата с сайта",
"OrderStateWtis": "int || Состояние заказа из WTIS",
"AttbOplata": "int || Статус оплаты (0 - Не оплачено, 1 - Частичная оплата, 2 - Оплачено). || deprecated",
"OrderStatusWtis": "int || Статус заказа из WTIS",
"IsPromoEnabled": "bool || Признак, что сайт взаимодействует с МС Promo и берет распродажную инфу оттуда.",
"IsYandexEnabled": "bool || Признак, что адрес передается в новом формате для курьерки."
},
"Supplies (array)": {
"ID": "uuid || Идентификатор поставки",
"ShipmentID": "uuid || Идентификатор шипмента",
"ProductID": "uuid || Идентификатор номенклатуры",
"SourceOffice": "uuid || Идентификатор склада на котором находится товар",
"ReserveTo": "date-time || Дата резерв до",
"PurchaseIDs": "array || Массив идентификаторов закупки",
"UnreserveDate": "date-time || Дата фактического снятия с резерва товара",
"Quantity": "int || Количество товара в доставке. Суммарное количество должно быть равно quantity в items",
"StatusItem": "int || Идентификатор статуса товара",
"Artifacts": {
"StatusItemWtis": "int || Клиентский статус товара из WTIS",
"Attb": "Состоние товара из WTIS",
"FlagReturn": "bool || Признак Возврат товара. 1 - товар с вкладки Возвраты, 0 - для товаров с вкладки Товары.",
"FlagReturnedToSklad": "bool || Принят на склад",
"AppendUser": "uuid || ID пользователя кто добавил поставку",
"ChangeUser": "uuid || ID пользователя кто последний изменил поставку"
},
"DateCanDeliver": "date-time || Дата 'Сможем доставить'.",
"CreatedAt": "date-time || Дата создания поставки",
"UpdatedAt": "date-time || Дата последнего обновления поставки",
"Prices": {
"DiscountPrice": "float || Сумма скидки",
"DiscountCategory": "string || Категория скидки",
"DiscountReason": "string || Причина скидки",
"InitialPrice": "float || Начальная цена",
"PurchasePrice": "float || Цена закупки",
"Price": "float || Цена товара",
"Discount": "float || Процент скидки",
"ClearanceSaleID": "uuid || Идентификатор распродажи",
"IsPromoCodeUsed": "bool || Флаг использования промокода",
"PromotionID": "int || Идентификатор акции из МС Promo",
"ExtraCost": "float || Цена доставки на единицу товара"
},
"IsRestored": "bool || Признак восстановления поставки.",
"DeliveryDate": "date-time || Дата доставки"
},
"Shipment": {
"Meta": {
"ID": "uuid || Идентификатор shipment",
"OrderID": "uuid || Идентификатор заказа",
"MethodID": "int || Идентификатор шипмента",
"Status": "int || Статус доставки",
"DeliveryDate": "date-time || Дата доставки",
"Services": {
"Settings": {
"SpreadExtraCost": "bool || Размазать стоимость доставки по товарам связанным с доставкой"
}
},
"CreatedAt": "date-time || Дата создания доставки",
"UpdatedAt": "date-time || Дата последнего обновления доставки"
},
"ShipmentPickup": {
"OfficeGUID": "uuid || Идентификатор офиса"
},
"ShipmentCourier": {
"FactDeliveryBoy": "uuid || Идентификатор курьера который отдал заказ",
"FreeReason": "int || Причина бесплатной доставки",
"FiasID": "uuid || FIAS идентификатор адреса доставки",
"IntervalGUID": "uuid || Идентификатор интервала курьерской доставки",
"DeliveryAregGUID": "uuid || Идентификатор AREG адреса доставки",
"AddressTail": {
"AddressTailID": "uuid || Идентификатор хвоста адреса",
"Flat": "int || Номер квартиры",
"Entrance": "int || Подъезд",
"Floor": "int || Этаж",
"AddressComment": "string || Комментарий к адресу",
"ContactNumber": "string || Контактный номер в адресе доставки"
},
"IntervalValue": "string || Значение интервала доставки",
"Latitude": "string || Широта адреса доставки",
"Longitude": "string || Долгота адреса доставки",
"CourierGUID": "uuid || Идентификатор курьера в заказе",
"DeliveryBoyName": "string || ФИО курьера в заказе",
"AddrDostav": "string || Адрес доставки",
"CourierDeliveryCost": "int || Стоимость доставки",
"CourierComment": "string || Комментарий для курьера"
},
"ShipmentTKPickup": {
"TransportCompanyID": "uuid || Идентификатор транспортной компании",
"TransportCompanyCityID": "uuid || Идентификатор города ТК",
"TransportCompanyCityName": "string || Название города ТК",
"TransportCompanyExternalCode": "string || Внешний код офиса ТК в системе CDEK",
"TransportCompanyTariffID": "uuid || Идентификатор тарифа ТК",
"TransportCompanyTariffName": "string || Наименование тарифа",
"CourierDeliveryCost": "int || Стоимость доставки",
"CourierComment": "string || Комментарий для курьера"
},
"shipmentTKCourier": {
"TransportCompanyID": "uuid || Идентификатор транспортной компании",
"TransportCompanyCityID": "uuid || Идентификатор города ТК",
"TransportCompanyCityName": "string || Название города ТК",
"TransportCompanyExternalCode": "string || Внешний код офиса ТК в системе CDEK",
"TransportCompanyTariffID": "uuid || Идентификатор тарифа ТК",
"TransportCompanyTariffName": "string || Наименование тарифа",
"IntervalValue": "string || Значение интервала доставки",
"Latitude": "string || Широта адреса доставки",
"Longitude": "string || Долгота адреса доставки",
"AddrDostav": "string || Адрес доставки",
"FiasID": "uuid || FIAS идентификатор адреса доставки",
"IntervalGUID": "uuid || Идентификатор интервала курьерской доставки",
"DeliveryAregGUID": "uuid || Идентификатор AREG адреса доставки",
"AddressTail": {
"AddressTailID": "uuid || Идентификатор хвоста адреса",
"Flat": "int || Номер квартиры",
"Entrance": "int || Подъезд",
"Floor": "int || Этаж",
"AddressComment": "string || Комментарий к адресу",
"ContactNumber": "string || Контактный номер в адресе доставки"
},
"CourierDeliveryCost": "int || Стоимость доставки",
"DeliveryWay": "int || Тип доставки, через транспортную компанию",
"CourierComment": "string || Комментарий для курьера"
}
}
}
}
@endjson