Clarify data cleanup ownership
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 46s
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 46s
This commit is contained in:
@@ -218,9 +218,17 @@ const PlanningIssues = () => {
|
|||||||
<div>
|
<div>
|
||||||
<h1 className="mb-2 text-2xl font-bold text-zinc-900 dark:text-dark-text">Dados Pendentes</h1>
|
<h1 className="mb-2 text-2xl font-bold text-zinc-900 dark:text-dark-text">Dados Pendentes</h1>
|
||||||
<p className="font-medium text-zinc-500 dark:text-dark-muted">
|
<p className="font-medium text-zinc-500 dark:text-dark-muted">
|
||||||
Fila de SKUs com informações faltando para corte e planejamento.
|
Fila principal para revisar tipo, cor, tamanho, família e rendimento dos SKUs.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
<div className="flex flex-col gap-3 sm:flex-row sm:items-center 2xl:justify-end">
|
||||||
|
<Link
|
||||||
|
to="/registrations"
|
||||||
|
className="inline-flex h-10 items-center justify-center gap-2 rounded-xl border border-dark-border bg-dark-card px-4 text-sm font-bold text-dark-text transition-colors hover:border-brand-primary"
|
||||||
|
>
|
||||||
|
<PackageSearch className="h-4 w-4 text-brand-primary" />
|
||||||
|
Cadastros
|
||||||
|
</Link>
|
||||||
<DateRangePicker
|
<DateRangePicker
|
||||||
dateRange={dateRange}
|
dateRange={dateRange}
|
||||||
onChange={(range) => {
|
onChange={(range) => {
|
||||||
@@ -229,6 +237,7 @@ const PlanningIssues = () => {
|
|||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<RefreshStatus isRefreshing={isRefreshing} />
|
<RefreshStatus isRefreshing={isRefreshing} />
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { useEffect, useMemo, useRef, useState } from 'react';
|
import { useEffect, useMemo, useRef, useState } from 'react';
|
||||||
import { useSearchParams } from 'react-router-dom';
|
import { Link, useSearchParams } from 'react-router-dom';
|
||||||
import { Loader2, Package, RefreshCw, Ruler, Save, Tags, Trash2 } from 'lucide-react';
|
import { ClipboardList, Loader2, Package, RefreshCw, Ruler, Save, Tags, Trash2 } from 'lucide-react';
|
||||||
import {
|
import {
|
||||||
deleteCatalogCategory,
|
deleteCatalogCategory,
|
||||||
deleteCatalogProduct,
|
deleteCatalogProduct,
|
||||||
@@ -340,7 +340,7 @@ const Registrations = () => {
|
|||||||
const tabItems: Array<{ key: RegistrationTab; label: string; icon: typeof Package; count: number }> = [
|
const tabItems: Array<{ key: RegistrationTab; label: string; icon: typeof Package; count: number }> = [
|
||||||
{ key: 'products', label: 'Produtos', icon: Package, count: catalog.products.length },
|
{ key: 'products', label: 'Produtos', icon: Package, count: catalog.products.length },
|
||||||
{ key: 'categories', label: 'Categorias', icon: Tags, count: catalog.categories.length },
|
{ key: 'categories', label: 'Categorias', icon: Tags, count: catalog.categories.length },
|
||||||
{ key: 'references', label: 'Referencia de Consumo', icon: Ruler, count: catalog.consumptionReferences.length }
|
{ key: 'references', label: 'Referência de Consumo', icon: Ruler, count: catalog.consumptionReferences.length }
|
||||||
];
|
];
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@@ -349,18 +349,27 @@ const Registrations = () => {
|
|||||||
<div>
|
<div>
|
||||||
<h1 className="mb-2 text-2xl font-bold text-zinc-900 dark:text-dark-text">Cadastros</h1>
|
<h1 className="mb-2 text-2xl font-bold text-zinc-900 dark:text-dark-text">Cadastros</h1>
|
||||||
<p className="font-medium text-zinc-500 dark:text-dark-muted">
|
<p className="font-medium text-zinc-500 dark:text-dark-muted">
|
||||||
Base de produtos, categorias e referencias de consumo usadas pelo corte.
|
Fonte de verdade para produtos, matérias-primas e referências de consumo.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
<div className="flex flex-wrap gap-2">
|
||||||
|
<Link
|
||||||
|
to="/planning-issues"
|
||||||
|
className="inline-flex h-10 items-center justify-center gap-2 rounded-xl border border-dark-border bg-dark-card px-4 text-sm font-bold text-dark-text transition-colors hover:border-brand-primary"
|
||||||
|
>
|
||||||
|
<ClipboardList className="h-4 w-4 text-brand-primary" />
|
||||||
|
Dados Pendentes
|
||||||
|
</Link>
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
onClick={() => void loadCatalog()}
|
onClick={() => void loadCatalog()}
|
||||||
className="inline-flex items-center justify-center gap-2 rounded-xl border border-dark-border bg-dark-card px-4 py-2.5 text-sm font-bold text-dark-text transition-colors hover:border-brand-primary cursor-pointer"
|
className="inline-flex h-10 items-center justify-center gap-2 rounded-xl border border-dark-border bg-dark-card px-4 text-sm font-bold text-dark-text transition-colors hover:border-brand-primary cursor-pointer"
|
||||||
>
|
>
|
||||||
<RefreshCw className="h-4 w-4 text-brand-primary" />
|
<RefreshCw className="h-4 w-4 text-brand-primary" />
|
||||||
Atualizar
|
Atualizar
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div className="grid grid-cols-1 gap-3 md:grid-cols-3">
|
<div className="grid grid-cols-1 gap-3 md:grid-cols-3">
|
||||||
{tabItems.map(item => {
|
{tabItems.map(item => {
|
||||||
|
|||||||
Reference in New Issue
Block a user