From 400687914aa9f418d5c04ed984e2a2808de0a56f Mon Sep 17 00:00:00 2001 From: Liujian <824010343@qq.com> Date: Fri, 16 Aug 2024 11:27:41 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E8=AE=BF=E5=AE=A2=E6=A8=A1?= =?UTF-8?q?=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- go.mod | 9 ++------- go.sum | 8 ++++---- module/permit/system/iml.go | 10 ++++++---- module/permit/team/iml.go | 11 ++++++----- 4 files changed, 18 insertions(+), 20 deletions(-) diff --git a/go.mod b/go.mod index 6e7e69c7..4fdede54 100644 --- a/go.mod +++ b/go.mod @@ -5,9 +5,9 @@ go 1.21 //toolchain go1.21.1 require ( - github.com/eolinker/ap-account v1.0.7 + github.com/eolinker/ap-account v1.0.8 github.com/eolinker/eosc v0.17.3 - github.com/eolinker/go-common v1.0.1 + github.com/eolinker/go-common v1.0.2 github.com/gabriel-vasile/mimetype v1.4.4 github.com/gin-gonic/gin v1.10.0 github.com/google/uuid v1.6.0 @@ -65,8 +65,3 @@ require ( gopkg.in/yaml.v2 v2.4.0 // indirect gorm.io/driver/mysql v1.5.2 // indirect ) - -//replace ( -// github.com/eolinker/ap-account => ../../eolinker/ap-account -// github.com/eolinker/go-common => ../../eolinker/go-common -//) diff --git a/go.sum b/go.sum index 1c8ba4e8..ec096922 100644 --- a/go.sum +++ b/go.sum @@ -23,12 +23,12 @@ github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/r github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc= github.com/dustin/go-humanize v1.0.0 h1:VSnTsYCnlFHaM2/igO1h6X3HA71jcobQuxemgkq4zYo= github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= -github.com/eolinker/ap-account v1.0.7 h1:gmltZ0v/0SFY4LElhLWRDQfNpr3Q74A9/T8m+upYiVM= -github.com/eolinker/ap-account v1.0.7/go.mod h1:MViCOvUaS2QrVift1Be3yGjjMywzICL9317eOxoixSI= +github.com/eolinker/ap-account v1.0.8 h1:HDU7WdxWu7HU8zBJc8z2itbfh89KrFfXwJHP/WtGG3Q= +github.com/eolinker/ap-account v1.0.8/go.mod h1:5lsZwkQfnHO5YJ3Cu6X1PZwZ0gbmJBUcix0hxG8aEsY= github.com/eolinker/eosc v0.17.3 h1:sr2yT+v/AsqEdciRaaZZj0zL9pTufR5RvDW6+65hraQ= github.com/eolinker/eosc v0.17.3/go.mod h1:xgq816hpanlMXFtZw7Ztdctb1eEk9UPHchY4NfFO6Cw= -github.com/eolinker/go-common v1.0.1 h1:Uan6QmXAlPiX6hc1ptSIHWvaWXNA+VlBjC4gCaDEiz0= -github.com/eolinker/go-common v1.0.1/go.mod h1:Kb/jENMN1mApnodvRgV4YwO9FJby1Jkt2EUjrBjvSX4= +github.com/eolinker/go-common v1.0.2 h1:rGxcrDdHr+mtMHVPdz3tx7oOsKLo0Msy6W0U1ZNsXaQ= +github.com/eolinker/go-common v1.0.2/go.mod h1:Kb/jENMN1mApnodvRgV4YwO9FJby1Jkt2EUjrBjvSX4= github.com/gabriel-vasile/mimetype v1.4.4 h1:QjV6pZ7/XZ7ryI2KuyeEDE8wnh7fHP9YnQy+R0LnH8I= github.com/gabriel-vasile/mimetype v1.4.4/go.mod h1:JwLei5XPtWdGiMFB5Pjle1oEeoSeEuJfJE+TtfvdB/s= github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= diff --git a/module/permit/system/iml.go b/module/permit/system/iml.go index 2cd4d3c5..c7695dc4 100644 --- a/module/permit/system/iml.go +++ b/module/permit/system/iml.go @@ -2,7 +2,7 @@ package system import ( "context" - "errors" + "github.com/eolinker/go-common/access" "reflect" "github.com/gin-gonic/gin" @@ -25,10 +25,12 @@ type imlSystemPermitModule struct { } func (m *imlSystemPermitModule) accesses(ctx context.Context) ([]string, error) { - uid := utils.UserId(ctx) - if uid == "" { - return nil, errors.New("not login") + + // 判断是否是访客,如果是,直接返回访客权限 + if utils.GuestAllow() && utils.IsGuest(ctx) { + return access.GuestAccess(role.SystemTarget()), nil } + uid := utils.UserId(ctx) roleMembers, err := m.roleMemberService.List(ctx, role.SystemTarget(), uid) if err != nil { return nil, err diff --git a/module/permit/team/iml.go b/module/permit/team/iml.go index a624f804..7c15463e 100644 --- a/module/permit/team/iml.go +++ b/module/permit/team/iml.go @@ -2,8 +2,7 @@ package team import ( "context" - "errors" - + "github.com/eolinker/go-common/access" "github.com/eolinker/go-common/permit" "github.com/gin-gonic/gin" @@ -57,10 +56,12 @@ func (m *imlTeamPermitModule) OnComplete() { } func (m *imlTeamPermitModule) accesses(ctx context.Context, teamId string) ([]string, error) { - uid := utils.UserId(ctx) - if uid == "" { - return nil, errors.New("not login") + + // 判断是否是访客,如果是,直接返回访客权限 + if utils.GuestAllow() && utils.IsGuest(ctx) { + return access.GuestAccess(role.SystemTarget()), nil } + uid := utils.UserId(ctx) roleMembers, err := m.roleMemberService.List(ctx, role.TeamTarget(teamId), uid) if err != nil { return nil, err