diff --git a/src/app/(protected)/crm/customers/page.tsx b/src/app/(protected)/crm/customers/page.tsx index c786ec3..d8f7a9e 100644 --- a/src/app/(protected)/crm/customers/page.tsx +++ b/src/app/(protected)/crm/customers/page.tsx @@ -196,7 +196,7 @@ const KYC_META: Record = { none: "NONE", silver: "SILVER", - gold: "GOLD", + gold: "Gold".toUpperCase(), platinum: "PLATINUM", } as const; @@ -793,10 +793,11 @@ export default function CustomersPage() {
{children}
); + // ✅ ปรับให้เหมือน Orders: ไม่ใช้ h-10 และใช้ py-2.5 const inputBase = - "h-10 w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 text-sm shadow-sm outline-none placeholder:text-neutral-400 focus:border-neutral-300 focus:ring-2 focus:ring-neutral-900/10"; + "w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 py-2.5 text-sm shadow-sm outline-none placeholder:text-neutral-400 focus:border-neutral-300"; const selectBase = - "appearance-none h-10 w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 text-sm shadow-sm outline-none focus:border-neutral-300 focus:ring-2 focus:ring-neutral-900/10"; + "appearance-none w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 py-2.5 text-sm shadow-sm outline-none focus:border-neutral-300"; const activeFilters = [ ...(q.trim() ? [{ key: "q", label: "ค้นหา", value: q.trim() }] : []), @@ -847,7 +848,7 @@ export default function CustomersPage() { {/* Filters */} -
+
@@ -945,7 +946,7 @@ export default function CustomersPage() { {activeFilters.length > 0 && (
{activeFilters.map((c) => ( - + {c.label}: {c.value} ))} -
diff --git a/src/app/(protected)/inventory/page.tsx b/src/app/(protected)/inventory/page.tsx index a7e4374..1faebad 100644 --- a/src/app/(protected)/inventory/page.tsx +++ b/src/app/(protected)/inventory/page.tsx @@ -5,7 +5,7 @@ import type { LucideIcon } from "lucide-react"; import { Package, Boxes, QrCode, Barcode, Building2, Store, Factory, CheckCircle2, ShieldAlert, ShieldX, Ban, AlertTriangle, Hourglass, - ArrowDownCircle, ArrowUpCircle, Truck, Shuffle, + ArrowDownCircle, Truck, Shuffle, Search, X as XIcon, Eraser, CircleSlash } from "lucide-react"; @@ -159,10 +159,10 @@ const renderQuality = (q: QualityStatus) => { }; const AVAIL_META: Record = { - in_stock: { label: U("In Stock"), Icon: CheckCircle2, tone: "ok" }, - oos: { label: U("Out of Stock"), Icon: CircleSlash, tone: "bad" }, - hold: { label: U("Hold"), Icon: Ban, tone: "warn" }, - quarantine: { label: U("Quarantine"), Icon: ShieldAlert, tone: "warn" }, + in_stock: { label: U("In Stock"), Icon: CheckCircle2, tone: "ok" }, + oos: { label: U("Out of Stock"), Icon: CircleSlash, tone: "bad" }, + hold: { label: U("Hold"), Icon: Ban, tone: "warn" }, + quarantine: { label: U("Quarantine"), Icon: ShieldAlert, tone: "warn" }, }; const renderAvailability = (a: Availability) => { const { Icon, label, tone } = AVAIL_META[a]; @@ -642,10 +642,11 @@ export default function InventoryPage() {
{children}
); + // ✅ ให้เข้ากับหน้าอื่น: ไม่ใช้ h-10 และใช้ py-2.5 const inputBase = - "h-10 w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 text-sm shadow-sm outline-none placeholder:text-neutral-400 focus:border-neutral-300 focus:ring-2 focus:ring-neutral-900/10"; + "w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 py-2.5 text-sm shadow-sm outline-none placeholder:text-neutral-400 focus:border-neutral-300"; const selectBase = - "appearance-none h-10 w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 text-sm shadow-sm outline-none focus:border-neutral-300 focus:ring-2 focus:ring-neutral-900/10"; + "appearance-none w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 py-2.5 text-sm shadow-sm outline-none focus:border-neutral-300"; const activeFilters = [ ...(q.trim() ? [{ key: "q", label: "ค้นหา", value: q.trim() }] : []), @@ -713,7 +714,7 @@ export default function InventoryPage() { value={q} onChange={(e) => setQ(e.target.value)} placeholder="รหัส/ชื่อ/SKU/แบรนด์/หมวด/ช่อง/ล็อต/ซีเรียล/แท็ก/โน้ต…" - className={`${"pl-9"} ${inputBase}`} + className={`pl-9 ${inputBase}`} />
diff --git a/src/app/(protected)/products/page.tsx b/src/app/(protected)/products/page.tsx index 580412e..c7e8cea 100644 --- a/src/app/(protected)/products/page.tsx +++ b/src/app/(protected)/products/page.tsx @@ -691,10 +691,11 @@ export default function ProductsPage() {
{children}
); + // ✅ โทนเดียวกับหน้าอื่น: ตัด h-10 ออก ใช้ py-2.5 และไม่ใส่ focus ring const inputBase = - "h-10 w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 text-sm shadow-sm outline-none placeholder:text-neutral-400 focus:border-neutral-300 focus:ring-2 focus:ring-neutral-900/10"; + "w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 py-2.5 text-sm shadow-sm outline-none placeholder:text-neutral-400 focus:border-neutral-300"; const selectBase = - "appearance-none h-10 w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 text-sm shadow-sm outline-none focus:border-neutral-300 focus:ring-2 focus:ring-neutral-900/10"; + "appearance-none w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 py-2.5 text-sm shadow-sm outline-none focus:border-neutral-300"; const activeFilters = [ ...(q.trim() ? [{ key: "q", label: "ค้นหา", value: q.trim() }] : []), diff --git a/src/app/(protected)/services/page.tsx b/src/app/(protected)/services/page.tsx index 674b285..6cf93c4 100644 --- a/src/app/(protected)/services/page.tsx +++ b/src/app/(protected)/services/page.tsx @@ -155,14 +155,10 @@ const COMP_META: Record ; -const renderStatus = (s: ServiceStatus) => { - const m = STATUS_META[s]; return ; -}; +const renderStatus = (s: ServiceStatus) => { const m = STATUS_META[s]; return ; }; const renderBilling = (b: BillingType) => ; const renderLoc = (l: LocationType) => ; -const renderComp = (c: ComplianceLevel) => { - const m = COMP_META[c]; return ; -}; +const renderComp = (c: ComplianceLevel) => { const m = COMP_META[c]; return ; }; const fmtDate = (iso?: string | null) => (iso ? new Date(iso).toLocaleString("th-TH", { hour12: false }) : "-"); const THB = (n?: number | null) => (typeof n === "number" ? `฿${n.toLocaleString()}` : "-"); @@ -624,10 +620,11 @@ export default function ServicesPage() {
{children}
); + // ✅ ให้เข้ากับหน้า Customers: ไม่ใช้ h-10 และใช้ py-2.5 const inputBase = - "h-10 w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 text-sm shadow-sm outline-none placeholder:text-neutral-400 focus:border-neutral-300 focus:ring-2 focus:ring-neutral-900/10"; + "w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 py-2.5 text-sm shadow-sm outline-none placeholder:text-neutral-400 focus:border-neutral-300"; const selectBase = - "appearance-none h-10 w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 text-sm shadow-sm outline-none focus:border-neutral-300 focus:ring-2 focus:ring-neutral-900/10"; + "appearance-none w-full rounded-xl border border-neutral-200/80 bg-white/80 px-3 py-2.5 text-sm shadow-sm outline-none focus:border-neutral-300"; const activeFilters = [ ...(q.trim() ? [{ key: "q", label: "ค้นหา", value: q.trim() }] : []),