@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,17 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class DeliveryDetailsMapper {
3
+ deliveryDetails;
4
+ deliveryDetailsTable;
5
+ constructor(deliveryDetails) {
6
+ this.deliveryDetailsTable = DatabaseConnection.get().deliveryDetails;
7
+ this.deliveryDetails = deliveryDetails;
8
+ }
9
+ async save() {
10
+ if (this.deliveryDetails.getId())
11
+ await this.deliveryDetailsTable.update(this.deliveryDetails);
12
+ else
13
+ await this.deliveryDetailsTable.insert(this.deliveryDetails);
14
+ }
15
+ async delete() {
16
+ }
17
+ }
@@ -0,0 +1,9 @@
1
+ import DeliveryMethods from "../stockObjects/DeliveryMethods";
2
+ import StockObjectMapper from "../types/StockObjectMapper";
3
+ export default class DeliveryMethodsMapper implements StockObjectMapper {
4
+ private deliveryMethods;
5
+ private deliveryMethodsTable;
6
+ constructor(deliveryMethods: DeliveryMethods);
7
+ save(): Promise<void>;
8
+ delete(): Promise<void>;
9
+ }
@@ -0,0 +1,17 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class DeliveryMethodsMapper {
3
+ deliveryMethods;
4
+ deliveryMethodsTable;
5
+ constructor(deliveryMethods) {
6
+ this.deliveryMethodsTable = DatabaseConnection.get().deliveryMethods;
7
+ this.deliveryMethods = deliveryMethods;
8
+ }
9
+ async save() {
10
+ if (this.deliveryMethods.getId())
11
+ await this.deliveryMethodsTable.update(this.deliveryMethods);
12
+ else
13
+ await this.deliveryMethodsTable.insert(this.deliveryMethods);
14
+ }
15
+ async delete() {
16
+ }
17
+ }
@@ -0,0 +1,9 @@
1
+ import DeliveryStatus from "../stockObjects/DeliveryStatus";
2
+ import StockObjectMapper from "../types/StockObjectMapper";
3
+ export default class DeliveryStatusMapper implements StockObjectMapper {
4
+ private deliveryStatus;
5
+ private deliveryStatusesTable;
6
+ constructor(deliveryStatus: DeliveryStatus);
7
+ save(): Promise<void>;
8
+ delete(): Promise<void>;
9
+ }
@@ -0,0 +1,15 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class DeliveryStatusMapper {
3
+ deliveryStatus;
4
+ deliveryStatusesTable;
5
+ constructor(deliveryStatus) {
6
+ this.deliveryStatusesTable = DatabaseConnection.get().deliveryStatuses;
7
+ this.deliveryStatus = deliveryStatus;
8
+ }
9
+ async save() {
10
+ await this.deliveryStatusesTable.insert(this.deliveryStatus);
11
+ }
12
+ async delete() {
13
+ throw Error('Method not implemented');
14
+ }
15
+ }
@@ -0,0 +1,9 @@
1
+ import FileConnection from '../stockObjects/FileConnection';
2
+ import StockObjectMapper from '../types/StockObjectMapper';
3
+ export default class FileConnectionMapper implements StockObjectMapper {
4
+ private fileConnection;
5
+ private fileConnectionsTable;
6
+ constructor(fileConnection: FileConnection);
7
+ save(): Promise<void>;
8
+ delete(): Promise<void>;
9
+ }
@@ -0,0 +1,17 @@
1
+ import DatabaseConnection from '../DatabaseConnection';
2
+ export default class FileConnectionMapper {
3
+ fileConnection;
4
+ fileConnectionsTable;
5
+ constructor(fileConnection) {
6
+ this.fileConnectionsTable = DatabaseConnection.get().fileConnections;
7
+ this.fileConnection = fileConnection;
8
+ }
9
+ async save() {
10
+ const id = this.fileConnection.getId();
11
+ if (id)
12
+ await this.fileConnectionsTable.delete(id);
13
+ await this.fileConnectionsTable.insert(this.fileConnection);
14
+ }
15
+ async delete() {
16
+ }
17
+ }
@@ -0,0 +1,9 @@
1
+ import File from "../stockObjects/File";
2
+ import StockObjectMapper from "../types/StockObjectMapper";
3
+ export default class FileMapper implements StockObjectMapper {
4
+ private file;
5
+ private filesTable;
6
+ constructor(file: File);
7
+ save(): Promise<void>;
8
+ delete(): Promise<void>;
9
+ }
@@ -0,0 +1,17 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class FileMapper {
3
+ file;
4
+ filesTable;
5
+ constructor(file) {
6
+ this.filesTable = DatabaseConnection.get().files;
7
+ this.file = file;
8
+ }
9
+ async save() {
10
+ if (this.file.getId())
11
+ await this.filesTable.update(this.file);
12
+ else
13
+ await this.filesTable.insert(this.file);
14
+ }
15
+ async delete() {
16
+ }
17
+ }
@@ -0,0 +1,9 @@
1
+ import InvoiceDetails from '../stockObjects/InvoiceDetails';
2
+ import StockObjectMapper from '../types/StockObjectMapper';
3
+ export default class InvoiceDetailsMapper implements StockObjectMapper {
4
+ private invoiceDetails;
5
+ private invoiceDetailsTable;
6
+ constructor(invoiceDetails: InvoiceDetails);
7
+ save(): Promise<void>;
8
+ delete(): Promise<void>;
9
+ }
@@ -0,0 +1,17 @@
1
+ import DatabaseConnection from '../DatabaseConnection';
2
+ export default class InvoiceDetailsMapper {
3
+ invoiceDetails;
4
+ invoiceDetailsTable;
5
+ constructor(invoiceDetails) {
6
+ this.invoiceDetailsTable = DatabaseConnection.get().invoiceDetails;
7
+ this.invoiceDetails = invoiceDetails;
8
+ }
9
+ async save() {
10
+ if (this.invoiceDetails.getId())
11
+ await this.invoiceDetailsTable.update(this.invoiceDetails);
12
+ else
13
+ await this.invoiceDetailsTable.insert(this.invoiceDetails);
14
+ }
15
+ async delete() {
16
+ }
17
+ }
@@ -0,0 +1,9 @@
1
+ import Order from "../stockObjects/Order";
2
+ import StockObjectMapper from "../types/StockObjectMapper";
3
+ export default class OrderMapper implements StockObjectMapper {
4
+ private order;
5
+ private orderTable;
6
+ constructor(order: Order);
7
+ save(): Promise<void>;
8
+ delete(): Promise<void>;
9
+ }
@@ -0,0 +1,19 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class OrderMapper {
3
+ order;
4
+ orderTable;
5
+ constructor(order) {
6
+ this.orderTable = DatabaseConnection.get().orders;
7
+ this.order = order;
8
+ }
9
+ async save() {
10
+ const orderId = this.order.getId();
11
+ if (orderId)
12
+ await this.orderTable.update(this.order);
13
+ else
14
+ await this.orderTable.insert(this.order);
15
+ }
16
+ async delete() {
17
+ throw Error('method not implemented');
18
+ }
19
+ }
@@ -0,0 +1,9 @@
1
+ import OrderProduct from "../stockObjects/OrderProduct";
2
+ import StockObjectMapper from "../types/StockObjectMapper";
3
+ export default class OrderProductMapper implements StockObjectMapper {
4
+ private orderProduct;
5
+ private orderProductsTable;
6
+ constructor(orderProduct: OrderProduct);
7
+ save(): Promise<void>;
8
+ delete(): Promise<void>;
9
+ }
@@ -0,0 +1,15 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class OrderProductMapper {
3
+ orderProduct;
4
+ orderProductsTable;
5
+ constructor(orderProduct) {
6
+ this.orderProductsTable = DatabaseConnection.get().ordersProducts;
7
+ this.orderProduct = orderProduct;
8
+ }
9
+ async save() {
10
+ await this.orderProductsTable.insert(this.orderProduct);
11
+ }
12
+ async delete() {
13
+ throw Error('NOT IMPLEMENTED');
14
+ }
15
+ }
@@ -0,0 +1,9 @@
1
+ import PaymentDetails from "../stockObjects/PaymentDetails";
2
+ import StockObjectMapper from "../types/StockObjectMapper";
3
+ export default class PaymentDetailsMapper implements StockObjectMapper {
4
+ private paymentDetails;
5
+ private paymentDetailsTable;
6
+ constructor(paymentDetails: PaymentDetails);
7
+ save(): Promise<void>;
8
+ delete(): Promise<void>;
9
+ }
@@ -0,0 +1,17 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class PaymentDetailsMapper {
3
+ paymentDetails;
4
+ paymentDetailsTable;
5
+ constructor(paymentDetails) {
6
+ this.paymentDetailsTable = DatabaseConnection.get().paymentDetails;
7
+ this.paymentDetails = paymentDetails;
8
+ }
9
+ async save() {
10
+ if (this.paymentDetails.getId())
11
+ await this.paymentDetailsTable.update(this.paymentDetails);
12
+ else
13
+ await this.paymentDetailsTable.insert(this.paymentDetails);
14
+ }
15
+ async delete() {
16
+ }
17
+ }
@@ -0,0 +1,9 @@
1
+ import PaymentMethods from "../stockObjects/PaymentMethods";
2
+ import StockObjectMapper from "../types/StockObjectMapper";
3
+ export default class PaymentMethodsMapper implements StockObjectMapper {
4
+ private paymentMethods;
5
+ private paymentMethodsTable;
6
+ constructor(paymentMethods: PaymentMethods);
7
+ save(): Promise<void>;
8
+ delete(): Promise<void>;
9
+ }
@@ -0,0 +1,17 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class PaymentMethodsMapper {
3
+ paymentMethods;
4
+ paymentMethodsTable;
5
+ constructor(paymentMethods) {
6
+ this.paymentMethodsTable = DatabaseConnection.get().paymentMethods;
7
+ this.paymentMethods = paymentMethods;
8
+ }
9
+ async save() {
10
+ if (this.paymentMethods.getId())
11
+ await this.paymentMethodsTable.update(this.paymentMethods);
12
+ else
13
+ await this.paymentMethodsTable.insert(this.paymentMethods);
14
+ }
15
+ async delete() {
16
+ }
17
+ }
@@ -0,0 +1,9 @@
1
+ import PaymentStatus from "../stockObjects/PaymentStatus";
2
+ import StockObjectMapper from "../types/StockObjectMapper";
3
+ export default class PaymentStatusMapper implements StockObjectMapper {
4
+ private paymentStatus;
5
+ private paymentStatusesTable;
6
+ constructor(paymentStatus: PaymentStatus);
7
+ save(): Promise<void>;
8
+ delete(): Promise<void>;
9
+ }
@@ -0,0 +1,15 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class PaymentStatusMapper {
3
+ paymentStatus;
4
+ paymentStatusesTable;
5
+ constructor(paymentStatus) {
6
+ this.paymentStatusesTable = DatabaseConnection.get().paymentStatuses;
7
+ this.paymentStatus = paymentStatus;
8
+ }
9
+ async save() {
10
+ await this.paymentStatusesTable.insert(this.paymentStatus);
11
+ }
12
+ async delete() {
13
+ throw Error('Method not implemented');
14
+ }
15
+ }
@@ -0,0 +1,9 @@
1
+ import PersonalData from "../stockObjects/PersonalData";
2
+ import StockObjectMapper from "../types/StockObjectMapper";
3
+ export default class PersonalDataMapper implements StockObjectMapper {
4
+ private personalData;
5
+ private personalDataTable;
6
+ constructor(personalData: PersonalData);
7
+ save(): Promise<void>;
8
+ delete(): Promise<void>;
9
+ }
@@ -0,0 +1,17 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class PersonalDataMapper {
3
+ personalData;
4
+ personalDataTable;
5
+ constructor(personalData) {
6
+ this.personalDataTable = DatabaseConnection.get().personalData;
7
+ this.personalData = personalData;
8
+ }
9
+ async save() {
10
+ if (this.personalData.getId())
11
+ await this.personalDataTable.update(this.personalData);
12
+ else
13
+ await this.personalDataTable.insert(this.personalData);
14
+ }
15
+ async delete() {
16
+ }
17
+ }
@@ -0,0 +1,9 @@
1
+ import Product from "../stockObjects/Product";
2
+ import StockObjectMapper from "../types/StockObjectMapper";
3
+ export default class ProductMapper implements StockObjectMapper {
4
+ private product;
5
+ private productTable;
6
+ constructor(product: Product);
7
+ save(): Promise<void>;
8
+ delete(): Promise<void>;
9
+ }
@@ -0,0 +1,20 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class ProductMapper {
3
+ product;
4
+ productTable;
5
+ constructor(product) {
6
+ this.productTable = DatabaseConnection.get().products;
7
+ this.product = product;
8
+ }
9
+ async save() {
10
+ if (this.product.getId() && !this.product.getDeleted())
11
+ await this.productTable.update(this.product);
12
+ else
13
+ await this.productTable.insert(this.product);
14
+ }
15
+ async delete() {
16
+ const id = this.product.getId();
17
+ if (id)
18
+ await this.productTable.delete(id);
19
+ }
20
+ }
@@ -0,0 +1,9 @@
1
+ import Status from "../stockObjects/Status";
2
+ import StockObjectMapper from "../types/StockObjectMapper";
3
+ export default class StatusMapper implements StockObjectMapper {
4
+ private status;
5
+ private statusTable;
6
+ constructor(status: Status);
7
+ save(): Promise<void>;
8
+ delete(): Promise<void>;
9
+ }
@@ -0,0 +1,15 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class StatusMapper {
3
+ status;
4
+ statusTable;
5
+ constructor(status) {
6
+ this.statusTable = DatabaseConnection.get().statuses;
7
+ this.status = status;
8
+ }
9
+ async save() {
10
+ await this.statusTable.insert(this.status);
11
+ }
12
+ async delete() {
13
+ throw Error('method not implemented');
14
+ }
15
+ }
@@ -61,6 +61,8 @@ export default class QueryParamCreator {
61
61
  }
