Browse Source

Service's split

master
Nikolay Ushmodin 5 years ago
parent
commit
89f9821c94
  1. 7
      avs5.xsd
  2. 68
      avs5rs_dispatcher.xsd
  3. 255
      avs5rs_sale.xsd
  4. 238
      avs5rs_transit.xsd
  5. 21
      src/main/java/com/artmark/avs5rs/dispatcher/DispatcherService.java
  6. 160
      src/main/java/com/artmark/avs5rs/dispatcher/model/AbstractResponse.java
  7. 42
      src/main/java/com/artmark/avs5rs/dispatcher/model/ErrorCode.java
  8. 72
      src/main/java/com/artmark/avs5rs/dispatcher/model/ObjectFactory.java
  9. 121
      src/main/java/com/artmark/avs5rs/dispatcher/model/RouteKey.java
  10. 119
      src/main/java/com/artmark/avs5rs/dispatcher/model/UpdateTicketRequest.java
  11. 34
      src/main/java/com/artmark/avs5rs/dispatcher/model/UpdateTicketResponse.java
  12. 68
      src/main/java/com/artmark/avs5rs/dispatcher/model/avs5rs_dispatcher.xsd
  13. 44
      src/main/java/com/artmark/avs5rs/model/Agent.java
  14. 64
      src/main/java/com/artmark/avs5rs/model/BookOrderRequest.java
  15. 28
      src/main/java/com/artmark/avs5rs/model/BookOrderResponse.java
  16. 35
      src/main/java/com/artmark/avs5rs/model/CancelTicketRequest.java
  17. 26
      src/main/java/com/artmark/avs5rs/model/CancelTicketResponse.java
  18. 35
      src/main/java/com/artmark/avs5rs/model/ConfirmOrderRequest.java
  19. 37
      src/main/java/com/artmark/avs5rs/model/ConfirmOrderResponse.java
  20. 28
      src/main/java/com/artmark/avs5rs/model/DateAdapter.java
  21. 38
      src/main/java/com/artmark/avs5rs/model/DocumentType.java
  22. 27
      src/main/java/com/artmark/avs5rs/model/EchoRequest.java
  23. 26
      src/main/java/com/artmark/avs5rs/model/EchoResponse.java
  24. 10
      src/main/java/com/artmark/avs5rs/model/Gender.java
  25. 27
      src/main/java/com/artmark/avs5rs/model/GetArrivalStationsRequest.java
  26. 27
      src/main/java/com/artmark/avs5rs/model/GetArrivalStationsResponse.java
  27. 15
      src/main/java/com/artmark/avs5rs/model/GetDispatchStationsRequest.java
  28. 27
      src/main/java/com/artmark/avs5rs/model/GetDispatchStationsResponse.java
  29. 43
      src/main/java/com/artmark/avs5rs/model/GetDocumentTypesRequest.java
  30. 28
      src/main/java/com/artmark/avs5rs/model/GetDocumentTypesResponse.java
  31. 52
      src/main/java/com/artmark/avs5rs/model/GetFreeSeatsRequest.java
  32. 27
      src/main/java/com/artmark/avs5rs/model/GetFreeSeatsResponse.java
  33. 24
      src/main/java/com/artmark/avs5rs/model/GetOrderRequest.java
  34. 37
      src/main/java/com/artmark/avs5rs/model/GetOrderResponse.java
  35. 42
      src/main/java/com/artmark/avs5rs/model/GetTicketTypesRequest.java
  36. 28
      src/main/java/com/artmark/avs5rs/model/GetTicketTypesResponse.java
  37. 28
      src/main/java/com/artmark/avs5rs/model/GetTripStopsRequest.java
  38. 27
      src/main/java/com/artmark/avs5rs/model/GetTripStopsResponse.java
  39. 162
      src/main/java/com/artmark/avs5rs/model/Passenger.java
  40. 82
      src/main/java/com/artmark/avs5rs/model/Response.java
  41. 35
      src/main/java/com/artmark/avs5rs/model/ReturnTicketRequest.java
  42. 26
      src/main/java/com/artmark/avs5rs/model/ReturnTicketResponse.java
  43. 44
      src/main/java/com/artmark/avs5rs/model/Sale.java
  44. 54
      src/main/java/com/artmark/avs5rs/model/SearchTripsRequest.java
  45. 30
      src/main/java/com/artmark/avs5rs/model/SearchTripsResponse.java
  46. 51
      src/main/java/com/artmark/avs5rs/model/Seat.java
  47. 64
      src/main/java/com/artmark/avs5rs/model/Station.java
  48. 125
      src/main/java/com/artmark/avs5rs/model/Stop.java
  49. 413
      src/main/java/com/artmark/avs5rs/model/Ticket.java
  50. 17
      src/main/java/com/artmark/avs5rs/model/TicketClassCode.java
  51. 29
      src/main/java/com/artmark/avs5rs/model/TicketStatusCode.java
  52. 65
      src/main/java/com/artmark/avs5rs/model/TicketType.java
  53. 26
      src/main/java/com/artmark/avs5rs/model/TimestampAdapter.java
  54. 267
      src/main/java/com/artmark/avs5rs/model/Trip.java
  55. 18
      src/main/java/com/artmark/avs5rs/model/TripClassCode.java
  56. 30
      src/main/java/com/artmark/avs5rs/model/TripStatusCode.java
  57. 59
      src/main/java/com/artmark/avs5rs/model/TripTypeCode.java
  58. 44
      src/main/java/com/artmark/avs5rs/model/UpdateTicketRequest.java
  59. 25
      src/main/java/com/artmark/avs5rs/model/UpdateTicketResponse.java
  60. 32
      src/main/java/com/artmark/avs5rs/sale/SaleService.java
  61. 172
      src/main/java/com/artmark/avs5rs/sale/model/AbstractResponse.java
  62. 89
      src/main/java/com/artmark/avs5rs/sale/model/Agent.java
  63. 183
      src/main/java/com/artmark/avs5rs/sale/model/BookOrderRequest.java
  64. 151
      src/main/java/com/artmark/avs5rs/sale/model/BookOrderResponse.java
  65. 99
      src/main/java/com/artmark/avs5rs/sale/model/CancelTicketRequest.java
  66. 138
      src/main/java/com/artmark/avs5rs/sale/model/CancelTicketResponse.java
  67. 92
      src/main/java/com/artmark/avs5rs/sale/model/ConfirmOrderRequest.java
  68. 167
      src/main/java/com/artmark/avs5rs/sale/model/ConfirmOrderResponse.java
  69. 90
      src/main/java/com/artmark/avs5rs/sale/model/DocumentType.java
  70. 64
      src/main/java/com/artmark/avs5rs/sale/model/EchoRequest.java
  71. 131
      src/main/java/com/artmark/avs5rs/sale/model/EchoResponse.java
  72. 42
      src/main/java/com/artmark/avs5rs/sale/model/ErrorCode.java
  73. 38
      src/main/java/com/artmark/avs5rs/sale/model/GenderType.java
  74. 64
      src/main/java/com/artmark/avs5rs/sale/model/GetArrivalStationsRequest.java
  75. 138
      src/main/java/com/artmark/avs5rs/sale/model/GetArrivalStationsResponse.java
  76. 32
      src/main/java/com/artmark/avs5rs/sale/model/GetDispatchStationsRequest.java
  77. 138
      src/main/java/com/artmark/avs5rs/sale/model/GetDispatchStationsResponse.java
  78. 120
      src/main/java/com/artmark/avs5rs/sale/model/GetDocumentTypesRequest.java
  79. 138
      src/main/java/com/artmark/avs5rs/sale/model/GetDocumentTypesResponse.java
  80. 64
      src/main/java/com/artmark/avs5rs/sale/model/GetOrderRequest.java
  81. 167
      src/main/java/com/artmark/avs5rs/sale/model/GetOrderResponse.java
  82. 120
      src/main/java/com/artmark/avs5rs/sale/model/GetTicketTypesRequest.java
  83. 138
      src/main/java/com/artmark/avs5rs/sale/model/GetTicketTypesResponse.java
  84. 64
      src/main/java/com/artmark/avs5rs/sale/model/GetTripStopsRequest.java
  85. 138
      src/main/java/com/artmark/avs5rs/sale/model/GetTripStopsResponse.java
  86. 440
      src/main/java/com/artmark/avs5rs/sale/model/ObjectFactory.java
  87. 344
      src/main/java/com/artmark/avs5rs/sale/model/Passenger.java
  88. 99
      src/main/java/com/artmark/avs5rs/sale/model/ReturnTicketRequest.java
  89. 138
      src/main/java/com/artmark/avs5rs/sale/model/ReturnTicketResponse.java
  90. 121
      src/main/java/com/artmark/avs5rs/sale/model/RouteKey.java
  91. 117
      src/main/java/com/artmark/avs5rs/sale/model/Sale.java
  92. 123
      src/main/java/com/artmark/avs5rs/sale/model/SearchTripsRequest.java
  93. 138
      src/main/java/com/artmark/avs5rs/sale/model/SearchTripsResponse.java
  94. 81
      src/main/java/com/artmark/avs5rs/sale/model/Seat.java
  95. 144
      src/main/java/com/artmark/avs5rs/sale/model/Station.java
  96. 700
      src/main/java/com/artmark/avs5rs/sale/model/Ticket.java
  97. 40
      src/main/java/com/artmark/avs5rs/sale/model/TicketClass.java
  98. 42
      src/main/java/com/artmark/avs5rs/sale/model/TicketStatus.java
  99. 149
      src/main/java/com/artmark/avs5rs/sale/model/TicketType.java
  100. 579
      src/main/java/com/artmark/avs5rs/sale/model/Trip.java
  101. Some files were not shown because too many files have changed in this diff Show More

