@tomei/finance 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/dist/account/account.d.ts +2 -1
  2. package/dist/account/account.js +1 -1
  3. package/dist/account/account.js.map +1 -1
  4. package/dist/base/base.address.d.ts +8 -0
  5. package/dist/base/base.address.js +15 -0
  6. package/dist/base/base.address.js.map +1 -0
  7. package/dist/base/base.object.d.ts +7 -0
  8. package/dist/base/base.object.js +14 -0
  9. package/dist/base/base.object.js.map +1 -0
  10. package/dist/base/base.owner.d.ts +23 -0
  11. package/dist/base/base.owner.js +34 -0
  12. package/dist/base/base.owner.js.map +1 -0
  13. package/dist/base/index.d.ts +4 -4
  14. package/dist/base/index.js +5 -3
  15. package/dist/base/index.js.map +1 -1
  16. package/dist/customer/customer.d.ts +27 -0
  17. package/dist/customer/customer.js +104 -0
  18. package/dist/customer/customer.js.map +1 -0
  19. package/dist/customer/customer.repository.d.ts +0 -0
  20. package/dist/customer/customer.repository.js +1 -0
  21. package/dist/customer/customer.repository.js.map +1 -0
  22. package/dist/customer/entities/customer.entity.d.ts +5 -0
  23. package/dist/customer/entities/customer.entity.js +41 -0
  24. package/dist/customer/entities/customer.entity.js.map +1 -0
  25. package/dist/customer/finance-customer.repository.d.ts +8 -0
  26. package/dist/customer/finance-customer.repository.js +31 -0
  27. package/dist/customer/finance-customer.repository.js.map +1 -0
  28. package/dist/customer/index.d.ts +7 -0
  29. package/dist/customer/index.js +10 -0
  30. package/dist/customer/index.js.map +1 -0
  31. package/dist/customer/interfaces/customer.repository.interface.d.ts +3 -0
  32. package/dist/customer/interfaces/customer.repository.interface.js +3 -0
  33. package/dist/customer/interfaces/customer.repository.interface.js.map +1 -0
  34. package/dist/customer/interfaces/finance-customer-attr.interface.d.ts +4 -0
  35. package/dist/customer/interfaces/finance-customer-attr.interface.js +3 -0
  36. package/dist/customer/interfaces/finance-customer-attr.interface.js.map +1 -0
  37. package/dist/customer/interfaces/finance-customer.repository.interface.d.ts +3 -0
  38. package/dist/customer/interfaces/finance-customer.repository.interface.js +3 -0
  39. package/dist/customer/interfaces/finance-customer.repository.interface.js.map +1 -0
  40. package/dist/index.d.ts +2 -0
  41. package/dist/index.js +2 -0
  42. package/dist/index.js.map +1 -1
  43. package/dist/interfaces/account-system.interface.d.ts +8 -0
  44. package/dist/interfaces/account-system.interface.js +3 -0
  45. package/dist/interfaces/account-system.interface.js.map +1 -0
  46. package/dist/interfaces/customer.repository.interface.d.ts +3 -0
  47. package/dist/interfaces/customer.repository.interface.js +3 -0
  48. package/dist/interfaces/customer.repository.interface.js.map +1 -0
  49. package/dist/interfaces/finance-customer.repository.interface.d.ts +3 -0
  50. package/dist/interfaces/finance-customer.repository.interface.js +3 -0
  51. package/dist/interfaces/finance-customer.repository.interface.js.map +1 -0
  52. package/dist/interfaces/index.d.ts +2 -0
  53. package/dist/interfaces/index.js +3 -0
  54. package/dist/interfaces/index.js.map +1 -0
  55. package/dist/interfaces/systemConfig.interface.d.ts +0 -0
  56. package/dist/interfaces/systemConfig.interface.js +1 -0
  57. package/dist/interfaces/systemConfig.interface.js.map +1 -0
  58. package/dist/quickbook-client/client.d.ts +4 -2
  59. package/dist/quickbook-client/client.js +33 -0
  60. package/dist/quickbook-client/client.js.map +1 -1
  61. package/dist/quickbook-client/index.d.ts +2 -1
  62. package/dist/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.d.ts +7 -0
  63. package/dist/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.js +3 -0
  64. package/dist/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.js.map +1 -0
  65. package/dist/tsconfig.tsbuildinfo +1 -1
  66. package/migrations/finance-customer-migration.js +21 -0
  67. package/package.json +2 -2
  68. package/src/account/account.ts +3 -2
  69. package/src/base/base.address.ts +21 -0
  70. package/src/base/{object/base.object.ts → base.object.ts} +0 -0
  71. package/src/base/{owner/base.owner.ts → base.owner.ts} +4 -0
  72. package/src/base/index.ts +4 -5
  73. package/src/customer/customer.ts +146 -0
  74. package/src/customer/entities/customer.entity.ts +23 -0
  75. package/src/customer/finance-customer.repository.ts +20 -0
  76. package/src/customer/index.ts +15 -0
  77. package/src/customer/interfaces/customer.repository.interface.ts +3 -0
  78. package/src/customer/interfaces/finance-customer-attr.interface.ts +4 -0
  79. package/src/customer/interfaces/finance-customer.repository.interface.ts +3 -0
  80. package/src/index.ts +2 -0
  81. package/src/{base → interfaces}/account-system.interface.ts +1 -0
  82. package/src/interfaces/index.ts +3 -0
  83. package/src/quickbook-client/client.ts +38 -2
  84. package/src/quickbook-client/index.ts +2 -1
  85. package/src/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.ts +8 -0
