4 Commits

Author SHA1 Message Date
Nut.ไปเรื่อย 2fbb0b3d51 feat: add Thai date selector, HTML prototypes, and SQL script
- Replace xlsx with exceljs in construction calculator; switch date input to Thai Buddhist Era selectors
- Add disbursement plan preview HTML and schedule table prototype
- Add sync_budget_come_from SQL script
- Add budget type select menu design plan

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-24 10:13:05 +07:00
Nut.ไปเรื่อย 4e51959fa6 fix: apply last-row rounding correction to Excel export 2026-05-28 12:59:11 +07:00
Nut.ไปเรื่อย 43e37df39f fix: correct rounding drift, XSS hazard, nookPct coupling, confirm guard, BE filename
- Rounding drift: last installment computed as remainder (contract - cumSoFar) so column sums match exactly
- XSS: input values set via .value property assignment instead of attribute interpolation in innerHTML
- nookPct: getInputs() now derives nookPct as 100 - ngpmPct (single source of truth)
- Confirm guard: onCountChange only prompts when n differs from current installments.length
- Export filename: uses Buddhist Era year (getFullYear() + 543) consistent with all date displays
2026-05-28 12:58:28 +07:00
Nut.ไปเรื่อย 097478a3dd feat: add construction installment calculator (single HTML) 2026-05-28 12:52:25 +07:00