7
avs5.xsd

@ -1,7 +0,0 @@ @@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
attributeFormDefault="qualified">
<xs:import schemaLocation="avs5rs_sale.xsd" namespace=""/>
<xs:import schemaLocation="avs5rs_transit.xsd" namespace=""/>
</xs:schema>

68
avs5rs_dispatcher.xsd

@ -0,0 +1,68 @@ @@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:c="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
attributeFormDefault="qualified">
<xs:simpleType name="IDType">
<xs:restriction base="xs:string">
<xs:maxLength value="36"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AbstractResponse">
<xs:sequence>
<xs:element name="Error" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="code" type="xs:string" minOccurs="1"/>
<xs:element name="message" type="xs:string" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="UidType">
<xs:restriction base="xs:string">
<xs:length value="36"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="RouteKey">
<xs:sequence>
<xs:element name="dispatchStationUid" type="UidType"/>
<xs:element name="arrivalStationUid" type="UidType"/>
<xs:element name="dispatchTime" type="xs:time"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="ErrorCode">
<xs:restriction base="xs:string">
<xs:enumeration value="INTERNAL"/>
<xs:enumeration value="NOT_FOUND"/>
<xs:enumeration value="SEAT_OCCUPIED"/>
<xs:enumeration value="PERSONAL_DATA_INCORRECT"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="UpdateTicketRequest">
<xs:complexType>
<c:sequence>
<xs:element name="RouteKey" type="RouteKey" minOccurs="1"/>
<xs:element name="ticketId" type="IDType" minOccurs="1"/>
<xs:element name="passengerGone" type="xs:boolean" minOccurs="0"/>
</c:sequence>
</xs:complexType>
</xs:element>
<xs:element name="UpdateTicketResponse">
<xs:complexType>
<xs:complexContent>
<xs:extension base="AbstractResponse"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:schema>

