@dascompany/product 1.0.0

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 (307) hide show
  1. package/README.md +0 -0
  2. package/dist/ProductConnectionFactory.d.ts +6 -0
  3. package/dist/ProductConnectionFactory.js +11 -0
  4. package/dist/ProductServiceConnection.d.ts +9 -0
  5. package/dist/ProductServiceConnection.js +16 -0
  6. package/dist/ProductsSchema.d.ts +52 -0
  7. package/dist/ProductsSchema.js +146 -0
  8. package/dist/SQL.json +162 -0
  9. package/dist/index.d.ts +77 -0
  10. package/dist/index.js +63 -0
  11. package/dist/mappers/AddressMapper.d.ts +9 -0
  12. package/dist/mappers/AddressMapper.js +17 -0
  13. package/dist/mappers/AdminMapper.d.ts +9 -0
  14. package/dist/mappers/AdminMapper.js +24 -0
  15. package/dist/mappers/ClientMapper.d.ts +9 -0
  16. package/dist/mappers/ClientMapper.js +24 -0
  17. package/dist/mappers/CompanyDataMapper.d.ts +9 -0
  18. package/dist/mappers/CompanyDataMapper.js +17 -0
  19. package/dist/mappers/CompanyDetailsMapper.d.ts +9 -0
  20. package/dist/mappers/CompanyDetailsMapper.js +22 -0
  21. package/dist/mappers/ContactDetailsMapper.d.ts +9 -0
  22. package/dist/mappers/ContactDetailsMapper.js +18 -0
  23. package/dist/mappers/DeliveryDetailsMapper.d.ts +9 -0
  24. package/dist/mappers/DeliveryDetailsMapper.js +17 -0
  25. package/dist/mappers/DeliveryMethodsMapper.d.ts +9 -0
  26. package/dist/mappers/DeliveryMethodsMapper.js +17 -0
  27. package/dist/mappers/DeliveryStatusMapper.d.ts +9 -0
  28. package/dist/mappers/DeliveryStatusMapper.js +15 -0
  29. package/dist/mappers/FileConnectionMapper.d.ts +9 -0
  30. package/dist/mappers/FileConnectionMapper.js +17 -0
  31. package/dist/mappers/FileMapper.d.ts +9 -0
  32. package/dist/mappers/FileMapper.js +17 -0
  33. package/dist/mappers/InvoiceDetailsMapper.d.ts +9 -0
  34. package/dist/mappers/InvoiceDetailsMapper.js +17 -0
  35. package/dist/mappers/OrderMapper.d.ts +9 -0
  36. package/dist/mappers/OrderMapper.js +19 -0
  37. package/dist/mappers/OrderProductMapper.d.ts +9 -0
  38. package/dist/mappers/OrderProductMapper.js +15 -0
  39. package/dist/mappers/PaymentDetailsMapper.d.ts +9 -0
  40. package/dist/mappers/PaymentDetailsMapper.js +17 -0
  41. package/dist/mappers/PaymentMethodsMapper.d.ts +9 -0
  42. package/dist/mappers/PaymentMethodsMapper.js +17 -0
  43. package/dist/mappers/PaymentStatusMapper.d.ts +9 -0
  44. package/dist/mappers/PaymentStatusMapper.js +15 -0
  45. package/dist/mappers/PersonalDataMapper.d.ts +9 -0
  46. package/dist/mappers/PersonalDataMapper.js +17 -0
  47. package/dist/mappers/ProductMapper.d.ts +9 -0
  48. package/dist/mappers/ProductMapper.js +20 -0
  49. package/dist/mappers/StatusMapper.d.ts +9 -0
  50. package/dist/mappers/StatusMapper.js +15 -0
  51. package/dist/reader/AddressesReader.d.ts +6 -0
  52. package/dist/reader/AddressesReader.js +24 -0
  53. package/dist/reader/AdminReader.d.ts +12 -0
  54. package/dist/reader/AdminReader.js +40 -0
  55. package/dist/reader/ClientAccountReader.d.ts +13 -0
  56. package/dist/reader/ClientAccountReader.js +47 -0
  57. package/dist/reader/CompanyDataReader.d.ts +4 -0
  58. package/dist/reader/CompanyDataReader.js +27 -0
  59. package/dist/reader/CompanyDetailsReader.d.ts +4 -0
  60. package/dist/reader/CompanyDetailsReader.js +15 -0
  61. package/dist/reader/ContactDetailsReader.d.ts +4 -0
  62. package/dist/reader/ContactDetailsReader.js +16 -0
  63. package/dist/reader/DeliveryDetailsReader.d.ts +4 -0
  64. package/dist/reader/DeliveryDetailsReader.js +26 -0
  65. package/dist/reader/DeliveryMethodReader.d.ts +6 -0
  66. package/dist/reader/DeliveryMethodReader.js +18 -0
  67. package/dist/reader/DeliveryStatusReader.d.ts +5 -0
  68. package/dist/reader/DeliveryStatusReader.js +31 -0
  69. package/dist/reader/FileConnectionsReader.d.ts +6 -0
  70. package/dist/reader/FileConnectionsReader.js +25 -0
  71. package/dist/reader/FilesReader.d.ts +12 -0
  72. package/dist/reader/FilesReader.js +46 -0
  73. package/dist/reader/InvoiceDetailsReader.d.ts +4 -0
  74. package/dist/reader/InvoiceDetailsReader.js +21 -0
  75. package/dist/reader/OrderProductsReader.d.ts +7 -0
  76. package/dist/reader/OrderProductsReader.js +51 -0
  77. package/dist/reader/OrderReader.d.ts +12 -0
  78. package/dist/reader/OrderReader.js +53 -0
  79. package/dist/reader/OrderStatusReader.d.ts +6 -0
  80. package/dist/reader/OrderStatusReader.js +29 -0
  81. package/dist/reader/PersonalDataReader.d.ts +5 -0
  82. package/dist/reader/PersonalDataReader.js +27 -0
  83. package/dist/reader/ProductReader.d.ts +11 -0
  84. package/dist/reader/ProductReader.js +62 -0
  85. package/dist/reader/StatusTypesReader.d.ts +3 -0
  86. package/dist/reader/StatusTypesReader.js +8 -0
  87. package/dist/reader/payment/PaymentDetailsReader.d.ts +5 -0
  88. package/dist/reader/payment/PaymentDetailsReader.js +27 -0
  89. package/dist/reader/payment/PaymentMethodReader.d.ts +6 -0
  90. package/dist/reader/payment/PaymentMethodReader.js +18 -0
  91. package/dist/reader/payment/PaymentStatusesReader.d.ts +5 -0
  92. package/dist/reader/payment/PaymentStatusesReader.js +30 -0
  93. package/dist/repo/AddressesRepo.d.ts +5 -0
  94. package/dist/repo/AddressesRepo.js +14 -0
  95. package/dist/repo/AdminRepo.d.ts +12 -0
  96. package/dist/repo/AdminRepo.js +32 -0
  97. package/dist/repo/ClientAccountRepo.d.ts +7 -0
  98. package/dist/repo/ClientAccountRepo.js +24 -0
  99. package/dist/repo/CompanyDataRepo.d.ts +4 -0
  100. package/dist/repo/CompanyDataRepo.js +11 -0
  101. package/dist/repo/CompanyDetailsRepo.d.ts +5 -0
  102. package/dist/repo/CompanyDetailsRepo.js +14 -0
  103. package/dist/repo/ContactDetailsRepo.d.ts +6 -0
  104. package/dist/repo/ContactDetailsRepo.js +19 -0
  105. package/dist/repo/DeliveryDetailsRepo.d.ts +5 -0
  106. package/dist/repo/DeliveryDetailsRepo.js +14 -0
  107. package/dist/repo/DeliveryMethodRepo.d.ts +4 -0
  108. package/dist/repo/DeliveryMethodRepo.js +11 -0
  109. package/dist/repo/FileConnectionsRepo.d.ts +7 -0
  110. package/dist/repo/FileConnectionsRepo.js +25 -0
  111. package/dist/repo/FilesRepo.d.ts +7 -0
  112. package/dist/repo/FilesRepo.js +26 -0
  113. package/dist/repo/InvoiceDetailsRepo.d.ts +5 -0
  114. package/dist/repo/InvoiceDetailsRepo.js +14 -0
  115. package/dist/repo/OrderProductsRepo.d.ts +7 -0
  116. package/dist/repo/OrderProductsRepo.js +36 -0
  117. package/dist/repo/OrderRepo.d.ts +5 -0
  118. package/dist/repo/OrderRepo.js +14 -0
  119. package/dist/repo/OrderStatusRepo.d.ts +7 -0
  120. package/dist/repo/OrderStatusRepo.js +27 -0
  121. package/dist/repo/PaymentDetailsRepo.d.ts +5 -0
  122. package/dist/repo/PaymentDetailsRepo.js +14 -0
  123. package/dist/repo/PaymentMethodRepo.d.ts +4 -0
  124. package/dist/repo/PaymentMethodRepo.js +11 -0
  125. package/dist/repo/PersonalDataRepo.d.ts +5 -0
  126. package/dist/repo/PersonalDataRepo.js +16 -0
  127. package/dist/repo/ProductRepo.d.ts +6 -0
  128. package/dist/repo/ProductRepo.js +20 -0
  129. package/dist/stockObjects/Address.d.ts +32 -0
  130. package/dist/stockObjects/Address.js +69 -0
  131. package/dist/stockObjects/Admin.d.ts +24 -0
  132. package/dist/stockObjects/Admin.js +57 -0
  133. package/dist/stockObjects/Client.d.ts +23 -0
  134. package/dist/stockObjects/Client.js +57 -0
  135. package/dist/stockObjects/CompanyData.d.ts +20 -0
  136. package/dist/stockObjects/CompanyData.js +51 -0
  137. package/dist/stockObjects/CompanyDetails.d.ts +13 -0
  138. package/dist/stockObjects/CompanyDetails.js +34 -0
  139. package/dist/stockObjects/ContactDetails.d.ts +11 -0
  140. package/dist/stockObjects/ContactDetails.js +26 -0
  141. package/dist/stockObjects/DeliveryDetails.d.ts +15 -0
  142. package/dist/stockObjects/DeliveryDetails.js +37 -0
  143. package/dist/stockObjects/DeliveryMethods.d.ts +11 -0
  144. package/dist/stockObjects/DeliveryMethods.js +26 -0
  145. package/dist/stockObjects/DeliveryStatus.d.ts +17 -0
  146. package/dist/stockObjects/DeliveryStatus.js +42 -0
  147. package/dist/stockObjects/File.d.ts +20 -0
  148. package/dist/stockObjects/File.js +50 -0
  149. package/dist/stockObjects/FileConnection.d.ts +17 -0
  150. package/dist/stockObjects/FileConnection.js +42 -0
  151. package/dist/stockObjects/InvoiceDetails.d.ts +11 -0
  152. package/dist/stockObjects/InvoiceDetails.js +26 -0
  153. package/dist/stockObjects/Order.d.ts +40 -0
  154. package/dist/stockObjects/Order.js +102 -0
  155. package/dist/stockObjects/OrderProduct.d.ts +14 -0
  156. package/dist/stockObjects/OrderProduct.js +33 -0
  157. package/dist/stockObjects/PaymentDetails.d.ts +11 -0
  158. package/dist/stockObjects/PaymentDetails.js +26 -0
  159. package/dist/stockObjects/PaymentMethods.d.ts +11 -0
  160. package/dist/stockObjects/PaymentMethods.js +26 -0
  161. package/dist/stockObjects/PaymentStatus.d.ts +12 -0
  162. package/dist/stockObjects/PaymentStatus.js +26 -0
  163. package/dist/stockObjects/PersonalData.d.ts +34 -0
  164. package/dist/stockObjects/PersonalData.js +81 -0
  165. package/dist/stockObjects/Product.d.ts +69 -0
  166. package/dist/stockObjects/Product.js +163 -0
  167. package/dist/stockObjects/Status.d.ts +22 -0
  168. package/dist/stockObjects/Status.js +50 -0
  169. package/dist/tables/SchemaNames.d.ts +4 -0
  170. package/dist/tables/SchemaNames.js +5 -0
  171. package/dist/tables/TableNames.d.ts +26 -0
  172. package/dist/tables/TableNames.js +27 -0
  173. package/dist/tables/clients/ClientAccountsTable.d.ts +16 -0
  174. package/dist/tables/clients/ClientAccountsTable.js +74 -0
  175. package/dist/tables/files/FileConnectionsTable.d.ts +12 -0
  176. package/dist/tables/files/FileConnectionsTable.js +41 -0
  177. package/dist/tables/files/FilesTable.d.ts +16 -0
  178. package/dist/tables/files/FilesTable.js +65 -0
  179. package/dist/tables/orders/OrdersProductsTable.d.ts +11 -0
  180. package/dist/tables/orders/OrdersProductsTable.js +42 -0
  181. package/dist/tables/orders/OrdersTable.d.ts +14 -0
  182. package/dist/tables/orders/OrdersTable.js +60 -0
  183. package/dist/tables/orders/PaymentDetailsTable.d.ts +10 -0
  184. package/dist/tables/orders/PaymentDetailsTable.js +34 -0
  185. package/dist/tables/orders/PaymentStatusTypesTable.d.ts +7 -0
  186. package/dist/tables/orders/PaymentStatusTypesTable.js +10 -0
  187. package/dist/tables/orders/PaymentStatusesTable.d.ts +9 -0
  188. package/dist/tables/orders/PaymentStatusesTable.js +30 -0
  189. package/dist/tables/orders/StatusTypesTable.d.ts +4 -0
  190. package/dist/tables/orders/StatusTypesTable.js +9 -0
  191. package/dist/tables/orders/StatusesTable.d.ts +10 -0
  192. package/dist/tables/orders/StatusesTable.js +34 -0
  193. package/dist/tables/personalInformation/AddressesTable.d.ts +10 -0
  194. package/dist/tables/personalInformation/AddressesTable.js +37 -0
  195. package/dist/tables/personalInformation/CompanyDetailsTable.d.ts +11 -0
  196. package/dist/tables/personalInformation/CompanyDetailsTable.js +38 -0
  197. package/dist/tables/personalInformation/ContactDetailsTable.d.ts +10 -0
  198. package/dist/tables/personalInformation/ContactDetailsTable.js +34 -0
  199. package/dist/tables/personalInformation/DeliveryDetailsTable.d.ts +10 -0
  200. package/dist/tables/personalInformation/DeliveryDetailsTable.js +35 -0
  201. package/dist/tables/personalInformation/DeliveryStatusTypesTable.d.ts +7 -0
  202. package/dist/tables/personalInformation/DeliveryStatusTypesTable.js +10 -0
  203. package/dist/tables/personalInformation/DeliveryStatusesTable.d.ts +9 -0
  204. package/dist/tables/personalInformation/DeliveryStatusesTable.js +31 -0
  205. package/dist/tables/personalInformation/InvoiceDetailsTable.d.ts +10 -0
  206. package/dist/tables/personalInformation/InvoiceDetailsTable.js +34 -0
  207. package/dist/tables/personalInformation/PersonalDataTable.d.ts +10 -0
  208. package/dist/tables/personalInformation/PersonalDataTable.js +37 -0
  209. package/dist/tables/public/AdminAccountsTable.d.ts +14 -0
  210. package/dist/tables/public/AdminAccountsTable.js +64 -0
  211. package/dist/tables/public/ProductsTable.d.ts +17 -0
  212. package/dist/tables/public/ProductsTable.js +89 -0
  213. package/dist/tables/settings/CompanyDataTable.d.ts +10 -0
  214. package/dist/tables/settings/CompanyDataTable.js +37 -0
  215. package/dist/tables/settings/DeliveryMethodsTable.d.ts +12 -0
  216. package/dist/tables/settings/DeliveryMethodsTable.js +43 -0
  217. package/dist/tables/settings/PaymentMethodsTable.d.ts +12 -0
  218. package/dist/tables/settings/PaymentMethodsTable.js +43 -0
  219. package/dist/types/AddressI.d.ts +9 -0
  220. package/dist/types/AddressI.js +1 -0
  221. package/dist/types/AdminI.d.ts +9 -0
  222. package/dist/types/AdminI.js +1 -0
  223. package/dist/types/ClaimI.d.ts +4 -0
  224. package/dist/types/ClaimI.js +1 -0
  225. package/dist/types/ClientAccountI.d.ts +10 -0
  226. package/dist/types/ClientAccountI.js +1 -0
  227. package/dist/types/CompanyDataI.d.ts +8 -0
  228. package/dist/types/CompanyDataI.js +1 -0
  229. package/dist/types/CompanyDetailsI.d.ts +5 -0
  230. package/dist/types/CompanyDetailsI.js +1 -0
  231. package/dist/types/ContactDetailsI.d.ts +7 -0
  232. package/dist/types/ContactDetailsI.js +1 -0
  233. package/dist/types/DeliveryDetailsI.d.ts +9 -0
  234. package/dist/types/DeliveryDetailsI.js +1 -0
  235. package/dist/types/DeliveryMethodI.d.ts +5 -0
  236. package/dist/types/DeliveryMethodI.js +1 -0
  237. package/dist/types/FileConnectionI.d.ts +6 -0
  238. package/dist/types/FileConnectionI.js +1 -0
  239. package/dist/types/FileConnectionTypeE.d.ts +4 -0
  240. package/dist/types/FileConnectionTypeE.js +5 -0
  241. package/dist/types/FileI.d.ts +6 -0
  242. package/dist/types/FileI.js +1 -0
  243. package/dist/types/InvoiceDetailsI.d.ts +7 -0
  244. package/dist/types/InvoiceDetailsI.js +1 -0
  245. package/dist/types/OrderI.d.ts +12 -0
  246. package/dist/types/OrderI.js +1 -0
  247. package/dist/types/OrderProductI.d.ts +14 -0
  248. package/dist/types/OrderProductI.js +1 -0
  249. package/dist/types/PaymentDetailsI.d.ts +6 -0
  250. package/dist/types/PaymentDetailsI.js +1 -0
  251. package/dist/types/PaymentMethodE.d.ts +5 -0
  252. package/dist/types/PaymentMethodE.js +6 -0
  253. package/dist/types/PaymentMethodI.d.ts +5 -0
  254. package/dist/types/PaymentMethodI.js +1 -0
  255. package/dist/types/PaymentStatusE.d.ts +6 -0
  256. package/dist/types/PaymentStatusE.js +7 -0
  257. package/dist/types/PersonalDataI.d.ts +10 -0
  258. package/dist/types/PersonalDataI.js +1 -0
  259. package/dist/types/ProductI.d.ts +20 -0
  260. package/dist/types/ProductI.js +1 -0
  261. package/dist/types/StatusI.d.ts +7 -0
  262. package/dist/types/StatusI.js +1 -0
  263. package/dist/types/rows/AddressRow.d.ts +9 -0
  264. package/dist/types/rows/AddressRow.js +1 -0
  265. package/dist/types/rows/AdminRow.d.ts +9 -0
  266. package/dist/types/rows/AdminRow.js +1 -0
  267. package/dist/types/rows/ClientAccountRow.d.ts +10 -0
  268. package/dist/types/rows/ClientAccountRow.js +1 -0
  269. package/dist/types/rows/CompanyDataRow.d.ts +8 -0
  270. package/dist/types/rows/CompanyDataRow.js +1 -0
  271. package/dist/types/rows/CompanyDetailsRow.d.ts +5 -0
  272. package/dist/types/rows/CompanyDetailsRow.js +1 -0
  273. package/dist/types/rows/ContactDetailsRow.d.ts +5 -0
  274. package/dist/types/rows/ContactDetailsRow.js +1 -0
  275. package/dist/types/rows/DeliveryDetailsRow.d.ts +6 -0
  276. package/dist/types/rows/DeliveryDetailsRow.js +1 -0
  277. package/dist/types/rows/DeliveryMethodRow.d.ts +5 -0
  278. package/dist/types/rows/DeliveryMethodRow.js +1 -0
  279. package/dist/types/rows/DeliveryStatusRow.d.ts +7 -0
  280. package/dist/types/rows/DeliveryStatusRow.js +1 -0
  281. package/dist/types/rows/FileConnectionRow.d.ts +6 -0
  282. package/dist/types/rows/FileConnectionRow.js +1 -0
  283. package/dist/types/rows/FileRow.d.ts +9 -0
  284. package/dist/types/rows/FileRow.js +1 -0
  285. package/dist/types/rows/InvoiceDetailsRow.d.ts +5 -0
  286. package/dist/types/rows/InvoiceDetailsRow.js +1 -0
  287. package/dist/types/rows/OrderProductRow.d.ts +10 -0
  288. package/dist/types/rows/OrderProductRow.js +1 -0
  289. package/dist/types/rows/OrderRow.d.ts +15 -0
  290. package/dist/types/rows/OrderRow.js +1 -0
  291. package/dist/types/rows/PaymentDetailsRow.d.ts +6 -0
  292. package/dist/types/rows/PaymentDetailsRow.js +1 -0
  293. package/dist/types/rows/PaymentMethodRow.d.ts +5 -0
  294. package/dist/types/rows/PaymentMethodRow.js +1 -0
  295. package/dist/types/rows/PaymentStatusRow.d.ts +6 -0
  296. package/dist/types/rows/PaymentStatusRow.js +1 -0
  297. package/dist/types/rows/PersonalDataRow.d.ts +8 -0
  298. package/dist/types/rows/PersonalDataRow.js +1 -0
  299. package/dist/types/rows/ProductRow.d.ts +17 -0
  300. package/dist/types/rows/ProductRow.js +1 -0
  301. package/dist/types/rows/StatusRow.d.ts +8 -0
  302. package/dist/types/rows/StatusRow.js +1 -0
  303. package/dist/utils/calculateNetToGrossPrice.d.ts +1 -0
  304. package/dist/utils/calculateNetToGrossPrice.js +7 -0
  305. package/dist/utils/correctPhoneNumber.d.ts +1 -0
  306. package/dist/utils/correctPhoneNumber.js +14 -0
  307. package/package.json +27 -0
