feat(tickets): exclui visitas da listagem principal de tickets
All checks were successful
CI/CD Web + Desktop / Detect changes (push) Successful in 5s
Quality Checks / Lint, Test and Build (push) Successful in 3m49s
CI/CD Web + Desktop / Deploy Convex functions (push) Has been skipped
CI/CD Web + Desktop / Deploy (VPS Linux) (push) Successful in 3m47s

- Adiciona filtro excludeVisits no estado de filtros
- Aplica excludeVisits: true em /tickets e /tickets/resolved
- Visitas agora aparecem apenas em /tickets/visits

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
rever-tecnologia 2025-12-17 16:27:22 -03:00
parent 0a36ed049f
commit cd3305f1e3
4 changed files with 9 additions and 2 deletions

View file

@ -24,7 +24,7 @@ export function TicketsResolvedPageClient() {
}
>
<div className="flex flex-col gap-6">
<TicketsView initialFilters={{ view: "completed" }} />
<TicketsView initialFilters={{ view: "completed", excludeVisits: true }} />
</div>
</AppShell>
)

View file

@ -35,6 +35,7 @@ type TicketsPageClientProps = {
}
export function TicketsPageClient({ initialFilters }: TicketsPageClientProps = {}) {
const mergedFilters = { excludeVisits: true, ...initialFilters }
return (
<AppShell
header={
@ -49,7 +50,7 @@ export function TicketsPageClient({ initialFilters }: TicketsPageClientProps = {
<div className="px-4 lg:px-6">
<TicketQueueSummaryCards />
</div>
<TicketsView initialFilters={initialFilters} />
<TicketsView initialFilters={mergedFilters} />
</div>
</AppShell>
)

View file

@ -194,6 +194,9 @@ export function TicketsView({ initialFilters }: TicketsViewProps = {}) {
if (filters.focusVisits) {
working = working.filter((t) => isVisitTicket(t))
}
if (filters.excludeVisits) {
working = working.filter((t) => !isVisitTicket(t))
}
if (filters.categoryId) {
working = working.filter((t) => (t.category?.id ?? null) === filters.categoryId)
}
@ -219,6 +222,7 @@ export function TicketsView({ initialFilters }: TicketsViewProps = {}) {
filters.view,
filters.company,
filters.focusVisits,
filters.excludeVisits,
filters.categoryId,
filters.dateFrom,
filters.dateTo,

View file

@ -11,6 +11,7 @@ export type TicketFiltersState = {
categoryId: string | null
view: "active" | "completed"
focusVisits: boolean
excludeVisits: boolean
dateFrom: string | null
dateTo: string | null
sort: "recent" | "oldest"
@ -27,6 +28,7 @@ export const defaultTicketFilters: TicketFiltersState = {
categoryId: null,
view: "active",
focusVisits: false,
excludeVisits: false,
dateFrom: null,
dateTo: null,
sort: "recent",