This commit is contained in:
KatykhinAA
2024-09-09 09:05:15 +03:00
parent e0abd0257b
commit b15ab20a18
17 changed files with 925 additions and 874 deletions

View File

@@ -7,6 +7,7 @@ queue kafka
participant Gateway
participant workflow
participant wtis
participant CRM
user -> SITE: Оформляет заказ
SITE -> SITE: Сохраняет заказ в БД
@@ -16,23 +17,27 @@ Gateway --> kafka: Забирает заказ
Gateway -> workflow: CreateB2CAO
workflow -> workflow: Проверяет условия АО
workflow -> workflow: Проверяет тип доставки
workflow -> wtis: синк заказа во втис через kafka
alt Тип доставки "Курьером"
workflow -> workflow: Устанавливает таймер на N минут
alt Поступила оплата в заказ до истечения срока таймера
workflow -> workflow: Заканчивает автооформление\nУстанавливает дату доставки\nзаказа
workflow -> wtis: Синхронизирует заказ со WTIS
else Не поступила оплата в заказ до истечения срока таймера
workflow -> wtis: Заказ передается во WTIS\nМеняется мастер система
workflow -> CRM: Ставится задача с типом 21 в CRM
end
else Тип доставки "Самовывоз"
workflow -> workflow: Проверяет наличие\nкрупногабаритных товаров\nв заказе
alt Крупногабаритных товаров в заказе нет
workflow -> workflow: Заканчивает автооформление\nУстанавливает дату доставки\nзаказа
workflow -> wtis: Синхронизирует заказ со WTIS
else Крупногабаритные товары в заказе есть
workflow -> workflow: Устанавливает таймер на N минут
alt Поступила оплата в заказ до истечения срока таймера
workflow -> workflow: Заканчивает автооформление\nУстанавливает дату доставки\nзаказа
workflow -> wtis: Синхронизирует заказ со WTIS
else Не поступила оплата в заказ до истечения срока таймера
workflow -> wtis: Заказ передается во WTIS\nМеняется мастер система
workflow -> CRM: Ставится задача с типом 21 в CRM
end
end
end

View File

@@ -1,31 +1,31 @@
@startjson
{
"order": "order guid",
"total": "count_list",
"orderChanges": [
{
"type": "name type of correction",
"entityType": "order/supply/shipment",
"EntityId":"UUID entity",
"id": "correction ID",
"reason": "reason changes",
"createdAt":"Full name author",
"createdBy":"UUID author",
"valueChanges": [
{
"firstObject": {
"before": "old_value",
"after": "new_value"
}
},
{
"secondObject": {
"before": "old_value",
"after": "new_value"
}
}
]
}
]
}
@startjson
{
"order": "order guid",
"total": "count_list",
"orderChanges": [
{
"type": "name type of correction",
"entityType": "order/supply/shipment",
"EntityId":"UUID entity",
"id": "correction ID",
"reason": "reason changes",
"createdAt":"Full name author",
"createdBy":"UUID author",
"valueChanges": [
{
"firstObject": {
"before": "old_value",
"after": "new_value"
}
},
{
"secondObject": {
"before": "old_value",
"after": "new_value"
}
}
]
}
]
}
@endjson

View File

