TravelPolicyRuleClass Data Type

One rule class creates one violation each. This is where the message for the violation is stored. Created by nick on 1/29/15.

Properties
name data type description
message string The error message to override the rule messages with.
action TravelPolicyAction The action to take when the itinerary violates this rule.
rules array of TravelPolicyRule The rules that this class consists of.
reviewer TravelPolicyReviewer The reviewer that this class' action will be inflicted upon.
addMessage boolean Whether or not to add any message at all to the PNR if the rule class is triggered.
queue Queue The queue that this PNR should be sent to upon violation.
override boolean The value indicates if the rule class needs to be override.
Properties inherited from BaseHibernateEntity
id number The unique internal ID of the object.
version number For internal use only. This is the serialization recorder for optimistic locking of several objects between sessions.
Properties inherited from BaseEntity
violations array of SimpleViolation A list of constraint violations, if any, that this object has.

Example

{
  "message" : "...",
  "action" : {
    "name" : "...",
    "description" : "...",
    "possibleReviewers" : [ {
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  },
  "rules" : [ {
    "type" : {
      "description" : "...",
      "message" : "...",
      "travelType" : { },
      "valueType" : "...",
      "operators" : [ { }, { } ],
      "units" : [ { }, { } ],
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "operator" : {
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "value" : "...",
    "unit" : {
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "airlines" : [ {
      "airlineNumber" : 12345,
      "checkinLink" : "...",
      "baggageLink" : "...",
      "alliance" : { },
      "lowCostCarrier" : true,
      "longCode" : "...",
      "manualTicketingOnly" : true,
      "airTicketsUseOrigIssueDate" : true,
      "mcoTicketsUseOrigIssueDate" : true,
      "minDomesticValue" : 12345,
      "minIntlValue" : 12345,
      "position" : 12345,
      "imageUrl" : "...",
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "airlineNumber" : 12345,
      "checkinLink" : "...",
      "baggageLink" : "...",
      "alliance" : { },
      "lowCostCarrier" : true,
      "longCode" : "...",
      "manualTicketingOnly" : true,
      "airTicketsUseOrigIssueDate" : true,
      "mcoTicketsUseOrigIssueDate" : true,
      "minDomesticValue" : 12345,
      "minIntlValue" : 12345,
      "position" : 12345,
      "imageUrl" : "...",
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "carClasses" : [ {
      "code" : "...",
      "description" : "...",
      "position" : 12345,
      "size" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "code" : "...",
      "description" : "...",
      "position" : 12345,
      "size" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "carTypes" : [ {
      "code" : "...",
      "description" : "...",
      "position" : 12345,
      "size" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "code" : "...",
      "description" : "...",
      "position" : 12345,
      "size" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "hotelProperties" : [ {
      "address1" : "...",
      "address2" : "...",
      "phone1" : "...",
      "phone2" : "...",
      "fax" : "...",
      "zip" : "...",
      "city" : { },
      "vendor" : { },
      "latitude" : 12345.0,
      "sertifiCode" : "...",
      "longitude" : 12345.0,
      "propertyName" : "...",
      "propertyCodes" : [ { }, { } ],
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "address1" : "...",
      "address2" : "...",
      "phone1" : "...",
      "phone2" : "...",
      "fax" : "...",
      "zip" : "...",
      "city" : { },
      "vendor" : { },
      "latitude" : 12345.0,
      "sertifiCode" : "...",
      "longitude" : 12345.0,
      "propertyName" : "...",
      "propertyCodes" : [ { }, { } ],
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "classOfServiceLevels" : [ {
      "name" : "...",
      "code" : "...",
      "value" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "name" : "...",
      "code" : "...",
      "value" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "countries" : [ {
      "name" : "...",
      "code" : "...",
      "codeAlt" : "...",
      "phoneCode" : 12345,
      "position" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "name" : "...",
      "code" : "...",
      "codeAlt" : "...",
      "phoneCode" : 12345,
      "position" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "cities" : [ {
      "code" : "...",
      "countryCode" : "...",
      "latitude" : 12345.0,
      "longitude" : 12345.0,
      "name" : "...",
      "stateOrCountry" : "...",
      "airportName" : "...",
      "region" : { },
      "timeZone" : { },
      "retentionOnly" : true,
      "position" : 12345,
      "unique" : true,
      "alias" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "code" : "...",
      "countryCode" : "...",
      "latitude" : 12345.0,
      "longitude" : 12345.0,
      "name" : "...",
      "stateOrCountry" : "...",
      "airportName" : "...",
      "region" : { },
      "timeZone" : { },
      "retentionOnly" : true,
      "position" : 12345,
      "unique" : true,
      "alias" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "hotelVendors" : [ {
      "longCode" : "...",
      "commissionRate" : 12345.0,
      "family" : { },
      "position" : 12345,
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "longCode" : "...",
      "commissionRate" : 12345.0,
      "family" : { },
      "position" : 12345,
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "carVendors" : [ {
      "longCode" : "...",
      "commissionRate" : 12345.0,
      "position" : 12345,
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "longCode" : "...",
      "commissionRate" : 12345.0,
      "position" : 12345,
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  }, {
    "type" : {
      "description" : "...",
      "message" : "...",
      "travelType" : { },
      "valueType" : "...",
      "operators" : [ { }, { } ],
      "units" : [ { }, { } ],
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "operator" : {
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "value" : "...",
    "unit" : {
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "airlines" : [ {
      "airlineNumber" : 12345,
      "checkinLink" : "...",
      "baggageLink" : "...",
      "alliance" : { },
      "lowCostCarrier" : true,
      "longCode" : "...",
      "manualTicketingOnly" : true,
      "airTicketsUseOrigIssueDate" : true,
      "mcoTicketsUseOrigIssueDate" : true,
      "minDomesticValue" : 12345,
      "minIntlValue" : 12345,
      "position" : 12345,
      "imageUrl" : "...",
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "airlineNumber" : 12345,
      "checkinLink" : "...",
      "baggageLink" : "...",
      "alliance" : { },
      "lowCostCarrier" : true,
      "longCode" : "...",
      "manualTicketingOnly" : true,
      "airTicketsUseOrigIssueDate" : true,
      "mcoTicketsUseOrigIssueDate" : true,
      "minDomesticValue" : 12345,
      "minIntlValue" : 12345,
      "position" : 12345,
      "imageUrl" : "...",
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "carClasses" : [ {
      "code" : "...",
      "description" : "...",
      "position" : 12345,
      "size" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "code" : "...",
      "description" : "...",
      "position" : 12345,
      "size" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "carTypes" : [ {
      "code" : "...",
      "description" : "...",
      "position" : 12345,
      "size" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "code" : "...",
      "description" : "...",
      "position" : 12345,
      "size" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "hotelProperties" : [ {
      "address1" : "...",
      "address2" : "...",
      "phone1" : "...",
      "phone2" : "...",
      "fax" : "...",
      "zip" : "...",
      "city" : { },
      "vendor" : { },
      "latitude" : 12345.0,
      "sertifiCode" : "...",
      "longitude" : 12345.0,
      "propertyName" : "...",
      "propertyCodes" : [ { }, { } ],
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "address1" : "...",
      "address2" : "...",
      "phone1" : "...",
      "phone2" : "...",
      "fax" : "...",
      "zip" : "...",
      "city" : { },
      "vendor" : { },
      "latitude" : 12345.0,
      "sertifiCode" : "...",
      "longitude" : 12345.0,
      "propertyName" : "...",
      "propertyCodes" : [ { }, { } ],
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "classOfServiceLevels" : [ {
      "name" : "...",
      "code" : "...",
      "value" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "name" : "...",
      "code" : "...",
      "value" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "countries" : [ {
      "name" : "...",
      "code" : "...",
      "codeAlt" : "...",
      "phoneCode" : 12345,
      "position" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "name" : "...",
      "code" : "...",
      "codeAlt" : "...",
      "phoneCode" : 12345,
      "position" : 12345,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "cities" : [ {
      "code" : "...",
      "countryCode" : "...",
      "latitude" : 12345.0,
      "longitude" : 12345.0,
      "name" : "...",
      "stateOrCountry" : "...",
      "airportName" : "...",
      "region" : { },
      "timeZone" : { },
      "retentionOnly" : true,
      "position" : 12345,
      "unique" : true,
      "alias" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "code" : "...",
      "countryCode" : "...",
      "latitude" : 12345.0,
      "longitude" : 12345.0,
      "name" : "...",
      "stateOrCountry" : "...",
      "airportName" : "...",
      "region" : { },
      "timeZone" : { },
      "retentionOnly" : true,
      "position" : 12345,
      "unique" : true,
      "alias" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "hotelVendors" : [ {
      "longCode" : "...",
      "commissionRate" : 12345.0,
      "family" : { },
      "position" : 12345,
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "longCode" : "...",
      "commissionRate" : 12345.0,
      "family" : { },
      "position" : 12345,
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "carVendors" : [ {
      "longCode" : "...",
      "commissionRate" : 12345.0,
      "position" : 12345,
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "longCode" : "...",
      "commissionRate" : 12345.0,
      "position" : 12345,
      "code" : "...",
      "name" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  } ],
  "reviewer" : {
    "name" : "...",
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  },
  "addMessage" : true,
  "queue" : {
    "number" : 12345,
    "category" : "...",
    "pcc" : "...",
    "description" : "...",
    "gds" : {
      "code" : "...",
      "name" : "...",
      "enabled" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "sorts" : [ {
      "push" : { },
      "onRemark" : "...",
      "notOnRemark" : "...",
      "onOffice" : { },
      "onClient" : { },
      "onDepartureCity" : { },
      "onArrivalCity" : { },
      "description" : "...",
      "onAirVendor" : { },
      "notOnOffice" : { },
      "onInternational" : true,
      "onTicketed" : true,
      "notClient" : { },
      "notTicketed" : true,
      "onToday" : true,
      "notToday" : true,
      "onInvoice" : true,
      "notInvoice" : true,
      "onSegments" : true,
      "notSegments" : true,
      "onOpenJaw" : true,
      "onCircle" : true,
      "onOneWay" : true,
      "onRoundTrip" : true,
      "notAir" : true,
      "onUser" : { },
      "onHotelChange" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "push" : { },
      "onRemark" : "...",
      "notOnRemark" : "...",
      "onOffice" : { },
      "onClient" : { },
      "onDepartureCity" : { },
      "onArrivalCity" : { },
      "description" : "...",
      "onAirVendor" : { },
      "notOnOffice" : { },
      "onInternational" : true,
      "onTicketed" : true,
      "notClient" : { },
      "notTicketed" : true,
      "onToday" : true,
      "notToday" : true,
      "onInvoice" : true,
      "notInvoice" : true,
      "onSegments" : true,
      "notSegments" : true,
      "onOpenJaw" : true,
      "onCircle" : true,
      "onOneWay" : true,
      "onRoundTrip" : true,
      "notAir" : true,
      "onUser" : { },
      "onHotelChange" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "airtineraryQueue" : true,
    "importQueue" : true,
    "availableTimeRange" : "...",
    "maximumPops" : 12345,
    "overrideSortCategory" : "...",
    "failureQueue" : 12345,
    "failureCategory" : "...",
    "agentQueue" : true,
    "agent" : {
      "user" : { },
      "agentCode" : "...",
      "office" : { },
      "workEmail" : "...",
      "active" : "...",
      "type" : "...",
      "emailList" : "...",
      "category" : "...",
      "directLine" : "...",
      "hours" : "...",
      "onlineAgent" : true,
      "recheckEmails" : true,
      "serviceFeesPct" : 12345.0,
      "otherServiceFeesPct" : 12345.0,
      "internationalAirCommissionPct" : 12345.0,
      "miscCommissionPct" : 12345.0,
      "airCommissionPct" : 12345.0,
      "hotelCommissionPct" : 12345.0,
      "carCommissionPct" : 12345.0,
      "employeeType" : { },
      "ticketingAgent" : true,
      "supportAgent" : true,
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "failurePcc" : "...",
    "agentExclusions" : [ {
      "agent" : { },
      "onClient" : { },
      "onOffice" : { },
      "onAgent" : { },
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    }, {
      "agent" : { },
      "onClient" : { },
      "onOffice" : { },
      "onAgent" : { },
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    } ],
    "ticketingQueue" : true,
    "validationQueue" : true,
    "type" : {
      "name" : "...",
      "code" : "...",
      "id" : 12345,
      "version" : 12345,
      "violations" : [ { }, { } ]
    },
    "hplQueue" : true,
    "logEnabled" : true,
    "airselectQueue" : true,
    "defaultQueue" : { },
    "autoScheduleChange" : true,
    "id" : 12345,
    "version" : 12345,
    "violations" : [ {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    }, {
      "propertyName" : "...",
      "failureMessage" : "...",
      "stackTrace" : "..."
    } ]
  },
  "override" : true,
  "id" : 12345,
  "version" : 12345,
  "violations" : [ {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  }, {
    "propertyName" : "...",
    "failureMessage" : "...",
    "stackTrace" : "..."
  } ]
}