<?xml version="1.0" encoding="UTF-8"?>
<mxfile host="drawio" version="26.0.0">
  <diagram name="类图">
    <mxGraphModel dx="1200" dy="900" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1600" pageHeight="1200" math="0" shadow="0">
      <root>
        <mxCell id="0" />
        <mxCell id="1" parent="0" />

        <!-- 标题 -->
        <mxCell id="title" value="12306旅客管理系统 - 类图" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;fontSize=20;fontStyle=1" vertex="1" parent="1">
          <mxGeometry x="600" y="20" width="400" height="40" as="geometry" />
        </mxCell>

        <!-- ============ User类 ============ -->
        <mxCell id="user_box" value="User" style="swimlane;fontStyle=1;align=center;startSize=30;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
          <mxGeometry x="50" y="80" width="200" height="180" as="geometry" />
        </mxCell>
        <mxCell id="user_id" value="+Long id" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=0" vertex="1" parent="user_box">
          <mxGeometry y="30" width="200" height="20" as="geometry" />
        </mxCell>
        <mxCell id="user_phone" value="+String phone" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="user_box">
          <mxGeometry y="50" width="200" height="20" as="geometry" />
        </mxCell>
        <mxCell id="user_nickname" value="+String nickname" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="user_box">
          <mxGeometry y="70" width="200" height="20" as="geometry" />
        </mxCell>
        <mxCell id="user_realname" value="+String realName" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="user_box">
          <mxGeometry y="90" width="200" height="20" as="geometry" />
        </mxCell>
        <mxCell id="user_verified" value="+Boolean isVerified" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="user_box">
          <mxGeometry y="110" width="200" height="20" as="geometry" />
        </mxCell>
        <mxCell id="user_line" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;" vertex="1" parent="user_box">
          <mxGeometry y="130" width="200" height="10" as="geometry" />
        </mxCell>
        <mxCell id="user_method1" value="+login()" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=2" vertex="1" parent="user_box">
          <mxGeometry y="140" width="200" height="20" as="geometry" />
        </mxCell>
        <mxCell id="user_method2" value="+logout()" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=2" vertex="1" parent="user_box">
          <mxGeometry y="160" width="200" height="20" as="geometry" />
        </mxCell>

        <!-- ============ Passenger类 ============ -->
        <mxCell id="passenger_box" value="Passenger" style="swimlane;fontStyle=1;align=center;startSize=30;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
          <mxGeometry x="300" y="80" width="220" height="220" as="geometry" />
        </mxCell>
        <mxCell id="passenger_id" value="+Long id" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=1" vertex="1" parent="passenger_box">
          <mxGeometry y="30" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="passenger_userid" value="+Long userId" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="passenger_box">
          <mxGeometry y="50" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="passenger_name" value="+String name" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="passenger_box">
          <mxGeometry y="70" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="passenger_type" value="+PassengerType passengerType" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="passenger_box">
          <mxGeometry y="90" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="passenger_cert" value="+CertificationStatus certStatus" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="passenger_box">
          <mxGeometry y="110" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="passenger_default" value="+Boolean isDefault" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="passenger_box">
          <mxGeometry y="130" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="passenger_line" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;" vertex="1" parent="passenger_box">
          <mxGeometry y="150" width="220" height="10" as="geometry" />
        </mxCell>
        <mxCell id="passenger_method1" value="+createPassenger()" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=2" vertex="1" parent="passenger_box">
          <mxGeometry y="160" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="passenger_method2" value="+setDefault()" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=2" vertex="1" parent="passenger_box">
          <mxGeometry y="180" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="passenger_method3" value="+deletePassenger()" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=2" vertex="1" parent="passenger_box">
          <mxGeometry y="200" width="220" height="20" as="geometry" />
        </mxCell>

        <!-- ============ Order类 ============ -->
        <mxCell id="order_box" value="Order" style="swimlane;fontStyle=1;align=center;startSize=30;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
          <mxGeometry x="580" y="80" width="220" height="200" as="geometry" />
        </mxCell>
        <mxCell id="order_id" value="+Long id" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=1" vertex="1" parent="order_box">
          <mxGeometry y="30" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="order_no" value="+String orderNo" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="order_box">
          <mxGeometry y="50" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="order_userid" value="+Long userId" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="order_box">
          <mxGeometry y="70" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="order_status" value="+OrderStatus status" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="order_box">
          <mxGeometry y="90" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="order_price" value="+BigDecimal totalPrice" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="order_box">
          <mxGeometry y="110" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="order_line" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;" vertex="1" parent="order_box">
          <mxGeometry y="130" width="220" height="10" as="geometry" />
        </mxCell>
        <mxCell id="order_method1" value="+createOrder()" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=2" vertex="1" parent="order_box">
          <mxGeometry y="140" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="order_method2" value="+pay()" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=2" vertex="1" parent="order_box">
          <mxGeometry y="160" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="order_method3" value="+refund()" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=2" vertex="1" parent="order_box">
          <mxGeometry y="180" width="220" height="20" as="geometry" />
        </mxCell>

        <!-- ============ OrderItem类 ============ -->
        <mxCell id="item_box" value="OrderItem" style="swimlane;fontStyle=1;align=center;startSize=30;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
          <mxGeometry x="860" y="80" width="200" height="160" as="geometry" />
        </mxCell>
        <mxCell id="item_id" value="+Long id" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=1" vertex="1" parent="item_box">
          <mxGeometry y="30" width="200" height="20" as="geometry" />
        </mxCell>
        <mxCell id="item_orderid" value="+Long orderId" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="item_box">
          <mxGeometry y="50" width="200" height="20" as="geometry" />
        </mxCell>
        <mxCell id="item_passengerid" value="+Long passengerId" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="item_box">
          <mxGeometry y="70" width="200" height="20" as="geometry" />
        </mxCell>
        <mxCell id="item_seat" value="+String seatNumber" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="item_box">
          <mxGeometry y="90" width="200" height="20" as="geometry" />
        </mxCell>
        <mxCell id="item_line" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;" vertex="1" parent="item_box">
          <mxGeometry y="110" width="200" height="10" as="geometry" />
        </mxCell>
        <mxCell id="item_method1" value="+getTicket()" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=2" vertex="1" parent="item_box">
          <mxGeometry y="120" width="200" height="20" as="geometry" />
        </mxCell>

        <!-- ============ Train类 ============ -->
        <mxCell id="train_box" value="Train" style="swimlane;fontStyle=1;align=center;startSize=30;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
          <mxGeometry x="50" y="320" width="200" height="160" as="geometry" />
        </mxCell>
        <mxCell id="train_id" value="+Long id" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=1" vertex="1" parent="train_box">
          <mxGeometry y="30" width="200" height="20" as="geometry" />
        </mxCell>
        <mxCell id="train_code" value="+String trainCode" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="train_box">
          <mxGeometry y="50" width="200" height="20" as="geometry" />
        </mxCell>
        <mxCell id="train_type" value="+TrainType type" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="train_box">
          <mxGeometry y="70" width="200" height="20" as="geometry" />
        </mxCell>
        <mxCell id="train_line" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;" vertex="1" parent="train_box">
          <mxGeometry y="90" width="200" height="10" as="geometry" />
        </mxCell>
        <mxCell id="train_method1" value="+queryByCode()" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=2" vertex="1" parent="train_box">
          <mxGeometry y="100" width="200" height="20" as="geometry" />
        </mxCell>

        <!-- ============ TicketInventory类 ============ -->
        <mxCell id="inventory_box" value="TicketInventory" style="swimlane;fontStyle=1;align=center;startSize=30;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
          <mxGeometry x="300" y="320" width="220" height="160" as="geometry" />
        </mxCell>
        <mxCell id="inv_id" value="+Long id" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=1" vertex="1" parent="inventory_box">
          <mxGeometry y="30" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="inv_trainid" value="+Long trainId" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="inventory_box">
          <mxGeometry y="50" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="inv_date" value="+Date travelDate" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="inventory_box">
          <mxGeometry y="70" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="inv_seats" value="+Integer availableSeats" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="inventory_box">
          <mxGeometry y="90" width="220" height="20" as="geometry" />
        </mxCell>
        <mxCell id="inv_line" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;" vertex="1" parent="inventory_box">
          <mxGeometry y="110" width="220" height="10" as="geometry" />
        </mxCell>
        <mxCell id="inv_method1" value="+lockSeat()" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;spacingRight=4;whiteSpace=wrap;rotatable=0;fontStyle=2" vertex="1" parent="inventory_box">
          <mxGeometry y="120" width="220" height="20" as="geometry" />
        </mxCell>

        <!-- ============ 枚举 ============ -->
        <mxCell id="passenger_type_enum" value="PassengerType" style="swimlane;fontStyle=1;align=center;startSize=26;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="1">
          <mxGeometry x="580" y="320" width="120" height="100" as="geometry" />
        </mxCell>
        <mxCell id="pt_enum1" value="ADULT" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="passenger_type_enum">
          <mxGeometry y="26" width="120" height="18" as="geometry" />
        </mxCell>
        <mxCell id="pt_enum2" value="CHILD" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="passenger_type_enum">
          <mxGeometry y="44" width="120" height="18" as="geometry" />
        </mxCell>
        <mxCell id="pt_enum3" value="STUDENT" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="passenger_type_enum">
          <mxGeometry y="62" width="120" height="18" as="geometry" />
        </mxCell>
        <mxCell id="pt_enum4" value="DISABLED_SOLDIER" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="passenger_type_enum">
          <mxGeometry y="80" width="120" height="18" as="geometry" />
        </mxCell>

        <mxCell id="order_status_enum" value="OrderStatus" style="swimlane;fontStyle=1;align=center;startSize=26;fillColor=#d5e8d4;strokeColor=#82b366;" vertex="1" parent="1">
          <mxGeometry x="720" y="320" width="120" height="130" as="geometry" />
        </mxCell>
        <mxCell id="os_enum1" value="UNPAID" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="order_status_enum">
          <mxGeometry y="26" width="120" height="18" as="geometry" />
        </mxCell>
        <mxCell id="os_enum2" value="PAID" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="order_status_enum">
          <mxGeometry y="44" width="120" height="18" as="geometry" />
        </mxCell>
        <mxCell id="os_enum3" value="CANCELLED" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="order_status_enum">
          <mxGeometry y="62" width="120" height="18" as="geometry" />
        </mxCell>
        <mxCell id="os_enum4" value="COMPLETED" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="order_status_enum">
          <mxGeometry y="80" width="120" height="18" as="geometry" />
        </mxCell>
        <mxCell id="os_enum5" value="REFUNDED" style="text;html=1;align=left;verticalAlign=middle;spacingLeft=4;whiteSpace=wrap;rotatable=0" vertex="1" parent="order_status_enum">
          <mxGeometry y="98" width="120" height="18" as="geometry" />
        </mxCell>

        <!-- ============ 关系线 ============ -->
        <!-- User -> Passenger: 1对0..8 -->
        <mxCell id="rel1" value="1" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;endArrow=diamondThin;endFill=1;strokeColor=#6c8ebf;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="user_box" target="passenger_box">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="rel1_label" value="has&#xa;0..8" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rotatable=0;fontSize=10;" vertex="1" parent="1">
          <mxGeometry x="260" y="150" width="40" height="30" as="geometry" />
        </mxCell>

        <!-- User -> Order: 1对0..N -->
        <mxCell id="rel2" value="1" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;endArrow=diamondThin;endFill=1;strokeColor=#6c8ebf;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="user_box" target="order_box">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="rel2_label" value="places&#xa;0..N" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rotatable=0;fontSize=10;" vertex="1" parent="1">
          <mxGeometry x="510" y="150" width="50" height="30" as="geometry" />
        </mxCell>

        <!-- Order -> OrderItem: 1对1..N -->
        <mxCell id="rel3" value="1" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;endArrow=diamondThin;endFill=1;strokeColor=#6c8ebf;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="order_box" target="item_box">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="rel3_label" value="contains&#xa;1..N" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rotatable=0;fontSize=10;" vertex="1" parent="1">
          <mxGeometry x="800" y="150" width="50" height="30" as="geometry" />
        </mxCell>

        <!-- Passenger -> OrderItem: 1对0..N -->
        <mxCell id="rel4" value="1" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;endArrow=diamondThin;endFill=1;strokeColor=#6c8ebf;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="passenger_box" target="item_box">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="rel4_label" value="books&#xa;0..N" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rotatable=0;fontSize=10;" vertex="1" parent="1">
          <mxGeometry x="920" y="180" width="50" height="30" as="geometry" />
        </mxCell>

        <!-- Train -> TicketInventory: 1对0..N -->
        <mxCell id="rel5" value="1" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;endArrow=diamondThin;endFill=1;strokeColor=#6c8ebf;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="train_box" target="inventory_box">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="rel5_label" value="has&#xa;0..N" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rotatable=0;fontSize=10;" vertex="1" parent="1">
          <mxGeometry x="260" y="380" width="40" height="30" as="geometry" />
        </mxCell>

        <!-- Passenger -> PassengerType -->
        <mxCell id="rel6" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;endArrow=block;endFill=0;strokeColor=#82b366;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;dashed=1;" edge="1" parent="1" source="passenger_box" target="passenger_type_enum">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>

        <!-- Order -> OrderStatus -->
        <mxCell id="rel7" style="edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;endArrow=block;endFill=0;strokeColor=#82b366;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;dashed=1;" edge="1" parent="1" source="order_box" target="order_status_enum">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>

      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
