China Wheels · workshop system

Right now, doing this job right takes a trained eye.
Here's how to make it take a glance.

The digitized sheets are accurate, fast, and everything the team asked for is in there. But they're still sheets — wide tables built for someone who already knows the business. A brand-new hire looking at Job Intake for the first time has no idea which of the columns matter for the customer standing in front of them.

This is a proposal, not a build yet: a task-first front door that sits on top of everything already live, so day one looks like answering four short questions instead of reading a spreadsheet.

23
columns on the Job Intake sheet
119
open jobs on that one screen today
9
separate screens across the system
0
of it needs to be rebuilt for this

The gap

The sheet knows everything. A new hire knows nothing yet.

Here's an honest slice of the real Job Intake Tracker next to what a first day could look like instead — same data, same database, same rules underneath.

Today — Job Intake Tracker
chinawheels-backend / service
Date InCustomerTypePhoneVehicle Plate #ChassisMileageServicePriority TechStatusParts?Parts StatusInv/Quote
2 JulJulio DawkinsRetail876-866-…TacomaPA 45213TML…142,000DiagnosticNormalKemarIn ProgressYesOrdered
2 JulNicola HymanFleet876-441-…MG ZSPB 1190LSJ…38,220Service partsHighAndreAwaiting PartsYesPendingQ-1148
1 JulPetagaye GrantRetail876-322-…Jetour T2PC 8834LVV…9,410Body/sprayLowReadyNoINV-…
1 JulMarlon ReidRetail876-902-…Song PlusPD 2201LGX…21,050Recall checkNormalKemarDeliveredNoINV-…
30 JunShauna-Kay …Retail876-773-…Corolla CrossPE 00932T3…55,600AC serviceNormalAndreDeliveredNoINV-…
… plus 8 more columns off-screen, and 114 more rows below. Every one of them editable.
Day one — the front door
chinawheels-backend / start here

What's happening right now?

1
Julio Dawkins · 876-866-9630
2
2007 Toyota Tacoma
Just make/model/year — the rest fills in as the job moves along
3
Diagnostic ▾
1
Search the stock list…
2
 
3
Deposit ▾
1
 
2
e.g. Jetour T2
1
Search parts…
2
Need to order ▾

Try the other buttons above — each opens a different short, guided form.

Same job, plainer language

A status a stranger can read

The sheet's status column carries real meaning — but only if you already know the shorthand.

Status: awaiting_parts — what does that mean happens next?

becomes, on the same job card —

Intake
Diagnosis
3
Waiting on parts
4
Repair
5
Payment
6
Delivered

Same underlying value, same dropdown to change it — it just reads as a place in a line, not a code word.

Why this, specifically

Three problems, one front door

Nobody has to know where to click first

Instead of learning nine screen names, a new hire reads four real-life situations and picks the one happening in front of them.

Only the relevant questions show up

A walk-in service customer never sees the 19 columns meant for later in the job — those fill in naturally as the work progresses.

The heavy sheets stop being the everyday screen

They're still there for whoever wants the full picture — but the page nearly everyone opens all day becomes small and fast, which is also the fix for today's sluggishness on Job Intake (more on that separately).

The whole flow, start to finish

What actually happens after that first click

The front door is just the entrance. Here's each scenario played all the way through — who does what, and everywhere the system quietly does the rest by itself.

a person does this
Karen does this by herself
new doesn't exist yet — part of this idea

Covers mechanical service and body/spray work the same way — body jobs just move along their own set of steps.

