feat: implement bank accounts, branches, and banks modules with CRUD operations

- Added BankAccountsController, BankAccountsService, and related DTOs for managing bank accounts.
- Implemented BankBranchesController, BankBranchesService, and related DTOs for managing bank branches.
- Created BanksController and BanksService for retrieving bank information.
- Integrated Prisma for database operations across all modules.
- Added response mapping for consistent API responses.
This commit is contained in:
2025-12-24 21:24:59 +03:30
parent 89c57a69c1
commit cbe51b9343
105 changed files with 18512 additions and 11840 deletions
+35
View File
@@ -0,0 +1,35 @@
model BankBranch {
id Int @id @default(autoincrement())
name String @db.VarChar(255)
code String @unique() @db.VarChar(10)
address String? @db.VarChar(500)
createdAt DateTime @default(now()) @db.Timestamp(0)
updatedAt DateTime @updatedAt @db.Timestamp(0)
deletedAt DateTime? @db.Timestamp(0)
bankId Int
bank Bank @relation("bank_branches", fields: [bankId], references: [id])
bankAccounts BankAccount[] @relation("Bank_Accounts_branchId_fkey")
@@map("Bank_Branches")
}
model BankAccount {
id Int @id @default(autoincrement())
accountNumber String? @unique @db.VarChar(20)
cardNumber String? @unique @db.VarChar(16)
name String @db.VarChar(255)
iban String? @db.VarChar(34)
branchId Int
createdAt DateTime @default(now()) @db.Timestamp(0)
updatedAt DateTime @updatedAt @db.Timestamp(0)
deletedAt DateTime? @db.Timestamp(0)
branch BankBranch @relation("Bank_Accounts_branchId_fkey", fields: [branchId], references: [id])
inventories Inventory[] @relation("Bank_Accounts_inventoryId_fkey")
purchaseReceiptPayments PurchaseReceiptPayments[]
posAccounts PosAccount[]
inventoryBankAccounts InventoryBankAccount[] @relation("Inventory_Bank_Accounts_bankAccountId_fkey")
@@map("Bank_Accounts")
}