27.10.2021 - 10:45 Uhr

Anmerkung:
Die Prüfung von AXC-1268 hat noch diverse Änderungsbedarfe ergeben.
Diese befinden sich z.Zt. in der Umsetzung.

AXC-1297 - Entfernung aus GraphQL-Schema

  • keepMissingDetailsOnUpdate (wird für REST-API via Adapter-Pattern stets auf true gesetzt)

  • isConvertedToEntity

AXC-1268 - AnswerSpot und RequestSpot Implementiert

GraphQL-Schema:

RequestSpot:

type RequestSpot {
  requestSpotObjectType: RequestSpotObjectType!
  answerSpotId: Id
  state: SpotState!
  spotType: SpotType!
  spotRotation: SpotRotation!
  ndem: Int!
  comment: String
  advertisingTypeKey: Long
  advertisingTypeText: String
  blockInformationId: Id
  blockInformation: BlockInformation
  spotPlacement: SpotPlacement
  priceRateIndividual: Boolean!
  priceRate: CurrencyData
  priceGross: CurrencyData
  priceNet: CurrencyData
  freeSpot: FreeSpot!
  priceCalcDetails: [PriceCalcDetail]
  poolMemberMissings: [PoolMemberMissing]
  requestId: Id!
  requestSpotParentId: Id
  requestSpotChilds: [RequestSpot]
  dspKey: String!
  action: RequestSpotAction!
  actionAnswerSpotId: Id
  sspKey: String
  timeBegin: DateTime!
  timeEnd: DateTime!
  originalTimeBegin: DateTime!
  originalTimeEnd: DateTime!
  tolerance: Int!
  ndemIndex: Int!
  length: Int!
  lengthOtc: Int!
  periodBegin: DateTime
  periodEnd: DateTime
  weekdaysAllowed: [Weekday]
  count: Int
  flex: Boolean
  date: DateTime
  lastChangeAccountId: Id!
  lastChangeDate: DateTime!
  rowVersion: [Byte!]
  id: Id!
}

AnswerSpot:

type AnswerSpot {
  answerSpotObjectType: AnswerSpotObjectType!
  answerSpotId: Id
  state: SpotState!
  spotType: SpotType!
  spotRotation: SpotRotation!
  ndem: Int!
  comment: String
  advertisingTypeKey: Long
  advertisingTypeText: String
  blockInformationId: Id
  blockInformation: BlockInformation
  spotPlacement: SpotPlacement
  priceRateIndividual: Boolean!
  priceRate: CurrencyData
  priceGross: CurrencyData
  priceNet: CurrencyData
  freeSpot: FreeSpot!
  priceCalcDetails: [PriceCalcDetail]
  poolMemberMissings: [PoolMemberMissing]
  answerId: Id!
  sspKey: String!
  broadcastDate: DateTime
  deliveryState: DeliveryState!
  answerSpotParentId: Id
  answerSpotChilds: [AnswerSpot]
  broadcasts: [Broadcast]
  timeBegin: DateTime!
  timeEnd: DateTime!
  originalTimeBegin: DateTime!
  originalTimeEnd: DateTime!
  tolerance: Int!
  ndemIndex: Int!
  length: Int!
  lengthOtc: Int!
  periodBegin: DateTime
  periodEnd: DateTime
  weekdaysAllowed: [Weekday]
  count: Int
  flex: Boolean
  date: DateTime
  lastChangeAccountId: Id!
  lastChangeDate: DateTime!
  rowVersion: [Byte!]
  id: Id!
}

 

Queries/Mutations:

RequestSpot:

Für Buyer:
createRequestSpot,
updateRequestSpot,
deleteRequestSpot,
requestSpot (= GET by Id),
findRequestSpots

Für Seller:
requestSpot (= GET by Id),
findRequestSpots

AnswerSpot:

Für Buyer:
answerSpot (= GET by Id),
findAnswerSpots

Für Seller:
createAnswerSpot,
updateAnswerSpot,
deleteAnswerSpot,
answerSpot (= GET by Id),
findAnswerSpots

Restriktionen:

(Request/Answer-Spot-)AudioBookingPlan (d.h. RequestSpotObjectType = RequestSpotObjectType.RequestSpotAudioBookingPlan):


Für die folgenden Felder dürfen keine Werte übergeben/eingegeben werden: Date
Ansonsten wird eine entsprechende ObpExceptionArgumentParameterInvalidInDataContext-Ausnahme geworfen:

 

Ansonsten (analog zu AudioBookingPlan) wird eine entsprechende ObpExceptionArgumentParameterInvalidInDataContext-Ausnahme geworfen.