Add HasChildren flag and filter child businesses from list

Return HasChildren boolean so Android can route food court parents
directly to business selector. Exclude child businesses from top-level
restaurant list.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
John Mizerek 2026-02-25 23:10:51 -08:00
parent ec3a15013b
commit 476d7f9df1

View file

@ -45,6 +45,8 @@ try {
SELECT SELECT
b.ID, b.ID,
b.Name, b.Name,
b.ParentBusinessID,
(SELECT COUNT(*) FROM Businesses c WHERE c.ParentBusinessID = b.ID) AS ChildCount,
a.Latitude AS AddressLat, a.Latitude AS AddressLat,
a.Longitude AS AddressLng, a.Longitude AS AddressLng,
a.City AS AddressCity, a.City AS AddressCity,
@ -53,6 +55,7 @@ try {
LEFT JOIN Addresses a ON b.AddressID = a.ID LEFT JOIN Addresses a ON b.AddressID = a.ID
WHERE (b.IsDemo = 0 OR b.IsDemo IS NULL) WHERE (b.IsDemo = 0 OR b.IsDemo IS NULL)
AND (b.IsPrivate = 0 OR b.IsPrivate IS NULL) AND (b.IsPrivate = 0 OR b.IsPrivate IS NULL)
AND (b.ParentBusinessID IS NULL OR b.ParentBusinessID = 0)
ORDER BY b.Name ORDER BY b.Name
", ",
[], [],
@ -65,6 +68,7 @@ try {
row = { row = {
"BusinessID": q.ID[i], "BusinessID": q.ID[i],
"Name": q.Name[i], "Name": q.Name[i],
"HasChildren": q.ChildCount[i] > 0,
"City": isNull(q.AddressCity[i]) ? "" : q.AddressCity[i], "City": isNull(q.AddressCity[i]) ? "" : q.AddressCity[i],
"Line1": isNull(q.AddressLine1[i]) ? "" : q.AddressLine1[i], "Line1": isNull(q.AddressLine1[i]) ? "" : q.AddressLine1[i],
"Latitude": isNull(q.AddressLat[i]) ? 0 : val(q.AddressLat[i]), "Latitude": isNull(q.AddressLat[i]) ? 0 : val(q.AddressLat[i]),