@dascompany/database 0.0.1
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/README.md +1 -0
- package/dist/Connection.d.ts +11 -0
- package/dist/Connection.js +22 -0
- package/dist/Database.d.ts +4 -0
- package/dist/Database.js +14 -0
- package/dist/DatabaseConfig.d.ts +7 -0
- package/dist/DatabaseConfig.js +1 -0
- package/dist/DatabaseConnection.d.ts +11 -0
- package/dist/DatabaseConnection.js +28 -0
- package/dist/SQL.json +123 -0
- package/dist/Table.d.ts +8 -0
- package/dist/Table.js +18 -0
- package/dist/TableConnection.d.ts +68 -0
- package/dist/TableConnection.js +132 -0
- package/dist/index.d.ts +42 -0
- package/dist/index.js +42 -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/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/DeliveryStatusMapper.d.ts +9 -0
- package/dist/mappers/DeliveryStatusMapper.js +15 -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/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/StatusMapper.d.ts +9 -0
- package/dist/mappers/StatusMapper.js +15 -0
- package/dist/query/BindParams.d.ts +9 -0
- package/dist/query/BindParams.js +56 -0
- package/dist/query/Parameters.d.ts +11 -0
- package/dist/query/Parameters.js +54 -0
- package/dist/query/Query.d.ts +11 -0
- package/dist/query/Query.js +42 -0
- package/dist/query/QueryParamCreator.d.ts +10 -0
- package/dist/query/QueryParamCreator.js +67 -0
- package/dist/query/QueryParams.d.ts +20 -0
- package/dist/query/QueryParams.js +113 -0
- package/dist/query/Result.d.ts +11 -0
- package/dist/query/Result.js +43 -0
- package/dist/query/ResultsCorrector.d.ts +4 -0
- package/dist/query/ResultsCorrector.js +14 -0
- package/dist/reader/AddressesReader.d.ts +6 -0
- package/dist/reader/AddressesReader.js +24 -0
- package/dist/reader/ClientAccountReader.d.ts +7 -0
- package/dist/reader/ClientAccountReader.js +30 -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 +5 -0
- package/dist/reader/DeliveryMethodReader.js +13 -0
- package/dist/reader/DeliveryStatusReader.d.ts +5 -0
- package/dist/reader/DeliveryStatusReader.js +31 -0
- package/dist/reader/FilesReader.d.ts +7 -0
- package/dist/reader/FilesReader.js +26 -0
- package/dist/reader/InvoiceDetailsReader.d.ts +4 -0
- package/dist/reader/InvoiceDetailsReader.js +21 -0
- package/dist/reader/OrderProductsReader.d.ts +6 -0
- package/dist/reader/OrderProductsReader.js +50 -0
- package/dist/reader/OrderReader.d.ts +6 -0
- package/dist/reader/OrderReader.js +37 -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 +10 -0
- package/dist/reader/ProductReader.js +52 -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 +5 -0
- package/dist/reader/payment/PaymentMethodReader.js +13 -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/ClientAccountRepo.d.ts +5 -0
- package/dist/repo/ClientAccountRepo.js +14 -0
- package/dist/repo/CompanyDetailsRepo.d.ts +5 -0
- package/dist/repo/CompanyDetailsRepo.js +14 -0
- package/dist/repo/ContactDetailsRepo.d.ts +5 -0
- package/dist/repo/ContactDetailsRepo.js +14 -0
- package/dist/repo/DeliveryDetailsRepo.d.ts +5 -0
- package/dist/repo/DeliveryDetailsRepo.js +14 -0
- package/dist/repo/InvoiceDetailsRepo.d.ts +5 -0
- package/dist/repo/InvoiceDetailsRepo.js +14 -0
- package/dist/repo/OrderRepo.d.ts +5 -0
- package/dist/repo/OrderRepo.js +14 -0
- package/dist/repo/PaymentDetailsRepo.d.ts +5 -0
- package/dist/repo/PaymentDetailsRepo.js +14 -0
- package/dist/repo/PersonalDataRepo.d.ts +5 -0
- package/dist/repo/PersonalDataRepo.js +16 -0
- package/dist/repo/ProductRepo.d.ts +5 -0
- package/dist/repo/ProductRepo.js +15 -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/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 +15 -0
- package/dist/stockObjects/DeliveryDetails.js +34 -0
- package/dist/stockObjects/DeliveryStatus.d.ts +18 -0
- package/dist/stockObjects/DeliveryStatus.js +42 -0
- package/dist/stockObjects/InvoiceDetails.d.ts +12 -0
- package/dist/stockObjects/InvoiceDetails.js +26 -0
- package/dist/stockObjects/Order.d.ts +40 -0
- package/dist/stockObjects/Order.js +88 -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/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 +40 -0
- package/dist/stockObjects/Product.js +101 -0
- package/dist/stockObjects/Status.d.ts +15 -0
- package/dist/stockObjects/Status.js +34 -0
- package/dist/tables/AdminAccountsTable.d.ts +15 -0
- package/dist/tables/AdminAccountsTable.js +64 -0
- package/dist/tables/ClientAccountsTable.d.ts +14 -0
- package/dist/tables/ClientAccountsTable.js +62 -0
- package/dist/tables/DeliveryStatusTypesTable.d.ts +7 -0
- package/dist/tables/DeliveryStatusTypesTable.js +10 -0
- package/dist/tables/DeliveryStatusesTable.d.ts +9 -0
- package/dist/tables/DeliveryStatusesTable.js +31 -0
- package/dist/tables/ProductsTable.d.ts +9 -0
- package/dist/tables/ProductsTable.js +26 -0
- package/dist/tables/StatusTypesTable.d.ts +4 -0
- package/dist/tables/StatusTypesTable.js +9 -0
- package/dist/tables/files/FilesTable.d.ts +7 -0
- package/dist/tables/files/FilesTable.js +17 -0
- package/dist/tables/orders/OrdersProductsTable.d.ts +8 -0
- package/dist/tables/orders/OrdersProductsTable.js +25 -0
- package/dist/tables/orders/OrdersTable.d.ts +12 -0
- package/dist/tables/orders/OrdersTable.js +50 -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 +10 -0
- package/dist/tables/orders/StatusesTable.js +34 -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/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/store-settings/DeliveryMethodsTable.d.ts +6 -0
- package/dist/tables/store-settings/DeliveryMethodsTable.js +15 -0
- package/dist/tables/store-settings/PaymentMethodsTable.d.ts +6 -0
- package/dist/tables/store-settings/PaymentMethodsTable.js +15 -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/CompanyDetailsI.d.ts +5 -0
- package/dist/types/CompanyDetailsI.js +1 -0
- package/dist/types/ConnectorE.d.ts +5 -0
- package/dist/types/ConnectorE.js +6 -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/FileConnectionE.d.ts +4 -0
- package/dist/types/FileConnectionE.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 +9 -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/ParameterI.d.ts +6 -0
- package/dist/types/ParameterI.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 +21 -0
- package/dist/types/ProductI.js +1 -0
- package/dist/types/QueryOptionsI.d.ts +9 -0
- package/dist/types/QueryOptionsI.js +1 -0
- package/dist/types/ResultLimitationI.d.ts +4 -0
- package/dist/types/ResultLimitationI.js +1 -0
- package/dist/types/StockObject.d.ts +9 -0
- package/dist/types/StockObject.js +15 -0
- package/dist/types/StockObjectMapper.d.ts +4 -0
- package/dist/types/StockObjectMapper.js +1 -0
- package/dist/types/WhereOptionI.d.ts +6 -0
- package/dist/types/WhereOptionI.js +1 -0
- package/dist/types/parameters/ParameterFilter.d.ts +6 -0
- package/dist/types/parameters/ParameterFilter.js +1 -0
- package/dist/types/parameters/ParameterType.d.ts +13 -0
- package/dist/types/parameters/ParameterType.js +14 -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/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/DeliveryStatusRow.d.ts +7 -0
- package/dist/types/rows/DeliveryStatusRow.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 +12 -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/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 +7 -0
- package/dist/types/rows/StatusRow.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 +27 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import DatabaseConnection from "../DatabaseConnection";
|
|
2
|
+
export default class ClientMapper {
|
|
3
|
+
client;
|
|
4
|
+
clientAccountsTable;
|
|
5
|
+
constructor(client) {
|
|
6
|
+
this.clientAccountsTable = DatabaseConnection.get().accounts;
|
|
7
|
+
this.client = client;
|
|
8
|
+
}
|
|
9
|
+
async save() {
|
|
10
|
+
if (!this.client.getDeleted()) {
|
|
11
|
+
if (this.client.getId())
|
|
12
|
+
await this.clientAccountsTable.update(this.client);
|
|
13
|
+
else
|
|
14
|
+
await this.clientAccountsTable.insert(this.client);
|
|
15
|
+
}
|
|
16
|
+
else
|
|
17
|
+
throw new Error(`Client account ${this.client.getId()} is deleted. Restore before updating.`);
|
|
18
|
+
}
|
|
19
|
+
async delete() {
|
|
20
|
+
const id = this.client.getId();
|
|
21
|
+
if (id)
|
|
22
|
+
await this.clientAccountsTable.delete(id);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import CompanyDetails from "../stockObjects/CompanyDetails";
|
|
2
|
+
import StockObjectMapper from "../types/StockObjectMapper";
|
|
3
|
+
export default class CompanyDetailsMapper implements StockObjectMapper {
|
|
4
|
+
private companyDetails;
|
|
5
|
+
private companyDetailsTable;
|
|
6
|
+
constructor(companyDetails: CompanyDetails);
|
|
7
|
+
save(): Promise<void>;
|
|
8
|
+
delete(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import DatabaseConnection from "../DatabaseConnection";
|
|
2
|
+
export default class CompanyDetailsMapper {
|
|
3
|
+
companyDetails;
|
|
4
|
+
companyDetailsTable;
|
|
5
|
+
constructor(companyDetails) {
|
|
6
|
+
this.companyDetailsTable = DatabaseConnection.get().companyDetails;
|
|
7
|
+
this.companyDetails = companyDetails;
|
|
8
|
+
}
|
|
9
|
+
async save() {
|
|
10
|
+
if (this.companyDetails.getId())
|
|
11
|
+
await this.companyDetailsTable.update(this.companyDetails);
|
|
12
|
+
else
|
|
13
|
+
await this.companyDetailsTable.insert(this.companyDetails);
|
|
14
|
+
}
|
|
15
|
+
async delete() {
|
|
16
|
+
const id = this.companyDetails.getId();
|
|
17
|
+
if (id)
|
|
18
|
+
await this.companyDetailsTable.delete(id);
|
|
19
|
+
else
|
|
20
|
+
throw Error('Uncreated companyDetails cannot be deleted');
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import ContactDetails from "../stockObjects/ContactDetails";
|
|
2
|
+
import StockObjectMapper from "../types/StockObjectMapper";
|
|
3
|
+
export default class ContactDetailsMapper implements StockObjectMapper {
|
|
4
|
+
private contactDetails;
|
|
5
|
+
private contactDetailsTable;
|
|
6
|
+
constructor(contactDetails: ContactDetails);
|
|
7
|
+
save(): Promise<void>;
|
|
8
|
+
delete(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import DatabaseConnection from "../DatabaseConnection";
|
|
2
|
+
export default class ContactDetailsMapper {
|
|
3
|
+
contactDetails;
|
|
4
|
+
contactDetailsTable;
|
|
5
|
+
constructor(contactDetails) {
|
|
6
|
+
this.contactDetailsTable = DatabaseConnection.get().contactDetails;
|
|
7
|
+
this.contactDetails = contactDetails;
|
|
8
|
+
}
|
|
9
|
+
async save() {
|
|
10
|
+
if (this.contactDetails.getId())
|
|
11
|
+
await this.contactDetailsTable.update(this.contactDetails);
|
|
12
|
+
else
|
|
13
|
+
await this.contactDetailsTable.insert(this.contactDetails);
|
|
14
|
+
}
|
|
15
|
+
async delete() {
|
|
16
|
+
throw Error('Method not impemented');
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import DeliveryDetails from "../stockObjects/DeliveryDetails";
|
|
2
|
+
import StockObjectMapper from "../types/StockObjectMapper";
|
|
3
|
+
export default class DeliveryDetailsMapper implements StockObjectMapper {
|
|
4
|
+
private deliveryDetails;
|
|
5
|
+
private deliveryDetailsTable;
|
|
6
|
+
constructor(deliveryDetails: DeliveryDetails);
|
|
7
|
+
save(): Promise<void>;
|
|
8
|
+
delete(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import DatabaseConnection from "../DatabaseConnection";
|
|
2
|
+
export default class DeliveryDetailsMapper {
|
|
3
|
+
deliveryDetails;
|
|
4
|
+
deliveryDetailsTable;
|
|
5
|
+
constructor(deliveryDetails) {
|
|
6
|
+
this.deliveryDetailsTable = DatabaseConnection.get().deliveryDetails;
|
|
7
|
+
this.deliveryDetails = deliveryDetails;
|
|
8
|
+
}
|
|
9
|
+
async save() {
|
|
10
|
+
if (this.deliveryDetails.getId())
|
|
11
|
+
await this.deliveryDetailsTable.update(this.deliveryDetails);
|
|
12
|
+
else
|
|
13
|
+
await this.deliveryDetailsTable.insert(this.deliveryDetails);
|
|
14
|
+
}
|
|
15
|
+
async delete() {
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import DeliveryStatus from "../stockObjects/DeliveryStatus";
|
|
2
|
+
import StockObjectMapper from "../types/StockObjectMapper";
|
|
3
|
+
export default class DeliveryStatusMapper implements StockObjectMapper {
|
|
4
|
+
private deliveryStatus;
|
|
5
|
+
private deliveryStatusesTable;
|
|
6
|
+
constructor(deliveryStatus: DeliveryStatus);
|
|
7
|
+
save(): Promise<void>;
|
|
8
|
+
delete(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import DatabaseConnection from "../DatabaseConnection";
|
|
2
|
+
export default class DeliveryStatusMapper {
|
|
3
|
+
deliveryStatus;
|
|
4
|
+
deliveryStatusesTable;
|
|
5
|
+
constructor(deliveryStatus) {
|
|
6
|
+
this.deliveryStatusesTable = DatabaseConnection.get().deliveryStatuses;
|
|
7
|
+
this.deliveryStatus = deliveryStatus;
|
|
8
|
+
}
|
|
9
|
+
async save() {
|
|
10
|
+
await this.deliveryStatusesTable.insert(this.deliveryStatus);
|
|
11
|
+
}
|
|
12
|
+
async delete() {
|
|
13
|
+
throw Error('Method not implemented');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import InvoiceDetails from '../stockObjects/InvoiceDetails';
|
|
2
|
+
import StockObjectMapper from '../types/StockObjectMapper';
|
|
3
|
+
export default class InvoiceDetailsMapper implements StockObjectMapper {
|
|
4
|
+
private invoiceDetails;
|
|
5
|
+
private invoiceDetailsTable;
|
|
6
|
+
constructor(invoiceDetails: InvoiceDetails);
|
|
7
|
+
save(): Promise<void>;
|
|
8
|
+
delete(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import DatabaseConnection from '../DatabaseConnection';
|
|
2
|
+
export default class InvoiceDetailsMapper {
|
|
3
|
+
invoiceDetails;
|
|
4
|
+
invoiceDetailsTable;
|
|
5
|
+
constructor(invoiceDetails) {
|
|
6
|
+
this.invoiceDetailsTable = DatabaseConnection.get().invoiceDetails;
|
|
7
|
+
this.invoiceDetails = invoiceDetails;
|
|
8
|
+
}
|
|
9
|
+
async save() {
|
|
10
|
+
if (this.invoiceDetails.getId())
|
|
11
|
+
await this.invoiceDetailsTable.update(this.invoiceDetails);
|
|
12
|
+
else
|
|
13
|
+
await this.invoiceDetailsTable.insert(this.invoiceDetails);
|
|
14
|
+
}
|
|
15
|
+
async delete() {
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import Order from "../stockObjects/Order";
|
|
2
|
+
import StockObjectMapper from "../types/StockObjectMapper";
|
|
3
|
+
export default class OrderMapper implements StockObjectMapper {
|
|
4
|
+
private order;
|
|
5
|
+
private orderTable;
|
|
6
|
+
constructor(order: Order);
|
|
7
|
+
save(): Promise<void>;
|
|
8
|
+
delete(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import DatabaseConnection from "../DatabaseConnection";
|
|
2
|
+
export default class OrderMapper {
|
|
3
|
+
order;
|
|
4
|
+
orderTable;
|
|
5
|
+
constructor(order) {
|
|
6
|
+
this.orderTable = DatabaseConnection.get().orders;
|
|
7
|
+
this.order = order;
|
|
8
|
+
}
|
|
9
|
+
async save() {
|
|
10
|
+
const orderId = this.order.getId();
|
|
11
|
+
if (orderId)
|
|
12
|
+
await this.orderTable.update(this.order);
|
|
13
|
+
else
|
|
14
|
+
await this.orderTable.insert(this.order);
|
|
15
|
+
}
|
|
16
|
+
async delete() {
|
|
17
|
+
throw Error('method not implemented');
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import OrderProduct from "../stockObjects/OrderProduct";
|
|
2
|
+
import StockObjectMapper from "../types/StockObjectMapper";
|
|
3
|
+
export default class OrderProductMapper implements StockObjectMapper {
|
|
4
|
+
private orderProduct;
|
|
5
|
+
private orderProductsTable;
|
|
6
|
+
constructor(orderProduct: OrderProduct);
|
|
7
|
+
save(): Promise<void>;
|
|
8
|
+
delete(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import DatabaseConnection from "../DatabaseConnection";
|
|
2
|
+
export default class OrderProductMapper {
|
|
3
|
+
orderProduct;
|
|
4
|
+
orderProductsTable;
|
|
5
|
+
constructor(orderProduct) {
|
|
6
|
+
this.orderProductsTable = DatabaseConnection.get().ordersProducts;
|
|
7
|
+
this.orderProduct = orderProduct;
|
|
8
|
+
}
|
|
9
|
+
async save() {
|
|
10
|
+
await this.orderProductsTable.insert(this.orderProduct);
|
|
11
|
+
}
|
|
12
|
+
async delete() {
|
|
13
|
+
throw Error('NOT IMPLEMENTED');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import PaymentDetails from "../stockObjects/PaymentDetails";
|
|
2
|
+
import StockObjectMapper from "../types/StockObjectMapper";
|
|
3
|
+
export default class PaymentDetailsMapper implements StockObjectMapper {
|
|
4
|
+
private paymentDetails;
|
|
5
|
+
private paymentDetailsTable;
|
|
6
|
+
constructor(paymentDetails: PaymentDetails);
|
|
7
|
+
save(): Promise<void>;
|
|
8
|
+
delete(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import DatabaseConnection from "../DatabaseConnection";
|
|
2
|
+
export default class PaymentDetailsMapper {
|
|
3
|
+
paymentDetails;
|
|
4
|
+
paymentDetailsTable;
|
|
5
|
+
constructor(paymentDetails) {
|
|
6
|
+
this.paymentDetailsTable = DatabaseConnection.get().paymentDetails;
|
|
7
|
+
this.paymentDetails = paymentDetails;
|
|
8
|
+
}
|
|
9
|
+
async save() {
|
|
10
|
+
if (this.paymentDetails.getId())
|
|
11
|
+
await this.paymentDetailsTable.update(this.paymentDetails);
|
|
12
|
+
else
|
|
13
|
+
await this.paymentDetailsTable.insert(this.paymentDetails);
|
|
14
|
+
}
|
|
15
|
+
async delete() {
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import PaymentStatus from "../stockObjects/PaymentStatus";
|
|
2
|
+
import StockObjectMapper from "../types/StockObjectMapper";
|
|
3
|
+
export default class PaymentStatusMapper implements StockObjectMapper {
|
|
4
|
+
private paymentStatus;
|
|
5
|
+
private paymentStatusesTable;
|
|
6
|
+
constructor(paymentStatus: PaymentStatus);
|
|
7
|
+
save(): Promise<void>;
|
|
8
|
+
delete(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import DatabaseConnection from "../DatabaseConnection";
|
|
2
|
+
export default class PaymentStatusMapper {
|
|
3
|
+
paymentStatus;
|
|
4
|
+
paymentStatusesTable;
|
|
5
|
+
constructor(paymentStatus) {
|
|
6
|
+
this.paymentStatusesTable = DatabaseConnection.get().paymentStatuses;
|
|
7
|
+
this.paymentStatus = paymentStatus;
|
|
8
|
+
}
|
|
9
|
+
async save() {
|
|
10
|
+
await this.paymentStatusesTable.insert(this.paymentStatus);
|
|
11
|
+
}
|
|
12
|
+
async delete() {
|
|
13
|
+
throw Error('Method not implemented');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import PersonalData from "../stockObjects/PersonalData";
|
|
2
|
+
import StockObjectMapper from "../types/StockObjectMapper";
|
|
3
|
+
export default class PersonalDataMapper implements StockObjectMapper {
|
|
4
|
+
private personalData;
|
|
5
|
+
private personalDataTable;
|
|
6
|
+
constructor(personalData: PersonalData);
|
|
7
|
+
save(): Promise<void>;
|
|
8
|
+
delete(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import DatabaseConnection from "../DatabaseConnection";
|
|
2
|
+
export default class PersonalDataMapper {
|
|
3
|
+
personalData;
|
|
4
|
+
personalDataTable;
|
|
5
|
+
constructor(personalData) {
|
|
6
|
+
this.personalDataTable = DatabaseConnection.get().personalData;
|
|
7
|
+
this.personalData = personalData;
|
|
8
|
+
}
|
|
9
|
+
async save() {
|
|
10
|
+
if (this.personalData.getId())
|
|
11
|
+
await this.personalDataTable.update(this.personalData);
|
|
12
|
+
else
|
|
13
|
+
await this.personalDataTable.insert(this.personalData);
|
|
14
|
+
}
|
|
15
|
+
async delete() {
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import Status from "../stockObjects/Status";
|
|
2
|
+
import StockObjectMapper from "../types/StockObjectMapper";
|
|
3
|
+
export default class StatusMapper implements StockObjectMapper {
|
|
4
|
+
private status;
|
|
5
|
+
private statusTable;
|
|
6
|
+
constructor(status: Status);
|
|
7
|
+
save(): Promise<void>;
|
|
8
|
+
delete(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import DatabaseConnection from "../DatabaseConnection";
|
|
2
|
+
export default class StatusMapper {
|
|
3
|
+
status;
|
|
4
|
+
statusTable;
|
|
5
|
+
constructor(status) {
|
|
6
|
+
this.statusTable = DatabaseConnection.get().statuses;
|
|
7
|
+
this.status = status;
|
|
8
|
+
}
|
|
9
|
+
async save() {
|
|
10
|
+
await this.statusTable.insert(this.status);
|
|
11
|
+
}
|
|
12
|
+
async delete() {
|
|
13
|
+
throw Error('method not implemented');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import QueryOptionsI from "../types/QueryOptionsI";
|
|
2
|
+
import Query from "./Query";
|
|
3
|
+
export default class BindParams {
|
|
4
|
+
static bindParams(query: Query, options: QueryOptionsI): void;
|
|
5
|
+
private static bindWhereParams;
|
|
6
|
+
private static bindWhereParam;
|
|
7
|
+
private static bindLimitParams;
|
|
8
|
+
private static bindValuesParams;
|
|
9
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import ParameterType from "../types/parameters/ParameterType";
|
|
2
|
+
import QueryParamCreator from "./QueryParamCreator";
|
|
3
|
+
export default class BindParams {
|
|
4
|
+
static bindParams(query, options) {
|
|
5
|
+
if (options?.where)
|
|
6
|
+
BindParams.bindWhereParams(query, options.where.parameters);
|
|
7
|
+
if (options?.limit)
|
|
8
|
+
BindParams.bindLimitParams(query, options.limit);
|
|
9
|
+
if (options?.values) {
|
|
10
|
+
BindParams.bindValuesParams(query, options.values);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
static bindWhereParams(query, parameters) {
|
|
14
|
+
parameters.forEach((parameter) => {
|
|
15
|
+
this.bindWhereParam(query, parameter);
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
static bindWhereParam(query, parameter) {
|
|
19
|
+
if (QueryParamCreator.isArrayType(parameter.type)) {
|
|
20
|
+
parameter.value.forEach((value, index) => {
|
|
21
|
+
if (parameter.type == ParameterType.arrayString)
|
|
22
|
+
value = `%${value}%`;
|
|
23
|
+
query.bindParameter(`${parameter.name}_param${index}`, value);
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
if (parameter.type == ParameterType.string)
|
|
28
|
+
parameter.value = `%${parameter.value}%`;
|
|
29
|
+
query.bindParameter(parameter.name, parameter.value);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
static bindLimitParams(query, resultLimitation) {
|
|
33
|
+
query.bindParameter("limit", resultLimitation.limit);
|
|
34
|
+
query.bindParameter("offset", resultLimitation.offset);
|
|
35
|
+
}
|
|
36
|
+
static bindValuesParams(query, values) {
|
|
37
|
+
if (Array.isArray(values[0].value)) {
|
|
38
|
+
const quantity = values[0].value.length;
|
|
39
|
+
for (let i = 0; i < quantity; i++) {
|
|
40
|
+
values.forEach((value) => {
|
|
41
|
+
if (Array.isArray(value.value)) {
|
|
42
|
+
query.bindParameter(`${value.name}_${i}`, value.value[i]);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
query.bindParameter(`${value.name}_${i}`, value.value);
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
values.forEach((value) => {
|
|
52
|
+
query.bindParameter(`${value.name}_0`, value.value);
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export default class Parameters {
|
|
2
|
+
private parameters;
|
|
3
|
+
private requireParameters;
|
|
4
|
+
constructor(queryString: string);
|
|
5
|
+
getValues(): Array<any>;
|
|
6
|
+
getRequireParameters(): any[];
|
|
7
|
+
addParameter(name: string, value: any): void;
|
|
8
|
+
private getValueForParameterName;
|
|
9
|
+
private getParameterForName;
|
|
10
|
+
private getRequiredParametersFromQueryString;
|
|
11
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
export default class Parameters {
|
|
2
|
+
parameters;
|
|
3
|
+
requireParameters;
|
|
4
|
+
constructor(queryString) {
|
|
5
|
+
this.parameters = [];
|
|
6
|
+
this.requireParameters = this.getRequiredParametersFromQueryString(queryString);
|
|
7
|
+
}
|
|
8
|
+
getValues() {
|
|
9
|
+
let values = [];
|
|
10
|
+
this.requireParameters.forEach((parameterName) => {
|
|
11
|
+
values.push(this.getValueForParameterName(parameterName));
|
|
12
|
+
});
|
|
13
|
+
return values;
|
|
14
|
+
}
|
|
15
|
+
getRequireParameters() {
|
|
16
|
+
return this.requireParameters;
|
|
17
|
+
}
|
|
18
|
+
addParameter(name, value) {
|
|
19
|
+
const parameter = this.getParameterForName(name);
|
|
20
|
+
if (parameter) {
|
|
21
|
+
parameter.value = value;
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
this.parameters.push({ name, value });
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
getValueForParameterName(parameterName) {
|
|
28
|
+
const parameter = this.getParameterForName(parameterName);
|
|
29
|
+
if (parameter)
|
|
30
|
+
return parameter.value;
|
|
31
|
+
else
|
|
32
|
+
throw Error(`Missing required parameter: ${parameterName}`);
|
|
33
|
+
}
|
|
34
|
+
getParameterForName(parameterName) {
|
|
35
|
+
return this.parameters.find((parameter) => {
|
|
36
|
+
if (parameter.name == parameterName)
|
|
37
|
+
return parameter;
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
getRequiredParametersFromQueryString(queryString) {
|
|
41
|
+
let requireParameters = [];
|
|
42
|
+
const dolarSplit = queryString.split("$");
|
|
43
|
+
if (dolarSplit.length > 1) {
|
|
44
|
+
dolarSplit.forEach((dolarSplitElement, index) => {
|
|
45
|
+
if (index > 0) {
|
|
46
|
+
const doubleColonSplit = dolarSplitElement.split("::");
|
|
47
|
+
if (doubleColonSplit.length > 1)
|
|
48
|
+
requireParameters.push(doubleColonSplit[0]);
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
return requireParameters;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import Result from './Result';
|
|
2
|
+
export default class Query {
|
|
3
|
+
private pgClient;
|
|
4
|
+
private queryString;
|
|
5
|
+
private parameters;
|
|
6
|
+
constructor(pgClient: any, queryString: string);
|
|
7
|
+
bindParameter(name: string, value: any): this;
|
|
8
|
+
execute(): Promise<Result>;
|
|
9
|
+
private getQueryConfig;
|
|
10
|
+
private getQueryString;
|
|
11
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import Result from './Result';
|
|
2
|
+
import Parameters from './Parameters';
|
|
3
|
+
export default class Query {
|
|
4
|
+
pgClient;
|
|
5
|
+
queryString;
|
|
6
|
+
parameters;
|
|
7
|
+
constructor(pgClient, queryString) {
|
|
8
|
+
this.pgClient = pgClient;
|
|
9
|
+
this.queryString = queryString;
|
|
10
|
+
this.parameters = new Parameters(queryString);
|
|
11
|
+
}
|
|
12
|
+
bindParameter(name, value) {
|
|
13
|
+
this.parameters.addParameter(name, value);
|
|
14
|
+
return this;
|
|
15
|
+
}
|
|
16
|
+
async execute() {
|
|
17
|
+
const queryConfig = this.getQueryConfig();
|
|
18
|
+
try {
|
|
19
|
+
const pgResult = await this.pgClient.query(queryConfig);
|
|
20
|
+
return new Result(pgResult);
|
|
21
|
+
}
|
|
22
|
+
catch (error) {
|
|
23
|
+
error.message += `\n\nQuery: "${queryConfig.text}" \nParameters: "${queryConfig.values}" \n\n`;
|
|
24
|
+
throw error;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
getQueryConfig() {
|
|
28
|
+
return {
|
|
29
|
+
text: this.getQueryString(),
|
|
30
|
+
values: this.parameters.getValues()
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
getQueryString() {
|
|
34
|
+
let queryString = this.queryString;
|
|
35
|
+
const requireParameters = this.parameters.getRequireParameters();
|
|
36
|
+
for (let index = 0; index < requireParameters.length; index++) {
|
|
37
|
+
const parameterName = requireParameters[index];
|
|
38
|
+
queryString = queryString.replace('$' + parameterName + '::', '$' + (index + 1) + '::');
|
|
39
|
+
}
|
|
40
|
+
return queryString;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import ParameterI from "../types/ParameterI";
|
|
2
|
+
import ParameterType from "../types/parameters/ParameterType";
|
|
3
|
+
export default class QueryParamCreator {
|
|
4
|
+
static createParam(parameter: ParameterI): string;
|
|
5
|
+
static isArrayType(type: ParameterType): boolean;
|
|
6
|
+
private static createArrayParam;
|
|
7
|
+
static createParamValue(paramName: string, paramType: ParameterType): string;
|
|
8
|
+
static getBaseTypeForArrayType(paramType: ParameterType): ParameterType;
|
|
9
|
+
private static getOperatorForType;
|
|
10
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import ParameterType from "../types/parameters/ParameterType";
|
|
2
|
+
export default class QueryParamCreator {
|
|
3
|
+
static createParam(parameter) {
|
|
4
|
+
if (this.isArrayType(parameter.type))
|
|
5
|
+
return this.createArrayParam(parameter);
|
|
6
|
+
else {
|
|
7
|
+
const paramName = parameter.name;
|
|
8
|
+
const operator = this.getOperatorForType(parameter.type);
|
|
9
|
+
const value = this.createParamValue(paramName, parameter.type);
|
|
10
|
+
return `${paramName} ${operator} ${value}`;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
static isArrayType(type) {
|
|
14
|
+
if (type == ParameterType.arrayString || type == ParameterType.arrayNumber || type == ParameterType.arrayBoolean)
|
|
15
|
+
return true;
|
|
16
|
+
else
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
static createArrayParam(parameter) {
|
|
20
|
+
const paramName = parameter.name;
|
|
21
|
+
let sqlArrayParam = '(';
|
|
22
|
+
let arrayParam = [];
|
|
23
|
+
parameter.value.forEach((paramValue, index) => {
|
|
24
|
+
const paramType = this.getBaseTypeForArrayType(parameter.type);
|
|
25
|
+
const operator = this.getOperatorForType(paramType);
|
|
26
|
+
const value = this.createParamValue(`${paramName}_param${index}`, paramType);
|
|
27
|
+
arrayParam.push(`${paramName} ${operator} ${value}`);
|
|
28
|
+
});
|
|
29
|
+
sqlArrayParam += arrayParam.join(' OR ');
|
|
30
|
+
return sqlArrayParam += ')';
|
|
31
|
+
}
|
|
32
|
+
static createParamValue(paramName, paramType) {
|
|
33
|
+
switch (paramType) {
|
|
34
|
+
case ParameterType.bigint:
|
|
35
|
+
return `$${paramName}::BIGINT`;
|
|
36
|
+
case ParameterType.number:
|
|
37
|
+
return ` $${paramName}::NUMERIC`;
|
|
38
|
+
case ParameterType.string:
|
|
39
|
+
return `$${paramName}::TEXT`;
|
|
40
|
+
case ParameterType.boolean:
|
|
41
|
+
return `$${paramName}::BOOL`;
|
|
42
|
+
case ParameterType.smallint:
|
|
43
|
+
return `$${paramName}::SMALLINT`;
|
|
44
|
+
case 0:
|
|
45
|
+
return `$${paramName}::NUMERIC`;
|
|
46
|
+
default: throw new Error(`Nieznany typ parametru: ${paramName} typu: ${paramType} `);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
static getBaseTypeForArrayType(paramType) {
|
|
50
|
+
switch (paramType) {
|
|
51
|
+
case ParameterType.arrayNumber:
|
|
52
|
+
return ParameterType.number;
|
|
53
|
+
case ParameterType.arrayString:
|
|
54
|
+
return ParameterType.string;
|
|
55
|
+
case ParameterType.arrayBoolean:
|
|
56
|
+
return ParameterType.boolean;
|
|
57
|
+
default: throw new Error(`Nieznany typ podstawowy dla typu: ${paramType} `);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
static getOperatorForType(type) {
|
|
61
|
+
switch (type) {
|
|
62
|
+
case ParameterType.string:
|
|
63
|
+
return 'ILIKE';
|
|
64
|
+
default: return `=`;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import ParameterI from '../types/ParameterI';
|
|
2
|
+
import QueryOptionsI from '../types/QueryOptionsI';
|
|
3
|
+
export default class QueryParams {
|
|
4
|
+
private static where;
|
|
5
|
+
private static params;
|
|
6
|
+
private static order;
|
|
7
|
+
private static limit;
|
|
8
|
+
private static values;
|
|
9
|
+
private static paramConnector;
|
|
10
|
+
static createParams(queryString: string, options: QueryOptionsI): string;
|
|
11
|
+
static createValuesParams(sql: string, values: ParameterI[]): string;
|
|
12
|
+
private static createValueParams;
|
|
13
|
+
private static createWhereParams;
|
|
14
|
+
private static createOrderParams;
|
|
15
|
+
private static createLimitParams;
|
|
16
|
+
private static createParamsSql;
|
|
17
|
+
private static removeWhereVariable;
|
|
18
|
+
private static splitSql;
|
|
19
|
+
private static getWhereConnector;
|
|
20
|
+
}
|