Projeto do Agent Contas ORACLE

This commit is contained in:
2026-08-19 09:35:50 -03:00
commit 950a2bcd33
1366 changed files with 177217 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
from __future__ import annotations
from dataclasses import dataclass, field
from decimal import Decimal
from typing import Any, Literal, Optional
@dataclass(frozen=True, slots=True)
class ResolvedInvoiceItem:
canonical_name: str
tool_category: Optional[Literal["cancelar_vas_avulso", "vas_estrategico", "pro_rata"]]
item_type: Literal["avulso", "estrategico", "bundle", "plano", "out_of_scope"]
msisdn: str
value: Optional[Decimal]
section: str
charge_date: Optional[str] = None
raw_entry: dict[str, Any] = field(default_factory=dict)
@dataclass(frozen=True, slots=True)
class MentionedItem:
desc: str
msisdn: Optional[str] = None
value: Optional[str] = None
date: Optional[str] = None
def is_period_range(period: Any) -> bool:
text = str(period)
return " a " in text or "~" in text