/*
* Argis id заказа
*/
@Schema(description = "ID заказа", example = "67093253193")
long id,
/*
* Внутренний номер заказа (трек номер) пр. RU009728963
*/
@Schema(description = "Номер заказа", example = "RU119356757")
String orderNum,
/*
* Внешний номер заказа (трек номер)
*/
@Schema(description = "Трек-номер интернет-магазина", example = "В0101312179")
String externalOrderNum,
/*
* Текущий статус
*/
@Schema(description = "Текущий статус", example = "Прибыл в сортировочный центр доставки")
String currentStatusName,
/*
* Дата доставки
*/
@Schema(description = "Планируемая дата доставки", example = "05.06.2026")
@JsonFormat(pattern = DATE_PATTERN)
LocalDate deliveryDate,
/*
* Тип даты доставки
*/
@Schema(description = "Тип даты доставки", example = "PLAN_DELIVERY_DATE")
DateType deliveryDateType,
/*
* Контрольная дата доставки
*/
@Schema(description = "Контрольная дата доставки", example = "2026-06-05")
@JsonFormat(pattern = DATE_PATTERN)
LocalDate controlDeliveryDate,
/*
* Интервал времени получения заказа
*/
@Schema(description = "Интервал получения", example = "9-18")
String orderReceiveTimeInterval,
/*
* Бесплатное хранение до
*/
@Schema(description = "Бесплатное хранение до", example = "05.06.2026")
@JsonFormat(pattern = DATE_PATTERN)
LocalDate endFreeStoreDate,
/*
* Статусы
*/
@Schema(description = "Статусы",
type = "array",
example = """
[
{
"date": "01.06.2026",
"name": "Принят у отправителя",
"isViewed": true
},
{
"date": "01.06.2026",
"name": "Назначен курьер для приема заказа",
"isViewed": true
},
{
"date": "01.06.2026",
"name": "Заказ создан, ожидаем груз от отправителя",
"isViewed": true
}
]"""
)
List<OrderDetailStatusV2> statuses,
/*
* Информация об адресе получателя
*/
@Schema(
description = "Адрес получателя",
type = "object",
example = """
{
"lat": 55.794372,
"lon": 37.522691,
"address": "Москва, ул Викторенко, дом 16, стр. 1"
}"""
)
ScreenOneAddressTo addressTo,
/*
* Признак того, что заказ в данный момент изменяется
*/
@Schema(description = "Признак того, что заказ в данный момент изменяется", example = "false")
boolean isChanging,
/*
* Признак того, что заказ в данный момент отменяется
*/
@Schema(description = "Признак того, что заказ в данный момент отменяется", example = "false")
boolean isCancelling,
/*
* Признак доставки заказа до двери
*/
@Schema(description = "Признак доставки заказа до двери", example = "false")
boolean isDeliveryToDoor,
/*
* Пин-код для бесконтактной доставки
*/
@Schema(description = "Пин-код для бесконтактной доставки", example = "5040")
String pincode,
/*
* Тип заказа
*/
@Schema(description = "Тип заказа", example = "DELIVERY")
OrderType type,
/*
* Заказ в архиве
*/
@Schema(description = "Заказ в архиве", example = "false")
Boolean isArchived,
/*
* Пользовательское наименование заказа
*/
@Schema(description = "Пользовательское наименование заказа (имя посылки)", example = "Сапоги")
String name,
/*
* Активный (не находящийся в конечном статусе) заказ
*/
@Schema(description = "Активный (не находящийся в конечном статусе) заказ", example = "true")
boolean isActive,
/*
* Заказ принадлежит пользователю
*/
@Schema(description = "Заказ принадлежит пользователю", example = "true")
boolean isOwn,
/*
* Статус оценки курьера
*/
@Schema(description = "Статус оценки курьера", example = "UNAVAILABLE")
CourierRatingStatus courierRatingStatus,
/*
* Оценка курьера
*/
@Schema(description = "Оценка курьера", example = "5")
Integer courierRatingValue,
/*
* Информация о курьере
*/
@Schema(description = "Информация о курьере из сервиса smart-delivery",
type = "object",
example = """
{
"courierId": 16117353384,
"courierPhone": "+79911459570",
"courierName": "Василько Дмитрий Антонович",
"trackingAvailable": false
}"""
)
OrderDetailCourierInfo courierInfo,
/*
* Информация о плитке Get4Click
*/
@Schema(description = "Информация о плитке Get4Click", example = """
{
"get4ClickTitle": "Заберите ваш подарок",
"get4ClickText": "Вам доступен (1) подарок за отслеживание заказа",
"get4ClickImg": "/api/v1/public/resource/image/get-4-click-gift_new_2.png",
"get4ClickUrl": "https://share.flocktory.com/exchange/login?ssid=2801&bid=13819"
}"""
)
Get4ClickDto get4Click,
/*
* Признак требуется ли дата согласования доставки
*/
@Schema(description = "Признак требуется ли дата согласования доставки", example = "false")
boolean requiredApprovalDateDelivery,
/*
* Количество попыток доставки
*/
@Schema(description = "Признак требуется ли дата согласования доставки", example = "3304")
Integer currentDeliveryAttempts,
/*
* Дата приема
*/
@Schema(description = "Дата приема", example = "2026-06-09")
@JsonFormat(pattern = DATE_PATTERN)
LocalDate planPickupDate,
/*
* Интервал времени приема
*/
@Schema(description = "Время приема", example = "9-18")
String planPickupTimeInterval,
/*
* Информация о дочернем заказа
*/
@Schema(description = "доставка осуществляется по другому заказу (информация о доставке текущего заказа находится по ссылке другого заказа)",
type = "object",
example = """
{
"orderId": 66768065233,
"orderNum": "RU119425049",
"orderStatusName": "Возврат осуществляется по номеру"
}"""
)
ChildOrderInfoResponse childOrderInfo,
/*
* Доступен ли календарь
*/
@Schema(description = "Параметр определяет показывать или не показывать в интерфейсе кнопку для добавления события запланированной доставки в календарь", example = "true")
Boolean isCalendarAvailable
if i create same record as ScreenOneAddressTo with name ScreenOneAddressTo2 it is work perfect
Annotation @Schema not applying in record class.
Record class:
package ru.dpd.dpdrecipientcore.dto.order;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Builder;
import ru.dpd.dpdrecipientcore.dto.v2.order.OrderDetailStatusV2;
import ru.dpd.dpdrecipientcore.model.CourierRatingStatus;
import ru.dpd.dpdrecipientcore.model.DateType;
import java.time.LocalDate;
import java.util.List;
import static ru.dpd.dpdrecipientcore.config.AppConstants.DATE_PATTERN;
@builder
public record OrderScreenOneResponse(
) {
}
This not worked:
@Schema(
description = "Адрес получателя",
type = "object",
example = """
{
"lat": 55.794372,
"lon": 37.522691,
"address": "Москва, ул Викторенко, дом 16, стр. 1"
}"""
)
ScreenOneAddressTo addressTo
Record ScreenOneAddressTo :
@builder
public record ScreenOneAddressTo(
double lat,
double lon,
String address
) {
}
Spring boot 2.6.3
springdoc-openapi-ui 1.6.6
if i create same record as ScreenOneAddressTo with name ScreenOneAddressTo2 it is work perfect
i have another similar recor witch not appears in swagger