@@ -0,0 +1,89 @@
1
+ import { Table } from '@dascompany/database';
2
+ import * as SQL from '../../SQL.json';
3
+ export default class ProductsTable extends Table {
4
+ async select(productId) {
5
+ const query = this.createQuery(SQL.products.select);
6
+ query.bindParameter('id', productId);
7
+ const result = await query.execute();
8
+ return result.getRow();
9
+ }
10
+ async selectAll(queryOption) {
11
+ const query = this.createQuery(SQL.products.selectAll, queryOption);
12
+ const result = await query.execute();
13
+ return result.getRows();
14
+ }
15
+ async selectAllActive(queryOption) {
16
+ const query = this.createQuery(SQL.products.selectAllActive, queryOption);
17
+ const result = await query.execute();
18
+ return result.getRows();
19
+ }
20
+ async selectForSku(sku) {
21
+ const query = this.createQuery(SQL.products.selectForSku);
22
+ query.bindParameter('sku', String(sku).toUpperCase());
23
+ const result = await query.execute();
24
+ return result.getRow();
25
+ }
26
+ async selectForUrl(url) {
27
+ const query = this.createQuery(SQL.products.selectForUrl);
28
+ query.bindParameter('url', url.toUpperCase());
29
+ const result = await query.execute();
30
+ return result.getRow();
31
+ }
32
+ async selectIdForSku(sku) {
33
+ const query = this.createQuery(SQL.products.selectIdForSku);
34
+ query.bindParameter('sku', String(sku).toUpperCase());
35
+ const result = await query.execute();
36
+ return result.getValue();
37
+ }
38
+ async insert(productData) {
39
+ const sku = productData.getSku();
40
+ let productId = await this.selectIdForSku(sku);
41
+ if (productId)
42
+ throw new Error(`Product with SKU: ${sku} already exist!`);
43
+ else
44
+ productId = await this.selectNextId();
45
+ const query = this.createQuery(SQL.products.insert);
46
+ query.bindParameter('id', productId);
47
+ this.bindParameters(query, productData);
48
+ productData.setId(productId);
49
+ await query.execute();
50
+ return productId;
51
+ }
52
+ async update(product) {
53
+ const query = this.createQuery(SQL.products.update);
54
+ query.bindParameter('id', product.getId());
55
+ this.bindParameters(query, product);
56
+ await query.execute();
57
+ return true;
58
+ }
59
+ async delete(productId) {
60
+ const query = this.createQuery(SQL.products.delete);
61
+ query.bindParameter('id', productId);
62
+ const result = await query.execute();
63
+ return result.getRowCount();
64
+ }
65
+ async count(queryOption) {
66
+ const query = this.createQuery(SQL.products.count, queryOption);
67
+ const result = await query.execute();
68
+ return result.getValue();
69
+ }
70
+ bindParameters(query, productData) {
71
+ query.bindParameter('sku', productData.getSku());
72
+ query.bindParameter('url', productData.getUrl());
73
+ query.bindParameter('title', productData.getTitle());
74
+ query.bindParameter('description', productData.getDescription());
75
+ query.bindParameter('net_price', productData.getNetPrice());
76
+ query.bindParameter('vat', productData.getVat());
77
+ query.bindParameter('color', productData.getColor());
78
+ query.bindParameter('quantity', productData.getQuantity());
79
+ query.bindParameter('width', productData.getWidth());
80
+ query.bindParameter('length', productData.getLength());
81
+ query.bindParameter('height', productData.getHeight());
82
+ query.bindParameter('file_id', productData.getFileId());
83
+ }
84
+ async selectNextId() {
85
+ const query = this.createQuery(SQL.products.selectNextId);
86
+ const result = await query.execute();
87
+ return result.getValue();
88
+ }
89
+ }
@@ -0,0 +1,10 @@
1
+ import { Table } from '@dascompany/database';
2
+ import CompanyData from '../../stockObjects/CompanyData';
3
+ import CompanyDataRow from '../../types/rows/CompanyDataRow';
4
+ export default class CompanyDataTable extends Table {
5
+ select(): Promise<CompanyDataRow>;
6
+ update(companyData: CompanyData): Promise<boolean>;
7
+ insert(companyData: CompanyData): Promise<boolean>;
8
+ private selectNextId;
9
+ private bindParameters;
10
+ }
@@ -0,0 +1,37 @@
1
+ import { Table } from '@dascompany/database';
2
+ import * as SQL from '../../SQL.json';
3
+ export default class CompanyDataTable extends Table {
4
+ async select() {
5
+ const query = this.createQuery(SQL.companyData.select);
6
+ const result = await query.execute();
7
+ return result.getRow();
8
+ }
9
+ async update(companyData) {
10
+ const query = this.createQuery(SQL.companyData.update);
11
+ query.bindParameter('id', companyData.getId());
12
+ this.bindParameters(query, companyData);
13
+ await query.execute();
14
+ return true;
15
+ }
16
+ async insert(companyData) {
17
+ const id = await this.selectNextId();
18
+ const query = this.createQuery(SQL.companyData.insert);
19
+ query.bindParameter('id', id);
20
+ this.bindParameters(query, companyData);
21
+ await query.execute();
22
+ companyData.setId(id);
23
+ return true;
24
+ }
25
+ async selectNextId() {
26
+ const query = this.createQuery(SQL.companyData.selectNextId);
27
+ const result = await query.execute();
28
+ return result.getValue();
29
+ }
30
+ bindParameters(query, companyData) {
31
+ query.bindParameter('name', companyData.getName());
32
+ query.bindParameter('tax_number', companyData.getTaxNumber());
33
+ query.bindParameter('email', companyData.getEmail());
34
+ query.bindParameter('phone_number', companyData.getPhoneNumber());
35
+ query.bindParameter('address_id', companyData.getAddressId());
36
+ }
37
+ }
@@ -0,0 +1,12 @@
1
+ import { Table } from '@dascompany/database';
2
+ import DeliveryMethodI from '../../types/DeliveryMethodI';
3
+ import DeliveryMethodRow from '../../types/rows/DeliveryMethodRow';
4
+ import DeliveryMethods from '../../stockObjects/DeliveryMethods';
5
+ export default class DeliveryMethodsTable extends Table {
6
+ select(id: number): Promise<DeliveryMethodI>;
7
+ selectAll(): Promise<DeliveryMethodI[]>;
8
+ selectAllActive(): Promise<DeliveryMethodRow[]>;
9
+ insert(deliveryMethods: DeliveryMethods): Promise<boolean>;
10
+ update(deliveryMethods: DeliveryMethods): Promise<boolean>;
11
+ private selectNextId;
12
+ }
@@ -0,0 +1,43 @@
1
+ import { Table } from '@dascompany/database';
2
+ import * as SQL from '../../SQL.json';
3
+ export default class DeliveryMethodsTable extends Table {
4
+ async select(id) {
5
+ const query = this.createQuery(SQL.deliveryMethods.select);
6
+ query.bindParameter('id', id);
7
+ const result = await query.execute();
8
+ return result.getRow();
9
+ }
10
+ async selectAll() {
11
+ const query = this.createQuery(SQL.deliveryMethods.selectAll);
12
+ const result = await query.execute();
13
+ return result.getRows();
14
+ }
15
+ async selectAllActive() {
16
+ const query = this.createQuery(SQL.deliveryMethods.selectAllActive);
17
+ const result = await query.execute();
18
+ return result.getRows();
19
+ }
20
+ async insert(deliveryMethods) {
21
+ const id = await this.selectNextId();
22
+ const query = this.createQuery(SQL.deliveryMethods.insert);
23
+ query.bindParameter('id', id);
24
+ query.bindParameter('key', deliveryMethods.getKey());
25
+ query.bindParameter('active', deliveryMethods.getActive());
26
+ await query.execute();
27
+ deliveryMethods.setId(id);
28
+ return true;
29
+ }
30
+ async update(deliveryMethods) {
31
+ const query = this.createQuery(SQL.deliveryMethods.update);
32
+ query.bindParameter('id', deliveryMethods.getId());
33
+ query.bindParameter('key', deliveryMethods.getKey());
34
+ query.bindParameter('active', deliveryMethods.getActive());
35
+ await query.execute();
36
+ return true;
37
+ }
38
+ async selectNextId() {
39
+ const query = this.createQuery(SQL.deliveryMethods.selectNextId);
40
+ const result = await query.execute();
41
+ return result.getValue();
42
+ }
43
+ }
@@ -0,0 +1,12 @@
1
+ import { Table } from '@dascompany/database';
2
+ import PaymentMethodI from '../../types/PaymentMethodI';
3
+ import PaymentMethods from '../../stockObjects/PaymentMethods';
4
+ import PaymentMethodRow from '../../types/rows/PaymentMethodRow';
5
+ export default class PaymentMethodsTable extends Table {
6
+ select(id: number): Promise<PaymentMethodI>;
7
+ selectAll(): Promise<PaymentMethodI[]>;
8
+ selectAllActive(): Promise<PaymentMethodRow[]>;
9
+ insert(paymentMethods: PaymentMethods): Promise<boolean>;
10
+ update(paymentMethods: PaymentMethods): Promise<boolean>;
11
+ private selectNextId;
12
+ }
@@ -0,0 +1,43 @@
1
+ import { Table } from '@dascompany/database';
2
+ import * as SQL from '../../SQL.json';
3
+ export default class PaymentMethodsTable extends Table {
4
+ async select(id) {
5
+ const query = this.createQuery(SQL.paymentMethods.select);
6
+ query.bindParameter('id', id);
7
+ const result = await query.execute();
8
+ return result.getRow();
9
+ }
10
+ async selectAll() {
11
+ const query = this.createQuery(SQL.paymentMethods.selectAll);
12
+ const result = await query.execute();
13
+ return result.getRows();
14
+ }
15
+ async selectAllActive() {
16
+ const query = this.createQuery(SQL.paymentMethods.selectAllActive);
17
+ const result = await query.execute();
18
+ return result.getRows();
19
+ }
20
+ async insert(paymentMethods) {
21
+ const id = await this.selectNextId();
22
+ const query = this.createQuery(SQL.paymentMethods.insert);
23
+ query.bindParameter('id', id);
24
+ query.bindParameter('key', paymentMethods.getKey());
25
+ query.bindParameter('active', paymentMethods.getActive());
26
+ await query.execute();
27
+ paymentMethods.setId(id);
28
+ return true;
29
+ }
30
+ async update(paymentMethods) {
31
+ const query = this.createQuery(SQL.paymentMethods.update);
32
+ query.bindParameter('id', paymentMethods.getId());
33
+ query.bindParameter('key', paymentMethods.getKey());
34
+ query.bindParameter('active', paymentMethods.getActive());
35
+ await query.execute();
36
+ return true;
37
+ }
38
+ async selectNextId() {
39
+ const query = this.createQuery(SQL.paymentMethods.selectNextId);
40
+ const result = await query.execute();
41
+ return result.getValue();
42
+ }
43
+ }
@@ -0,0 +1,9 @@
1
+ export default interface AddressI {
2
+ id: number;
3
+ country: string;
4
+ city: string;
5
+ postalCode: string;
6
+ street: string;
7
+ houseNumber: string;
8
+ apartmentNumber: string;
9
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,9 @@
1
+ export default interface AdminI {
2
+ id: number;
3
+ email: string;
4
+ firstName: string;
5
+ lastName: string;
6
+ activated: boolean;
7
+ deleted: boolean;
8
+ createdAt: string;
9
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ export default interface ClaimI {
2
+ "key": string;
3
+ "value": number;
4
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,10 @@
1
+ export default interface ClientAccountI {
2
+ id: number;
3
+ email: string;
4
+ createdAt: string;
5
+ activated: boolean;
6
+ deleted: boolean;
7
+ contactDetailsId: number;
8
+ deliveryDetailsId: number;
9
+ invoiceDetailsId: number;
10
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
1
+ import AddressI from "./AddressI";
2
+ export default interface CompanyDataI {
3
+ id: number;
4
+ name: string;
5
+ taxNumber: string;
6
+ phoneNumber: string;
7
+ address: AddressI | null;
8
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ export default interface CompanyDetailsI {
2
+ id: number | null;
3
+ name: string;
4
+ taxNumber: string;
5
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,7 @@
1
+ import AddressI from "./AddressI";
2
+ import PersonalDataI from "./PersonalDataI";
3
+ export default interface ContactDetailsI {
4
+ id: number;
5
+ personalData: PersonalDataI | null;
6
+ address: AddressI | null;
7
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,9 @@
1
+ import AddressI from "./AddressI";
2
+ import DeliveryMethodI from "./DeliveryMethodI";
3
+ import PersonalDataI from "./PersonalDataI";
4
+ export default interface DeliveryDetailsI {
5
+ id: number;
6
+ personalData: PersonalDataI | null;
7
+ address: AddressI | null;
8
+ deliveryMethod: DeliveryMethodI | null;
9
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ export default interface DeliveryMethodI {
2
+ id: number;
3
+ key: string;
4
+ active: boolean;
5
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,6 @@
1
+ export default interface FileConnectionI {
2
+ fileId: number;
3
+ connectionType: string;
4
+ connectionId: number;
5
+ sequence: number;
6
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ declare enum FileConnectionTypeE {
2
+ product = "product"
3
+ }
4
+ export default FileConnectionTypeE;
@@ -0,0 +1,5 @@
1
+ var FileConnectionTypeE;
2
+ (function (FileConnectionTypeE) {
3
+ FileConnectionTypeE["product"] = "product";
4
+ })(FileConnectionTypeE || (FileConnectionTypeE = {}));
5
+ export default FileConnectionTypeE;
@@ -0,0 +1,6 @@
1
+ export default interface FileI {
2
+ id: number;
3
+ name: string;
4
+ catalog: string;
5
+ type: string;
6
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,7 @@
1
+ import type AddressI from "./AddressI";
2
+ import type PersonalDataI from "./PersonalDataI";
3
+ export default interface InvoiceDetailsI {
4
+ id: number | null;
5
+ personalData: PersonalDataI | null;
6
+ address: AddressI | null;
7
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,12 @@
1
+ export default interface OrderI {
2
+ id: number;
3
+ email: string;
4
+ price: number;
5
+ createdAt: string;
6
+ clientId: number;
7
+ contactDetailsId: number;
8
+ deliveryDetailsId: number;
9
+ invoiceDetailsId: number;
10
+ paymentDetailsId: number;
11
+ zsiId: number;
12
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,14 @@
1
+ import FileI from "./FileI";
2
+ export default interface OrderProductI {
3
+ id: number;
4
+ orderId: number;
5
+ product: {
6
+ id: number;
7
+ sku: string;
8
+ title: string;
9
+ netPrice: number;
10
+ grossPrice: number;
11
+ vat: number;
12
+ file: FileI;
13
+ };
14
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,6 @@
1
+ import type PaymentMethodI from "./PaymentMethodI";
2
+ export default interface PaymentDetailsI {
3
+ id: number;
4
+ paymentMethod: PaymentMethodI;
5
+ statuses: any[];
6
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ declare enum PaymentMethodE {
2
+ payU = 1,
3
+ transfer = 2
4
+ }
5
+ export default PaymentMethodE;
@@ -0,0 +1,6 @@
1
+ var PaymentMethodE;
2
+ (function (PaymentMethodE) {
3
+ PaymentMethodE[PaymentMethodE["payU"] = 1] = "payU";
4
+ PaymentMethodE[PaymentMethodE["transfer"] = 2] = "transfer";
5
+ })(PaymentMethodE || (PaymentMethodE = {}));
6
+ export default PaymentMethodE;
@@ -0,0 +1,5 @@
1
+ export default interface PaymentMethodI {
2
+ id: number;
3
+ key: string;
4
+ active: boolean;
5
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,6 @@
1
+ declare enum PaymentStatusE {
2
+ new = 1,
3
+ accepted = 2,
4
+ cancelled = 3
5
+ }
6
+ export default PaymentStatusE;
@@ -0,0 +1,7 @@
1
+ var PaymentStatusE;
2
+ (function (PaymentStatusE) {
3
+ PaymentStatusE[PaymentStatusE["new"] = 1] = "new";
4
+ PaymentStatusE[PaymentStatusE["accepted"] = 2] = "accepted";
5
+ PaymentStatusE[PaymentStatusE["cancelled"] = 3] = "cancelled";
6
+ })(PaymentStatusE || (PaymentStatusE = {}));
7
+ export default PaymentStatusE;
@@ -0,0 +1,10 @@
1
+ import CompanyDetailsI from "./CompanyDetailsI";
2
+ export default interface PersonalDataI {
3
+ id: number;
4
+ firstName: string;
5
+ lastName: string;
6
+ email: string;
7
+ phoneNumber: string;
8
+ isCompany: boolean;
9
+ companyDetails: CompanyDetailsI | null;
10
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,20 @@
1
+ import type FileI from "./FileI";
2
+ export default interface ProductI {
3
+ id: number;
4
+ sku: string;
5
+ url: string;
6
+ title: string;
7
+ description: string;
8
+ netPrice: number;
9
+ grossPrice: number;
10
+ vat: number;
11
+ color: string;
12
+ quantity: number;
13
+ width: number;
14
+ length: number;
15
+ height: number;
16
+ thumbnail: FileI | null;
17
+ createdAt: string;
18
+ deleted: boolean;
19
+ files?: FileI[];
20
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,7 @@
1
+ export default interface StatusI {
2
+ id: number;
3
+ createdAt: string;
4
+ userId: number;
5
+ typeId: number;
6
+ typeName: string;
7
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,9 @@
1
+ export default interface AddressRow {
2
+ id: number;
3
+ country: string;
4
+ city: string;
5
+ postal_code: string;
6
+ street: string;
7
+ house_number: string;
8
+ apartment_number: string;
9
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,9 @@
1
+ export default interface AdminRow {
2
+ id: number;
3
+ email: string;
4
+ first_name: string;
5
+ last_name: string;
6
+ activated: boolean;
7
+ deleted: boolean;
8
+ created_at: string;
9
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,10 @@
1
+ export default interface ClientAccountRow {
2
+ id: number;
3
+ email: string;
4
+ created_at: string;
5
+ activated: boolean;
6
+ deleted: boolean;
7
+ contact_details_id: number;
8
+ delivery_details_id: number;
9
+ invoice_details_id: number;
10
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
1
+ export default interface CompanyDataRow {
2
+ id: number;
3
+ name: string;
4
+ email: string;
5
+ tax_number: string;
6
+ phone_number: string;
7
+ address_id: number;
8
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ export default interface CompanyDetailsRow {
2
+ id: number;
3
+ name: string;
4
+ tax_number: string;
5
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ export default interface ContactDetailsRow {
2
+ id: number;
3
+ personal_data_id: number;
4
+ address_id: number;
5
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,6 @@
1
+ export default interface DeliveryDetailsRow {
2
+ id: number;
3
+ personal_data_id: number;
4
+ address_id: number;
5
+ delivery_method_id: number;
6
+ }
@@ -0,0 +1 @@
1
+ export {};