Files
Odoo-Modules/fusion_plating
gsinghpal 3bed76aea4 feat(sub12b): persistent state machine on fp.job.step.timelog
Extends the existing timelog (used by S1/S2 battle tests) with:
- state: running / paused / stopped / reconciled (default running)
- last_paused_at + total_paused_seconds (drives accrued compute)
- accrued_seconds (compute, depends date_started/_finished/paused)
- billed_hrs/min/sec + billed_total_seconds + billed_pct (compute)
- product_id (split-by-product reconciliation per screen 10)
- notes
- job_id (related, indexed — for fp.job.active_timer_ids O2M)

Field naming follows the existing date_started / date_finished
convention (NOT started_at / stopped_at as my plan said — adjusted
inline to match what's already in the file).

The existing battle tests use the timelog without state — default
'running' so they're unaffected. State only flips when Sub 12b's
Stop Timer dialog commits.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-27 21:08:22 -04:00
..
2026-04-20 13:07:15 -04:00
2026-04-16 20:53:53 -04:00
2026-04-26 15:05:17 -04:00
2026-04-27 00:11:18 -04:00
2026-04-16 20:53:53 -04:00
2026-04-27 00:11:18 -04:00
2026-04-16 20:53:53 -04:00
2026-04-27 00:11:18 -04:00
2026-04-16 20:53:53 -04:00
2026-04-27 09:41:46 -04:00
2026-04-27 00:11:18 -04:00
2026-04-16 20:53:53 -04:00
2026-04-20 01:16:12 -04:00
2026-04-16 20:53:53 -04:00
2026-04-27 08:16:20 -04:00
2026-04-27 09:41:46 -04:00
2026-04-27 00:11:18 -04:00
2026-04-16 20:53:53 -04:00
2026-04-16 20:53:53 -04:00
2026-04-24 21:04:38 -04:00
2026-04-20 01:16:12 -04:00
2026-04-27 08:48:55 -04:00
2026-04-20 01:16:12 -04:00
2026-04-16 20:53:53 -04:00