- fix bug in jxutils.ComposeSkuName
- mtwm SyncStoreSkus almost ok
This commit is contained in:
@@ -219,22 +219,30 @@ func ComposeSkuName(prefix, name, comment, unit string, spec_quality float32, sp
|
||||
if unit == "份" {
|
||||
skuName += "约"
|
||||
}
|
||||
if math.Round(float64(spec_quality)) == float64(spec_quality) || (spec_unit != "L" && spec_unit != "kg") {
|
||||
skuName += fmt.Sprintf("%d", int(spec_quality))
|
||||
} else {
|
||||
skuName += fmt.Sprintf("%.2f", spec_quality)
|
||||
}
|
||||
skuName += spec_unit
|
||||
skuName += ComposeSkuSpec(spec_quality, spec_unit)
|
||||
skuName += "/" + unit
|
||||
if comment != "" {
|
||||
skuName += "(" + comment + ")"
|
||||
}
|
||||
if maxLen > 0 {
|
||||
skuName = skuName[:maxLen]
|
||||
runeList := []rune(skuName)
|
||||
if len(runeList) > maxLen {
|
||||
skuName = string(runeList[:maxLen])
|
||||
}
|
||||
}
|
||||
return skuName
|
||||
}
|
||||
|
||||
func ComposeSkuSpec(spec_quality float32, spec_unit string) (spec string) {
|
||||
if math.Round(float64(spec_quality)) == float64(spec_quality) || (spec_unit != "L" && spec_unit != "kg") {
|
||||
spec = fmt.Sprintf("%d", int(spec_quality))
|
||||
} else {
|
||||
spec = strings.TrimRight(fmt.Sprintf("%.2f", spec_quality), "0.")
|
||||
}
|
||||
spec += spec_unit
|
||||
return spec
|
||||
}
|
||||
|
||||
// 1:商品特殊前缀
|
||||
// 2:商品名字
|
||||
// 3:商品说明1(可缺失)
|
||||
|
||||
Reference in New Issue
Block a user