59 lines
10 KiB
Plaintext
59 lines
10 KiB
Plaintext
<mxfile>
|
|
<diagram name="系统类图" id="class-diagram">
|
|
<mxGraphModel dx="1100" dy="1100" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1100" pageHeight="1100" math="0" shadow="0">
|
|
<root>
|
|
<mxCell id="0"/>
|
|
<mxCell id="1" parent="0"/>
|
|
<mxCell id="tbl_user" value="<b>sys_user (用户表)</b><hr size="1"><p style="margin:4px;">id BIGINT PK<br>username VARCHAR(50)<br>password VARCHAR(100)<br>name VARCHAR(50)<br>phone VARCHAR(30)<br>role VARCHAR(20)<br>status TINYINT<br>created_at DATETIME<br>updated_at DATETIME</p>" style="align=left;verticalAlign=top;fillColor=#ffffff;strokeColor=#000000;overflow=hidden;whiteSpace=wrap;html=1;fontSize=11;" vertex="1" parent="1">
|
|
<mxGeometry x="30" y="30" width="180" height="220" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="tbl_elder" value="<b>elder (长者表)</b><hr size="1"><p style="margin:4px;">id BIGINT PK<br>name VARCHAR(50)<br>gender VARCHAR(10)<br>id_card VARCHAR(30)<br>birthday DATE<br>room_no VARCHAR(20)<br>check_in_date DATE<br>care_level VARCHAR(20)<br>status VARCHAR(20)<br>remark VARCHAR(200)</p>" style="align=left;verticalAlign=top;fillColor=#ffffff;strokeColor=#000000;overflow=hidden;whiteSpace=wrap;html=1;fontSize=11;" vertex="1" parent="1">
|
|
<mxGeometry x="400" y="30" width="180" height="240" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="tbl_family_elder" value="<b>family_elder (关联表)</b><hr size="1"><p style="margin:4px;">id BIGINT PK<br>family_id BIGINT FK<br>elder_id BIGINT FK<br>relationship VARCHAR(20)<br>created_at DATETIME</p>" style="align=left;verticalAlign=top;fillColor=#ffffff;strokeColor=#000000;overflow=hidden;whiteSpace=wrap;html=1;fontSize=11;" vertex="1" parent="1">
|
|
<mxGeometry x="230" y="320" width="180" height="140" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="tbl_schedule" value="<b>schedule (排班表)</b><hr size="1"><p style="margin:4px;">id BIGINT PK<br>nurse_id BIGINT FK<br>date DATE<br>shift VARCHAR(20)<br>task VARCHAR(200)<br>created_at DATETIME<br>updated_at DATETIME</p>" style="align=left;verticalAlign=top;fillColor=#ffffff;strokeColor=#000000;overflow=hidden;whiteSpace=wrap;html=1;fontSize=11;" vertex="1" parent="1">
|
|
<mxGeometry x="30" y="320" width="180" height="180" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="tbl_care" value="<b>care_record (护理记录表)</b><hr size="1"><p style="margin:4px;">id BIGINT PK<br>elder_id BIGINT FK<br>nurse_id BIGINT FK<br>content VARCHAR(500)<br>attachment_url VARCHAR(200)<br>record_time DATETIME<br>created_at DATETIME</p>" style="align=left;verticalAlign=top;fillColor=#ffffff;strokeColor=#000000;overflow=hidden;whiteSpace=wrap;html=1;fontSize=11;" vertex="1" parent="1">
|
|
<mxGeometry x="30" y="560" width="200" height="180" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="tbl_health" value="<b>health_record (健康记录表)</b><hr size="1"><p style="margin:4px;">id BIGINT PK<br>elder_id BIGINT FK<br>nurse_id BIGINT FK<br>temperature DECIMAL<br>bp_systolic INT<br>bp_diastolic INT<br>heart_rate INT<br>note VARCHAR(200)<br>record_time DATETIME<br>created_at DATETIME</p>" style="align=left;verticalAlign=top;fillColor=#ffffff;strokeColor=#000000;overflow=hidden;whiteSpace=wrap;html=1;fontSize=11;" vertex="1" parent="1">
|
|
<mxGeometry x="280" y="560" width="200" height="230" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="tbl_handover" value="<b>handover (交班记录表)</b><hr size="1"><p style="margin:4px;">id BIGINT PK<br>nurse_id BIGINT FK<br>date DATE<br>content VARCHAR(500)<br>created_at DATETIME</p>" style="align=left;verticalAlign=top;fillColor=#ffffff;strokeColor=#000000;overflow=hidden;whiteSpace=wrap;html=1;fontSize=11;" vertex="1" parent="1">
|
|
<mxGeometry x="30" y="800" width="180" height="140" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="tbl_notice" value="<b>notice (通知表)</b><hr size="1"><p style="margin:4px;">id BIGINT PK<br>title VARCHAR(100)<br>content VARCHAR(1000)<br>target_role VARCHAR(20)<br>target_user_id BIGINT<br>created_by BIGINT FK<br>created_at DATETIME</p>" style="align=left;verticalAlign=top;fillColor=#ffffff;strokeColor=#000000;overflow=hidden;whiteSpace=wrap;html=1;fontSize=11;" vertex="1" parent="1">
|
|
<mxGeometry x="280" y="840" width="200" height="180" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="tbl_feedback" value="<b>feedback (反馈表)</b><hr size="1"><p style="margin:4px;">id BIGINT PK<br>family_id BIGINT FK<br>elder_id BIGINT FK<br>type VARCHAR(20)<br>content VARCHAR(500)<br>rating INT<br>status VARCHAR(20)<br>reply VARCHAR(500)<br>created_at DATETIME<br>updated_at DATETIME</p>" style="align=left;verticalAlign=top;fillColor=#ffffff;strokeColor=#000000;overflow=hidden;whiteSpace=wrap;html=1;fontSize=11;" vertex="1" parent="1">
|
|
<mxGeometry x="630" y="320" width="180" height="240" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="tbl_bill" value="<b>bill (账单表)</b><hr size="1"><p style="margin:4px;">id BIGINT PK<br>elder_id BIGINT FK<br>month VARCHAR(7)<br>bed_fee DECIMAL<br>care_fee DECIMAL<br>meal_fee DECIMAL<br>other_fee DECIMAL<br>total DECIMAL<br>status VARCHAR(20)<br>created_at DATETIME<br>paid_at DATETIME</p>" style="align=left;verticalAlign=top;fillColor=#ffffff;strokeColor=#000000;overflow=hidden;whiteSpace=wrap;html=1;fontSize=11;" vertex="1" parent="1">
|
|
<mxGeometry x="630" y="620" width="180" height="250" as="geometry"/>
|
|
</mxCell>
|
|
<mxCell id="tbl_payment" value="<b>payment_record (支付记录表)</b><hr size="1"><p style="margin:4px;">id BIGINT PK<br>bill_id BIGINT FK<br>family_id BIGINT FK<br>amount DECIMAL<br>method VARCHAR(20)<br>paid_at DATETIME</p>" style="align=left;verticalAlign=top;fillColor=#ffffff;strokeColor=#000000;overflow=hidden;whiteSpace=wrap;html=1;fontSize=11;" vertex="1" parent="1">
|
|
<mxGeometry x="870" y="620" width="200" height="160" as="geometry"/>
|
|
</mxCell>
|
|
<!-- Relationships -->
|
|
<mxCell id="r1" style="edgeStyle=orthogonalEdgeStyle;endArrow=ERmany;endFill=0;startArrow=ERmandOne;startFill=0;strokeColor=#000000;" edge="1" source="tbl_user" target="tbl_schedule" parent="1"><mxGeometry relative="1" as="geometry"/></mxCell>
|
|
<mxCell id="r2" style="edgeStyle=orthogonalEdgeStyle;endArrow=ERmany;endFill=0;startArrow=ERmandOne;startFill=0;strokeColor=#000000;" edge="1" source="tbl_user" target="tbl_care" parent="1"><mxGeometry relative="1" as="geometry"/></mxCell>
|
|
<mxCell id="r3" style="edgeStyle=orthogonalEdgeStyle;endArrow=ERmany;endFill=0;startArrow=ERmandOne;startFill=0;strokeColor=#000000;" edge="1" source="tbl_user" target="tbl_health" parent="1"><mxGeometry relative="1" as="geometry"/></mxCell>
|
|
<mxCell id="r4" style="edgeStyle=orthogonalEdgeStyle;endArrow=ERmany;endFill=0;startArrow=ERmandOne;startFill=0;strokeColor=#000000;" edge="1" source="tbl_user" target="tbl_handover" parent="1"><mxGeometry relative="1" as="geometry"/></mxCell>
|
|
<mxCell id="r5" style="edgeStyle=orthogonalEdgeStyle;endArrow=ERmany;endFill=0;startArrow=ERmandOne;startFill=0;strokeColor=#000000;" edge="1" source="tbl_user" target="tbl_family_elder" parent="1"><mxGeometry relative="1" as="geometry"/></mxCell>
|
|
<mxCell id="r6" style="edgeStyle=orthogonalEdgeStyle;endArrow=ERmany;endFill=0;startArrow=ERmandOne;startFill=0;strokeColor=#000000;" edge="1" source="tbl_user" target="tbl_feedback" parent="1"><mxGeometry relative="1" as="geometry"/></mxCell>
|
|
<mxCell id="r7" style="edgeStyle=orthogonalEdgeStyle;endArrow=ERmany;endFill=0;startArrow=ERmandOne;startFill=0;strokeColor=#000000;" edge="1" source="tbl_user" target="tbl_payment" parent="1"><mxGeometry relative="1" as="geometry"/></mxCell>
|
|
<mxCell id="r8" style="edgeStyle=orthogonalEdgeStyle;endArrow=ERmany;endFill=0;startArrow=ERmandOne;startFill=0;strokeColor=#000000;" edge="1" source="tbl_user" target="tbl_notice" parent="1"><mxGeometry relative="1" as="geometry"/></mxCell>
|
|
<mxCell id="r9" style="edgeStyle=orthogonalEdgeStyle;endArrow=ERmany;endFill=0;startArrow=ERmandOne;startFill=0;strokeColor=#000000;" edge="1" source="tbl_elder" target="tbl_family_elder" parent="1"><mxGeometry relative="1" as="geometry"/></mxCell>
|
|
<mxCell id="r10" style="edgeStyle=orthogonalEdgeStyle;endArrow=ERmany;endFill=0;startArrow=ERmandOne;startFill=0;strokeColor=#000000;" edge="1" source="tbl_elder" target="tbl_care" parent="1"><mxGeometry relative="1" as="geometry"/></mxCell>
|
|
<mxCell id="r11" style="edgeStyle=orthogonalEdgeStyle;endArrow=ERmany;endFill=0;startArrow=ERmandOne;startFill=0;strokeColor=#000000;" edge="1" source="tbl_elder" target="tbl_health" parent="1"><mxGeometry relative="1" as="geometry"/></mxCell>
|
|
<mxCell id="r12" style="edgeStyle=orthogonalEdgeStyle;endArrow=ERmany;endFill=0;startArrow=ERmandOne;startFill=0;strokeColor=#000000;" edge="1" source="tbl_elder" target="tbl_bill" parent="1"><mxGeometry relative="1" as="geometry"/></mxCell>
|
|
<mxCell id="r13" style="edgeStyle=orthogonalEdgeStyle;endArrow=ERmany;endFill=0;startArrow=ERmandOne;startFill=0;strokeColor=#000000;" edge="1" source="tbl_elder" target="tbl_feedback" parent="1"><mxGeometry relative="1" as="geometry"/></mxCell>
|
|
<mxCell id="r14" style="edgeStyle=orthogonalEdgeStyle;endArrow=ERmany;endFill=0;startArrow=ERmandOne;startFill=0;strokeColor=#000000;" edge="1" source="tbl_bill" target="tbl_payment" parent="1"><mxGeometry relative="1" as="geometry"/></mxCell>
|
|
</root>
|
|
</mxGraphModel>
|
|
</diagram>
|
|
</mxfile>
|