checkpoint: goals feature, wallet balance, and goals/wallet detail UI
- Add goals feature (models, migrations, API, web pages) - Add reserved/centralized wallet balance service - Add wallet detail page and overview components - Add new UI components (progress, multi-select, FAB) - Remove stray empty -H/-d files from working tree
This commit is contained in:
51
apps/api/dist/wallets/wallets.controller.js
vendored
Normal file → Executable file
51
apps/api/dist/wallets/wallets.controller.js
vendored
Normal file → Executable file
@@ -16,13 +16,16 @@ exports.WalletsController = void 0;
|
||||
const common_1 = require("@nestjs/common");
|
||||
const wallets_service_1 = require("./wallets.service");
|
||||
const transactions_service_1 = require("../transactions/transactions.service");
|
||||
const wallet_balance_service_1 = require("./wallet-balance.service");
|
||||
const auth_guard_1 = require("../auth/auth.guard");
|
||||
let WalletsController = class WalletsController {
|
||||
wallets;
|
||||
transactions;
|
||||
constructor(wallets, transactions) {
|
||||
walletBalance;
|
||||
constructor(wallets, transactions, walletBalance) {
|
||||
this.wallets = wallets;
|
||||
this.transactions = transactions;
|
||||
this.walletBalance = walletBalance;
|
||||
}
|
||||
list(req) {
|
||||
return this.wallets.list(req.user.userId);
|
||||
@@ -30,6 +33,34 @@ let WalletsController = class WalletsController {
|
||||
async getAllTransactions(req) {
|
||||
return this.transactions.listAll(req.user.userId);
|
||||
}
|
||||
async getAllBalances(req) {
|
||||
try {
|
||||
console.log('[BalanceController] Getting balances for user:', req.user.userId);
|
||||
const balances = await this.walletBalance.getAllUserWalletBalances(req.user.userId);
|
||||
console.log('[BalanceController] Got balances:', balances.length);
|
||||
const result = balances.map(balance => ({
|
||||
walletId: balance.walletId,
|
||||
kind: balance.kind,
|
||||
currency: balance.currency,
|
||||
unit: balance.unit,
|
||||
totalBalance: Number(balance.totalBalance),
|
||||
reservedBalance: Number(balance.reservedBalance),
|
||||
availableBalance: Number(balance.availableBalance),
|
||||
totalUnits: balance.totalUnits ? Number(balance.totalUnits) : undefined,
|
||||
pricePerUnit: balance.pricePerUnit ? Number(balance.pricePerUnit) : undefined,
|
||||
totalValue: balance.totalValue ? Number(balance.totalValue) : undefined,
|
||||
}));
|
||||
console.log('[BalanceController] Returning:', result);
|
||||
return result;
|
||||
}
|
||||
catch (error) {
|
||||
console.error('[BalanceController] Error getting balances:', error);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
getOne(req, id) {
|
||||
return this.wallets.getOne(req.user.userId, id);
|
||||
}
|
||||
create(req, body) {
|
||||
if (!body?.name) {
|
||||
return { error: 'name is required' };
|
||||
@@ -64,6 +95,21 @@ __decorate([
|
||||
__metadata("design:paramtypes", [Object]),
|
||||
__metadata("design:returntype", Promise)
|
||||
], WalletsController.prototype, "getAllTransactions", null);
|
||||
__decorate([
|
||||
(0, common_1.Get)('balances'),
|
||||
__param(0, (0, common_1.Req)()),
|
||||
__metadata("design:type", Function),
|
||||
__metadata("design:paramtypes", [Object]),
|
||||
__metadata("design:returntype", Promise)
|
||||
], WalletsController.prototype, "getAllBalances", null);
|
||||
__decorate([
|
||||
(0, common_1.Get)(':id'),
|
||||
__param(0, (0, common_1.Req)()),
|
||||
__param(1, (0, common_1.Param)('id')),
|
||||
__metadata("design:type", Function),
|
||||
__metadata("design:paramtypes", [Object, String]),
|
||||
__metadata("design:returntype", void 0)
|
||||
], WalletsController.prototype, "getOne", null);
|
||||
__decorate([
|
||||
(0, common_1.Post)(),
|
||||
__param(0, (0, common_1.Req)()),
|
||||
@@ -101,6 +147,7 @@ exports.WalletsController = WalletsController = __decorate([
|
||||
(0, common_1.Controller)('wallets'),
|
||||
(0, common_1.UseGuards)(auth_guard_1.AuthGuard),
|
||||
__metadata("design:paramtypes", [wallets_service_1.WalletsService,
|
||||
transactions_service_1.TransactionsService])
|
||||
transactions_service_1.TransactionsService,
|
||||
wallet_balance_service_1.WalletBalanceService])
|
||||
], WalletsController);
|
||||
//# sourceMappingURL=wallets.controller.js.map
|
||||
Reference in New Issue
Block a user