# ACCI Systems Pricer (Sales tool)

Easy internal tool for the sales team to:

1. **Browse capable resinous systems** (Elite Crete / Sika / Sherwin-Williams HPF)
2. **See material $/sf bands** from real Brad / Danny / Randall quotes
3. **Apply suggested sell rates** (Tyler flake $8.55, polish adders, etc.)
4. **Open TDS / submittal packages** stored with each system
5. **Paste or scan a spec/takeoff** and get ranked system matches + ballpark $

## Quick start

```bash
cd /Users/acci/ACCI-Arkansas/knowledge/sales/systems-pricer
python3 scripts/serve.py
```

Opens: `http://127.0.0.1:8765/app/`

## Scan a takeoff or spec PDF

```bash
python3 scripts/scan_spec.py "/path/to/spec-or-takeoff.pdf"
```

Writes markdown to the terminal and JSON under `scans/`.

Example with sample language:

```bash
python3 scripts/scan_spec.py --text "UFGS decorative flake epoxy and ESD conductive hangar flooring 45000 sf"
```

## What’s inside

```
systems-pricer/
  app/                 # dark-mode web UI
  library/
    systems.json       # systems + pricing + TDS paths + proof jobs
    tds/               # technical data / submittals / price books
  scripts/
    serve.py           # local web server
    scan_spec.py       # PDF/text → ranked systems + $
  scans/               # scan output JSON
  README.md
```

## Pricing sources

| Source | Role |
|--------|------|
| Brad Holmes / Elite Crete estimates | Best SF + $/sf line headers |
| Danny Wirges / SW HPF | TQ quotes, TG46/FR packages, 2026 price books |
| Randall Shoemaker / Sika | ACCI Quote sheets with $/SQFT |
| Tyler sell rates | Flake $8.55/sf, polish $3.00, grout $0.63, tile demo $0.55 / $1.25, repolish $1.00 |

Raw quote catalog (deeper archive): `../material-quotes/`

## How sales should use it

1. Open the app → **Systems** → search “flake”, “ESD”, “quartz”, “hangar”
2. Open a system → review **proof jobs** + click **TDS**
3. **Price a job** → enter SF → see material (w/ 10% waste) vs sell vs rough margin after material
4. Got a spec? **Spec / takeoff match** → paste language → ranked equals
5. Or run `scan_spec.py` on Kyle’s takeoff PDF / finish schedule

## Rules of the road

- Material $ is **not** a bid by itself (no labor, travel, mob, tax, freight).
- Federal / UFGS / fuel-resistive: use TDS + manufacturer confirm before locking.
- High-value or weird specs: still ping Brad / Danny / Randall — this tool reduces 80% of “what system + ballpark” loops.
- Sell rates marked “planning” need Tyler confirmation by market.

## Refresh data

When new vendor quotes land in Tyler’s email:

```bash
export GOG_HOME="${GOG_HOME:-$HOME/.hermes/profiles/elaine/gog}"
python3 ../material-quotes/scripts/build_catalog.py
python3 ../material-quotes/scripts/reparse_cost_sf.py
# then update library/systems.json medians if bands moved
```

## Next upgrades (when you want)

- Google Sheet mirror for phone-friendly access
- Auto-attach top TDS into bid PDF packages
- PO/invoice actuals → true as-built cost/SF
- Direct “drop takeoff xlsx” parser (Rhonda-style) into Price tab
