shawn 457e7794a0 🌱 Complete seed import tool — all 17 kanban tasks done
Modules:
- parser.py: Full Excel parser (1,848 machines, Disney mapping, Pattern A+B parsing)
- db_writer.py: SQLite writer with per-field update policy (seed + update modes)
- backup.py: GPS/photo backup, restore, and compare
- reporter.py: Comprehensive validation report generator
- main.py: CLI entry point

Database: assets.db with 1,848 machines across 36 columns
Handbook: reference_handbook.md v2.0 — all sections finalized
Report: validation_report.md — 184 OCR corrections, 143 unknown machines
2026-05-24 21:50:46 -04:00

🌱 Canteen Seed Data Import Tool

Standalone seed data import tool for the Canteen Asset Tracker. Conceptualizes the import pipeline before integration into the admin panel.

Purpose

Import Cantaloupe seed data (CSV export) into the canteen assets database with:

  • Header Mapping — Raw Excel headers → CSV headers → DB column names
  • Location Extraction — Parse Customer & Place columns into structured fields
  • GPS Derivation — Handle multi-floor GPS offsets
  • Serial Validation — OCR corrections, unknown machine identification
  • Type/Class/Make/Model Normalization — Consolidate to Class, Make, Model
  • Pricing Status Decoding — Remote pricing status meanings
  • Telemetry Decoding — Card reader brand/type from telemetry IDs
  • Alert Interpretation — Alert code meanings
  • Sales Priority Scoring — Low/mid/high business value
  • Backup & Restore — Preserve existing GPS + check-in data
  • Validation Reports — Detailed import summary

Data Files

seed-data/
├── header_modified.csv    # Header mapping: raw Excel → CSV → DB
├── import_seed.csv        # Seed data (vending machine export)
└── reference_handbook.md  # Extraction rules & reference docs

Usage

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

python main.py seed-data/import_seed.csv --db /path/to/assets.db [--dry-run]

Integration

Once validated, this tool will be integrated into the Canteen Admin Server.

Database Schema

Shares the same assets.db schema as the Canteen Asset Tracker:

  • assets table with columns: machine_id, serial_number, name, make, model, address, building_name, building_number, floor, room, trailer_number, latitude, longitude, company, location_area, place, category, status, priority, pricing_status, card_reader_brand, card_reader_model, dex_report_date, install_date, deployed, pulled_date, disney_park, is_disney, etc.
  • checkins table for GPS check-in records
  • See main project for full schema.

Priority

This tool is a conceptual prototype. Once the pipeline is stable, the logic will be ported to the admin panel as a feature.

S
Description
🌱 Seed data import tool for Canteen Asset Tracker
Readme 390 KiB
Languages
Python 73.1%
HTML 26.5%
Shell 0.4%