@tomei/finance 0.6.76 → 0.6.78

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 (105) 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.js +2 -3
  12. package/dist/finance-company/finance-company.js.map +1 -1
  13. package/dist/payment-item/payment-item.js +6 -6
  14. package/dist/payment-item/payment-item.js.map +1 -1
  15. package/dist/tsconfig.tsbuildinfo +1 -1
  16. package/invoice-template/assets/css/style.css.map +12 -12
  17. package/invoice-template/assets/css/style.min.css +1 -1
  18. package/invoice-template/assets/img/arrow_bg.svg +11 -11
  19. package/invoice-template/assets/img/coffy_shop_img.svg +18 -18
  20. package/invoice-template/assets/img/logo_accent.svg +3 -3
  21. package/invoice-template/assets/img/logo_white.svg +4 -4
  22. package/invoice-template/assets/img/sign.svg +12 -12
  23. package/invoice-template/assets/img/tomei-logo.svg +9 -9
  24. package/invoice-template/assets/js/html2canvas.min.js +10379 -10379
  25. package/invoice-template/assets/js/jquery.min.js +1 -1
  26. package/invoice-template/assets/sass/common/_color_variable.scss +12 -12
  27. package/invoice-template/assets/sass/common/_typography.scss +178 -178
  28. package/invoice-template/assets/sass/style.scss +12 -12
  29. package/migrations/finance-account-migration.js +97 -97
  30. package/migrations/finance-company-migration.js +29 -29
  31. package/migrations/finance-customer-migration.js +51 -51
  32. package/migrations/finance-document-item-migration.js +111 -111
  33. package/migrations/finance-document-migration.js +122 -122
  34. package/migrations/finance-journal-entry-migration.js +59 -59
  35. package/migrations/finance-ledger-transaction-migration.js +89 -89
  36. package/migrations/finance-payment-item-migration.js +52 -52
  37. package/migrations/finance-payment-method-migration.js +31 -31
  38. package/migrations/finance-payment-method-type-migration.js +55 -55
  39. package/migrations/finance-payment-migration.js +96 -96
  40. package/migrations/finance-post-history-migration.js +45 -45
  41. package/migrations/finance-tax-migration.js +52 -52
  42. package/migrations/refactor-finance-document-migration.js +71 -71
  43. package/nest-cli.json +19 -19
  44. package/package.json +82 -82
  45. package/sonar-project.properties +12 -12
  46. package/src/account/account.repository.ts +11 -11
  47. package/src/account/account.ts +276 -276
  48. package/src/account/interfaces/account-attr.interface.ts +31 -31
  49. package/src/account-system-entity/account-system-entity.ts +66 -66
  50. package/src/account-system-entity/post-history.repository.ts +11 -11
  51. package/src/config.ts +382 -382
  52. package/src/customer/customer.ts +299 -299
  53. package/src/customer/finance-customer.repository.ts +13 -13
  54. package/src/customer/interfaces/customer.repository.interface.ts +3 -3
  55. package/src/customer/interfaces/finance-customer-attr.interface.ts +10 -10
  56. package/src/customer/interfaces/finance-customer.repository.interface.ts +4 -4
  57. package/src/database.ts +48 -48
  58. package/src/document/document-item.repository.ts +11 -11
  59. package/src/document/document.repository.ts +11 -11
  60. package/src/document/interfaces/document-attr.interface.ts +28 -28
  61. package/src/document/interfaces/document-item-attr.interface.ts +22 -22
  62. package/src/document/interfaces/document-item.repository.interface.ts +4 -4
  63. package/src/enum/collect-payment-type.ts +3 -3
  64. package/src/enum/doc-type.enum.ts +8 -8
  65. package/src/enum/index.ts +19 -19
  66. package/src/enum/payment-method.enum.ts +3 -3
  67. package/src/enum/payment-type.enum.ts +4 -4
  68. package/src/enum/quick-book-client-scopes.enum.ts +14 -14
  69. package/src/finance-company/finance-company.repository.ts +11 -11
  70. package/src/finance-company/finance-company.ts +2229 -2227
  71. package/src/helpers/login-user.ts +38 -38
  72. package/src/helpers/typeof.ts +35 -35
  73. package/src/index.ts +32 -32
  74. package/src/interfaces/account-system.interface.ts +20 -20
  75. package/src/interfaces/index.ts +3 -3
  76. package/src/models/account.entity.ts +206 -206
  77. package/src/models/customer.entity.ts +93 -93
  78. package/src/models/document-item.entity.ts +143 -143
  79. package/src/models/document.entity.ts +211 -211
  80. package/src/models/finance-company.entity.ts +29 -29
  81. package/src/models/journal-entry.entity.ts +110 -110
  82. package/src/models/ledger-transaction.entity.ts +148 -148
  83. package/src/models/payment-item.entity.ts +60 -60
  84. package/src/models/payment-method-type.entity.ts +70 -70
  85. package/src/models/payment-method.entity.ts +51 -51
  86. package/src/models/payment.entity.ts +165 -165
  87. package/src/models/post-history.entity.ts +41 -41
  88. package/src/models/tax.entity.ts +75 -75
  89. package/src/payment/interfaces/payment-attr.interface.ts +23 -23
  90. package/src/payment/interfaces/payment-params.interface.ts +8 -8
  91. package/src/payment/payment.repository.ts +11 -11
  92. package/src/payment/payment.ts +236 -236
  93. package/src/payment-item/interfaces/payment-item-attr.interface.ts +10 -10
  94. package/src/payment-item/payment-item.repository.ts +11 -11
  95. package/src/payment-item/payment-item.ts +134 -134
  96. package/src/payment-method/payment-method.repository.ts +11 -11
  97. package/src/payment-method-type/payment-method-type.repository.ts +11 -11
  98. package/src/tax/interfaces/tax-attr.interface.ts +10 -10
  99. package/src/tax/tax.repository.ts +11 -11
  100. package/src/tax/tax.ts +69 -69
  101. package/src/test-document.ts +25 -25
  102. package/src/test.ts +3 -3
  103. package/tsconfig.build.json +4 -4
  104. package/tsconfig.json +22 -22
  105. 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
+ }