@dascompany/database 3.0.0 → 3.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (300) hide show
  1. package/dist/DatabaseConnection.d.ts +11 -0
  2. package/dist/DatabaseConnection.js +28 -0
  3. package/dist/SQL.json +169 -0
  4. package/dist/TableConnection.d.ts +74 -0
  5. package/dist/TableConnection.js +144 -0
  6. package/dist/mappers/AddressMapper.d.ts +9 -0
  7. package/dist/mappers/AddressMapper.js +17 -0
  8. package/dist/mappers/AdminMapper.d.ts +9 -0
  9. package/dist/mappers/AdminMapper.js +24 -0
  10. package/dist/mappers/ClientMapper.d.ts +9 -0
  11. package/dist/mappers/ClientMapper.js +24 -0
  12. package/dist/mappers/CompanyDataMapper.d.ts +9 -0
  13. package/dist/mappers/CompanyDataMapper.js +17 -0
  14. package/dist/mappers/CompanyDetailsMapper.d.ts +9 -0
  15. package/dist/mappers/CompanyDetailsMapper.js +22 -0
  16. package/dist/mappers/ContactDetailsMapper.d.ts +9 -0
  17. package/dist/mappers/ContactDetailsMapper.js +18 -0
  18. package/dist/mappers/DeliveryDetailsMapper.d.ts +9 -0
  19. package/dist/mappers/DeliveryDetailsMapper.js +17 -0
  20. package/dist/mappers/DeliveryMethodsMapper.d.ts +9 -0
  21. package/dist/mappers/DeliveryMethodsMapper.js +17 -0
  22. package/dist/mappers/DeliveryStatusMapper.d.ts +9 -0
  23. package/dist/mappers/DeliveryStatusMapper.js +15 -0
  24. package/dist/mappers/FileConnectionMapper.d.ts +9 -0
  25. package/dist/mappers/FileConnectionMapper.js +17 -0
  26. package/dist/mappers/FileMapper.d.ts +9 -0
  27. package/dist/mappers/FileMapper.js +17 -0
  28. package/dist/mappers/InvoiceDetailsMapper.d.ts +9 -0
  29. package/dist/mappers/InvoiceDetailsMapper.js +17 -0
  30. package/dist/mappers/OrderMapper.d.ts +9 -0
  31. package/dist/mappers/OrderMapper.js +19 -0
  32. package/dist/mappers/OrderProductMapper.d.ts +9 -0
  33. package/dist/mappers/OrderProductMapper.js +15 -0
  34. package/dist/mappers/PaymentDetailsMapper.d.ts +9 -0
  35. package/dist/mappers/PaymentDetailsMapper.js +17 -0
  36. package/dist/mappers/PaymentMethodsMapper.d.ts +9 -0
  37. package/dist/mappers/PaymentMethodsMapper.js +17 -0
  38. package/dist/mappers/PaymentStatusMapper.d.ts +9 -0
  39. package/dist/mappers/PaymentStatusMapper.js +15 -0
  40. package/dist/mappers/PersonalDataMapper.d.ts +9 -0
  41. package/dist/mappers/PersonalDataMapper.js +17 -0
  42. package/dist/mappers/ProductMapper.d.ts +9 -0
  43. package/dist/mappers/ProductMapper.js +20 -0
  44. package/dist/mappers/StatusMapper.d.ts +9 -0
  45. package/dist/mappers/StatusMapper.js +15 -0
  46. package/dist/query/QueryParamCreator.js +2 -0
  47. package/dist/query/QueryParams.js +5 -3
  48. package/dist/reader/AddressesReader.d.ts +6 -0
  49. package/dist/reader/AddressesReader.js +24 -0
  50. package/dist/reader/ClientAccountReader.d.ts +13 -0
  51. package/dist/reader/ClientAccountReader.js +47 -0
  52. package/dist/reader/CompanyDataReader.d.ts +4 -0
  53. package/dist/reader/CompanyDataReader.js +27 -0
  54. package/dist/reader/CompanyDetailsReader.d.ts +4 -0
  55. package/dist/reader/CompanyDetailsReader.js +15 -0
  56. package/dist/reader/ContactDetailsReader.d.ts +4 -0
  57. package/dist/reader/ContactDetailsReader.js +16 -0
  58. package/dist/reader/DeliveryDetailsReader.d.ts +4 -0
  59. package/dist/reader/DeliveryDetailsReader.js +31 -0
  60. package/dist/reader/DeliveryMethodReader.d.ts +6 -0
  61. package/dist/reader/DeliveryMethodReader.js +18 -0
  62. package/dist/reader/DeliveryStatusReader.d.ts +5 -0
  63. package/dist/reader/DeliveryStatusReader.js +31 -0
  64. package/dist/reader/FileConnectionsReader.d.ts +6 -0
  65. package/dist/reader/FileConnectionsReader.js +25 -0
  66. package/dist/reader/FilesReader.d.ts +12 -0
  67. package/dist/reader/FilesReader.js +45 -0
  68. package/dist/reader/InvoiceDetailsReader.d.ts +4 -0
  69. package/dist/reader/InvoiceDetailsReader.js +21 -0
  70. package/dist/reader/OrderProductsReader.d.ts +10 -0
  71. package/dist/reader/OrderProductsReader.js +92 -0
  72. package/dist/reader/OrderReader.d.ts +12 -0
  73. package/dist/reader/OrderReader.js +51 -0
  74. package/dist/reader/OrderStatusReader.d.ts +6 -0
  75. package/dist/reader/OrderStatusReader.js +28 -0
  76. package/dist/reader/PersonalDataReader.d.ts +5 -0
  77. package/dist/reader/PersonalDataReader.js +27 -0
  78. package/dist/reader/ProductReader.d.ts +13 -0
  79. package/dist/reader/ProductReader.js +81 -0
  80. package/dist/reader/StatusTypesReader.d.ts +3 -0
  81. package/dist/reader/StatusTypesReader.js +8 -0
  82. package/dist/reader/payment/PaymentDetailsReader.d.ts +5 -0
  83. package/dist/reader/payment/PaymentDetailsReader.js +27 -0
  84. package/dist/reader/payment/PaymentMethodReader.d.ts +6 -0
  85. package/dist/reader/payment/PaymentMethodReader.js +18 -0
  86. package/dist/reader/payment/PaymentStatusesReader.d.ts +5 -0
  87. package/dist/reader/payment/PaymentStatusesReader.js +30 -0
  88. package/dist/repo/AddressesRepo.d.ts +5 -0
  89. package/dist/repo/AddressesRepo.js +14 -0
  90. package/dist/repo/AdminRepo.d.ts +12 -0
  91. package/dist/repo/AdminRepo.js +32 -0
  92. package/dist/repo/ClientAccountRepo.d.ts +7 -0
  93. package/dist/repo/ClientAccountRepo.js +24 -0
  94. package/dist/repo/CompanyDataRepo.d.ts +4 -0
  95. package/dist/repo/CompanyDataRepo.js +11 -0
  96. package/dist/repo/CompanyDetailsRepo.d.ts +5 -0
  97. package/dist/repo/CompanyDetailsRepo.js +14 -0
  98. package/dist/repo/ContactDetailsRepo.d.ts +6 -0
  99. package/dist/repo/ContactDetailsRepo.js +19 -0
  100. package/dist/repo/DeliveryDetailsRepo.d.ts +5 -0
  101. package/dist/repo/DeliveryDetailsRepo.js +14 -0
  102. package/dist/repo/DeliveryMethodRepo.d.ts +4 -0
  103. package/dist/repo/DeliveryMethodRepo.js +11 -0
  104. package/dist/repo/FileConnectionsRepo.d.ts +7 -0
  105. package/dist/repo/FileConnectionsRepo.js +25 -0
  106. package/dist/repo/FilesRepo.d.ts +7 -0
  107. package/dist/repo/FilesRepo.js +26 -0
  108. package/dist/repo/InvoiceDetailsRepo.d.ts +5 -0
  109. package/dist/repo/InvoiceDetailsRepo.js +14 -0
  110. package/dist/repo/OrderProductsRepo.d.ts +7 -0
  111. package/dist/repo/OrderProductsRepo.js +37 -0
  112. package/dist/repo/OrderRepo.d.ts +5 -0
  113. package/dist/repo/OrderRepo.js +14 -0
  114. package/dist/repo/OrderStatusRepo.d.ts +7 -0
  115. package/dist/repo/OrderStatusRepo.js +27 -0
  116. package/dist/repo/PaymentDetailsRepo.d.ts +5 -0
  117. package/dist/repo/PaymentDetailsRepo.js +14 -0
  118. package/dist/repo/PaymentMethodRepo.d.ts +4 -0
  119. package/dist/repo/PaymentMethodRepo.js +11 -0
  120. package/dist/repo/PersonalDataRepo.d.ts +5 -0
  121. package/dist/repo/PersonalDataRepo.js +16 -0
  122. package/dist/repo/ProductRepo.d.ts +6 -0
  123. package/dist/repo/ProductRepo.js +21 -0
  124. package/dist/stockObjects/Address.d.ts +33 -0
  125. package/dist/stockObjects/Address.js +69 -0
  126. package/dist/stockObjects/Admin.d.ts +25 -0
  127. package/dist/stockObjects/Admin.js +57 -0
  128. package/dist/stockObjects/Client.d.ts +24 -0
  129. package/dist/stockObjects/Client.js +57 -0
  130. package/dist/stockObjects/CompanyData.d.ts +21 -0
  131. package/dist/stockObjects/CompanyData.js +51 -0
  132. package/dist/stockObjects/CompanyDetails.d.ts +17 -0
  133. package/dist/stockObjects/CompanyDetails.js +34 -0
  134. package/dist/stockObjects/ContactDetails.d.ts +12 -0
  135. package/dist/stockObjects/ContactDetails.js +26 -0
  136. package/dist/stockObjects/DeliveryDetails.d.ts +16 -0
  137. package/dist/stockObjects/DeliveryDetails.js +37 -0
  138. package/dist/stockObjects/DeliveryMethods.d.ts +12 -0
  139. package/dist/stockObjects/DeliveryMethods.js +26 -0
  140. package/dist/stockObjects/DeliveryStatus.d.ts +18 -0
  141. package/dist/stockObjects/DeliveryStatus.js +42 -0
  142. package/dist/stockObjects/File.d.ts +21 -0
  143. package/dist/stockObjects/File.js +50 -0
  144. package/dist/stockObjects/FileConnection.d.ts +18 -0
  145. package/dist/stockObjects/FileConnection.js +42 -0
  146. package/dist/stockObjects/InvoiceDetails.d.ts +12 -0
  147. package/dist/stockObjects/InvoiceDetails.js +26 -0
  148. package/dist/stockObjects/Order.d.ts +41 -0
  149. package/dist/stockObjects/Order.js +97 -0
  150. package/dist/stockObjects/OrderProduct.d.ts +15 -0
  151. package/dist/stockObjects/OrderProduct.js +33 -0
  152. package/dist/stockObjects/PaymentDetails.d.ts +12 -0
  153. package/dist/stockObjects/PaymentDetails.js +26 -0
  154. package/dist/stockObjects/PaymentMethods.d.ts +12 -0
  155. package/dist/stockObjects/PaymentMethods.js +26 -0
  156. package/dist/stockObjects/PaymentStatus.d.ts +13 -0
  157. package/dist/stockObjects/PaymentStatus.js +26 -0
  158. package/dist/stockObjects/PersonalData.d.ts +42 -0
  159. package/dist/stockObjects/PersonalData.js +81 -0
  160. package/dist/stockObjects/Product.d.ts +70 -0
  161. package/dist/stockObjects/Product.js +163 -0
  162. package/dist/stockObjects/Status.d.ts +23 -0
  163. package/dist/stockObjects/Status.js +50 -0
  164. package/dist/tables/clients/ClientAccountsTable.d.ts +17 -0
  165. package/dist/tables/clients/ClientAccountsTable.js +74 -0
  166. package/dist/tables/files/FileConnectionsTable.d.ts +12 -0
  167. package/dist/tables/files/FileConnectionsTable.js +41 -0
  168. package/dist/tables/files/FilesTable.d.ts +17 -0
  169. package/dist/tables/files/FilesTable.js +65 -0
  170. package/dist/tables/orders/OrdersProductsTable.d.ts +14 -0
  171. package/dist/tables/orders/OrdersProductsTable.js +54 -0
  172. package/dist/tables/orders/OrdersTable.d.ts +15 -0
  173. package/dist/tables/orders/OrdersTable.js +60 -0
  174. package/dist/tables/orders/PaymentDetailsTable.d.ts +10 -0
  175. package/dist/tables/orders/PaymentDetailsTable.js +34 -0
  176. package/dist/tables/orders/PaymentStatusTypesTable.d.ts +7 -0
  177. package/dist/tables/orders/PaymentStatusTypesTable.js +10 -0
  178. package/dist/tables/orders/PaymentStatusesTable.d.ts +9 -0
  179. package/dist/tables/orders/PaymentStatusesTable.js +30 -0
  180. package/dist/tables/orders/StatusTypesTable.d.ts +4 -0
  181. package/dist/tables/orders/StatusTypesTable.js +9 -0
  182. package/dist/tables/orders/StatusesTable.d.ts +11 -0
  183. package/dist/tables/orders/StatusesTable.js +40 -0
  184. package/dist/tables/personalInformation/AddressesTable.d.ts +10 -0
  185. package/dist/tables/personalInformation/AddressesTable.js +37 -0
  186. package/dist/tables/personalInformation/CompanyDetailsTable.d.ts +11 -0
  187. package/dist/tables/personalInformation/CompanyDetailsTable.js +38 -0
  188. package/dist/tables/personalInformation/ContactDetailsTable.d.ts +10 -0
  189. package/dist/tables/personalInformation/ContactDetailsTable.js +34 -0
  190. package/dist/tables/personalInformation/DeliveryDetailsTable.d.ts +10 -0
  191. package/dist/tables/personalInformation/DeliveryDetailsTable.js +35 -0
  192. package/dist/tables/personalInformation/DeliveryStatusTypesTable.d.ts +7 -0
  193. package/dist/tables/personalInformation/DeliveryStatusTypesTable.js +10 -0
  194. package/dist/tables/personalInformation/DeliveryStatusesTable.d.ts +9 -0
  195. package/dist/tables/personalInformation/DeliveryStatusesTable.js +31 -0
  196. package/dist/tables/personalInformation/InvoiceDetailsTable.d.ts +10 -0
  197. package/dist/tables/personalInformation/InvoiceDetailsTable.js +34 -0
  198. package/dist/tables/personalInformation/PersonalDataTable.d.ts +10 -0
  199. package/dist/tables/personalInformation/PersonalDataTable.js +37 -0
  200. package/dist/tables/public/AdminAccountsTable.d.ts +15 -0
  201. package/dist/tables/public/AdminAccountsTable.js +64 -0
  202. package/dist/tables/public/ProductsTable.d.ts +19 -0
  203. package/dist/tables/public/ProductsTable.js +98 -0
  204. package/dist/tables/settings/CompanyDataTable.d.ts +10 -0
  205. package/dist/tables/settings/CompanyDataTable.js +37 -0
  206. package/dist/tables/settings/DeliveryMethodsTable.d.ts +12 -0
  207. package/dist/tables/settings/DeliveryMethodsTable.js +43 -0
  208. package/dist/tables/settings/PaymentMethodsTable.d.ts +12 -0
  209. package/dist/tables/settings/PaymentMethodsTable.js +43 -0
  210. package/dist/types/AddressI.d.ts +9 -0
  211. package/dist/types/AddressI.js +1 -0
  212. package/dist/types/ClaimI.d.ts +4 -0
  213. package/dist/types/ClaimI.js +1 -0
  214. package/dist/types/ClientAccountI.d.ts +10 -0
  215. package/dist/types/ClientAccountI.js +1 -0
  216. package/dist/types/CompanyDataI.d.ts +8 -0
  217. package/dist/types/CompanyDataI.js +1 -0
  218. package/dist/types/CompanyDetailsI.d.ts +5 -0
  219. package/dist/types/CompanyDetailsI.js +1 -0
  220. package/dist/types/ContactDetailsI.d.ts +7 -0
  221. package/dist/types/ContactDetailsI.js +1 -0
  222. package/dist/types/DeliveryDetailsI.d.ts +8 -0
  223. package/dist/types/DeliveryDetailsI.js +1 -0
  224. package/dist/types/DeliveryMethodI.d.ts +5 -0
  225. package/dist/types/DeliveryMethodI.js +1 -0
  226. package/dist/types/FileConnectionI.d.ts +6 -0
  227. package/dist/types/FileConnectionI.js +1 -0
  228. package/dist/types/FileConnectionTypeE.d.ts +4 -0
  229. package/dist/types/FileConnectionTypeE.js +5 -0
  230. package/dist/types/FileI.d.ts +6 -0
  231. package/dist/types/FileI.js +1 -0
  232. package/dist/types/InvoiceDetailsI.d.ts +7 -0
  233. package/dist/types/InvoiceDetailsI.js +1 -0
  234. package/dist/types/OrderI.d.ts +12 -0
  235. package/dist/types/OrderI.js +1 -0
  236. package/dist/types/OrderProductI.d.ts +15 -0
  237. package/dist/types/OrderProductI.js +1 -0
  238. package/dist/types/OrderStatusI.d.ts +7 -0
  239. package/dist/types/OrderStatusI.js +1 -0
  240. package/dist/types/PaymentDetailsI.d.ts +6 -0
  241. package/dist/types/PaymentDetailsI.js +1 -0
  242. package/dist/types/PaymentMethodE.d.ts +5 -0
  243. package/dist/types/PaymentMethodE.js +6 -0
  244. package/dist/types/PaymentMethodI.d.ts +5 -0
  245. package/dist/types/PaymentMethodI.js +1 -0
  246. package/dist/types/PaymentStatusE.d.ts +6 -0
  247. package/dist/types/PaymentStatusE.js +7 -0
  248. package/dist/types/PersonalDataI.d.ts +10 -0
  249. package/dist/types/PersonalDataI.js +1 -0
  250. package/dist/types/ProductI.d.ts +22 -0
  251. package/dist/types/ProductI.js +1 -0
  252. package/dist/types/StatusI.d.ts +5 -0
  253. package/dist/types/StatusI.js +1 -0
  254. package/dist/types/rows/AddressRow.d.ts +9 -0
  255. package/dist/types/rows/AddressRow.js +1 -0
  256. package/dist/types/rows/AdminRow.d.ts +9 -0
  257. package/dist/types/rows/AdminRow.js +1 -0
  258. package/dist/types/rows/ClientAccountRow.d.ts +10 -0
  259. package/dist/types/rows/ClientAccountRow.js +1 -0
  260. package/dist/types/rows/CompanyDataRow.d.ts +8 -0
  261. package/dist/types/rows/CompanyDataRow.js +1 -0
  262. package/dist/types/rows/CompanyDetailsRow.d.ts +5 -0
  263. package/dist/types/rows/CompanyDetailsRow.js +1 -0
  264. package/dist/types/rows/ContactDetailsRow.d.ts +5 -0
  265. package/dist/types/rows/ContactDetailsRow.js +1 -0
  266. package/dist/types/rows/DeliveryDetailsRow.d.ts +6 -0
  267. package/dist/types/rows/DeliveryDetailsRow.js +1 -0
  268. package/dist/types/rows/DeliveryMethodRow.d.ts +5 -0
  269. package/dist/types/rows/DeliveryMethodRow.js +1 -0
  270. package/dist/types/rows/DeliveryStatusRow.d.ts +7 -0
  271. package/dist/types/rows/DeliveryStatusRow.js +1 -0
  272. package/dist/types/rows/FileConnectionRow.d.ts +6 -0
  273. package/dist/types/rows/FileConnectionRow.js +1 -0
  274. package/dist/types/rows/FileRow.d.ts +9 -0
  275. package/dist/types/rows/FileRow.js +1 -0
  276. package/dist/types/rows/InvoiceDetailsRow.d.ts +5 -0
  277. package/dist/types/rows/InvoiceDetailsRow.js +1 -0
  278. package/dist/types/rows/OrderProductRow.d.ts +6 -0
  279. package/dist/types/rows/OrderProductRow.js +1 -0
  280. package/dist/types/rows/OrderRow.d.ts +15 -0
  281. package/dist/types/rows/OrderRow.js +1 -0
  282. package/dist/types/rows/PaymentDetailsRow.d.ts +6 -0
  283. package/dist/types/rows/PaymentDetailsRow.js +1 -0
  284. package/dist/types/rows/PaymentMethodRow.d.ts +5 -0
  285. package/dist/types/rows/PaymentMethodRow.js +1 -0
  286. package/dist/types/rows/PaymentStatusRow.d.ts +6 -0
  287. package/dist/types/rows/PaymentStatusRow.js +1 -0
  288. package/dist/types/rows/PersonalDataRow.d.ts +8 -0
  289. package/dist/types/rows/PersonalDataRow.js +1 -0
  290. package/dist/types/rows/ProductRow.d.ts +17 -0
  291. package/dist/types/rows/ProductRow.js +1 -0
  292. package/dist/types/rows/StatusRow.d.ts +8 -0
  293. package/dist/types/rows/StatusRow.js +1 -0
  294. package/dist/utils/OrderByI.d.ts +4 -0
  295. package/dist/utils/OrderByI.js +1 -0
  296. package/dist/utils/calculateNetToGrossPrice.d.ts +1 -0
  297. package/dist/utils/calculateNetToGrossPrice.js +7 -0
  298. package/dist/utils/correctPhoneNumber.d.ts +1 -0
  299. package/dist/utils/correctPhoneNumber.js +14 -0
  300. package/package.json +1 -1
