Merge remote-tracking branch 'origin/master'

This commit is contained in:
M_Kececi
2026-04-02 13:51:43 +03:00
parent 4549152594
commit 7a98652a8e

View File

@@ -520,9 +520,11 @@ func loadVariantDim1SetTx(tx *sql.Tx, item, color, dim2 string) (map[string]stru
return nil, fmt.Errorf("variant set scan hatası: %w", err)
}
norm := normalizeDim1Token(raw)
if norm != "" {
set[norm] = struct{}{}
if norm == "" {
set["#EMPTY_DIM1"] = struct{}{}
continue
}
set[norm] = struct{}{}
if num := normalizeNumericToken(norm); num != "" {
set["#NUM:"+num] = struct{}{}
}
@@ -564,9 +566,11 @@ func loadVariantDim1SetDB(conn *sql.DB, item, color, dim2 string) (map[string]st
return nil, fmt.Errorf("variant set scan hatası: %w", err)
}
norm := normalizeDim1Token(raw)
if norm != "" {
set[norm] = struct{}{}
if norm == "" {
set["#EMPTY_DIM1"] = struct{}{}
continue
}
set[norm] = struct{}{}
if num := normalizeNumericToken(norm); num != "" {
set["#NUM:"+num] = struct{}{}
}
@@ -658,7 +662,8 @@ func ValidateItemVariantCached(tx *sql.Tx, ln models.OrderDetail, cache map[stri
_, okNorm := set[dim1Norm]
_, okNum := set["#NUM:"+dim1Numeric]
if !(okNorm || (dim1Numeric != "" && okNum)) {
_, okEmpty := set["#EMPTY_DIM1"]
if !(okNorm || (dim1Numeric != "" && okNum) || (dim1Norm == "" && okEmpty)) {
return &models.ValidationError{
Code: "INVALID_ITEM_VARIANT",
Message: "Tanımsız ürün kombinasyonu",
@@ -730,7 +735,8 @@ func ValidateOrderVariants(db *sql.DB, lines []models.OrderDetail) ([]models.Inv
_, okNorm := set[dim1Norm]
_, okNum := set["#NUM:"+dim1Numeric]
if !(okNorm || (dim1Numeric != "" && okNum)) {
_, okEmpty := set["#EMPTY_DIM1"]
if !(okNorm || (dim1Numeric != "" && okNum) || (dim1Norm == "" && okEmpty)) {
invalid = append(invalid, models.InvalidVariant{
Index: i,
ClientKey: safeNS(ln.ClientKey),