in golang/client/client.go [871:915]
func (client *Client) BuildHaQueryconfigClauseStr(Clause *HaQueryconfigClause) (_result *string, _err error) {
_err = nil
tempClauseString := tea.String("")
if tea.BoolValue(util.IsUnset(tea.ToMap(Clause))) {
_err = tea.NewSDKError(map[string]interface{}{
"name": "ParameterMissing",
"message": "'HaQueryconfigClause' can not be unset",
})
return _result, _err
}
if tea.BoolValue(util.IsUnset(Clause.Start)) {
Clause.Start = nil
}
if tea.BoolValue(util.IsUnset(Clause.Hit)) {
Clause.Hit = nil
}
if tea.BoolValue(util.IsUnset(Clause.Format)) {
Clause.Format = nil
}
tempClauseString = tea.String("start:" + tea.StringValue(util.DefaultString(Clause.Start, tea.String("0"))))
tempClauseString = tea.String(tea.StringValue(tempClauseString) + ",hit:" + tea.StringValue(util.DefaultString(Clause.Hit, tea.String("10"))))
tempClauseString = tea.String(tea.StringValue(tempClauseString) + ",format:" + tea.StringValue(string_.ToLower(util.DefaultString(Clause.Format, tea.String("json")))))
if !tea.BoolValue(util.IsUnset(Clause.CustomConfig)) {
for _, keyField := range map_.KeySet(Clause.CustomConfig) {
fieldValue := Clause.CustomConfig[tea.StringValue(keyField)]
if !tea.BoolValue(util.Empty(fieldValue)) {
fieldValueTrimed := string_.Trim(fieldValue)
keyFieldTrimed := string_.Trim(keyField)
if !tea.BoolValue(util.Empty(tempClauseString)) {
tempClauseString = tea.String(tea.StringValue(tempClauseString) + "," + tea.StringValue(keyFieldTrimed) + ":" + tea.StringValue(fieldValueTrimed))
} else {
tempClauseString = tea.String(tea.StringValue(keyFieldTrimed) + ":" + tea.StringValue(fieldValueTrimed))
}
}
}
}
_result = tempClauseString
return _result, _err
}