Skip to content

Commit e085d6b

Browse files
authored
✨ define migrate tenant domain (#145)
1 parent 1ad197e commit e085d6b

File tree

5 files changed

+27
-6
lines changed

5 files changed

+27
-6
lines changed

cmd/migrate/migrate.go

+3
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ var (
3030
generate bool
3131
username string
3232
password string
33+
domain string
3334
system bool
3435
configProvider string
3536
driver string
@@ -59,6 +60,8 @@ func init() {
5960
"admin", "system super administrator login username")
6061
StartCmd.PersistentFlags().StringVarP(&password, "password", "p",
6162
"123456", "system super administrator login password")
63+
StartCmd.PersistentFlags().StringVarP(&domain, "domain", "d",
64+
"localhost:8000", "system tenant domain")
6265
StartCmd.PersistentFlags().StringVarP(&driver,
6366
"gorm-driver", "r",
6467
"mysql", "Start server with db driver")

cmd/migrate/migration/system/1691847581348_migrate.go

+10-2
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package system
22

33
import (
44
"runtime"
5+
"strings"
56
"time"
67

78
adminPKG "github.com/mss-boot-io/mss-boot-admin/pkg"
@@ -13,8 +14,11 @@ import (
1314
"gorm.io/gorm"
1415
)
1516

16-
var Username string
17-
var Password string
17+
var (
18+
Username string
19+
Password string
20+
Domain string
21+
)
1822

1923
func init() {
2024
_, fileName, _, _ := runtime.Caller(0)
@@ -171,6 +175,10 @@ oauth2:
171175
Password: Password,
172176
},
173177
}
178+
if Domain != "" {
179+
tenant.Domains[0].Name = strings.Split(Domain, ":")[0]
180+
tenant.Domains[0].Domain = Domain
181+
}
174182
err = tx.Create(tenant).Error
175183
if err != nil {
176184
return err

go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ require (
2222
github.com/gorilla/websocket v1.5.3
2323
github.com/grafana/pyroscope-go v1.1.1
2424
github.com/larksuite/oapi-sdk-go/v3 v3.3.0
25-
github.com/mss-boot-io/mss-boot v0.2.6-0.20240731101419-5f04fdc2ad35
25+
github.com/mss-boot-io/mss-boot v0.2.6-0.20240806093818-eef02c463244
2626
github.com/mss-boot-io/redisqueue/v2 v2.0.0-20240222064111-d36e396df7f9
2727
github.com/nsqio/go-nsq v1.1.0
2828
github.com/redis/go-redis/v9 v9.6.1

go.sum

+2-2
Original file line numberDiff line numberDiff line change
@@ -573,8 +573,8 @@ github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJ
573573
github.com/montanaflynn/stats v0.7.0/go.mod h1:etXPPgVO6n31NxCd9KQUMvCM+ve0ruNzt6R8Bnaayow=
574574
github.com/montanaflynn/stats v0.7.1 h1:etflOAAHORrCC44V+aR6Ftzort912ZU+YLiSTuV8eaE=
575575
github.com/montanaflynn/stats v0.7.1/go.mod h1:etXPPgVO6n31NxCd9KQUMvCM+ve0ruNzt6R8Bnaayow=
576-
github.com/mss-boot-io/mss-boot v0.2.6-0.20240731101419-5f04fdc2ad35 h1:iRvxKLVvcKRTrEz+HojyE5kUfUS1ZLhfYZH3fHEM/H4=
577-
github.com/mss-boot-io/mss-boot v0.2.6-0.20240731101419-5f04fdc2ad35/go.mod h1:frC6YvBpVBN/zCc2MNZT9RF+9tynB+ERLNbfQDLSHYg=
576+
github.com/mss-boot-io/mss-boot v0.2.6-0.20240806093818-eef02c463244 h1:C14jtdPeIqs1Nbaz10Lm27z0STE2vbyeRzKmSR4a2WM=
577+
github.com/mss-boot-io/mss-boot v0.2.6-0.20240806093818-eef02c463244/go.mod h1:frC6YvBpVBN/zCc2MNZT9RF+9tynB+ERLNbfQDLSHYg=
578578
github.com/mss-boot-io/redisqueue/v2 v2.0.0-20240222064111-d36e396df7f9 h1:/YgpHiqgrxz/0+mKoETXu21c6/fyDt7/j9bdD3UkbdU=
579579
github.com/mss-boot-io/redisqueue/v2 v2.0.0-20240222064111-d36e396df7f9/go.mod h1:f/sISkwvecPq37zygQzWNj5ntJoP/jcoK0kPIjFTWFI=
580580
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA=

models/menu.go

+11-1
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,8 @@ type Menu struct {
7070
// Sort 排序
7171
Sort int `json:"sort" gorm:"column:sort;comment:排序;size:11;not null;default:0"`
7272
// Children 子菜单
73-
Children []*Menu `json:"children,omitempty" gorm:"foreignKey:ParentID;references:ID" swaggerignore:"true"`
73+
Children []*Menu `json:"children,omitempty" gorm:"foreignKey:ParentID;references:ID" swaggerignore:"true"`
74+
ParentPath string `json:"parentPath" gorm:"-" swaggerignore:"true"`
7475
}
7576

7677
func (x MenuList) Len() int { return len(x) }
@@ -89,6 +90,15 @@ func (e *Menu) BeforeCreate(tx *gorm.DB) error {
8990
e.Type == pkg.ComponentAccessType {
9091
e.HideInMenu = true
9192
}
93+
if e.ParentPath != "" {
94+
var parent struct{ ID string }
95+
if tx.Model(&Menu{}).
96+
Where("path = ?", e.ParentPath).
97+
Select("id").
98+
First(&parent).Error == nil {
99+
e.ParentID = parent.ID
100+
}
101+
}
92102
return nil
93103
}
94104

0 commit comments

Comments
 (0)