@dascompany/database 3.0.1 → 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.
- package/dist/DatabaseConnection.d.ts +11 -0
- package/dist/DatabaseConnection.js +28 -0
- package/dist/SQL.json +169 -0
- package/dist/TableConnection.d.ts +74 -0
- package/dist/TableConnection.js +144 -0
- package/dist/mappers/AddressMapper.d.ts +9 -0
- package/dist/mappers/AddressMapper.js +17 -0
- package/dist/mappers/AdminMapper.d.ts +9 -0
- package/dist/mappers/AdminMapper.js +24 -0
- package/dist/mappers/ClientMapper.d.ts +9 -0
- package/dist/mappers/ClientMapper.js +24 -0
- package/dist/mappers/CompanyDataMapper.d.ts +9 -0
- package/dist/mappers/CompanyDataMapper.js +17 -0
- package/dist/mappers/CompanyDetailsMapper.d.ts +9 -0
- package/dist/mappers/CompanyDetailsMapper.js +22 -0
- package/dist/mappers/ContactDetailsMapper.d.ts +9 -0
- package/dist/mappers/ContactDetailsMapper.js +18 -0
- package/dist/mappers/DeliveryDetailsMapper.d.ts +9 -0
- package/dist/mappers/DeliveryDetailsMapper.js +17 -0
- package/dist/mappers/DeliveryMethodsMapper.d.ts +9 -0
- package/dist/mappers/DeliveryMethodsMapper.js +17 -0
- package/dist/mappers/DeliveryStatusMapper.d.ts +9 -0
- package/dist/mappers/DeliveryStatusMapper.js +15 -0
- package/dist/mappers/FileConnectionMapper.d.ts +9 -0
- package/dist/mappers/FileConnectionMapper.js +17 -0
- package/dist/mappers/FileMapper.d.ts +9 -0
- package/dist/mappers/FileMapper.js +17 -0
- package/dist/mappers/InvoiceDetailsMapper.d.ts +9 -0
- package/dist/mappers/InvoiceDetailsMapper.js +17 -0
- package/dist/mappers/OrderMapper.d.ts +9 -0
- package/dist/mappers/OrderMapper.js +19 -0
- package/dist/mappers/OrderProductMapper.d.ts +9 -0
- package/dist/mappers/OrderProductMapper.js +15 -0
- package/dist/mappers/PaymentDetailsMapper.d.ts +9 -0
- package/dist/mappers/PaymentDetailsMapper.js +17 -0
- package/dist/mappers/PaymentMethodsMapper.d.ts +9 -0
- package/dist/mappers/PaymentMethodsMapper.js +17 -0
- package/dist/mappers/PaymentStatusMapper.d.ts +9 -0
- package/dist/mappers/PaymentStatusMapper.js +15 -0
- package/dist/mappers/PersonalDataMapper.d.ts +9 -0
- package/dist/mappers/PersonalDataMapper.js +17 -0
- package/dist/mappers/ProductMapper.d.ts +9 -0
- package/dist/mappers/ProductMapper.js +20 -0
- package/dist/mappers/StatusMapper.d.ts +9 -0
- package/dist/mappers/StatusMapper.js +15 -0
- package/dist/query/QueryParamCreator.js +2 -0
- package/dist/reader/AddressesReader.d.ts +6 -0
- package/dist/reader/AddressesReader.js +24 -0
- package/dist/reader/ClientAccountReader.d.ts +13 -0
- package/dist/reader/ClientAccountReader.js +47 -0
- package/dist/reader/CompanyDataReader.d.ts +4 -0
- package/dist/reader/CompanyDataReader.js +27 -0
- package/dist/reader/CompanyDetailsReader.d.ts +4 -0
- package/dist/reader/CompanyDetailsReader.js +15 -0
- package/dist/reader/ContactDetailsReader.d.ts +4 -0
- package/dist/reader/ContactDetailsReader.js +16 -0
- package/dist/reader/DeliveryDetailsReader.d.ts +4 -0
- package/dist/reader/DeliveryDetailsReader.js +31 -0
- package/dist/reader/DeliveryMethodReader.d.ts +6 -0
- package/dist/reader/DeliveryMethodReader.js +18 -0
- package/dist/reader/DeliveryStatusReader.d.ts +5 -0
- package/dist/reader/DeliveryStatusReader.js +31 -0
- package/dist/reader/FileConnectionsReader.d.ts +6 -0
- package/dist/reader/FileConnectionsReader.js +25 -0
- package/dist/reader/FilesReader.d.ts +12 -0
- package/dist/reader/FilesReader.js +45 -0
- package/dist/reader/InvoiceDetailsReader.d.ts +4 -0
- package/dist/reader/InvoiceDetailsReader.js +21 -0
- package/dist/reader/OrderProductsReader.d.ts +10 -0
- package/dist/reader/OrderProductsReader.js +92 -0
- package/dist/reader/OrderReader.d.ts +12 -0
- package/dist/reader/OrderReader.js +51 -0
- package/dist/reader/OrderStatusReader.d.ts +6 -0
- package/dist/reader/OrderStatusReader.js +28 -0
- package/dist/reader/PersonalDataReader.d.ts +5 -0
- package/dist/reader/PersonalDataReader.js +27 -0
- package/dist/reader/ProductReader.d.ts +13 -0
- package/dist/reader/ProductReader.js +81 -0
- package/dist/reader/StatusTypesReader.d.ts +3 -0
- package/dist/reader/StatusTypesReader.js +8 -0
- package/dist/reader/payment/PaymentDetailsReader.d.ts +5 -0
- package/dist/reader/payment/PaymentDetailsReader.js +27 -0
- package/dist/reader/payment/PaymentMethodReader.d.ts +6 -0
- package/dist/reader/payment/PaymentMethodReader.js +18 -0
- package/dist/reader/payment/PaymentStatusesReader.d.ts +5 -0
- package/dist/reader/payment/PaymentStatusesReader.js +30 -0
- package/dist/repo/AddressesRepo.d.ts +5 -0
- package/dist/repo/AddressesRepo.js +14 -0
- package/dist/repo/AdminRepo.d.ts +12 -0
- package/dist/repo/AdminRepo.js +32 -0
- package/dist/repo/ClientAccountRepo.d.ts +7 -0
- package/dist/repo/ClientAccountRepo.js +24 -0
- package/dist/repo/CompanyDataRepo.d.ts +4 -0
- package/dist/repo/CompanyDataRepo.js +11 -0
- package/dist/repo/CompanyDetailsRepo.d.ts +5 -0
- package/dist/repo/CompanyDetailsRepo.js +14 -0
- package/dist/repo/ContactDetailsRepo.d.ts +6 -0
- package/dist/repo/ContactDetailsRepo.js +19 -0
- package/dist/repo/DeliveryDetailsRepo.d.ts +5 -0
- package/dist/repo/DeliveryDetailsRepo.js +14 -0
- package/dist/repo/DeliveryMethodRepo.d.ts +4 -0
- package/dist/repo/DeliveryMethodRepo.js +11 -0
- package/dist/repo/FileConnectionsRepo.d.ts +7 -0
- package/dist/repo/FileConnectionsRepo.js +25 -0
- package/dist/repo/FilesRepo.d.ts +7 -0
- package/dist/repo/FilesRepo.js +26 -0
- package/dist/repo/InvoiceDetailsRepo.d.ts +5 -0
- package/dist/repo/InvoiceDetailsRepo.js +14 -0
- package/dist/repo/OrderProductsRepo.d.ts +7 -0
- package/dist/repo/OrderProductsRepo.js +37 -0
- package/dist/repo/OrderRepo.d.ts +5 -0
- package/dist/repo/OrderRepo.js +14 -0
- package/dist/repo/OrderStatusRepo.d.ts +7 -0
- package/dist/repo/OrderStatusRepo.js +27 -0
- package/dist/repo/PaymentDetailsRepo.d.ts +5 -0
- package/dist/repo/PaymentDetailsRepo.js +14 -0
- package/dist/repo/PaymentMethodRepo.d.ts +4 -0
- package/dist/repo/PaymentMethodRepo.js +11 -0
- package/dist/repo/PersonalDataRepo.d.ts +5 -0
- package/dist/repo/PersonalDataRepo.js +16 -0
- package/dist/repo/ProductRepo.d.ts +6 -0
- package/dist/repo/ProductRepo.js +21 -0
- package/dist/stockObjects/Address.d.ts +33 -0
- package/dist/stockObjects/Address.js +69 -0
- package/dist/stockObjects/Admin.d.ts +25 -0
- package/dist/stockObjects/Admin.js +57 -0
- package/dist/stockObjects/Client.d.ts +24 -0
- package/dist/stockObjects/Client.js +57 -0
- package/dist/stockObjects/CompanyData.d.ts +21 -0
- package/dist/stockObjects/CompanyData.js +51 -0
- package/dist/stockObjects/CompanyDetails.d.ts +17 -0
- package/dist/stockObjects/CompanyDetails.js +34 -0
- package/dist/stockObjects/ContactDetails.d.ts +12 -0
- package/dist/stockObjects/ContactDetails.js +26 -0
- package/dist/stockObjects/DeliveryDetails.d.ts +16 -0
- package/dist/stockObjects/DeliveryDetails.js +37 -0
- package/dist/stockObjects/DeliveryMethods.d.ts +12 -0
- package/dist/stockObjects/DeliveryMethods.js +26 -0
- package/dist/stockObjects/DeliveryStatus.d.ts +18 -0
- package/dist/stockObjects/DeliveryStatus.js +42 -0
- package/dist/stockObjects/File.d.ts +21 -0
- package/dist/stockObjects/File.js +50 -0
- package/dist/stockObjects/FileConnection.d.ts +18 -0
- package/dist/stockObjects/FileConnection.js +42 -0
- package/dist/stockObjects/InvoiceDetails.d.ts +12 -0
- package/dist/stockObjects/InvoiceDetails.js +26 -0
- package/dist/stockObjects/Order.d.ts +41 -0
- package/dist/stockObjects/Order.js +97 -0
- package/dist/stockObjects/OrderProduct.d.ts +15 -0
- package/dist/stockObjects/OrderProduct.js +33 -0
- package/dist/stockObjects/PaymentDetails.d.ts +12 -0
- package/dist/stockObjects/PaymentDetails.js +26 -0
- package/dist/stockObjects/PaymentMethods.d.ts +12 -0
- package/dist/stockObjects/PaymentMethods.js +26 -0
- package/dist/stockObjects/PaymentStatus.d.ts +13 -0
- package/dist/stockObjects/PaymentStatus.js +26 -0
- package/dist/stockObjects/PersonalData.d.ts +42 -0
- package/dist/stockObjects/PersonalData.js +81 -0
- package/dist/stockObjects/Product.d.ts +70 -0
- package/dist/stockObjects/Product.js +163 -0
- package/dist/stockObjects/Status.d.ts +23 -0
- package/dist/stockObjects/Status.js +50 -0
- package/dist/tables/clients/ClientAccountsTable.d.ts +17 -0
- package/dist/tables/clients/ClientAccountsTable.js +74 -0
- package/dist/tables/files/FileConnectionsTable.d.ts +12 -0
- package/dist/tables/files/FileConnectionsTable.js +41 -0
- package/dist/tables/files/FilesTable.d.ts +17 -0
- package/dist/tables/files/FilesTable.js +65 -0
- package/dist/tables/orders/OrdersProductsTable.d.ts +14 -0
- package/dist/tables/orders/OrdersProductsTable.js +54 -0
- package/dist/tables/orders/OrdersTable.d.ts +15 -0
- package/dist/tables/orders/OrdersTable.js +60 -0
- package/dist/tables/orders/PaymentDetailsTable.d.ts +10 -0
- package/dist/tables/orders/PaymentDetailsTable.js +34 -0
- package/dist/tables/orders/PaymentStatusTypesTable.d.ts +7 -0
- package/dist/tables/orders/PaymentStatusTypesTable.js +10 -0
- package/dist/tables/orders/PaymentStatusesTable.d.ts +9 -0
- package/dist/tables/orders/PaymentStatusesTable.js +30 -0
- package/dist/tables/orders/StatusTypesTable.d.ts +4 -0
- package/dist/tables/orders/StatusTypesTable.js +9 -0
- package/dist/tables/orders/StatusesTable.d.ts +11 -0
- package/dist/tables/orders/StatusesTable.js +40 -0
- package/dist/tables/personalInformation/AddressesTable.d.ts +10 -0
- package/dist/tables/personalInformation/AddressesTable.js +37 -0
- package/dist/tables/personalInformation/CompanyDetailsTable.d.ts +11 -0
- package/dist/tables/personalInformation/CompanyDetailsTable.js +38 -0
- package/dist/tables/personalInformation/ContactDetailsTable.d.ts +10 -0
- package/dist/tables/personalInformation/ContactDetailsTable.js +34 -0
- package/dist/tables/personalInformation/DeliveryDetailsTable.d.ts +10 -0
- package/dist/tables/personalInformation/DeliveryDetailsTable.js +35 -0
- package/dist/tables/personalInformation/DeliveryStatusTypesTable.d.ts +7 -0
- package/dist/tables/personalInformation/DeliveryStatusTypesTable.js +10 -0
- package/dist/tables/personalInformation/DeliveryStatusesTable.d.ts +9 -0
- package/dist/tables/personalInformation/DeliveryStatusesTable.js +31 -0
- package/dist/tables/personalInformation/InvoiceDetailsTable.d.ts +10 -0
- package/dist/tables/personalInformation/InvoiceDetailsTable.js +34 -0
- package/dist/tables/personalInformation/PersonalDataTable.d.ts +10 -0
- package/dist/tables/personalInformation/PersonalDataTable.js +37 -0
- package/dist/tables/public/AdminAccountsTable.d.ts +15 -0
- package/dist/tables/public/AdminAccountsTable.js +64 -0
- package/dist/tables/public/ProductsTable.d.ts +19 -0
- package/dist/tables/public/ProductsTable.js +98 -0
- package/dist/tables/settings/CompanyDataTable.d.ts +10 -0
- package/dist/tables/settings/CompanyDataTable.js +37 -0
- package/dist/tables/settings/DeliveryMethodsTable.d.ts +12 -0
- package/dist/tables/settings/DeliveryMethodsTable.js +43 -0
- package/dist/tables/settings/PaymentMethodsTable.d.ts +12 -0
- package/dist/tables/settings/PaymentMethodsTable.js +43 -0
- package/dist/types/AddressI.d.ts +9 -0
- package/dist/types/AddressI.js +1 -0
- package/dist/types/ClaimI.d.ts +4 -0
- package/dist/types/ClaimI.js +1 -0
- package/dist/types/ClientAccountI.d.ts +10 -0
- package/dist/types/ClientAccountI.js +1 -0
- package/dist/types/CompanyDataI.d.ts +8 -0
- package/dist/types/CompanyDataI.js +1 -0
- package/dist/types/CompanyDetailsI.d.ts +5 -0
- package/dist/types/CompanyDetailsI.js +1 -0
- package/dist/types/ContactDetailsI.d.ts +7 -0
- package/dist/types/ContactDetailsI.js +1 -0
- package/dist/types/DeliveryDetailsI.d.ts +8 -0
- package/dist/types/DeliveryDetailsI.js +1 -0
- package/dist/types/DeliveryMethodI.d.ts +5 -0
- package/dist/types/DeliveryMethodI.js +1 -0
- package/dist/types/FileConnectionI.d.ts +6 -0
- package/dist/types/FileConnectionI.js +1 -0
- package/dist/types/FileConnectionTypeE.d.ts +4 -0
- package/dist/types/FileConnectionTypeE.js +5 -0
- package/dist/types/FileI.d.ts +6 -0
- package/dist/types/FileI.js +1 -0
- package/dist/types/InvoiceDetailsI.d.ts +7 -0
- package/dist/types/InvoiceDetailsI.js +1 -0
- package/dist/types/OrderI.d.ts +12 -0
- package/dist/types/OrderI.js +1 -0
- package/dist/types/OrderProductI.d.ts +15 -0
- package/dist/types/OrderProductI.js +1 -0
- package/dist/types/OrderStatusI.d.ts +7 -0
- package/dist/types/OrderStatusI.js +1 -0
- package/dist/types/PaymentDetailsI.d.ts +6 -0
- package/dist/types/PaymentDetailsI.js +1 -0
- package/dist/types/PaymentMethodE.d.ts +5 -0
- package/dist/types/PaymentMethodE.js +6 -0
- package/dist/types/PaymentMethodI.d.ts +5 -0
- package/dist/types/PaymentMethodI.js +1 -0
- package/dist/types/PaymentStatusE.d.ts +6 -0
- package/dist/types/PaymentStatusE.js +7 -0
- package/dist/types/PersonalDataI.d.ts +10 -0
- package/dist/types/PersonalDataI.js +1 -0
- package/dist/types/ProductI.d.ts +22 -0
- package/dist/types/ProductI.js +1 -0
- package/dist/types/StatusI.d.ts +5 -0
- package/dist/types/StatusI.js +1 -0
- package/dist/types/rows/AddressRow.d.ts +9 -0
- package/dist/types/rows/AddressRow.js +1 -0
- package/dist/types/rows/AdminRow.d.ts +9 -0
- package/dist/types/rows/AdminRow.js +1 -0
- package/dist/types/rows/ClientAccountRow.d.ts +10 -0
- package/dist/types/rows/ClientAccountRow.js +1 -0
- package/dist/types/rows/CompanyDataRow.d.ts +8 -0
- package/dist/types/rows/CompanyDataRow.js +1 -0
- package/dist/types/rows/CompanyDetailsRow.d.ts +5 -0
- package/dist/types/rows/CompanyDetailsRow.js +1 -0
- package/dist/types/rows/ContactDetailsRow.d.ts +5 -0
- package/dist/types/rows/ContactDetailsRow.js +1 -0
- package/dist/types/rows/DeliveryDetailsRow.d.ts +6 -0
- package/dist/types/rows/DeliveryDetailsRow.js +1 -0
- package/dist/types/rows/DeliveryMethodRow.d.ts +5 -0
- package/dist/types/rows/DeliveryMethodRow.js +1 -0
- package/dist/types/rows/DeliveryStatusRow.d.ts +7 -0
- package/dist/types/rows/DeliveryStatusRow.js +1 -0
- package/dist/types/rows/FileConnectionRow.d.ts +6 -0
- package/dist/types/rows/FileConnectionRow.js +1 -0
- package/dist/types/rows/FileRow.d.ts +9 -0
- package/dist/types/rows/FileRow.js +1 -0
- package/dist/types/rows/InvoiceDetailsRow.d.ts +5 -0
- package/dist/types/rows/InvoiceDetailsRow.js +1 -0
- package/dist/types/rows/OrderProductRow.d.ts +6 -0
- package/dist/types/rows/OrderProductRow.js +1 -0
- package/dist/types/rows/OrderRow.d.ts +15 -0
- package/dist/types/rows/OrderRow.js +1 -0
- package/dist/types/rows/PaymentDetailsRow.d.ts +6 -0
- package/dist/types/rows/PaymentDetailsRow.js +1 -0
- package/dist/types/rows/PaymentMethodRow.d.ts +5 -0
- package/dist/types/rows/PaymentMethodRow.js +1 -0
- package/dist/types/rows/PaymentStatusRow.d.ts +6 -0
- package/dist/types/rows/PaymentStatusRow.js +1 -0
- package/dist/types/rows/PersonalDataRow.d.ts +8 -0
- package/dist/types/rows/PersonalDataRow.js +1 -0
- package/dist/types/rows/ProductRow.d.ts +17 -0
- package/dist/types/rows/ProductRow.js +1 -0
- package/dist/types/rows/StatusRow.d.ts +8 -0
- package/dist/types/rows/StatusRow.js +1 -0
- package/dist/utils/OrderByI.d.ts +4 -0
- package/dist/utils/OrderByI.js +1 -0
- package/dist/utils/calculateNetToGrossPrice.d.ts +1 -0
- package/dist/utils/calculateNetToGrossPrice.js +7 -0
- package/dist/utils/correctPhoneNumber.d.ts +1 -0
- package/dist/utils/correctPhoneNumber.js +14 -0
- package/package.json +1 -1
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import StatusMapper from "../mappers/StatusMapper";
|
|
2
|
+
import StockObject from "../types/StockObject";
|
|
3
|
+
export default class Status extends StockObject {
|
|
4
|
+
orderId;
|
|
5
|
+
userId;
|
|
6
|
+
typeId;
|
|
7
|
+
typeName;
|
|
8
|
+
createdAt;
|
|
9
|
+
constructor(orderId, userId, typeId, typeName = null, createdAt = null) {
|
|
10
|
+
super();
|
|
11
|
+
this.orderId = orderId;
|
|
12
|
+
this.userId = userId;
|
|
13
|
+
this.typeId = typeId;
|
|
14
|
+
this.typeName = typeName;
|
|
15
|
+
this.createdAt = createdAt;
|
|
16
|
+
}
|
|
17
|
+
getOrderId() {
|
|
18
|
+
return this.orderId;
|
|
19
|
+
}
|
|
20
|
+
getCreatedAt() {
|
|
21
|
+
return this.createdAt;
|
|
22
|
+
}
|
|
23
|
+
getUserId() {
|
|
24
|
+
return this.userId;
|
|
25
|
+
}
|
|
26
|
+
getTypeId() {
|
|
27
|
+
return this.typeId;
|
|
28
|
+
}
|
|
29
|
+
getType() {
|
|
30
|
+
return {
|
|
31
|
+
id: this.typeId,
|
|
32
|
+
name: this.typeName
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
setOrderId(orderId) {
|
|
36
|
+
this.orderId = orderId;
|
|
37
|
+
}
|
|
38
|
+
setCreatedAt(createdAt) {
|
|
39
|
+
this.createdAt = createdAt;
|
|
40
|
+
}
|
|
41
|
+
setUserId(userId) {
|
|
42
|
+
this.userId = userId;
|
|
43
|
+
}
|
|
44
|
+
setTypeId(typeId) {
|
|
45
|
+
this.typeId = typeId;
|
|
46
|
+
}
|
|
47
|
+
getMapper() {
|
|
48
|
+
return new StatusMapper(this);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import Table from '../../Table';
|
|
2
|
+
import ClientAccountRow from '../../types/rows/ClientAccountRow';
|
|
3
|
+
import Client from '../../stockObjects/Client';
|
|
4
|
+
import QueryOptions from '../../query/QueryOptions';
|
|
5
|
+
export default class ClientAccountsTable extends Table {
|
|
6
|
+
select(accountId: number): Promise<ClientAccountRow>;
|
|
7
|
+
selectEmail(id: number): Promise<string>;
|
|
8
|
+
count(queryOptions: QueryOptions): Promise<number>;
|
|
9
|
+
selectAll(queryOptions: QueryOptions): Promise<ClientAccountRow[]>;
|
|
10
|
+
selectForEmail(email: string): Promise<ClientAccountRow>;
|
|
11
|
+
update(clientData: Client): Promise<void>;
|
|
12
|
+
delete(accountId: number): Promise<number>;
|
|
13
|
+
private bindParameters;
|
|
14
|
+
insert(clientAccount: Client): Promise<void>;
|
|
15
|
+
getIdForEmail(email: string): Promise<number>;
|
|
16
|
+
private selectNextId;
|
|
17
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import Table from '../../Table';
|
|
2
|
+
import * as SQL from '../../SQL.json';
|
|
3
|
+
export default class ClientAccountsTable extends Table {
|
|
4
|
+
async select(accountId) {
|
|
5
|
+
const query = this.createQuery(SQL.accounts.select);
|
|
6
|
+
query.bindParameter('account_id', accountId);
|
|
7
|
+
const result = await query.execute();
|
|
8
|
+
return result.getRow();
|
|
9
|
+
}
|
|
10
|
+
async selectEmail(id) {
|
|
11
|
+
const query = this.createQuery(SQL.accounts.selectEmail);
|
|
12
|
+
query.bindParameter('id', id);
|
|
13
|
+
const result = await query.execute();
|
|
14
|
+
return result.getValue();
|
|
15
|
+
}
|
|
16
|
+
async count(queryOptions) {
|
|
17
|
+
const query = this.createQuery(SQL.accounts.count, queryOptions);
|
|
18
|
+
const result = await query.execute();
|
|
19
|
+
return result.getValue();
|
|
20
|
+
}
|
|
21
|
+
async selectAll(queryOptions) {
|
|
22
|
+
const query = this.createQuery(SQL.accounts.selectAll, queryOptions);
|
|
23
|
+
const result = await query.execute();
|
|
24
|
+
return result.getRows();
|
|
25
|
+
}
|
|
26
|
+
async selectForEmail(email) {
|
|
27
|
+
const id = await this.getIdForEmail(email);
|
|
28
|
+
return await this.select(id);
|
|
29
|
+
}
|
|
30
|
+
async update(clientData) {
|
|
31
|
+
const query = this.createQuery(SQL.accounts.update);
|
|
32
|
+
query.bindParameter('id', clientData.getId());
|
|
33
|
+
this.bindParameters(query, clientData);
|
|
34
|
+
await query.execute();
|
|
35
|
+
}
|
|
36
|
+
async delete(accountId) {
|
|
37
|
+
const query = this.createQuery(SQL.accounts.delete);
|
|
38
|
+
query.bindParameter('account_id', accountId);
|
|
39
|
+
const result = await query.execute();
|
|
40
|
+
return result.getRowCount();
|
|
41
|
+
}
|
|
42
|
+
bindParameters(query, clientAccount) {
|
|
43
|
+
query.bindParameter('activated', clientAccount.getActivated());
|
|
44
|
+
query.bindParameter('deleted', clientAccount.getDeleted());
|
|
45
|
+
query.bindParameter('contact_details_id', clientAccount.getContactDetailsId());
|
|
46
|
+
query.bindParameter('delivery_details_id', clientAccount.getDeliveryDetailsId());
|
|
47
|
+
query.bindParameter('invoice_details_id', clientAccount.getInvoiceDetailsId());
|
|
48
|
+
}
|
|
49
|
+
async insert(clientAccount) {
|
|
50
|
+
const clientEmail = clientAccount.getEmail();
|
|
51
|
+
let accountId = await this.getIdForEmail(clientEmail);
|
|
52
|
+
if (accountId)
|
|
53
|
+
throw new Error(`Client account with email: ${clientEmail} already exist!`);
|
|
54
|
+
else
|
|
55
|
+
accountId = await this.selectNextId();
|
|
56
|
+
const query = this.createQuery(SQL.accounts.insert);
|
|
57
|
+
query.bindParameter('id', accountId);
|
|
58
|
+
query.bindParameter('email', clientEmail);
|
|
59
|
+
this.bindParameters(query, clientAccount);
|
|
60
|
+
await query.execute();
|
|
61
|
+
clientAccount.setId(accountId);
|
|
62
|
+
}
|
|
63
|
+
async getIdForEmail(email) {
|
|
64
|
+
const query = this.createQuery(SQL.accounts.getIdForEmail);
|
|
65
|
+
query.bindParameter('email', String(email).toUpperCase());
|
|
66
|
+
const result = await query.execute();
|
|
67
|
+
return result.getValue();
|
|
68
|
+
}
|
|
69
|
+
async selectNextId() {
|
|
70
|
+
const query = this.createQuery(SQL.accounts.selectNextId);
|
|
71
|
+
const result = await query.execute();
|
|
72
|
+
return result.getValue();
|
|
73
|
+
}
|
|
74
|
+
}
|
|
@@ -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,17 @@
|
|
|
1
|
+
import Table from '../../Table';
|
|
2
|
+
import FileRow from '../../types/rows/FileRow';
|
|
3
|
+
import FileConnectionTypeE from '../../types/FileConnectionTypeE';
|
|
4
|
+
import QueryOptionsI from '../../types/QueryOptionsI';
|
|
5
|
+
import File from '../../stockObjects/File';
|
|
6
|
+
export default class FilesTable extends Table {
|
|
7
|
+
selectId(queryOptions: QueryOptionsI): Promise<number>;
|
|
8
|
+
selectAll(queryOptions: QueryOptionsI): Promise<FileRow[]>;
|
|
9
|
+
select(fileId: number): Promise<FileRow>;
|
|
10
|
+
selectForConnection(connectionType: FileConnectionTypeE, connectionId: number): Promise<FileRow[]>;
|
|
11
|
+
insert(file: File): Promise<boolean>;
|
|
12
|
+
update(fileData: File): Promise<boolean>;
|
|
13
|
+
count(queryOptions: QueryOptionsI): Promise<number>;
|
|
14
|
+
private bindParameters;
|
|
15
|
+
delete(fileId: number): Promise<number>;
|
|
16
|
+
private selectNextId;
|
|
17
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import Table from '../../Table';
|
|
2
|
+
import * as SQL from '../../SQL.json';
|
|
3
|
+
export default class FilesTable extends Table {
|
|
4
|
+
async selectId(queryOptions) {
|
|
5
|
+
const query = this.createQuery(SQL.files.selectId, queryOptions);
|
|
6
|
+
const result = await query.execute();
|
|
7
|
+
return result.getValue();
|
|
8
|
+
}
|
|
9
|
+
async selectAll(queryOptions) {
|
|
10
|
+
const query = this.createQuery(SQL.files.selectAll, queryOptions);
|
|
11
|
+
const result = await query.execute();
|
|
12
|
+
return result.getRows();
|
|
13
|
+
}
|
|
14
|
+
async select(fileId) {
|
|
15
|
+
const query = this.createQuery(SQL.files.select);
|
|
16
|
+
query.bindParameter('id', fileId);
|
|
17
|
+
const result = await query.execute();
|
|
18
|
+
return result.getRow();
|
|
19
|
+
}
|
|
20
|
+
async selectForConnection(connectionType, connectionId) {
|
|
21
|
+
const query = this.createQuery(SQL.files.selectForConnection);
|
|
22
|
+
query.bindParameter('connection_type', connectionType);
|
|
23
|
+
query.bindParameter('connection_id', connectionId);
|
|
24
|
+
const result = await query.execute();
|
|
25
|
+
return result.getRows();
|
|
26
|
+
}
|
|
27
|
+
async insert(file) {
|
|
28
|
+
const query = this.createQuery(SQL.files.insert);
|
|
29
|
+
const id = await this.selectNextId();
|
|
30
|
+
query.bindParameter('id', id);
|
|
31
|
+
this.bindParameters(query, file);
|
|
32
|
+
await query.execute();
|
|
33
|
+
file.setId(id);
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
async update(fileData) {
|
|
37
|
+
const query = this.createQuery(SQL.files.update);
|
|
38
|
+
this.bindParameters(query, fileData);
|
|
39
|
+
await query.execute();
|
|
40
|
+
return true;
|
|
41
|
+
}
|
|
42
|
+
async count(queryOptions) {
|
|
43
|
+
const query = this.createQuery(SQL.files.count, queryOptions);
|
|
44
|
+
const result = await query.execute();
|
|
45
|
+
return result.getValue();
|
|
46
|
+
}
|
|
47
|
+
bindParameters(query, file) {
|
|
48
|
+
query.bindParameter('name', file.getName());
|
|
49
|
+
query.bindParameter('orginal_name', file.getOrginalName());
|
|
50
|
+
query.bindParameter('catalog', file.getCatalog());
|
|
51
|
+
query.bindParameter('size_kb', file.getSizeKb());
|
|
52
|
+
query.bindParameter('type', file.getType());
|
|
53
|
+
}
|
|
54
|
+
async delete(fileId) {
|
|
55
|
+
const query = this.createQuery(SQL.files.delete);
|
|
56
|
+
query.bindParameter('file_id', fileId);
|
|
57
|
+
const response = await query.execute();
|
|
58
|
+
return response.getRowCount();
|
|
59
|
+
}
|
|
60
|
+
async selectNextId() {
|
|
61
|
+
const query = this.createQuery(SQL.files.selectNextId);
|
|
62
|
+
const result = await query.execute();
|
|
63
|
+
return result.getValue();
|
|
64
|
+
}
|
|
65
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import Table from '../../Table';
|
|
2
|
+
import OrderProductRow from '../../types/rows/OrderProductRow';
|
|
3
|
+
import OrderProduct from '../../stockObjects/OrderProduct';
|
|
4
|
+
import QueryOptionsI from '../../types/QueryOptionsI';
|
|
5
|
+
export default class OrdersProductsTable extends Table {
|
|
6
|
+
selectAll(orderId: number): Promise<OrderProductRow[]>;
|
|
7
|
+
getAllActiveForOrderId(orderId: number): Promise<OrderProduct[]>;
|
|
8
|
+
selectProducts(orderId: number): Promise<OrderProductRow[]>;
|
|
9
|
+
selectAllForIds(queryOprions: QueryOptionsI): Promise<OrderProduct[]>;
|
|
10
|
+
delete(orderProduct: OrderProduct): Promise<boolean>;
|
|
11
|
+
private bindParams;
|
|
12
|
+
insert(orderProduct: OrderProduct): Promise<boolean>;
|
|
13
|
+
private selectNextId;
|
|
14
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import Table from '../../Table';
|
|
2
|
+
import * as SQL from '../../SQL.json';
|
|
3
|
+
export default class OrdersProductsTable extends Table {
|
|
4
|
+
async selectAll(orderId) {
|
|
5
|
+
const query = this.createQuery(SQL.ordersProducts.getAllActiveForOrderId);
|
|
6
|
+
query.bindParameter('order_id', orderId);
|
|
7
|
+
const result = await query.execute();
|
|
8
|
+
return result.getRows();
|
|
9
|
+
}
|
|
10
|
+
async getAllActiveForOrderId(orderId) {
|
|
11
|
+
const query = this.createQuery(SQL.ordersProducts.getAllActiveForOrderId);
|
|
12
|
+
query.bindParameter('order_id', orderId);
|
|
13
|
+
const result = await query.execute();
|
|
14
|
+
return result.getRows();
|
|
15
|
+
}
|
|
16
|
+
async selectProducts(orderId) {
|
|
17
|
+
const query = this.createQuery(SQL.ordersProducts.selectProducts);
|
|
18
|
+
query.bindParameter('order_id', orderId);
|
|
19
|
+
const result = await query.execute();
|
|
20
|
+
return result.getRows();
|
|
21
|
+
}
|
|
22
|
+
async selectAllForIds(queryOprions) {
|
|
23
|
+
const query = this.createQuery(SQL.ordersProducts.selectAll, queryOprions);
|
|
24
|
+
const result = await query.execute();
|
|
25
|
+
return result.getRows();
|
|
26
|
+
}
|
|
27
|
+
async delete(orderProduct) {
|
|
28
|
+
const query = this.createQuery(SQL.ordersProducts.delete);
|
|
29
|
+
const id = orderProduct.getId();
|
|
30
|
+
query.bindParameter('id', id);
|
|
31
|
+
await query.execute();
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
bindParams(query, orderProduct) {
|
|
35
|
+
query.bindParameter('order_id', orderProduct.getOrderId());
|
|
36
|
+
query.bindParameter('product_id', orderProduct.getProductId());
|
|
37
|
+
query.bindParameter('net_price', orderProduct.getNetPrice());
|
|
38
|
+
query.bindParameter('in_order', orderProduct.getInOrder());
|
|
39
|
+
}
|
|
40
|
+
async insert(orderProduct) {
|
|
41
|
+
const query = this.createQuery(SQL.ordersProducts.insert);
|
|
42
|
+
const id = await this.selectNextId();
|
|
43
|
+
query.bindParameter('id', id);
|
|
44
|
+
this.bindParams(query, orderProduct);
|
|
45
|
+
await query.execute();
|
|
46
|
+
orderProduct.setId(id);
|
|
47
|
+
return true;
|
|
48
|
+
}
|
|
49
|
+
async selectNextId() {
|
|
50
|
+
const query = this.createQuery(SQL.ordersProducts.selectNextId);
|
|
51
|
+
const result = await query.execute();
|
|
52
|
+
return result.getValue();
|
|
53
|
+
}
|
|
54
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import Table from '../../Table';
|
|
2
|
+
import OrderRow from '../../types/rows/OrderRow';
|
|
3
|
+
import Order from '../../stockObjects/Order';
|
|
4
|
+
import QueryOptionsI from '../../types/QueryOptionsI';
|
|
5
|
+
export default class OrdersTable extends Table {
|
|
6
|
+
select(orderId: number): Promise<OrderRow>;
|
|
7
|
+
selectForClient(clientId: number): Promise<OrderRow[]>;
|
|
8
|
+
selectAll(queryOption: QueryOptionsI): Promise<OrderRow[]>;
|
|
9
|
+
count(queryOptions?: QueryOptionsI): Promise<number>;
|
|
10
|
+
insert(order: Order): Promise<void>;
|
|
11
|
+
update(order: Order): Promise<void>;
|
|
12
|
+
private bindParameters;
|
|
13
|
+
private bindDetailsParameters;
|
|
14
|
+
private selectNextId;
|
|
15
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import Table from '../../Table';
|
|
2
|
+
import * as SQL from '../../SQL.json';
|
|
3
|
+
export default class OrdersTable extends Table {
|
|
4
|
+
async select(orderId) {
|
|
5
|
+
const query = this.createQuery(SQL.orders.select);
|
|
6
|
+
query.bindParameter('id', orderId);
|
|
7
|
+
const result = await query.execute();
|
|
8
|
+
return result.getRow();
|
|
9
|
+
}
|
|
10
|
+
async selectForClient(clientId) {
|
|
11
|
+
const query = this.createQuery(SQL.orders.selectForClient);
|
|
12
|
+
query.bindParameter('client_id', clientId);
|
|
13
|
+
const result = await query.execute();
|
|
14
|
+
return result.getRows();
|
|
15
|
+
}
|
|
16
|
+
async selectAll(queryOption) {
|
|
17
|
+
const query = this.createQuery(SQL.orders.selectAll, queryOption);
|
|
18
|
+
const result = await query.execute();
|
|
19
|
+
return result.getRows();
|
|
20
|
+
}
|
|
21
|
+
async count(queryOptions) {
|
|
22
|
+
const query = this.createQuery(SQL.orders.count, queryOptions);
|
|
23
|
+
const result = await query.execute();
|
|
24
|
+
return result.getValue();
|
|
25
|
+
}
|
|
26
|
+
async insert(order) {
|
|
27
|
+
const orderId = await this.selectNextId();
|
|
28
|
+
const query = this.createQuery(SQL.orders.insert);
|
|
29
|
+
query.bindParameter('order_id', orderId);
|
|
30
|
+
this.bindParameters(query, order);
|
|
31
|
+
await query.execute();
|
|
32
|
+
order.setId(orderId);
|
|
33
|
+
}
|
|
34
|
+
async update(order) {
|
|
35
|
+
const orderId = order.getId();
|
|
36
|
+
const query = this.createQuery(SQL.orders.update);
|
|
37
|
+
query.bindParameter('id', orderId);
|
|
38
|
+
query.bindParameter('price', order.getPrice());
|
|
39
|
+
query.bindParameter('zsi_id', order.getZsiId());
|
|
40
|
+
this.bindDetailsParameters(query, order);
|
|
41
|
+
await query.execute();
|
|
42
|
+
}
|
|
43
|
+
bindParameters(query, order) {
|
|
44
|
+
query.bindParameter('email', order.getEmail());
|
|
45
|
+
query.bindParameter('price', order.getPrice());
|
|
46
|
+
query.bindParameter('client_id', order.getclientId());
|
|
47
|
+
this.bindDetailsParameters(query, order);
|
|
48
|
+
}
|
|
49
|
+
bindDetailsParameters(query, order) {
|
|
50
|
+
query.bindParameter('contact_details_id', order.getContactDetailsId());
|
|
51
|
+
query.bindParameter('delivery_details_id', order.getDeliveryDetailsId());
|
|
52
|
+
query.bindParameter('invoice_details_id', order.getInvoiceDetailsId());
|
|
53
|
+
query.bindParameter('payment_details_id', order.getPaymentDetailsId());
|
|
54
|
+
}
|
|
55
|
+
async selectNextId() {
|
|
56
|
+
const query = this.createQuery(SQL.orders.selectNextId);
|
|
57
|
+
const result = await query.execute();
|
|
58
|
+
return result.getValue();
|
|
59
|
+
}
|
|
60
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import Table from '../../Table';
|
|
2
|
+
import PaymentDetailsRow from '../../types/rows/PaymentDetailsRow';
|
|
3
|
+
import PaymentDetails from '../../stockObjects/PaymentDetails';
|
|
4
|
+
export default class PaymentDetailsTable extends Table {
|
|
5
|
+
select(paymentDetailsId: number): Promise<PaymentDetailsRow>;
|
|
6
|
+
insert(paymentDetails: PaymentDetails): Promise<void>;
|
|
7
|
+
update(paymentDetails: PaymentDetails): Promise<void>;
|
|
8
|
+
private selectNextId;
|
|
9
|
+
private bindParameters;
|
|
10
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import Table from '../../Table';
|
|
2
|
+
import * as SQL from '../../SQL.json';
|
|
3
|
+
export default class PaymentDetailsTable extends Table {
|
|
4
|
+
async select(paymentDetailsId) {
|
|
5
|
+
const query = this.createQuery(SQL.paymentDetails.select);
|
|
6
|
+
query.bindParameter('id', paymentDetailsId);
|
|
7
|
+
const result = await query.execute();
|
|
8
|
+
return result.getRow();
|
|
9
|
+
}
|
|
10
|
+
async insert(paymentDetails) {
|
|
11
|
+
const id = await this.selectNextId();
|
|
12
|
+
const query = this.createQuery(SQL.paymentDetails.insert);
|
|
13
|
+
query.bindParameter('id', id);
|
|
14
|
+
this.bindParameters(query, paymentDetails);
|
|
15
|
+
await query.execute();
|
|
16
|
+
paymentDetails.setId(id);
|
|
17
|
+
}
|
|
18
|
+
async update(paymentDetails) {
|
|
19
|
+
const id = paymentDetails.getId();
|
|
20
|
+
const query = this.createQuery(SQL.paymentDetails.update);
|
|
21
|
+
query.bindParameter('id', id);
|
|
22
|
+
this.bindParameters(query, paymentDetails);
|
|
23
|
+
await query.execute();
|
|
24
|
+
}
|
|
25
|
+
async selectNextId() {
|
|
26
|
+
const query = this.createQuery(SQL.paymentDetails.selectNextId);
|
|
27
|
+
const result = await query.execute();
|
|
28
|
+
return result.getValue();
|
|
29
|
+
}
|
|
30
|
+
bindParameters(query, paymentDetails) {
|
|
31
|
+
query.bindParameter('payment_method_id', paymentDetails.getPaymentMethodId());
|
|
32
|
+
query.bindParameter('payment_order_id', paymentDetails.getPaymentOrderId());
|
|
33
|
+
}
|
|
34
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as SQL from '../../SQL.json';
|
|
2
|
+
import Table from '../../Table';
|
|
3
|
+
export default class PaymentStatusTypesTable extends Table {
|
|
4
|
+
async select(paymentStatusTypeId) {
|
|
5
|
+
const query = this.createQuery(SQL.paymentStatusTypes.select);
|
|
6
|
+
query.bindParameter('id', paymentStatusTypeId);
|
|
7
|
+
const result = await query.execute();
|
|
8
|
+
return result.getRow();
|
|
9
|
+
}
|
|
10
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import PaymentStatus from '../../stockObjects/PaymentStatus';
|
|
2
|
+
import Table from '../../Table';
|
|
3
|
+
import PaymentStatusRow from '../../types/rows/PaymentStatusRow';
|
|
4
|
+
export default class PaymentStatusesTable extends Table {
|
|
5
|
+
select(paymentDetailsId: number): Promise<PaymentStatusRow>;
|
|
6
|
+
selectAll(paymentDetailsId: number): Promise<PaymentStatusRow[]>;
|
|
7
|
+
insert(paymentStatus: PaymentStatus): Promise<void>;
|
|
8
|
+
private selectNextId;
|
|
9
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as SQL from '../../SQL.json';
|
|
2
|
+
import Table from '../../Table';
|
|
3
|
+
export default class PaymentStatusesTable extends Table {
|
|
4
|
+
async select(paymentDetailsId) {
|
|
5
|
+
const query = this.createQuery(SQL.paymentStatuses.select);
|
|
6
|
+
query.bindParameter('payment_details_id', paymentDetailsId);
|
|
7
|
+
const result = await query.execute();
|
|
8
|
+
return result.getRow();
|
|
9
|
+
}
|
|
10
|
+
async selectAll(paymentDetailsId) {
|
|
11
|
+
const query = this.createQuery(SQL.paymentStatuses.selectAll);
|
|
12
|
+
query.bindParameter('payment_details_id', paymentDetailsId);
|
|
13
|
+
const result = await query.execute();
|
|
14
|
+
return result.getRows();
|
|
15
|
+
}
|
|
16
|
+
async insert(paymentStatus) {
|
|
17
|
+
const id = await this.selectNextId();
|
|
18
|
+
const query = this.createQuery(SQL.paymentStatuses.insert);
|
|
19
|
+
query.bindParameter('id', id);
|
|
20
|
+
query.bindParameter('payment_details_id', paymentStatus.getPaymentDetailsId());
|
|
21
|
+
query.bindParameter('payment_status_type_id', paymentStatus.getPaymentStatusTypeId());
|
|
22
|
+
await query.execute();
|
|
23
|
+
paymentStatus.setId(id);
|
|
24
|
+
}
|
|
25
|
+
async selectNextId() {
|
|
26
|
+
const query = this.createQuery(SQL.paymentStatuses.selectNextId);
|
|
27
|
+
const result = await query.execute();
|
|
28
|
+
return result.getValue();
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as SQL from '../../SQL.json';
|
|
2
|
+
import Table from '../../Table';
|
|
3
|
+
export default class StatusTypesTable extends Table {
|
|
4
|
+
async select() {
|
|
5
|
+
const query = this.createQuery(SQL.statusTypes.select);
|
|
6
|
+
const result = await query.execute();
|
|
7
|
+
return result.getRows();
|
|
8
|
+
}
|
|
9
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import Table from '../../Table';
|
|
2
|
+
import Status from '../../stockObjects/Status';
|
|
3
|
+
import StatusRow from '../../types/rows/StatusRow';
|
|
4
|
+
export default class StatusesTable extends Table {
|
|
5
|
+
selectForOrder(orderId: number): Promise<StatusRow>;
|
|
6
|
+
selectLatest(orderId: number): Promise<StatusRow>;
|
|
7
|
+
selectAllForOrder(orderId: number): Promise<StatusRow[]>;
|
|
8
|
+
insert(status: Status): Promise<void>;
|
|
9
|
+
private bindParameters;
|
|
10
|
+
private selectNextId;
|
|
11
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import Table from '../../Table';
|
|
2
|
+
import * as SQL from '../../SQL.json';
|
|
3
|
+
export default class StatusesTable extends Table {
|
|
4
|
+
async selectForOrder(orderId) {
|
|
5
|
+
const query = this.createQuery(SQL.statuses.selectForOrder);
|
|
6
|
+
query.bindParameter('order_id', orderId);
|
|
7
|
+
const result = await query.execute();
|
|
8
|
+
return result.getRow();
|
|
9
|
+
}
|
|
10
|
+
async selectLatest(orderId) {
|
|
11
|
+
const query = this.createQuery(SQL.statuses.selectLatest);
|
|
12
|
+
query.bindParameter('order_id', orderId);
|
|
13
|
+
const result = await query.execute();
|
|
14
|
+
return result.getRow();
|
|
15
|
+
}
|
|
16
|
+
async selectAllForOrder(orderId) {
|
|
17
|
+
const query = this.createQuery(SQL.statuses.selectAllForOrder);
|
|
18
|
+
query.bindParameter('order_id', orderId);
|
|
19
|
+
const result = await query.execute();
|
|
20
|
+
return result.getRows();
|
|
21
|
+
}
|
|
22
|
+
async insert(status) {
|
|
23
|
+
const id = await this.selectNextId();
|
|
24
|
+
const query = this.createQuery(SQL.statuses.insert);
|
|
25
|
+
query.bindParameter('id', id);
|
|
26
|
+
this.bindParameters(query, status);
|
|
27
|
+
await query.execute();
|
|
28
|
+
status.setId(id);
|
|
29
|
+
}
|
|
30
|
+
bindParameters(query, status) {
|
|
31
|
+
query.bindParameter('order_id', status.getOrderId());
|
|
32
|
+
query.bindParameter('user_id', status.getUserId());
|
|
33
|
+
query.bindParameter('type', status.getType());
|
|
34
|
+
}
|
|
35
|
+
async selectNextId() {
|
|
36
|
+
const query = this.createQuery(SQL.statuses.selectNextId);
|
|
37
|
+
const result = await query.execute();
|
|
38
|
+
return result.getValue();
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import Table from '../../Table';
|
|
2
|
+
import Address from '../../stockObjects/Address';
|
|
3
|
+
import AddressRow from '../../types/rows/AddressRow';
|
|
4
|
+
export default class AddressesTable extends Table {
|
|
5
|
+
select(addressId: number): Promise<AddressRow>;
|
|
6
|
+
update(addressData: Address): Promise<void>;
|
|
7
|
+
insert(address: Address): Promise<void>;
|
|
8
|
+
private bindParameters;
|
|
9
|
+
private selectNextId;
|
|
10
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import Table from '../../Table';
|
|
2
|
+
import * as SQL from '../../SQL.json';
|
|
3
|
+
export default class AddressesTable extends Table {
|
|
4
|
+
async select(addressId) {
|
|
5
|
+
const query = this.createQuery(SQL.addresses.select);
|
|
6
|
+
query.bindParameter('id', addressId);
|
|
7
|
+
const result = await query.execute();
|
|
8
|
+
return result.getRow();
|
|
9
|
+
}
|
|
10
|
+
async update(addressData) {
|
|
11
|
+
const query = this.createQuery(SQL.addresses.update);
|
|
12
|
+
query.bindParameter('id', addressData.getId());
|
|
13
|
+
this.bindParameters(query, addressData);
|
|
14
|
+
await query.execute();
|
|
15
|
+
}
|
|
16
|
+
async insert(address) {
|
|
17
|
+
const query = this.createQuery(SQL.addresses.insert);
|
|
18
|
+
const id = await this.selectNextId();
|
|
19
|
+
query.bindParameter('id', id);
|
|
20
|
+
this.bindParameters(query, address);
|
|
21
|
+
await query.execute();
|
|
22
|
+
address.setId(id);
|
|
23
|
+
}
|
|
24
|
+
bindParameters(query, address) {
|
|
25
|
+
query.bindParameter('country', address.getCountry());
|
|
26
|
+
query.bindParameter('city', address.getCity());
|
|
27
|
+
query.bindParameter('postal_code', address.getPostalCode());
|
|
28
|
+
query.bindParameter('street', address.getStreet());
|
|
29
|
+
query.bindParameter('house_number', address.getHouseNumber());
|
|
30
|
+
query.bindParameter('apartment_number', address.getApartmentNumber());
|
|
31
|
+
}
|
|
32
|
+
async selectNextId() {
|
|
33
|
+
const query = this.createQuery(SQL.addresses.selectNextId);
|
|
34
|
+
const result = await query.execute();
|
|
35
|
+
return result.getValue();
|
|
36
|
+
}
|
|
37
|
+
}
|