feat: fix OIDC address field (#3013)

* feat:add fields of sync-database

* feat:add fields of sync-database

* feat: add several fields related to the OIDC specification address

* feat: add the field Address to Address structure in UserWithoutThirdIdp

* fix: delete redundant fields

* fix: add Address struct and delete redundant fields
This commit is contained in:
Husile
2024-06-25 11:54:34 +08:00
committed by GitHub
parent cff0c7a273
commit 2f48d45773

View File

@ -67,7 +67,7 @@ type UserWithoutThirdIdp struct {
CountryCode string `xorm:"varchar(6)" json:"countryCode"` CountryCode string `xorm:"varchar(6)" json:"countryCode"`
Region string `xorm:"varchar(100)" json:"region"` Region string `xorm:"varchar(100)" json:"region"`
Location string `xorm:"varchar(100)" json:"location"` Location string `xorm:"varchar(100)" json:"location"`
Address []string `json:"address"` Address Address `json:"address"`
Affiliation string `xorm:"varchar(100)" json:"affiliation"` Affiliation string `xorm:"varchar(100)" json:"affiliation"`
Title string `xorm:"varchar(100)" json:"title"` Title string `xorm:"varchar(100)" json:"title"`
IdCardType string `xorm:"varchar(100)" json:"idCardType"` IdCardType string `xorm:"varchar(100)" json:"idCardType"`
@ -148,6 +148,15 @@ type ClaimsWithoutThirdIdp struct {
jwt.RegisteredClaims jwt.RegisteredClaims
} }
type Address struct {
Formatted string `json:"formatted"`
StreetAddress string `json:"street_address"`
Locality string `json:"locality"`
Region string `json:"region"`
PostalCode string `json:"postal_code"`
Country string `json:"country"`
}
func getShortUser(user *User) *UserShort { func getShortUser(user *User) *UserShort {
res := &UserShort{ res := &UserShort{
Owner: user.Owner, Owner: user.Owner,
@ -162,6 +171,13 @@ func getShortUser(user *User) *UserShort {
return res return res
} }
func getStreetAddress(user *User) string {
if len(user.Address) > 0 {
return user.Address[0]
}
return ""
}
func getUserWithoutThirdIdp(user *User) *UserWithoutThirdIdp { func getUserWithoutThirdIdp(user *User) *UserWithoutThirdIdp {
res := &UserWithoutThirdIdp{ res := &UserWithoutThirdIdp{
Owner: user.Owner, Owner: user.Owner,
@ -187,7 +203,14 @@ func getUserWithoutThirdIdp(user *User) *UserWithoutThirdIdp {
CountryCode: user.CountryCode, CountryCode: user.CountryCode,
Region: user.Region, Region: user.Region,
Location: user.Location, Location: user.Location,
Address: user.Address, Address: Address{
Formatted: "",
StreetAddress: getStreetAddress(user),
Locality: "",
Region: "",
PostalCode: "",
Country: "",
},
Affiliation: user.Affiliation, Affiliation: user.Affiliation,
Title: user.Title, Title: user.Title,
IdCardType: user.IdCardType, IdCardType: user.IdCardType,