From d7b38e196e44fd16329a2f71a8fbe15882aaa20c Mon Sep 17 00:00:00 2001 From: gazebo Date: Mon, 19 Aug 2019 10:04:25 +0800 Subject: [PATCH] + AddStoreBossByMoble --- business/jxstore/cms/store.go | 24 ++++++++++++++++++++-- business/partner/printer/feie/feie_test.go | 1 + 2 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 business/partner/printer/feie/feie_test.go diff --git a/business/jxstore/cms/store.go b/business/jxstore/cms/store.go index 40a778a67..1d2e99d9e 100644 --- a/business/jxstore/cms/store.go +++ b/business/jxstore/cms/store.go @@ -8,7 +8,10 @@ import ( "strings" "time" + "git.rosy.net.cn/jx-callback/business/authz/autils" + "git.rosy.net.cn/jx-callback/business/auth2" + "git.rosy.net.cn/jx-callback/business/authz" "git.rosy.net.cn/baseapi/platformapi/dingdingapi" "git.rosy.net.cn/baseapi/platformapi/jdapi" @@ -653,7 +656,7 @@ func UpdateStore(ctx *jxcontext.Context, storeID int, payload map[string]interfa globals.SugarLogger.Debugf("UpdateStore track:%s, before call SyncStore", ctx.GetTrackInfo()) _, err = CurVendorSync.SyncStore(ctx, db, -1, store.ID, false, userName) if valid["tel1"] != nil { - BindMobile2Store(ctx, utils.Interface2String(valid["tel1"]), storeID) + AddStoreBossByMoble(ctx, utils.Interface2String(valid["tel1"]), storeID) } if syncStatus&model.SyncFlagStoreAddress != 0 && valid["tel1"] != nil || valid["payeeName"] != nil { updateCourierStores(ctx, storeID) @@ -749,7 +752,7 @@ func CreateStore(ctx *jxcontext.Context, storeExt *StoreExt, userName string) (i store.ID = existingID if err = dao.CreateEntity(db, store); err == nil { UpdateOrCreateCourierStores(ctx, store.ID, false, false, false) - BindMobile2Store(ctx, storeExt.Tel1, storeExt.ID) + AddStoreBossByMoble(ctx, storeExt.Tel1, storeExt.ID) return store.ID, err } return 0, err @@ -1739,3 +1742,20 @@ func SyncStoresQualify(ctx *jxcontext.Context, storeIDs []int, isAsync, isContin } return hint, err } + +func AddStoreBossByMoble(ctx *jxcontext.Context, mobile string, storeID int) (num int64, err error) { + if globals.EnableWXAuth2 { + db := dao.GetDB() + userList, _, err2 := dao.GetUsers(db, 0, "", nil, "", mobile, 0, 0) + if err = err2; err == nil && len(userList) > 0 { + if err = AddRoles4User(ctx, userList[0].GetID(), []*authz.RoleInfo{ + autils.NewRole(authz.StoreRoleBoss, storeID), + }); err == nil { + num = 1 + } + } + } else { + num, err = BindMobile2Store(ctx, mobile, storeID) + } + return num, err +} diff --git a/business/partner/printer/feie/feie_test.go b/business/partner/printer/feie/feie_test.go new file mode 100644 index 000000000..e2179a769 --- /dev/null +++ b/business/partner/printer/feie/feie_test.go @@ -0,0 +1 @@ +package feie