Advertisement
Guest User

JDL

a guest
Apr 25th, 2019
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.57 KB | None | 0 0
  1. application {
  2. config {
  3. baseName store,
  4. applicationType gateway,
  5. packageName com.jhipster.demo.store,
  6. serviceDiscoveryType eureka,
  7. authenticationType jwt,
  8. prodDatabaseType mysql,
  9. cacheProvider hazelcast,
  10. buildTool maven,
  11. //messageBroker kafka,
  12. clientFramework angularX,
  13. enableSwaggerCodegen true,
  14. testFrameworks [protractor]
  15. }
  16. entities *
  17. }
  18. application {
  19. config {
  20. baseName crm,
  21. applicationType microservice,
  22. packageName com.jhipster.demo.crm,
  23. serviceDiscoveryType eureka,
  24. authenticationType jwt,
  25. prodDatabaseType postgresql,
  26. buildTool maven,
  27. searchEngine elasticsearch,
  28. serverPort 8081,
  29. skipUserManagement true
  30. }
  31. entities * except Invoice, Shipment
  32. }
  33. application {
  34. config {
  35. baseName accountancy,
  36. applicationType microservice,
  37. packageName com.jhipster.demo.accountancy,
  38. serviceDiscoveryType eureka,
  39. authenticationType jwt,
  40. databaseType mongodb,
  41. prodDatabaseType mongodb,
  42. devDatabaseType mongodb,
  43. cacheProvider no,
  44. enableHibernateCache false,
  45. buildTool maven,
  46. serverPort 8082,
  47. skipUserManagement true,
  48. testFrameworks [gatling]
  49. }
  50. entities Invoice, Shipment
  51. }
  52.  
  53. entity Product {
  54. name String required
  55. description String
  56. price BigDecimal required min(0)
  57. size Size required
  58. image ImageBlob
  59. }
  60. enum Size {
  61. S, M, L, XL, XXL
  62. }
  63. entity Customer {
  64. firstName String required
  65. lastName String required
  66. gender Gender required
  67. email String required pattern(/^[^@\s]+@[^@\s]+\.[^@\s]+$/)
  68. phone String required
  69. addressLine1 String required
  70. addressLine2 String
  71. city String required
  72. country String required
  73. }
  74. enum Gender {
  75. MALE, FEMALE, OTHER
  76. }
  77. entity ProductOrder {
  78. placedDate Instant required
  79. status OrderStatus required
  80. code String required
  81. invoiceId String
  82. }
  83. enum OrderStatus {
  84. COMPLETED, PENDING, CANCELLED
  85. }
  86. entity OrderItem {
  87. quantity Integer required min(0)
  88. totalPrice BigDecimal required min(0)
  89. status OrderItemStatus required
  90. }
  91. enum OrderItemStatus {
  92. AVAILABLE, OUT_OF_STOCK, BACK_ORDER
  93. }
  94. relationship ManyToOne {
  95. OrderItem{product(name) required} to Product
  96. }
  97. relationship OneToMany {
  98. Customer{order} to ProductOrder{customer(email) required},
  99. ProductOrder{orderItem} to OrderItem{order(code) required} ,
  100. }
  101. service Product, Customer, ProductOrder, OrderItem with serviceClass
  102. paginate Product, Customer, ProductOrder, OrderItem with pagination
  103. /* Entities for Invoice microservice */
  104. entity Invoice {
  105. code String required
  106. date Instant required
  107. details String
  108. status InvoiceStatus required
  109. paymentMethod PaymentMethod required
  110. paymentDate Instant required
  111. paymentAmount BigDecimal required
  112. }
  113. enum InvoiceStatus {
  114. PAID, ISSUED, CANCELLED
  115. }
  116. entity Shipment {
  117. trackingCode String
  118. date Instant required
  119. details String
  120. }
  121. enum PaymentMethod {
  122. CREDIT_CARD, CASH_ON_DELIVERY, PAYPAL
  123. }
  124. relationship OneToMany {
  125. Invoice{shipment} to Shipment{invoice(code) required}
  126. }
  127. service Invoice, Shipment with serviceClass
  128. paginate Invoice, Shipment with pagination
  129. microservice Invoice, Shipment with accountancy
  130. microservice Customer, Product, ProductOrder, OrderItem with crm
  131. deployment {
  132. deploymentType kubernetes,
  133. appsFolders [accountancy, crm, store],
  134. monitoring no,
  135. serviceDiscoveryType eureka,
  136. dockerRepositoryName "DOCKERNAME",
  137. kubernetesNamespace NAMESPACE,
  138. istio false,
  139. kubernetesServiceType LoadBalancer,
  140. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement