@dascompany/database 0.0.3 → 0.0.4

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 (64) hide show
  1. package/dist/SQL.json +18 -1
  2. package/dist/TableConnection.d.ts +8 -2
  3. package/dist/TableConnection.js +14 -2
  4. package/dist/index.d.ts +8 -1
  5. package/dist/index.js +8 -1
  6. package/dist/mappers/CompanyDataMapper.d.ts +9 -0
  7. package/dist/mappers/CompanyDataMapper.js +17 -0
  8. package/dist/mappers/FileConnectionMapper.d.ts +9 -0
  9. package/dist/mappers/FileConnectionMapper.js +17 -0
  10. package/dist/mappers/PaymentMethodsMapper.d.ts +9 -0
  11. package/dist/mappers/PaymentMethodsMapper.js +17 -0
  12. package/dist/reader/CompanyDataReader.d.ts +4 -0
  13. package/dist/reader/CompanyDataReader.js +27 -0
  14. package/dist/reader/FileConnectionsReader.d.ts +6 -0
  15. package/dist/reader/FileConnectionsReader.js +25 -0
  16. package/dist/reader/ProductReader.d.ts +2 -0
  17. package/dist/reader/ProductReader.js +21 -0
  18. package/dist/reader/StatusTypesReader.d.ts +3 -0
  19. package/dist/reader/StatusTypesReader.js +8 -0
  20. package/dist/reader/payment/PaymentMethodReader.d.ts +1 -0
  21. package/dist/reader/payment/PaymentMethodReader.js +5 -0
  22. package/dist/repo/CompanyDataRepo.d.ts +4 -0
  23. package/dist/repo/CompanyDataRepo.js +11 -0
  24. package/dist/repo/DeliveryMethodRepo.d.ts +4 -0
  25. package/dist/repo/DeliveryMethodRepo.js +11 -0
  26. package/dist/repo/FileConnectionsRepo.d.ts +7 -0
  27. package/dist/repo/FileConnectionsRepo.js +25 -0
  28. package/dist/repo/PaymentMethodRepo.d.ts +4 -0
  29. package/dist/repo/PaymentMethodRepo.js +11 -0
  30. package/dist/stockObjects/CompanyData.d.ts +21 -0
  31. package/dist/stockObjects/CompanyData.js +51 -0
  32. package/dist/stockObjects/DeliveryDetails.d.ts +1 -0
  33. package/dist/stockObjects/DeliveryDetails.js +3 -0
  34. package/dist/stockObjects/FileConnection.d.ts +18 -0
  35. package/dist/stockObjects/FileConnection.js +42 -0
  36. package/dist/stockObjects/PaymentDetails.d.ts +1 -1
  37. package/dist/stockObjects/PaymentDetails.js +1 -1
  38. package/dist/stockObjects/PaymentMethods.d.ts +12 -0
  39. package/dist/stockObjects/PaymentMethods.js +26 -0
  40. package/dist/tables/files/FileConnectionsTable.d.ts +12 -0
  41. package/dist/tables/files/FileConnectionsTable.js +41 -0
  42. package/dist/tables/settings/CompanyDataTable.d.ts +10 -0
  43. package/dist/tables/settings/CompanyDataTable.js +37 -0
  44. package/dist/tables/settings/PaymentMethodsTable.d.ts +12 -0
  45. package/dist/tables/settings/PaymentMethodsTable.js +43 -0
  46. package/dist/types/CompanyDataI.d.ts +8 -0
  47. package/dist/types/CompanyDataI.js +1 -0
  48. package/dist/types/FileConnectionI.d.ts +6 -0
  49. package/dist/types/FileConnectionI.js +1 -0
  50. package/dist/types/FileConnectionTypeE.d.ts +4 -0
  51. package/dist/types/FileConnectionTypeE.js +5 -0
  52. package/dist/types/PersonalDataI.d.ts +1 -1
  53. package/dist/types/QueryOptionsI.d.ts +2 -1
  54. package/dist/types/rows/CompanyDataRow.d.ts +8 -0
  55. package/dist/types/rows/CompanyDataRow.js +1 -0
  56. package/dist/types/rows/FileConnectionRow.d.ts +6 -0
  57. package/dist/types/rows/FileConnectionRow.js +1 -0
  58. package/dist/types/rows/PaymentMethodRow.d.ts +5 -0
  59. package/dist/types/rows/PaymentMethodRow.js +1 -0
  60. package/package.json +1 -1
  61. package/dist/tables/store-settings/PaymentMethodsTable.d.ts +0 -6
  62. package/dist/tables/store-settings/PaymentMethodsTable.js +0 -15
  63. /package/dist/tables/{store-settings → settings}/DeliveryMethodsTable.d.ts +0 -0
  64. /package/dist/tables/{store-settings → settings}/DeliveryMethodsTable.js +0 -0
package/dist/SQL.json CHANGED
@@ -102,9 +102,20 @@
102
102
  "select": "SELECT id, name, orginal_name, catalog, size_kb, type, created_at FROM files.files WHERE id = $id::BIGINT",
103
103
  "selectForConnection": "SELECT id, name, catalog, type FROM files.files JOIN files.file_connections ON file_id = id WHERE connection_type = $connection_type::TEXT AND connection_id = $connection_id::BIGINT ORDER BY sequence"
104
104
  },
105
+ "fileConnections": {
106
+ "select": "SELECT file_id, sequence FROM files.file_connections WHERE connection_type = $connection_type::BIGINT and connection_id = $connection_id::BIGINT",
107
+ "selectForFileId": "SELECT * FROM files.file_connections WHERE file_id = $file_id::BIGINT",
108
+ "insert": "INSERT INTO files.file_connections( file_id, connection_type, connection_id, sequence) VALUES ($file_id::BIGINT, $connection_type::TEXT, $connection_id::BIGINT, $sequence::BIGINT)",
109
+ "delete": "DELETE FROM files.file_connections WHERE file_id = $file_id::BIGINT",
110
+ "deleteForConnection": "DELETE FROM files.file_connections WHERE connection_type = $connection_type::TEXT AND connection_id = $connection_id::BIGINT"
111
+ },
105
112
  "paymentMethods": {
106
113
  "select": "SELECT * FROM settings.payment_methods WHERE id = $id::BIGINT",
107
- "selectAll": "SELECT * FROM settings.payment_methods WHERE active = true ORDER BY id"
114
+ "selectAll": "SELECT * FROM settings.payment_methods ORDER BY id",
115
+ "selectAllActive": "SELECT * FROM settings.payment_methods WHERE active=true ORDER BY id",
116
+ "insert": "INSERT INTO settings.payment_methods(id, key, active) VALUES ( $id::BIGINT, $key::TEXT, $active::BOOL)",
117
+ "update": "UPDATE settings.payment_methods SET id = $id::BIGINT, key = $key::TEXT, active = $active::BOOL WHERE id = $id::BIGINT",
118
+ "selectNextId": "SELECT nextval('settings.payment_methods_id'::regclass)"
108
119
  },
109
120
  "deliveryMethods": {
110
121
  "select": "SELECT * FROM settings.delivery_methods WHERE id = $id::BIGINT",
@@ -134,5 +145,11 @@
134
145
  },
135
146
  "statusTypes": {
136
147
  "select": "SELECT * FROM orders.status_types"
148
+ },
149
+ "companyData": {
150
+ "select": "SELECT * FROM settings.company_data ORDER BY id DESC LIMIT 1",
151
+ "insert": "INSERT INTO settings.company_data(id, name, tax_number, email, phone_number, address_id) VALUES ( $id::BIGINT, $name::TEXT, $tax_number::TEXT, $email::TEXT, $phone_number::TEXT, $address_id::BIGINT )",
152
+ "update": "UPDATE settings.company_data SET id = $id::BIGINT, name = $name::TEXT , email = LOWER($email::TEXT), phone_number = $phone_number::TEXT, tax_number = $tax_number::TEXT WHERE id = $id::BIGINT",
153
+ "selectNextId": "SELECT nextval('settings.company_data_id'::regclass)"
137
154
  }
138
155
  }
@@ -9,9 +9,9 @@ import OrdersProductsTable from './tables/orders/OrdersProductsTable';
9
9
  import PaymentStatusTypesTable from './tables/orders/PaymentStatusTypesTable';
10
10
  import AddressesTable from './tables/personalInformation/AddressesTable';
11
11
  import DeliveryStatusTypesTable from './tables/DeliveryStatusTypesTable';
12
- import PaymentMethodsTable from './tables/store-settings/PaymentMethodsTable';
12
+ import PaymentMethodsTable from './tables/settings/PaymentMethodsTable';
13
13
  import PersonalDataTable from './tables/personalInformation/PersonalDataTable';
14
- import DeliveryMethodsTable from './tables/store-settings/DeliveryMethodsTable';
14
+ import DeliveryMethodsTable from './tables/settings/DeliveryMethodsTable';
15
15
  import CompanyDetailsTable from './tables/personalInformation/CompanyDetailsTable';
16
16
  import ContactDetailsTable from './tables/personalInformation/ContactDetailsTable';
17
17
  import InvoiceDetailsTable from './tables/personalInformation/InvoiceDetailsTable';
@@ -21,6 +21,8 @@ import PaymentDetailsTable from './tables/orders/PaymentDetailsTable';
21
21
  import PaymentStatusesTable from './tables/orders/PaymentStatusesTable';
22
22
  import AdminAccountsTable from './tables/AdminAccountsTable';
23
23
  import StatusTypesTable from './tables/StatusTypesTable';