1
Pick "A customer walked in," answer 3 questionsPerson
TodayStaff opens the Job Intake Tracker — 23 columns, 119 open jobs already on that one screen — and has to find where to start typing, and which columns to fill in now versus later.
This wayThree questions, in order: who they are, what car, what it's in for. Nothing else is on screen yet. A job is opened the moment they're answered.
2
The customer gets matched to their real recordAutomatic
TodayThe name and number get typed fresh into this job — the same customer may already be typed slightly differently on the deposit sheet or the leads sheet, with no link between the copies. Their past visits don't automatically show up.
This wayAlready live. That phone number instantly matches (or creates) ONE real record for that person — every past job and past purchase is already attached, first keystroke.
3
Job sits at "Intake" on a plain progress linePerson
TodayProgress lives in a "Status" dropdown with values like checked_in, diagnosis, awaiting_parts — technical wording, buried as one of 23 columns you have to scroll to reach.
This waySix plain stops sit right on the job: Intake → Diagnosis → Waiting on parts → Repair → Payment → Delivered. Tap the next one forward as the work moves along.
4
If parts are needed, the job visibly pausesPerson
TodaySame status dropdown — "awaiting parts" is just one more word in the list, easy to miss on a busy sheet.
This wayThe progress line visibly stalls at "Waiting on parts." Anyone glancing at the job — even someone brand new — can tell it's stuck, and exactly why.
5
Job unblocks itself once that part is marked receivedAutomatic New
TodayParts Tracker and Job Intake Tracker are two separate screens with no link between them. Someone has to remember to go flip the job forward once a part shows up — if they forget, the job just sits stuck on "waiting on parts" even after the part arrived.
ProposedMarking a part received nudges its linked job forward by itself. Nobody has to remember the second step, and nothing sits stuck by accident.
6
Repair happens, tech logs the work and any parts usedPerson
No change — this is the same line-by-line entry that exists on the job today, just reached the same way, from the job's own page.
7
One tap makes the quotation or invoicePerson
No change — already works today. The paperwork prefills itself from the job, right down to whether tax applies to that job.
8
Payment gets logged, job marked DeliveredPerson
TodayPayment status and amount sit as 2 of the job's 23 columns; marking a job delivered means finding "delivered" in the status dropdown.
This waySame two fields — just reached by tapping the last stop on the progress line instead of hunting for the right dropdown option.
9
The next service reminder books itself, 6 months outAutomatic
No change — already happens invisibly today the moment a job is marked delivered. Nobody has to write themselves a note; it's already sitting in the follow-up list when the time comes.
1
Pick "Customer wants to buy," search the carPerson
TodayStaff scrolls or searches the full Stock List — every car in inventory, every column (stock number, colors, VIN, prices, source, bank, the whole deal) — to find the one row for this car.
This wayA plain search box. Type the make and model, pick the one they mean.
2
Buyer's name, number, deposit or paid in fullPerson
TodayTyped directly into that car's row on the Stock List — name, phone, email, deposit amount, source, bank — all inline on a table row built to hold the whole deal across many columns.
This wayThree short questions, one at a time, nothing else visible.
3
Buyer gets matched to their real record, car flips to "Booked"Automatic
No change — already live. This is exactly the fix shipped this week for a real problem: before it, the same buyer could end up as several disconnected, duplicate entries.
4
Further payments logged as they come inPerson
No change — already a working running list of Deposit / Payment 1, 2, 3 on the car's own page.
5
Mark it deliveredPerson
No change — already works. Car flips to "Sold," and one click generates the sales invoice in the dealership's own numbering, with the right tax handling already built in per vehicle (electric is exempt, others aren't).
6
If this buyer had an open inquiry sitting in the lead list, it closes itself out as "won"Automatic
No change — already live (shipped this week). Credits whichever inquiry was still open for that buyer, not necessarily their very first one. Nobody has to remember to go update the lead by hand.
7
For imported cars: the government-paperwork checklist is right there on the same car pagePerson
No change — already works today.
1
Pick "Someone called," take down name, number, what they're afterPerson
TodayTyped into the Lead Sheet — one row among however many are open, with columns for campaign, source, rep, and appointment on top of the basics.
This wayTwo short questions: who, and what car they're interested in.
2
Matched to their real record if they exist alreadyAutomatic
No change — already live.
3
Lead sits in the pipeline with a plain "gone quiet for … days" flagPerson
Before this weekNo way to tell how long it had been since anyone touched a lead — easy for one to quietly go cold for weeks with nobody noticing.
NowAlready live, shipped this week. Amber past a week of silence, red past a month, right on the row — no mental list to keep.
4
Quick notes any time, in a bigger pop-out boxPerson
Before todayWhatever was typed when the lead was first created was stuck there forever — no way to add to it later.
NowAlready live, shipped today. Notes can be updated any time, in a full-size pop-up that's easy to read back later.
5
If they buy, this lead closes itself as "won" — see the sale flowAutomatic
No change — already live.
6
If it goes nowhere, mark it lostPerson
No change — already one tap, done. It stops showing up as something to chase.
1
Pick "A part arrived or is needed"Person
TodayThe Parts Tracker is its own separate screen with its own table — a technician on a different job has to know it exists and remember to go check it, or ask someone.
This wayOne obvious button from the same front door everything else starts at.
2
Either log a new order, or mark one as receivedPerson
No change underneath — same fields as today (which part, for which job, from which supplier, expected when), just reached from the front door instead of needing to know which tab to open.
3
If it's tied to a service job, that job unblocks itselfAutomatic New
Same connection proposed in the service flow (step 5) — one link, built once, benefits both scenarios at the same time.
4
Stock count and low-stock warnings update by themselvesAutomatic
TodayAdjusting stock is already a working action — but it's its own separate button-press, disconnected from receiving the order.
ProposedFiring that same, already-built stock update automatically off a received order, instead of needing a second manual step.

Try it

Click through a full example, start to finish

Not a description this time — an actual walkthrough. Pick a scenario and tap through it exactly the way a new hire would, using the same real names and cars from the examples above.

chinawheels-backend / start here

Nothing that's already built gets thrown away

This is a new front door, not a rebuild. Every table, every dropdown, every paperwork rule already live keeps working exactly as it does today.

Next step

If this feels right, say the word

This page is a pitch, not a build — nothing here is live. If the direction lands, the plan would be one task screen at a time, starting with whichever moment happens most often on the floor, so the team feels the difference fast without anything breaking mid-week.