diff --git a/business/model/dao/act.go b/business/model/dao/act.go index bab9475de..47979fa30 100644 --- a/business/model/dao/act.go +++ b/business/model/dao/act.go @@ -330,10 +330,19 @@ func GetEffectiveActStoreSkuInfo(db *DaoDB, actID int, vendorIDs []int, storeIDs t3.actual_act_price, t3.sync_status, t3.vendor_price, t3.vendor_id FROM act t1 JOIN act_store_sku t2 ON t2.act_id = t1.id AND t2.deleted_at = ? - JOIN act_store_sku_map t3 ON t3.bind_id = t2.id AND t3.act_id = t1.id + JOIN act_store_sku_map t3 ON t3.bind_id = t2.id AND t3.act_id = t1.id AND (t3.sync_status & ? = 0 OR t1.type = ?) + JOIN act_map t4 ON t4.act_id = t1.id AND t4.vendor_id = t3.vendor_id AND t4.deleted_at = ? AND (t4.sync_status & ? = 0 OR t1.type = ?) WHERE t1.deleted_at = ? AND t1.status = ? AND NOT (t1.begin_at > ? OR t1.end_at < ?)` sqlParams := []interface{}{ utils.DefaultTimeValue, + + model.SyncFlagNewMask, + model.ActSkuFake, + + utils.DefaultTimeValue, + model.SyncFlagNewMask, + model.ActSkuFake, + utils.DefaultTimeValue, model.ActStatusCreated, endAt, diff --git a/business/model/dao/act_test.go b/business/model/dao/act_test.go index 20ac715bd..1acee0c34 100644 --- a/business/model/dao/act_test.go +++ b/business/model/dao/act_test.go @@ -5,7 +5,6 @@ import ( "time" "git.rosy.net.cn/baseapi/utils" - "git.rosy.net.cn/jx-callback/business/model" ) func TestGetEffectiveActStoreSkuInfo(t *testing.T) { @@ -21,32 +20,11 @@ func TestGetEffectiveActStoreSkuInfo(t *testing.T) { } for _, v := range []*testData{ &testData{ - ResultCount: 4, - FromTime: time.Now(), - ToTime: time.Now(), - }, - &testData{ - ResultCount: 0, - FromTime: time.Now().Add(-48 * time.Hour), - ToTime: time.Now().Add(-48 * time.Hour), - }, - &testData{ - ResultCount: 2, - StoreIDs: []int{100884}, - FromTime: time.Now(), - ToTime: time.Now(), - }, - &testData{ + StoreIDs: []int{100190}, + SkuIDs: []int{23847}, ResultCount: 1, - SkuIDs: []int{22714}, - FromTime: time.Now(), - ToTime: time.Now(), - }, - &testData{ - ResultCount: 0, - VendorIDs: []int{model.VendorIDEBAI}, - FromTime: time.Now(), - ToTime: time.Now(), + FromTime: utils.Str2Time("2019-08-06 12:34:56"), + ToTime: utils.Str2Time("2019-08-06 12:34:56"), }, } { result, err := GetEffectiveActStoreSkuInfo(GetDB(), v.ActID, v.VendorIDs, v.StoreIDs, v.SkuIDs, v.FromTime, v.ToTime) @@ -54,6 +32,7 @@ func TestGetEffectiveActStoreSkuInfo(t *testing.T) { t.Fatal(err) } if len(result) != v.ResultCount { + t.Log(utils.Format4Output(result, false)) t.Errorf("cond:%s, len(result):%d, v.ResultCount:%d", utils.Format4Output(v, false), len(result), v.ResultCount) } }