Bootstrap copied BFF and local accounts with public Sendico contracts (#34)
This commit is contained in:
1 parent
67dc5b5b1e
commit
7062672a87
556 files changed
+42291
-777
No files matched your search
@@ -0,0 +1,30 @@
|
||||
package invitationdb
|
||||
|
||||
import (
|
||||
"git.sendico.io/tech/sxchnge/bff/pkg/db/repository"
|
||||
"git.sendico.io/tech/sxchnge/bff/pkg/db/repository/builder"
|
||||
ri "git.sendico.io/tech/sxchnge/bff/pkg/db/repository/index"
|
||||
"git.sendico.io/tech/sxchnge/bff/pkg/model"
|
||||
)
|
||||
|
||||
const uniquePendingInvitationEmailIndexName = "unique_pending_invitation_email_per_org"
|
||||
|
||||
func pendingInvitationEmailIndexDefinition() *ri.Definition {
|
||||
statusValues := model.PendingInvitationStatusValues()
|
||||
statuses := make([]any, 0, len(statusValues))
|
||||
for _, status := range statusValues {
|
||||
statuses = append(statuses, status)
|
||||
}
|
||||
|
||||
return &ri.Definition{
|
||||
Keys: []ri.Key{
|
||||
{Field: repository.OrgField().Build(), Sort: ri.Asc},
|
||||
{Field: "description.email", Sort: ri.Asc},
|
||||
},
|
||||
Unique: true,
|
||||
Name: uniquePendingInvitationEmailIndexName,
|
||||
PartialFilter: repository.Query().
|
||||
In(repository.Field("status"), statuses...).
|
||||
Comparison(repository.Field("description.email"), builder.Type, "string"),
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user