package gateway import ( "git.sxidc.com/go-framework/baize/framework/core/api" "git.sxidc.com/go-tools/utils/strutils" ) func AddJsonBodyTenantIDAndUserID(c *api.Context, tenantIDField string, userIDField string) error { jsonBody, err := c.GetJsonBody() if err != nil { return err } tenantID := jsonBody.Get(tenantIDField) if tenantID == nil { tenantInfo := c.GetTenantInfo() if tenantInfo != nil { jsonBody.Set(tenantIDField, tenantInfo.GetID()) } else { jsonBody.Set(tenantIDField, "guest-"+strutils.SimpleUUID()[:26]) } } userID := jsonBody.Get(userIDField) if userID == nil { userInfo := c.GetUserInfo() if userInfo != nil { jsonBody.Set(userIDField, userInfo.GetID()) } else { jsonBody.Set(userIDField, "guest-"+strutils.SimpleUUID()[:26]) } } return nil } func AddQueryParamsTenantIDAndUserID(c *api.Context, tenantIDField string, userIDField string) error { queryParams := c.GetQueryParams() if c.GetTenantInfo() != nil { tenantID := queryParams.Get(tenantIDField) if strutils.IsStringEmpty(tenantID) { queryParams.Set(tenantIDField, c.GetTenantInfo().GetID()) } } if c.GetUserInfo() != nil { userID := queryParams.Get(userIDField) if strutils.IsStringEmpty(userID) { queryParams.Set(userIDField, c.GetUserInfo().GetID()) } } return nil }