@things-factory/accounting 8.0.0-alpha.3 → 8.0.0-alpha.31

Sign up to get free protection for your applications and to get access to all the features.
Files changed (121) hide show
  1. package/client/pages/accounting-category/accounting-category-tree-page.ts +1 -1
  2. package/client/pages/bank/bank-importer.ts +90 -0
  3. package/client/pages/bank/bank-list-page.ts +398 -0
  4. package/client/pages/bank-account/bank-account-importer.ts +90 -0
  5. package/client/pages/bank-account/bank-account-list-page.ts +398 -0
  6. package/client/pages/financial-institution/financial-institution-importer.ts +90 -0
  7. package/client/pages/financial-institution/financial-institution-list-page.ts +398 -0
  8. package/dist-client/pages/accounting-category/accounting-category-tree-page.js +1 -1
  9. package/dist-client/pages/accounting-category/accounting-category-tree-page.js.map +1 -1
  10. package/dist-client/pages/bank/bank-importer.d.ts +23 -0
  11. package/dist-client/pages/bank/bank-importer.js +93 -0
  12. package/dist-client/pages/bank/bank-importer.js.map +1 -0
  13. package/dist-client/pages/bank/bank-list-page.d.ts +66 -0
  14. package/dist-client/pages/bank/bank-list-page.js +370 -0
  15. package/dist-client/pages/bank/bank-list-page.js.map +1 -0
  16. package/dist-client/pages/bank-account/bank-account-importer.d.ts +23 -0
  17. package/dist-client/pages/bank-account/bank-account-importer.js +93 -0
  18. package/dist-client/pages/bank-account/bank-account-importer.js.map +1 -0
  19. package/dist-client/pages/bank-account/bank-account-list-page.d.ts +66 -0
  20. package/dist-client/pages/bank-account/bank-account-list-page.js +370 -0
  21. package/dist-client/pages/bank-account/bank-account-list-page.js.map +1 -0
  22. package/dist-client/pages/financial-institution/financial-institution-importer.d.ts +23 -0
  23. package/dist-client/pages/financial-institution/financial-institution-importer.js +93 -0
  24. package/dist-client/pages/financial-institution/financial-institution-importer.js.map +1 -0
  25. package/dist-client/pages/financial-institution/financial-institution-list-page.d.ts +66 -0
  26. package/dist-client/pages/financial-institution/financial-institution-list-page.js +370 -0
  27. package/dist-client/pages/financial-institution/financial-institution-list-page.js.map +1 -0
  28. package/dist-client/tsconfig.tsbuildinfo +1 -1
  29. package/dist-server/migrations/1725201567284-seed-country-codes.d.ts +5 -0
  30. package/dist-server/migrations/1725201567284-seed-country-codes.js +248 -0
  31. package/dist-server/migrations/1725201567284-seed-country-codes.js.map +1 -0
  32. package/dist-server/migrations/1725201667385-seed-financial-institutions.d.ts +5 -0
  33. package/dist-server/migrations/1725201667385-seed-financial-institutions.js +348 -0
  34. package/dist-server/migrations/1725201667385-seed-financial-institutions.js.map +1 -0
  35. package/dist-server/service/account/account-history.js +7 -2
  36. package/dist-server/service/account/account-history.js.map +1 -1
  37. package/dist-server/service/accounting-category/accounting-category-history.js +7 -2
  38. package/dist-server/service/accounting-category/accounting-category-history.js.map +1 -1
  39. package/dist-server/service/accounting-document/accounting-document-history.js +7 -2
  40. package/dist-server/service/accounting-document/accounting-document-history.js.map +1 -1
  41. package/dist-server/service/bank-account/bank-account-history.d.ts +34 -0
  42. package/dist-server/service/bank-account/bank-account-history.js +172 -0
  43. package/dist-server/service/bank-account/bank-account-history.js.map +1 -0
  44. package/dist-server/service/bank-account/bank-account-mutation.d.ts +10 -0
  45. package/dist-server/service/bank-account/bank-account-mutation.js +128 -0
  46. package/dist-server/service/bank-account/bank-account-mutation.js.map +1 -0
  47. package/dist-server/service/bank-account/bank-account-query.d.ts +11 -0
  48. package/dist-server/service/bank-account/bank-account-query.js +79 -0
  49. package/dist-server/service/bank-account/bank-account-query.js.map +1 -0
  50. package/dist-server/service/bank-account/bank-account-type.d.ts +39 -0
  51. package/dist-server/service/bank-account/bank-account-type.js +153 -0
  52. package/dist-server/service/bank-account/bank-account-type.js.map +1 -0
  53. package/dist-server/service/bank-account/bank-account.d.ts +38 -0
  54. package/dist-server/service/bank-account/bank-account.js +164 -0
  55. package/dist-server/service/bank-account/bank-account.js.map +1 -0
  56. package/dist-server/service/bank-account/event-subscriber.d.ts +7 -0
  57. package/dist-server/service/bank-account/event-subscriber.js +21 -0
  58. package/dist-server/service/bank-account/event-subscriber.js.map +1 -0
  59. package/dist-server/service/bank-account/index.d.ts +7 -0
  60. package/dist-server/service/bank-account/index.js +12 -0
  61. package/dist-server/service/bank-account/index.js.map +1 -0
  62. package/dist-server/service/financial-institution/financial-institution-mutation.d.ts +10 -0
  63. package/dist-server/service/financial-institution/financial-institution-mutation.js +169 -0
  64. package/dist-server/service/financial-institution/financial-institution-mutation.js.map +1 -0
  65. package/dist-server/service/financial-institution/financial-institution-query.d.ts +12 -0
  66. package/dist-server/service/financial-institution/financial-institution-query.js +97 -0
  67. package/dist-server/service/financial-institution/financial-institution-query.js.map +1 -0
  68. package/dist-server/service/financial-institution/financial-institution-type.d.ts +32 -0
  69. package/dist-server/service/financial-institution/financial-institution-type.js +126 -0
  70. package/dist-server/service/financial-institution/financial-institution-type.js.map +1 -0
  71. package/dist-server/service/financial-institution/financial-institution.d.ts +34 -0
  72. package/dist-server/service/financial-institution/financial-institution.js +137 -0
  73. package/dist-server/service/financial-institution/financial-institution.js.map +1 -0
  74. package/dist-server/service/financial-institution/index.d.ts +6 -0
  75. package/dist-server/service/financial-institution/index.js +10 -0
  76. package/dist-server/service/financial-institution/index.js.map +1 -0
  77. package/dist-server/service/financial-statement/financial-statement-history.js +7 -2
  78. package/dist-server/service/financial-statement/financial-statement-history.js.map +1 -1
  79. package/dist-server/service/income-statement/income-statement-history.js +7 -2
  80. package/dist-server/service/income-statement/income-statement-history.js.map +1 -1
  81. package/dist-server/service/index.d.ts +1 -1
  82. package/dist-server/service/payment/index.d.ts +1 -2
  83. package/dist-server/service/payment/payment-history.d.ts +8 -1
  84. package/dist-server/service/payment/payment-history.js +48 -12
  85. package/dist-server/service/payment/payment-history.js.map +1 -1
  86. package/dist-server/service/payment/payment-type.d.ts +7 -1
  87. package/dist-server/service/payment/payment-type.js +24 -0
  88. package/dist-server/service/payment/payment-type.js.map +1 -1
  89. package/dist-server/service/payment/payment.d.ts +12 -0
  90. package/dist-server/service/payment/payment.js +36 -1
  91. package/dist-server/service/payment/payment.js.map +1 -1
  92. package/dist-server/service/transaction/transaction-history.js +7 -2
  93. package/dist-server/service/transaction/transaction-history.js.map +1 -1
  94. package/dist-server/tsconfig.tsbuildinfo +1 -1
  95. package/helps/accounting/bank-account.md +160 -0
  96. package/helps/accounting/bank.md +160 -0
  97. package/helps/accounting/financial-institution.md +160 -0
  98. package/package.json +5 -5
  99. package/server/migrations/1725201567284-seed-country-codes.ts +261 -0
  100. package/server/migrations/1725201667385-seed-financial-institutions.ts +348 -0
  101. package/server/service/account/account-history.ts +8 -2
  102. package/server/service/accounting-category/accounting-category-history.ts +8 -2
  103. package/server/service/accounting-document/accounting-document-history.ts +8 -2
  104. package/server/service/bank-account/bank-account-history.ts +149 -0
  105. package/server/service/bank-account/bank-account-mutation.ts +137 -0
  106. package/server/service/bank-account/bank-account-query.ts +48 -0
  107. package/server/service/bank-account/bank-account-type.ts +112 -0
  108. package/server/service/bank-account/bank-account.ts +142 -0
  109. package/server/service/bank-account/event-subscriber.ts +17 -0
  110. package/server/service/bank-account/index.ts +9 -0
  111. package/server/service/financial-institution/financial-institution-mutation.ts +198 -0
  112. package/server/service/financial-institution/financial-institution-query.ts +62 -0
  113. package/server/service/financial-institution/financial-institution-type.ts +91 -0
  114. package/server/service/financial-institution/financial-institution.ts +122 -0
  115. package/server/service/financial-institution/index.ts +7 -0
  116. package/server/service/financial-statement/financial-statement-history.ts +8 -2
  117. package/server/service/income-statement/income-statement-history.ts +8 -2
  118. package/server/service/payment/payment-history.ts +49 -20
  119. package/server/service/payment/payment-type.ts +19 -1
  120. package/server/service/payment/payment.ts +31 -0
  121. package/server/service/transaction/transaction-history.ts +8 -2
