diff --git a/business/jxstore/cms/store.go b/business/jxstore/cms/store.go index a0ce88a6d..d98df918a 100644 --- a/business/jxstore/cms/store.go +++ b/business/jxstore/cms/store.go @@ -3534,3 +3534,22 @@ func GetJdDeliveryArea(ctx *jxcontext.Context, storeIDs []int) (err error) { } return err } + +func UpdateStorePushClient(ctx *jxcontext.Context, storeID int, cID string) (err error) { + var ( + db = dao.GetDB() + ) + storePushClients, err := dao.GetStorePushClient(db, storeID, cID) + if err != nil { + return err + } + if len(storePushClients) == 0 { + storePushClient := &model.StorePushClient{ + StoreID: storeID, + ClientID: cID, + } + dao.WrapAddIDCULDEntity(storePushClient, ctx.GetUserName()) + dao.CreateEntity(db, storePushClient) + } + return err +} diff --git a/business/model/dao/store.go b/business/model/dao/store.go index b14feb9dd..0c6662663 100644 --- a/business/model/dao/store.go +++ b/business/model/dao/store.go @@ -813,3 +813,27 @@ func DeleteStoreCategroies(db *DaoDB, userName string, storeID int) (err error) _, err = ExecuteSQL(db, sql, sqlParams) return err } + +func GetStorePushClient(db *DaoDB, storeID int, cID string) (storePushClient []*model.StorePushClient, err error) { + sql := ` + SELECT * + FROM store_push_client + WHERE deleted_at = ? + ` + sqlParams := []interface{}{ + utils.DefaultTimeValue, + } + if storeID > 0 { + sql += " AND store_id = ?" + sqlParams = append(sqlParams, storeID) + } + if cID != "" { + sql += " AND client_id = ?" + sqlParams = append(sqlParams, cID) + } + err = GetRows(db, &storePushClient, sql, sqlParams) + if err != nil { + return nil, err + } + return storePushClient, err +} diff --git a/business/model/store.go b/business/model/store.go index 2e281bb68..f82f83a04 100644 --- a/business/model/store.go +++ b/business/model/store.go @@ -686,13 +686,13 @@ func (*StoreCategoryMap) TableUnique() [][]string { } } -type StoreClientPush struct { +type StorePushClient struct { ModelIDCULD StoreID int `orm:"column(store_id)" json:"storeID"` ClientID string `orm:"column(client_id);size(255)" json:"clientID"` } -func (*StoreClientPush) TableUnique() [][]string { +func (*StorePushClient) TableUnique() [][]string { return [][]string{ []string{"StoreID", "ClientID"}, } diff --git a/controllers/cms_store.go b/controllers/cms_store.go index c15db3963..3e81008c3 100644 --- a/controllers/cms_store.go +++ b/controllers/cms_store.go @@ -825,3 +825,18 @@ func (c *StoreController) GetJdDeliveryArea() { return retVal, "", err }) } + +// @Title 修改门店对应Cid(个推推送uniapp消息用) +// @Description 修改门店对应Cid(个推推送uniapp消息用) +// @Param token header string true "认证token" +// @Param storeID formData int true "门店ID" +// @Param clientID formData string true "cID" +// @Success 200 {object} controllers.CallResult +// @Failure 200 {object} controllers.CallResult +// @router /UpdateStorePushClient [post] +func (c *StoreController) UpdateStorePushClient() { + c.callUpdateStorePushClient(func(params *tStoreUpdateStorePushClientParams) (retVal interface{}, errCode string, err error) { + err = cms.UpdateStorePushClient(params.Ctx, params.StoreID, params.ClientID) + return retVal, "", err + }) +} diff --git a/globals/beegodb/beegodb.go b/globals/beegodb/beegodb.go index be52e1e91..df24cfd6b 100644 --- a/globals/beegodb/beegodb.go +++ b/globals/beegodb/beegodb.go @@ -38,6 +38,7 @@ func Init() { orm.RegisterModel(&model.SkuCategory{}) orm.RegisterModel(&model.ThingMap{}) orm.RegisterModel(&model.SkuExinfoMap{}) + orm.RegisterModel(&model.StorePushClient{}) orm.RegisterModel(&model.AuthBind{}, &model.User{}) diff --git a/routers/commentsRouter_controllers.go b/routers/commentsRouter_controllers.go index eccffbe17..02272a803 100644 --- a/routers/commentsRouter_controllers.go +++ b/routers/commentsRouter_controllers.go @@ -2079,6 +2079,15 @@ func init() { Filters: nil, Params: nil}) + beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"], + beego.ControllerComments{ + Method: "UpdateStorePushClient", + Router: `/UpdateStorePushClient`, + AllowHTTPMethods: []string{"post"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"], beego.ControllerComments{ Method: "UpdateStoreVendorMap",