diff --git a/src/coffee/mapping.coffee b/src/coffee/mapping.coffee index 38ed96fe..a278a2b6 100644 --- a/src/coffee/mapping.coffee +++ b/src/coffee/mapping.coffee @@ -24,9 +24,9 @@ class Mapping rowIndex = raw.startRow product = @mapBaseProduct raw.master, productType, rowIndex - product.masterVariant = @mapVariant raw.master, Number(raw.master[@header.toIndex CONS.HEADER_VARIANT_ID]), productType, rowIndex, product + product.masterVariant = @mapVariant raw.master, 1, productType, rowIndex, product _.each raw.variants, (entry, index) => - product.variants.push @mapVariant entry.variant, Number(entry.variant[@header.toIndex CONS.HEADER_VARIANT_ID]), productType, entry.rowIndex, product + product.variants.push @mapVariant entry.variant, index + 2, productType, entry.rowIndex, product data = product: product diff --git a/src/coffee/validator.coffee b/src/coffee/validator.coffee index f654e355..f513ba58 100644 --- a/src/coffee/validator.coffee +++ b/src/coffee/validator.coffee @@ -202,14 +202,17 @@ class Validator isVariant: (row, variantColumn) -> if variantColumn is CONS.HEADER_VARIANT_ID - hasProductTypeColumn = not _.isBlank(row[@header.toIndex(CONS.HEADER_PRODUCT_TYPE)]) - return !hasProductTypeColumn + variantId = row[@header.toIndex(CONS.HEADER_VARIANT_ID)] + parseInt(variantId) > 1 else not @isProduct row isProduct: (row, variantColumn) -> hasProductTypeColumn = not _.isBlank(row[@header.toIndex(CONS.HEADER_PRODUCT_TYPE)]) - return hasProductTypeColumn + if variantColumn is CONS.HEADER_VARIANT_ID + hasProductTypeColumn and row[@header.toIndex(CONS.HEADER_VARIANT_ID)] is '1' + else + hasProductTypeColumn _hasVariantCriteria: (row, variantColumn) -> critertia = row[@header.toIndex(variantColumn)]