@@ -1,54 +1,54 @@
{
// order
"order_created": "Заказ создан",
"changed_contragent": "Изменен контрагент",
"booked": "Переведен в статус 'Забронирован'",
"booked_cancel": "Отменено бронирование",
"deleted": "Переведен в статус 'Удален'",
"ordered": "Переведен в статус 'В работе'",
"shipped": "Переведен в статус 'Завершен'",
"canceled": "Переведен в статус 'Отменен'",
"changed_region": "В заказе изменен регион",
"changed_comment": "В заказе изменен комментарий к заказу",
"changed_amount": "В заказе изменена сумма заказа",
"changed_payment": "В заказе изменена сумма оплаты",
"changed_date_delivery": "В заказе изменена дата доставки",
"changed_discount_order": "В заказе изменена скидка",
"changed_manager": "В заказе изменен менеджер",
"extended_reserve_date": "В заказе продлен резерв",
"change_contract": "К заказу привязан договор",
// shipment
"shipment_created": "Доставка создана",
"changed_type_delivery": "Тип доставки изменен",
"changed_office": "Пункт выдачи заказа изменен",
"changed_delivery_address": "Адрес доставки изменен",
"changed_interval_courier_delivery": "Интервал курьерской доставки изменен",
"changed_courier_delivery_cost": "Стоимость курьерской доставки изменена",
"changed_comment_courier": "Комментарий курьера изменен",
"change_shipment_possibility": "Установлен признак 'Отгружать с ПДЗ'",
"changed_transport_company": "Транспортная компания изменена",
"changed_transport_company_delivery_method": "Способ доставки ТК изменен",
"changed_cdek_region": "Регион ТК изменен",
"changed_tariff": "Тариф ТК изменен",
"purchase_task": "Переведен в статус 'В задании на закупку'",
"purchase_formalized": "Переведен в статус 'В закупке'",
"reserved": "Переведен в статус 'Зарезервирован'",
"assembling": "Переведен в статус 'Комплектуется'",
"relocating": "Переведен в статус 'Перемещение'",
"with_courier": "Переведен в статус 'Передан курьеру'",
"with_carrier": "Переведен в статус 'Передан ТК'",
"ready_for_pickup": "Переведен в статус 'Готов к выдаче'",
"issued": "Переведен в статус 'Выдан'",
// supply
"added": "Товар добавлен",
"removed": "Товар удален",
"changed_discount_supply": "Изменена скидка по товару",
"changed_price": "Цена товара изменена",
"changed_count": "Изменено количество товара",
"purchase_draft": "Переведен в статус 'Закупка в черновике'",
"not_in_stock": "Нет в наличии",
"warehouse_acceptance": "Переведен в статус 'Размещается'",
"returned": "Переведен в статус 'Возвраще'",
"absent": "Переведен в статус 'Возвращен'",
"defect": "Переведен в статус 'Брак'"
{
// order
"order_created": "Заказ создан",
"changed_contragent": "Изменен контрагент",
"booked": "Переведен в статус 'Забронирован'",
"booked_cancel": "Отменено бронирование",
"deleted": "Переведен в статус 'Удален'",
"ordered": "Переведен в статус 'В работе'",
"shipped": "Переведен в статус 'Завершен'",
"canceled": "Переведен в статус 'Отменен'",
"changed_region": "В заказе изменен регион",
"changed_comment": "В заказе изменен комментарий к заказу",
"changed_amount": "В заказе изменена сумма заказа",
"changed_payment": "В заказе изменена сумма оплаты",
"changed_date_delivery": "В заказе изменена дата доставки",
"changed_discount_order": "В заказе изменена скидка",
"changed_manager": "В заказе изменен менеджер",
"extended_reserve_date": "В заказе продлен резерв",
"change_contract": "К заказу привязан договор",
// shipment
"shipment_created": "Доставка создана",
"changed_type_delivery": "Тип доставки изменен",
"changed_office": "Пункт выдачи заказа изменен",
"changed_delivery_address": "Адрес доставки изменен",
"changed_interval_courier_delivery": "Интервал курьерской доставки изменен",
"changed_courier_delivery_cost": "Стоимость курьерской доставки изменена",
"changed_comment_courier": "Комментарий курьера изменен",
"change_shipment_possibility": "Установлен признак 'Отгружать с ПДЗ'",
"changed_transport_company": "Транспортная компания изменена",
"changed_transport_company_delivery_method": "Способ доставки ТК изменен",
"changed_cdek_region": "Регион ТК изменен",
"changed_tariff": "Тариф ТК изменен",
"purchase_task": "Переведен в статус 'В задании на закупку'",
"purchase_formalized": "Переведен в статус 'В закупке'",
"reserved": "Переведен в статус 'Зарезервирован'",
"assembling": "Переведен в статус 'Комплектуется'",
"relocating": "Переведен в статус 'Перемещение'",
"with_courier": "Переведен в статус 'Передан курьеру'",
"with_carrier": "Переведен в статус 'Передан ТК'",
"ready_for_pickup": "Переведен в статус 'Готов к выдаче'",
"issued": "Переведен в статус 'Выдан'",
// supply
"added": "Товар добавлен",
"removed": "Товар удален",
"changed_discount_supply": "Изменена скидка по товару",
"changed_price": "Цена товара изменена",
"changed_count": "Изменено количество товара",
"purchase_draft": "Переведен в статус 'Закупка в черновике'",
"not_in_stock": "Нет в наличии",
"warehouse_acceptance": "Переведен в статус 'Размещается'",
"returned": "Переведен в статус 'Возвраще'",
"absent": "Переведен в статус 'Возвращен'",
"defect": "Переведен в статус 'Брак'"
}

View File

@@ -1,173 +1,173 @@
{
"orderID": "GUID заказа",
"RootOrder": "GUID корневого заказа",
"Number": "Номер заказа",
"OrderStatus": "Идентификатор статуса заказа",
"CreatedBy": "Идентификатор создателя заказа",
"CreatedFullName": "ФИО создателя заказа",
"UpdatedBy": "Идентификатор пользователя последнего обновившего заказ",
"UpdatedFullName": "ФИО пользователя последнего обновившего заказ",
"UpdateReason": "Идентификатор причины обновления",
"hasTransaction": "Признак наличия транзакции",
"ContractorType": "Тип контрагента",
// order.contractor
"ContractorID": "GUID контрагента",
"ContractorB2C.FullName": "Полное ФИО КА",
"ContractorB2C.Phone": "Номер телефона КА",
"ContractorB2C.Email": "Email адрес КА",
"ContractorB2B.ID":"Идентификатор б2б КА",
"ContractorB2B.Name": "Полное наименование КА",
"ContractorB2B.TIN": "Номер ИНН",
"ContractorB2B.CurrentContactPersonID": "GUID выбранного КЛ для заказа",
"ContractorB2B.Curator.ID": "Идентификатор куратора",
"ContractorB2B.Curator.FullName": "ФИО куратора",
"ContractorB2B.Contract.ID": "Идентификатор договора",
"ContractorB2B.Contract.Number": "Номер договора",
"ContractorB2B.Contract.Kind": "Тип договора",
"ContractorB2B.BaseDocumentSettings.GovernmentContractID": "Идентификатор государственного контракта",
"ContractorB2B.BaseDocumentSettings.InvoiceTransferBasis": "Основание передачи в счете на оплату",
"ContractorB2B.BaseDocumentSettings.ShippingDocuments.TransferBasisDocument": "документ-основание передачи(сдачи)/получения(приемки)",
"ContractorB2B.BaseDocumentSettings.ShippingDocuments.TransferBasisAdditionalDetails": "Дополнительные сведения основания передачи",
"ContractorB2B.BaseDocumentSettings.ShippingDocuments.OtherInformation": "Иные сведения",
// order.recipient
"Recipient.ID": "GUID грузополучателя",
"Recipient.Name": "Имя грузополучателя заказа",
// order.part
"Parts.ShipmentID": "Идентификатор доставки",
"Parts.DeliveryDate":"Дата доставки",
// order.part.supplies
"Parts.Supplies.ID": "Идентификатор поставки в товарной части",
"Parts.Supplies.ProductID": "GUID номенклатуры товара",
"Parts.Supplies.SourceOffice": "Идентификатор офиса с которого зарезервировалс товар",
"Parts.Supplies.ReserveTo": "Дата Резерв До",
"Parts.Supplies.PurchaseIDs": "Идентификаторы закупки",
"Parts.Supplies.UnreserveDate": "Дата фактического снятия с резерва",
"Parts.Supplies.Quantity": "Количество товара",
"Parts.Supplies.StatusItem": "Статус товара",
// order.part.supplies.artifacts
"Parts.Supplies.Artifacts.UUIDWtis": "Идентификатор товара из WTIS",
"Parts.Supplies.Artifacts.StatusItemWtis": "Статус товара из WTIS",
"Parts.Supplies.Artifacts.Attb": "Состояние товара из WTIS",
"Parts.Supplies.Artifacts.AttbSklad": "Статус местонахождения товара",
"Parts.Supplies.Artifacts.AttbShipped": "Признак Товар доставлен",
"Parts.Supplies.Artifacts.AttbReserve": "Атрибут резерва",
"Parts.Supplies.Artifacts.PricePartner": "Цена партнера",
"Parts.Supplies.Artifacts.OplataList": "Ссылка на кассовый оредр к которому привязан товар",
"Parts.Supplies.Artifacts.FlagReturn": "Признак возврат товара",
"Parts.Supplies.Artifacts.FlagReturnerToSklad": "Чекбокс Принят на склад",
"Parts.Supplies.Artifacts.ReturnReason": "Причина возврата",
"Parts.Supplies.Artifacts.Pokupka": "Идентификатор закупки",
"Parts.Supplies.Artifacts.KitID": "Идентификатор набора",
"Parts.Supplies.Artifacts.KitGUID": "Идентификатор (GUID) набора",
"Parts.Supplies.Artifacts.KitMasterGUID": "Идентификатор (GUID) мастер набора",
"Parts.Supplies.Artifacts.DefectAcceptanceActGUID": "Идентификатор акта о браке",
"Parts.Supplies.Artifacts.AppendUser": "Кто добавил поставку в заказ",
"Parts.Supplies.Artifacts.ChangeUser": "Кто изменял поставку в заказе последним",
"Parts.Supplies.Artifacts.DefectID": "Идентификатор дефекта из WMS",
"Parts.Supplies.Artifacts.OnHold": "Флаг товар в процессе переноса",
"Parts.Supplies.CreatedAt": "Когда добавлен товар",
"Parts.Supplies.UpdatedAt": "Когда изменен товар",
// тот же parts, но без parts части, новая схема
// order.part
"ShipmentID": "Идентификатор доставки",
"DeliveryDate":"Дата доставки",
// order.part.supplies
"Supplies.ID": "Идентификатор поставки в товарной части",
"Supplies.ProductID": "GUID номенклатуры товара",
"Supplies.SourceOffice": "Идентификатор офиса с которого зарезервировалс товар",
"Supplies.ReserveTo": "Дата Резерв До",
"Supplies.PurchaseIDs": "Идентификаторы закупки",
"Supplies.UnreserveDate": "Дата фактического снятия с резерва",
"Supplies.Quantity": "Количество товара",
"Supplies.StatusItem": "Статус товара",
// order.part.supplies.artifacts
"Supplies.Artifacts.UUIDWtis": "Идентификатор товара из WTIS",
"Supplies.Artifacts.StatusItemWtis": "Статус товара из WTIS",
"Supplies.Artifacts.Attb": "Состояние товара из WTIS",
"Supplies.Artifacts.AttbSklad": "Статус местонахождения товара",
"Supplies.Artifacts.AttbShipped": "Признак Товар доставлен",
"Supplies.Artifacts.AttbReserve": "Атрибут резерва",
"Supplies.Artifacts.PricePartner": "Цена партнера",
"Supplies.Artifacts.OplataList": "Ссылка на кассовый оредр к которому привязан товар",
"Supplies.Artifacts.FlagReturn": "Признак возврат товара",
"Supplies.Artifacts.FlagReturnerToSklad": "Чекбокс Принят на склад",
"Supplies.Artifacts.ReturnReason": "Причина возврата",
"Supplies.Artifacts.Pokupka": "Идентификатор закупки",
"Supplies.Artifacts.KitID": "Идентификатор набора",
"Supplies.Artifacts.KitGUID": "Идентификатор (GUID) набора",
"Supplies.Artifacts.KitMasterGUID": "Идентификатор (GUID) мастер набора",
"Supplies.Artifacts.DefectAcceptanceActGUID": "Идентификатор акта о браке",
"Supplies.Artifacts.AppendUser": "Кто добавил поставку в заказ",
"Supplies.Artifacts.ChangeUser": "Кто изменял поставку в заказе последним",
"Supplies.Artifacts.DefectID": "Идентификатор дефекта из WMS",
"Supplies.Artifacts.OnHold": "Флаг товар в процессе переноса",
"Supplies.CreatedAt": "Когда добавлен товар",
"Supplies.UpdatedAt": "Когда изменен товар",
// order.properties
"Properties.NumberSchemeBalance": "???", //*шоцетакое
"Properties.AccountingLine": "Линия учета",
"Properties.OriginID": "Источник заказа",
"Properties.SalesChannel": "Идентификатор канала продаж",
"Properties.SiteOrderDate": "date-time || Дата и время заказа выбранное на сайте",
"Properties.PrimSklad": "Комментарий к заказу",
"Properties.Ttn": "Номер ТТН",
"Properties.TtnDate": "Дата ТТН",
"Properties.BillIsAutoOrdered": "",
"Properties.IsAutoReserved": "",
"Properties.IsAutoBotOrder": "",
"Properties.IsPartialShipmentFromSite": "Признак ЧО с сайта",
"Properties.ConsigneeAddress": "Адрес грузополучател",
"Properties.SumOpl": "Сумма оплаты",
"Properties.PaymentPercentage": "Процент оплаченности заказа",
"Properties.Prepayment": "Сумма внесенной предоплаты",
"Properties.ManagerGroup": "Группа менеджера",
"Properties.ManagerID": "GUID группы менеджера заказа (не актуально)",
"Properties.ManagerFullName": "ФИО менеджера в заказе",
"Properties.ManagerPhoneNumber": "Телефона менеджера в заказе",
"Properties.ManagerExtensionNumber": "ДОбавочный телефон менеджера в заказе",
"Properties.BookingEndDates": "Даты истечения бронирования заказа",
"Properties.PaymentDoc": "Наименование платежного документа",
"Properties.IsPrepaymentRequired": "Признак Необходима предоплата",
"Properties.RegionGUID": "GUID региона",
"Properties.RegionName": "Наименование региона",
"Properties.IsTest": "Признак тестовый заказ",
"Properties.ReasonForCancelingOrder": "Причина отмены заказа",
"Properties.TypeOrderFromSite": "Тип заказа с сайта",
"Properties.RecipientName": "Имя грузополучателя заказа",
"Properties.RecipientPhone": "Номер телефона грузополучателя заказа",
"Properties.CreatedAt": "Дата создания заказа",
"Properties.UpdatedAt": "Дата последнего обновления заказа",
// order.artifacts
"Artifacts.UUIDWtis": "GUID идентификатор заказа из WTIS",
"Artifacts.IsNetting": "Чекбокс Взаиморасчеты на вкладке возвраты",
"Artifacts.KkmDate": "Дата ККМ",
"Artifacts.SiteID": "Идентификатор заказа на сайте",
"Artifacts.PartialShipment": "Частичная отгрузка",
"Artifacts.Firma": "GUID идентификатор фирмы отгружающей товар",
"Artifacts.RegionID": "Идентификатор региона из WTIS",
"Artifacts.MainRegionID": "Идентификатор главного региона из WTIS",
"Artifacts.KkmAmount": "Сумма оплаты через ККМ",
"Artifacts.BasketNumber": "Номер корзины",
"Artifacts.OrderMasterSystem": "Признак мастер система по заказу",
"Artifacts.StockMasterSystem": "Признак мастер система по товародвижению",
"Artifacts.ExtContractorOrder": "Дополнительный номер заказа у ЮЛ",
"Artifacts.IsHashRewritten": "Признак что хэш свойств товаров был перезаписан",
"Artifacts.CanShipWithOverdueReceivables": "???",
"Artifacts.ServiceCenter": "???",
"Artifacts.PaymentKkm": "Признак оплата через ККМ",
"Artifacts.PaymentCb": "Признак оплата по квитанции банка",
"Artifacts.PaymentCard": "Признак оплата картой",
"Artifacts.SchetNum": "Номер счета",
"Artifacts.ApproveDate": "Дата проведения заказа во WTIS",
"Artifacts.OrderStateWtis": "Состояние заказа во WTIS",
"Artifacts.AttbOplata": "Статус оплаты",
"Artifacts.AttbPayment": "Признак Оплата получена в старой форме",
"Artifacts.ReturnDocumentBasis": "Номер исходного заказа",
"Artifacts.PaymentDate": "Дата оплаты",
"Artifacts.IsEwalletPayment": "Признак оплата через сайт",
"Artifacts.IsCredit": "Признак кредитного заказа",
"Artifacts.OrderStatusWtis": "Статус заказа из WTIS",
"Artifacts.ConfirmDocumentOpok": "Признак Подтвержден ОПОК",
"Artifacts.IsPromoEnabled": "Признак что акции идут через MS Promo",
"Artifacts.IsYandexEnabled": "Признак что адрес для курьерки передается через Yandex"
}
{
"orderID": "GUID заказа",
"RootOrder": "GUID корневого заказа",
"Number": "Номер заказа",
"OrderStatus": "Идентификатор статуса заказа",
"CreatedBy": "Идентификатор создателя заказа",
"CreatedFullName": "ФИО создателя заказа",
"UpdatedBy": "Идентификатор пользователя последнего обновившего заказ",
"UpdatedFullName": "ФИО пользователя последнего обновившего заказ",
"UpdateReason": "Идентификатор причины обновления",
"hasTransaction": "Признак наличия транзакции",
"ContractorType": "Тип контрагента",
// order.contractor
"ContractorID": "GUID контрагента",
"ContractorB2C.FullName": "Полное ФИО КА",
"ContractorB2C.Phone": "Номер телефона КА",
"ContractorB2C.Email": "Email адрес КА",
"ContractorB2B.ID":"Идентификатор б2б КА",
"ContractorB2B.Name": "Полное наименование КА",
"ContractorB2B.TIN": "Номер ИНН",
"ContractorB2B.CurrentContactPersonID": "GUID выбранного КЛ для заказа",
"ContractorB2B.Curator.ID": "Идентификатор куратора",
"ContractorB2B.Curator.FullName": "ФИО куратора",
"ContractorB2B.Contract.ID": "Идентификатор договора",
"ContractorB2B.Contract.Number": "Номер договора",
"ContractorB2B.Contract.Kind": "Тип договора",
"ContractorB2B.BaseDocumentSettings.GovernmentContractID": "Идентификатор государственного контракта",
"ContractorB2B.BaseDocumentSettings.InvoiceTransferBasis": "Основание передачи в счете на оплату",
"ContractorB2B.BaseDocumentSettings.ShippingDocuments.TransferBasisDocument": "документ-основание передачи(сдачи)/получения(приемки)",
"ContractorB2B.BaseDocumentSettings.ShippingDocuments.TransferBasisAdditionalDetails": "Дополнительные сведения основания передачи",
"ContractorB2B.BaseDocumentSettings.ShippingDocuments.OtherInformation": "Иные сведения",
// order.recipient
"Recipient.ID": "GUID грузополучателя",
"Recipient.Name": "Имя грузополучателя заказа",
// order.part
"Parts.ShipmentID": "Идентификатор доставки",
"Parts.DeliveryDate":"Дата доставки",
// order.part.supplies
"Parts.Supplies.ID": "Идентификатор поставки в товарной части",
"Parts.Supplies.ProductID": "GUID номенклатуры товара",
"Parts.Supplies.SourceOffice": "Идентификатор офиса с которого зарезервировалс товар",
"Parts.Supplies.ReserveTo": "Дата Резерв До",
"Parts.Supplies.PurchaseIDs": "Идентификаторы закупки",
"Parts.Supplies.UnreserveDate": "Дата фактического снятия с резерва",
"Parts.Supplies.Quantity": "Количество товара",
"Parts.Supplies.StatusItem": "Статус товара",
// order.part.supplies.artifacts
"Parts.Supplies.Artifacts.UUIDWtis": "Идентификатор товара из WTIS",
"Parts.Supplies.Artifacts.StatusItemWtis": "Статус товара из WTIS",
"Parts.Supplies.Artifacts.Attb": "Состояние товара из WTIS",
"Parts.Supplies.Artifacts.AttbSklad": "Статус местонахождения товара",
"Parts.Supplies.Artifacts.AttbShipped": "Признак Товар доставлен",
"Parts.Supplies.Artifacts.AttbReserve": "Атрибут резерва",
"Parts.Supplies.Artifacts.PricePartner": "Цена партнера",
"Parts.Supplies.Artifacts.OplataList": "Ссылка на кассовый оредр к которому привязан товар",
"Parts.Supplies.Artifacts.FlagReturn": "Признак возврат товара",
"Parts.Supplies.Artifacts.FlagReturnerToSklad": "Чекбокс Принят на склад",
"Parts.Supplies.Artifacts.ReturnReason": "Причина возврата",
"Parts.Supplies.Artifacts.Pokupka": "Идентификатор закупки",
"Parts.Supplies.Artifacts.KitID": "Идентификатор набора",
"Parts.Supplies.Artifacts.KitGUID": "Идентификатор (GUID) набора",
"Parts.Supplies.Artifacts.KitMasterGUID": "Идентификатор (GUID) мастер набора",
"Parts.Supplies.Artifacts.DefectAcceptanceActGUID": "Идентификатор акта о браке",
"Parts.Supplies.Artifacts.AppendUser": "Кто добавил поставку в заказ",
"Parts.Supplies.Artifacts.ChangeUser": "Кто изменял поставку в заказе последним",
"Parts.Supplies.Artifacts.DefectID": "Идентификатор дефекта из WMS",
"Parts.Supplies.Artifacts.OnHold": "Флаг товар в процессе переноса",
"Parts.Supplies.CreatedAt": "Когда добавлен товар",
"Parts.Supplies.UpdatedAt": "Когда изменен товар",
// тот же parts, но без parts части, новая схема
// order.part
"ShipmentID": "Идентификатор доставки",
"DeliveryDate":"Дата доставки",
// order.part.supplies
"Supplies.ID": "Идентификатор поставки в товарной части",
"Supplies.ProductID": "GUID номенклатуры товара",
"Supplies.SourceOffice": "Идентификатор офиса с которого зарезервировалс товар",
"Supplies.ReserveTo": "Дата Резерв До",
"Supplies.PurchaseIDs": "Идентификаторы закупки",
"Supplies.UnreserveDate": "Дата фактического снятия с резерва",
"Supplies.Quantity": "Количество товара",
"Supplies.StatusItem": "Статус товара",
// order.part.supplies.artifacts
"Supplies.Artifacts.UUIDWtis": "Идентификатор товара из WTIS",
"Supplies.Artifacts.StatusItemWtis": "Статус товара из WTIS",
"Supplies.Artifacts.Attb": "Состояние товара из WTIS",
"Supplies.Artifacts.AttbSklad": "Статус местонахождения товара",
"Supplies.Artifacts.AttbShipped": "Признак Товар доставлен",
"Supplies.Artifacts.AttbReserve": "Атрибут резерва",
"Supplies.Artifacts.PricePartner": "Цена партнера",
"Supplies.Artifacts.OplataList": "Ссылка на кассовый оредр к которому привязан товар",
"Supplies.Artifacts.FlagReturn": "Признак возврат товара",
"Supplies.Artifacts.FlagReturnerToSklad": "Чекбокс Принят на склад",
"Supplies.Artifacts.ReturnReason": "Причина возврата",
"Supplies.Artifacts.Pokupka": "Идентификатор закупки",
"Supplies.Artifacts.KitID": "Идентификатор набора",
"Supplies.Artifacts.KitGUID": "Идентификатор (GUID) набора",
"Supplies.Artifacts.KitMasterGUID": "Идентификатор (GUID) мастер набора",
"Supplies.Artifacts.DefectAcceptanceActGUID": "Идентификатор акта о браке",
"Supplies.Artifacts.AppendUser": "Кто добавил поставку в заказ",
"Supplies.Artifacts.ChangeUser": "Кто изменял поставку в заказе последним",
"Supplies.Artifacts.DefectID": "Идентификатор дефекта из WMS",
"Supplies.Artifacts.OnHold": "Флаг товар в процессе переноса",
"Supplies.CreatedAt": "Когда добавлен товар",
"Supplies.UpdatedAt": "Когда изменен товар",
// order.properties
"Properties.NumberSchemeBalance": "???", //*шоцетакое
"Properties.AccountingLine": "Линия учета",
"Properties.OriginID": "Источник заказа",
"Properties.SalesChannel": "Идентификатор канала продаж",
"Properties.SiteOrderDate": "date-time || Дата и время заказа выбранное на сайте",
"Properties.PrimSklad": "Комментарий к заказу",
"Properties.Ttn": "Номер ТТН",
"Properties.TtnDate": "Дата ТТН",
"Properties.BillIsAutoOrdered": "",
"Properties.IsAutoReserved": "",
"Properties.IsAutoBotOrder": "",
"Properties.IsPartialShipmentFromSite": "Признак ЧО с сайта",
"Properties.ConsigneeAddress": "Адрес грузополучател",
"Properties.SumOpl": "Сумма оплаты",
"Properties.PaymentPercentage": "Процент оплаченности заказа",
"Properties.Prepayment": "Сумма внесенной предоплаты",
"Properties.ManagerGroup": "Группа менеджера",
"Properties.ManagerID": "GUID группы менеджера заказа (не актуально)",
"Properties.ManagerFullName": "ФИО менеджера в заказе",
"Properties.ManagerPhoneNumber": "Телефона менеджера в заказе",
"Properties.ManagerExtensionNumber": "ДОбавочный телефон менеджера в заказе",
"Properties.BookingEndDates": "Даты истечения бронирования заказа",
"Properties.PaymentDoc": "Наименование платежного документа",
"Properties.IsPrepaymentRequired": "Признак Необходима предоплата",
"Properties.RegionGUID": "GUID региона",
"Properties.RegionName": "Наименование региона",
"Properties.IsTest": "Признак тестовый заказ",
"Properties.ReasonForCancelingOrder": "Причина отмены заказа",
"Properties.TypeOrderFromSite": "Тип заказа с сайта",
"Properties.RecipientName": "Имя грузополучателя заказа",
"Properties.RecipientPhone": "Номер телефона грузополучателя заказа",
"Properties.CreatedAt": "Дата создания заказа",
"Properties.UpdatedAt": "Дата последнего обновления заказа",
// order.artifacts
"Artifacts.UUIDWtis": "GUID идентификатор заказа из WTIS",
"Artifacts.IsNetting": "Чекбокс Взаиморасчеты на вкладке возвраты",
"Artifacts.KkmDate": "Дата ККМ",
"Artifacts.SiteID": "Идентификатор заказа на сайте",
"Artifacts.PartialShipment": "Частичная отгрузка",
"Artifacts.Firma": "GUID идентификатор фирмы отгружающей товар",
"Artifacts.RegionID": "Идентификатор региона из WTIS",
"Artifacts.MainRegionID": "Идентификатор главного региона из WTIS",
"Artifacts.KkmAmount": "Сумма оплаты через ККМ",
"Artifacts.BasketNumber": "Номер корзины",
"Artifacts.OrderMasterSystem": "Признак мастер система по заказу",
"Artifacts.StockMasterSystem": "Признак мастер система по товародвижению",
"Artifacts.ExtContractorOrder": "Дополнительный номер заказа у ЮЛ",
"Artifacts.IsHashRewritten": "Признак что хэш свойств товаров был перезаписан",
"Artifacts.CanShipWithOverdueReceivables": "???",
"Artifacts.ServiceCenter": "???",
"Artifacts.PaymentKkm": "Признак оплата через ККМ",
"Artifacts.PaymentCb": "Признак оплата по квитанции банка",
"Artifacts.PaymentCard": "Признак оплата картой",
"Artifacts.SchetNum": "Номер счета",
"Artifacts.ApproveDate": "Дата проведения заказа во WTIS",
"Artifacts.OrderStateWtis": "Состояние заказа во WTIS",
"Artifacts.AttbOplata": "Статус оплаты",
"Artifacts.AttbPayment": "Признак Оплата получена в старой форме",
"Artifacts.ReturnDocumentBasis": "Номер исходного заказа",
"Artifacts.PaymentDate": "Дата оплаты",
"Artifacts.IsEwalletPayment": "Признак оплата через сайт",
"Artifacts.IsCredit": "Признак кредитного заказа",
"Artifacts.OrderStatusWtis": "Статус заказа из WTIS",
"Artifacts.ConfirmDocumentOpok": "Признак Подтвержден ОПОК",
"Artifacts.IsPromoEnabled": "Признак что акции идут через MS Promo",
"Artifacts.IsYandexEnabled": "Признак что адрес для курьерки передается через Yandex"
}

View File

@@ -1,64 +1,64 @@
{
"order": "9bd687f3-fb06-4cd3-8a30-89d0c683ac9e",
"total": 6,
"orderChanges": [
{
"type": "created_order",
"entityType": "order",
"id": "ord-051224-qwjerkmaw",
"isTransaction": "False",
"reason": "manager",
"valueChanges": [
{
"uuid": {
"before": "",
"after": "be917957-7056-4a07-a462-2164bdc5f021"
},
"number": {
"before": "",
"after": "1111-123456-12345"
},
"contractorType": {
"before": 0,
"after": 3
},
"originId": {
"before": "",
"after": "24"
},
"managerOrder": {
"before": "",
"after": "a0664dd8-bfae-4190-898c-16aae492f72a"
},
"orderMasterSystem": {
"before": "",
"after": "WTIS"
}
}
]
},
{
"type": "change_contragent",
"entityType": "order",
"id": "ord-051224-nzkqmwhr",
"isTransaction": "False",
"reason": "manager",
"valueChanges": [
{
"contractorPhone": {
"before": "",
"after": "9876543210"
},
"contractorEmail": {
"before": "",
"after": "test@test.ru"
},
"contratorName": {
"before": "",
"after": "Тестов Тест Тестович"
}
}
]
}
]
{
"order": "9bd687f3-fb06-4cd3-8a30-89d0c683ac9e",
"total": 6,
"orderChanges": [
{
"type": "created_order",
"entityType": "order",
"id": "ord-051224-qwjerkmaw",
"isTransaction": "False",
"reason": "manager",
"valueChanges": [
{
"uuid": {
"before": "",
"after": "be917957-7056-4a07-a462-2164bdc5f021"
},
"number": {
"before": "",
"after": "1111-123456-12345"
},
"contractorType": {
"before": 0,
"after": 3
},
"originId": {
"before": "",
"after": "24"
},
"managerOrder": {
"before": "",
"after": "a0664dd8-bfae-4190-898c-16aae492f72a"
},
"orderMasterSystem": {
"before": "",
"after": "WTIS"
}
}
]
},
{
"type": "change_contragent",
"entityType": "order",
"id": "ord-051224-nzkqmwhr",
"isTransaction": "False",
"reason": "manager",
"valueChanges": [
{
"contractorPhone": {
"before": "",
"after": "9876543210"
},
"contractorEmail": {
"before": "",
"after": "test@test.ru"
},
"contratorName": {
"before": "",
"after": "Тестов Тест Тестович"
}
}
]
}
]
}

View File

@@ -1,33 +1,33 @@
@startuml
scale 1200*1200
mainframe Получение свободных остатков
actor Пользователь as user
participant ARM as ARM
participant OMS as OMS
collections Cache as cache
participant Shcat as Shcat
participant Susanin as Susanin
autonumber
user -> ARM: Нажимает на остатки товара\nв товарной строке заказа
ARM -> OMS: API GET /quantity-list-by-office
activate OMS
OMS -> OMS: валидирует запрос
OMS -> cache: Забрать все офисы из кэша
activate cache
return answer
OMS -> Shcat: POST method rests.get
activate Shcat
return answer API POST
OMS -> Susanin: POST method get_logistic_chains_with_priority
activate Susanin
return answer API POST
OMS -> OMS: Формирует два массива:\n1. По лог.цепям\n2. Прочие склады
return answer API GET
ARM --> user: Рендерит данные в модальном окне
@startuml
scale 1200*1200
mainframe Получение свободных остатков
actor Пользователь as user
participant ARM as ARM
participant OMS as OMS
collections Cache as cache
participant Shcat as Shcat
participant Susanin as Susanin
autonumber
user -> ARM: Нажимает на остатки товара\nв товарной строке заказа
ARM -> OMS: API GET /quantity-list-by-office
activate OMS
OMS -> OMS: валидирует запрос
OMS -> cache: Забрать все офисы из кэша
activate cache
return answer
OMS -> Shcat: POST method rests.get
activate Shcat
return answer API POST
OMS -> Susanin: POST method get_logistic_chains_with_priority
activate Susanin
return answer API POST
OMS -> OMS: Формирует два массива:\n1. По лог.цепям\n2. Прочие склады
return answer API GET
ARM --> user: Рендерит данные в модальном окне
@enduml

View File

@@ -1,24 +1,24 @@
@startuml
scale 1200*1200
mainframe Получение остатков под резервом
actor Пользователь as user
participant ARM as ARM
participant OMS as OMS
participant Susanin as Susanin
autonumber
user -> ARM: Нажимает на остатки товара\nв товарной строке заказа
ARM -> OMS: API GET /quantity-list-by-office
activate OMS
OMS -> OMS: валидирует запрос
OMS -> Susanin: POST method get_logistic_chains_with_priority
activate Susanin
return answer API POST
OMS -> OMS: запрос в mongodb Order с фильтрами по товару
OMS -> OMS: Формирует два массива:\n1. По лог.цепям\n2. Прочие склады
return answer API GET
ARM --> user: Рендерит данные в модальном окне
@startuml
scale 1200*1200
mainframe Получение остатков под резервом
actor Пользователь as user
participant ARM as ARM
participant OMS as OMS
participant Susanin as Susanin
autonumber
user -> ARM: Нажимает на остатки товара\nв товарной строке заказа
ARM -> OMS: API GET /quantity-list-by-office
activate OMS
OMS -> OMS: валидирует запрос
OMS -> Susanin: POST method get_logistic_chains_with_priority
activate Susanin
return answer API POST
OMS -> OMS: запрос в mongodb Order с фильтрами по товару
OMS -> OMS: Формирует два массива:\n1. По лог.цепям\n2. Прочие склады
return answer API GET
ARM --> user: Рендерит данные в модальном окне
@enduml

View File

@@ -1,52 +1,52 @@
@startuml
mainframe Получение заказов для отображения фильтров
autonumber
actor user
participant ARM
participant OMS
collections Redis
participant MSKB
database Database
user -> ARM: Устанавливает фильтры
alt устанавливает фильтр по ПВЗ
user -> ARM: Начинает вводить наименование ПВЗ
ARM -> OMS: Запрашивает список подходящих ПВЗ
OMS -> Redis: Запрашивает список ПВЗ
Redis --> OMS: Возвращает список ПВЗ
OMS --> ARM: Возвращает список ПВЗ
user -> ARM: Выбирает необходимый ПВЗ
ARM -> ARM: Запоминает идентификатор ПВЗ
else устанавливает фильтр по менеджеру
user -> ARM: Начинает вводить ФИО менеджера
ARM -> OMS: Запрашивает список подходящих менеджеров
OMS -> Redis: Запрашивает список менеджеров
Redis --> OMS: Возвращает список менеджеров
OMS --> ARM: Возвращает список менеджеров
user -> ARM: Выбирает необходимого менеджера
ARM -> ARM: Запоминает идентификатор менеджера
else устанавливает фильтр по КА
user -> ARM: Нажимает на фильтр по КА
ARM --> user: Открывает модальное окно "Поиск КА"
user -> ARM: Ищет необходимого КА
ARM -> OMS: Запрашивает список подходящих КА
OMS -> MSKB: Запрашивает список КА
MSKB --> OMS: Возвращает список КА
OMS --> ARM: Возвращает список КА
user -> ARM: Выбирает необходимого КА
ARM -> ARM: Запоминает идентификатор КА
end
alt Необходимы сортировки
user -> ARM: Выбирает необходимую сортировку
ARM -> ARM: Запоминает выбор пользователя
else Не устанавливаются сортировки
end
user -> ARM: Нажимает кнопку Enter или "Обновить"
ARM -> ARM: Формирует запрос на bf
ARM -> OMS: Отправляет запрос
OMS -> Database: Запрашивает список заказов\nс установленными фильтрами
Database --> OMS: Ответ
OMS --> ARM: Ответ
ARM --> user: Отображает журнал заказов
@startuml
mainframe Получение заказов для отображения фильтров
autonumber
actor user
participant ARM
participant OMS
collections Redis
participant MSKB
database Database
user -> ARM: Устанавливает фильтры
alt устанавливает фильтр по ПВЗ
user -> ARM: Начинает вводить наименование ПВЗ
ARM -> OMS: Запрашивает список подходящих ПВЗ
OMS -> Redis: Запрашивает список ПВЗ
Redis --> OMS: Возвращает список ПВЗ
OMS --> ARM: Возвращает список ПВЗ
user -> ARM: Выбирает необходимый ПВЗ
ARM -> ARM: Запоминает идентификатор ПВЗ
else устанавливает фильтр по менеджеру
user -> ARM: Начинает вводить ФИО менеджера
ARM -> OMS: Запрашивает список подходящих менеджеров
OMS -> Redis: Запрашивает список менеджеров
Redis --> OMS: Возвращает список менеджеров
OMS --> ARM: Возвращает список менеджеров
user -> ARM: Выбирает необходимого менеджера
ARM -> ARM: Запоминает идентификатор менеджера
else устанавливает фильтр по КА
user -> ARM: Нажимает на фильтр по КА
ARM --> user: Открывает модальное окно "Поиск КА"
user -> ARM: Ищет необходимого КА
ARM -> OMS: Запрашивает список подходящих КА
OMS -> MSKB: Запрашивает список КА
MSKB --> OMS: Возвращает список КА
OMS --> ARM: Возвращает список КА
user -> ARM: Выбирает необходимого КА
ARM -> ARM: Запоминает идентификатор КА
end
alt Необходимы сортировки
user -> ARM: Выбирает необходимую сортировку
ARM -> ARM: Запоминает выбор пользователя
else Не устанавливаются сортировки
end
user -> ARM: Нажимает кнопку Enter или "Обновить"
ARM -> ARM: Формирует запрос на bf
ARM -> OMS: Отправляет запрос
OMS -> Database: Запрашивает список заказов\nс установленными фильтрами
Database --> OMS: Ответ
OMS --> ARM: Ответ
ARM --> user: Отображает журнал заказов
@enduml

View File

@@ -1,29 +1,29 @@
@startuml
mainframe Получение заказов для отображения фильтров
autonumber
actor user
participant ARM
participant OMS
database Database
user -> ARM: Вводит один или несколько номеров заказов
ARM -> ARM: Делит строку по пробелам
alt Необходимы сортировки
user -> ARM: Выбирает необходимую сортировку
ARM -> ARM: Запоминает выбор пользователя
else Не устанавливаются сортировки
end
user -> ARM: Нажимает кнопку Enter или "Обновить"
ARM -> ARM: Формирует запрос
ARM -> OMS: Отправляет запрос на bf
OMS -> OMS: Проверяет есть ли объекты длиной 5 символов
alt Если такие объекты есть
OMS -> OMS: Формирует запрос с регулярным выражением,\nгде поиск осуществляется\nпо последним 5 символам строки
else Если таких объектов нет
OMS -> OMS: Формирует стандартный запрос в БД
end
OMS -> Database: Запрашивает список заказов по выбранным параметрам
Database --> OMS: Ответ
OMS --> ARM: Ответ
ARM --> user: Отображает журнал заказов
@startuml
mainframe Получение заказов для отображения фильтров
autonumber
actor user
participant ARM
participant OMS
database Database
user -> ARM: Вводит один или несколько номеров заказов
ARM -> ARM: Делит строку по пробелам
alt Необходимы сортировки
user -> ARM: Выбирает необходимую сортировку
ARM -> ARM: Запоминает выбор пользователя
else Не устанавливаются сортировки
end
user -> ARM: Нажимает кнопку Enter или "Обновить"
ARM -> ARM: Формирует запрос
ARM -> OMS: Отправляет запрос на bf
OMS -> OMS: Проверяет есть ли объекты длиной 5 символов
alt Если такие объекты есть
OMS -> OMS: Формирует запрос с регулярным выражением,\nгде поиск осуществляется\nпо последним 5 символам строки
else Если таких объектов нет
OMS -> OMS: Формирует стандартный запрос в БД
end
OMS -> Database: Запрашивает список заказов по выбранным параметрам
Database --> OMS: Ответ
OMS --> ARM: Ответ
ARM --> user: Отображает журнал заказов
@enduml

View File

@@ -1,38 +1,38 @@
@startuml
scale 800*800
mainframe Взаимодействие с историей изменения заказ
actor Пользователь as user
participant ARM as ARM
participant OMS as OMS
participant History as History
autonumber
user -> ARM: Нажимает кнопку "История изменений"
ARM -> OMS: REST GET /order-history
OMS -> History: REST GET api/v1/order_history_short/
History --> OMS: answer
OMS --> ARM: answer
ARM --> user: Рендерит страницу "История изменений"
user -> ARM: Нажимает кнопку "Подробнее" в корректировке
ARM -> OMS: REST GET /order-history-event
OMS -> History: REST GET api/v1/event_changed/
History --> OMS: answer
OMS --> ARM: answer
ARM --> user: Отображает полную информацию о корректировке
user -> ARM: Выбирает фильтр по дате или по типу корректировки
ARM -> OMS: REST GET /order-history-filters
OMS -> History: REST GET api/v1/events_from_entity/
History --> OMS: answer
OMS --> ARM: answer
ARM --> user: Отображает корректировки по заданным условиям
user -> ARM: Вводит идентификатор корректировки и нажимает Enter
ARM -> OMS: REST GET /order-history-event
OMS -> History: REST GET api/v1/event_changed/
History --> OMS: answer
OMS --> ARM: answer
ARM --> user: Отображает корректировки по заданным условиям
@startuml
scale 800*800
mainframe Взаимодействие с историей изменения заказ
actor Пользователь as user
participant ARM as ARM
participant OMS as OMS
participant History as History
autonumber
user -> ARM: Нажимает кнопку "История изменений"
ARM -> OMS: REST GET /order-history
OMS -> History: REST GET api/v1/order_history_short/
History --> OMS: answer
OMS --> ARM: answer
ARM --> user: Рендерит страницу "История изменений"
user -> ARM: Нажимает кнопку "Подробнее" в корректировке
ARM -> OMS: REST GET /order-history-event
OMS -> History: REST GET api/v1/event_changed/
History --> OMS: answer
OMS --> ARM: answer
ARM --> user: Отображает полную информацию о корректировке
user -> ARM: Выбирает фильтр по дате или по типу корректировки
ARM -> OMS: REST GET /order-history-filters
OMS -> History: REST GET api/v1/events_from_entity/
History --> OMS: answer
OMS --> ARM: answer
ARM --> user: Отображает корректировки по заданным условиям
user -> ARM: Вводит идентификатор корректировки и нажимает Enter
ARM -> OMS: REST GET /order-history-event
OMS -> History: REST GET api/v1/event_changed/
History --> OMS: answer
OMS --> ARM: answer
ARM --> user: Отображает корректировки по заданным условиям
@enduml

View File

@@ -1,23 +1,23 @@
@startuml
mainframe Добавление/удаление заметки пользователя в ЛК
scale 1500x1500
actor user as user
participant ARM
participant Gateway
participant personalCabinet
autonumber
user -> ARM: Нажимает кнопку "Главная"
alt Пользователь ввел текст и снял фокус с поля
ARM -> Gateway: Отправляет запрос на\nPUT personal-cabinet/v1/note
else Пользователь нажал кнопку "Очистить"
ARM -> Gateway: Отправляет запрос на\nDELETE personal-cabinet/v1/note
end
ARM -> Gateway: Отправляет запрос на GET personal-cabinet/v1/note
Gateway -> personalCabinet: Вызывает методы для\nизменения заметок по пользователю
personalCabinet --> Gateway: answer
Gateway --> ARM: answer
ARM --> user: answer
@startuml
mainframe Добавление/удаление заметки пользователя в ЛК
scale 1500x1500
actor user as user
participant ARM
participant Gateway
participant personalCabinet
autonumber
user -> ARM: Нажимает кнопку "Главная"
alt Пользователь ввел текст и снял фокус с поля
ARM -> Gateway: Отправляет запрос на\nPUT personal-cabinet/v1/note
else Пользователь нажал кнопку "Очистить"
ARM -> Gateway: Отправляет запрос на\nDELETE personal-cabinet/v1/note
end
ARM -> Gateway: Отправляет запрос на GET personal-cabinet/v1/note
Gateway -> personalCabinet: Вызывает методы для\nизменения заметок по пользователю
personalCabinet --> Gateway: answer
Gateway --> ARM: answer
ARM --> user: answer
@enduml

View File

@@ -1,23 +1,23 @@
@startuml
mainframe Взаимодействие с избранным
scale 1500x1500
actor user as user
participant ARM
participant Gateway
participant Order
autonumber
user -> ARM: Нажимает иконку\nсердечка в любом заказе
alt Поле было предварительно выделено (активное состояние)
ARM -> Gateway: Отправляет запрос на\nDELETE orders/v1/{orderID}/favorite
else Поле было предварительно не выделено (не активное состояние)
ARM -> Gateway: Отправляет запрос на\nPOST orders/v1/{orderID}/favorite
end
Gateway -> Order: Вызывает метод\nвзаимодействия с заказом
Order -> Order: Обновляет модель order\n(Либо добавляет uuid юзера\nлибо удаляет)
Order --> Gateway: answer
Gateway --> ARM: answer
ARM --> user: answer
@startuml
mainframe Взаимодействие с избранным
scale 1500x1500
actor user as user
participant ARM
participant Gateway
participant Order
autonumber
user -> ARM: Нажимает иконку\nсердечка в любом заказе
alt Поле было предварительно выделено (активное состояние)
ARM -> Gateway: Отправляет запрос на\nDELETE orders/v1/{orderID}/favorite
else Поле было предварительно не выделено (не активное состояние)
ARM -> Gateway: Отправляет запрос на\nPOST orders/v1/{orderID}/favorite
end
Gateway -> Order: Вызывает метод\nвзаимодействия с заказом
Order -> Order: Обновляет модель order\n(Либо добавляет uuid юзера\nлибо удаляет)
Order --> Gateway: answer
Gateway --> ARM: answer
ARM --> user: answer
@enduml

View File

@@ -1,17 +1,17 @@
@startuml
mainframe Получение данных о заказах для ЛК пользователя
scale 1500x1500
actor user as user
participant ARM
participant Gateway
participant Order
autonumber
user -> ARM: Нажимает кнопку "Главная"
user -> ARM: Нажимает кнопку "Статистика по заказам"
ARM -> Gateway: Отправляет запрос на GET personal-cabinet/v1/stats
Gateway -> Order: Вызывает методы для получения всех необходимых срезов по заказам
Order --> Gateway: answer
Gateway --> ARM: answer
ARM --> user: Рендерит информационные блоки
@startuml
mainframe Получение данных о заказах для ЛК пользователя
scale 1500x1500
actor user as user
participant ARM
participant Gateway
participant Order
autonumber
user -> ARM: Нажимает кнопку "Главная"
user -> ARM: Нажимает кнопку "Статистика по заказам"
ARM -> Gateway: Отправляет запрос на GET personal-cabinet/v1/stats
Gateway -> Order: Вызывает методы для получения всех необходимых срезов по заказам
Order --> Gateway: answer
Gateway --> ARM: answer
ARM --> user: Рендерит информационные блоки
@enduml

View File

@@ -1,16 +1,16 @@
@startuml
mainframe Получение заметки пользователя для ЛК
scale 1500x1500
actor user as user
participant ARM
participant Gateway
participant personalCabinet
autonumber
user -> ARM: Нажимает кнопку "Главная"
ARM -> Gateway: Отправляет запрос на GET personal-cabinet/v1/note
Gateway -> personalCabinet: Вызывает методы для получения заметок по пользователю
personalCabinet --> Gateway: answer
Gateway --> ARM: answer
ARM --> user: Рендерит текст в блоке заметок
@startuml
mainframe Получение заметки пользователя для ЛК
scale 1500x1500
actor user as user
participant ARM
participant Gateway
participant personalCabinet
autonumber
user -> ARM: Нажимает кнопку "Главная"
ARM -> Gateway: Отправляет запрос на GET personal-cabinet/v1/note
Gateway -> personalCabinet: Вызывает методы для получения заметок по пользователю
personalCabinet --> Gateway: answer
Gateway --> ARM: answer
ARM --> user: Рендерит текст в блоке заметок
@enduml

View File

@@ -1,58 +1,58 @@
@startuml
mainframe TO BE применение акций и скидок в заказе B2C
scale 1500x1500
actor user as user
participant ARM
participant Sherlock
participant Gateway
participant Order
participant PDM
participant Druz
participant SCROOGE
participant Promo
autonumber
user -> ARM: Нажимает кнопку "Применить скидки"
ARM -> ARM: Рендерит модальное окно
ARM -> ARM: Акции сайта - чекбокс активен
ARM -> ARM: Скидки, выбрано: Без скидки
autonumber 5.1
alt Выбирает только скидки уровня ОПТ
user -> ARM: Выбирает тип ОПТа для клиента
user -> ARM: Снимает чекбокс "Акции сайта"
user -> ARM: Нажимает кнопку "Применить"
ARM -> Gateway: Передает запрос
Gateway -> Gateway: Получает название региона из кэша
Gateway -> SCROOGE: Запрашивает цены из SCROOGE согласно уровню ОПТа
SCROOGE --> Gateway: answer
autonumber 6.1
else Выбирает только акции сайта
user -> ARM: Оставляет чекбокс "Акции сайта"
user -> ARM: Оставляет скидку с типом "Без скидки"
user -> ARM: Нажимает кнопку "Применить"
ARM -> Gateway: Передает запрос
Gateway -> Gateway: Получает название региона из кэша
Gateway -> Gateway: Готовит запрос в promo
Gateway -> Promo: Запрашивает акции и цены по товарам из Promo
Promo --> Gateway: answer
autonumber 7.1
else Выбирает акции и скидки ОПТ
user -> ARM: Выбирает тип ОПТа для клиента
user -> ARM: Оставляет чекбокс "Акции сайта"
user -> ARM: Нажимает кнопку "Применить"
ARM -> Gateway: Передает запрос
Gateway -> Gateway: Получает название региона из кэша
Gateway -> Gateway: Готовит запрос в promo
Gateway -> Promo: Запрашивает акции и цены по товарам из Promo
Promo --> Gateway: answer
Gateway -> SCROOGE: Запрашивает цены из SCROOGE согласно уровню ОПТа
SCROOGE --> Gateway: answer
Gateway -> Gateway: Применяет наименьшие цены\nк каждому из товаров
end
autonumber 8
Gateway -> Order: Записывает изменения в модель
Order --> Gateway: Изменения успешно применены
Gateway -> Gateway: Собирает ответ для frontend
Gateway --> ARM: Answer
ARM -> user: Отображает примененные акции
@startuml
mainframe TO BE применение акций и скидок в заказе B2C
scale 1500x1500
actor user as user
participant ARM
participant Sherlock
participant Gateway
participant Order
participant PDM
participant Druz
participant SCROOGE
participant Promo
autonumber
user -> ARM: Нажимает кнопку "Применить скидки"
ARM -> ARM: Рендерит модальное окно
ARM -> ARM: Акции сайта - чекбокс активен
ARM -> ARM: Скидки, выбрано: Без скидки
autonumber 5.1
alt Выбирает только скидки уровня ОПТ
user -> ARM: Выбирает тип ОПТа для клиента
user -> ARM: Снимает чекбокс "Акции сайта"
user -> ARM: Нажимает кнопку "Применить"
ARM -> Gateway: Передает запрос
Gateway -> Gateway: Получает название региона из кэша
Gateway -> SCROOGE: Запрашивает цены из SCROOGE согласно уровню ОПТа
SCROOGE --> Gateway: answer
autonumber 6.1
else Выбирает только акции сайта
user -> ARM: Оставляет чекбокс "Акции сайта"
user -> ARM: Оставляет скидку с типом "Без скидки"
user -> ARM: Нажимает кнопку "Применить"
ARM -> Gateway: Передает запрос
Gateway -> Gateway: Получает название региона из кэша
Gateway -> Gateway: Готовит запрос в promo
Gateway -> Promo: Запрашивает акции и цены по товарам из Promo
Promo --> Gateway: answer
autonumber 7.1
else Выбирает акции и скидки ОПТ
user -> ARM: Выбирает тип ОПТа для клиента
user -> ARM: Оставляет чекбокс "Акции сайта"
user -> ARM: Нажимает кнопку "Применить"
ARM -> Gateway: Передает запрос
Gateway -> Gateway: Получает название региона из кэша
Gateway -> Gateway: Готовит запрос в promo
Gateway -> Promo: Запрашивает акции и цены по товарам из Promo
Promo --> Gateway: answer
Gateway -> SCROOGE: Запрашивает цены из SCROOGE согласно уровню ОПТа
SCROOGE --> Gateway: answer
Gateway -> Gateway: Применяет наименьшие цены\nк каждому из товаров
end
autonumber 8
Gateway -> Order: Записывает изменения в модель
Order --> Gateway: Изменения успешно применены
Gateway -> Gateway: Собирает ответ для frontend
Gateway --> ARM: Answer
ARM -> user: Отображает примененные акции
@enduml

View File

@@ -1,251 +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 || Комментарий для курьера"
}
}
}
}
@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