Skip to content

Commit

Permalink
SKUs page file check
Browse files Browse the repository at this point in the history
  • Loading branch information
Sammii-HK committed Apr 24, 2024
1 parent e88a45b commit 82c30cd
Showing 1 changed file with 28 additions and 6 deletions.
34 changes: 28 additions & 6 deletions app/skus/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -31,34 +31,56 @@ export default async function SKUCheckPage() {
dbxFiles = await dbx.filesListFolder({
path: '/scape squared/004 print ready - print files'
});

// sabotage?
// dbxFiles.result.entries = dbxFiles.result.entries.filter(file => file.name !== "SCSQ300262_NECK.png");
} catch (e) {
dbxError = e + ""
}

// sabotage?
// dbxFiles.result.entries.splice(5, 1);

return (
<div>
{products.map((product) => {
const skus = createProductSKUs(product.title);

if (!skus) return <div key={product.id} className="m-10 bg-red-300 ">SKU error for product {product.title}</div>

// sabotage?
// product.variants[3]!.sku = 'SCSQ10001_STTU781_M_C002_B_NT';

const productCode = skus[0]!.split('_')[0]
const productBase = productCode!.slice(0, (productCode!.length -1))

const productFiles = dbxFiles?.result.entries
.filter((file) => file.name.startsWith(skus[0]!.split('_')[0]!))
.filter((file) => file.name.startsWith(productBase!))

const productFileNames = productFiles?.map(file => file.name);

const sizeDigits = ["1", "2", "3"];
const sideSuffixes = ["_NECK.png", "_BACK.png"];

const expectedFiles = sizeDigits.flatMap((sizeDigit) =>
sideSuffixes.flatMap((sideSuffix) => productBase + sizeDigit + sideSuffix)
);

const missingFiles = expectedFiles.filter(expected => !productFileNames?.includes(expected));
const extraFiles = productFileNames?.filter(filename => !expectedFiles.includes(filename));

return (
<div key={product.id} className="mt-10 lg:grid lg:grid-cols-12 gap-x-4 gap-y-1">
<h1 className="text-2xl lg:col-span-10 lg:col-start-3">{product.title}</h1>
<div
className={
'mb-4 lg:col-span-4 lg:col-start-3 rounded ' +
(productFiles?.length !== 2 ? 'bg-amber-300' : '')
(missingFiles?.length > 0 ? 'bg-amber-300' : '')
}
>
Dropbox: {productFiles?.map(file => file.name).join(", ")}{dbxError}
Dropbox:{' '}
{missingFiles.length === 0
? '✅ All expected files found'
: '⛔️ Missing files: ' + missingFiles.join(', ')}
{extraFiles && <div className='text-sm'>(Extra files: {extraFiles.join(", ")})</div>}
{dbxError}
</div>
{product.variants.map((variant, i) => (
<>
Expand Down

0 comments on commit 82c30cd

Please sign in to comment.