24
+ import CompanyDataTable from './tables/settings/CompanyDataTable';
25
+ import FileConnectionsTable from './tables/files/FileConnectionsTable';
24
26
  export default class TableConnection extends Connection {
25
27
  private _AdminAccountsTable;
26
28
  private _StatusTypesTable;
@@ -43,6 +45,8 @@ export default class TableConnection extends Connection {
43
45
  private _DeliveryStatusesTable;
44
46
  private _PaymentDetailsTable;
45
47
  private _PaymentStatusesTable;
48
+ private _CompanyDataTable;
49
+ private _FileConnectionsTable;
46
50
  constructor(pgClient: Client);
47
51
  get adminAccounts(): AdminAccountsTable;
48
52
  get statusTypes(): StatusTypesTable;
@@ -65,4 +69,6 @@ export default class TableConnection extends Connection {
65
69
  get deliveryStatuses(): DeliveryStatusesTable;
66
70
  get paymentDetails(): PaymentDetailsTable;
67
71
  get paymentStatuses(): PaymentStatusesTable;
72
+ get companyData(): CompanyDataTable;
73
+ get fileConnections(): FileConnectionsTable;
68
74
  }
@@ -8,9 +8,9 @@ import OrdersProductsTable from './tables/orders/OrdersProductsTable';
8
8
  import PaymentStatusTypesTable from './tables/orders/PaymentStatusTypesTable';
9
9
  import AddressesTable from './tables/personalInformation/AddressesTable';
10
10
  import DeliveryStatusTypesTable from './tables/DeliveryStatusTypesTable';
11
- import PaymentMethodsTable from './tables/store-settings/PaymentMethodsTable';
11
+ import PaymentMethodsTable from './tables/settings/PaymentMethodsTable';
12
12
  import PersonalDataTable from './tables/personalInformation/PersonalDataTable';
13
- import DeliveryMethodsTable from './tables/store-settings/DeliveryMethodsTable';
13
+ import DeliveryMethodsTable from './tables/settings/DeliveryMethodsTable';
14
14
  import CompanyDetailsTable from './tables/personalInformation/CompanyDetailsTable';
15
15
  import ContactDetailsTable from './tables/personalInformation/ContactDetailsTable';
16
16
  import InvoiceDetailsTable from './tables/personalInformation/InvoiceDetailsTable';
@@ -20,6 +20,8 @@ import PaymentDetailsTable from './tables/orders/PaymentDetailsTable';
20
20
  import PaymentStatusesTable from './tables/orders/PaymentStatusesTable';
21
21
  import AdminAccountsTable from './tables/AdminAccountsTable';
22
22
  import StatusTypesTable from './tables/StatusTypesTable';
23
+ import CompanyDataTable from './tables/settings/CompanyDataTable';
24
+ import FileConnectionsTable from './tables/files/FileConnectionsTable';
23
25
  export default class TableConnection extends Connection {
24
26
  _AdminAccountsTable;
25
27
  _StatusTypesTable;
@@ -42,6 +44,8 @@ export default class TableConnection extends Connection {
42
44
  _DeliveryStatusesTable;
43
45
  _PaymentDetailsTable;
44
46
  _PaymentStatusesTable;
47
+ _CompanyDataTable;
48
+ _FileConnectionsTable;
45
49
  constructor(pgClient) {
46
50
  super(pgClient);
47
51
  this._AdminAccountsTable = new AdminAccountsTable(this);
@@ -65,6 +69,8 @@ export default class TableConnection extends Connection {
65
69
  this._DeliveryStatusesTable = new DeliveryStatusesTable(this);
66
70
  this._PaymentDetailsTable = new PaymentDetailsTable(this);
67
71
  this._PaymentStatusesTable = new PaymentStatusesTable(this);
72
+ this._CompanyDataTable = new CompanyDataTable(this);
73
+ this._FileConnectionsTable = new FileConnectionsTable(this);
68
74
  }
69
75
  get adminAccounts() {
70
76
  return this._AdminAccountsTable;
@@ -129,4 +135,10 @@ export default class TableConnection extends Connection {
129
135
  get paymentStatuses() {
130
136
  return this._PaymentStatusesTable;
131
137
  }
138
+ get companyData() {
139
+ return this._CompanyDataTable;
140
+ }
141
+ get fileConnections() {
142
+ return this._FileConnectionsTable;
143
+ }
132
144
  }
package/dist/index.d.ts CHANGED
@@ -18,12 +18,14 @@ import ProductReader from "./reader/ProductReader";
18
18
  import AddressesRepo from "./repo/AddressesRepo";
19
19
  import ClientAccountRepo from "./repo/ClientAccountRepo";
20
20
  import CompanyDetailsRepo from "./repo/CompanyDetailsRepo";
21
+ import CompanyDataRepo from "./repo/CompanyDataRepo";
21
22
  import ContactDetailsRepo from "./repo/ContactDetailsRepo";
22
23
  import DeliveryDetailsRepo from "./repo/DeliveryDetailsRepo";
23
24
  import InvoiceDetailsRepo from "./repo/InvoiceDetailsRepo";
24
25
  import OrderRepo from "./repo/OrderRepo";
25
26
  import PaymentDetailsRepo from "./repo/PaymentDetailsRepo";
26
27
  import PersonalDataRepo from "./repo/PersonalDataRepo";
28
+ import PaymentMethodRepo from './repo/PaymentMethodRepo';
27
29
  import ProductRepo from "./repo/ProductRepo";
28
30
  import Address from "./stockObjects/Address";
29
31
  import Admin from "./stockObjects/Admin";
@@ -52,4 +54,9 @@ import ResultLimitationI from './types/ResultLimitationI';
52
54
  import ParameterFilter from './types/parameters/ParameterFilter';
53
55
  import PaymentStatusE from './types/PaymentStatusE';
54
56
  import OrderProductI from './types/OrderProductI';
55
- export { TableConnection, DatabaseConnection, ParameterType, ConnectorE, FileConnectionE, PaymentStatusE, ParameterI, QueryOptionsI, ResultLimitationI, OrderProductI, ParameterFilter, PaymentDetailsReader, FilesReader, PaymentMethodReader, DeliveryStatusReader, PaymentStatusesReader, AddressesReader, ClientAccountReader, CompanyDetailsReader, ContactDetailsReader, DeliveryDetailsReader, DeliveryMethodReader, InvoiceDetailsReader, OrderProductsReader, OrderReader, OrderStatusReader, PersonalDataReader, ProductReader, AdminRepo, PaymentDetailsRepo, AddressesRepo, ClientAccountRepo, CompanyDetailsRepo, ContactDetailsRepo, DeliveryDetailsRepo, InvoiceDetailsRepo, OrderRepo, PersonalDataRepo, ProductRepo, Address, Admin, Client, CompanyDetails, ContactDetails, DeliveryDetails, InvoiceDetails, DeliveryStatus, Order, OrderProduct, PaymentDetails, PaymentStatus, PersonalData, Product, Status, };
57
+ import Parameters from './utils/Parameters';
58
+ import DeliveryMethodRepo from './repo/DeliveryMethodRepo';
59
+ import StatusTypesReader from './reader/StatusTypesReader';
60
+ import FileConnectionsReader from "./reader/FileConnectionsReader";
61
+ import FileConnectionsRepo from "./repo/FileConnectionsRepo";
62
+ export { TableConnection, DatabaseConnection, ParameterType, ConnectorE, FileConnectionE, PaymentStatusE, Parameters, ParameterI, QueryOptionsI, ResultLimitationI, OrderProductI, ParameterFilter, PaymentDetailsReader, FilesReader, PaymentMethodReader, DeliveryStatusReader, PaymentStatusesReader, AddressesReader, ClientAccountReader, CompanyDetailsReader, ContactDetailsReader, DeliveryDetailsReader, DeliveryMethodReader, InvoiceDetailsReader, OrderProductsReader, OrderReader, OrderStatusReader, PersonalDataReader, ProductReader, StatusTypesReader, FileConnectionsReader, DeliveryMethodRepo, AdminRepo, PaymentDetailsRepo, AddressesRepo, ClientAccountRepo, CompanyDetailsRepo, ContactDetailsRepo, DeliveryDetailsRepo, CompanyDataRepo, InvoiceDetailsRepo, OrderRepo, PersonalDataRepo, PaymentMethodRepo, ProductRepo, FileConnectionsRepo, Address, Admin, Client, CompanyDetails, ContactDetails, DeliveryDetails, InvoiceDetails, DeliveryStatus, Order, OrderProduct, PaymentDetails, PaymentStatus, PersonalData, Product, Status, };
package/dist/index.js CHANGED
@@ -18,12 +18,14 @@ import ProductReader from "./reader/ProductReader";
18
18
  import AddressesRepo from "./repo/AddressesRepo";
19
19
  import ClientAccountRepo from "./repo/ClientAccountRepo";
20
20
  import CompanyDetailsRepo from "./repo/CompanyDetailsRepo";
21
+ import CompanyDataRepo from "./repo/CompanyDataRepo";
21
22
  import ContactDetailsRepo from "./repo/ContactDetailsRepo";
22
23
  import DeliveryDetailsRepo from "./repo/DeliveryDetailsRepo";
23
24
  import InvoiceDetailsRepo from "./repo/InvoiceDetailsRepo";
24
25
  import OrderRepo from "./repo/OrderRepo";
25
26
  import PaymentDetailsRepo from "./repo/PaymentDetailsRepo";
26
27
  import PersonalDataRepo from "./repo/PersonalDataRepo";
28
+ import PaymentMethodRepo from './repo/PaymentMethodRepo';
27
29
  import ProductRepo from "./repo/ProductRepo";
28
30
  import Address from "./stockObjects/Address";
29
31
  import Admin from "./stockObjects/Admin";
@@ -47,4 +49,9 @@ import DeliveryStatusReader from './reader/DeliveryStatusReader';
47
49
  import FileConnectionE from './types/FileConnectionE';
48
50
  import ConnectorE from './types/ConnectorE';
49
51
  import PaymentStatusE from './types/PaymentStatusE';
50
- export { TableConnection, DatabaseConnection, ParameterType, ConnectorE, FileConnectionE, PaymentStatusE, PaymentDetailsReader, FilesReader, PaymentMethodReader, DeliveryStatusReader, PaymentStatusesReader, AddressesReader, ClientAccountReader, CompanyDetailsReader, ContactDetailsReader, DeliveryDetailsReader, DeliveryMethodReader, InvoiceDetailsReader, OrderProductsReader, OrderReader, OrderStatusReader, PersonalDataReader, ProductReader, AdminRepo, PaymentDetailsRepo, AddressesRepo, ClientAccountRepo, CompanyDetailsRepo, ContactDetailsRepo, DeliveryDetailsRepo, InvoiceDetailsRepo, OrderRepo, PersonalDataRepo, ProductRepo, Address, Admin, Client, CompanyDetails, ContactDetails, DeliveryDetails, InvoiceDetails, DeliveryStatus, Order, OrderProduct, PaymentDetails, PaymentStatus, PersonalData, Product, Status, };
52
+ import Parameters from './utils/Parameters';
53
+ import DeliveryMethodRepo from './repo/DeliveryMethodRepo';
54
+ import StatusTypesReader from './reader/StatusTypesReader';
55
+ import FileConnectionsReader from "./reader/FileConnectionsReader";
56
+ import FileConnectionsRepo from "./repo/FileConnectionsRepo";
57
+ export { TableConnection, DatabaseConnection, ParameterType, ConnectorE, FileConnectionE, PaymentStatusE, Parameters, PaymentDetailsReader, FilesReader, PaymentMethodReader, DeliveryStatusReader, PaymentStatusesReader, AddressesReader, ClientAccountReader, CompanyDetailsReader, ContactDetailsReader, DeliveryDetailsReader, DeliveryMethodReader, InvoiceDetailsReader, OrderProductsReader, OrderReader, OrderStatusReader, PersonalDataReader, ProductReader, StatusTypesReader, FileConnectionsReader, DeliveryMethodRepo, AdminRepo, PaymentDetailsRepo, AddressesRepo, ClientAccountRepo, CompanyDetailsRepo, ContactDetailsRepo, DeliveryDetailsRepo, CompanyDataRepo, InvoiceDetailsRepo, OrderRepo, PersonalDataRepo, PaymentMethodRepo, ProductRepo, FileConnectionsRepo, Address, Admin, Client, CompanyDetails, ContactDetails, DeliveryDetails, InvoiceDetails, DeliveryStatus, Order, OrderProduct, PaymentDetails, PaymentStatus, PersonalData, Product, Status, };
@@ -0,0 +1,9 @@
1
+ import CompanyData from "../stockObjects/CompanyData";
2
+ import StockObjectMapper from "../types/StockObjectMapper";
3
+ export default class CompanyDataMapper implements StockObjectMapper {
4
+ private companyData;
5
+ private companyDataTable;
6
+ constructor(companyData: CompanyData);
7
+ save(): Promise<void>;
8
+ delete(): Promise<void>;
9
+ }
@@ -0,0 +1,17 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ export default class CompanyDataMapper {
3
+ companyData;
4
+ companyDataTable;
5
+ constructor(companyData) {
6
+ this.companyDataTable = DatabaseConnection.get().companyData;
7
+ this.companyData = companyData;
8
+ }
9
+ async save() {
10
+ if (this.companyData.getId())
11
+ await this.companyDataTable.update(this.companyData);
12
+ else
13
+ await this.companyDataTable.insert(this.companyData);
14
+ }
15
+ async delete() {
16
+ }
17
+ }
@@ -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
+ if (this.fileConnection.getId())
11
+ await this.fileConnectionsTable.update(this.fileConnection);
12
+ else
13
+ await this.fileConnectionsTable.insert(this.fileConnection);
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,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: {}
24
+ };
25
+ }
26
+ }
27
+ }
@@ -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
+ }
@@ -3,8 +3,10 @@ import QueryOptionsI from "../types/QueryOptionsI";
3
3
  export default class ProductReader {
4
4
  static get(productId: number): Promise<ProductI>;
5
5
  static getForUrl(productUrl: string): Promise<ProductI>;
6
+ static getListForOrder(): Promise<any>;
6
7
  static getAll(queryOptions: QueryOptionsI): Promise<ProductI[]>;
7
8
  static getQuantity(queryOptions: QueryOptionsI): Promise<number>;
8
9
  private static correctProducts;
9
10
  private static correctProduct;
11
+ private static correctProductForOrderList;
10
12
  }
@@ -1,5 +1,6 @@
1
1
  import DatabaseConnection from "../DatabaseConnection";
2
2
  import calculateNetToGrossPrice from "../utils/calculateNetToGrossPrice";
3
+ import FilesReader from "./FilesReader";
3
4
  export default class ProductReader {
4
5
  static async get(productId) {
5
6
  const connection = DatabaseConnection.get();
@@ -11,6 +12,17 @@ export default class ProductReader {
11
12
  const product = await connection.products.selectForUrl(productUrl);
12
13
  return this.correctProduct(product);
13
14
  }
15
+ static async getListForOrder() {
16
+ const connection = DatabaseConnection.get();
17
+ let correctProducts = [];
18
+ const products = await connection.products.selectListForOrder();
19
+ for (const product of products) {
20
+ const file = await FilesReader.get(product.file_id);
21
+ product.file = file;
22
+ correctProducts.push(this.correctProductForOrderList(product));
23
+ }
24
+ return correctProducts;
25
+ }
14
26
  static async getAll(queryOptions) {
15
27
  const connection = DatabaseConnection.get();
16
28
  const products = await connection.products.selectAll(queryOptions);
@@ -49,4 +61,13 @@ export default class ProductReader {
49
61
  grossPrice: calculateNetToGrossPrice(product.net_price, product.vat)
50
62
  };
51
63
  }
64
+ static correctProductForOrderList(product) {
65
+ return {
66
+ id: product.id,
67
+ title: product.title,
68
+ sku: product.sku,
69
+ file: product.file,
70
+ netPrice: product.net_price
71
+ };
72
+ }
52
73
  }
@@ -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
+ }
@@ -2,4 +2,5 @@ import PaymentMethodI from "../../types/PaymentMethodI";
2
2
  export default class PaymentMethodReader {
3
3
  static get(paymentMethodId: number): Promise<PaymentMethodI>;
4
4
  static getAll(): Promise<PaymentMethodI[]>;
5
+ static getAllActive(): Promise<PaymentMethodI[]>;
5
6
  }
@@ -10,4 +10,9 @@ export default class PaymentMethodReader {
10
10
  const paymentMethods = await connection.paymentMethods.selectAll();
11
11
  return paymentMethods;
12
12
  }
13
+ static async getAllActive() {
14
+ const connection = DatabaseConnection.get();
15
+ const paymentMethods = await connection.paymentMethods.selectAllActive();
16
+ return paymentMethods;
17
+ }
13
18
  }
