About this project
This is a demo project for the police/customer-service handling side of the metro police convenience service 'Jinglaibang', designed to work alongside the public-facing voice lost-item search screen. The project is a pure front-end single-file implementation (HTML + native JavaScript + localStorage). Double-clicking staff-lostfound-demo.html opens it in a browser, with no dependencies to install and no back-end service required.
Functions are divided into five areas from top to bottom according to business flow:
0. Pending registration · lost inquiry: Information collected after the public makes an inquiry on the voice screen is first queued and does not directly generate a formal work order; after the police officer verifies the details and clicks 'Register and Create File', a formal LF work order is generated and enters pending matching. If the information is incomplete, it can be 'Returned' to notify the public to supplement it. This is equivalent to adding a police review step beyond public self-service order creation, to prevent false reports.
1. Pending matching · tracking code (LF): Formal LF orders queue for matching; clicking a row automatically fills the item type, color, line, and station back into the entry form.
2. Enter found lost items: Police officers register actually found items into the ledger. After submission, the system automatically reverse-matches pending LF orders by 'item type + color/station', and upon a hit generates a 6-digit pickup code. The only required fields are item type and station (station is selected via keyword search from the station directory to prevent typos); color, line, found time, time-window moment, specific found location, description, custodian, and photo are all optional. The specific found location is registered independently, for example 'next to the security scanner at Exit 3' or 'under the middle seat of Car 2'. After selecting a station, the line is automatically populated, and the owner pickup location is automatically determined according to the 'station + police room' rule. Uploading a physical photo is recommended for image-based image matching.
3. Lost-item ledger: Supports filtering by All/In Stock/Matched/Claimed; pickup can be verified and released using the pickup code, matching can be excluded by filling in a review reason, and physical photos and passenger claim feedback can be viewed.
4. Pending confirmation handover form (HD): After a passenger finds an item, they register at the large screen and bring the item to the customer service center. After the police officer confirms using the handover code, it is automatically entered into the ledger. If it is not automatically matched, the LF tracking code can be manually bound. Details include the complete progress timeline.
Regarding status transitions, the lost-item ledger goes through in_stock -> matched -> claimed; passenger handover forms go through pending -> confirmed_at_desk -> matched -> closed. All release actions require secondary confirmation plus 6-digit pickup code verification to prevent fraudulent claims.
Data is stored in browser localStorage (key name jlb_staff_lostfound_demo_v1) and is not lost on refresh; 'Reset Demo Data' in the upper right corner of the page can restore the initial sample data (including 4 LFs, 2 ledger items, and 2 HDs). The project is isolated from the real production system and is only used for process demonstration and training.
When subsequently integrating with production, simply replace each data operation with a call to the unified back-end interface, sharing the same set of lost-reports / lost-handovers / lost-items APIs with the public side: the pending matching list, ledger list, and handover form list use GET; entering physical items, confirming handovers, and manual binding use POST; excluding matches and verifying pickup release use POST .../reject and POST .../release (with pickup code).
Boundary note: This repository only contains the police handling workbench and does not include the public-side voice dialogue/reporting interface; the latter is in another repository, jinglaibang-h5.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.