Advertisement
Guest User

model5

a guest
Jul 16th, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.97 KB | None | 0 0
  1. namespace org.conductor.blockchain
  2.  
  3. /*
  4. * Moeda define um tipo de moeda
  5. */
  6. enum Moeda {
  7. o BRL
  8. o USD
  9. }
  10.  
  11. /*
  12. * Tipo de operação de compra
  13. */
  14. enum CompraTipo {
  15. o DEBITO
  16. o CREDITO
  17. }
  18.  
  19. concept Compra {
  20. o String destino
  21. o Double valor
  22. o DateTime data
  23. }
  24.  
  25. asset Fatura identified by faturaId{
  26. o String faturaId
  27. o String cartaoNumero
  28. o Portador portador
  29. o Emissor emissor
  30. o Compra[] compras
  31. o Double extras
  32. o Double total
  33. o Boolean foiPaga
  34. o DateTime dataPgmt
  35. }
  36.  
  37. /*
  38. * Credito define uma quantidade de credito cedida de um emissor a um portador
  39. */
  40. asset CartaoCredito identified by numeroCartao {
  41. o String numeroCartao
  42.  
  43. // Dados dos proprietários do cartão
  44. --> Portador portador
  45. --> Emissor emissor
  46.  
  47. // Limites
  48. o Double limiteCreditoMaximo
  49. o Double limiteDisponivel
  50. o Double limiteExcedente
  51.  
  52. // Informações cartão
  53. o String bandeira
  54. o String senha
  55. o String cvv
  56. o DateTime diaVencimento
  57.  
  58. // Historico
  59. o Compra[] compras
  60. }
  61.  
  62. /*
  63. * Emissor é a empresa que cede crédito
  64. */
  65. participant Emissor identified by emissorId {
  66. o String emissorId
  67. }
  68.  
  69. /*
  70. * Portador é um cliente dono de um ou mais créditos
  71. */
  72. concept Score{
  73. o Boolean eNegativo
  74. o Double valor
  75. }
  76.  
  77. participant Portador identified by cpf {
  78. o String cpf
  79. o String nome
  80. o String sobrenome
  81. o String endereco
  82. o Score score
  83. }
  84.  
  85. /*
  86. * Realiza uma compra
  87. */
  88. transaction RealizarCompra {
  89. --> CartaoCredito cartao
  90.  
  91. o String destino
  92. o Moeda moeda
  93. o Double valor
  94. }
  95.  
  96. transaction PagarFatura{
  97. o String idFatura
  98. o Double valor
  99. }
  100.  
  101. transaction CriarFatura{
  102. --> CartaoCredito cartao
  103. }
  104.  
  105. transaction CriarPortador{
  106. o String cpf
  107. o String nome
  108. o String sobrenome
  109. o String endereco
  110. }
  111.  
  112. transaction CriarCartao{
  113. o String numCartao
  114. o String cpf
  115. o String emissor
  116. o Double limiteCreditoMaximo
  117. o String senha
  118. o DateTime diaVencimento
  119. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement