# ***** entity_warning_type.yaml ***** #

# - VT_AT_LEAST_ONE_OF_THE_FIELDS_MUST_BE_SET Хотя бы одно из полей rest_rules или break_rules должно быть установлено.
# - VT_EMPTY Списки locations_to_ignore_in_operating_duration_total или locations_to_reset_rest_and_break_accumulators установлены ⇒ непустые.
# - VT_INCONSISTENT_REFERENCE Элементы в списках locations_to_ignore_in_operating_duration_total и locations_to_reset_rest_and_break_accumulators — идентификаторы локаций.
# - VT_INCORRECT_VALUE_SIGN Установленные длительности в RestAndBreakRules положительные: relocating_duration_total_before_rest, operating_duration_total_before_rest, rest_duration, relocating_duration_before_break, operating_duration_total_before_break, break_duration
# - VT_RESTRICTION_IS_MEANINGLESS breakRulesItem.relocating_duration_before_break <= breakRulesItem.operating_duration_total_before_break
# - VT_RESTRICTION_IS_MEANINGLESS restRules.relocating_duration_total_before_rest <= restRules.operating_duration_total_before_rest
# - VT_RESTRICTION_IS_MEANINGLESS есть вопросы The working time window of a performer's shift cannot contain even a single rest.
# - VT_RESTRICTION_IS_MEANINGLESS есть вопросы There cannot be even a single break before rest ([first break, consecutive break], [relocating-wise, operating-wise]).
# - VT_INVALID_SIZE Too many possible rests per shift. business_contract::rests_in_shift_count_max < shiftWorkingDuration / singleFullRestDuration
# - VT_INVALID_SIZE Too many possible breaks per business shift (relocating-wise, operating-wise).