62
62
  static getBaseTypeForComplexType(paramType) {
63
63
  switch (paramType) {
64
+ case ParameterType.arrayBigint:
65
+ return ParameterType.bigint;
64
66
  case ParameterType.arrayNumber:
65
67
  return ParameterType.number;
66
68
  case ParameterType.betweenNumber:
@@ -9,14 +9,16 @@ export default class QueryParams {
9
9
  if (orderBy)
10
10
  queryString = QueryParams.createOrderParams(queryString, orderBy);
11
11
  if (limit)
12
- queryString += `LIMIT $limit::BIGINT OFFSET $offset::BIGINT`;
12
+ queryString += ` LIMIT $limit::BIGINT OFFSET $offset::BIGINT`;
13
13
  return queryString;
14
14
  }
15
15
  static createWhereParams(sql, where) {
16
16
  const params = this.createParamsSql(where.parameters);
17
17
  const connector = 'WHERE';
18
- const sqlWithParams = `${sql} ${connector} ${params.join(` ${where.connector} `)}`;
19
- return sqlWithParams;
18
+ if (params.length > 0)
19
+ return `${sql} ${connector} ${params.join(` ${where.connector} `)}`;
20
+ else
21
+ return sql;
20
22
  }
21
23
  static createParamsSql(parameters) {
22
24
  let sqlParams = [];
@@ -0,0 +1,6 @@
1
+ import AddressI from "../types/AddressI";
2
+ export default class AddressesReader {
3
+ static get(addressId: number): Promise<AddressI>;
4
+ static getCompanyAddress(): Promise<AddressI>;
5
+ private static getCorrectData;
6
+ }
@@ -0,0 +1,24 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class AddressesReader {
3
+ static async get(addressId) {
4
+ const connection = DatabaseConnection.get();
5
+ const address = await connection.addresses.select(addressId);
6
+ return this.getCorrectData(address);
7
+ }
8
+ static async getCompanyAddress() {
9
+ const connection = DatabaseConnection.get();
10
+ const address = await connection.addresses.select(1);
11
+ return this.getCorrectData(address);
12
+ }
13
+ static getCorrectData(address) {
14
+ return {
15
+ id: address.id,
16
+ country: address.country,
17
+ city: address.city,
18
+ postalCode: address.postal_code,
19
+ street: address.street,
20
+ houseNumber: address.house_number,
21
+ apartmentNumber: address.apartment_number,
22
+ };
23
+ }
24
+ }
@@ -0,0 +1,13 @@
1
+ import QueryOptions from "../query/QueryOptions";
2
+ import ClientAccountI from "../types/ClientAccountI";
3
+ export default class ClientAccountReader {
4
+ static get(accountId: number): Promise<ClientAccountI>;
5
+ static getAll(queryOptions: QueryOptions): Promise<{
6
+ clientAccounts: ClientAccountI[];
7
+ quantity: number;
8
+ }>;
9
+ static getForEmail(email: string): Promise<ClientAccountI>;
10
+ static getIdForEmail(email: string): Promise<number>;
11
+ private static correctClientsFromRows;
12
+ private static correctData;
13
+ }
@@ -0,0 +1,47 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class ClientAccountReader {
3
+ static async get(accountId) {
4
+ const connection = DatabaseConnection.get();
5
+ const account = await connection.accounts.select(accountId);
6
+ return this.correctData(account);
7
+ }
8
+ static async getAll(queryOptions) {
9
+ const connection = DatabaseConnection.get();
10
+ const clientAccounts = await connection.accounts.selectAll(queryOptions);
11
+ const quantity = await connection.accounts.count(queryOptions);
12
+ return {
13
+ clientAccounts: this.correctClientsFromRows(clientAccounts),
14
+ quantity
15
+ };
16
+ }
17
+ static async getForEmail(email) {
18
+ const connection = DatabaseConnection.get();
19
+ const account = await connection.accounts.selectForEmail(email);
20
+ return this.correctData(account);
21
+ }
22
+ static async getIdForEmail(email) {
23
+ const connection = DatabaseConnection.get();
24
+ const accountId = await connection.accounts.getIdForEmail(email);
25
+ return accountId;
26
+ }
27
+ static correctClientsFromRows(dataRows) {
28
+ const clients = [];
29
+ for (const dataRow of dataRows) {
30
+ const client = this.correctData(dataRow);
31
+ clients.push(client);
32
+ }
33
+ return clients;
34
+ }
35
+ static correctData(client) {
36
+ return {
37
+ id: client.id,
38
+ email: client.email,
39
+ createdAt: client.created_at,
40
+ activated: client.activated,
41
+ deleted: client.deleted,
42
+ contactDetailsId: client.contact_details_id,
43
+ deliveryDetailsId: client.delivery_details_id,
44
+ invoiceDetailsId: client.invoice_details_id,
45
+ };
46
+ }
47
+ }
@@ -0,0 +1,4 @@
1
+ import CompanyDataI from "../types/CompanyDataI";
2
+ export default class CompanyDataReader {
3
+ static get(): Promise<CompanyDataI>;
4
+ }
@@ -0,0 +1,27 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ import AddressesReader from "./AddressesReader";
3
+ export default class CompanyDataReader {
4
+ static async get() {
5
+ const connection = DatabaseConnection.get();
6
+ const companyData = await connection.companyData.select();
7
+ if (companyData) {
8
+ const address = companyData?.address_id ? await AddressesReader.get(companyData.address_id) : null;
9
+ return {
10
+ id: companyData.id,
11
+ name: companyData.name,
12
+ taxNumber: companyData.tax_number,
13
+ phoneNumber: companyData.phone_number,
14
+ address: address
15
+ };
16
+ }
17
+ else {
18
+ return {
19
+ id: 0,
20
+ name: '',
21
+ taxNumber: '',
22
+ phoneNumber: '',
23
+ address: null
24
+ };
25
+ }
26
+ }
27
+ }
@@ -0,0 +1,4 @@
1
+ import CompanyDetailsI from "../types/CompanyDetailsI";
2
+ export default class CompanyDetailsReader {
3
+ static get(companyDetailsId: number): Promise<CompanyDetailsI>;
4
+ }
@@ -0,0 +1,15 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class CompanyDetailsReader {
3
+ static async get(companyDetailsId) {
4
+ const connection = DatabaseConnection.get();
5
+ const companyDetails = await connection.companyDetails.select(companyDetailsId);
6
+ if (companyDetails)
7
+ return {
8
+ id: companyDetails.id,
9
+ name: companyDetails.name,
10
+ taxNumber: companyDetails.tax_number
11
+ };
12
+ else
13
+ throw Error(`no companyDetails found for id: ${companyDetailsId}`);
14
+ }
15
+ }
@@ -0,0 +1,4 @@
1
+ import ContactDetailsI from "../types/ContactDetailsI";
2
+ export default class ContactDetailsReader {
3
+ static get(contactDetailsId: number): Promise<ContactDetailsI>;
4
+ }
@@ -0,0 +1,16 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ import AddressesReader from "./AddressesReader";
3
+ import PersonalDataReader from "./PersonalDataReader";
4
+ export default class ContactDetailsReader {
5
+ static async get(contactDetailsId) {
6
+ const connection = DatabaseConnection.get();
7
+ const contactDetails = await connection.contactDetails.select(contactDetailsId);
8
+ const personalData = await PersonalDataReader.get(contactDetails.personal_data_id);
9
+ const address = contactDetails.address_id ? await AddressesReader.get(contactDetails.address_id) : null;
10
+ return {
11
+ id: contactDetails.id,
12
+ personalData,
13
+ address
14
+ };
15
+ }
16
+ }
@@ -0,0 +1,4 @@
1
+ import DeliveryDetailsI from "../types/DeliveryDetailsI";
2
+ export default class DeliveryDetailsReader {
3
+ static get(deliveryDetailsId: number): Promise<DeliveryDetailsI>;
4
+ }
@@ -0,0 +1,31 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ import AddressesReader from "./AddressesReader";
3
+ import DeliveryMethodReader from "./DeliveryMethodReader";
4
+ import DeliveryStatusReader from "./DeliveryStatusReader";
5
+ import PersonalDataReader from "./PersonalDataReader";
6
+ export default class DeliveryDetailsReader {
7
+ static async get(deliveryDetailsId) {
8
+ const connection = DatabaseConnection.get();
9
+ const deliveryDetails = await connection.deliveryDetails.select(deliveryDetailsId);
10
+ const id = deliveryDetails.id;
11
+ let personalData = null;
12
+ let address = null;
13
+ let deliveryMethod = null;
14
+ if (deliveryDetails.personal_data_id)
15
+ personalData = await PersonalDataReader.get(deliveryDetails.personal_data_id);
16
+ if (deliveryDetails.address_id)
17
+ address = await AddressesReader.get(deliveryDetails.address_id);
18
+ if (deliveryDetails.delivery_method_id)
19
+ deliveryMethod = await DeliveryMethodReader.get(deliveryDetails.delivery_method_id);
20
+ const status = await DeliveryStatusReader.get(deliveryDetails.id);
21
+ const statuses = await DeliveryStatusReader.getAll(deliveryDetails.id);
22
+ return {
23
+ id,
24
+ personalData,
25
+ address,
26
+ deliveryMethod,
27
+ status,
28
+ statuses,
29
+ };
30
+ }
31
+ }
@@ -0,0 +1,6 @@
1
+ import DeliveryMethodI from "../types/DeliveryMethodI";
2
+ export default class DeliveryMethodReader {
3
+ static get(id: number): Promise<DeliveryMethodI>;
4
+ static getAll(): Promise<DeliveryMethodI[]>;
5
+ static getAllActive(): Promise<DeliveryMethodI[]>;
6
+ }