255
avs5rs_sale.xsd

@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:c="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
attributeFormDefault="qualified">
@ -364,43 +364,6 @@ @@ -364,43 +364,6 @@
</xs:complexType>
</xs:element>
<xs:element name="GetFreeSeatsRequest">
<xs:complexType>
<xs:choice>
<xs:sequence>
<xs:element name="RouteKey" type="RouteKey"/>
<xs:element name="date" type="xs:date"/>
<xs:element name="dispatchStationUid" type="UidType"/>
<xs:element name="arrivalStationUid" type="UidType"/>
</xs:sequence>
<xs:sequence>
<xs:element name="tripId" type="IDType" minOccurs="1"/>
<xs:element name="dispatchStationId" type="IDType" minOccurs="1"/>
<xs:element name="arrivalStationId" type="IDType" minOccurs="1"/>
</xs:sequence>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="GetFreeSeatsResponse">
<xs:complexType>
<xs:complexContent>
<xs:extension base="AbstractResponse">
<xs:sequence>
<xs:element name="Body">
<xs:complexType>
<xs:choice>
<xs:element name="Seat" type="Seat" maxOccurs="unbounded"/>
<xs:element name="TransitSeat" type="TransitSeat" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="GetTicketTypesRequest">
<xs:complexType>
<xs:sequence>
@ -639,220 +602,4 @@ @@ -639,220 +602,4 @@
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="SetStationInfoRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="stationId" type="IDType" minOccurs="1"/>
<xs:element name="uid" type="UidType" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SetStationInfoResponse">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="AbstractResponse"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:complexType name="TransitSeat">
<xs:sequence>
<xs:element name="seatId" type="IDType" minOccurs="1"/>
<xs:element name="seatNum" type="xs:int" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:element name="TransitBookRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="RouteKey" type="RouteKey"/>
<xs:element name="dispatchStationUid" type="UidType"/>
<xs:element name="arrivalStationUid" type="UidType"/>
<xs:element name="date" type="xs:date"/>
<xs:element name="seatId" type="IDType" maxOccurs="unbounded" minOccurs="1"/>
<xs:element name="Agent" type="Agent" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TransitBookResponse">
<xs:complexType>
<xs:complexContent>
<xs:extension base="AbstractResponse">
<xs:sequence>
<xs:element name="Body">
<xs:complexType>
<xs:sequence>
<xs:element name="TransitTicket" minOccurs="1" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="ticketId" type="IDType" minOccurs="1"/>
<xs:element name="seatNum" type="xs:int" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:simpleType name="RelationType">
<xs:restriction base="xs:string">
<xs:enumeration value="OWN"/>
<xs:enumeration value="AGENT"/>
<xs:enumeration value="ATP"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="TransitConfirmRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="RouteKey" type="RouteKey"/>
<xs:element name="ticketId" type="IDType" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="Ticket" maxOccurs="unbounded" minOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="ticketId" type="IDType" minOccurs="1" maxOccurs="1"/>
<xs:element name="Passenger" type="Passenger" minOccurs="0"/>
<xs:element name="ticketSeries" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ticketNumber" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="price" type="xs:decimal" minOccurs="1" maxOccurs="1"/>
<xs:element name="relation" type="RelationType" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Agent" type="Agent" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TransitConfirmResponse">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="AbstractResponse"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="TransitCancelRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="RouteKey" type="RouteKey"/>
<xs:element name="ticketId" type="IDType" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="Agent" type="Agent" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TransitCancelResponse">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="AbstractResponse"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:complexType name="CarrierType">
<xs:sequence>
<xs:element name="name" type="SimpleStringType" minOccurs="0"/>
<xs:element name="inn" type="InnType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:element name="TransitTripInfoRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="RouteKey" type="RouteKey"/>
<xs:element name="date" type="xs:date"/>
<xs:element name="dispatchStationUid" type="UidType" minOccurs="0"/>
<xs:element name="arrivalStationUid" type="UidType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="TransitTicket">
<xs:sequence>
<xs:element name="dispatchStationUid" type="UidType"/>
<xs:element name="dispatchStationName" type="SimpleStringType"/>
<xs:element name="arrivalStationUid" type="UidType"/>
<xs:element name="arrivalStationName" type="SimpleStringType"/>
<xs:element name="Passenger" type="Passenger"/>
<xs:element name="ticketId" type="IDType" minOccurs="1"/>
<xs:element name="ticketSeries" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="ticketNumber" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="seatNum" type="xs:int" minOccurs="1"/>
<xs:element name="Agent" type="Agent"/>
<xs:element name="price" type="xs:decimal"/>
</xs:sequence>
</xs:complexType>
<xs:element name="TransitTripInfoResponse">
<xs:complexType>
<xs:complexContent>
<xs:extension base="AbstractResponse">
<xs:sequence>
<xs:element name="Body">
<xs:complexType>
<xs:sequence>
<xs:element name="Ticket" type="TransitTicket" maxOccurs="unbounded"/>
<xs:element name="maxSeats" type="xs:int"/>
<xs:element name="freeSeats" type="xs:int"/>
<xs:element name="Carrier" type="CarrierType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="TransitRouteInfoRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="RouteKey" type="RouteKey"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="RouteItem">
<xs:sequence>
<xs:element name="order" type="xs:int"/>
<xs:element name="stationName" type="SimpleStringType"/>
<xs:element name="stationUid" type="UidType"/>
<xs:element name="distance" type="xs:integer"/>
<xs:element name="arrivalTime" type="xs:time"/>
<xs:element name="dispatchTime" type="xs:time"/>
</xs:sequence>
</xs:complexType>
<xs:element name="TransitRouteInfoResponse">
<xs:complexType>
<xs:complexContent>
<xs:extension base="AbstractResponse">
<xs:sequence>
<xs:element name="Body">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="SimpleStringType"/>
<xs:element name="RouteItem" type="RouteItem" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:schema>

