@tomei/finance 0.3.75 → 0.3.77

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 (298) hide show
  1. package/.commitlintrc.json +22 -22
  2. package/.eslintrc.js +72 -72
  3. package/.husky/commit-msg +4 -4
  4. package/.husky/pre-commit +4 -4
  5. package/.prettierrc +4 -4
  6. package/CONTRIBUTING.md +30 -30
  7. package/LICENSE +21 -21
  8. package/README.md +13 -13
  9. package/configs/config.js +336 -336
  10. package/dist/finance-company/finance-company.d.ts +3 -1
  11. package/dist/finance-company/finance-company.js +43 -7
  12. package/dist/finance-company/finance-company.js.map +1 -1
  13. package/dist/models/payment-paid-with.entity.d.ts +9 -3
  14. package/dist/models/payment-paid-with.entity.js +47 -5
  15. package/dist/models/payment-paid-with.entity.js.map +1 -1
  16. package/dist/models/payment.entity.d.ts +0 -4
  17. package/dist/models/payment.entity.js +0 -28
  18. package/dist/models/payment.entity.js.map +1 -1
  19. package/dist/payment-paid-with/interfaces/payment-paid-with.interface.d.ts +9 -3
  20. package/dist/payment-paid-with/interfaces/payment-paid-with.interface.js.map +1 -1
  21. package/dist/payment-paid-with/payment-paid-with.d.ts +9 -3
  22. package/dist/payment-paid-with/payment-paid-with.js +9 -3
  23. package/dist/payment-paid-with/payment-paid-with.js.map +1 -1
  24. package/dist/tsconfig.tsbuildinfo +1 -1
  25. package/invoice-template/assets/css/style.css.map +12 -12
  26. package/invoice-template/assets/css/style.min.css +1 -1
  27. package/invoice-template/assets/img/arrow_bg.svg +11 -11
  28. package/invoice-template/assets/img/coffy_shop_img.svg +18 -18
  29. package/invoice-template/assets/img/logo_accent.svg +3 -3
  30. package/invoice-template/assets/img/logo_white.svg +4 -4
  31. package/invoice-template/assets/img/sign.svg +12 -12
  32. package/invoice-template/assets/js/html2canvas.min.js +10379 -10379
  33. package/invoice-template/assets/js/jquery.min.js +1 -1
  34. package/invoice-template/assets/sass/common/_color_variable.scss +12 -12
  35. package/invoice-template/assets/sass/common/_typography.scss +178 -178
  36. package/invoice-template/assets/sass/style.scss +12 -12
  37. package/migrations/finance-account-migration.js +97 -97
  38. package/migrations/finance-company-migration.js +29 -29
  39. package/migrations/finance-customer-migration.js +51 -51
  40. package/migrations/finance-document-item-migration.js +111 -111
  41. package/migrations/finance-document-migration.js +116 -116
  42. package/migrations/finance-payment-item-migration.js +51 -51
  43. package/migrations/finance-payment-method-migration.js +31 -31
  44. package/migrations/finance-payment-method-type-migration.js +55 -55
  45. package/migrations/finance-payment-migration.js +74 -74
  46. package/migrations/finance-paymentpaidwith-migration.js +29 -5
  47. package/migrations/finance-post-history-migration.js +45 -45
  48. package/nest-cli.json +19 -19
  49. package/package.json +79 -79
  50. package/src/account/account.repository.ts +11 -11
  51. package/src/account/account.ts +222 -222
  52. package/src/account/interfaces/account-attr.interface.ts +31 -31
  53. package/src/account-system-entity/account-system-entity.ts +65 -65
  54. package/src/account-system-entity/post-history.repository.ts +11 -11
  55. package/src/config.ts +369 -369
  56. package/src/customer/customer.ts +266 -266
  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 +15 -15
  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/doc-type.enum.ts +8 -8
  68. package/src/enum/index.ts +17 -17
  69. package/src/enum/payment-method.enum.ts +3 -3
  70. package/src/enum/payment-type.enum.ts +4 -4
  71. package/src/finance-company/finance-company.repository.ts +11 -11
  72. package/src/finance-company/finance-company.ts +54 -10
  73. package/src/helpers/typeof.ts +29 -29
  74. package/src/index.ts +30 -30
  75. package/src/interfaces/account-system.interface.ts +20 -20
  76. package/src/interfaces/index.ts +3 -3
  77. package/src/models/account.entity.ts +206 -206
  78. package/src/models/customer.entity.ts +93 -93
  79. package/src/models/document-item.entity.ts +143 -143
  80. package/src/models/document.entity.ts +203 -203
  81. package/src/models/finance-company.entity.ts +25 -25
  82. package/src/models/journal-entry.entity.ts +110 -110
  83. package/src/models/ledger-transaction.entity.ts +148 -148
  84. package/src/models/payment-item.entity.ts +59 -59
  85. package/src/models/payment-method-type.entity.ts +70 -70
  86. package/src/models/payment-method.entity.ts +51 -51
  87. package/src/models/payment-paid-with.entity.ts +41 -5
  88. package/src/models/payment.entity.ts +129 -153
  89. package/src/models/post-history.entity.ts +41 -41
  90. package/src/payment/interfaces/payment-attr.interface.ts +19 -19
  91. package/src/payment/interfaces/payment-params.interface.ts +8 -8
  92. package/src/payment/payment.repository.ts +11 -11
  93. package/src/payment/payment.ts +208 -208
  94. package/src/payment-item/interfaces/payment-item-attr.interface.ts +10 -10
  95. package/src/payment-item/payment-item.repository.ts +11 -11
  96. package/src/payment-item/payment-item.ts +58 -58
  97. package/src/payment-method/payment-method.repository.ts +11 -11
  98. package/src/payment-method-type/payment-method-type.repository.ts +11 -11
  99. package/src/payment-paid-with/interfaces/payment-paid-with.interface.ts +9 -3
  100. package/src/payment-paid-with/payment-paid-with.ts +9 -3
  101. package/tsconfig.build.json +4 -4
  102. package/tsconfig.json +22 -22
  103. package/tslint.json +18 -18
  104. package/dist/account/entities/account.entity.d.ts +0 -26
  105. package/dist/account/entities/account.entity.js +0 -199
  106. package/dist/account/entities/account.entity.js.map +0 -1
  107. package/dist/account/entities/fee-associated-object.entity.d.ts +0 -6
  108. package/dist/account/entities/fee-associated-object.entity.js +0 -52
  109. package/dist/account/entities/fee-associated-object.entity.js.map +0 -1
  110. package/dist/account/index.d.ts +0 -6
  111. package/dist/account/index.js +0 -10
  112. package/dist/account/index.js.map +0 -1
  113. package/dist/account/interfaces/account.repository.interface.d.ts +0 -3
  114. package/dist/account/interfaces/account.repository.interface.js +0 -3
  115. package/dist/account/interfaces/account.repository.interface.js.map +0 -1
  116. package/dist/account-system-entity/index.d.ts +0 -2
  117. package/dist/account-system-entity/index.js +0 -6
  118. package/dist/account-system-entity/index.js.map +0 -1
  119. package/dist/account-system-entity/post-history.entity.d.ts +0 -11
  120. package/dist/account-system-entity/post-history.entity.js +0 -65
  121. package/dist/account-system-entity/post-history.entity.js.map +0 -1
  122. package/dist/base/account-system.interface.d.ts +0 -7
  123. package/dist/base/account-system.interface.js +0 -3
  124. package/dist/base/account-system.interface.js.map +0 -1
  125. package/dist/base/address.base.abstract.d.ts +0 -4
  126. package/dist/base/address.base.abstract.js +0 -10
  127. package/dist/base/address.base.abstract.js.map +0 -1
  128. package/dist/base/base.address.d.ts +0 -8
  129. package/dist/base/base.address.js +0 -15
  130. package/dist/base/base.address.js.map +0 -1
  131. package/dist/base/base.object.d.ts +0 -7
  132. package/dist/base/base.object.js +0 -14
  133. package/dist/base/base.object.js.map +0 -1
  134. package/dist/base/base.owner.d.ts +0 -23
  135. package/dist/base/base.owner.js +0 -34
  136. package/dist/base/base.owner.js.map +0 -1
  137. package/dist/base/base.repository.abstract.d.ts +0 -12
  138. package/dist/base/base.repository.abstract.js +0 -22
  139. package/dist/base/base.repository.abstract.js.map +0 -1
  140. package/dist/base/base.repository.interface.d.ts +0 -9
  141. package/dist/base/base.repository.interface.js +0 -3
  142. package/dist/base/base.repository.interface.js.map +0 -1
  143. package/dist/base/index.d.ts +0 -4
  144. package/dist/base/index.js +0 -10
  145. package/dist/base/index.js.map +0 -1
  146. package/dist/base/object/base.object.abstract.d.ts +0 -5
  147. package/dist/base/object/base.object.abstract.js +0 -7
  148. package/dist/base/object/base.object.abstract.js.map +0 -1
  149. package/dist/base/object/base.object.d.ts +0 -7
  150. package/dist/base/object/base.object.js +0 -14
  151. package/dist/base/object/base.object.js.map +0 -1
  152. package/dist/base/object/object.interface.d.ts +0 -4
  153. package/dist/base/object/object.interface.js +0 -3
  154. package/dist/base/object/object.interface.js.map +0 -1
  155. package/dist/base/object.base.abstract.d.ts +0 -5
  156. package/dist/base/object.base.abstract.js +0 -11
  157. package/dist/base/object.base.abstract.js.map +0 -1
  158. package/dist/base/owner/base.owner.abstract.d.ts +0 -20
  159. package/dist/base/owner/base.owner.abstract.js +0 -8
  160. package/dist/base/owner/base.owner.abstract.js.map +0 -1
  161. package/dist/base/owner/base.owner.d.ts +0 -22
  162. package/dist/base/owner/base.owner.js +0 -31
  163. package/dist/base/owner/base.owner.js.map +0 -1
  164. package/dist/base/owner/owner.interface.d.ts +0 -19
  165. package/dist/base/owner/owner.interface.js +0 -3
  166. package/dist/base/owner/owner.interface.js.map +0 -1
  167. package/dist/base/person.base.abstract.d.ts +0 -21
  168. package/dist/base/person.base.abstract.js +0 -17
  169. package/dist/base/person.base.abstract.js.map +0 -1
  170. package/dist/base/repository/base.repository.abstract.d.ts +0 -12
  171. package/dist/base/repository/base.repository.abstract.js +0 -22
  172. package/dist/base/repository/base.repository.abstract.js.map +0 -1
  173. package/dist/base/repository/base.repository.interface.d.ts +0 -9
  174. package/dist/base/repository/base.repository.interface.js +0 -3
  175. package/dist/base/repository/base.repository.interface.js.map +0 -1
  176. package/dist/customer/customer.repository.d.ts +0 -0
  177. package/dist/customer/customer.repository.js +0 -1
  178. package/dist/customer/customer.repository.js.map +0 -1
  179. package/dist/customer/entities/customer.entity.d.ts +0 -13
  180. package/dist/customer/entities/customer.entity.js +0 -111
  181. package/dist/customer/entities/customer.entity.js.map +0 -1
  182. package/dist/customer/index.d.ts +0 -7
  183. package/dist/customer/index.js +0 -10
  184. package/dist/customer/index.js.map +0 -1
  185. package/dist/document/entities/document-item.entity.d.ts +0 -27
  186. package/dist/document/entities/document-item.entity.js +0 -174
  187. package/dist/document/entities/document-item.entity.js.map +0 -1
  188. package/dist/document/entities/document.entity.d.ts +0 -22
  189. package/dist/document/entities/document.entity.js +0 -139
  190. package/dist/document/entities/document.entity.js.map +0 -1
  191. package/dist/document/index.d.ts +0 -11
  192. package/dist/document/index.js +0 -20
  193. package/dist/document/index.js.map +0 -1
  194. package/dist/document/interfaces/document.repository.interface.d.ts +0 -3
  195. package/dist/document/interfaces/document.repository.interface.js +0 -3
  196. package/dist/document/interfaces/document.repository.interface.js.map +0 -1
  197. package/dist/enum/document-type.enum.d.ts +0 -7
  198. package/dist/enum/document-type.enum.js +0 -12
  199. package/dist/enum/document-type.enum.js.map +0 -1
  200. package/dist/enum/intuit-client.enum.d.ts +0 -13
  201. package/dist/enum/intuit-client.enum.js +0 -19
  202. package/dist/enum/intuit-client.enum.js.map +0 -1
  203. package/dist/finance-company/entities/finance-company.entity.d.ts +0 -13
  204. package/dist/finance-company/entities/finance-company.entity.js +0 -113
  205. package/dist/finance-company/entities/finance-company.entity.js.map +0 -1
  206. package/dist/finance-company/finance-company.entity.d.ts +0 -13
  207. package/dist/finance-company/finance-company.entity.js +0 -66
  208. package/dist/finance-company/finance-company.entity.js.map +0 -1
  209. package/dist/finance-company/index.d.ts +0 -3
  210. package/dist/finance-company/index.js +0 -8
  211. package/dist/finance-company/index.js.map +0 -1
  212. package/dist/finance-company/interfaces/finance-company-attr.interface.d.ts +0 -10
  213. package/dist/finance-company/interfaces/finance-company-attr.interface.js +0 -3
  214. package/dist/finance-company/interfaces/finance-company-attr.interface.js.map +0 -1
  215. package/dist/finance-company/interfaces/finance-company.repository.interface.d.ts +0 -3
  216. package/dist/finance-company/interfaces/finance-company.repository.interface.js +0 -3
  217. package/dist/finance-company/interfaces/finance-company.repository.interface.js.map +0 -1
  218. package/dist/interfaces/account-system-entity.interface.d.ts +0 -7
  219. package/dist/interfaces/account-system-entity.interface.js +0 -3
  220. package/dist/interfaces/account-system-entity.interface.js.map +0 -1
  221. package/dist/interfaces/customer.repository.interface.d.ts +0 -3
  222. package/dist/interfaces/customer.repository.interface.js +0 -3
  223. package/dist/interfaces/customer.repository.interface.js.map +0 -1
  224. package/dist/interfaces/finance-customer.repository.interface.d.ts +0 -3
  225. package/dist/interfaces/finance-customer.repository.interface.js +0 -3
  226. package/dist/interfaces/finance-customer.repository.interface.js.map +0 -1
  227. package/dist/interfaces/systemConfig.interface.d.ts +0 -0
  228. package/dist/interfaces/systemConfig.interface.js +0 -1
  229. package/dist/interfaces/systemConfig.interface.js.map +0 -1
  230. package/dist/intuit-client/client.d.ts +0 -14
  231. package/dist/intuit-client/client.js +0 -44
  232. package/dist/intuit-client/client.js.map +0 -1
  233. package/dist/journal-entry/entities/journal-entry.entity.d.ts +0 -16
  234. package/dist/journal-entry/entities/journal-entry.entity.js +0 -129
  235. package/dist/journal-entry/entities/journal-entry.entity.js.map +0 -1
  236. package/dist/journal-entry/index.d.ts +0 -6
  237. package/dist/journal-entry/index.js +0 -10
  238. package/dist/journal-entry/index.js.map +0 -1
  239. package/dist/journal-entry/interfaces/journal-entry.repository.interface.d.ts +0 -10
  240. package/dist/journal-entry/interfaces/journal-entry.repository.interface.js +0 -3
  241. package/dist/journal-entry/interfaces/journal-entry.repository.interface.js.map +0 -1
  242. package/dist/ledger-transaction/entities/ledger-transaction.entity.d.ts +0 -19
  243. package/dist/ledger-transaction/entities/ledger-transaction.entity.js +0 -157
  244. package/dist/ledger-transaction/entities/ledger-transaction.entity.js.map +0 -1
  245. package/dist/ledger-transaction/index.d.ts +0 -6
  246. package/dist/ledger-transaction/index.js +0 -10
  247. package/dist/ledger-transaction/index.js.map +0 -1
  248. package/dist/payment/entities/payment-item.entity.d.ts +0 -10
  249. package/dist/payment/entities/payment-item.entity.js +0 -62
  250. package/dist/payment/entities/payment-item.entity.js.map +0 -1
  251. package/dist/payment/entities/payment.entity.d.ts +0 -25
  252. package/dist/payment/entities/payment.entity.js +0 -152
  253. package/dist/payment/entities/payment.entity.js.map +0 -1
  254. package/dist/payment/index.d.ts +0 -10
  255. package/dist/payment/index.js +0 -18
  256. package/dist/payment/index.js.map +0 -1
  257. package/dist/payment/interfaces/payment-item-attr.interface.d.ts +0 -8
  258. package/dist/payment/interfaces/payment-item-attr.interface.js +0 -7
  259. package/dist/payment/interfaces/payment-item-attr.interface.js.map +0 -1
  260. package/dist/payment/interfaces/payment-item.repository.interface.d.ts +0 -3
  261. package/dist/payment/interfaces/payment-item.repository.interface.js +0 -3
  262. package/dist/payment/interfaces/payment-item.repository.interface.js.map +0 -1
  263. package/dist/payment/interfaces/payment.repository.interface.d.ts +0 -3
  264. package/dist/payment/interfaces/payment.repository.interface.js +0 -3
  265. package/dist/payment/interfaces/payment.repository.interface.js.map +0 -1
  266. package/dist/payment/payment-item.repository.d.ts +0 -5
  267. package/dist/payment/payment-item.repository.js +0 -12
  268. package/dist/payment/payment-item.repository.js.map +0 -1
  269. package/dist/payment-item/interfaces/payment-item.repository.interface.d.ts +0 -3
  270. package/dist/payment-item/interfaces/payment-item.repository.interface.js +0 -3
  271. package/dist/payment-item/interfaces/payment-item.repository.interface.js.map +0 -1
  272. package/dist/quickbook-client/client.d.ts +0 -39
  273. package/dist/quickbook-client/client.js +0 -205
  274. package/dist/quickbook-client/client.js.map +0 -1
  275. package/dist/quickbook-client/constant.d.ts +0 -1
  276. package/dist/quickbook-client/constant.js +0 -5
  277. package/dist/quickbook-client/constant.js.map +0 -1
  278. package/dist/quickbook-client/index.d.ts +0 -5
  279. package/dist/quickbook-client/index.js +0 -6
  280. package/dist/quickbook-client/index.js.map +0 -1
  281. package/dist/quickbook-client/interfaces/quickbook-client-call-options.interface.d.ts +0 -6
  282. package/dist/quickbook-client/interfaces/quickbook-client-call-options.interface.js +0 -3
  283. package/dist/quickbook-client/interfaces/quickbook-client-call-options.interface.js.map +0 -1
  284. package/dist/quickbook-client/interfaces/quickbook-client-create-account-options.interface.d.ts +0 -9
  285. package/dist/quickbook-client/interfaces/quickbook-client-create-account-options.interface.js +0 -3
  286. package/dist/quickbook-client/interfaces/quickbook-client-create-account-options.interface.js.map +0 -1
  287. package/dist/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.d.ts +0 -7
  288. package/dist/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.js +0 -3
  289. package/dist/quickbook-client/interfaces/quickbook-client-create-customer-options.interface.js.map +0 -1
  290. package/dist/quickbook-client/interfaces/quickbook-client-options.interface.d.ts +0 -8
  291. package/dist/quickbook-client/interfaces/quickbook-client-options.interface.js +0 -3
  292. package/dist/quickbook-client/interfaces/quickbook-client-options.interface.js.map +0 -1
  293. package/dist/quickbook-client/quickbook-client.module-definition.d.ts +0 -2
  294. package/dist/quickbook-client/quickbook-client.module-definition.js +0 -9
  295. package/dist/quickbook-client/quickbook-client.module-definition.js.map +0 -1
  296. package/dist/quickbook-client/quickbook-client.module.d.ts +0 -6
  297. package/dist/quickbook-client/quickbook-client.module.js +0 -34
  298. package/dist/quickbook-client/quickbook-client.module.js.map +0 -1
