Files
Investidor-V2/docs/investmoz/simulations/l1-g7h-readonly-rollback-20261024.patch
T
2026-10-24 23:12:48 +02:00

11 lines
1.4 KiB
Diff

--- a/resources/js/lib/iva-value-review.ts
+++ b/resources/js/lib/iva-value-review.ts
@@ -54,6 +54,7 @@
function key(draft:Record<string,unknown>,book:ValueReviewBook):string{return JSON.stringify({version:valueReviewVersion,scope:acquisitionScope(draft),location:draft.selection_labels??{},currency:draft.currency,rows:book.rows});}
export function valueReviewCurrent(draft:Record<string,unknown>,book:ValueReviewBook):boolean{return!!book.result&&book.result.sourceKey===key(draft,book);}
export function recordValueReviews(draft:Record<string,unknown>,book:ValueReviewBook):ValueReviewBook{
+ throw new Error('Novas bases P103 temporariamente suspensas; dados, histórico, relatórios e restantes ramos preservados.');
if(!book.rows.length||new Set(book.rows.map(row=>row.id)).size!==book.rows.length)throw new Error('Indique operações com identificadores distintos;originais conservados.');
const result:ValueReviewCalculation={version:valueReviewVersion,revision:(book.result?.revision??0)+1,calculatedAt:new Date().toISOString(),opportunity:acquisitionScope(draft),location:JSON.stringify(draft.selection_labels??{}),sourceKey:key(draft,book),source:valueReviewSource,inputs:structuredClone(book.rows),rows:book.rows.map(row=>evaluateValueReview(row,draft.currency))};
const next={...book,result,history:[...(book.history??[]),...(book.result?[book.result]:[])]};saveValueReviewBook(draft,next);return next;