Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

288 lines
8.9KB

  1. <?php
  2. /**
  3. * Copyright Guillaume Bourgeois (2018)
  4. *
  5. * contact@souke.fr
  6. *
  7. * Ce logiciel est un programme informatique servant à aider les producteurs
  8. * à distribuer leur production en circuits courts.
  9. *
  10. * Ce logiciel est régi par la licence CeCILL soumise au droit français et
  11. * respectant les principes de diffusion des logiciels libres. Vous pouvez
  12. * utiliser, modifier et/ou redistribuer ce programme sous les conditions
  13. * de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA
  14. * sur le site "http://www.cecill.info".
  15. *
  16. * En contrepartie de l'accessibilité au code source et des droits de copie,
  17. * de modification et de redistribution accordés par cette licence, il n'est
  18. * offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons,
  19. * seule une responsabilité restreinte pèse sur l'auteur du programme, le
  20. * titulaire des droits patrimoniaux et les concédants successifs.
  21. *
  22. * A cet égard l'attention de l'utilisateur est attirée sur les risques
  23. * associés au chargement, à l'utilisation, à la modification et/ou au
  24. * développement et à la reproduction du logiciel par l'utilisateur étant
  25. * donné sa spécificité de logiciel libre, qui peut le rendre complexe à
  26. * manipuler et qui le réserve donc à des développeurs et des professionnels
  27. * avertis possédant des connaissances informatiques approfondies. Les
  28. * utilisateurs sont donc invités à charger et tester l'adéquation du
  29. * logiciel à leurs besoins dans des conditions permettant d'assurer la
  30. * sécurité de leurs systèmes et ou de leurs données et, plus généralement,
  31. * à l'utiliser et l'exploiter dans les mêmes conditions de sécurité.
  32. *
  33. * Le fait que vous puissiez accéder à cet en-tête signifie que vous avez
  34. * pris connaissance de la licence CeCILL, et que vous en avez accepté les
  35. * termes.
  36. */
  37. namespace common\components;
  38. use domain\Communication\Email\EmailModule;
  39. use domain\Config\TaxRate\TaxRateModule;
  40. use domain\Config\Unit\UnitModule;
  41. use domain\Distribution\Distribution\DistributionModule;
  42. use domain\Distribution\PointSaleDistribution\PointSaleDistributionModule;
  43. use domain\Distribution\ProductDistribution\ProductDistributionModule;
  44. use domain\Document\DeliveryNote\DeliveryNoteModule;
  45. use domain\Document\Document\DocumentModule;
  46. use domain\Document\Invoice\InvoiceModule;
  47. use domain\Document\Quotation\QuotationModule;
  48. use domain\Feature\Feature\FeatureModule;
  49. use domain\Feature\FeatureProducer\FeatureProducerModule;
  50. use domain\Communication\AutomaticEmail\AutomaticEmailModule;
  51. use domain\Opinion\OpinionModule;
  52. use domain\Order\Order\OrderModule;
  53. use domain\Order\OrderStatus\OrderStatusModule;
  54. use domain\Order\OrderStatusHistory\OrderStatusHistoryModule;
  55. use domain\Order\ProductOrder\ProductOrderModule;
  56. use domain\Payment\PaymentModule;
  57. use domain\PointSale\PointSale\PointSaleModule;
  58. use domain\PointSale\SharedPointSale\SharedPointSaleModule;
  59. use domain\PointSale\UserPointSale\UserPointSaleModule;
  60. use domain\Producer\Producer\ProducerModule;
  61. use domain\Producer\ProducerPriceRange\ProducerPriceRangeModule;
  62. use domain\Product\Accessory\AccessoryModule;
  63. use domain\Product\Product\ProductModule;
  64. use domain\Product\ProductAccessory\ProductAccessoryModule;
  65. use domain\Product\ProductCategory\ProductCategoryModule;
  66. use domain\Product\ProductPointSale\ProductPointSaleModule;
  67. use domain\Product\ProductPrice\Module\ProductPriceModule;
  68. use domain\Setting\SettingModule;
  69. use domain\Subscription\ProductSubscription\ProductSubscriptionModule;
  70. use domain\Subscription\Subscription\SubscriptionModule;
  71. use domain\Ticket\Ticket\TicketModule;
  72. use domain\Ticket\TicketMessage\TicketMessageModule;
  73. use domain\Ticket\TicketUser\TicketUserModule;
  74. use domain\User\User\UserModule;
  75. use domain\User\UserGroup\UserGroupModule;
  76. use domain\User\UserMessage\UserMessageModule;
  77. use domain\User\UserProducer\UserProducerModule;
  78. use domain\User\UserUserGroup\UserUserGroupModule;
  79. trait BusinessLogicTrait
  80. {
  81. public function getEmailModule(): EmailModule
  82. {
  83. return EmailModule::getInstance();
  84. }
  85. public function getAutomaticEmailModule(): AutomaticEmailModule
  86. {
  87. return AutomaticEmailModule::getInstance();
  88. }
  89. public function getProductAccessoryModule(): ProductAccessoryModule
  90. {
  91. return ProductAccessoryModule::getInstance();
  92. }
  93. public function getAccessoryModule(): AccessoryModule
  94. {
  95. return AccessoryModule::getInstance();
  96. }
  97. public function getOrderStatusModule(): OrderStatusModule
  98. {
  99. return OrderStatusModule::getInstance();
  100. }
  101. public function getOrderStatusHistoryModule(): OrderStatusHistoryModule
  102. {
  103. return OrderStatusHistoryModule::getInstance();
  104. }
  105. public function getUnitModule(): UnitModule
  106. {
  107. return UnitModule::getInstance();
  108. }
  109. public function getOpinionModule(): OpinionModule
  110. {
  111. return OpinionModule::getInstance();
  112. }
  113. public function getUserProducerModule(): UserProducerModule
  114. {
  115. return UserProducerModule::getInstance();
  116. }
  117. public function getOrderModule(): OrderModule
  118. {
  119. return OrderModule::getInstance();
  120. }
  121. public function getTaxRateModule(): TaxRateModule
  122. {
  123. return TaxRateModule::getInstance();
  124. }
  125. public function getDistributionModule(): DistributionModule
  126. {
  127. return DistributionModule::getInstance();
  128. }
  129. public function getPointSaleDistributionModule(): PointSaleDistributionModule
  130. {
  131. return PointSaleDistributionModule::getInstance();
  132. }
  133. public function getProductDistributionModule(): ProductDistributionModule
  134. {
  135. return ProductDistributionModule::getInstance();
  136. }
  137. public function getDeliveryNoteModule(): DeliveryNoteModule
  138. {
  139. return DeliveryNoteModule::getInstance();
  140. }
  141. public function getDocumentModule(): DocumentModule
  142. {
  143. return DocumentModule::getInstance();
  144. }
  145. public function getInvoiceModule(): InvoiceModule
  146. {
  147. return InvoiceModule::getInstance();
  148. }
  149. public function getQuotationModule(): QuotationModule
  150. {
  151. return QuotationModule::getInstance();
  152. }
  153. public function getProductOrderModule(): ProductOrderModule
  154. {
  155. return ProductOrderModule::getInstance();
  156. }
  157. public function getPointSaleModule(): PointSaleModule
  158. {
  159. return PointSaleModule::getInstance();
  160. }
  161. public function getSharedPointSaleModule(): SharedPointSaleModule
  162. {
  163. return SharedPointSaleModule::getInstance();
  164. }
  165. public function getUserPointSaleModule(): UserPointSaleModule
  166. {
  167. return UserPointSaleModule::getInstance();
  168. }
  169. public function getProducerModule(): ProducerModule
  170. {
  171. return ProducerModule::getInstance();
  172. }
  173. public function getProducerPriceRangeModule(): ProducerPriceRangeModule
  174. {
  175. return ProducerPriceRangeModule::getInstance();
  176. }
  177. public function getProductModule(): ProductModule
  178. {
  179. return ProductModule::getInstance();
  180. }
  181. public function getProductCategoryModule(): ProductCategoryModule
  182. {
  183. return ProductCategoryModule::getInstance();
  184. }
  185. public function getProductPointSaleModule(): ProductPointSaleModule
  186. {
  187. return ProductPointSaleModule::getInstance();
  188. }
  189. public function getProductPriceModule(): ProductPriceModule
  190. {
  191. return ProductPriceModule::getInstance();
  192. }
  193. public function getProductSubscriptionModule(): ProductSubscriptionModule
  194. {
  195. return ProductSubscriptionModule::getInstance();
  196. }
  197. public function getSubscriptionModule(): SubscriptionModule
  198. {
  199. return SubscriptionModule::getInstance();
  200. }
  201. public function getPaymentModule(): PaymentModule
  202. {
  203. return PaymentModule::getInstance();
  204. }
  205. public function getUserModule(): UserModule
  206. {
  207. return UserModule::getInstance();
  208. }
  209. public function getUserMessageModule(): UserMessageModule
  210. {
  211. return UserMessageModule::getInstance();
  212. }
  213. public function getUserGroupModule(): UserGroupModule
  214. {
  215. return UserGroupModule::getInstance();
  216. }
  217. public function getUserUserGroupModule(): UserUserGroupModule
  218. {
  219. return UserUserGroupModule::getInstance();
  220. }
  221. public function getTicketModule(): TicketModule
  222. {
  223. return TicketModule::getInstance();
  224. }
  225. public function getTicketMessageModule(): TicketMessageModule
  226. {
  227. return TicketMessageModule::getInstance();
  228. }
  229. public function getTicketUserModule(): TicketUserModule
  230. {
  231. return TicketUserModule::getInstance();
  232. }
  233. public function getFeatureModule(): FeatureModule
  234. {
  235. return FeatureModule::getInstance();
  236. }
  237. public function getFeatureProducerModule(): FeatureProducerModule
  238. {
  239. return FeatureProducerModule::getInstance();
  240. }
  241. public function getSettingModule(): SettingModule
  242. {
  243. return SettingModule::getInstance();
  244. }
  245. }