CaseCommentModule
Agrega y consulta comentarios de un caso. Thread-safe.
Ejemplo General
```python
comments = client.caso().comment()
comments.add(AddCommentRequest.builder().caso_id("c1").comment("Hola").build())
```
Métodos
def __init__(config: ShoriConfig, http: HttpExecutor) -> None
Parámetros:
config(ShoriConfig) —http(HttpExecutor) —
def add(request: AddCommentRequest | Mapping[str, Any]) -> AddCommentResponse
Agrega un comentario a un caso existente.
Parámetros:
request(AddCommentRequest | Mapping[str, Any]) —AddCommentRequestodict(casoIdycommentobligatorios).
Retorna: AddCommentResponse — AddCommentResponse con el comentario creado.
Lanza:
ValidationException— Si el builder se construye sincaso_idocomment.pydantic.ValidationError— Si el dict no cumple el modelo.ResourceNotFoundException— Si el caso no existe.
Ejemplo de uso:
```python
resp = client.caso().comment().add(
AddCommentRequest.builder()
.caso_id("caso-uuid")
.comment("Se envió la documentación")
.build()
)
```
def search(filter: CommentFilter) -> CommentSearchResult
Busca comentarios de un caso (una página).
Parámetros:
filter(CommentFilter) —CommentFilter(caso_idobligatorio).
Retorna: CommentSearchResult — CommentSearchResult con comments, count y num_elements.
Ejemplo de uso:
```python
page = client.caso().comment().search(
CommentFilter.builder().caso_id("caso-uuid").page_size(10).build()
)
for c in page.comments or []:
print(c.created_at, c.user_name, c.comment)
```
def search_all(filter: CommentFilter) -> list[CommentResponse]
Busca TODOS los comentarios de un caso, paginando automáticamente (iterativo).
Parámetros:
filter(CommentFilter) —CommentFilter.
Retorna: list[CommentResponse] — Lista de CommentResponse de todas las páginas.
Ejemplo de uso:
```python
todos = client.caso().comment().search_all(
CommentFilter.builder().caso_id("caso-uuid").page_size(200).build()
)
```