@@ -0,0 +1,4 @@
1
+ import CompanyData from "../stockObjects/CompanyData";
2
+ export default class CompanyDataRepo {
3
+ static get(): Promise<CompanyData>;
4
+ }
@@ -0,0 +1,11 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ import CompanyData from "../stockObjects/CompanyData";
3
+ export default class CompanyDataRepo {
4
+ static async get() {
5
+ const connection = DatabaseConnection.get();
6
+ const companyDataRow = await connection.companyData.select();
7
+ const companyData = new CompanyData(companyDataRow.name, companyDataRow.tax_number, companyDataRow.phone_number, companyDataRow.email, companyDataRow.address_id);
8
+ companyData.setId(companyDataRow.id);
9
+ return companyData;
10
+ }
11
+ }
@@ -0,0 +1,4 @@
1
+ import DeliveryMethods from "../stockObjects/DeliveryMethods";
2
+ export default class DeliveryMethodRepo {
3
+ static get(id: number): Promise<DeliveryMethods>;
4
+ }
@@ -0,0 +1,11 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ import DeliveryMethods from "../stockObjects/DeliveryMethods";
3
+ export default class DeliveryMethodRepo {
4
+ static async get(id) {
5
+ const connection = DatabaseConnection.get();
6
+ const deliveryMethodsRow = await connection.deliveryMethods.select(id);
7
+ const deliveryMethods = new DeliveryMethods(deliveryMethodsRow.key, deliveryMethodsRow.active);
8
+ deliveryMethods.setId(deliveryMethodsRow.id);
9
+ return deliveryMethods;
10
+ }
11
+ }
@@ -0,0 +1,7 @@
1
+ import FileConnection from "../stockObjects/FileConnection";
2
+ export default class FileConnectionsRepo {
3
+ static getAllForFileId(fileId: number): Promise<FileConnection[]>;
4
+ static deleteAllForConnection(connectionType: string, connectionId: number): Promise<boolean>;
5
+ private static correctFileConnections;
6
+ private static correctFileConnection;
7
+ }
@@ -0,0 +1,25 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ import FileConnection from "../stockObjects/FileConnection";
3
+ export default class FileConnectionsRepo {
4
+ static async getAllForFileId(fileId) {
5
+ const connection = DatabaseConnection.get();
6
+ const fileConnections = await connection.fileConnections.selectForFileId(fileId);
7
+ return this.correctFileConnections(fileConnections);
8
+ }
9
+ static async deleteAllForConnection(connectionType, connectionId) {
10
+ const connection = DatabaseConnection.get();
11
+ return await connection.fileConnections.deleteForConnection(connectionType, connectionId);
12
+ }
13
+ static correctFileConnections(dataRows) {
14
+ const fileConnections = [];
15
+ for (const dataRow of dataRows) {
16
+ const fileConnection = this.correctFileConnection(dataRow);
17
+ fileConnections.push(fileConnection);
18
+ }
19
+ return fileConnections;
20
+ }
21
+ static correctFileConnection(fileConnections) {
22
+ const correctFileConnection = new FileConnection(fileConnections.file_id, fileConnections.connection_type, fileConnections.connection_id, fileConnections.sequence);
23
+ return correctFileConnection;
24
+ }
25
+ }
@@ -0,0 +1,4 @@
1
+ import PaymentMethods from "../stockObjects/PaymentMethods";
2
+ export default class PaymentMethodRepo {
3
+ static get(id: number): Promise<PaymentMethods>;
4
+ }
@@ -0,0 +1,11 @@
1
+ import DatabaseConnection from "../DatabaseConnection";
2
+ import PaymentMethods from "../stockObjects/PaymentMethods";
3
+ export default class PaymentMethodRepo {
4
+ static async get(id) {
5
+ const connection = DatabaseConnection.get();
6
+ const paymentMethodsRow = await connection.paymentMethods.select(id);
7
+ const paymentMethods = new PaymentMethods(paymentMethodsRow.key, paymentMethodsRow.active);
8
+ paymentMethods.setId(paymentMethodsRow.id);
9
+ return paymentMethods;
10
+ }
11
+ }
@@ -0,0 +1,21 @@
1
+ import StockObject from "../types/StockObject";
2
+ import StockObjectMapper from "../types/StockObjectMapper";
3
+ export default class CompanyData extends StockObject {
4
+ private name;
5
+ private email;
6
+ private taxNumber;
7
+ private phoneNumber;
8
+ private addressId;
9
+ constructor(name: string, email: string, taxNumber: string, phoneNumber: string, addressId: number);
10
+ getAddressId(): number | null;
11
+ getEmail(): string;
12
+ getTaxNumber(): string;
13
+ getPhoneNumber(): string;
14
+ getName(): string;
15
+ setAddressId(addressId: number): number;
16
+ setEmail(email: string): string;
17
+ setTaxNumber(taxNumber: string): string;
18
+ setPhoneNumber(phoneNumber: string): string;
19
+ setName(name: string): string;
20
+ protected getMapper(): StockObjectMapper;
21
+ }
@@ -0,0 +1,51 @@
1
+ import CompanyDataMapper from "../mappers/CompanyDataMapper";
2
+ import StockObject from "../types/StockObject";
3
+ export default class CompanyData extends StockObject {
4
+ name;
5
+ email;
6
+ taxNumber;
7
+ phoneNumber;
8
+ addressId;
9
+ constructor(name, email, taxNumber, phoneNumber, addressId) {
10
+ super();
11
+ this.name = name;
12
+ this.email = email;
13
+ this.taxNumber = taxNumber;
14
+ this.phoneNumber = phoneNumber;
15
+ this.email = email;
16
+ this.addressId = addressId;
17
+ }
18
+ getAddressId() {
19
+ return this.addressId;
20
+ }
21
+ getEmail() {
22
+ return this.email;
23
+ }
24
+ getTaxNumber() {
25
+ return this.taxNumber;
26
+ }
27
+ getPhoneNumber() {
28
+ return this.phoneNumber;
29
+ }
30
+ getName() {
31
+ return this.name;
32
+ }
33
+ setAddressId(addressId) {
34
+ return this.addressId = addressId;
35
+ }
36
+ setEmail(email) {
37
+ return this.email = email;
38
+ }
39
+ setTaxNumber(taxNumber) {
40
+ return this.taxNumber = taxNumber;
41
+ }
42
+ setPhoneNumber(phoneNumber) {
43
+ return this.phoneNumber = phoneNumber;
44
+ }
45
+ setName(name) {
46
+ return this.name = name;
47
+ }
48
+ getMapper() {
49
+ return new CompanyDataMapper(this);
50
+ }
51
+ }
@@ -11,5 +11,6 @@ export default class DeliveryDetails extends StockObject {
11
11
  setAddressId(addressId: number): number;
12
12
  setPersonalDataId(personalDataId: number): number;
13
13
  setDeliveryDetailsId(deliveryMethodId: number): number;
14
+ setDeliveryMethodId(deliveryMethodId: number): number;
14
15
  protected getMapper(): StockObjectMapper;
15
16
  }
