Files
jx-callback/business/model/dao/sku.go
2019-01-18 09:56:19 +08:00

69 lines
1.6 KiB
Go

package dao
import (
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/business/model"
)
func GetSellCities(db *DaoDB, nameID int, vendorID int) (cities []*model.Place, err error) {
cities = []*model.Place{}
sql := `
SELECT DISTINCT t3.*
FROM sku_name_place_bind t1
JOIN place t2 ON t1.place_code = t2.code
JOIN place t3 ON (t2.level = 2 AND t2.code = t3.code) OR (t2.level = 1 AND t2.code = t3.parent_code)
WHERE t1.name_id = ?
`
if vendorID == model.VendorIDJD {
sql += "AND t3.jd_code <> 0\n"
}
return cities, GetRows(db, &cities, sql, nameID)
}
func DeleteSkuNamePlace(db *DaoDB, nameID int, placeCodes []int) (num int64, err error) {
sql := `
DELETE
FROM sku_name_place_bind
WHERE name_id = ?
`
sqlParams := []interface{}{
nameID,
}
if len(placeCodes) > 0 {
sql += " AND place_code IN (" + GenQuestionMarks(len(placeCodes)) + ")"
sqlParams = append(sqlParams, placeCodes)
}
return ExecuteSQL(db, sql, sqlParams...)
}
func GetSkuNameByHashCode(db *DaoDB, hashCode string) (skuName *model.SkuName, err error) {
sql := `
SELECT *
FROM sku_name
WHERE img_hash_code = ?
`
sqlParams := []interface{}{
hashCode,
}
skuName = &model.SkuName{}
if err = GetRow(db, skuName, sql, sqlParams...); err == nil {
return skuName, nil
}
return nil, err
}
func GetSkuNames(db *DaoDB) (skuNameList []*model.SkuName, err error) {
sql := `
SELECT *
FROM sku_name
WHERE deleted_at = ?
`
sqlParams := []interface{}{
utils.DefaultTimeValue,
}
if err = GetRows(db, &skuNameList, sql, sqlParams...); err == nil {
return skuNameList, nil
}
return nil, err
}