238
avs5rs_transit.xsd

@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:c="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
attributeFormDefault="qualified">
@ -72,7 +72,28 @@ @@ -72,7 +72,28 @@
</xs:sequence>
</xs:complexType>
<xs:complexType name="Seat">
<xs:sequence>
<xs:element name="id" type="IDType" minOccurs="1"/>
<xs:element name="num" type="xs:int" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="GenderType">
<xs:restriction base="xs:string">
<xs:enumeration value="MALE"/>
<xs:enumeration value="FEMALE"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ErrorCode">
<xs:restriction base="xs:string">
<xs:enumeration value="INTERNAL"/>
<xs:enumeration value="NOT_FOUND"/>
<xs:enumeration value="SEAT_OCCUPIED"/>
<xs:enumeration value="PERSONAL_DATA_INCORRECT"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="SetStationInfoRequest">
<xs:complexType>
@ -82,7 +103,7 @@ @@ -82,7 +103,7 @@
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SetStationInfoResponse">
<xs:complexType>
<xs:complexContent>
@ -91,18 +112,28 @@ @@ -91,18 +112,28 @@
</xs:complexType>
</xs:element>
<xs:element name="GetFreeSeatsRequest">
<xs:complexType name="TransitSeat">
<xs:sequence>
<xs:element name="seatId" type="IDType" minOccurs="1"/>
<xs:element name="seatNum" type="xs:int" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:element name="TransitBookRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="RouteKey" type="RouteKey"/>
<xs:element name="date" type="xs:date"/>
<xs:element name="dispatchStationUid" type="UidType"/>
<xs:element name="arrivalStationUid" type="UidType"/>
<xs:element name="date" type="xs:date"/>
<xs:element name="seatId" type="IDType" maxOccurs="unbounded" minOccurs="1"/>
<xs:element name="Agent" type="Agent" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="GetFreeSeatsResponse">
<xs:element name="TransitBookResponse">
<xs:complexType>
<xs:complexContent>
<xs:extension base="AbstractResponse">
@ -110,7 +141,14 @@ @@ -110,7 +141,14 @@
<xs:element name="Body">
<xs:complexType>
<xs:sequence>
<xs:element name="TransitSeat" type="TransitSeat" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="TransitTicket" minOccurs="1" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="ticketId" type="IDType" minOccurs="1"/>
<xs:element name="seatNum" type="xs:int" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
@ -120,44 +158,121 @@ @@ -120,44 +158,121 @@
</xs:complexType>
</xs:element>
<xs:complexType name="TransitSeat">
<xs:sequence>
<xs:element name="seatId" type="IDType" minOccurs="1"/>
<xs:element name="seatNum" type="xs:int" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="RelationType">
<xs:restriction base="xs:string">
<xs:enumeration value="OWN"/>
<xs:enumeration value="AGENT"/>
<xs:enumeration value="ATP"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="TransitConfirmRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="RouteKey" type="RouteKey"/>
<xs:element name="ticketId" type="IDType" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="Ticket" maxOccurs="unbounded" minOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="ticketId" type="IDType" minOccurs="1" maxOccurs="1"/>
<xs:element name="Passenger" type="Passenger" minOccurs="0"/>
<xs:element name="ticketSeries" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="ticketNumber" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="price" type="xs:decimal" minOccurs="1" maxOccurs="1"/>
<xs:element name="relation" type="RelationType" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Agent" type="Agent" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TransitBookRequest">
<xs:element name="TransitConfirmResponse">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="AbstractResponse"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="TransitCancelRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="RouteKey" type="RouteKey"/>
<xs:element name="dispatchStationUid" type="UidType"/>
<xs:element name="arrivalStationUid" type="UidType"/>
<xs:element name="date" type="xs:date"/>
<xs:element name="seatId" type="IDType" maxOccurs="unbounded" minOccurs="1"/>
<xs:element name="Agent" type="Agent" minOccurs="1"/>
<xs:element name="ticketId" type="IDType" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="Agent" type="Agent" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="TransitTicket">
<xs:element name="TransitCancelResponse">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="AbstractResponse"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:complexType name="CarrierType">
<xs:sequence>
<xs:element name="ticketId" type="IDType" minOccurs="1"/>
<xs:element name="seatNum" type="xs:int" minOccurs="1"/>
<xs:element name="name" type="SimpleStringType" minOccurs="0"/>
<xs:element name="inn" type="InnType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:element name="TransitBookResponse">
<xs:complexType name="Passenger">
<xs:sequence>
<xs:element name="firstName" type="xs:string" minOccurs="1"/>
<xs:element name="lastName" type="xs:string" minOccurs="1"/>
<xs:element name="middleName" type="xs:string" minOccurs="0"/>
<xs:element name="docNum" type="xs:string" minOccurs="0"/>
<xs:element name="docSeries" type="xs:string" minOccurs="0"/>
<xs:element name="docTypeId" type="IDType" minOccurs="1"/>
<xs:element name="birthday" type="xs:date" minOccurs="0"/>
<xs:element name="citizenshipISO2" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="2"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="gender" type="GenderType" minOccurs="0"/>
<xs:element name="phone" type="xs:string" minOccurs="0"/>
<xs:element name="info" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:element name="GetFreeSeatsRequest">
<xs:complexType>
<xs:choice>
<xs:sequence>
<xs:element name="RouteKey" type="RouteKey"/>
<xs:element name="date" type="xs:date"/>
<xs:element name="dispatchStationUid" type="UidType"/>
<xs:element name="arrivalStationUid" type="UidType"/>
</xs:sequence>
<xs:sequence>
<xs:element name="tripId" type="IDType" minOccurs="1"/>
<xs:element name="dispatchStationId" type="IDType" minOccurs="1"/>
<xs:element name="arrivalStationId" type="IDType" minOccurs="1"/>
</xs:sequence>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="GetFreeSeatsResponse">
<xs:complexType>
<xs:complexContent>
<xs:extension base="AbstractResponse">
<xs:sequence>
<xs:element name="Body">
<xs:complexType>
<xs:sequence>
<xs:element name="TransitTicket" type="TransitTicket" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
<xs:choice>
<xs:element name="Seat" type="Seat" maxOccurs="unbounded"/>
<xs:element name="TransitSeat" type="TransitSeat" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:sequence>
@ -166,38 +281,91 @@ @@ -166,38 +281,91 @@
</xs:complexType>
</xs:element>
<xs:element name="TransitConfirmRequest">
<xs:element name="TransitTripInfoRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="RouteKey" type="RouteKey"/>
<xs:element name="ticketId" type="IDType" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="Agent" type="Agent" minOccurs="0"/>
<xs:element name="date" type="xs:date"/>
<xs:element name="dispatchStationUid" type="UidType" minOccurs="0"/>
<xs:element name="arrivalStationUid" type="UidType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TransitConfirmResponse">
<xs:complexType name="TransitTicket">
<xs:sequence>
<xs:element name="dispatchStationUid" type="UidType"/>
<xs:element name="dispatchStationName" type="SimpleStringType"/>
<xs:element name="arrivalStationUid" type="UidType"/>
<xs:element name="arrivalStationName" type="SimpleStringType"/>
<xs:element name="Passenger" type="Passenger"/>
<xs:element name="ticketId" type="IDType" minOccurs="1"/>
<xs:element name="ticketSeries" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="ticketNumber" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="seatNum" type="xs:int" minOccurs="1"/>
<xs:element name="Agent" type="Agent"/>
<xs:element name="price" type="xs:decimal"/>
<xs:element name="passengerGone" type="xs:boolean"/>
</xs:sequence>
</xs:complexType>
<xs:element name="TransitTripInfoResponse">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="AbstractResponse"/>
<xs:extension base="AbstractResponse">
<xs:sequence>
<xs:element name="Body">
<xs:complexType>
<xs:sequence>
<xs:element name="Ticket" type="TransitTicket" maxOccurs="unbounded"/>
<xs:element name="maxSeats" type="xs:int"/>
<xs:element name="freeSeats" type="xs:int"/>
<xs:element name="Carrier" type="CarrierType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="TransitCancelRequest">
<xs:element name="TransitRouteInfoRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="RouteKey" type="RouteKey"/>
<xs:element name="ticketId" type="IDType" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="Agent" type="Agent" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TransitCancelResponse">
<xs:complexType name="RouteItem">
<xs:sequence>
<xs:element name="order" type="xs:int"/>
<xs:element name="stationName" type="SimpleStringType"/>
<xs:element name="stationUid" type="UidType"/>
<xs:element name="distance" type="xs:integer"/>
<xs:element name="arrivalTime" type="xs:time"/>
<xs:element name="dispatchTime" type="xs:time"/>
</xs:sequence>
</xs:complexType>
<xs:element name="TransitRouteInfoResponse">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="AbstractResponse"/>
<xs:extension base="AbstractResponse">
<xs:sequence>
<xs:element name="Body">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="SimpleStringType"/>
<xs:element name="RouteItem" type="RouteItem" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>

