- 修复dao.GetUserList的bug

- QueryActs添加参数syncStatus
This commit is contained in:
gazebo
2019-09-05 18:02:53 +08:00
parent f5ec608a1c
commit 522c9082ef
6 changed files with 47 additions and 10 deletions

View File

@@ -534,8 +534,8 @@ func (a *ActManager) IsVendorActExist(ctx *jxcontext.Context, vendorActID string
return isExist return isExist
} }
func QueryActs(ctx *jxcontext.Context, actID int, offset, pageSize int, keyword string, vendorID int, statusList, actTypeList, createTypeList []int, storeID, skuID, cityCode int, beginAt, endAt, createdAtFrom, createdAtTo time.Time) (pagedInfo *dao.PagedActListInfo, err error) { func QueryActs(ctx *jxcontext.Context, actID int, offset, pageSize int, syncStatus int, keyword string, vendorID int, statusList, actTypeList, createTypeList []int, storeID, skuID, cityCode int, beginAt, endAt, createdAtFrom, createdAtTo time.Time) (pagedInfo *dao.PagedActListInfo, err error) {
return dao.QueryActs(dao.GetDB(), actID, offset, pageSize, keyword, vendorID, statusList, actTypeList, createTypeList, storeID, skuID, cityCode, beginAt, endAt, createdAtFrom, createdAtTo) return dao.QueryActs(dao.GetDB(), actID, offset, pageSize, syncStatus, keyword, vendorID, statusList, actTypeList, createTypeList, storeID, skuID, cityCode, beginAt, endAt, createdAtFrom, createdAtTo)
} }
func GetActStoreSkuInfo(ctx *jxcontext.Context, actID int, vendorIDs []int, keyword string, offset, pageSize int) (retVal interface{}, err error) { func GetActStoreSkuInfo(ctx *jxcontext.Context, actID int, vendorIDs []int, keyword string, offset, pageSize int) (retVal interface{}, err error) {
@@ -733,7 +733,7 @@ func RefreshPageActs(ctx *jxcontext.Context, vendorIDs []int, createdFrom time.T
if err = err2; err != nil { if err = err2; err != nil {
return nil, err return nil, err
} }
// actInfo, err2 := dao.QueryActs(db, 0, 0, -1, "", vendorID, nil, []int{model.ActCreateTypeSpider}, // actInfo, err2 := dao.QueryActs(db, 0, 0, -1, -1, "", vendorID, nil, []int{model.ActCreateTypeSpider},
// nil, 0, 0, 0, utils.DefaultTimeValue, utils.DefaultTimeValue, createdFrom, utils.DefaultTimeValue) // nil, 0, 0, 0, utils.DefaultTimeValue, utils.DefaultTimeValue, createdFrom, utils.DefaultTimeValue)
vendorActIDs, err2 := dao.GetExistVendorActIDs(db, vendorID) vendorActIDs, err2 := dao.GetExistVendorActIDs(db, vendorID)
if err = err2; err != nil { if err = err2; err != nil {
@@ -821,7 +821,7 @@ func DeleteSkusFromAct(ctx *jxcontext.Context, vendorID int, skuIDs []int, isAsy
db := dao.GetDB() db := dao.GetDB()
actMap := make(map[int]*model.Act) actMap := make(map[int]*model.Act)
for _, skuID := range skuIDs { for _, skuID := range skuIDs {
pagedInfo, err2 := dao.QueryActs(db, 0, 0, -1, "", vendorID, []int{model.ActStatusCreated}, []int{model.ActSkuDirectDown, model.ActSkuSecKill}, nil, 0, skuID, 0, pagedInfo, err2 := dao.QueryActs(db, 0, 0, -1, -1, "", vendorID, []int{model.ActStatusCreated}, []int{model.ActSkuDirectDown, model.ActSkuSecKill}, nil, 0, skuID, 0,
utils.DefaultTimeValue, utils.DefaultTimeValue, time.Now().Add(-24*30*3*time.Hour), utils.DefaultTimeValue) utils.DefaultTimeValue, utils.DefaultTimeValue, time.Now().Add(-24*30*3*time.Hour), utils.DefaultTimeValue)
if err = err2; err != nil { if err = err2; err != nil {
return "", err return "", err

View File

@@ -0,0 +1,23 @@
package cms
import (
"testing"
"git.rosy.net.cn/baseapi/utils"
_ "git.rosy.net.cn/jx-callback/globals/api/apimanager"
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
"git.rosy.net.cn/jx-callback/business/model"
)
func TestTryAddStoreBossRole4User(t *testing.T) {
err := TryAddStoreBossRole4User(jxcontext.AdminCtx, &model.User{
Type: model.UserTypeStoreBoss,
UserID: "24058800CD3711E991B2525400E86DC0",
Mobile: utils.String2Pointer("91112345678"),
})
if err != nil {
t.Fatal(err)
}
}

View File

@@ -474,7 +474,9 @@ func HandleUserWXRemark(db *dao.DaoDB, mobile string, mobileIsUerID bool) (err e
} }
} }
if err == nil { if err == nil {
err = api.WeixinAPI.CBUpdateRemark(openID, remark) if globals.EnableStoreWrite {
err = api.WeixinAPI.CBUpdateRemark(openID, remark)
}
} }
} }
return err return err

View File

@@ -173,7 +173,7 @@ func GetActStoreSkuVendorInfo(db *DaoDB, actID int, vendorIDs, storeIDs, skuIDs
return actStoreSkuMap, err return actStoreSkuMap, err
} }
func QueryActs(db *DaoDB, actID int, offset, pageSize int, keyword string, vendorID int, statusList, actTypeList, createTypeList []int, func QueryActs(db *DaoDB, actID int, offset, pageSize int, syncStatus int, keyword string, vendorID int, statusList, actTypeList, createTypeList []int,
storeID, skuID, cityCode int, beginAt, endAt, createdAtFrom, createdAtTo time.Time) (pagedInfo *PagedActListInfo, err error) { storeID, skuID, cityCode int, beginAt, endAt, createdAtFrom, createdAtTo time.Time) (pagedInfo *PagedActListInfo, err error) {
if actID == 0 && utils.IsTimeZero(createdAtFrom) && utils.IsTimeZero(beginAt) { if actID == 0 && utils.IsTimeZero(createdAtFrom) && utils.IsTimeZero(beginAt) {
return nil, fmt.Errorf("actID,createdAtFrom和beginAt中至少要指定一个条件") return nil, fmt.Errorf("actID,createdAtFrom和beginAt中至少要指定一个条件")
@@ -184,7 +184,7 @@ func QueryActs(db *DaoDB, actID int, offset, pageSize int, keyword string, vendo
sql := ` sql := `
SELECT SQL_CALC_FOUND_ROWS SELECT SQL_CALC_FOUND_ROWS
t1.id DISTINCT t1.id
FROM act t1` FROM act t1`
sqlParams := []interface{}{} sqlParams := []interface{}{}
if isGetAll { if isGetAll {
@@ -195,8 +195,14 @@ func QueryActs(db *DaoDB, actID int, offset, pageSize int, keyword string, vendo
FROM act t1 FROM act t1
LEFT JOIN act_map t2 ON t2.act_id = t1.id AND t2.deleted_at = ?` LEFT JOIN act_map t2 ON t2.act_id = t1.id AND t2.deleted_at = ?`
sqlParams = []interface{}{utils.DefaultTimeValue} sqlParams = []interface{}{utils.DefaultTimeValue}
if syncStatus >= 0 {
sql += " AND (t2.sync_status = ? OR t2.sync_status & ? <> 0)"
sqlParams = append(sqlParams, syncStatus, syncStatus)
}
} else if syncStatus >= 0 {
sql += " JOIN act_map t2 ON t2.act_id = t1.id AND t2.deleted_at = ? AND (t2.sync_status = ? OR t2.sync_status & ? <> 0)"
sqlParams = append(sqlParams, utils.DefaultTimeValue, syncStatus, syncStatus)
} }
sql += ` sql += `
WHERE t1.deleted_at = ?` WHERE t1.deleted_at = ?`
sqlParams = append(sqlParams, utils.DefaultTimeValue) sqlParams = append(sqlParams, utils.DefaultTimeValue)
@@ -289,6 +295,7 @@ func QueryActs(db *DaoDB, actID int, offset, pageSize int, keyword string, vendo
panic(r) panic(r)
} }
}() }()
// globals.SugarLogger.Debug(sql)
if err = GetRows(db, &idList, sql, sqlParams...); err != nil || len(idList) == 0 { if err = GetRows(db, &idList, sql, sqlParams...); err != nil || len(idList) == 0 {
Rollback(db) Rollback(db)
return pagedInfo, err return pagedInfo, err
@@ -311,6 +318,7 @@ func QueryActs(db *DaoDB, actID int, offset, pageSize int, keyword string, vendo
} }
} }
var actList []*tActAndMap var actList []*tActAndMap
// globals.SugarLogger.Debug(sql)
if err = GetRows(db, &actList, sql, sqlParams...); err != nil { if err = GetRows(db, &actList, sql, sqlParams...); err != nil {
return nil, err return nil, err
} }

View File

@@ -458,7 +458,7 @@ func GetStoreList(db *DaoDB, idList []int, mobileList []string, shortRoleName st
sqlParams = append(sqlParams, idList) sqlParams = append(sqlParams, idList)
} }
if len(mobileList) > 0 { if len(mobileList) > 0 {
sql += " AND (t1.tel1 IN (" + GenQuestionMarks(len(mobileList)) + ") OR t1.tel2 IN (" + GenQuestionMarks(len(mobileList)) + ")" sql += " AND (t1.tel1 IN (" + GenQuestionMarks(len(mobileList)) + ") OR t1.tel2 IN (" + GenQuestionMarks(len(mobileList)) + "))"
sqlParams = append(sqlParams, mobileList, mobileList) sqlParams = append(sqlParams, mobileList, mobileList)
} }
if shortRoleName != "" { if shortRoleName != "" {

View File

@@ -128,6 +128,7 @@ func (c *ActController) CreateAct() {
// @Param createTypeList query string false "创建方式列表" // @Param createTypeList query string false "创建方式列表"
// @Param storeID query int false "包含门店" // @Param storeID query int false "包含门店"
// @Param skuID query int false "包含sku" // @Param skuID query int false "包含sku"
// @Param syncStatus query int false "活动同步标识,缺省不限制"
// @Param offset query int false "活动列表起始序号以0开始缺省为0" // @Param offset query int false "活动列表起始序号以0开始缺省为0"
// @Param pageSize query int false "活动列表页大小缺省为50-1表示全部" // @Param pageSize query int false "活动列表页大小缺省为50-1表示全部"
// @Success 200 {object} controllers.CallResult // @Success 200 {object} controllers.CallResult
@@ -142,7 +143,10 @@ func (c *ActController) QueryActs() {
if params.MapData["vendorID"] == nil { if params.MapData["vendorID"] == nil {
params.VendorID = -1 params.VendorID = -1
} }
retVal, err = act.QueryActs(params.Ctx, params.ActID, params.Offset, params.PageSize, params.Keyword, params.VendorID, if params.MapData["syncStatus"] == nil {
params.SyncStatus = -1
}
retVal, err = act.QueryActs(params.Ctx, params.ActID, params.Offset, params.PageSize, params.SyncStatus, params.Keyword, params.VendorID,
statusList, typeList, createTypeList, params.StoreID, params.SkuID, params.CityCode, timeList[2], timeList[3], timeList[0], timeList[1]) statusList, typeList, createTypeList, params.StoreID, params.SkuID, params.CityCode, timeList[2], timeList[3], timeList[0], timeList[1])
} }
} }