x-description-ru: >
  Тип предупреждения:
    * `NO_AVAILABLE_TRANSPORT` - заказ не возможно выполнить, так как нет ни одного доступного (по ограничениям смен) транспорта
    * `NO_AVAILABLE_PERFORMER` - заказ не возможно выполнить, так как нет ни одного доступного (по ограничениям смен) исполнителя
    * `NO_COMPATIBLE_TRANSPORT` - заказ не возможно выполнить, так как нет ни одного совместимого (по вместимости и\или тегам совместимости) транспорта
    * `NO_COMPATIBLE_PERFORMER` - заказ не возможно выполнить, так как нет ни одного совместимого (по тегам совместимости) исполнителя
    * `NO_AVAILABLE_ORDER_FOR_TRANSPORT` - транспорт бесполезен, так как нет ни одного совместимого (по вместимости и\или тегам совместимости) заказа
    * `NO_AVAILABLE_ORDER_FOR_PERFORMER` - исполнитель бесполезен, так как нет ни одного совместимого (по вместимости и\или тегам совместимости) заказа
    * `NO_COMPATIBLE_ORDER_FOR_TRANSPORT` - транспорт бесполезен, так как нет ни одного доступного (по ограничениям смен) заказа
    * `NO_COMPATIBLE_ORDER_FOR_PERFORMER` - исполнитель бесполезен, так как нет ни одного доступного (по ограничениям смен) заказа
    * `PICKUP_AND_DROP_VIOLATION` - для каждого груза в рамках заказа должна быть ровно одна погрузка и ровно одна выгрузка (кроме заявок `PICKUP_TO_BOX` и `DROP_FROM_BOX`)
    * `PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_ORDER` - для каждого груза в рамках заказа должна погрузка должна идти перед выгрузкой (`precedence_in_order`)
    * `PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_TRIP` - заданы противоречивые требования на порядок следования заявок (`precedence_in_trip`)
    * `VIOLATION_PRECEDENCE_IN_TRIP_AND_ORDER` - требования на порядок следования заявок в рейсе (`precedence_in_trip`) и в заказе (`precedence_in_order`) противоречат друг другу
    * `TIME_WINDOW_VIOLATION` - время начала временного окна позже времени окончания окна или временное окно превышает максимально допустимое
    * `DURATION_VIOLATION` - продолжительность не соответствует разрешенному интервалу
    * `ORDER_WINDOWS_INTERSECTION_VIOLATION` - мягкие окна не должны выходить за границы жесткого окна
    * `PERFORMER_SHIFTS_INTERSECTION_VIOLATION` - временные диапазоны рабочих смен исполнителя не должны пересекаться, начало последующего окна не может быть равно концу предыдущего 
    * `TRANSPORT_SHIFTS_INTERSECTION_VIOLATION` - временные диапазоны рабочих смен транспорта не должны пересекаться, начало последующего окна не может быть равно концу предыдущего
    * `LOCATION_WINDOWS_INTERSECTION_VIOLATION` - временные диапазоны рабочих окон одной локации не должны пересекаться, начало последующего окна не может быть равно концу предыдущего
    * `NO_TRANSPORT_BOXES` - если существуют заказы с грузом - то у транспорта должен быть хотя бы один отсек 
    * `MAX_CAPACITY_VIOLATION` - ограничение `max_capacity` превышает суммарную вместимость всех отсеков или указывается для одного отсека или меньше вместимости какого-то отсека
    * `MAX_BOXES_VIOLATION` - ограничение `max_boxes` больше или равно суммарного количества отсеков или указывается для одного отсека или равно нулю
    * `TOO_MANY_CARGOS_FOR_DROP_VIOLATION` - количество грузов для заявки, имеющей тип `DROP` / `DROP_FROM_BOX`, должно быть не больше единицы
    * `EMPTY_CARGOES_LIST` - пустой список грузов у заявок, имеющих тип `DROP` / `DROP_FROM_BOX` / `PICKUP` / `PICKUP_TO_BOX`
    * `CARGO_WORK_VIOLATION` - у заявки типа `WORK` список грузов должен быть пустой
    * `GEODATA_TIME_WINDOW_VIOLATION` - горизонт планирования превышает максимально доступное значение
    * `SHIFT_RESTRICTIONS_COULD_BE_MORE_PRECISE` - рабочее окно `working_window` смены исполнителя не лежит полностью внутри окна доступности `availability_window`
    * `DURATION_DOES_NOT_FIT_INTO_HARD_WINDOW` - продолжительность события не помещается в жесткое временное окно
    * `DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW` - продолжительность события не помещается в мягкое временное окно
    * `EXTRA_DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW` - дополнительное время на выполнение заявки не помещается в мягкое временное окно
    * `MAX_CALCULATION_TIME_VIOLATION` - превышено максимальное допустимое время расчета
    * `MAX_WAITING_TIME_VIOLATION` - превышено максимальное допустимое время ожидания расчета в очереди
    * `INVALID_HARDLINK` - связь невозможно учесть, нельзя назначать на транспорт заказ с заявками с типом `WORK`
    * `CARGO_BOX_VIOLATION` - для заявок всех типов кроме `DROP_FROM_BOX` ключ отсека, где находится груз, должен быть пустым
    * `CARGO_MULTIBOX_VIOLATION` - для заявки типа `DROP_FROM_BOX` указанные грузы находятся в отсеках разных транспортов
    * `CARGO_CAPACITY_VIOLATION` - указанный груз на борту превышает размеры отсека, в котором он находится
    * `CARGO_ORDER_VIOLATION` - указанный в заказе груз не присутствует в заявках
    * `FEATURE_LIFETIME_VIOLATION` - окна свойств пересекаются между собой или рабочее окно `working_window` смены исполнителя или транспорта не пересекается с временным окном свойства
    * `QUOTA_EXCEEDED` - превышена квота на сервис
    * `MAX_LOCATIONS_LIMITS_PENALTY_EXCEEDED` - полученное решение не удовлетворяет требованию `max_locations_limits_penalty`
    * `REMOVED_ITEMS_NOT_EMPTY` - в процессе проверки данных были удалены сущности из исходного датасета, список удаленных сущностей находится в объекте `removed_items`
    * `INCOMPATIBLE_REQUIREMENTS` - заданы несовместимые требования: учет нагрузки на локацию и оптимизация мягких окон.
