Profil nach Vertrag wählbar.

This commit is contained in:
2025-05-05 07:18:40 +02:00
parent b9db9d05c1
commit 8e5378396a
3 changed files with 77 additions and 85 deletions

View File

@@ -269,10 +269,23 @@
\subsubsection{Response} \subsubsection{Response}
Der Response kann 0…n passende Verträge enthalten, von denen die Polizzennummer oder die VertragsID übermittelt wird.\\
\includegraphics[width=9cm]{../../../docGen/omds3_ON3_Vertrag_p5} \includegraphics[width=9cm]{../../../docGen/omds3_ON3_Vertrag_p5}
Der Response kann 0…n passende Verträge enthalten, von denen die Polizzennummer oder die VertragsID und das
anzuwendende Profil für die Einbeziehung übermittelt wird.\\
Das Element Vertrag hat die folgende Form:
\includegraphics[width=9cm]{omds3_ON3_Vertrag_p6}
Wobei\\
\begin{itemize}
\item Vertrag \textemdash~eine Polizzennummer oder VertragsID ist
\item Profil \textemdash~die Nummer des Profils 1 bis 4 für die Einbeziehung ist.
Es können auch mehrere Profile angegeben werden.
\end{itemize}
Wenn für einen Versicherungsnehmer in der Sparte keine Verträge existieren, enthält das Responseobjekt keine Wenn für einen Versicherungsnehmer in der Sparte keine Verträge existieren, enthält das Responseobjekt keine
Vertrag-Elemente, es wird aber kein Soap-Fault geworfen. Vertrag-Elemente, es wird aber kein Soap-Fault geworfen.
@@ -480,6 +493,7 @@
\subsection{Fachliche Beschreibung} \subsection{Fachliche Beschreibung}
Der Service \glqq AmendRiskSubmit\grqq{} führt die Einbeziehung durch. Der Service \glqq AmendRiskSubmit\grqq{} führt die Einbeziehung durch.
Für diese Durchführung der Einbeziehung sind keine vorangegangenen Serviceaufrufe notwendig.
Wenn der Aufruf in irgend einer Weise fehlerhaft ist, erhält der Aufrufer eine SOAP-Exception zurück. Wenn der Aufruf in irgend einer Weise fehlerhaft ist, erhält der Aufrufer eine SOAP-Exception zurück.
\subsubsection{Status} \subsubsection{Status}
@@ -489,30 +503,14 @@
Der Benutzer existiert und kann über die Daten im SOAP-Header authentifiziert werden. Der Benutzer existiert und kann über die Daten im SOAP-Header authentifiziert werden.
\subsubsection{Ablauf} \subsubsection{Ablauf}
Der Consumer übermittelt die Daten für eine Einbeziehung (Vertrag, Risikoobjekt und etwaige weitere Angaben). Der Consumer übermittelt die Daten für eine Einbeziehung (Vertrag, Risikoobjekt und etwaige weitere Angaben).
Der Serviceprovider prüft diese Daten und antwortet mit einer Bestätigung, dass die Einbeziehung durchgeführt Der Serviceprovider prüft diese Daten und antwortet mit einer Bestätigung, dass die Einbeziehung durchgeführt
wurde oder entgegengenommen wurde. wurde oder entgegengenommen wurde oder mit einem Fehler.
\subsubsection{Prüflogik} \subsubsection{Prüflogik}
Es wird geprüft, ob eine Authentifizierung des Benutzers über die Daten im SOAP-Header möglich ist.\\ Die Prüflogik \texttt{muss} die gleiche wie bei der Methode \glqq AmendRiskCheck\grqq{} sein, sie wird hier daher nicht nochmals
beschrieben.
Weiters wird geprüft, ob die angegebene VUNr vom Service unterstützt wird. Falls die VUNr falsch ist, wird
ein SOAP-Fault geworfen.\\
Es wird geprüft, ob im Request ein AuthFilter-Element vorhanden ist, welches den Vermittler näher spezifiziert. Es \textit{kann} ein
SOAP-Fault geworfen werden, wenn ein AuthFilter-Element übermittelt wird, obwohl ein solches nicht erwartet wird. Es
\textit{muss} ein SOAP-Fault geworfen werden, wenn kein AuthFilter-Element übermittelt wird, obwohl ein solches benötigt wird.
und es \textit{muss} ein SOAP-Fault geworfen werden, falls ein AuthFilter-Element übermittelt wird, es aber fachlich nicht passt,
beispielsweise weil der User für den Vermittler nicht berechtigt ist.\\
Es wird geprüft, ob der Vertrag in der übermittelten Einbeziehung existiert und ob der User bei diesem eine Einbeziehung
durchführen darf. Ist dies nicht der Fall \textit{muss} ein SOAP-Fault geworfen werden.
Es wird geprüft, ob die Daten zum Risikoobjekt ausreichend sind und verarbeitet werden können. Können die Angaben zum
Risikoobjekt nicht verarbeitet werden, \textit{muss} ein SOAP-Fault geworfen werden.
Wenn weitere Angaben zur Einbeziehung übermittelt werden, so werden diese auf Gültigkeit geprüft. Scheitert die
Prüfung \textit{muss} ein SOAP-Fault geworfen werden.
\subsection{Technische Dokumentation} \subsection{Technische Dokumentation}
@@ -522,31 +520,34 @@
\subsubsection{Request} \subsubsection{Request}
\includegraphics[width=9cm]{../../../docGen/omds3_ON3_Vertrag_p25} \includegraphics[width=9cm]{../../../docGen/omds3_ON3_Vertrag_p18}
\noindent Wobei \noindent Wobei
\begin{itemize} \begin{itemize}
\item AuthFilter \textemdash~falls für die Einbeziehung fachlich die Angabe eines Vermittlers benötigt wird \item AuthFilter \textemdash~falls für die Einbeziehung fachlich die Angabe eines Vermittlers benötigt wird
und dieser sich nicht aus dem User ableiten lässt, kann hier eine Vermittlernummer oder eine MaklerID und dieser sich nicht aus dem User ableiten lässt, kann hier eine Vermittlernummer oder eine MaklerID
übermittelt werden. Es ist vom Serviceprovider vorher festzulegen, ob eine solche Angabe erforderlich ist. übermittelt werden. Es ist vom Serviceprovider vorher festzulegen, ob eine solche Angabe erforderlich ist.
\item Einbeziehung \textemdash~die Einbeziehung, die geprüft werden soll als \texttt{Einbeziehung\_Type}. \item Einbeziehung \textemdash~die Einbeziehung, die durchgeführt werden soll als \texttt{Einbeziehung\_Type}.
\end{itemize} \end{itemize}
\subsubsection{Response} \subsubsection{Response}
\includegraphics[width=9cm]{../../../docGen/omds3_ON3_Vertrag_p21}
Der Response enthält Der Response enthält
\begin{itemize} \begin{itemize}
\item Status \textemdash~der Status OK, wenn die Angaben für die Einbeziehung stimmen und eine Einbeziehung in der \item Dokument \textemdash~optional ein oder mehrere Dokumente, die sich aus der Einbeziehung ergeben. Wenn bei
übermittelten Form möglich ist. den Status NOK, wenn die Angaben für die Einbeziehung in der übermittelten Form einer Flotte Einzelpolizzen erstellt werden, kann das die Einzelpolizze sein.
in Ordnung sind und eine Einbeziehung so nicht möglich wäre. Unabhängig ob der Status OK oder NOK ist, kann der \item Einzelvertrag \textemdash~optional die Polizzennummer oder VertragsID eines Einzelvertrags, der sich aus
Response Meldungs-Objekte mit Hinweisen enthalten, welche Änderungen an den Daten der Einbeziehung gemacht werden sollten. der Einbeziehung ergibt.
\item Einbeziehung \textemdash~die unveränderte oder mit Hinweisen ergänzte Einbeziehung aus dem Request. \item Geschaeftsfallnummer \textemdash~falls die Einbeziehung angenommen wurde aber aus technischen oder
fachlichen Gründen nicht sofort durchführbar ist eine Geschaeftsfallnummer, mit welcher die Einbeziehung
nachverfolgt werden kann. Falls die Einbeziehung wegen eines Fehlers nicht angenommen werden kann, wird ein
SOAP-Fault geworfen.
\end{itemize} \end{itemize}
\includegraphics[width=9cm]{../../../docGen/omds3_ON3_Vertrag_p28}
\subsubsection{Fehler} \subsubsection{Fehler}
Folgende Fehler werden über das Fault-Element des Webservice geworfen: Es werden die gleichen Fehler wie bei \glqq AmendRiskCheck\grqq{} über das Fault-Element des Webservice geworfen:
\begin{tabularx}{\textwidth}{lp{2cm}p{3.5cm}p{6cm}} \begin{tabularx}{\textwidth}{lp{2cm}p{3.5cm}p{6cm}}
\toprule \toprule
@@ -562,5 +563,25 @@
\bottomrule \bottomrule
\end{tabularx} \end{tabularx}
\section{Anforderungen Implementierung}
\subsection{Client}
Der Client muss mit derzeit zwei Profilen umgehen können. In jedem Fall kann der Client über die Informationen zum VN
die VertragsIds beziehen, in welche das Risikoobjekt (lies das Kfz) einbezogen werden kann.
Zum einen ist zu implementieren ein sehr einfaches \textit{Profil 1}, bei welchem keine weiteren
Angaben für eine Einbeziehung gemacht werden und bei dem es nur die Methode \glqq AmendRiskSubmit\grqq{} gibt.
Zum anderen ist zu implementieren das aufwändigere \textit{Profil 2}, bei welchem \glqq AmendRiskProposal\grqq{}
die Information vorgibt, wie \textemdash~insbesondere mit welchen zusätzlichen Angaben \textemdash~eine Einbeziehung erfolgen soll.
Ferner der Test der Einbeziehung mit \glqq AmendRiskCheck\grqq{} und die Durchführung der Einbeziehung mittels
\glqq AmendRiskSubmit\grqq{}.
Für die zusätzlichen Angaben zur Einbeziehung gibt das jeweilige Versicherungsunternehmen das zu verwendende Objekt
und die Logik dazu vor.
Zu einem späteren Zeitpunkt ist \textit{Profil 3} mit einer unternehmensübergreifenden Logik für Angaben zur
Einbeziehung zu implementieren und ein \textit{Profil 4} mit einer Übergabe eines Deeplinks in \glqq AmendRiskProposal\grqq{},
wobei dann die Einbeziehung im Browser abgeschlossen wird.
\end{document} \end{document}

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

