Вызов whereField для запроса не изменяет объект запроса, для которого вы вызываете его. Создает новый объект Query с примененным фильтром. Таким образом, вы должны либо следовать шаблону в документации , где они показаны вместе:
let query = db
.collection(Constants.FirebaseFirestore.COLLECTION_ITEM)
.whereField(Constants.FirebaseFirestore.ITEM_OWNER_FIELD, isEqualTo: searchCriteria.owner)
.whereField(Constants.FirebaseFirestore.ITEM_CATEGORY_FIELD, isEqualTo: searchCriteria.category)
.order(by: Constants.FirebaseFirestore.ITEM_DATE_CREATED_FIELD, descending: false)
, либо помнить новый объект Query при каждом его вызове:
var query = db.collection(Constants.FirebaseFirestore.COLLECTION_ITEM)
query = query.whereField(Constants.FirebaseFirestore.ITEM_OWNER_FIELD, isEqualTo: searchCriteria.owner)
query = query.whereField(Constants.FirebaseFirestore.ITEM_CATEGORY_FIELD, isEqualTo: searchCriteria.category)
query = query.order(by: Constants.FirebaseFirestore.ITEM_DATE_CREATED_FIELD, descending: false)