赵哥所有门店

This commit is contained in:
苏尹岚
2020-10-12 13:49:55 +08:00
parent 14ae1bfe12
commit c27ffb51eb

View File

@@ -8,6 +8,8 @@ import (
"strings"
"time"
"git.rosy.net.cn/jx-callback/business/authz/autils"
"git.rosy.net.cn/jx-callback/business/auth2/authprovider/weixin"
"git.rosy.net.cn/jx-callback/business/partner/delivery"
"github.com/360EntSecGroup-Skylar/excelize"
@@ -1614,100 +1616,107 @@ func UploadJdsImage(ctx *jxcontext.Context) (err error) {
// }
// }
// }
type tmpJD struct {
JdStoreID int `orm:"column(jd_store_id)" json:"jdStoreID"`
SkuName string `json:"skuName"`
}
type tmpCount struct {
Count int `json:"count"`
ID int `orm:"column(id)" json:"id"`
}
// type tmpJD struct {
// JdStoreID int `orm:"column(jd_store_id)" json:"jdStoreID"`
// SkuName string `json:"skuName"`
// }
// type tmpCount struct {
// Count int `json:"count"`
// ID int `orm:"column(id)" json:"id"`
// }
// var (
// db = dao.GetDB()
// tmpJDs []*tmpJD
// jdMaps = make(map[int][]string)
// jdMaps2 = make(map[int][]int)
// a = 99999
// )
// sql := `SELECT * FROM tmp_jd`
// dao.GetRows(db, &tmpJDs, sql, nil)
// for _, v := range tmpJDs {
// jdMaps[v.JdStoreID] = append(jdMaps[v.JdStoreID], v.SkuName)
// }
// for jdStoreID, skuNames := range jdMaps {
// for _, v := range skuNames {
// var (
// nameIDs []int
// tmpCount = &tmpCount{}
// )
// skuNames, _ := dao.GetSkuNames(db, nil, nil, v, false)
// for _, v := range skuNames {
// flag := false
// for _, vv := range nameIDs {
// if vv == v.ID {
// flag = true
// break
// }
// }
// if !flag {
// nameIDs = append(nameIDs, v.ID)
// }
// }
// if len(nameIDs) == 0 {
// continue
// }
// sql := `
// SELECT SUM(a.count) count, c.id
// FROM order_sku a
// JOIN sku b ON a.sku_id = b.id
// JOIN sku_name c ON c.id = b.name_id
// WHERE c.name_id IN (` + dao.GenQuestionMarks(len(nameIDs)) + `)
// AND a.order_created_at > ?
// GROUP BY 2
// ORDER BY 1 DESC
// LIMIT 1
// `
// sqlParams := []interface{}{time.Now().AddDate(0, -1, 0)}
// dao.GetRow(db, &tmpCount, sql, sqlParams)
// if tmpCount.ID != 0 {
// jdMaps2[jdStoreID] = append(jdMaps2[jdStoreID], tmpCount.ID)
// } else {
// jdMaps2[jdStoreID] = append(jdMaps2[jdStoreID], nameIDs[0])
// }
// }
// }
// for jdStoreID, skuNames := range jdMaps2 {
// storeDetail, _ := dao.GetStoreDetailByVendorStoreID(db, utils.Int2Str(jdStoreID), model.VendorIDJD)
// if storeDetail == nil {
// continue
// }
// var skuBindInfos []*cms.StoreSkuBindInfo
// for _, v := range skuNames {
// var skuBindInfoSkus []*cms.StoreSkuBindSkuInfo
// skuBindInfo := &cms.StoreSkuBindInfo{
// IsFocus: 1,
// IsSale: 1,
// NameID: v,
// StoreID: storeDetail.ID,
// }
// skus, _ := dao.GetSkus(db, nil, []int{v}, []int{model.SkuStatusNormal}, nil, nil)
// for _, vv := range skus {
// skuBindInfoSku := &cms.StoreSkuBindSkuInfo{
// SkuID: vv.ID,
// Stock: &a,
// IsSale: 1,
// }
// skuBindInfoSkus = append(skuBindInfoSkus, skuBindInfoSku)
// }
// prices, _ := dao.GetPriceReferSnapshotNoPage(db, []int{0}, nil, []int{v}, utils.Time2Date(time.Now().AddDate(0, 0, -1)))
// if len(prices) > 0 {
// skuBindInfo.UnitPrice = prices[0].MidUnitPrice
// } else {
// skuBindInfo.UnitPrice = 1000
// }
// skuBindInfos = append(skuBindInfos, skuBindInfo)
// }
// cms.UpdateStoreSkus(ctx, 0, storeDetail.ID, skuBindInfos, true, true)
// }
var (
db = dao.GetDB()
tmpJDs []*tmpJD
jdMaps = make(map[int][]string)
jdMaps2 = make(map[int][]int)
a = 99999
db = dao.GetDB()
)
sql := `SELECT * FROM tmp_jd`
dao.GetRows(db, &tmpJDs, sql, nil)
for _, v := range tmpJDs {
jdMaps[v.JdStoreID] = append(jdMaps[v.JdStoreID], v.SkuName)
}
for jdStoreID, skuNames := range jdMaps {
for _, v := range skuNames {
var (
nameIDs []int
tmpCount = &tmpCount{}
)
skuNames, _ := dao.GetSkuNames(db, nil, nil, v, false)
for _, v := range skuNames {
flag := false
for _, vv := range nameIDs {
if vv == v.ID {
flag = true
break
}
}
if !flag {
nameIDs = append(nameIDs, v.ID)
}
}
if len(nameIDs) == 0 {
continue
}
sql := `
SELECT SUM(a.count) count, c.id
FROM order_sku a
JOIN sku b ON a.sku_id = b.id
JOIN sku_name c ON c.id = b.name_id
WHERE c.name_id IN (` + dao.GenQuestionMarks(len(nameIDs)) + `)
AND a.order_created_at > ?
GROUP BY 2
ORDER BY 1 DESC
LIMIT 1
`
sqlParams := []interface{}{time.Now().AddDate(0, -1, 0)}
dao.GetRow(db, &tmpCount, sql, sqlParams)
if tmpCount.ID != 0 {
jdMaps2[jdStoreID] = append(jdMaps2[jdStoreID], tmpCount.ID)
} else {
jdMaps2[jdStoreID] = append(jdMaps2[jdStoreID], nameIDs[0])
}
}
}
for jdStoreID, skuNames := range jdMaps2 {
storeDetail, _ := dao.GetStoreDetailByVendorStoreID(db, utils.Int2Str(jdStoreID), model.VendorIDJD)
if storeDetail == nil {
continue
}
var skuBindInfos []*cms.StoreSkuBindInfo
for _, v := range skuNames {
var skuBindInfoSkus []*cms.StoreSkuBindSkuInfo
skuBindInfo := &cms.StoreSkuBindInfo{
IsFocus: 1,
IsSale: 1,
NameID: v,
StoreID: storeDetail.ID,
}
skus, _ := dao.GetSkus(db, nil, []int{v}, []int{model.SkuStatusNormal}, nil, nil)
for _, vv := range skus {
skuBindInfoSku := &cms.StoreSkuBindSkuInfo{
SkuID: vv.ID,
Stock: &a,
IsSale: 1,
}
skuBindInfoSkus = append(skuBindInfoSkus, skuBindInfoSku)
}
prices, _ := dao.GetPriceReferSnapshotNoPage(db, []int{0}, nil, []int{v}, utils.Time2Date(time.Now().AddDate(0, 0, -1)))
if len(prices) > 0 {
skuBindInfo.UnitPrice = prices[0].MidUnitPrice
} else {
skuBindInfo.UnitPrice = 1000
}
skuBindInfos = append(skuBindInfos, skuBindInfo)
}
cms.UpdateStoreSkus(ctx, 0, storeDetail.ID, skuBindInfos, true, true)
stores, _ := dao.GetStoreList(db, nil, nil, nil, nil, "")
for _, v := range stores {
cms.AddUsers4Role(jxcontext.AdminCtx, autils.NewRole("StoreBoss", v.ID), []string{"5CD3666C666711E9B19B525400E86DC0"})
}
return err
}