feat: Add FAB with asset price update, mobile optimizations, and localized financial trend

- Add Floating Action Button (FAB) with 3 quick actions
- Implement Asset Price Update dialog for bulk price updates
- Add bulk price update API endpoint with transaction support
- Optimize multiselect, calendar, and dropdown options for mobile (44px touch targets)
- Add custom date range popover to save space in Overview header
- Localize number format suffixes (k/m/b for EN, rb/jt/m for ID)
- Localize date format in Financial Trend (Oct 8 vs 8 Okt)
- Fix negative values in trend line chart (domain auto)
- Improve Asset Price Update dialog layout (compact horizontal)
- Add mobile-optimized calendar with responsive cells
- Fix FAB overlay and close button position
- Add translations for FAB and asset price updates
This commit is contained in:
dwindown
2025-10-12 23:30:54 +07:00
parent 46488a09e2
commit 49d60676d0
33 changed files with 1340 additions and 444 deletions

View File

@@ -67,6 +67,17 @@ let WalletsService = class WalletsService {
data: updateData,
});
}
async bulkUpdatePrices(userId, updates) {
const results = await this.prisma.$transaction(updates.map((update) => this.prisma.wallet.update({
where: { id: update.walletId, userId, kind: 'asset' },
data: { pricePerUnit: update.pricePerUnit },
})));
return {
success: true,
updated: results.length,
wallets: results,
};
}
delete(userId, id) {
return this.prisma.wallet.update({
where: { id, userId },