Files
x-stake/erd.svg
2021-09-13 20:54:21 -03:00

205 lines
17 KiB
XML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.49.0 (0)
-->
<!-- Title: XStake Pages: 1 -->
<svg width="606pt" height="713pt"
viewBox="0.00 0.00 605.60 712.60" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(28.8 683.8)">
<title>XStake</title>
<polygon fill="white" stroke="transparent" points="-28.8,28.8 -28.8,-683.8 576.8,-683.8 576.8,28.8 -28.8,28.8"/>
<text text-anchor="middle" x="274" y="-640.6" font-family="Arial Bold" font-size="13.00">XStake domain model</text>
<!-- m_AdminUser -->
<g id="node1" class="node">
<title>m_AdminUser</title>
<path fill="none" stroke="black" d="M12,-47C12,-47 150,-47 150,-47 156,-47 162,-53 162,-59 162,-59 162,-130 162,-130 162,-136 156,-142 150,-142 150,-142 12,-142 12,-142 6,-142 0,-136 0,-130 0,-130 0,-59 0,-59 0,-53 6,-47 12,-47"/>
<text text-anchor="start" x="49" y="-129.2" font-family="Arial Bold" font-size="11.00">AdminUser</text>
<polyline fill="none" stroke="black" points="0,-122 162,-122 "/>
<text text-anchor="start" x="7" y="-108.5" font-family="Arial" font-size="10.00">email </text>
<text text-anchor="start" x="34" y="-108.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string U</text>
<text text-anchor="start" x="7" y="-95.5" font-family="Arial" font-size="10.00">encrypted_password </text>
<text text-anchor="start" x="101" y="-95.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
<text text-anchor="start" x="7" y="-82.5" font-family="Arial" font-size="10.00">remember_created_at </text>
<text text-anchor="start" x="105" y="-82.5" font-family="Arial Italic" font-size="10.00" fill="#999999">datetime</text>
<text text-anchor="start" x="7" y="-69.5" font-family="Arial" font-size="10.00">reset_password_sent_at </text>
<text text-anchor="start" x="117" y="-69.5" font-family="Arial Italic" font-size="10.00" fill="#999999">datetime</text>
<text text-anchor="start" x="7" y="-56.5" font-family="Arial" font-size="10.00">reset_password_token </text>
<text text-anchor="start" x="109" y="-56.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
</g>
<!-- m_BuyCryptoOrder -->
<g id="node2" class="node">
<title>m_BuyCryptoOrder</title>
<path fill="none" stroke="black" d="M210,-535.5C210,-535.5 356,-535.5 356,-535.5 362,-535.5 368,-541.5 368,-547.5 368,-547.5 368,-605.5 368,-605.5 368,-611.5 362,-617.5 356,-617.5 356,-617.5 210,-617.5 210,-617.5 204,-617.5 198,-611.5 198,-605.5 198,-605.5 198,-547.5 198,-547.5 198,-541.5 204,-535.5 210,-535.5"/>
<text text-anchor="start" x="237" y="-604.7" font-family="Arial Bold" font-size="11.00">BuyCryptoOrder</text>
<polyline fill="none" stroke="black" points="198,-597.5 368,-597.5 "/>
<text text-anchor="start" x="205" y="-584.5" font-family="Arial" font-size="10.00">paid_amount_cents </text>
<text text-anchor="start" x="293" y="-584.5" font-family="Arial Italic" font-size="10.00" fill="#999999">integer</text>
<text text-anchor="start" x="205" y="-571.5" font-family="Arial" font-size="10.00">received_amount </text>
<text text-anchor="start" x="283" y="-571.5" font-family="Arial Italic" font-size="10.00" fill="#999999">decimal (20,10)</text>
<text text-anchor="start" x="205" y="-558.5" font-family="Arial" font-size="10.00">status </text>
<text text-anchor="start" x="236" y="-558.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
<text text-anchor="start" x="205" y="-545.5" font-family="Arial" font-size="10.00">user_id </text>
<text text-anchor="start" x="240" y="-545.5" font-family="Arial Italic" font-size="10.00" fill="#999999">integer (8) FK</text>
</g>
<!-- m_DepositOrder -->
<g id="node3" class="node">
<title>m_DepositOrder</title>
<path fill="none" stroke="black" d="M214.5,-410C214.5,-410 351.5,-410 351.5,-410 357.5,-410 363.5,-416 363.5,-422 363.5,-422 363.5,-493 363.5,-493 363.5,-499 357.5,-505 351.5,-505 351.5,-505 214.5,-505 214.5,-505 208.5,-505 202.5,-499 202.5,-493 202.5,-493 202.5,-422 202.5,-422 202.5,-416 208.5,-410 214.5,-410"/>
<text text-anchor="start" x="245.5" y="-492.2" font-family="Arial Bold" font-size="11.00">DepositOrder</text>
<polyline fill="none" stroke="black" points="202.5,-485 363.5,-485 "/>
<text text-anchor="start" x="210" y="-471.5" font-family="Arial" font-size="10.00">paid_amount_cents </text>
<text text-anchor="start" x="298" y="-471.5" font-family="Arial Italic" font-size="10.00" fill="#999999">integer</text>
<text text-anchor="start" x="210" y="-458.5" font-family="Arial" font-size="10.00">received_amount_cents </text>
<text text-anchor="start" x="317" y="-458.5" font-family="Arial Italic" font-size="10.00" fill="#999999">integer</text>
<text text-anchor="start" x="210" y="-445.5" font-family="Arial" font-size="10.00">status </text>
<text text-anchor="start" x="241" y="-445.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
<text text-anchor="start" x="210" y="-432.5" font-family="Arial" font-size="10.00">transaction_id </text>
<text text-anchor="start" x="274" y="-432.5" font-family="Arial Italic" font-size="10.00" fill="#999999">uuid</text>
<text text-anchor="start" x="210" y="-419.5" font-family="Arial" font-size="10.00">user_id </text>
<text text-anchor="start" x="245" y="-419.5" font-family="Arial Italic" font-size="10.00" fill="#999999">integer (8) FK</text>
</g>
<!-- m_PaperTrail::Version -->
<g id="node5" class="node">
<title>m_PaperTrail::Version</title>
<path fill="none" stroke="black" d="M416,-354C416,-354 536,-354 536,-354 542,-354 548,-360 548,-366 548,-366 548,-437 548,-437 548,-443 542,-449 536,-449 536,-449 416,-449 416,-449 410,-449 404,-443 404,-437 404,-437 404,-366 404,-366 404,-360 410,-354 416,-354"/>
<text text-anchor="start" x="423.5" y="-436.2" font-family="Arial Bold" font-size="11.00">PaperTrail::Version</text>
<polyline fill="none" stroke="black" points="404,-429 548,-429 "/>
<text text-anchor="start" x="411" y="-415.5" font-family="Arial" font-size="10.00">event </text>
<text text-anchor="start" x="439" y="-415.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
<text text-anchor="start" x="411" y="-402.5" font-family="Arial" font-size="10.00">item_id </text>
<text text-anchor="start" x="446" y="-402.5" font-family="Arial Italic" font-size="10.00" fill="#999999">integer (8) FK</text>
<text text-anchor="start" x="411" y="-389.5" font-family="Arial" font-size="10.00">item_type </text>
<text text-anchor="start" x="457" y="-389.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
<text text-anchor="start" x="411" y="-376.5" font-family="Arial" font-size="10.00">object </text>
<text text-anchor="start" x="441" y="-376.5" font-family="Arial Italic" font-size="10.00" fill="#999999">text</text>
<text text-anchor="start" x="411" y="-363.5" font-family="Arial" font-size="10.00">whodunnit </text>
<text text-anchor="start" x="459" y="-363.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
</g>
<!-- m_DepositOrder&#45;&gt;m_PaperTrail::Version -->
<g id="edge1" class="edge">
<title>m_DepositOrder&#45;&gt;m_PaperTrail::Version</title>
<path fill="none" stroke="black" d="M363.62,-434.16C374.01,-431.11 384.67,-427.98 395.07,-424.94"/>
<polygon fill="black" stroke="black" points="395.99,-427.95 403.74,-422.39 394.21,-421.9 395.99,-427.95"/>
</g>
<!-- m_FiatBalance -->
<g id="node4" class="node">
<title>m_FiatBalance</title>
<path fill="none" stroke="black" d="M223,-311C223,-311 343,-311 343,-311 349,-311 355,-317 355,-323 355,-323 355,-368 355,-368 355,-374 349,-380 343,-380 343,-380 223,-380 223,-380 217,-380 211,-374 211,-368 211,-368 211,-323 211,-323 211,-317 217,-311 223,-311"/>
<text text-anchor="start" x="250" y="-367.2" font-family="Arial Bold" font-size="11.00">FiatBalance</text>
<polyline fill="none" stroke="black" points="211,-360 355,-360 "/>
<text text-anchor="start" x="218" y="-346.5" font-family="Arial" font-size="10.00">amount_cents </text>
<text text-anchor="start" x="283" y="-346.5" font-family="Arial Italic" font-size="10.00" fill="#999999">integer</text>
<text text-anchor="start" x="218" y="-333.5" font-family="Arial" font-size="10.00">amount_currency </text>
<text text-anchor="start" x="297" y="-333.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
<text text-anchor="start" x="218" y="-320.5" font-family="Arial" font-size="10.00">user_id </text>
<text text-anchor="start" x="253" y="-320.5" font-family="Arial Italic" font-size="10.00" fill="#999999">integer (8) FK</text>
</g>
<!-- m_FiatBalance&#45;&gt;m_PaperTrail::Version -->
<g id="edge2" class="edge">
<title>m_FiatBalance&#45;&gt;m_PaperTrail::Version</title>
<path fill="none" stroke="black" d="M355.12,-366.35C368.17,-370.18 381.87,-374.2 395.16,-378.09"/>
<polygon fill="black" stroke="black" points="394.3,-381.12 403.82,-380.63 396.07,-375.08 394.3,-381.12"/>
</g>
<!-- m_SellCryptoOrder -->
<g id="node6" class="node">
<title>m_SellCryptoOrder</title>
<path fill="none" stroke="black" d="M214.5,-198.5C214.5,-198.5 351.5,-198.5 351.5,-198.5 357.5,-198.5 363.5,-204.5 363.5,-210.5 363.5,-210.5 363.5,-268.5 363.5,-268.5 363.5,-274.5 357.5,-280.5 351.5,-280.5 351.5,-280.5 214.5,-280.5 214.5,-280.5 208.5,-280.5 202.5,-274.5 202.5,-268.5 202.5,-268.5 202.5,-210.5 202.5,-210.5 202.5,-204.5 208.5,-198.5 214.5,-198.5"/>
<text text-anchor="start" x="238" y="-267.7" font-family="Arial Bold" font-size="11.00">SellCryptoOrder</text>
<polyline fill="none" stroke="black" points="202.5,-260.5 363.5,-260.5 "/>
<text text-anchor="start" x="210" y="-247.5" font-family="Arial" font-size="10.00">paid_amount </text>
<text text-anchor="start" x="269" y="-247.5" font-family="Arial Italic" font-size="10.00" fill="#999999">decimal (20,10)</text>
<text text-anchor="start" x="210" y="-234.5" font-family="Arial" font-size="10.00">received_amount_cents </text>
<text text-anchor="start" x="317" y="-234.5" font-family="Arial Italic" font-size="10.00" fill="#999999">integer</text>
<text text-anchor="start" x="210" y="-221.5" font-family="Arial" font-size="10.00">status </text>
<text text-anchor="start" x="241" y="-221.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
<text text-anchor="start" x="210" y="-208.5" font-family="Arial" font-size="10.00">user_id </text>
<text text-anchor="start" x="245" y="-208.5" font-family="Arial Italic" font-size="10.00" fill="#999999">integer (8) FK</text>
</g>
<!-- m_StakeOrder -->
<g id="node7" class="node">
<title>m_StakeOrder</title>
<path fill="none" stroke="black" d="M223,-86.5C223,-86.5 343,-86.5 343,-86.5 349,-86.5 355,-92.5 355,-98.5 355,-98.5 355,-156.5 355,-156.5 355,-162.5 349,-168.5 343,-168.5 343,-168.5 223,-168.5 223,-168.5 217,-168.5 211,-162.5 211,-156.5 211,-156.5 211,-98.5 211,-98.5 211,-92.5 217,-86.5 223,-86.5"/>
<text text-anchor="start" x="251" y="-155.7" font-family="Arial Bold" font-size="11.00">StakeOrder</text>
<polyline fill="none" stroke="black" points="211,-148.5 355,-148.5 "/>
<text text-anchor="start" x="218" y="-135.5" font-family="Arial" font-size="10.00">amount </text>
<text text-anchor="start" x="254" y="-135.5" font-family="Arial Italic" font-size="10.00" fill="#999999">decimal (20,10)</text>
<text text-anchor="start" x="218" y="-122.5" font-family="Arial" font-size="10.00">pool_name </text>
<text text-anchor="start" x="269" y="-122.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
<text text-anchor="start" x="218" y="-109.5" font-family="Arial" font-size="10.00">status </text>
<text text-anchor="start" x="249" y="-109.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
<text text-anchor="start" x="218" y="-96.5" font-family="Arial" font-size="10.00">user_id </text>
<text text-anchor="start" x="253" y="-96.5" font-family="Arial Italic" font-size="10.00" fill="#999999">integer (8) FK</text>
</g>
<!-- m_User -->
<g id="node8" class="node">
<title>m_User</title>
<path fill="none" stroke="black" d="M12,-172.5C12,-172.5 150,-172.5 150,-172.5 156,-172.5 162,-178.5 162,-184.5 162,-184.5 162,-294.5 162,-294.5 162,-300.5 156,-306.5 150,-306.5 150,-306.5 12,-306.5 12,-306.5 6,-306.5 0,-300.5 0,-294.5 0,-294.5 0,-184.5 0,-184.5 0,-178.5 6,-172.5 12,-172.5"/>
<text text-anchor="start" x="66.5" y="-293.7" font-family="Arial Bold" font-size="11.00">User</text>
<polyline fill="none" stroke="black" points="0,-286.5 162,-286.5 "/>
<text text-anchor="start" x="7" y="-273.5" font-family="Arial" font-size="10.00">email </text>
<text text-anchor="start" x="34" y="-273.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string U</text>
<text text-anchor="start" x="7" y="-260.5" font-family="Arial" font-size="10.00">encrypted_password </text>
<text text-anchor="start" x="101" y="-260.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
<text text-anchor="start" x="7" y="-247.5" font-family="Arial" font-size="10.00">first_name </text>
<text text-anchor="start" x="56" y="-247.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
<text text-anchor="start" x="7" y="-234.5" font-family="Arial" font-size="10.00">last_name </text>
<text text-anchor="start" x="56" y="-234.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
<text text-anchor="start" x="7" y="-221.5" font-family="Arial" font-size="10.00">remember_created_at </text>
<text text-anchor="start" x="105" y="-221.5" font-family="Arial Italic" font-size="10.00" fill="#999999">datetime</text>
<text text-anchor="start" x="7" y="-208.5" font-family="Arial" font-size="10.00">reset_password_sent_at </text>
<text text-anchor="start" x="117" y="-208.5" font-family="Arial Italic" font-size="10.00" fill="#999999">datetime</text>
<text text-anchor="start" x="7" y="-195.5" font-family="Arial" font-size="10.00">reset_password_token </text>
<text text-anchor="start" x="109" y="-195.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
<text text-anchor="start" x="7" y="-182.5" font-family="Arial" font-size="10.00">wallet_address </text>
<text text-anchor="start" x="76" y="-182.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
</g>
<!-- m_User&#45;&gt;m_BuyCryptoOrder -->
<g id="edge7" class="edge">
<title>m_User&#45;&gt;m_BuyCryptoOrder</title>
<path fill="none" stroke="black" d="M97.69,-306.67C114.53,-367.59 146.11,-457.26 198,-520.5 200.44,-523.47 203.08,-526.35 205.86,-529.12"/>
<polygon fill="black" stroke="black" points="203.87,-531.57 212.6,-535.39 208.16,-526.95 203.87,-531.57"/>
</g>
<!-- m_User&#45;&gt;m_DepositOrder -->
<g id="edge6" class="edge">
<title>m_User&#45;&gt;m_DepositOrder</title>
<path fill="none" stroke="black" d="M125.4,-306.72C145.67,-335.62 171.22,-368.82 198,-395.5 200.74,-398.23 203.62,-400.94 206.57,-403.62"/>
<polygon fill="black" stroke="black" points="204.77,-406.22 213.62,-409.77 208.91,-401.48 204.77,-406.22"/>
</g>
<!-- m_User&#45;&gt;m_FiatBalance -->
<g id="edge5" class="edge">
<title>m_User&#45;&gt;m_FiatBalance</title>
<path fill="none" stroke="black" d="M162.2,-282C180.34,-291.62 199.4,-301.72 216.84,-310.96"/>
</g>
<!-- m_User&#45;&gt;m_SellCryptoOrder -->
<g id="edge8" class="edge">
<title>m_User&#45;&gt;m_SellCryptoOrder</title>
<path fill="none" stroke="black" d="M162.2,-239.5C172.45,-239.5 182.99,-239.5 193.37,-239.5"/>
<polygon fill="black" stroke="black" points="193.44,-242.65 202.44,-239.5 193.44,-236.35 193.44,-242.65"/>
</g>
<!-- m_User&#45;&gt;m_StakeOrder -->
<g id="edge4" class="edge">
<title>m_User&#45;&gt;m_StakeOrder</title>
<path fill="none" stroke="black" d="M162.2,-194.59C175.51,-187.13 189.32,-179.4 202.62,-171.95"/>
<polygon fill="black" stroke="black" points="204.51,-174.5 210.83,-167.36 201.44,-169.01 204.51,-174.5"/>
</g>
<!-- m_UserDocument -->
<g id="node9" class="node">
<title>m_UserDocument</title>
<path fill="none" stroke="black" d="M223,-0.5C223,-0.5 343,-0.5 343,-0.5 349,-0.5 355,-6.5 355,-12.5 355,-12.5 355,-44.5 355,-44.5 355,-50.5 349,-56.5 343,-56.5 343,-56.5 223,-56.5 223,-56.5 217,-56.5 211,-50.5 211,-44.5 211,-44.5 211,-12.5 211,-12.5 211,-6.5 217,-0.5 223,-0.5"/>
<text text-anchor="start" x="241.5" y="-43.7" font-family="Arial Bold" font-size="11.00">UserDocument</text>
<polyline fill="none" stroke="black" points="211,-36.5 355,-36.5 "/>
<text text-anchor="start" x="218" y="-23.5" font-family="Arial" font-size="10.00">status </text>
<text text-anchor="start" x="249" y="-23.5" font-family="Arial Italic" font-size="10.00" fill="#999999">string</text>
<text text-anchor="start" x="218" y="-10.5" font-family="Arial" font-size="10.00">user_id </text>
<text text-anchor="start" x="253" y="-10.5" font-family="Arial Italic" font-size="10.00" fill="#999999">integer (8) FK</text>
</g>
<!-- m_User&#45;&gt;m_UserDocument -->
<g id="edge3" class="edge">
<title>m_User&#45;&gt;m_UserDocument</title>
<path fill="none" stroke="black" d="M151.26,-172.25C155.09,-167.41 158.71,-162.48 162,-157.5 184.87,-122.95 169.85,-101.9 198,-71.5 201.12,-68.13 204.56,-64.98 208.22,-62.05"/>
<polygon fill="black" stroke="black" points="210.14,-64.56 215.5,-56.67 206.39,-59.49 210.14,-64.56"/>
</g>
</g>
</svg>