// 字符串用逗号分隔,转成数字数组
categoryIdParts := strings.Split(limitSellingQtyConfigTabs[0].CategoryIDs, ",")
var categoryIds = make([]int, len(categoryIdParts))
if len(categoryIdParts) > 0 {
for categoryIdIndex := range categoryIdParts {
if categoryIdParts[categoryIdIndex] == "" {
continue
}
categoryId, err := strconv.Atoi(categoryIdParts[categoryIdIndex])
if err != nil {
return 0, nil, err
}
categoryIds[categoryIdIndex] = categoryId
}
}
// int数组,用逗号拼接
func convertToCategoryIDs(categoryIDs []int) string {
var strCategoryID = make([]string, len(categoryIDs))
for i := range categoryIDs {
strCategoryID[i] = strconv.Itoa(categoryIDs[i])
}
return strings.Join(strCategoryID, ",")
}
格式化字符串
cfgIdPrefix := fmt.Sprintf("CFG%s%s", region, time.Now().Format("20060102"))
Map
var oldLimitSellingQtyConfigMap = make([]map[string]interface{}, len(oldLimitSellingQtyConfigTabs))
Map转JSON
var infoMap = make(map[string]interface{}, 4)
infoMap["content"] = "Category"
infoMap["action"] = 2
infoMap["after"] = param.CategoryIds
infoMap["before"] = oldCategoryIds
marshal, err := json.Marshal(infoMap)
if err != nil {
return "", err
}
var text = string(marshal)