@@ -1,19 +1,19 @@
1
- import { PaymentType, PaymentStatus } from '../../enum';
2
-
3
- export class IPaymentAttr {
4
- PaymentId: string;
5
- PaymentType: PaymentType;
6
- PaymentDate: Date;
7
- Description: string;
8
- Currency: string;
9
- Amount: number;
10
- Status: PaymentStatus;
11
- ReceivedBy: string;
12
- UpdatedAt: Date;
13
- UpdatedBy: string;
14
- Remarks?: string;
15
- AccSystemRefId?: string;
16
- PostedToAccSystemYN: string;
17
- PostedById?: string;
18
- PostedDateTime?: Date;
19
- }
1
+ import { PaymentType, PaymentStatus } from '../../enum';
2
+
3
+ export class IPaymentAttr {
4
+ PaymentId: string;
5
+ PaymentType: PaymentType;
6
+ PaymentDate: Date;
7
+ Description: string;
8
+ Currency: string;
9
+ Amount: number;
10
+ Status: PaymentStatus;
11
+ ReceivedBy: string;
12
+ UpdatedAt: Date;
13
+ UpdatedBy: string;
14
+ Remarks?: string;
15
+ AccSystemRefId?: string;
16
+ PostedToAccSystemYN: string;
17
+ PostedById?: string;
18
+ PostedDateTime?: Date;
19
+ }
@@ -1,8 +1,8 @@
1
- import { PaymentMethod, PaymentType } from '../../enum';
2
-
3
- export interface IPaymentParams {
4
- Currency?: string;
5
- Method?: PaymentMethod;
6
- MethodParty?: string;
7
- PaymentType?: PaymentType;
8
- }
1
+ import { PaymentMethod, PaymentType } from '../../enum';
2
+
3
+ export interface IPaymentParams {
4
+ Currency?: string;
5
+ Method?: PaymentMethod;
6
+ MethodParty?: string;
7
+ PaymentType?: PaymentType;
8
+ }
@@ -1,11 +1,11 @@
1
- import { RepositoryBase, IRepositoryBase } from '@tomei/general';
2
- import PaymentModel from '../models/payment.entity';
3
-
4
- export class PaymentRepository
5
- extends RepositoryBase<PaymentModel>
6
- implements IRepositoryBase<PaymentModel>
7
- {
8
- constructor() {
9
- super(PaymentModel);
10
- }
11
- }
1
+ import { RepositoryBase, IRepositoryBase } from '@tomei/general';
2
+ import PaymentModel from '../models/payment.entity';
3
+
4
+ export class PaymentRepository
5
+ extends RepositoryBase<PaymentModel>
6
+ implements IRepositoryBase<PaymentModel>
7
+ {
8
+ constructor() {
9
+ super(PaymentModel);
10
+ }
11
+ }
@@ -1,208 +1,208 @@
1
- import { ObjectBase, RecordNotFoundError } from '@tomei/general';
2
- import { PaymentType } from '../enum';
3
- import { IPaymentParams } from './interfaces/payment-params.interface';
4
- import { AccountSystemEntity } from '../account-system-entity/account-system-entity';
5
- import { PaymentStatus } from '../enum/payment-status.enum';
6
- import { PaymentRepository } from './payment.repository';
7
- import { PaymentItemRepository } from '../payment-item/payment-item.repository';
8
- // import PaymentItemModel from '../models/payment-item.entity';
9
- import PaymentItem from '../payment-item/payment-item';
10
- import PaymentPaidWith from '../payment-paid-with/payment-paid-with';
11
- import { PaymentPaidWithRepository } from '../payment-paid-with/payment-paid-with.repository';
12
-
13
- export default class Payment extends AccountSystemEntity {
14
- private _PaymentId = 'New';
15
- PaymentType: PaymentType;
16
- PaymentDate: Date;
17
- Description = '';
18
- Currency = 'MYR';
19
- Amount = 0;
20
- Status: PaymentStatus;
21
- ReceivedBy = '';
22
- UpdatedBy = '';
23
- UpdatedAt: Date;
24
- Remarks = '';
25
-
26
- private static _RepositoryBase = new PaymentRepository();
27
- private static _PaymentItemRepository = new PaymentItemRepository();
28
- private static _PaymentPaidWithRepository = new PaymentPaidWithRepository();
29
-
30
- private _DbTransaction: any;
31
- private _PaymentItems = [];
32
- private _PaymentPaidWith = [];
33
-
34
- paymentItemRepository: PaymentItemRepository;
35
-
36
- public get PaymentId() {
37
- return this._PaymentId;
38
- }
39
-
40
- public set PaymentId(id: string) {
41
- this._PaymentId = id;
42
- }
43
-
44
- /* AccountSystemEntity Implementation */
45
- get RepositoryBase() {
46
- return Payment._RepositoryBase;
47
- }
48
-
49
- /* ObjectBase Implementation */
50
- get ObjectId() {
51
- return this.PaymentId;
52
- }
53
-
54
- get ObjectName() {
55
- return this.PaymentId;
56
- }
57
-
58
- get TableName() {
59
- return 'finance_Payment';
60
- }
61
-
62
- constructor(dbTransaction?: any, paymentId?: string) {
63
- super();
64
- if (dbTransaction) {
65
- this._DbTransaction = dbTransaction;
66
- }
67
- if (paymentId) {
68
- this.RepositoryBase.findOne({
69
- where: {
70
- PaymentId: paymentId,
71
- },
72
- transaction: dbTransaction,
73
- })
74
- .then((paymentData) => {
75
- if (paymentData) {
76
- this.PaymentType = paymentData.PaymentType;
77
- this.PaymentDate = paymentData.PaymentDate;
78
- this.Description = paymentData.Description;
79
- this.Currency = paymentData.Currency;
80
- this.Amount = paymentData.Amount;
81
- this.Status = paymentData.Status;
82
- this.ReceivedBy = paymentData.ReceivedBy;
83
- this.UpdatedAt = paymentData.UpdatedAt;
84
- this.UpdatedBy = paymentData.UpdatedBy;
85
- this.Remarks = paymentData.Remarks;
86
- this.AccSystemRefId = paymentData.AccSystemRefId;
87
- this.PostedToAccSystemYN = paymentData.PostedToAccSystemYN;
88
- this.PostedById = paymentData.PostedById;
89
- this.PostedDateTime = paymentData.PostedDateTime;
90
- } else {
91
- const notFoundError = new RecordNotFoundError('No Record Found.');
92
- throw notFoundError;
93
- }
94
- })
95
- .catch((err) => {
96
- // tslint:disable-next-line:no-console
97
- console.log('Payment Class constructor err: ', err);
98
- });
99
- }
100
- }
101
-
102
- // public get PaymentItems() {
103
- // if (this._PaymentItems === null) {
104
- // this._PaymentItems = new Array<PaymentItemModel>();
105
- // if (this.PaymentId !== 'New') {
106
- // this.paymentItemRepository
107
- // .findAll({
108
- // where: {
109
- // PaymentId: this.PaymentId,
110
- // },
111
- // })
112
- // .then((allPaymentItems) => {
113
- // this._PaymentItems = allPaymentItems;
114
- // });
115
- // }
116
- // }
117
-
118
- // return this._PaymentItems;
119
- // }
120
-
121
- get PaymentItems(): Promise<PaymentItem[]> {
122
- return new Promise((resolve, reject) => {
123
- if (this.PaymentId !== 'New') {
124
- Payment._PaymentItemRepository
125
- .findAll({
126
- where: {
127
- PaymentId: this.PaymentId,
128
- },
129
- transaction: this._DbTransaction,
130
- })
131
- .then((paymentItems) => {
132
- const paymentItemObjects = paymentItems.map((paymentItem) => {
133
- new PaymentItem(
134
- new Payment(this._DbTransaction, paymentItem.PaymentId),
135
- {
136
- ObjectId: this.ObjectId,
137
- ObjectName: this.ObjectName,
138
- TableName: this.TableName,
139
- },
140
- );
141
- });
142
- return Promise.all(paymentItemObjects);
143
- })
144
- .then((paymentItemObjects) => {
145
- this._PaymentItems = paymentItemObjects;
146
- resolve(this._PaymentItems);
147
- })
148
- .catch((err) => {
149
- reject(err);
150
- });
151
- }
152
- resolve(this._PaymentItems);
153
- });
154
- }
155
-
156
- get PaymentPaidWith(): Promise<PaymentPaidWith[]> {
157
- return new Promise((resolve, reject) => {
158
- if (this.PaymentId !== 'New') {
159
- Payment._PaymentPaidWithRepository
160
- .findAll({
161
- where: {
162
- PaymentId: this.PaymentId,
163
- },
164
- transaction: this._DbTransaction,
165
- })
166
- .then((paymentPaidWithItems) => {
167
- const paymentPaidWithObjects = paymentPaidWithItems.map(
168
- (paymentPaidWithItem) => {
169
- new PaymentPaidWith(
170
- new Payment(
171
- this._DbTransaction,
172
- paymentPaidWithItem.PaymentId,
173
- ),
174
- paymentPaidWithItem.MethodTypeId,
175
- );
176
- },
177
- );
178
- return Promise.all(paymentPaidWithObjects);
179
- })
180
- .then((paymentPaidWithObjects) => {
181
- this._PaymentPaidWith = paymentPaidWithObjects;
182
- resolve(this._PaymentPaidWith);
183
- })
184
- .catch((err) => {
185
- reject(err);
186
- });
187
- }
188
- resolve(this._PaymentItems);
189
- });
190
- }
191
-
192
- newPaymentItem(objectBeingPaidFor: ObjectBase): PaymentItem {
193
- const paymentItem = new PaymentItem(this, objectBeingPaidFor);
194
- this._PaymentItems.push(paymentItem);
195
- return paymentItem;
196
- }
197
-
198
- newPaymentPaidWIth(paymentMethodId: string) {
199
- const paymentPaidWith = new PaymentPaidWith(this, paymentMethodId);
200
- this._PaymentPaidWith.push(paymentPaidWith);
201
- return paymentPaidWith;
202
- }
203
-
204
- init(Params: IPaymentParams): void {
205
- if (Params.Currency) this.Currency = Params.Currency;
206
- if (Params.PaymentType) this.PaymentType = Params.PaymentType;
207
- }
208
- }
1
+ import { ObjectBase, RecordNotFoundError } from '@tomei/general';
2
+ import { PaymentType } from '../enum';
3
+ import { IPaymentParams } from './interfaces/payment-params.interface';
4
+ import { AccountSystemEntity } from '../account-system-entity/account-system-entity';
5
+ import { PaymentStatus } from '../enum/payment-status.enum';
6
+ import { PaymentRepository } from './payment.repository';
7
+ import { PaymentItemRepository } from '../payment-item/payment-item.repository';
8
+ // import PaymentItemModel from '../models/payment-item.entity';
9
+ import PaymentItem from '../payment-item/payment-item';
10
+ import PaymentPaidWith from '../payment-paid-with/payment-paid-with';
11
+ import { PaymentPaidWithRepository } from '../payment-paid-with/payment-paid-with.repository';
12
+
13
+ export default class Payment extends AccountSystemEntity {
14
+ private _PaymentId = 'New';
15
+ PaymentType: PaymentType;
16
+ PaymentDate: Date;
17
+ Description = '';
18
+ Currency = 'MYR';
19
+ Amount = 0;
20
+ Status: PaymentStatus;
21
+ ReceivedBy = '';
22
+ UpdatedBy = '';
23
+ UpdatedAt: Date;
24
+ Remarks = '';
25
+
26
+ private static _RepositoryBase = new PaymentRepository();
27
+ private static _PaymentItemRepository = new PaymentItemRepository();
28
+ private static _PaymentPaidWithRepository = new PaymentPaidWithRepository();
29
+
30
+ private _DbTransaction: any;
31
+ private _PaymentItems = [];
32
+ private _PaymentPaidWith = [];
33
+
34
+ paymentItemRepository: PaymentItemRepository;
35
+
36
+ public get PaymentId() {
37
+ return this._PaymentId;
38
+ }
39
+
40
+ public set PaymentId(id: string) {
41
+ this._PaymentId = id;
42
+ }
43
+
44
+ /* AccountSystemEntity Implementation */
45
+ get RepositoryBase() {
46
+ return Payment._RepositoryBase;
47
+ }
48
+
49
+ /* ObjectBase Implementation */
50
+ get ObjectId() {
51
+ return this.PaymentId;
52
+ }
53
+
54
+ get ObjectName() {
55
+ return this.PaymentId;
56
+ }
57
+
58
+ get TableName() {
59
+ return 'finance_Payment';
60
+ }
61
+
62
+ constructor(dbTransaction?: any, paymentId?: string) {
63
+ super();
64
+ if (dbTransaction) {
65
+ this._DbTransaction = dbTransaction;
66
+ }
67
+ if (paymentId) {
68
+ this.RepositoryBase.findOne({
69
+ where: {
70
+ PaymentId: paymentId,
71
+ },
72
+ transaction: dbTransaction,
73
+ })
74
+ .then((paymentData) => {
75
+ if (paymentData) {
76
+ this.PaymentType = paymentData.PaymentType;
77
+ this.PaymentDate = paymentData.PaymentDate;
78
+ this.Description = paymentData.Description;
79
+ this.Currency = paymentData.Currency;
80
+ this.Amount = paymentData.Amount;
81
+ this.Status = paymentData.Status;
82
+ this.ReceivedBy = paymentData.ReceivedBy;
83
+ this.UpdatedAt = paymentData.UpdatedAt;
84
+ this.UpdatedBy = paymentData.UpdatedBy;
85
+ this.Remarks = paymentData.Remarks;
86
+ this.AccSystemRefId = paymentData.AccSystemRefId;
87
+ this.PostedToAccSystemYN = paymentData.PostedToAccSystemYN;
88
+ this.PostedById = paymentData.PostedById;
89
+ this.PostedDateTime = paymentData.PostedDateTime;
90
+ } else {
91
+ const notFoundError = new RecordNotFoundError('No Record Found.');
92
+ throw notFoundError;
93
+ }
94
+ })
95
+ .catch((err) => {
96
+ // tslint:disable-next-line:no-console
97
+ console.log('Payment Class constructor err: ', err);
98
+ });
99
+ }
100
+ }
101
+
102
+ // public get PaymentItems() {
103
+ // if (this._PaymentItems === null) {
104
+ // this._PaymentItems = new Array<PaymentItemModel>();
105
+ // if (this.PaymentId !== 'New') {
106
+ // this.paymentItemRepository
107
+ // .findAll({
108
+ // where: {
109
+ // PaymentId: this.PaymentId,
110
+ // },
111
+ // })
112
+ // .then((allPaymentItems) => {
113
+ // this._PaymentItems = allPaymentItems;
114
+ // });
115
+ // }
116
+ // }
117
+
118
+ // return this._PaymentItems;
119
+ // }
120
+
121
+ get PaymentItems(): Promise<PaymentItem[]> {
122
+ return new Promise((resolve, reject) => {
123
+ if (this.PaymentId !== 'New') {
124
+ Payment._PaymentItemRepository
125
+ .findAll({
126
+ where: {
127
+ PaymentId: this.PaymentId,
128
+ },
129
+ transaction: this._DbTransaction,
130
+ })
131
+ .then((paymentItems) => {
132
+ const paymentItemObjects = paymentItems.map((paymentItem) => {
133
+ new PaymentItem(
134
+ new Payment(this._DbTransaction, paymentItem.PaymentId),
135
+ {
136
+ ObjectId: this.ObjectId,
137
+ ObjectName: this.ObjectName,
138
+ TableName: this.TableName,
139
+ },
140
+ );
141
+ });
142
+ return Promise.all(paymentItemObjects);
143
+ })
144
+ .then((paymentItemObjects) => {
145
+ this._PaymentItems = paymentItemObjects;
146
+ resolve(this._PaymentItems);
147
+ })
148
+ .catch((err) => {
149
+ reject(err);
150
+ });
151
+ }
152
+ resolve(this._PaymentItems);
153
+ });
154
+ }
155
+
156
+ get PaymentPaidWith(): Promise<PaymentPaidWith[]> {
157
+ return new Promise((resolve, reject) => {
158
+ if (this.PaymentId !== 'New') {
159
+ Payment._PaymentPaidWithRepository
160
+ .findAll({
161
+ where: {
162
+ PaymentId: this.PaymentId,
163
+ },
164
+ transaction: this._DbTransaction,
165
+ })
166
+ .then((paymentPaidWithItems) => {
167
+ const paymentPaidWithObjects = paymentPaidWithItems.map(
168
+ (paymentPaidWithItem) => {
169
+ new PaymentPaidWith(
170
+ new Payment(
171
+ this._DbTransaction,
172
+ paymentPaidWithItem.PaymentId,
173
+ ),
174
+ paymentPaidWithItem.MethodTypeId,
175
+ );
176
+ },
177
+ );
178
+ return Promise.all(paymentPaidWithObjects);
179
+ })
180
+ .then((paymentPaidWithObjects) => {
181
+ this._PaymentPaidWith = paymentPaidWithObjects;
182
+ resolve(this._PaymentPaidWith);
183
+ })
184
+ .catch((err) => {
185
+ reject(err);
186
+ });
187
+ }
188
+ resolve(this._PaymentItems);
189
+ });
190
+ }
191
+
192
+ newPaymentItem(objectBeingPaidFor: ObjectBase): PaymentItem {
193
+ const paymentItem = new PaymentItem(this, objectBeingPaidFor);
194
+ this._PaymentItems.push(paymentItem);
195
+ return paymentItem;
196
+ }
197
+
198
+ newPaymentPaidWIth(paymentMethodId: string) {
199
+ const paymentPaidWith = new PaymentPaidWith(this, paymentMethodId);
200
+ this._PaymentPaidWith.push(paymentPaidWith);
201
+ return paymentPaidWith;
202
+ }
203
+
204
+ init(Params: IPaymentParams): void {
205
+ if (Params.Currency) this.Currency = Params.Currency;
206
+ if (Params.PaymentType) this.PaymentType = Params.PaymentType;
207
+ }
208
+ }
@@ -1,10 +1,10 @@
1
- export class IPaymentItemAttr {
2
- PaymentId: string;
3
- PayForObjectId: string;
4
- PayForObjectType: string;
5
- Currency: string;
6
- Amount: number;
7
- Name?: string;
8
- Description: string;
9
- Remarks?: string;
10
- }
1
+ export class IPaymentItemAttr {
2
+ PaymentId: string;
3
+ PayForObjectId: string;
4
+ PayForObjectType: string;
5
+ Currency: string;
6
+ Amount: number;
7
+ Name?: string;
8
+ Description: string;
9
+ Remarks?: string;
10
+ }
@@ -1,11 +1,11 @@
1
- import { RepositoryBase, IRepositoryBase } from '@tomei/general';
2
- import PaymentItemModel from '../models/payment-item.entity';
3
-
4
- export class PaymentItemRepository
5
- extends RepositoryBase<PaymentItemModel>
6
- implements IRepositoryBase<PaymentItemModel>
7
- {
8
- constructor() {
9
- super(PaymentItemModel);
10
- }
11
- }
1
+ import { RepositoryBase, IRepositoryBase } from '@tomei/general';
2
+ import PaymentItemModel from '../models/payment-item.entity';
3
+
4
+ export class PaymentItemRepository
5
+ extends RepositoryBase<PaymentItemModel>
6
+ implements IRepositoryBase<PaymentItemModel>
7
+ {
8
+ constructor() {
9
+ super(PaymentItemModel);
10
+ }
11
+ }
@@ -1,58 +1,58 @@
1
- import { ObjectBase } from '@tomei/general';
2
- import Payment from '../payment/payment';
3
- import type from '../helpers/typeof';
4
-
5
- export default class PaymentItem extends ObjectBase {
6
- private _PaymentId = '';
7
- private _PayForObjectId = '';
8
- private _PayForObjectType = '';
9
- Currency = 'MYR';
10
- Amount = 0;
11
- Name = '';
12
- Description = '';
13
- Remarks = '';
14
-
15
- get PaymentId() {
16
- return this._PaymentId;
17
- }
18
-
19
- private set PaymentId(id: string) {
20
- this._PaymentId = id;
21
- }
22
-
23
- get PayForObjectId() {
24
- return this._PayForObjectId;
25
- }
26
-
27
- private set PayForObjectId(id: string) {
28
- this._PayForObjectId = id;
29
- }
30
-
31
- get PayForObjectType(): string {
32
- return this._PayForObjectType;
33
- }
34
-
35
- private set PayForObjectType(type: string) {
36
- this._PayForObjectType = type;
37
- }
38
-
39
- /* ObjectBase Implementation */
40
- get ObjectId() {
41
- return '';
42
- }
43
-
44
- get ObjectName() {
45
- return '';
46
- }
47
-
48
- get TableName() {
49
- return 'finance_PaymentItem';
50
- }
51
-
52
- constructor(payment: Payment, objectBeingPaidFor: ObjectBase) {
53
- super();
54
- this.PaymentId = payment.PaymentId;
55
- this.PayForObjectId = objectBeingPaidFor.ObjectId;
56
- this.PayForObjectType = type(objectBeingPaidFor);
57
- }
58
- }
1
+ import { ObjectBase } from '@tomei/general';
2
+ import Payment from '../payment/payment';
3
+ import type from '../helpers/typeof';
4
+
5
+ export default class PaymentItem extends ObjectBase {
6
+ private _PaymentId = '';
7
+ private _PayForObjectId = '';
8
+ private _PayForObjectType = '';
9
+ Currency = 'MYR';
10
+ Amount = 0;
11
+ Name = '';
12
+ Description = '';
13
+ Remarks = '';
14
+
15
+ get PaymentId() {
16
+ return this._PaymentId;
17
+ }
18
+
19
+ private set PaymentId(id: string) {
20
+ this._PaymentId = id;
21
+ }
22
+
23
+ get PayForObjectId() {
24
+ return this._PayForObjectId;
25
+ }
26
+
27
+ private set PayForObjectId(id: string) {
28
+ this._PayForObjectId = id;
29
+ }
30
+
31
+ get PayForObjectType(): string {
32
+ return this._PayForObjectType;
33
+ }
34
+
35
+ private set PayForObjectType(type: string) {
36
+ this._PayForObjectType = type;
37
+ }
38
+
39
+ /* ObjectBase Implementation */
40
+ get ObjectId() {
41
+ return '';
42
+ }
43
+
44
+ get ObjectName() {
45
+ return '';
46
+ }
47
+
48
+ get TableName() {
49
+ return 'finance_PaymentItem';
50
+ }
51
+
52
+ constructor(payment: Payment, objectBeingPaidFor: ObjectBase) {
53
+ super();
54
+ this.PaymentId = payment.PaymentId;
55
+ this.PayForObjectId = objectBeingPaidFor.ObjectId;
56
+ this.PayForObjectType = type(objectBeingPaidFor);
57
+ }
58
+ }