@@ -0,0 +1,18 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class DeliveryMethodReader {
3
+ static async get(id) {
4
+ const connection = DatabaseConnection.get();
5
+ const deliveryMethod = await connection.deliveryMethods.select(id);
6
+ return deliveryMethod;
7
+ }
8
+ static async getAll() {
9
+ const connection = DatabaseConnection.get();
10
+ const deliveryMethods = await connection.deliveryMethods.selectAll();
11
+ return deliveryMethods;
12
+ }
13
+ static async getAllActive() {
14
+ const connection = DatabaseConnection.get();
15
+ const deliveryMethods = await connection.deliveryMethods.selectAllActive();
16
+ return deliveryMethods;
17
+ }
18
+ }
@@ -0,0 +1,5 @@
1
+ export default class DeliveryStatusReader {
2
+ static get(deliveryDetailsId: number): Promise<any>;
3
+ static getAll(deliveryDetailsId: number): Promise<any[]>;
4
+ private static correctDeliveryStatus;
5
+ }
@@ -0,0 +1,31 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class DeliveryStatusReader {
3
+ static async get(deliveryDetailsId) {
4
+ const connection = DatabaseConnection.get();
5
+ const deliveryStatus = await connection.deliveryStatuses.select(deliveryDetailsId);
6
+ if (deliveryStatus)
7
+ return await this.correctDeliveryStatus(deliveryStatus);
8
+ else
9
+ return {};
10
+ }
11
+ static async getAll(deliveryDetailsId) {
12
+ const connection = DatabaseConnection.get();
13
+ const deliveryStatusesData = await connection.deliveryStatuses.selectAll(deliveryDetailsId);
14
+ const deliveryStatuses = [];
15
+ for (let i = 0; i < deliveryStatusesData.length; i++) {
16
+ const deliveryStatus = await this.correctDeliveryStatus(deliveryStatusesData[i]);
17
+ deliveryStatuses.push(deliveryStatus);
18
+ }
19
+ return deliveryStatuses;
20
+ }
21
+ static async correctDeliveryStatus(deliveryStatus) {
22
+ const connection = DatabaseConnection.get();
23
+ const deliveryStatusType = await connection.deliveryStatusTypes.select(deliveryStatus.delivery_status_type_id);
24
+ return {
25
+ id: deliveryStatus.id,
26
+ type: deliveryStatusType,
27
+ userId: deliveryStatus.user_id,
28
+ createdAt: deliveryStatus.created_at
29
+ };
30
+ }
31
+ }
@@ -0,0 +1,6 @@
1
+ import FileConnectionI from "../types/FileConnectionI";
2
+ export default class FileConnectionsReader {
3
+ static getAllForFileId(fileId: number): Promise<FileConnectionI[]>;
4
+ private static correctFileConnections;
5
+ private static correctFileConnection;
6
+ }
@@ -0,0 +1,25 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class FileConnectionsReader {
3
+ static async getAllForFileId(fileId) {
4
+ const connection = DatabaseConnection.get();
5
+ const fileConnections = await connection.fileConnections.selectForFileId(fileId);
6
+ return this.correctFileConnections(fileConnections);
7
+ }
8
+ static correctFileConnections(fileConnectionsRows) {
9
+ const fileConnections = [];
10
+ for (let i = 0; i < fileConnectionsRows.length; i++) {
11
+ const fileConnection = this.correctFileConnection(fileConnectionsRows[i]);
12
+ fileConnections.push(fileConnection);
13
+ }
14
+ return fileConnections;
15
+ }
16
+ static correctFileConnection(fileConnections) {
17
+ const correctFileConnection = {
18
+ fileId: fileConnections.file_id,
19
+ connectionType: fileConnections.connection_type,
20
+ connectionId: fileConnections.connection_id,
21
+ sequence: fileConnections.sequence
22
+ };
23
+ return correctFileConnection;
24
+ }
25
+ }
@@ -0,0 +1,12 @@
1
+ import FileConnectionTypeE from "../types/FileConnectionTypeE";
2
+ import FileI from "../types/FileI";
3
+ import QueryOptionsI from "../types/QueryOptionsI";
4
+ export default class FilesReader {
5
+ static get(fileId: number): Promise<FileI>;
6
+ static getAll(queryOptions: QueryOptionsI): Promise<FileI[]>;
7
+ static isExist(queryOptions: QueryOptionsI): Promise<number>;
8
+ static getQuantity(queryOptions: any): Promise<number>;
9
+ static getForConnection(connectionType: FileConnectionTypeE, connectionId: number): Promise<FileI[]>;
10
+ private static correctFiles;
11
+ private static correctFile;
12
+ }
@@ -0,0 +1,45 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class FilesReader {
3
+ static async get(fileId) {
4
+ const connection = DatabaseConnection.get();
5
+ const file = await connection.files.select(fileId);
6
+ return this.correctFile(file);
7
+ }
8
+ static async getAll(queryOptions) {
9
+ const connection = DatabaseConnection.get();
10
+ const file = await connection.files.selectAll(queryOptions);
11
+ return this.correctFiles(file);
12
+ }
13
+ static async isExist(queryOptions) {
14
+ const connection = DatabaseConnection.get();
15
+ const fileId = await connection.files.selectId(queryOptions);
16
+ return fileId;
17
+ }
18
+ static async getQuantity(queryOptions) {
19
+ const connection = DatabaseConnection.get();
20
+ const quantity = await connection.files.count(queryOptions);
21
+ return quantity;
22
+ }
23
+ static async getForConnection(connectionType, connectionId) {
24
+ const connection = DatabaseConnection.get();
25
+ const files = await connection.files.selectForConnection(connectionType, connectionId);
26
+ return this.correctFiles(files);
27
+ }
28
+ static correctFiles(fileRows) {
29
+ const fileConnections = [];
30
+ for (let i = 0; i < fileRows.length; i++) {
31
+ const fileConnection = this.correctFile(fileRows[i]);
32
+ fileConnections.push(fileConnection);
33
+ }
34
+ return fileConnections;
35
+ }
36
+ static correctFile(file) {
37
+ const correctFile = {
38
+ id: file.id,
39
+ name: file.name,
40
+ catalog: file.catalog,
41
+ type: file.type,
42
+ };
43
+ return correctFile;
44
+ }
45
+ }
@@ -0,0 +1,4 @@
1
+ import InvoiceDetailsI from "../types/InvoiceDetailsI";
2
+ export default class InvoiceDetailsReader {
3
+ static get(invoiceDetailsId: number): Promise<InvoiceDetailsI>;
4
+ }
@@ -0,0 +1,21 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ import AddressesReader from "./AddressesReader";
3
+ import PersonalDataReader from "./PersonalDataReader";
4
+ export default class InvoiceDetailsReader {
5
+ static async get(invoiceDetailsId) {
6
+ const connection = DatabaseConnection.get();
7
+ const invoiceDetails = await connection.invoiceDetails.select(invoiceDetailsId);
8
+ const id = invoiceDetails.id;
9
+ let personalData = null;
10
+ let address = null;
11
+ if (invoiceDetails.personal_data_id)
12
+ personalData = await PersonalDataReader.get(invoiceDetails.personal_data_id);
13
+ if (invoiceDetails.address_id)
14
+ address = await AddressesReader.get(invoiceDetails.address_id);
15
+ return {
16
+ id,
17
+ personalData,
18
+ address
19
+ };
20
+ }
21
+ }
@@ -0,0 +1,10 @@
1
+ import OrderProductI from "../types/OrderProductI";
2
+ export default class OrderProductsReader {
3
+ static getForOrder(orderId: number): Promise<any[]>;
4
+ static getAll(orderId: number): Promise<OrderProductI[]>;
5
+ private static correctProduct;
6
+ static get(orderId: number): Promise<OrderProductI[]>;
7
+ static getAllForIds(orderProductsIds: number[]): Promise<any[]>;
8
+ private static correctOrdersProducts;
9
+ private static correctOrderProduct;
10
+ }
@@ -0,0 +1,92 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ import ConnectorE from "../types/ConnectorE";
3
+ import ParameterType from "../types/parameters/ParameterType";
4
+ import calculateNetToGrossPrice from "../utils/calculateNetToGrossPrice";
5
+ import FilesReader from "./FilesReader";
6
+ import ProductReader from "./ProductReader";
7
+ export default class OrderProductsReader {
8
+ static async getForOrder(orderId) {
9
+ const connection = DatabaseConnection.get();
10
+ const products = await connection.ordersProducts.selectAll(orderId);
11
+ const correctProducts = [];
12
+ for (let i = 0; i < products.length; i++) {
13
+ const correctProduct = {
14
+ id: products[i].id,
15
+ orderId: products[i].order_id,
16
+ productId: products[i].product_id,
17
+ netPrice: products[i].net_price,
18
+ };
19
+ correctProducts.push(correctProduct);
20
+ }
21
+ return correctProducts;
22
+ }
23
+ static async getAll(orderId) {
24
+ const connection = DatabaseConnection.get();
25
+ const products = await connection.ordersProducts.selectAll(orderId);
26
+ const correctProducts = [];
27
+ for (let i = 0; i < products.length; i++) {
28
+ const correctProduct = await this.correctProduct(products[i]);
29
+ correctProducts.push(correctProduct);
30
+ }
31
+ return correctProducts;
32
+ }
33
+ static async correctProduct(orderProduct) {
34
+ const product = await ProductReader.get(orderProduct.product_id);
35
+ const file = await FilesReader.get(product.fileId);
36
+ const correctProduct = {
37
+ id: orderProduct.id,
38
+ productId: orderProduct.product_id,
39
+ orderId: orderProduct.order_id,
40
+ product: {
41
+ id: product.id,
42
+ sku: product.sku,
43
+ title: product.title,
44
+ netPrice: product.netPrice,
45
+ grossPrice: calculateNetToGrossPrice(product.netPrice, product.vat),
46
+ vat: product.vat,
47
+ file,
48
+ }
49
+ };
50
+ return correctProduct;
51
+ }
52
+ static async get(orderId) {
53
+ const connection = DatabaseConnection.get();
54
+ const orderProducts = await connection.ordersProducts.selectProducts(orderId);
55
+ for (const product of orderProducts) {
56
+ const file = await FilesReader.get(product.file_id);
57
+ product.file = file;
58
+ }
59
+ return this.correctOrdersProducts(orderProducts);
60
+ }
61
+ static async getAllForIds(orderProductsIds) {
62
+ const connection = DatabaseConnection.get();
63
+ const queryOptions = {
64
+ where: {
65
+ connector: ConnectorE.and,
66
+ parameters: [
67
+ { name: 'id', type: ParameterType.arrayBigint, value: orderProductsIds },
68
+ ]
69
+ }
70
+ };
71
+ const orderProducts = await connection.ordersProducts.selectAll(queryOptions);
72
+ return orderProducts;
73
+ }
74
+ static correctOrdersProducts(productRows) {
75
+ const products = [];
76
+ for (let i = 0; i < productRows.length; i++) {
77
+ const product = this.correctOrderProduct(productRows[i]);
78
+ products.push(product);
79
+ }
80
+ return products;
81
+ }
82
+ static correctOrderProduct(product) {
83
+ return {
84
+ orderProductId: product.id,
85
+ netPrice: product.net_price,
86
+ id: product.product_id,
87
+ title: product.title,
88
+ sku: product.sku,
89
+ file: product.file
90
+ };
91
+ }
92
+ }
@@ -0,0 +1,12 @@
1
+ import OrderI from "../types/OrderI";
2
+ import QueryOptionsI from "../types/QueryOptionsI";
3
+ export default class OrderReader {
4
+ static get(orderId: number): Promise<OrderI>;
5
+ static getForClient(clientAccountId: number): Promise<OrderI[]>;
6
+ static getAll(queryOptions: QueryOptionsI): Promise<{
7
+ orders: OrderI[];
8
+ quantity: number;
9
+ }>;
10
+ private static correctOrders;
11
+ private static correctOrder;
12
+ }
@@ -0,0 +1,51 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ import OrderProductsReader from "./OrderProductsReader";
3
+ import OrderStatusReader from "./OrderStatusReader";
4
+ export default class OrderReader {
5
+ static async get(orderId) {
6
+ const connection = DatabaseConnection.get();
7
+ const orderData = await connection.orders.select(orderId);
8
+ return this.correctOrder(orderData);
9
+ }
10
+ static async getForClient(clientAccountId) {
11
+ const connection = DatabaseConnection.get();
12
+ const orders = await connection.orders.selectForClient(clientAccountId);
13
+ const correctOrders = [];
14
+ for (let i = 0; i < orders.length; i++) {
15
+ const correctOrder = this.correctOrder(orders[i]);
16
+ const products = await OrderProductsReader.getAll(orders[i].id);
17
+ const status = await OrderStatusReader.get(orders[i].id);
18
+ correctOrders.push({ ...correctOrder, status, products });
19
+ }
20
+ return correctOrders;
21
+ }
22
+ static async getAll(queryOptions) {
23
+ const connection = DatabaseConnection.get();
24
+ const orders = await connection.orders.selectAll(queryOptions);
25
+ const quantity = await connection.orders.count(queryOptions);
26
+ return { orders: this.correctOrders(orders), quantity };
27
+ }
28
+ static correctOrders(orderRows) {
29
+ const orders = [];
30
+ for (let i = 0; i < orderRows.length; i++) {
31
+ const order = this.correctOrder(orderRows[i]);
32
+ orders.push(order);
33
+ }
34
+ return orders;
35
+ }
36
+ static correctOrder(order) {
37
+ const correctOrder = {
38
+ id: order.id,
39
+ email: order.email,
40
+ price: order.price,
41
+ createdAt: order.created_at,
42
+ clientId: order.client_id,
43
+ contactDetailsId: order.contact_details_id,
44
+ deliveryDetailsId: order.delivery_details_id,
45
+ invoiceDetailsId: order.invoice_details_id,
46
+ paymentDetailsId: order.payment_details_id,
47
+ zsiId: order.zsi_id
48
+ };
49
+ return correctOrder;
50
+ }
51
+ }
@@ -0,0 +1,6 @@
1
+ import OrderStatusI from "../types/OrderStatusI";
2
+ export default class OrderStatusReader {
3
+ static get(orderId: number): Promise<OrderStatusI>;
4
+ static getAll(orderId: number): Promise<OrderStatusI[]>;
5
+ private static correctStatus;
6
+ }
@@ -0,0 +1,28 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class OrderStatusReader {
3
+ static async get(orderId) {
4
+ const connection = DatabaseConnection.get();
5
+ const statusRow = await connection.statuses.selectForOrder(orderId);
6
+ return this.correctStatus(statusRow);
7
+ }
8
+ static async getAll(orderId) {
9
+ const connection = DatabaseConnection.get();
10
+ const statuses = await connection.statuses.selectAllForOrder(orderId);
11
+ const correctStatuss = [];
12
+ for (let i = 0; i < statuses.length; i++) {
13
+ const correctStatus = this.correctStatus(statuses[i]);
14
+ correctStatuss.push(correctStatus);
15
+ }
16
+ return correctStatuss;
17
+ }
18
+ static correctStatus(status) {
19
+ const correctStatus = {
20
+ id: status.id,
21
+ orderId: status.order_id,
22
+ createdAt: status.created_at,
23
+ userId: status.user_id,
24
+ type: status.type,
25
+ };
26
+ return correctStatus;
27
+ }
28
+ }
@@ -0,0 +1,5 @@
1
+ import PersonalDataI from "../types/PersonalDataI";
2
+ export default class PersonalDataReader {
3
+ static get(personalDataId: number): Promise<PersonalDataI>;
4
+ private static getCorrectData;
5
+ }
@@ -0,0 +1,27 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ import correctPhoneNumber from "../utils/correctPhoneNumber";
3
+ import CompanyDetailsReader from "./CompanyDetailsReader";
4
+ export default class PersonalDataReader {
5
+ static async get(personalDataId) {
6
+ const connection = DatabaseConnection.get();
7
+ const data = await connection.personalData.select(personalDataId);
8
+ const correctData = this.getCorrectData(data);
9
+ if (data.company_details_id) {
10
+ correctData.companyDetails = await CompanyDetailsReader.get(data.company_details_id);
11
+ correctData.isCompany = true;
12
+ }
13
+ return correctData;
14
+ }
15
+ static getCorrectData(data) {
16
+ const phoneNumber = correctPhoneNumber(data.phone_number);
17
+ return {
18
+ id: data.id,
19
+ firstName: data.first_name,
20
+ lastName: data.last_name,
21
+ email: data.email,
22
+ phoneNumber,
23
+ companyDetails: null,
24
+ isCompany: false
25
+ };
26
+ }
27
+ }
@@ -0,0 +1,13 @@
1
+ import ProductI from "../types/ProductI";
2
+ import QueryOptionsI from "../types/QueryOptionsI";
3
+ export default class ProductReader {
4
+ static get(productId: number): Promise<ProductI>;
5
+ static getIdForSku(productSku: string): Promise<number>;
6
+ static getForUrl(productUrl: string): Promise<ProductI>;
7
+ static getAll(queryOptions: QueryOptionsI): Promise<ProductI[]>;
8
+ static getQuantity(queryOptions: QueryOptionsI): Promise<number>;
9
+ static getListForOrder(): Promise<any>;
10
+ private static correctProducts;
11
+ private static correctProduct;
12
+ private static correctProductForOrderList;
13
+ }
@@ -0,0 +1,81 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ import FileConnectionTypeE from "../types/FileConnectionTypeE";
3
+ import calculateNetToGrossPrice from "../utils/calculateNetToGrossPrice";
4
+ import FilesReader from "./FilesReader";
5
+ export default class ProductReader {
6
+ static async get(productId) {
7
+ const connection = DatabaseConnection.get();
8
+ const product = await connection.products.select(productId);
9
+ const thumbnail = await FilesReader.get(product.file_id);
10
+ const files = await FilesReader.getForConnection(FileConnectionTypeE.product, product.id);
11
+ return this.correctProduct(product, thumbnail, files);
12
+ }
13
+ static async getIdForSku(productSku) {
14
+ const connection = DatabaseConnection.get();
15
+ return await connection.products.selectIdForSku(productSku);
16
+ }
17
+ static async getForUrl(productUrl) {
18
+ const connection = DatabaseConnection.get();
19
+ const product = await connection.products.selectForUrl(productUrl);
20
+ return this.correctProduct(product);
21
+ }
22
+ static async getAll(queryOptions) {
23
+ const connection = DatabaseConnection.get();
24
+ const products = await connection.products.selectAll(queryOptions);
25
+ return this.correctProducts(products);
26
+ }
27
+ static async getQuantity(queryOptions) {
28
+ const connection = DatabaseConnection.get();
29
+ const quantity = await connection.products.count(queryOptions);
30
+ return quantity;
31
+ }
32
+ static async getListForOrder() {
33
+ const connection = DatabaseConnection.get();
34
+ let correctProducts = [];
35
+ const products = await connection.products.selectListForOrder();
36
+ for (const product of products) {
37
+ const file = await FilesReader.get(product.file_id);
38
+ product.file = file;
39
+ correctProducts.push(this.correctProductForOrderList(product));
40
+ }
41
+ return correctProducts;
42
+ }
43
+ static correctProducts(products) {
44
+ const correctProducts = [];
45
+ for (let i = 0; i < products.length; i++) {
46
+ const correctProduct = this.correctProduct(products[i]);
47
+ correctProducts.push(correctProduct);
48
+ }
49
+ return correctProducts;
50
+ }
51
+ static correctProduct(product, thumbnail, files) {
52
+ return {
53
+ id: product.id,
54
+ sku: product.sku,
55
+ url: product.url,
56
+ title: product.title,
57
+ description: product.description,
58
+ netPrice: product.net_price,
59
+ vat: product.vat,
60
+ color: product.color,
61
+ quantity: product.quantity,
62
+ width: product.width,
63
+ height: product.height,
64
+ length: product.length,
65
+ createdAt: product.created_at,
66
+ deleted: product.deleted,
67
+ thumbnail: thumbnail ? thumbnail : null,
68
+ files: files,
69
+ grossPrice: calculateNetToGrossPrice(product.net_price, product.vat)
70
+ };
71
+ }
72
+ static correctProductForOrderList(product) {
73
+ return {
74
+ id: product.id,
75
+ title: product.title,
76
+ sku: product.sku,
77
+ file: product.file,
78
+ netPrice: product.net_price
79
+ };
80
+ }
81
+ }
@@ -0,0 +1,3 @@
1
+ export default class StatusTypesReader {
2
+ static get(): Promise<any[]>;
3
+ }
@@ -0,0 +1,8 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class StatusTypesReader {
3
+ static async get() {
4
+ const connection = DatabaseConnection.get();
5
+ const statusTypes = await connection.statusTypes.select();
6
+ return statusTypes;
7
+ }
8
+ }
@@ -0,0 +1,5 @@
1
+ export default class PaymentDetailsReader {
2
+ static get(paymentDetailsId: number): Promise<any>;
3
+ static getPaymentOrderId(paymentDetailsId: number): Promise<any>;
4
+ private static correctPaymentDetails;
5
+ }
@@ -0,0 +1,27 @@
1
+ import DatabaseConnection from "../../DatabaseConnection";
2
+ import PaymentMethodReader from "./PaymentMethodReader";
3
+ import PaymentStatusesReader from "./PaymentStatusesReader";
4
+ export default class PaymentDetailsReader {
5
+ static async get(paymentDetailsId) {
6
+ const connection = DatabaseConnection.get();
7
+ const paymentDetails = await connection.paymentDetails.select(paymentDetailsId);
8
+ return await this.correctPaymentDetails(paymentDetails);
9
+ }
10
+ static async getPaymentOrderId(paymentDetailsId) {
11
+ const connection = DatabaseConnection.get();
12
+ const paymentDetails = await connection.paymentDetails.select(paymentDetailsId);
13
+ return paymentDetails.payment_order_id;
14
+ }
15
+ static async correctPaymentDetails(paymentDetails) {
16
+ const id = paymentDetails.id;
17
+ const [paymentMethod, statuses] = await Promise.all([
18
+ PaymentMethodReader.get(paymentDetails.payment_method_id),
19
+ PaymentStatusesReader.getAll(paymentDetails.id)
20
+ ]);
21
+ return {
22
+ id,
23
+ paymentMethod,
24
+ statuses,
25
+ };
26
+ }
27
+ }
@@ -0,0 +1,6 @@
1
+ import PaymentMethodI from "../../types/PaymentMethodI";
2
+ export default class PaymentMethodReader {
3
+ static get(paymentMethodId: number): Promise<PaymentMethodI>;
4
+ static getAll(): Promise<PaymentMethodI[]>;
5
+ static getAllActive(): Promise<PaymentMethodI[]>;
6
+ }
@@ -0,0 +1,18 @@
1
+ import DatabaseConnection from "../../DatabaseConnection";
2
+ export default class PaymentMethodReader {
3
+ static async get(paymentMethodId) {
4
+ const connection = DatabaseConnection.get();
5
+ const paymentMethod = await connection.paymentMethods.select(paymentMethodId);
6
+ return paymentMethod;
7
+ }
8
+ static async getAll() {
9
+ const connection = DatabaseConnection.get();
10
+ const paymentMethods = await connection.paymentMethods.selectAll();
11
+ return paymentMethods;
12
+ }
13
+ static async getAllActive() {
14
+ const connection = DatabaseConnection.get();
15
+ const paymentMethods = await connection.paymentMethods.selectAllActive();
16
+ return paymentMethods;
17
+ }
18
+ }
@@ -0,0 +1,5 @@
1
+ export default class PaymentStatusesReader {
2
+ static get(paymentDetailsId: number): Promise<any>;
3
+ static getAll(paymentDetailsId: number): Promise<any[]>;
4
+ private static correctPaymentStatus;
5
+ }
@@ -0,0 +1,30 @@
1
+ import DatabaseConnection from "../../DatabaseConnection";
2
+ export default class PaymentStatusesReader {
3
+ static async get(paymentDetailsId) {
4
+ const connection = DatabaseConnection.get();
5
+ const paymentStatus = await connection.paymentStatuses.select(paymentDetailsId);
6
+ if (paymentStatus)
7
+ return await this.correctPaymentStatus(paymentStatus);
8
+ else
9
+ return {};
10
+ }
11
+ static async getAll(paymentDetailsId) {
12
+ const connection = DatabaseConnection.get();
13
+ const paymentStatusesData = await connection.paymentStatuses.selectAll(paymentDetailsId);
14
+ const paymentStatuses = [];
15
+ for (let i = 0; i < paymentStatusesData.length; i++) {
16
+ const paymentStatus = await this.correctPaymentStatus(paymentStatusesData[i]);
17
+ paymentStatuses.push(paymentStatus);
18
+ }
19
+ return paymentStatuses;
20
+ }
21
+ static async correctPaymentStatus(paymentStatus) {
22
+ const connection = DatabaseConnection.get();
23
+ const paymentStatusType = await connection.paymentStatusTypes.select(paymentStatus.payment_status_type_id);
24
+ return {
25
+ id: paymentStatus.id,
26
+ type: paymentStatusType,
27
+ createdAt: paymentStatus.created_at
28
+ };
29
+ }
30
+ }
@@ -0,0 +1,5 @@
1
+ import Address from "../stockObjects/Address";
2
+ export default class AddressesRepo {
3
+ static get(addressId: number): Promise<Address>;
4
+ private static createAddressFromRow;
5
+ }
@@ -0,0 +1,14 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ import Address from "../stockObjects/Address";
3
+ export default class AddressesRepo {
4
+ static async get(addressId) {
5
+ const connection = DatabaseConnection.get();
6
+ const address = await connection.addresses.select(addressId);
7
+ return this.createAddressFromRow(address);
8
+ }
9
+ static createAddressFromRow(dataRow) {
10
+ const address = new Address(dataRow.country, dataRow.city, dataRow.street, dataRow.postal_code, dataRow.house_number, dataRow.apartment_number);
11
+ address.setId(dataRow.id);
12
+ return address;
13
+ }
14
+ }