Merge remote-tracking branch 'origin/master'

This commit is contained in:
M_Kececi
2026-05-22 17:26:16 +03:00
parent 43bb76da9a
commit 5f3e975b6d
2 changed files with 62 additions and 0 deletions

View File

@@ -2029,6 +2029,31 @@ ORDER BY
return mssqlDB.QueryRowContext(ctx, sqlText, sKodu, costDate, colorCode, itemDim1Code), nil
}
// Best-effort: resolve TR item description for an item code. Used for warnings export readability.
func GetItemDescriptionTRByItemCode(ctx context.Context, mssqlDB *sql.DB, itemCode string) (string, error) {
itemCode = strings.TrimSpace(itemCode)
if itemCode == "" {
return "", nil
}
sqlText := `
SELECT TOP 1 ISNULL(D.ItemDescription, '') AS ItemDescription
FROM cdItem CI
INNER JOIN cdItemDesc D
ON D.ItemTypeCode = CI.ItemTypeCode
AND D.ItemCode = CI.ItemCode
AND D.LangCode = 'TR'
WHERE LTRIM(RTRIM(CI.ItemCode)) = @p1
`
var desc string
if err := mssqlDB.QueryRowContext(ctx, sqlText, itemCode).Scan(&desc); err != nil {
if err == sql.ErrNoRows {
return "", nil
}
return "", err
}
return strings.TrimSpace(desc), nil
}
// Bulk version of GetProductionHasCostLatestPurchasePriceForItem.
// Uses OPENJSON to avoid 1-query-per-item fan-out.
// For each requested rowKey, picks the latest purchase invoice before costDate,