x-description-zh: >
  警告类型:
    * `NO_AVAILABLE_TRANSPORT` - 订单无法完成，因为没有可用的（按班次限制）运输方式
    * `NO_AVAILABLE_PERFORMER` - 订单无法完成，因为没有可用的（按班次限制）执行者
    * `NO_COMPATIBLE_TRANSPORT` - 订单无法完成，因为没有兼容的（就容量和/或兼容性标签而言）运输方式
    * `NO_COMPATIBLE_PERFORMER` - 订单无法完成，因为没有兼容的（按兼容性标签）执行者
    * `NO_AVAILABLE_ORDER_FOR_TRANSPORT` - 传输无用，因为没有兼容的（按容量和/或兼容性标签）顺序
    * `NO_AVAILABLE_ORDER_FOR_PERFORMER` - 表演者无用，因为没有兼容的（按容量和/或兼容性标签）顺序
    * `NO_COMPATIBLE_ORDER_FOR_TRANSPORT` - 运输无用，因为没有可用的订单（根据轮班限制）
    * `NO_COMPATIBLE_ORDER_FOR_PERFORMER` - 执行者无用，因为没有可用的订单（根据轮班限制）
    * `PICKUP_AND_DROP_VIOLATION` - 订单中的每件货物必须有且只有一次装载和一次卸载（`PICKUP_TO_BOX` 和 `DROP_FROM_BOX` 订单除外）
    * `PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_ORDER` - 订单中的每件货物，装载必须在之前进行卸载（`precedence_in_order`)
    * `PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_TRIP` - 指定了相冲突的订单优先顺序要求（`precedence_in_trip`)
    * `VIOLATION_PRECEDENCE_IN_TRIP_AND_ORDER` - 行程中的订单优先顺序要求（`precedence_in_trip`）和订单中的订单优先顺序要求（`precedence_in_order`）相互矛盾
    * `TIME_WINDOW_VIOLATION` - 时间窗口的开始时间晚于窗口的结束时间或时间窗口超出允许的最大值
    * `DURATION_VIOLATION` - 持续时间与允许的间隔不符
    * `ORDER_WINDOWS_INTERSECTION_VIOLATION` - 软窗口不应超出硬窗口的边界
    * `PERFORMER_SHIFTS_INTERSECTION_VIOLATION` - 表演者工作班次的时间范围必须不重叠，下一个窗口的开始不能等于前一个窗口的结束
    * `TRANSPORT_SHIFTS_INTERSECTION_VIOLATION` - 运输工作班次的时间范围不应重叠，下一个窗口的开始不能等于前一个窗口的结束
    * `LOCATION_WINDOWS_INTERSECTION_VIOLATION` - 一个位置的工作窗口的时间范围不应相交，下一个窗口的开始不能等于前一个窗口的结束
    * `NO_TRANSPORT_BOXES` - 如果有货物订单，则运输必须至少有一个箱子
    * `MAX_CAPACITY_VIOLATION` - `max_capacity` 限制超过所有箱子的总容量或仅为一个箱子设置或小于某些箱子的容量
    * `MAX_BOXES_VIOLATION` - 限制 `max_boxes`大于或等于箱子总数或为一个箱子指定或等于零
    *`TOO_MANY_CARGOS_FOR_DROP_VIOLATION` - `DROP` / `DROP_FROM_BOX` 类型的订单的装载数量不得超过一个
    *`EMPTY_CARGOES_LIST` - `DROP` / `DROP_FROM_BOX` / `PICKUP` / `PICKUP_TO_BOX` 类型的订单的装载列表为空
    *`CARGO_WORK_VIOLATION` - 对于 `WORK` 订单，货物清单必须为空
    *`GEODATA_TIME_WINDOW_VIOLATION` - 计划范围超出最大可用值
    *`SHIFT_RESTRICTIONS_COULD_BE_MORE_PRECISE` - 艺术家变更的工作窗口 `working_window` 不完全位于可用性窗口 `availability_window` 内
    * `DURATION_DOES_NOT_FIT_INTO_HARD_WINDOW` - 事件的持续时间不符合硬时间窗口
    * `DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW` - 事件的持续时间不符合软时间窗口
    * `EXTRA_DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW` - 需求执行的额外时间不符合软时间窗口
    * `MAX_CALCULATION_TIME_VIOLATION` - 已超出允许的最大计算时间
    * `MAX_WAITING_TIME_VIOLATION` - 已超出允许的最大等待时间
    * `INVALID_HARDLINK` - 无法分配具有 `WORK` 类型需求的订单进行运输
    * `CARGO_BOX_VIOLATION` - 对于除 `DROP_FROM_BOX` 之外的所有类型的请求，货物所在箱子的键必须为空
    * `CARGO_MULTIBOX_VIOLATION` - 对于类型为 `DROP_FROM_BOX` 的订单，指示的货物位于不同车辆的箱子中
    * `CARGO_CAPACITY_VIOLATION` - 机上指定的货物超出了其所在箱子的大小
    * `CARGO_ORDER_VIOLATION` - 订单中指定的货物不在订单中
    * `FEATURE_LIFETIME_VIOLATION` - 特征时间窗口相互相交或用于更改执行者或运输的工作窗口 `working_window` 与特征时间窗口不相交
    * `QUOTA_EXCEEDED` - 超出服务配额
    * `MAX_LOCATIONS_LIMITS_PENALTY_EXCEEDED` - 生成的解决方案不满足 `max_locations_limits_penalty` 要求
    * `REMOVED_ITEMS_NOT_EMPTY` - 在数据验证过程中，实体被从源数据集中删除，删除的实体列表位于 `removed_items' 对象中
    * `INCOMPATIBLE_REQUIREMENTS` - 指定了不兼容的要求：位置负载核算和软窗口优化
description: > 
  Warning type:
    * `NO_AVAILABLE_TRANSPORT` - the order cannot be fulfilled, since there is no available (by shift limitations) transport
    * `NO_AVAILABLE_PERFORMER` - the order cannot be fulfilled, since there is not a single available (by shift limitations) performer
    * `NO_COMPATIBLE_TRANSPORT` - the order cannot be completed, since there is not a single compatible (in terms of capacity and \ or compatibility tags) transport
    * `NO_COMPATIBLE_PERFORMER` - the order cannot be completed, since there is not a single compatible (by compatibility tags) performer
    * `NO_AVAILABLE_ORDER_FOR_TRANSPORT` - the transport is useless, since there are no compatible (by capacity and/or compatibility tags) orders
    * `NO_AVAILABLE_ORDER_FOR_PERFORMER` - the performer is useless, since there are no compatible (by capacity and/or compatibility tags) orders
    * `NO_COMPATIBLE_ORDER_FOR_TRANSPORT` - the transport is useless, since there are no available (by shift restrictions) orders
    * `NO_COMPATIBLE_ORDER_FOR_PERFORMER` - the performer is useless, since there are no available (by shift restrictions) orders
    * `PICKUP_AND_DROP_VIOLATION` - for each cargo within the order there must be exactly one loading and exactly one unloading (except for `PICKUP_TO_BOX` and `DROP_FROM_BOX` orders)
    * `PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_ORDER` - for each cargo within the order, loading must go before unloading (`precedence_in_order`)
    * `PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_TRIP` - conflicting requirements for the precedence of orders were specified (`precedence_in_trip`)
    * `VIOLATION_PRECEDENCE_IN_TRIP_AND_ORDER` - requirements for the precedence of orders in the trip (`precedence_in_trip`) and in the order (` precedence_in_order`) contradict each other
    * `TIME_WINDOW_VIOLATION` - the start time of the time window is later than the end time of the window or time window exceeds the maximum allowed
    * `DURATION_VIOLATION` - duration does not correspond to the allowed interval
    * `ORDER_WINDOWS_INTERSECTION_VIOLATION` - soft windows should not go beyond the boundaries of the hard window
    * `PERFORMER_SHIFTS_INTERSECTION_VIOLATION` - time ranges of the performer's work shifts must not overlap, the beginning of the next window cannot be equal to the end of the previous one
    * `TRANSPORT_SHIFTS_INTERSECTION_VIOLATION` - time ranges of transport work shifts should not overlap, the beginning of the next window cannot be equal to the end of the previous one
    * `LOCATION_WINDOWS_INTERSECTION_VIOLATION` - time ranges of working windows of one location should not intersect, the beginning of the next window cannot be equal to the end of the previous one
    * `NO_TRANSPORT_BOXES` - if there are orders with cargo, then the transport must have at least one box
    * `MAX_CAPACITY_VIOLATION` - `max_capacity` limit exceeds the total capacity of all boxes or set for only one box or less than the capacity of some box
    * `MAX_BOXES_VIOLATION` - limit `max_boxes` is greater than or equal to the total number of boxes or specified for one box or equal to zero
    * `TOO_MANY_CARGOS_FOR_DROP_VIOLATION` - the number of loads for an order of the` DROP` / `DROP_FROM_BOX` type must be no more than one
    * `EMPTY_CARGOES_LIST` - empty list of loads for orders of type `DROP` / `DROP_FROM_BOX` / `PICKUP` / `PICKUP_TO_BOX`
    * `CARGO_WORK_VIOLATION` - for a `WORK` order, the cargo list must be empty
    * `GEODATA_TIME_WINDOW_VIOLATION` - the planning horizon exceeds the maximum available value
    * `SHIFT_RESTRICTIONS_COULD_BE_MORE_PRECISE` - the working window `working_window` of the change of the artist does not lie entirely inside the window of availability `availability_window`
    * `DURATION_DOES_NOT_FIT_INTO_HARD_WINDOW` - the duration of the event does not fit into the hard time window
    * `DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW` - the duration of the event does not fit into the soft time window
    * `EXTRA_DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW` - additional time for demand execution does not fit into the soft time window
    * `MAX_CALCULATION_TIME_VIOLATION` - the maximum allowable calculation time has been exceeded
    * `MAX_WAITING_TIME_VIOLATION` - the maximum allowable waiting time in queue has been exceeded
    * `INVALID_HARDLINK` - it is impossible to assign an order with demands with the `WORK` type to transport
    * `CARGO_BOX_VIOLATION` - for requests of all types except `DROP_FROM_BOX` the key of the box where the cargo is located must be empty
    * `CARGO_MULTIBOX_VIOLATION` - for an order of type `DROP_FROM_BOX` the indicated cargoes are in boxes of different vehicles
    * `CARGO_CAPACITY_VIOLATION` - the specified cargo on board exceeds the size of the box in which it is located
    * `CARGO_ORDER_VIOLATION` - the cargo specified in the order is not present in orders
    * `FEATURE_LIFETIME_VIOLATION` - feature time windows intersect with each other or the working window `working_window` for changing the performer or transport does not intersect with the feature time window
    * `QUOTA_EXCEEDED` - service quota exceeded
    * `MAX_LOCATIONS_LIMITS_PENALTY_EXCEEDED` - the resulting solution does not satisfy the `max_locations_limits_penalty` requirement
    * `REMOVED_ITEMS_NOT_EMPTY` - during data validation, items were removed from the original dataset, the list of removed items is in the `removed_items` object
    * `INCOMPATIBLE_REQUIREMENTS` - incompatible requirements are specified: location load accounting and soft window optimization.
type: string
enum:
  - NO_AVAILABLE_TRANSPORT
  - NO_AVAILABLE_PERFORMER
  - NO_COMPATIBLE_TRANSPORT
  - NO_COMPATIBLE_PERFORMER
  - NO_AVAILABLE_ORDER_FOR_TRANSPORT
  - NO_AVAILABLE_ORDER_FOR_PERFORMER
  - NO_COMPATIBLE_ORDER_FOR_TRANSPORT
  - NO_COMPATIBLE_ORDER_FOR_PERFORMER
  - PICKUP_AND_DROP_VIOLATION
  - PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_ORDER
  - PICKUP_AND_DROP_VIOLATION_PRECEDENCE_IN_TRIP
  - VIOLATION_PRECEDENCE_IN_TRIP_AND_ORDER
  - TIME_WINDOW_VIOLATION
  - DURATION_VIOLATION
  - ORDER_WINDOWS_INTERSECTION_VIOLATION
  - PERFORMER_SHIFTS_INTERSECTION_VIOLATION
  - TRANSPORT_SHIFTS_INTERSECTION_VIOLATION
  - LOCATION_WINDOWS_INTERSECTION_VIOLATION
  - NO_TRANSPORT_BOXES
  - MAX_CAPACITY_VIOLATION
  - MAX_BOXES_VIOLATION
  - TOO_MANY_CARGOS_FOR_DROP_VIOLATION
  - EMPTY_CARGOES_LIST
  - CARGO_WORK_VIOLATION
  - GEODATA_TIME_WINDOW_VIOLATION
  - SHIFT_RESTRICTIONS_COULD_BE_MORE_PRECISE
  - DURATION_DOES_NOT_FIT_INTO_HARD_WINDOW
  - DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW
  - EXTRA_DURATION_DOES_NOT_FIT_INTO_SOFT_WINDOW
  - MAX_CALCULATION_TIME_VIOLATION
  - MAX_WAITING_TIME_VIOLATION
  - INVALID_HARDLINK
  - CARGO_BOX_VIOLATION
  - CARGO_MULTIBOX_VIOLATION
  - CARGO_CAPACITY_VIOLATION
  - CARGO_ORDER_VIOLATION
  - FEATURE_LIFETIME_VIOLATION
  - QUOTA_EXCEEDED
  - MAX_LOCATIONS_LIMITS_PENALTY_EXCEEDED
  - REMOVED_ITEMS_NOT_EMPTY
  - INCOMPATIBLE_REQUIREMENTS
example: TIME_WINDOW_VIOLATION