@tomei/finance 0.6.87 → 0.6.88

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 (109) hide show
  1. package/.commitlintrc.json +22 -22
  2. package/.eslintrc.js +72 -72
  3. package/.gitlab-ci.yml +16 -16
  4. package/.husky/commit-msg +4 -4
  5. package/.husky/pre-commit +4 -4
  6. package/.prettierrc +4 -4
  7. package/CONTRIBUTING.md +30 -30
  8. package/LICENSE +21 -21
  9. package/README.md +13 -13
  10. package/configs/config.js +348 -348
  11. package/dist/finance-company/finance-company.d.ts +12 -0
  12. package/dist/finance-company/finance-company.js +40 -0
  13. package/dist/finance-company/finance-company.js.map +1 -1
  14. package/dist/models/finance-company.entity.d.ts +4 -0
  15. package/dist/models/finance-company.entity.js +44 -0
  16. package/dist/models/finance-company.entity.js.map +1 -1
  17. package/dist/payment-item/payment-item.js +4 -4
  18. package/dist/tsconfig.tsbuildinfo +1 -1
  19. package/invoice-template/assets/css/style.css.map +12 -12
  20. package/invoice-template/assets/css/style.min.css +1 -1
  21. package/invoice-template/assets/img/arrow_bg.svg +11 -11
  22. package/invoice-template/assets/img/coffy_shop_img.svg +18 -18
  23. package/invoice-template/assets/img/logo_accent.svg +3 -3
  24. package/invoice-template/assets/img/logo_white.svg +4 -4
  25. package/invoice-template/assets/img/sign.svg +12 -12
  26. package/invoice-template/assets/img/tomei-logo.svg +9 -9
  27. package/invoice-template/assets/js/html2canvas.min.js +10379 -10379
  28. package/invoice-template/assets/js/jquery.min.js +1 -1
  29. package/invoice-template/assets/sass/common/_color_variable.scss +12 -12
  30. package/invoice-template/assets/sass/common/_typography.scss +178 -178
  31. package/invoice-template/assets/sass/style.scss +12 -12
  32. package/migrations/finance-account-migration.js +97 -97
  33. package/migrations/finance-company-migration.js +29 -29
  34. package/migrations/finance-customer-migration.js +51 -51
  35. package/migrations/finance-document-item-migration.js +111 -111
  36. package/migrations/finance-document-migration.js +122 -122
  37. package/migrations/finance-journal-entry-migration.js +59 -59
  38. package/migrations/finance-ledger-transaction-migration.js +89 -89
  39. package/migrations/finance-payment-item-migration.js +52 -52
  40. package/migrations/finance-payment-method-migration.js +31 -31
  41. package/migrations/finance-payment-method-type-migration.js +55 -55
  42. package/migrations/finance-payment-migration.js +96 -96
  43. package/migrations/finance-post-history-migration.js +45 -45
  44. package/migrations/finance-tax-migration.js +52 -52
  45. package/migrations/refactor-finance-document-migration.js +71 -71
  46. package/migrations/update-finance-company-migration.js +77 -0
  47. package/nest-cli.json +19 -19
  48. package/package.json +82 -82
  49. package/sonar-project.properties +12 -12
  50. package/src/account/account.repository.ts +11 -11
  51. package/src/account/account.ts +278 -278
  52. package/src/account/interfaces/account-attr.interface.ts +31 -31
  53. package/src/account-system-entity/account-system-entity.ts +66 -66
  54. package/src/account-system-entity/post-history.repository.ts +11 -11
  55. package/src/config.ts +382 -382
  56. package/src/customer/customer.ts +305 -305
  57. package/src/customer/finance-customer.repository.ts +13 -13
  58. package/src/customer/interfaces/customer.repository.interface.ts +3 -3
  59. package/src/customer/interfaces/finance-customer-attr.interface.ts +10 -10
  60. package/src/customer/interfaces/finance-customer.repository.interface.ts +4 -4
  61. package/src/database.ts +48 -48
  62. package/src/document/document-item.repository.ts +11 -11
  63. package/src/document/document.repository.ts +11 -11
  64. package/src/document/interfaces/document-attr.interface.ts +28 -28
  65. package/src/document/interfaces/document-item-attr.interface.ts +22 -22
  66. package/src/document/interfaces/document-item.repository.interface.ts +4 -4
  67. package/src/enum/collect-payment-type.ts +3 -3
  68. package/src/enum/doc-type.enum.ts +8 -8
  69. package/src/enum/index.ts +19 -19
  70. package/src/enum/payment-method.enum.ts +3 -3
  71. package/src/enum/payment-type.enum.ts +4 -4
  72. package/src/enum/quick-book-client-scopes.enum.ts +14 -14
  73. package/src/finance-company/finance-company.repository.ts +11 -11
  74. package/src/finance-company/finance-company.ts +2289 -2229
  75. package/src/helpers/login-user.ts +38 -38
  76. package/src/helpers/typeof.ts +35 -35
  77. package/src/index.ts +32 -32
  78. package/src/interfaces/account-system.interface.ts +23 -23
  79. package/src/interfaces/index.ts +3 -3
  80. package/src/models/account.entity.ts +206 -206
  81. package/src/models/customer.entity.ts +93 -93
  82. package/src/models/document-item.entity.ts +143 -143
  83. package/src/models/document.entity.ts +211 -211
  84. package/src/models/finance-company.entity.ts +69 -29
  85. package/src/models/journal-entry.entity.ts +110 -110
  86. package/src/models/ledger-transaction.entity.ts +148 -148
  87. package/src/models/payment-item.entity.ts +60 -60
  88. package/src/models/payment-method-type.entity.ts +70 -70
  89. package/src/models/payment-method.entity.ts +51 -51
  90. package/src/models/payment.entity.ts +165 -165
  91. package/src/models/post-history.entity.ts +41 -41
  92. package/src/models/tax.entity.ts +75 -75
  93. package/src/payment/interfaces/payment-attr.interface.ts +23 -23
  94. package/src/payment/interfaces/payment-params.interface.ts +8 -8
  95. package/src/payment/payment.repository.ts +11 -11
  96. package/src/payment/payment.ts +236 -236
  97. package/src/payment-item/interfaces/payment-item-attr.interface.ts +10 -10
  98. package/src/payment-item/payment-item.repository.ts +11 -11
  99. package/src/payment-item/payment-item.ts +134 -134
  100. package/src/payment-method/payment-method.repository.ts +11 -11
  101. package/src/payment-method-type/payment-method-type.repository.ts +11 -11
  102. package/src/tax/interfaces/tax-attr.interface.ts +10 -10
  103. package/src/tax/tax.repository.ts +11 -11
  104. package/src/tax/tax.ts +69 -69
  105. package/src/test-document.ts +25 -25
  106. package/src/test.ts +3 -3
  107. package/tsconfig.build.json +4 -4
  108. package/tsconfig.json +22 -22
  109. package/tslint.json +18 -18
