package services import ( "strings" "github.com/beego/beego/v2/client/orm" "server/models" ) func findTenantByLoginName(loginName string) (*models.SystemTenant, error) { loginName = strings.TrimSpace(loginName) if loginName == "" { return nil, orm.ErrNoRows } baseQuery := func() orm.QuerySeter { return models.Orm.QueryTable(new(models.SystemTenant)). Filter("status", 1). Filter("delete_time__isnull", true) } // 登录时支持租户全称、租户简称和租户编码。 for _, field := range []string{"tenant_name", "tenant_short_name", "tenant_code"} { tenant := &models.SystemTenant{} if err := baseQuery().Filter(field, loginName).One(tenant); err == nil { return tenant, nil } } return nil, orm.ErrNoRows }