@@ -1,14 +1,16 @@
1
1
  import * as OAuthClient from 'intuit-oauth';
2
- import { IAccountSystem } from 'src/base';
3
- import { ClientScopes } from 'src/enum/quick-book-client-scopes.enum';
2
+ import { ClientScopes } from '../enum/quick-book-client-scopes.enum';
3
+ import { IAccountSystem } from '../interfaces';
4
4
  import { IQuickBookAPICallOptions } from './interfaces/quickbook-client-call-options.interface';
5
5
  import { IQuickBookCreateAccountOptions } from './interfaces/quickbook-client-create-account-options.interface';
6
+ import { IQuickBookCreateCustomerOptions } from './interfaces/quickbook-client-create-customer-options.interface';
6
7
  import { IQuickBookClientOptions } from './interfaces/quickbook-client-options.interface';
7
8
  export declare class QuickBookClient implements IAccountSystem {
8
9
  client: OAuthClient;
9
10
  apiUrl: string;
10
11
  constructor(options: IQuickBookClientOptions);
11
12
  createAccount(payload: IQuickBookCreateAccountOptions): Promise<any>;
13
+ createCustomer(payload: IQuickBookCreateCustomerOptions): Promise<any>;
12
14
  createInvoice(): Promise<void>;
13
15
  createDebitNote(): Promise<void>;
14
16
  createCreditNote(): Promise<void>;
@@ -30,6 +30,39 @@ class QuickBookClient {
30
30
  throw error;
31
31
  }
32
32
  }
33
+ async createCustomer(payload) {
34
+ try {
35
+ const requestBody = {
36
+ PrimaryEmailAddr: {
37
+ Address: payload.Email,
38
+ },
39
+ DisplayName: payload.FullName,
40
+ PrimaryPhone: {
41
+ FreeFormNumber: payload.ContractNo,
42
+ },
43
+ BillAddr: {
44
+ CountrySubDivisionCode: '',
45
+ City: payload.Address.City,
46
+ PostalCode: payload.Address.PostalCode,
47
+ Line1: payload.Address.Line1,
48
+ Country: payload.Address.Country,
49
+ },
50
+ };
51
+ const companyId = this.getCompanyId();
52
+ const response = await this.callApi({
53
+ endpoint: `/v3/company/${companyId}/customer?minorversion=65`,
54
+ method: 'POST',
55
+ headers: {
56
+ 'Content-Type': 'application/json',
57
+ },
58
+ body: JSON.stringify(requestBody),
59
+ });
60
+ return response.json.Customer;
61
+ }
62
+ catch (error) {
63
+ throw error;
64
+ }
65
+ }
33
66
  async createInvoice() {
34
67
  throw new Error('Method not implemented.');
35
68
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/quickbook-client/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/quickbook-client/client.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { QuickBookClient } from './client';
2
2
  import { IQuickBookCreateAccountOptions } from './interfaces/quickbook-client-create-account-options.interface';
3
3
  import { IQuickBookClientOptions } from './interfaces/quickbook-client-options.interface';
4
- export { QuickBookClient, IQuickBookCreateAccountOptions, IQuickBookClientOptions, };
4
+ import { IQuickBookCreateCustomerOptions } from './interfaces/quickbook-client-create-customer-options.interface';
5
+ export { QuickBookClient, IQuickBookCreateAccountOptions, IQuickBookClientOptions, IQuickBookCreateCustomerOptions, };
@@ -0,0 +1,7 @@
1
+ import { AddressBase } from '@tomei/general';
2
+ export interface IQuickBookCreateCustomerOptions {
3
+ FullName: string;
4
+ Email: string;
5
+ ContractNo: string;
6
+ Address: AddressBase;
7
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=quickbook-client-create-customer-options.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quickbook-client-create-customer-options.interface.js","sourceRoot":"","sources":["../../../src/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.ts"],"names":[],"mappings":""}