21
src/main/java/com/artmark/avs5rs/dispatcher/DispatcherService.java

@ -0,0 +1,21 @@ @@ -0,0 +1,21 @@
package com.artmark.avs5rs.dispatcher;
import com.artmark.avs5rs.dispatcher.model.UpdateTicketRequest;
import com.artmark.avs5rs.dispatcher.model.UpdateTicketResponse;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
/**
* Сервис операций диспетчера.
* @author Ushmodin N.
* @since 07.07.2016 10:06
*/
@Path("/dispatcher")
public interface DispatcherService {
@POST
@Path("updateTicket")
UpdateTicketResponse updateTicket(UpdateTicketRequest request);
}

160
src/main/java/com/artmark/avs5rs/dispatcher/model/AbstractResponse.java

@ -0,0 +1,160 @@ @@ -0,0 +1,160 @@
package com.artmark.avs5rs.dispatcher.model;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for AbstractResponse complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="AbstractResponse">
* &lt;complexContent>
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* &lt;sequence>
* &lt;element name="Error" minOccurs="0">
* &lt;complexType>
* &lt;complexContent>
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* &lt;sequence>
* &lt;element name="code" type="{http://www.w3.org/2001/XMLSchema}string"/>
* &lt;element name="message" type="{http://www.w3.org/2001/XMLSchema}string"/>
* &lt;/sequence>
* &lt;/restriction>
* &lt;/complexContent>
* &lt;/complexType>
* &lt;/element>
* &lt;/sequence>
* &lt;/restriction>
* &lt;/complexContent>
* &lt;/complexType>
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "AbstractResponse", propOrder = {
"error"
})
@XmlSeeAlso({
UpdateTicketResponse.class
})
public class AbstractResponse {
@XmlElement(name = "Error")
protected AbstractResponse.Error error;
/**
* Gets the value of the error property.
*
* @return
* possible object is
* {@link AbstractResponse.Error }
*
*/
public AbstractResponse.Error getError() {
return error;
}
/**
* Sets the value of the error property.
*
* @param value
* allowed object is
* {@link AbstractResponse.Error }
*
*/
public void setError(AbstractResponse.Error value) {
this.error = value;
}
/**
* <p>Java class for anonymous complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType>
* &lt;complexContent>
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* &lt;sequence>
* &lt;element name="code" type="{http://www.w3.org/2001/XMLSchema}string"/>
* &lt;element name="message" type="{http://www.w3.org/2001/XMLSchema}string"/>
* &lt;/sequence>
* &lt;/restriction>
* &lt;/complexContent>
* &lt;/complexType>
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"code",
"message"
})
public static class Error {
@XmlElement(required = true)
protected String code;
@XmlElement(required = true)
protected String message;
/**
* Gets the value of the code property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getCode() {
return code;
}
/**
* Sets the value of the code property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setCode(String value) {
this.code = value;
}
/**
* Gets the value of the message property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getMessage() {
return message;
}
/**
* Sets the value of the message property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setMessage(String value) {
this.message = value;
}
}
}

42
src/main/java/com/artmark/avs5rs/dispatcher/model/ErrorCode.java

@ -0,0 +1,42 @@ @@ -0,0 +1,42 @@
package com.artmark.avs5rs.dispatcher.model;
import javax.xml.bind.annotation.XmlEnum;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for ErrorCode.
*
* <p>The following schema fragment specifies the expected content contained within this class.
* <p>
* <pre>
* &lt;simpleType name="ErrorCode">
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
* &lt;enumeration value="INTERNAL"/>
* &lt;enumeration value="NOT_FOUND"/>
* &lt;enumeration value="SEAT_OCCUPIED"/>
* &lt;enumeration value="PERSONAL_DATA_INCORRECT"/>
* &lt;/restriction>
* &lt;/simpleType>
* </pre>
*
*/
@XmlType(name = "ErrorCode")
@XmlEnum
public enum ErrorCode {
INTERNAL,
NOT_FOUND,
SEAT_OCCUPIED,
PERSONAL_DATA_INCORRECT;
public String value() {
return name();
}
public static ErrorCode fromValue(String v) {
return valueOf(v);
}
}

72
src/main/java/com/artmark/avs5rs/dispatcher/model/ObjectFactory.java

@ -0,0 +1,72 @@ @@ -0,0 +1,72 @@
package com.artmark.avs5rs.dispatcher.model;
import javax.xml.bind.annotation.XmlRegistry;
/**
* This object contains factory methods for each
* Java content interface and Java element interface
* generated in the com.artmark.avs5rs.dispatcher.model package.
* <p>An ObjectFactory allows you to programatically
* construct new instances of the Java representation
* for XML content. The Java representation of XML
* content can consist of schema derived interfaces
* and classes representing the binding of schema
* type definitions, element declarations and model
* groups. Factory methods for each of these are
* provided in this class.
*
*/
@XmlRegistry
public class ObjectFactory {
/**
* Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: com.artmark.avs5rs.dispatcher.model
*
*/
public ObjectFactory() {
}
/**
* Create an instance of {@link AbstractResponse }
*
*/
public AbstractResponse createAbstractResponse() {
return new AbstractResponse();
}
/**
* Create an instance of {@link UpdateTicketResponse }
*
*/
public UpdateTicketResponse createUpdateTicketResponse() {
return new UpdateTicketResponse();
}
/**
* Create an instance of {@link AbstractResponse.Error }
*
*/
public AbstractResponse.Error createAbstractResponseError() {
return new AbstractResponse.Error();
}
/**
* Create an instance of {@link UpdateTicketRequest }
*
*/
public UpdateTicketRequest createUpdateTicketRequest() {
return new UpdateTicketRequest();
}
/**
* Create an instance of {@link RouteKey }
*
*/
public RouteKey createRouteKey() {
return new RouteKey();
}
}

121
src/main/java/com/artmark/avs5rs/dispatcher/model/RouteKey.java

@ -0,0 +1,121 @@ @@ -0,0 +1,121 @@
package com.artmark.avs5rs.dispatcher.model;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.datatype.XMLGregorianCalendar;
/**
* <p>Java class for RouteKey complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType name="RouteKey">
* &lt;complexContent>
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* &lt;sequence>
* &lt;element name="dispatchStationUid" type="{}UidType"/>
* &lt;element name="arrivalStationUid" type="{}UidType"/>
* &lt;element name="dispatchTime" type="{http://www.w3.org/2001/XMLSchema}time"/>
* &lt;/sequence>
* &lt;/restriction>
* &lt;/complexContent>
* &lt;/complexType>
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "RouteKey", propOrder = {
"dispatchStationUid",
"arrivalStationUid",
"dispatchTime"
})
public class RouteKey {
@XmlElement(required = true)
protected String dispatchStationUid;
@XmlElement(required = true)
protected String arrivalStationUid;
@XmlElement(required = true)
@XmlSchemaType(name = "time")
protected XMLGregorianCalendar dispatchTime;
/**
* Gets the value of the dispatchStationUid property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getDispatchStationUid() {
return dispatchStationUid;
}
/**
* Sets the value of the dispatchStationUid property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setDispatchStationUid(String value) {
this.dispatchStationUid = value;
}
/**
* Gets the value of the arrivalStationUid property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getArrivalStationUid() {
return arrivalStationUid;
}
/**
* Sets the value of the arrivalStationUid property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setArrivalStationUid(String value) {
this.arrivalStationUid = value;
}
/**
* Gets the value of the dispatchTime property.
*
* @return
* possible object is
* {@link XMLGregorianCalendar }
*
*/
public XMLGregorianCalendar getDispatchTime() {
return dispatchTime;
}
/**
* Sets the value of the dispatchTime property.
*
* @param value
* allowed object is
* {@link XMLGregorianCalendar }
*
*/
public void setDispatchTime(XMLGregorianCalendar value) {
this.dispatchTime = value;
}
}

