CTLE-507 Fix api field sorting (make sure they have a label too)

This commit is contained in:
2023-07-06 16:13:15 -05:00
parent 6f578eb2f0
commit 4299199947
2 changed files with 4 additions and 1 deletions

View File

@ -73,6 +73,7 @@ public class GetTableApiFieldsAction extends AbstractQActionFunction<GetTableApi
// get fields on the table which are in this version //
///////////////////////////////////////////////////////
List<QFieldMetaData> fieldList = new ArrayList<>(table.getFields().values());
fieldList.sort(Comparator.comparing(QFieldMetaData::getLabel));
for(QFieldMetaData field : fieldList)
{
if(!isExcluded(input.getApiName(), field) && getApiVersionRange(input.getApiName(), field).includes(version))
@ -92,7 +93,7 @@ public class GetTableApiFieldsAction extends AbstractQActionFunction<GetTableApi
}
}
fieldList.sort(Comparator.comparing(QFieldMetaData::getLabel));
fields.sort(Comparator.comparing(QFieldMetaData::getLabel));
return (new GetTableApiFieldsOutput().withFields(fields));
}

View File

@ -34,6 +34,7 @@ import com.kingsrook.qqq.api.model.APIVersionRange;
import com.kingsrook.qqq.api.model.metadata.ApiOperation;
import com.kingsrook.qqq.api.model.metadata.fields.ApiFieldMetaData;
import com.kingsrook.qqq.api.model.metadata.fields.ApiFieldMetaDataContainer;
import com.kingsrook.qqq.backend.core.instances.QInstanceEnricher;
import com.kingsrook.qqq.backend.core.model.metadata.fields.QFieldMetaData;
import com.kingsrook.qqq.backend.core.model.metadata.tables.QTableMetaData;
import com.kingsrook.qqq.backend.core.utils.CollectionUtils;
@ -94,6 +95,7 @@ public class ApiTableMetaData implements ApiOperation.EnabledOperationsProvider
for(QFieldMetaData field : CollectionUtils.nonNullList(removedApiFields))
{
new QInstanceEnricher(null).enrichField(field);
ApiFieldMetaData apiFieldMetaData = ensureFieldHasApiSupplementalMetaData(apiName, field);
if(apiFieldMetaData.getInitialVersion() == null)
{