aa
This commit is contained in:
@@ -2087,3 +2087,11 @@ func RrefreshEbaiVendorAct() (err error) {
|
||||
task.GetResult(0)
|
||||
return err
|
||||
}
|
||||
|
||||
func GetActMtwmVendor(ctx *jxcontext.Context, storeIDs, skuIDs []int, keyword, beginAt, endAt string, actType, offset, pageSize int) (page *model.PagedInfo, err error) {
|
||||
return dao.GetActMtwmVendorPage(dao.GetDB(), storeIDs, skuIDs, keyword, utils.Str2Time(beginAt), utils.Str2Time(endAt), actType, offset, pageSize)
|
||||
}
|
||||
|
||||
func GetActMtwmVendorSku(ctx *jxcontext.Context, storeID int, keyword string, actType, offset, pageSize int) (page *model.PagedInfo, err error) {
|
||||
return dao.GetActMtwmVendorSkuPage(dao.GetDB(), storeID, keyword, actType, offset, pageSize)
|
||||
}
|
||||
|
||||
@@ -328,6 +328,8 @@ func Init() {
|
||||
ScheduleTimerFunc("RrefreshMtwmVendorAct", func() {
|
||||
//刷新美团平台活动
|
||||
act.RrefreshMtwmVendorAct()
|
||||
//刷新饿百平台活动
|
||||
act.RrefreshEbaiVendorAct()
|
||||
}, dailyWorkTimeList2)
|
||||
}
|
||||
ScheduleTimerFunc("AutoSaleStoreSku", func() {
|
||||
|
||||
@@ -279,6 +279,7 @@ type ActMtwmVendor struct {
|
||||
Period string `json:"period"` //生效时段
|
||||
WeeksTime string `json:"weeksTime"` //生效活动周期
|
||||
SettingType int `json:"settingType"` //活动开展类型,参考值:0-按折扣系数开展活动;1-按折扣价格开展活动。
|
||||
StoreName string `orm:"-" json:"storeName"`
|
||||
}
|
||||
|
||||
func (*ActMtwmVendor) TableIndex() [][]string {
|
||||
|
||||
@@ -710,3 +710,93 @@ func GetActEbaiVendorSkus(db *DaoDB, storeIDs, skuIDs []int) (actEbaiVendorSku [
|
||||
err = GetRows(db, &actEbaiVendorSku, sql, sqlParams)
|
||||
return actEbaiVendorSku, err
|
||||
}
|
||||
|
||||
func GetActMtwmVendorPage(db *DaoDB, storeIDs, skuIDs []int, keyword string, beginAt, endAt time.Time, actType, offset, pageSize int) (page *model.PagedInfo, err error) {
|
||||
var (
|
||||
acts []*model.ActMtwmVendor
|
||||
)
|
||||
sql := `
|
||||
SELECT SQL_CALC_FOUND_ROWS a.store_id, a.vendor_store_id, b.name store_name, a.act_type
|
||||
FROM act_mtwm_vendor a
|
||||
LEFT JOIN store b ON a.store_id = b.id
|
||||
`
|
||||
sqlParams := []interface{}{}
|
||||
if len(storeIDs) > 0 {
|
||||
sql += " AND a.store_id IN (" + GenQuestionMarks(len(storeIDs)) + ")"
|
||||
sqlParams = append(sqlParams, storeIDs)
|
||||
}
|
||||
if len(skuIDs) > 0 {
|
||||
sql += " AND a.sku_id IN (" + GenQuestionMarks(len(skuIDs)) + ")"
|
||||
sqlParams = append(sqlParams, skuIDs)
|
||||
}
|
||||
if keyword != "" {
|
||||
sql += " AND (a.store_id = ? OR a.sku_id = ? OR a.sku_name LIKE ? OR b.name LIKE ?)"
|
||||
sqlParams = append(sqlParams, keyword, keyword, "%"+keyword+"%", "%"+keyword+"%")
|
||||
}
|
||||
if !utils.IsTimeZero(beginAt) {
|
||||
sql += " AND a.begin_at <= ?"
|
||||
sqlParams = append(sqlParams, beginAt)
|
||||
}
|
||||
if !utils.IsTimeZero(endAt) {
|
||||
sql += " AND a.end_at >= ?"
|
||||
sqlParams = append(sqlParams, endAt)
|
||||
}
|
||||
if actType != 0 {
|
||||
sql += " AND a.act_type = ?"
|
||||
sqlParams = append(sqlParams, actType)
|
||||
}
|
||||
sql += `
|
||||
GROUP BY 1, 2, 3, 4
|
||||
LIMIT ? OFFSET ?
|
||||
`
|
||||
sqlParams = append(sqlParams, pageSize, offset)
|
||||
txDB, _ := Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
Rollback(db, txDB)
|
||||
panic(r)
|
||||
}
|
||||
}()
|
||||
if err = GetRowsTx(txDB, &acts, sql, sqlParams...); err == nil {
|
||||
page.TotalCount = GetLastTotalRowCount2(db, txDB)
|
||||
page.Data = acts
|
||||
}
|
||||
Commit(db, txDB)
|
||||
return page, err
|
||||
}
|
||||
|
||||
func GetActMtwmVendorSkuPage(db *DaoDB, storeID int, keyword string, actType, offset, pageSize int) (page *model.PagedInfo, err error) {
|
||||
var (
|
||||
acts []*model.ActMtwmVendor
|
||||
)
|
||||
sql := `
|
||||
SELECT SQL_CALC_FOUND_ROWS a.*
|
||||
FROM act_mtwm_vendor a WHERE store_id = ?
|
||||
`
|
||||
sqlParams := []interface{}{storeID}
|
||||
if keyword != "" {
|
||||
sql += " AND (a.store_id = ? OR a.sku_id = ? OR a.sku_name LIKE ?)"
|
||||
sqlParams = append(sqlParams, keyword, keyword, "%"+keyword+"%")
|
||||
}
|
||||
if actType != 0 {
|
||||
sql += " AND a.act_type = ?"
|
||||
sqlParams = append(sqlParams, actType)
|
||||
}
|
||||
sql += `
|
||||
LIMIT ? OFFSET ?
|
||||
`
|
||||
sqlParams = append(sqlParams, pageSize, offset)
|
||||
txDB, _ := Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
Rollback(db, txDB)
|
||||
panic(r)
|
||||
}
|
||||
}()
|
||||
if err = GetRowsTx(txDB, &acts, sql, sqlParams...); err == nil {
|
||||
page.TotalCount = GetLastTotalRowCount2(db, txDB)
|
||||
page.Data = acts
|
||||
}
|
||||
Commit(db, txDB)
|
||||
return page, err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user