- UpdateActStoreSkuBind

This commit is contained in:
gazebo
2019-07-04 15:25:28 +08:00
parent 2d5a2e8274
commit 4e5494a2a4
8 changed files with 84 additions and 19 deletions

View File

@@ -1,9 +1,12 @@
package controllers
import (
"fmt"
"git.rosy.net.cn/jx-callback/business/jxstore/act"
"git.rosy.net.cn/jx-callback/business/jxutils"
"git.rosy.net.cn/jx-callback/business/model"
"git.rosy.net.cn/jx-callback/business/model/dao"
"github.com/astaxie/beego"
)
@@ -160,3 +163,47 @@ func (c *ActController) SyncAct() {
return retVal, "", err
})
}
// @Title 添加SKU活动商品
// @Description 添加SKU活动商品
// @Param token header string true "认证token"
// @Param actID formData int true "活动id"
// @Param actStoreSkuAddList formData string false "需添加的活动商品信息"
// @Param actStoreSkuDeleteList formData string false "需删除的活动商品信息"
// @Param isAsync formData bool false "是否异步"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /UpdateActStoreSkuBind [put]
func (c *ActController) UpdateActStoreSkuBind() {
c.callUpdateActStoreSkuBind(func(params *tActUpdateActStoreSkuBindParams) (retVal interface{}, errCode string, err error) {
var actStoreSkuAddList, actStoreSkuDeleteList []*act.ActStoreSkuParam
if err = jxutils.Strings2Objs(params.ActStoreSkuAddList, &actStoreSkuAddList, params.ActStoreSkuDeleteList, &actStoreSkuDeleteList); err == nil {
if len(actStoreSkuAddList) == 0 && len(actStoreSkuDeleteList) == 0 {
err = fmt.Errorf("actStoreSkuAddList与actStoreSkuDeleteList不能都为空")
} else {
db := dao.GetDB()
dao.Begin(db)
func() {
defer func() {
if r := recover(); r != nil {
dao.Rollback(db)
}
}()
if len(actStoreSkuAddList) > 0 {
if err = act.AddActStoreSkuBind(params.Ctx, db, params.ActID, actStoreSkuAddList); err != nil {
dao.Rollback(db)
}
}
if len(actStoreSkuDeleteList) > 0 {
if err = act.DeleteActStoreSkuBind(params.Ctx, db, params.ActID, actStoreSkuDeleteList); err != nil {
dao.Rollback(db)
}
}
dao.Commit(db)
}()
retVal, err = act.SyncAct(params.Ctx, nil, params.ActID, nil, nil, nil, params.IsAsync)
}
}
return retVal, "", err
})
}