@@ -28,6 +28,9 @@ export default class DeliveryDetails extends StockObject {
28
28
  setDeliveryDetailsId(deliveryMethodId) {
29
29
  return this.deliveryMethodId = deliveryMethodId;
30
30
  }
31
+ setDeliveryMethodId(deliveryMethodId) {
32
+ return this.deliveryMethodId = deliveryMethodId;
33
+ }
31
34
  getMapper() {
32
35
  return new DeliveryDetailsMapper(this);
33
36
  }
@@ -0,0 +1,18 @@
1
+ import StockObject from "../types/StockObject";
2
+ import StockObjectMapper from "../types/StockObjectMapper";
3
+ export default class FileConnection extends StockObject {
4
+ private fileId;
5
+ private connectionType;
6
+ private connectionId;
7
+ private sequence;
8
+ constructor(fileId: number, connectionType: string, connectionId: number, sequence: number);
9
+ getFileId(): number;
10
+ getConnectionType(): string;
11
+ getConnectionId(): number;
12
+ getSequence(): number;
13
+ setFileId(fileId: number): void;
14
+ setConnectionType(connectionType: string): void;
15
+ setConnectionId(connectionId: number): void;
16
+ setSequence(sequence: number): void;
17
+ protected getMapper(): StockObjectMapper;
18
+ }
@@ -0,0 +1,42 @@
1
+ import FileConnectionMapper from "../mappers/FileConnectionMapper";
2
+ import StockObject from "../types/StockObject";
3
+ export default class FileConnection extends StockObject {
4
+ fileId;
5
+ connectionType;
6
+ connectionId;
7
+ sequence;
8
+ constructor(fileId, connectionType, connectionId, sequence) {
9
+ super();
10
+ this.fileId = fileId;
11
+ this.connectionType = connectionType;
12
+ this.connectionId = connectionId;
13
+ this.sequence = sequence;
14
+ }
15
+ getFileId() {
16
+ return this.fileId;
17
+ }
18
+ getConnectionType() {
19
+ return this.connectionType;
20
+ }
21
+ getConnectionId() {
22
+ return this.connectionId;
23
+ }
24
+ getSequence() {
25
+ return this.sequence;
26
+ }
27
+ setFileId(fileId) {
28
+ this.fileId = fileId;
29
+ }
30
+ setConnectionType(connectionType) {
31
+ this.connectionType = connectionType;
32
+ }
33
+ setConnectionId(connectionId) {
34
+ this.connectionId = connectionId;
35
+ }
36
+ setSequence(sequence) {
37
+ this.sequence = sequence;
38
+ }
39
+ getMapper() {
40
+ return new FileConnectionMapper(this);
41
+ }
42
+ }
@@ -6,7 +6,7 @@ export default class PaymentDetails extends StockObject {
6
6
  constructor(paymentMethodId: number, paymentOrderId: string | null);
7
7
  getPaymentMethodId(): number | null;
8
8
  getPaymentOrderId(): string | null;
9
- setPaymentDetailsId(paymentMethodId: number): number;
9
+ setPaymentMethodId(paymentMethodId: number): number;
10
10
  setPaymentOrderId(paymentOrderId: string): string;
11
11
  protected getMapper(): StockObjectMapper;
12
12
  }
@@ -14,7 +14,7 @@ export default class PaymentDetails extends StockObject {
14
14
  getPaymentOrderId() {
15
15
  return this.paymentOrderId;
16
16
  }
17
- setPaymentDetailsId(paymentMethodId) {
17
+ setPaymentMethodId(paymentMethodId) {
18
18
  return this.paymentMethodId = paymentMethodId;
19
19
  }
20
20
  setPaymentOrderId(paymentOrderId) {
@@ -0,0 +1,12 @@
1
+ import StockObject from "../types/StockObject";
2
+ import StockObjectMapper from "../types/StockObjectMapper";
3
+ export default class PaymentMethods extends StockObject {
4
+ private key;
5
+ private active;
6
+ constructor(key: string, active: boolean);
7
+ getKey(): string;
8
+ getActive(): boolean;
9
+ setKey(key: string): string;
10
+ setActive(active: boolean): boolean;
11
+ protected getMapper(): StockObjectMapper;
12
+ }
@@ -0,0 +1,26 @@
1
+ import PaymentMethodsMapper from "../mappers/PaymentMethodsMapper";
2
+ import StockObject from "../types/StockObject";
3
+ export default class PaymentMethods extends StockObject {
4
+ key;
5
+ active;
6
+ constructor(key, active) {
7
+ super();
8
+ this.key = key;
9
+ this.active = active;
10
+ }
11
+ getKey() {
12
+ return this.key;
13
+ }
14
+ getActive() {
15
+ return this.active;
16
+ }
17
+ setKey(key) {
18
+ return this.key = key;
19
+ }
20
+ setActive(active) {
21
+ return this.active = active;
22
+ }
23
+ getMapper() {
24
+ return new PaymentMethodsMapper(this);
25
+ }
26
+ }
@@ -0,0 +1,12 @@
1
+ import Table from '../../Table';
2
+ import FileConnectionTypeE from '../../types/FileConnectionTypeE';
3
+ import FileConnection from '../../stockObjects/FileConnection';
4
+ import FileConnectionRow from '../../types/rows/FileConnectionRow';
5
+ export default class FileConnectionsTable extends Table {
6
+ select(connectionType: FileConnectionTypeE, connection_id: number): Promise<any[]>;
7
+ selectForFileId(fileId: number): Promise<FileConnectionRow[]>;
8
+ insert(fileConnection: FileConnection): Promise<void>;
9
+ delete(fileId: number): Promise<boolean>;
10
+ deleteForConnection(connectionType: string, connectionId: number): Promise<boolean>;
11
+ private bindParameters;
12
+ }
@@ -0,0 +1,41 @@
1
+ import Table from '../../Table';
2
+ import * as SQL from '../../SQL.json';
3
+ export default class FileConnectionsTable extends Table {
4
+ async select(connectionType, connection_id) {
5
+ const query = this.createQuery(SQL.fileConnections.select);
6
+ query.bindParameter('connectionType', connectionType);
7
+ query.bindParameter('connection_id', connection_id);
8
+ const result = await query.execute();
9
+ return result.getRows();
10
+ }
11
+ async selectForFileId(fileId) {
12
+ const query = this.createQuery(SQL.fileConnections.selectForFileId);
13
+ query.bindParameter('file_id', fileId);
14
+ const result = await query.execute();
15
+ return result.getRows();
16
+ }
17
+ async insert(fileConnection) {
18
+ const query = this.createQuery(SQL.fileConnections.insert);
19
+ this.bindParameters(query, fileConnection);
20
+ await query.execute();
21
+ }
22
+ async delete(fileId) {
23
+ const query = this.createQuery(SQL.fileConnections.delete);
24
+ query.bindParameter('file_id', fileId);
25
+ await query.execute();
26
+ return true;
27
+ }
28
+ async deleteForConnection(connectionType, connectionId) {
29
+ const query = this.createQuery(SQL.fileConnections.deleteForConnection);
30
+ query.bindParameter('connection_type', connectionType);
31
+ query.bindParameter('connection_id', connectionId);
32
+ await query.execute();
33
+ return true;
34
+ }
35
+ bindParameters(query, fileConnection) {
36
+ query.bindParameter('file_id', fileConnection.getFileId());
37
+ query.bindParameter('connection_type', fileConnection.getConnectionType());
38
+ query.bindParameter('connection_id', fileConnection.getConnectionId());
39
+ query.bindParameter('sequence', fileConnection.getSequence());
40
+ }
41
+ }
@@ -0,0 +1,10 @@
1
+ import Table from '../../Table';
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 '../../Table';
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 '../../Table';
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 '../../Table';
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,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;
8
+ }
@@ -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;
@@ -6,5 +6,5 @@ export default interface PersonalDataI {
6
6
  email: string;
7
7
  phoneNumber: string;
8
8
  isCompany: boolean;
9
- companyDetails: CompanyDetailsI;
9
+ companyDetails: CompanyDetailsI | null;
10
10
  }
@@ -1,9 +1,10 @@
1
+ import OrderByI from "../utils/OrderByI";
1
2
  import ParameterI from "./ParameterI";
2
3
  import ResultLimitationI from "./ResultLimitationI";
3
4
  import WhereOptionI from "./WhereOptionI";
4
5
  export default interface QueryOptionsI {
5
6
  where?: WhereOptionI;
6
- order?: string;
7
+ order?: OrderByI[];
7
8
  limit?: ResultLimitationI;
8
9
  values?: ParameterI[];
9
10
  }
@@ -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,6 @@
1
+ export default interface FileConnectionRow {
2
+ file_id: number;
3
+ connection_type: string;
4
+ connection_id: number;
5
+ sequence: number;
6
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ export default interface PaymentMethodRow {
2
+ id: number;
3
+ key: string;
4
+ active: boolean;
5
+ }
@@ -0,0 +1 @@
1
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dascompany/database",
3
- "version": "0.0.3",
3
+ "version": "0.0.4",
4
4
  "main": "dist/index.js",
5
5
  "scripts": {
6
6
  "test": "vitest",
@@ -1,6 +0,0 @@
1
- import Table from '../../Table';
2
- import PaymentMethodI from '../../types/PaymentMethodI';
3
- export default class PaymentMethodsTable extends Table {
4
- select(id: number): Promise<PaymentMethodI>;
5
- selectAll(): Promise<PaymentMethodI[]>;
6
- }
@@ -1,15 +0,0 @@
1
- import Table from '../../Table';
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
- }