Files
roa2web-service-auto/features/TRIAL_BALANCE_PROMPT.md
Marius Mutu 6c373c609e fix: Update Trial Balance to use real VBAL VIEW structure
After database verification, VBAL is a VIEW (not a table) that exists
in each company schema with a different structure than initially assumed.

Backend Changes:
- Updated models (trial_balance.py):
  - Changed column names to match real VBAL VIEW
  - CONT (account number)
  - DENUMIRE (account description, not DCONT)
  - PRECDEB/PRECCRED (previous balance, not SD_PREC/SC_PREC)
  - RULDEB/RULCRED (monthly movement, not RD_LUNA/RC_LUNA)
  - SOLDDEB/SOLDCRED (final balance, not SD_FINAL/SC_FINAL)
  - Made DENUMIRE optional (can be NULL in VIEW)

- Updated router (trial_balance.py):
  - Removed COD_FIRMA filter (not in VIEW)
  - Query now uses: {schema}.VBAL WHERE AN = :an AND LUNA = :luna
  - Fixed column names in SELECT (DENUMIRE instead of DCONT)
  - Updated sort columns validation
  - Fixed result processing to match new column order

Frontend Changes:
- Updated TrialBalanceView.vue:
  - Changed field from 'dcont' to 'denumire' in DataTable column

Database Verification:
- VBAL VIEW confirmed in ROMFAST schema (24,217 records)
- Current data available up to November 2025
- Structure verified with 22 columns
- VIEW exists in all company schemas

Testing Notes:
- Backend endpoint ready for testing
- Frontend field names now match API response
- Ready for manual testing with real company data

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-20 00:57:14 +02:00

3.3 KiB

🎯 Prompt pentru Implementare Balanță de Verificare

Promptul de folosit:

Implementează feature-ul "Balanță de Verificare" conform specificațiilor din features/TRIAL_BALANCE_FEATURE.md.

Cerințe:
1. Creează branch nou: feature/trial-balance
2. Implementează toate fazele (0-6) în ordine
3. Urmărește progresul actualizând statusul fazelor în TRIAL_BALANCE_FEATURE.md
4. Respectă STRICT arhitectura CSS (ONBOARDING_CSS.md, CSS_PATTERNS.md) - fără :deep(), doar pattern-uri existente
5. Testează manual după fiecare fază înainte de a trece la următoarea

Prioritate: Phases 0-4 (backend + frontend + navigare)
Phases 5-6 (testing + PR) - opțional pentru MVP

Start cu Phase 0: Preparation & Branch Setup.

Sau versiunea extinsă:

# Task: Implementare completă Balanță de Verificare (Trial Balance)

## Context
Implementează o pagină nouă în frontend pentru afișarea balanței de verificare sintetice din Oracle VBAL cu filtrare, paginare și integrare completă în aplicație.

## Specificații
Vezi: features/TRIAL_BALANCE_FEATURE.md

## Plan de lucru
1. **Phase 0**: Setup branch feature/trial-balance + verificare VBAL table
2. **Phase 1**: Backend API (schemas + router + endpoint GET /api/trial-balance)
3. **Phase 2**: Frontend Store (Pinia trialBalanceStore)
4. **Phase 3**: Frontend View (TrialBalanceView.vue cu DataTable)
5. **Phase 4**: Routing + Menu (router.js + HamburgerMenu.vue)
6. **Phase 5**: Testing manual + E2E (opțional)
7. **Phase 6**: Documentation + PR

## Reguli CRITICE
✅ Respectă CSS architecture: DOAR pattern-uri din CSS_PATTERNS.md, FĂRĂ :deep()
✅ Folosește design tokens (var(--color-primary), var(--spacing-4))
✅ Testează manual după fiecare fază
✅ Actualizează progresul în TRIAL_BALANCE_FEATURE.md la finalul fiecărei faze

## Start
Începe cu Phase 0 și confirmă structura tabelului VBAL înainte de a trece la Phase 1.

Urmărește progresul în features/TRIAL_BALANCE_FEATURE.md actualizând:
- Status fază: 🔲 → 🔄 → ✅
- Checkboxes task-uri: [ ] → [x]
- Overall Progress: X% Complete

Alternative scurte pentru faze individuale:

Pentru Phase 1 (Backend):

Implementează Phase 1 din features/TRIAL_BALANCE_FEATURE.md:
- Creează schemas/trial_balance.py (TrialBalanceItem, Request, Response)
- Creează routers/trial_balance.py (GET /api/trial-balance cu filtering/pagination)
- Testează cu curl/Postman
- Marchează task-urile ca [x] în feature file

Pentru Phase 3 (Frontend View):

Implementează Phase 3 din features/TRIAL_BALANCE_FEATURE.md:
- Creează TrialBalanceView.vue
- Folosește DOAR pattern-uri CSS existente (.roa-card, .roa-page-header)
- FĂRĂ :deep(), FĂRĂ custom CSS
- DataTable cu coloane: Cont, Denumire, Sold Prec (D/C), Rulaj Lunar (D/C), Sold Final (D/C)
- Marchează task-urile ca [x] în feature file

Tips pentru urmărire progres:

Actualizează manual în TRIAL_BALANCE_FEATURE.md:

### ✅ Phase 1: Backend API Implementation
**Status**: ✅ Completed

**Tasks**:
- [x] Create Pydantic schema
- [x] Create router
- [x] Register router in main.py
- [x] Test endpoint manually

Apoi actualizează Overall Progress:

### Overall Progress
- **Phase 0**: ✅ Completed (100%)
- **Phase 1**: ✅ Completed (100%)
- **Phase 2**: 🔄 In Progress (50%)
...

**Total Progress**: 35% Complete