@@ -549,7 +549,7 @@
<!-- =========================================================== --> <!-- =========================================================== -->
<!-- | Einbeziehung Risiko aka Flotte | --> <!-- | Einbeziehung Risiko aka Flotte | -->
<!-- =========================================================== --> <!-- =========================================================== -->
<xsd:element name="AmendableContractsRequest"> <xsd:element name="AmendableContractsRequest" final="#all">
<xsd:annotation> <xsd:annotation>
<xsd:documentation>Requestobjekt, um Verträge zu erhalten, in welche Risikoobjekte einbezogen werden können.</xsd:documentation> <xsd:documentation>Requestobjekt, um Verträge zu erhalten, in welche Risikoobjekte einbezogen werden können.</xsd:documentation>
</xsd:annotation> </xsd:annotation>
@@ -575,7 +575,7 @@
</xsd:complexContent> </xsd:complexContent>
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
<xsd:element name="AmendableContractsResponse"> <xsd:element name="AmendableContractsResponse" final="#all">
<xsd:annotation> <xsd:annotation>
<xsd:documentation>Response mit Verträgen für den VN in der vorgegebenen Sparte, in welche Risikoobjekte einbezogen werden können.</xsd:documentation> <xsd:documentation>Response mit Verträgen für den VN in der vorgegebenen Sparte, in welche Risikoobjekte einbezogen werden können.</xsd:documentation>
</xsd:annotation> </xsd:annotation>
@@ -583,9 +583,9 @@
<xsd:complexContent> <xsd:complexContent>
<xsd:extension base="cst:CommonResponse_Type"> <xsd:extension base="cst:CommonResponse_Type">
<xsd:sequence> <xsd:sequence>
<xsd:element name="Vertrag" type="cst:Ersatzpolizze_Type" minOccurs="0" maxOccurs="unbounded"> <xsd:element name="Vertrag" type="VertragEinbeziehung_Type" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation> <xsd:annotation>
<xsd:documentation>Vertrag</xsd:documentation> <xsd:documentation>Vertrag und Profil für eine Einbeziehung</xsd:documentation>
</xsd:annotation> </xsd:annotation>
</xsd:element> </xsd:element>
</xsd:sequence> </xsd:sequence>
@@ -593,7 +593,7 @@
</xsd:complexContent> </xsd:complexContent>
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
<xsd:element name="AmendRiskProposalRequest"> <xsd:element name="AmendRiskProposalRequest" final="#all">
<xsd:annotation> <xsd:annotation>
<xsd:documentation>Requests zur Anfrage eines Vorschlags für die Einbeziehung eines Risikoobjekts in einen Vertrag</xsd:documentation> <xsd:documentation>Requests zur Anfrage eines Vorschlags für die Einbeziehung eines Risikoobjekts in einen Vertrag</xsd:documentation>
</xsd:annotation> </xsd:annotation>
@@ -619,7 +619,7 @@
</xsd:complexContent> </xsd:complexContent>
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
<xsd:element name="AmendRiskProposalResponse"> <xsd:element name="AmendRiskProposalResponse" final="#all">
<xsd:annotation> <xsd:annotation>
<xsd:documentation>Response mit einem Vorschlag für die Einbeziehung eines Risikoobjekts in einen Vertrag</xsd:documentation> <xsd:documentation>Response mit einem Vorschlag für die Einbeziehung eines Risikoobjekts in einen Vertrag</xsd:documentation>
</xsd:annotation> </xsd:annotation>
@@ -633,50 +633,7 @@
</xsd:complexContent> </xsd:complexContent>
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
<xsd:element name="AmendRiskCheckStatefulRequest" > <xsd:element name="AmendRiskCheckRequest" final="#all">
<xsd:complexType >
<xsd:complexContent>
<xsd:extension base="cst:CommonRequest_Type">
<xsd:sequence>
<xsd:element name="AuthFilter" type="cst:AuthorizationFilter" minOccurs="0">
<xsd:annotation><xsd:documentation>Falls notwendig Angabe des Vermittlers, z.B. in Form einer Vermittlernummer</xsd:documentation></xsd:annotation>
</xsd:element>
<xsd:element name="Einbeziehung" type="Einbeziehung_Type" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>Typ für die probeweise Durchführung einer Einbeziehung ohne Geschäftsfall</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Geschaeftsfallnummer" type="cst:ObjektId_Type" minOccurs="0">
<xsd:annotation>
<xsd:documentation>Geschaeftsfallnummer, wenn eine solche bereits vergeben wurde und der Geschäftsfall aktualisiert werden soll.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="AmendRiskCheckStatefulResponse">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="cst:CommonResponse_Type">
<xsd:sequence>
<xsd:element name="Einbeziehung" type="Einbeziehung_Type" minOccurs="1" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>Ergebnis der probeweise ausgeführten Einbeziehung mit Meldungen.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Geschaeftsfallnummer" type="cst:ObjektId_Type" minOccurs="0">
<xsd:annotation>
<xsd:documentation>Geschaeftsfallnummer wenn ein Geschäftsfall für die Einbeziehung angelegt oder erfolgreich aktualisiert wurde.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="AmendRiskCheckRequest" >
<xsd:complexType > <xsd:complexType >
<xsd:complexContent> <xsd:complexContent>
<xsd:extension base="cst:CommonRequest_Type"> <xsd:extension base="cst:CommonRequest_Type">
@@ -694,7 +651,7 @@
</xsd:complexContent> </xsd:complexContent>
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
<xsd:element name="AmendRiskCheckResponse"> <xsd:element name="AmendRiskCheckResponse" final="#all">
<xsd:complexType> <xsd:complexType>
<xsd:complexContent> <xsd:complexContent>
<xsd:extension base="cst:CommonResponse_Type"> <xsd:extension base="cst:CommonResponse_Type">
@@ -709,7 +666,7 @@
</xsd:complexContent> </xsd:complexContent>
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
<xsd:element name="AmendRiskSubmitRequest"> <xsd:element name="AmendRiskSubmitRequest" final="#all">
<xsd:complexType> <xsd:complexType>
<xsd:complexContent> <xsd:complexContent>
<xsd:extension base="cst:CommonRequest_Type"> <xsd:extension base="cst:CommonRequest_Type">
@@ -725,7 +682,7 @@
</xsd:complexContent> </xsd:complexContent>
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
<xsd:element name="AmendRiskSubmitResponse"> <xsd:element name="AmendRiskSubmitResponse" final="#all">
<xsd:complexType> <xsd:complexType>
<xsd:complexContent> <xsd:complexContent>
<xsd:extension base="cst:CommonSimpleResponse_Type"> <xsd:extension base="cst:CommonSimpleResponse_Type">
@@ -771,6 +728,20 @@
</xsd:element> </xsd:element>
</xsd:sequence> </xsd:sequence>
</xsd:complexType> </xsd:complexType>
<xsd:complexType name="VertragEinbeziehung_Type" final="#all">
<xsd:sequence>
<xsd:element name="Vertrag" type="cst:Ersatzpolizze_Type" />
<xsd:element name="Profil" type="ProfilEinbeziehung_Type" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="ProfilEinbeziehung_Type" final="#all">
<xsd:restriction base="xsd:unsignedByte">
<xsd:enumeration value="1"/>
<xsd:enumeration value="2"/>
<xsd:enumeration value="3"/>
<xsd:enumeration value="4"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="AngabenEinbeziehung_Type" abstract="true"> <xsd:complexType name="AngabenEinbeziehung_Type" abstract="true">
<xsd:annotation> <xsd:annotation>