BG
BG‑Triage
PROTOTYPE
Staff Console
Resident Portal
Mobile App
City of Bowling Green, Kentucky · Neighborhood & Community Services
BG
Triage Console
NCS · Public Works
{{ n.key }} {{ n.label }} {{ n.badge }}
DM
Dana Mercer
Triage Supervisor
Triage Queue
Thursday, August 20 · only tickets the City actually owns need a decision.
Auto-routed today
31of 47
Staff hours saved
6.2hrs
SLA at risk
2tickets
{{ f.label }}
{{ countLabel }}
Issue
Location
Jurisdiction
Status
SLA
{{ t.icon }}
{{ t.title }}
{{ t.id }} {{ t.type }} {{ t.dupeLabel }}
{{ t.addr }}
{{ t.ago }} · {{ t.voteLabel }}
{{ t.jurLabel }}
{{ t.status }}
{{ t.sla }}
16 tickets never reached this screen today.
Jurisdiction routing sent them to KYTC, Warren County, BGMU and WRECC — residents were notified automatically.
See routing rules
← Queue
{{ cur.id }}
{{ cur.status }}
Message resident
Assign crew
Mark resolved
{{ cur.type }} {{ cur.jurLabel }}
{{ cur.title }}
{{ cur.addr }} · {{ cur.date }}
{{ cur.photo }}
Reported by
{{ cur.rep }}
verified resident account
Priority
{{ cur.pri }}
{{ cur.voteLabel }}
Assigned to
{{ cur.dept }}
SLA {{ cur.sla }}
Activity
Ticket created from mobile app
{{ cur.date }} · photo + GPS attached
Jurisdiction resolved automatically — 1.4 seconds
5 GIS layers queried · owner: {{ cur.owner }}
Resident emailed the routing outcome
No staff member touched this ticket before now.
Automated jurisdiction routing
{{ cur.owner }}
Matched layer {{ cur.layer }}
City limits
State ROW
Tagged {{ cur.jurLabel }} and forwarded with the resident’s photo.
{{ cur.rep }} emailed: “this one belongs to {{ cur.owner }}, here’s their reference.”
City copy closed — nothing left sitting in an inbox.
Inspect the rule that fired
Nearby & related
Within 400 ft of this pin
2 likely duplicates
Same block, same issue type, last 48 hours
Review →
Live Map
Every open ticket drawn over the jurisdiction layers the router queried.
{{ g.label }}
GIS layers
resolved by GIS
{{ l.label }}
Hover a boundary or route for its layer name. Click a pin to open the ticket; the chips below the map filter by owner.
Pins on screen
{{ t.addr }}
{{ t.type }} · {{ t.jurLabel }}
Crew Dispatch
Tickets the city owns, bundled into work orders by route and material.
Today · Streets Crew 2
4 of 4 staffed
{{ j.id }} {{ j.st }}
{{ j.t }}
{{ j.win }} · {{ j.tickets }} ticket(s) bundled
{{ job.id }}
{{ job.st }}
Print route sheet
Push to crew phones
{{ job.t }}
Window
{{ job.win }}
Priority
{{ job.pri }}
Materials
{{ job.mat }}
Residents notified
{{ job.tickets }} on completion
Bundled tickets
BGT-4467Chestnut St & 4th Ave+3 merged
BGT-4455Chestnut St & 6th Ave
Route optimized: 2.1 miles, saves one truck trip vs. dispatching separately.
Crew
BL
Bobby Lyle
Lead · clocked in 6:52 AM
SR
Selina Ruiz
Operator · clocked in 6:58 AM
Crew closes the job from the field app with an after photo. That photo goes straight to all 4 residents.
Duplicate Review
Three residents, one pothole. Merge once and everybody gets the same update.
Chestnut St & 4th Ave — pothole
4 reports within 210 ft, all in the last 26 hours. 96% match confidence.
Merge all 4 into BGT-4467
✓ Merged · 4 residents notified
BGT-4467
Deshawn Roby
Aug 19, 11:02 AM · primary
BGT-4469b
Anita Culpepper
Aug 19, 6:14 PM · 38 ft away
BGT-4470c
Wes Hardaway
Aug 20, 7:41 AM · 112 ft away
BGT-4471d
Phone intake — 270-393-3444
Aug 20, 8:20 AM · 210 ft away
Not a duplicate? Splitting keeps both tickets and their own SLA clocks.
Keep separate
Compare photos
Cave Mill Rd & Woodhurst Dr — street light
2 reports, same BGMU pole #BG-88214. 91% match.
Review →
I-65 Exit 22 ramp — pothole
5 reports, already auto-closed to KYTC. Merge for the record.
Review →
Analytics & SLA
Rolling 90 days · the numbers the City Manager asks for in budget season.
30d
90d
Fiscal year
Auto-routed with no staff touch
63%
1,412 of 2,241 requests
Median time to correct owner
1.4s
was 3.6 days by email
City SLA met
94%
target 90% · 41 breaches
Duplicates merged
387
17% of all submissions
Where requests actually go
Every bar is work the city no longer has to sort by hand.
City of Bowling Green1,204
KYTC District 3 (state routes, I-65)462
BGMU341
Warren County Public Works157
WRECC77
Volume by week
City-owned Routed elsewhere Jun 15 → Aug 20
SLA by department
Streets
96%
Neighborhood Services
91%
Code Enforcement
83%
Parks & Recreation
98%
Top reported blocks
Repeat offenders worth a capital project, not another patch.
Chestnut St & 4th Ave31
Old Morgantown Rd corridor24
E 11th Ave (vacant lots)19
Cave Mill Rd (lighting)17
Recommended for the paving list
Chestnut St between 3rd and 6th has taken 31 pothole reports and 9 patches in 90 days. Full mill-and-overlay pays back in one season.
Archive & Audit
Nothing is deleted. Every routing decision keeps its GIS receipt for open-records requests.
Search 18,402 archived tickets…
Export CSV
Ticket
Issue
Routed to
Outcome
Closed
BGT-4460
Graffiti — Circus Square Park
Parks & Rec
Cleaned
Aug 15
BGT-4451
Pothole — Nashville Rd (US 31-W)
KYTC Dist. 3
State handled
Aug 14
BGT-4448
Street light — Smallhouse Rd
BGMU
Pole repaired
Aug 13
BGT-4441
Junk & debris — 219 Ridgecrest Dr
Neighborhood Svcs
Hauled
Aug 12
BGT-4437
Overgrown grass — Porter Pike
Warren County
County handled
Aug 11
BGT-4429
Sidewalk hazard — State St
Public Works
Slab replaced
Aug 9
BGT-4418
Street light — Plum Springs Loop
WRECC
Co-op handled
Aug 7
Retention: permanent. Photos held 7 years per records schedule.
Audit trail · BGT-4451
Why did this leave the city?
08/14 06:41:02.118
Submission received · mobile · GPS 36.9702, -86.4718 ±4m
08/14 06:41:02.612
Point-in-polygon vs City_Corporate_Limits → inside
08/14 06:41:02.809
Buffer 40ft vs KYTC_State_Maintained_Routesmatch: US 31-W
08/14 06:41:03.004
Rule R-002 state-row fired · owner set to KYTC District 3
08/14 06:41:03.550
Email to d3.maintenance@ky.gov with photo + coordinates
08/14 06:41:03.612
SMS + email to reporter explaining the hand-off
08/14 06:41:03.640
City copy closed as Routed — State · 0 staff minutes
Every line here is exportable as a PDF receipt if a resident or council member asks who was responsible.
Routing Rules
Plain-language rules on top of the city’s existing GIS layers. Reorder to change precedence.
⋮⋮
{{ r.name }}
{{ r.layer }}
{{ r.hits }}
Then do this, automatically
{{ r.act }}
Edit conditions
Edit resident email
Test with an address
+ New rule
Connected GIS services
bgky.org/publicworks/gis · ArcGIS REST
City_Corporate_Limits42ms
City_Street_Centerlines61ms
KYTC_State_Routes88ms
BGMU_Electric_Service54ms
WRECC_Territory310ms
Test an address
1042 Scottsville Rd
→ Rule R-002 state-row would fire. Owner: KYTC District 3. Resident email preview available.
Escape hatch
Any resident can reply “this is still broken” and the ticket reopens on a human’s desk with the full routing history attached. Automation never gets the last word.
City of Bowling Green, Kentucky
BG‑Triage
{{ L.tagline }}
{{ g.label }}
{{ whoInitials }}
{{ who }}
{{ s.label }}
{{ L.dateLine }}
{{ L.greetA }}{{ first }}{{ L.greetB }}
{{ L.heroBody }}
{{ L.ctaReport }}
{{ L.ctaMine }}
3
{{ L.statOpen }}
1.4s
{{ L.statRoute }}
2.8d
{{ L.statFix }}
{{ L.yourReports }}
{{ L.seeAll }}
{{ L.rpt1 }}
{{ L.rpt1b }}
{{ L.rpt2 }}
{{ L.rpt2b }}
!
{{ L.alertT }}
{{ L.alertB }}
{{ L.nextPickup }}
{{ L.tomorrow }}
{{ L.trashRecy }}
Route B {{ L.yardMon }}
{{ L.yourApps }}
{{ L.threeActive }}
{{ L.fenceInsp }}
{{ L.weekInBG }}
{{ L.sixEvents }}
{{ L.movies }}
{{ L.tagParks }} {{ L.tagCommission }}
{{ L.payLookup }}
{{ L.linkTax }}
{{ L.linkBill }}
{{ L.linkBgmu }}
{{ L.linkContractor }}
{{ L.nearTitle }}
{{ L.nearBody }}
{{ L.hallTitle }}
{{ L.hall1 }}
{{ L.hall1b }}
{{ L.hall2 }}
{{ L.hall2b }}
{{ L.hall3 }}
{{ L.hall3b }}
{{ L.spotTitle }}
{{ L.spotBody }}
{{ r.ic }}{{ r.label }}
{{ repTypeLabel }}
{{ L.showWhere }}
{{ L.takePhoto }}
{{ L.photoSlot }}
{{ L.gpsNote }}
{{ L.locLabel }}
1042 Scottsville Rd
{{ L.fromPhoto }}
{{ L.whatsGoing }} {{ L.optional }}
{{ L.descDemo }}
{{ L.textMe }}
{{ L.back }}
{{ L.sendIt }}
{{ L.checkingMaps }}
{{ L.figuring }}
{{ g.mark }}
{{ g.q }}
{{ g.layer }}
{{ g.verdict }}
{{ L.mapLegend }}
{{ L.verdictKicker }}
{{ L.verdictTitle }}
{{ L.verdictBody }}
{{ L.yourRef }}
{{ ticketNo }}
{{ L.stateRef }}
SR-231-9014
{{ L.elapsed }}
1.4 seconds
{{ L.mergeNote }}
{{ L.gotIt }}
{{ L.thanksA }}{{ first }}{{ L.thanksB }}
{{ L.doneBody }}
{{ L.trackThis }}
{{ L.reportElse }}
{{ L.mineTitle }}
{{ L.mineBody }}
{{ r.jurLabel }} {{ r.id }}
{{ r.t }}
{{ r.when }} · {{ r.status }}
{{ L.newReport }}
{{ rp.t }}
{{ rp.id }} · {{ rp.when }}
{{ s.s }}
{{ s.d }}
{{ s.txt }}
{{ L.stillBroken }}
{{ L.addPhoto }}
{{ L.shareNeighbour }}
{{ L.permTitle }}
{{ L.permBody }}
{{ p.id }}
{{ p.name }}
{{ L.filed }} {{ p.filed }}
{{ p.status }}
{{ p.note }}
{{ s.label }}
{{ L.startApp }}
{{ L.permBuilding }}
{{ L.permBurn }}
{{ L.permStr }}
{{ L.permCut }}
{{ L.commentsT }}
{{ L.commentsB }}
{{ L.uploadRev }}
{{ L.inspWeek }}
{{ L.inspWhen }}
{{ L.inspWho }}
{{ L.reschedule }}
{{ L.addCal }}
{{ L.evTitle }}
{{ L.evBody }}
{{ L.evList }}
{{ L.evMonth }}
{{ e.d }}
{{ e.mo }}
{{ e.name }}
{{ e.where }}
{{ e.tag }}
{{ L.remindMe }}
{{ L.evSource }}
{{ L.watchLive }}
BGTV4
{{ L.bgtvNext }}
{{ L.regOpen }}
{{ L.reg1 }}
{{ L.reg1b }}
{{ L.reg2 }}
{{ L.reg2b }}
{{ L.reg3 }}
{{ L.reg3b }}
{{ L.hearingT }}
{{ L.hearingB }}
{{ L.pickTitle }}
{{ L.pickBody }}
{{ L.collWeek }}
{{ L.routeB }}
{{ L.dMon }}
{{ L.yardWaste }}
{{ L.dTue }}
{{ L.dWed }}
{{ L.dThu }}
{{ L.todayCell }}
{{ L.dFri }}
{{ L.trashPlus }}
{{ L.dSat }}
{{ L.dSun }}
{{ L.cartsNote }}
{{ L.biggerGone }}
{{ L.bulkPickup }}
{{ L.newCart }}
{{ L.hazDays }}
!
{{ L.trafficT }}
{{ L.trafficB }}
{{ L.snowT }}
{{ L.snowA }} {{ L.snowP2 }} {{ L.snowB }}
{{ L.snowMap }}
{{ L.alertsYou }}
{{ L.al1 }}
{{ L.al2 }}
{{ L.al3 }}
{{ L.al4 }}
{{ L.nrTitle }}
{{ L.nrBody }}
{{ L.allIssues }}
{{ L.last30 }}
{{ L.openNear }}
{{ L.nr1 }}
{{ L.nr1b }}
{{ L.meToo }}
{{ L.nr2 }}
{{ L.nr2b }}
{{ L.meToo }}
{{ L.nr3 }}
{{ L.nr3b }}
{{ L.meToo }}
{{ L.hood90 }}
{{ L.h1 }}61
{{ L.h2 }}44
{{ L.h3 }}14
{{ L.h4 }}2.6
{{ L.nothingMatches }}
{{ L.mTitle }}
{{ L.mSub }}
{{ g.label }}
{{ L.mResApp }}
{{ L.mCrewApp }}
{{ L.mScreens }}
{{ L.mScrHome }}
{{ L.mScrCam }}
{{ L.mScrVerdict }}
{{ L.mScrMine }}
9:41
▮▮▮ ᯤ ▰
City of Bowling Green
{{ whoInitials }}
{{ L.greetA }}{{ first }}.
{{ L.mTrashTonight }}
{{ L.ctaReport }}
{{ L.mReportSub }}
{{ L.mUpdateToday }}
{{ L.mUpd1 }}
{{ L.mUpd1b }}
{{ L.mPickup }}
{{ L.tomorrow }}
{{ L.mTrashRecy }}
{{ L.mPermits }}
{{ L.threeActive }}
{{ L.mInspFri }}
{{ L.mNearYou }}
{{ L.mNearYouB }}
{{ L.mCamHint }}
{{ L.mTypePothole }}
{{ L.mTypeLight }}
{{ L.mTypeJunk }}
{{ L.mGpsLocked }}
36.9575, -86.4361 ±4m
{{ L.mLibrary }}
{{ L.mTypeIt }}
{{ L.mChecking }}
{{ L.mWhoseSpot }}
{{ g.mark }}
{{ g.layer }}
{{ L.mStateHwy }}
{{ L.mSentKytc }}
{{ L.mSentBody }}
{{ L.mYours }}
BGT-4472
{{ L.mStateRef }}
SR-231-9014
{{ L.mTook }}
1.4s
{{ L.mTrackIt }}
{{ L.mScrMine }}
{{ L.mTabReports }}
{{ L.mPermits }}
{{ L.mTabBills }}
{{ L.mCityTag }} BGT-4467
{{ L.rpt1 }}
{{ L.mR1b }}
State · KYTC BGT-4472
{{ L.mR2 }}
{{ L.mR2b }}
{{ L.rpt2 }}
{{ L.mR3b }}
{{ n.ic }}
{{ n.label }}
{{ L.mF1 }}
{{ L.mF1b }}
{{ L.mF2 }}
{{ L.mF2b }}
{{ L.mF3 }}
{{ L.mF3b }}
7:04
▮▮▮ ᯤ ▰
BL
Bobby Lyle
{{ L.cStreets2 }}
{{ L.cClocked }}
{{ L.cStops }}
{{ L.cStopsB }}
WO-2211
{{ L.cNext }}
{{ L.cJob1 }}
Chestnut St & 4th Ave
{{ L.cJob1b }}
{{ L.cNavigate }}
{{ L.cStart }}
WO-2212
10:30
{{ L.cJob2 }}
{{ L.cJob2b }}
WO-2213
1:00
{{ L.cJob3 }}
{{ L.cJob3b }}
WO-2214
{{ L.tomorrow }}
{{ L.cJob4 }}
9:52
▮▮▮ ᯤ ▰
WO-2211
{{ L.cOnSite }}
00:41:12
{{ L.cCloseOut }}
{{ L.cCloseB }}
{{ L.cBefore }}
{{ L.cAfter }}
{{ L.cTakePhoto }}
{{ L.cMaterials }}
{{ L.cTons }}
2.5
3.0
{{ L.cOther }}
{{ L.cNoteRes }} {{ L.optional }}
{{ L.cNoteDemo }}
{{ L.cComplete }}
{{ L.cCantFinish }}