@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,31 +1,31 @@
1
- 'use strict';
2
-
3
- module.exports = {
4
- async up(queryInterface, Sequelize) {
5
- await queryInterface.createTable('finance_PaymentMethod', {
6
- MethodId: {
7
- type: Sequelize.STRING(30),
8
- primaryKey: true,
9
- allowNull: false,
10
- },
11
- Name: {
12
- type: Sequelize.STRING(100),
13
- allowNull: false,
14
- },
15
- CompanyId: {
16
- type: Sequelize.STRING(30),
17
- allowNull: false,
18
- references: {
19
- model: 'finance_Company',
20
- key: 'CompanyId',
21
- },
22
- onUpdate: 'CASCADE',
23
- onDelete: 'CASCADE',
24
- },
25
- });
26
- },
27
-
28
- async down(queryInterface) {
29
- await queryInterface.dropTable('finance_PaymentMethod');
30
- },
31
- };
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ async up(queryInterface, Sequelize) {
5
+ await queryInterface.createTable('finance_PaymentMethod', {
6
+ MethodId: {
7
+ type: Sequelize.STRING(30),
8
+ primaryKey: true,
9
+ allowNull: false,
10
+ },
11
+ Name: {
12
+ type: Sequelize.STRING(100),
13
+ allowNull: false,
14
+ },
15
+ CompanyId: {
16
+ type: Sequelize.STRING(30),
17
+ allowNull: false,
18
+ references: {
19
+ model: 'finance_Company',
20
+ key: 'CompanyId',
21
+ },
22
+ onUpdate: 'CASCADE',
23
+ onDelete: 'CASCADE',
24
+ },
25
+ });
26
+ },
27
+
28
+ async down(queryInterface) {
29
+ await queryInterface.dropTable('finance_PaymentMethod');
30
+ },
31
+ };
@@ -1,55 +1,55 @@
1
- 'use strict';
2
-
3
- module.exports = {
4
- async up(queryInterface, Sequelize) {
5
- await queryInterface.createTable('finance_PaymentMethodType', {
6
- MethodId: {
7
- type: Sequelize.STRING(30),
8
- allowNull: false,
9
- references: {
10
- model: 'finance_PaymentMethod',
11
- key: 'MethodId',
12
- },
13
- onUpdate: 'CASCADE',
14
- onDelete: 'CASCADE',
15
- },
16
- MethodTypeId: {
17
- type: Sequelize.STRING(30),
18
- primaryKey: true,
19
- allowNull: false,
20
- },
21
- Name: {
22
- type: Sequelize.STRING(100),
23
- allowNull: false,
24
- },
25
- AccountNo: {
26
- type: Sequelize.STRING(30),
27
- allowNull: false,
28
- references: {
29
- model: 'finance_Account',
30
- key: 'AccountNo',
31
- },
32
- onUpdate: 'CASCADE',
33
- onDelete: 'CASCADE',
34
- },
35
- ProcessingFeeRate: {
36
- type: Sequelize.DECIMAL(10, 2),
37
- allowNull: false,
38
- },
39
- ProcessingFeeAccountNo: {
40
- type: Sequelize.STRING(30),
41
- allowNull: false,
42
- references: {
43
- model: 'finance_Account',
44
- key: 'AccountNo',
45
- },
46
- onUpdate: 'CASCADE',
47
- onDelete: 'CASCADE',
48
- },
49
- });
50
- },
51
-
52
- async down(queryInterface) {
53
- await queryInterface.dropTable('finance_PaymentMethodType');
54
- },
55
- };
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ async up(queryInterface, Sequelize) {
5
+ await queryInterface.createTable('finance_PaymentMethodType', {
6
+ MethodId: {
7
+ type: Sequelize.STRING(30),
8
+ allowNull: false,
9
+ references: {
10
+ model: 'finance_PaymentMethod',
11
+ key: 'MethodId',
12
+ },
13
+ onUpdate: 'CASCADE',
14
+ onDelete: 'CASCADE',
15
+ },
16
+ MethodTypeId: {
17
+ type: Sequelize.STRING(30),
18
+ primaryKey: true,
19
+ allowNull: false,
20
+ },
21
+ Name: {
22
+ type: Sequelize.STRING(100),
23
+ allowNull: false,
24
+ },
25
+ AccountNo: {
26
+ type: Sequelize.STRING(30),
27
+ allowNull: false,
28
+ references: {
29
+ model: 'finance_Account',
30
+ key: 'AccountNo',
31
+ },
32
+ onUpdate: 'CASCADE',
33
+ onDelete: 'CASCADE',
34
+ },
35
+ ProcessingFeeRate: {
36
+ type: Sequelize.DECIMAL(10, 2),
37
+ allowNull: false,
38
+ },
39
+ ProcessingFeeAccountNo: {
40
+ type: Sequelize.STRING(30),
41
+ allowNull: false,
42
+ references: {
43
+ model: 'finance_Account',
44
+ key: 'AccountNo',
45
+ },
46
+ onUpdate: 'CASCADE',
47
+ onDelete: 'CASCADE',
48
+ },
49
+ });
50
+ },
51
+
52
+ async down(queryInterface) {
53
+ await queryInterface.dropTable('finance_PaymentMethodType');
54
+ },
55
+ };
@@ -1,96 +1,96 @@
1
- 'use strict';
2
-
3
- module.exports = {
4
- async up(queryInterface, Sequelize) {
5
- await queryInterface.createTable('finance_Payment', {
6
- PaymentId: {
7
- type: Sequelize.STRING(30),
8
- primaryKey: true,
9
- allowNull: false,
10
- },
11
- PaymentType: {
12
- type: Sequelize.ENUM(['Payment Received', 'Payout']),
13
- defaultValue: 'Payment Received',
14
- allowNull: false,
15
- },
16
- PaymentDate: {
17
- type: Sequelize.DATE,
18
- allowNull: false,
19
- },
20
- Description: {
21
- type: Sequelize.STRING(1000),
22
- allowNull: false,
23
- },
24
- Currency: {
25
- type: Sequelize.CHAR(3),
26
- allowNull: false,
27
- },
28
- Amount: {
29
- type: Sequelize.DECIMAL(10, 2),
30
- allowNull: false,
31
- },
32
- Status: {
33
- type: Sequelize.STRING(20),
34
- allowNull: false,
35
- },
36
- ReceivedBy: {
37
- type: Sequelize.STRING(30),
38
- allowNull: true,
39
- },
40
- IssuedBy: {
41
- type: Sequelize.STRING(30),
42
- allowNull: true,
43
- },
44
- UpdatedAt: {
45
- type: Sequelize.DATE,
46
- allowNull: false,
47
- },
48
- UpdatedBy: {
49
- type: Sequelize.STRING(30),
50
- allowNull: false,
51
- },
52
- Remarks: {
53
- type: Sequelize.TEXT,
54
- allowNull: true,
55
- },
56
- RelatedObjectId: {
57
- type: Sequelize.STRING(30),
58
- allowNull: true,
59
- },
60
- RelatedObjectType: {
61
- type: Sequelize.STRING(200),
62
- allowNull: true,
63
- },
64
- ReceiptDocNo: {
65
- type: Sequelize.STRING(30),
66
- allowNull: true,
67
- references: {
68
- model: 'finance_Document',
69
- key: 'DocNo',
70
- },
71
- onUpdate: 'CASCADE',
72
- onDelete: 'CASCADE',
73
- },
74
- AccSystemRefId: {
75
- type: Sequelize.STRING(30),
76
- allowNull: true,
77
- },
78
- PostedToAccSystemYN: {
79
- type: Sequelize.ENUM(['Y', 'N']),
80
- allowNull: false,
81
- },
82
- PostedById: {
83
- type: Sequelize.STRING(30),
84
- allowNull: true,
85
- },
86
- PostedDateTime: {
87
- type: Sequelize.DATE,
88
- allowNull: true,
89
- },
90
- });
91
- },
92
-
93
- async down(queryInterface) {
94
- await queryInterface.dropTable('finance_Payment');
95
- },
96
- };
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ async up(queryInterface, Sequelize) {
5
+ await queryInterface.createTable('finance_Payment', {
6
+ PaymentId: {
7
+ type: Sequelize.STRING(30),
8
+ primaryKey: true,
9
+ allowNull: false,
10
+ },
11
+ PaymentType: {
12
+ type: Sequelize.ENUM(['Payment Received', 'Payout']),
13
+ defaultValue: 'Payment Received',
14
+ allowNull: false,
15
+ },
16
+ PaymentDate: {
17
+ type: Sequelize.DATE,
18
+ allowNull: false,
19
+ },
20
+ Description: {
21
+ type: Sequelize.STRING(1000),
22
+ allowNull: false,
23
+ },
24
+ Currency: {
25
+ type: Sequelize.CHAR(3),
26
+ allowNull: false,
27
+ },
28
+ Amount: {
29
+ type: Sequelize.DECIMAL(10, 2),
30
+ allowNull: false,
31
+ },
32
+ Status: {
33
+ type: Sequelize.STRING(20),
34
+ allowNull: false,
35
+ },
36
+ ReceivedBy: {
37
+ type: Sequelize.STRING(30),
38
+ allowNull: true,
39
+ },
40
+ IssuedBy: {
41
+ type: Sequelize.STRING(30),
42
+ allowNull: true,
43
+ },
44
+ UpdatedAt: {
45
+ type: Sequelize.DATE,
46
+ allowNull: false,
47
+ },
48
+ UpdatedBy: {
49
+ type: Sequelize.STRING(30),
50
+ allowNull: false,
51
+ },
52
+ Remarks: {
53
+ type: Sequelize.TEXT,
54
+ allowNull: true,
55
+ },
56
+ RelatedObjectId: {
57
+ type: Sequelize.STRING(30),
58
+ allowNull: true,
59
+ },
60
+ RelatedObjectType: {
61
+ type: Sequelize.STRING(200),
62
+ allowNull: true,
63
+ },
64
+ ReceiptDocNo: {
65
+ type: Sequelize.STRING(30),
66
+ allowNull: true,
67
+ references: {
68
+ model: 'finance_Document',
69
+ key: 'DocNo',
70
+ },
71
+ onUpdate: 'CASCADE',
72
+ onDelete: 'CASCADE',
73
+ },
74
+ AccSystemRefId: {
75
+ type: Sequelize.STRING(30),
76
+ allowNull: true,
77
+ },
78
+ PostedToAccSystemYN: {
79
+ type: Sequelize.ENUM(['Y', 'N']),
80
+ allowNull: false,
81
+ },
82
+ PostedById: {
83
+ type: Sequelize.STRING(30),
84
+ allowNull: true,
85
+ },
86
+ PostedDateTime: {
87
+ type: Sequelize.DATE,
88
+ allowNull: true,
89
+ },
90
+ });
91
+ },
92
+
93
+ async down(queryInterface) {
94
+ await queryInterface.dropTable('finance_Payment');
95
+ },
96
+ };
@@ -1,45 +1,45 @@
1
- 'use strict';
2
-
3
- module.exports = {
4
- async up(queryInterface, Sequelize) {
5
- await queryInterface.createTable('finance_PostHistory', {
6
- PostId: {
7
- type: Sequelize.STRING(30),
8
- primaryKey: true,
9
- allowNull: false,
10
- },
11
- DateTime: {
12
- type: Sequelize.DATE,
13
- allowNull: false,
14
- },
15
- ItemId: {
16
- type: Sequelize.STRING(30),
17
- allowNull: false,
18
- },
19
- ItemType: {
20
- type: Sequelize.STRING(200),
21
- allowNull: false,
22
- },
23
- ItemValue: {
24
- type: Sequelize.JSON(),
25
- allowNull: false,
26
- },
27
- PostedById: {
28
- type: Sequelize.STRING(30),
29
- allowNull: false,
30
- },
31
- AccSystemCode: {
32
- type: Sequelize.STRING(10),
33
- allowNull: false,
34
- },
35
- AccSystemRefId: {
36
- type: Sequelize.STRING(30),
37
- allowNull: false,
38
- },
39
- });
40
- },
41
-
42
- async down(queryInterface) {
43
- await queryInterface.dropTable('finance_PostHistory');
44
- },
45
- };
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ async up(queryInterface, Sequelize) {
5
+ await queryInterface.createTable('finance_PostHistory', {
6
+ PostId: {
7
+ type: Sequelize.STRING(30),
8
+ primaryKey: true,
9
+ allowNull: false,
10
+ },
11
+ DateTime: {
12
+ type: Sequelize.DATE,
13
+ allowNull: false,
14
+ },
15
+ ItemId: {
16
+ type: Sequelize.STRING(30),
17
+ allowNull: false,
18
+ },
19
+ ItemType: {
20
+ type: Sequelize.STRING(200),
21
+ allowNull: false,
22
+ },
23
+ ItemValue: {
24
+ type: Sequelize.JSON(),
25
+ allowNull: false,
26
+ },
27
+ PostedById: {
28
+ type: Sequelize.STRING(30),
29
+ allowNull: false,
30
+ },
31
+ AccSystemCode: {
32
+ type: Sequelize.STRING(10),
33
+ allowNull: false,
34
+ },
35
+ AccSystemRefId: {
36
+ type: Sequelize.STRING(30),
37
+ allowNull: false,
38
+ },
39
+ });
40
+ },
41
+
42
+ async down(queryInterface) {
43
+ await queryInterface.dropTable('finance_PostHistory');
44
+ },
45
+ };
@@ -1,52 +1,52 @@
1
- 'use strict';
2
-
3
- module.exports = {
4
- async up(queryInterface, Sequelize) {
5
- await queryInterface.createTable('finance_Tax', {
6
- TaxCode: {
7
- type: Sequelize.STRING(30),
8
- primaryKey: true,
9
- allowNull: false,
10
- },
11
- TaxRate: {
12
- type: Sequelize.DECIMAL(10, 2),
13
- allowNull: false,
14
- },
15
- Description: {
16
- type: Sequelize.STRING(1000),
17
- },
18
- CompanyId: {
19
- type: Sequelize.STRING(30),
20
- allowNull: false,
21
- references: {
22
- model: 'finance_Company',
23
- key: 'CompanyId',
24
- },
25
- onUpdate: 'CASCADE',
26
- onDelete: 'CASCADE',
27
- },
28
- CreatedAt: {
29
- allowNull: false,
30
- defaultValue: new Date(),
31
- type: Sequelize.DATE,
32
- },
33
- CreatedById: {
34
- type: Sequelize.STRING(30),
35
- allowNull: false,
36
- },
37
- UpdatedAt: {
38
- allowNull: false,
39
- defaultValue: new Date(),
40
- type: Sequelize.DATE,
41
- },
42
- UpdatedById: {
43
- type: Sequelize.STRING(30),
44
- allowNull: false,
45
- },
46
- });
47
- },
48
-
49
- async down(queryInterface) {
50
- await queryInterface.dropTable('finance_Tax');
51
- },
52
- };
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ async up(queryInterface, Sequelize) {
5
+ await queryInterface.createTable('finance_Tax', {
6
+ TaxCode: {
7
+ type: Sequelize.STRING(30),
8
+ primaryKey: true,
9
+ allowNull: false,
10
+ },
11
+ TaxRate: {
12
+ type: Sequelize.DECIMAL(10, 2),
13
+ allowNull: false,
14
+ },
15
+ Description: {
16
+ type: Sequelize.STRING(1000),
17
+ },
18
+ CompanyId: {
19
+ type: Sequelize.STRING(30),
20
+ allowNull: false,
21
+ references: {
22
+ model: 'finance_Company',
23
+ key: 'CompanyId',
24
+ },
25
+ onUpdate: 'CASCADE',
26
+ onDelete: 'CASCADE',
27
+ },
28
+ CreatedAt: {
29
+ allowNull: false,
30
+ defaultValue: new Date(),
31
+ type: Sequelize.DATE,
32
+ },
33
+ CreatedById: {
34
+ type: Sequelize.STRING(30),
35
+ allowNull: false,
36
+ },
37
+ UpdatedAt: {
38
+ allowNull: false,
39
+ defaultValue: new Date(),
40
+ type: Sequelize.DATE,
41
+ },
42
+ UpdatedById: {
43
+ type: Sequelize.STRING(30),
44
+ allowNull: false,
45
+ },
46
+ });
47
+ },
48
+
49
+ async down(queryInterface) {
50
+ await queryInterface.dropTable('finance_Tax');
51
+ },
52
+ };