@@ -15,6 +15,7 @@ import { ObjectType, Field, ID, registerEnumType } from 'type-graphql'
15
15
  import { Domain } from '@things-factory/shell'
16
16
  import { User } from '@things-factory/auth-base'
17
17
  import { Transaction } from '../transaction/transaction'
18
+ import { BankAccount } from 'service/bank-account/bank-account'
18
19
 
19
20
  export enum PaymentDirection {
20
21
  Incoming = 'Incoming', // 수금
@@ -26,6 +27,18 @@ registerEnumType(PaymentDirection, {
26
27
  description: 'Indicates whether the payment is incoming (received) or outgoing (paid)' // 결제 방향을 나타냅니다 (수금 또는 지출)
27
28
  })
28
29
 
30
+ export enum PaymentType {
31
+ Transfer = 'Transfer', // 계좌 이체
32
+ Cash = 'Cash', // 현금
33
+ CreditCard = 'CreditCard', // 신용카드
34
+ DebitCard = 'DebitCard' // 직불카드
35
+ }
36
+
37
+ registerEnumType(PaymentType, {
38
+ name: 'PaymentType',
39
+ description: 'Type of the payment (e.g., Transfer, Cash, CreditCard, DebitCard)' // 결제 유형을 나타냅니다
40
+ })
41
+
29
42
  @Entity()
30
43
  @Index('ix_payment_0', (payment: Payment) => [payment.domain, payment.transaction, payment.paidAt], {
31
44
  where: '"deleted_at" IS NULL',
@@ -71,6 +84,24 @@ export class Payment {
71
84
  @Field({ nullable: false, description: 'The amount of money involved in the payment' })
72
85
  amount: number // 결제된 금액
73
86
 
87
+ @Column({ type: 'enum', enum: PaymentType, nullable: false })
88
+ @Field(type => PaymentType, { description: 'Type of the payment' })
89
+ paymentType: PaymentType // 결제 유형
90
+
91
+ @ManyToOne(type => BankAccount, { nullable: true })
92
+ @Field(type => BankAccount, { nullable: true, description: 'Source bank account for the payment' })
93
+ sourceBankAccount?: BankAccount
94
+
95
+ @RelationId((payment: Payment) => payment.sourceBankAccount)
96
+ sourceBankAccountId?: string
97
+
98
+ @ManyToOne(type => BankAccount, { nullable: true })
99
+ @Field(type => BankAccount, { nullable: true, description: 'Destination bank account for the payment' })
100
+ destinationBankAccount?: BankAccount
101
+
102
+ @RelationId((payment: Payment) => payment.destinationBankAccount)
103
+ destinationBankAccountId?: string
104
+
74
105
  @Column({ nullable: true })
75
106
  @Field({ nullable: true, description: 'Fiscal year in which the payment was made' })
76
107
  year?: number // 결제가 발생한 회계 연도
@@ -148,8 +148,14 @@ export class TransactionHistory implements HistoryEntityInterface<Transaction> {
148
148
  ? 'enum'
149
149
  : DATABASE_TYPE == 'oracle'
150
150
  ? 'varchar2'
151
- : 'smallint',
152
- enum: HistoryActionType
151
+ : DATABASE_TYPE == 'mssql'
152
+ ? 'nvarchar'
153
+ : 'varchar',
154
+ enum:
155
+ DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb'
156
+ ? HistoryActionType
157
+ : undefined,
158
+ length: DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb' ? undefined : 10
153
159
  })
154
160
  public action!: HistoryActionType
155
161
  }