@@ -1,66 +1,66 @@
1
- import { IRepositoryBase, LoginUserBase, ObjectBase } from '@tomei/general';
2
- // import { FinanceCompany } from '../finance-company';
3
- import { PostHistoryRepository } from './post-history.repository';
4
- import cuid from 'cuid';
5
- import { Injectable } from '@nestjs/common';
6
-
7
- @Injectable()
8
- export abstract class AccountSystemEntity extends ObjectBase {
9
- CompanyId = '';
10
- PostedToAccSystemYN = 'N';
11
- AccSystemRefId = '';
12
- PostedById = '';
13
- PostedDateTime: Date;
14
- protected abstract _ObjectType: string;
15
- protected abstract RepositoryBase: IRepositoryBase<any>;
16
- private static PostHistoryRepository = new PostHistoryRepository();
17
-
18
- async postToAccSystem(dbTransaction: any, loginUser: LoginUserBase) {
19
- try {
20
- /*retrieve the finance company details from finance_Company to
21
- * get details of the accounting system*/
22
- const company = 'test';
23
- // const company = await FinanceCompany.getFinanceCompany(this.CompanyId);
24
-
25
- /*todo:instantiating the appropriate accounting system to perform the post*/
26
- // if (this.TableName === 'finance_Customer') {
27
- // await this.AccountingSystem.createCustomer();
28
- // }
29
-
30
- /*setting the posted fields*/
31
- this.PostedToAccSystemYN = 'Y';
32
- this.PostedById = loginUser.ObjectId;
33
- this.PostedDateTime = new Date();
34
-
35
- /*updating the posted fields to the table either using direct
36
- * SQL or RepositoryBase*/
37
- const entity = await this.RepositoryBase.findByPk(this.ObjectId);
38
- const updated = await entity.update(
39
- {
40
- PostedToAccSystemYN: this.PostedToAccSystemYN,
41
- PostedById: this.PostedById,
42
- PostedDateTime: this.PostedDateTime,
43
- },
44
- { transaction: dbTransaction },
45
- );
46
-
47
- /*writing to accounting transaction log table finance_PostHistory*/
48
- await AccountSystemEntity.PostHistoryRepository.create(
49
- {
50
- PostId: cuid(),
51
- DateTime: this.PostedDateTime,
52
- ItemId: this.ObjectId,
53
- ItemType: this.TableName,
54
- ItemValue: JSON.stringify(updated),
55
- PostedById: this.PostedById,
56
- AccSystemCode: 'test',
57
- // AccSystemCode: company.AccSystemCode,
58
- AccSystemRefId: this.AccSystemRefId,
59
- },
60
- { transaction: dbTransaction },
61
- );
62
- } catch (err) {
63
- throw err;
64
- }
65
- }
66
- }
1
+ import { IRepositoryBase, LoginUserBase, ObjectBase } from '@tomei/general';
2
+ // import { FinanceCompany } from '../finance-company';
3
+ import { PostHistoryRepository } from './post-history.repository';
4
+ import cuid from 'cuid';
5
+ import { Injectable } from '@nestjs/common';
6
+
7
+ @Injectable()
8
+ export abstract class AccountSystemEntity extends ObjectBase {
9
+ CompanyId = '';
10
+ PostedToAccSystemYN = 'N';
11
+ AccSystemRefId = '';
12
+ PostedById = '';
13
+ PostedDateTime: Date;
14
+ protected abstract _ObjectType: string;
15
+ protected abstract RepositoryBase: IRepositoryBase<any>;
16
+ private static PostHistoryRepository = new PostHistoryRepository();
17
+
18
+ async postToAccSystem(dbTransaction: any, loginUser: LoginUserBase) {
19
+ try {
20
+ /*retrieve the finance company details from finance_Company to
21
+ * get details of the accounting system*/
22
+ const company = 'test';
23
+ // const company = await FinanceCompany.getFinanceCompany(this.CompanyId);
24
+
25
+ /*todo:instantiating the appropriate accounting system to perform the post*/
26
+ // if (this.TableName === 'finance_Customer') {
27
+ // await this.AccountingSystem.createCustomer();
28
+ // }
29
+
30
+ /*setting the posted fields*/
31
+ this.PostedToAccSystemYN = 'Y';
32
+ this.PostedById = loginUser.ObjectId;
33
+ this.PostedDateTime = new Date();
34
+
35
+ /*updating the posted fields to the table either using direct
36
+ * SQL or RepositoryBase*/
37
+ const entity = await this.RepositoryBase.findByPk(this.ObjectId);
38
+ const updated = await entity.update(
39
+ {
40
+ PostedToAccSystemYN: this.PostedToAccSystemYN,
41
+ PostedById: this.PostedById,
42
+ PostedDateTime: this.PostedDateTime,
43
+ },
44
+ { transaction: dbTransaction },
45
+ );
46
+
47
+ /*writing to accounting transaction log table finance_PostHistory*/
48
+ await AccountSystemEntity.PostHistoryRepository.create(
49
+ {
50
+ PostId: cuid(),
51
+ DateTime: this.PostedDateTime,
52
+ ItemId: this.ObjectId,
53
+ ItemType: this.TableName,
54
+ ItemValue: JSON.stringify(updated),
55
+ PostedById: this.PostedById,
56
+ AccSystemCode: 'test',
57
+ // AccSystemCode: company.AccSystemCode,
58
+ AccSystemRefId: this.AccSystemRefId,
59
+ },
60
+ { transaction: dbTransaction },
61
+ );
62
+ } catch (err) {
63
+ throw err;
64
+ }
65
+ }
66
+ }
@@ -1,11 +1,11 @@
1
- import { RepositoryBase, IRepositoryBase } from '@tomei/general';
2
- import FinancePostHistoryModel from '../models/post-history.entity';
3
-
4
- export class PostHistoryRepository
5
- extends RepositoryBase<FinancePostHistoryModel>
6
- implements IRepositoryBase<FinancePostHistoryModel>
7
- {
8
- constructor() {
9
- super(FinancePostHistoryModel);
10
- }
11
- }
1
+ import { RepositoryBase, IRepositoryBase } from '@tomei/general';
2
+ import FinancePostHistoryModel from '../models/post-history.entity';
3
+
4
+ export class PostHistoryRepository
5
+ extends RepositoryBase<FinancePostHistoryModel>
6
+ implements IRepositoryBase<FinancePostHistoryModel>
7
+ {
8
+ constructor() {
9
+ super(FinancePostHistoryModel);
10
+ }
11
+ }