119
src/main/java/com/artmark/avs5rs/dispatcher/model/UpdateTicketRequest.java

@ -0,0 +1,119 @@ @@ -0,0 +1,119 @@
package com.artmark.avs5rs.dispatcher.model;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for anonymous complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType>
* &lt;complexContent>
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* &lt;sequence>
* &lt;element name="RouteKey" type="{}RouteKey"/>
* &lt;element name="ticketId" type="{}IDType"/>
* &lt;element name="passengerGone" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
* &lt;/sequence>
* &lt;/restriction>
* &lt;/complexContent>
* &lt;/complexType>
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"routeKey",
"ticketId",
"passengerGone"
})
@XmlRootElement(name = "UpdateTicketRequest")
public class UpdateTicketRequest {
@XmlElement(name = "RouteKey", required = true)
protected RouteKey routeKey;
@XmlElement(required = true)
protected String ticketId;
protected Boolean passengerGone;
/**
* Gets the value of the routeKey property.
*
* @return
* possible object is
* {@link RouteKey }
*
*/
public RouteKey getRouteKey() {
return routeKey;
}
/**
* Sets the value of the routeKey property.
*
* @param value
* allowed object is
* {@link RouteKey }
*
*/
public void setRouteKey(RouteKey value) {
this.routeKey = value;
}
/**
* Gets the value of the ticketId property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getTicketId() {
return ticketId;
}
/**
* Sets the value of the ticketId property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setTicketId(String value) {
this.ticketId = value;
}
/**
* Gets the value of the passengerGone property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public Boolean isPassengerGone() {
return passengerGone;
}
/**
* Sets the value of the passengerGone property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setPassengerGone(Boolean value) {
this.passengerGone = value;
}
}

34
src/main/java/com/artmark/avs5rs/dispatcher/model/UpdateTicketResponse.java

@ -0,0 +1,34 @@ @@ -0,0 +1,34 @@
package com.artmark.avs5rs.dispatcher.model;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for anonymous complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* &lt;complexType>
* &lt;complexContent>
* &lt;extension base="{}AbstractResponse">
* &lt;/extension>
* &lt;/complexContent>
* &lt;/complexType>
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "")
@XmlRootElement(name = "UpdateTicketResponse")
public class UpdateTicketResponse
extends AbstractResponse
{
}

68
src/main/java/com/artmark/avs5rs/dispatcher/model/avs5rs_dispatcher.xsd

@ -0,0 +1,68 @@ @@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:c="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
attributeFormDefault="qualified">
<xs:simpleType name="IDType">
<xs:restriction base="xs:string">
<xs:maxLength value="36"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AbstractResponse">
<xs:sequence>
<xs:element name="Error" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="code" type="xs:string" minOccurs="1"/>
<xs:element name="message" type="xs:string" minOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="UidType">
<xs:restriction base="xs:string">
<xs:length value="36"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="RouteKey">
<xs:sequence>
<xs:element name="dispatchStationUid" type="UidType"/>
<xs:element name="arrivalStationUid" type="UidType"/>
<xs:element name="dispatchTime" type="xs:time"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="ErrorCode">
<xs:restriction base="xs:string">
<xs:enumeration value="INTERNAL"/>
<xs:enumeration value="NOT_FOUND"/>
<xs:enumeration value="SEAT_OCCUPIED"/>
<xs:enumeration value="PERSONAL_DATA_INCORRECT"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="UpdateTicketRequest">
<xs:complexType>
<c:sequence>
<xs:element name="RouteKey" type="RouteKey" minOccurs="1"/>
<xs:element name="ticketId" type="IDType" minOccurs="1"/>
<xs:element name="passengerGone" type="xs:boolean" minOccurs="0"/>
</c:sequence>
</xs:complexType>
</xs:element>
<xs:element name="UpdateTicketResponse">
<xs:complexType>
<xs:complexContent>
<xs:extension base="AbstractResponse"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:schema>

44
src/main/java/com/artmark/avs5rs/model/Agent.java

@ -1,44 +0,0 @@ @@ -1,44 +0,0 @@
package com.artmark.avs5rs.model;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* Информация об агенте
*
* @author V.Skorykh
* @since 30.05.2016 13:42
* @since 5.2
*/
@XmlType
@XmlAccessorType(XmlAccessType.FIELD)
public class Agent {
/**
* ИНН агента
*/
private String inn;
/**
* Имя агента (название организации)
*/
private String name;
public String getInn() {
return inn;
}
public void setInn(String inn) {
this.inn = inn;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}

64
src/main/java/com/artmark/avs5rs/model/BookOrderRequest.java

@ -1,64 +0,0 @@ @@ -1,64 +0,0 @@
package com.artmark.avs5rs.model;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import java.util.List;
/**
* @author Ushmodin N.
* @since 07.07.2016 11:04
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name = "BookOrderRequest")
public class BookOrderRequest {
private String tripId;
private String dispatchStationId;
private String arrivalStationId;
@XmlElement(name = "Sale")
private List<Sale> sales;
@XmlElement(name = "Agent")
private Agent agent;
public String getTripId() {
return tripId;
}
public void setTripId(String tripId) {
this.tripId = tripId;
}
public String getDispatchStationId() {
return dispatchStationId;
}
public void setDispatchStationId(String dispatchStationId) {
this.dispatchStationId = dispatchStationId;
}
public String getArrivalStationId() {
return arrivalStationId;
}
public void setArrivalStationId(String arrivalStationId) {
this.arrivalStationId = arrivalStationId;
}
public List<Sale> getSales() {
return sales;
}
public void setSales(List<Sale> sales) {
this.sales = sales;
}
public Agent getAgent() {
return agent;
}
public void setAgent(Agent agent) {
this.agent = agent;
}
}

28
src/main/java/com/artmark/avs5rs/model/BookOrderResponse.java

@ -1,28 +0,0 @@ @@ -1,28 +0,0 @@
package com.artmark.avs5rs.model;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* @author Ushmodin N.
* @since 07.07.2016 11:09
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "BookOrderResponse")
public class BookOrderResponse {
/**
* Идентификато договора