cproudlock aac39d8a9f Add comprehensive production migration guide for Dec 10, 2025 changes
Consolidates all database changes into a single step-by-step guide:
1. Table naming convention fix (6 tables renamed)
2. View recreation (9 views)
3. Fix backwards Controls relationships
4. Propagate controllers to dualpath machines
5. Sync equipment data between dualpath partners

Includes pre-deployment checklist, rollback plan, and verification steps.

Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-10 20:12:47 -05:00

ShopDB Documentation

Last Updated: 2025-11-25 Current Status: Phase 2 Complete, Phase 3 Planned


Project Status Overview

Migration Progress

Phase Status Description Completed
Phase 1 COMPLETE Schema changes - new tables, columns, indexes Nov 6, 2025
Phase 2 COMPLETE PC migration to unified machines table Nov 10, 2025
Phase 3 PLANNED Network devices migration (servers, switches, cameras) TBD

Current Architecture

machines table (unified)
  ├── Equipment (machinetypeid 1-24, pctypeid IS NULL)
  └── PCs (machinetypeid 25-29, pctypeid IS NOT NULL)

printers table (separate - by design)

Network devices (Phase 3 will migrate):
  - servers, switches, cameras, accesspoints, idfs
  - Will become machinetypeid 30-36 in machines table

Key Accomplishments (Oct-Nov 2025)

  • Consolidated PCs into unified machines table (277 PCs migrated)
  • Created communications table for all network interfaces (705+ records)
  • Created machinerelationships table for PC/equipment relationships
  • Modernized all PC pages (displaypcs, displaypc, editpc)
  • Fixed 36+ API bugs for PowerShell data collection
  • Added compliance and warranty tracking infrastructure
  • Implemented network map for all device types

Documentation Overview

For New Team Members

Start here in this order:

  1. QUICK_REFERENCE.md - Quick facts, common tasks, cheat sheets (15 min)

  2. ASP_DEVELOPMENT_GUIDE.md - Dev environment setup, VBScript patterns (30 min)

  3. STANDARDS.md - Coding standards, security requirements (45 min)

  4. DEEP_DIVE_REPORT.md - Complete database/architecture docs (reference)

  5. NESTED_ENTITY_CREATION.md - Complex forms, inline entity creation (20 min)


Migration Documentation

Phase 1 & 2 (Complete)

Document Description
DATABASE_MIGRATION_FINAL_DESIGN.md Complete Phase 1 specification
MIGRATION_QUICK_REFERENCE.md Quick lookup for migration
PC_MACHINES_CONSOLIDATION_PLAN.md Phase 2 PC migration plan
MACHINE_RELATIONSHIPS_EXAMPLES.md Relationship query patterns

Phase 3 (Planned)

Document Description
PHASE3_NETWORK_DEVICES_MIGRATION_PLAN.md Network devices migration plan

Core Documentation

Standards & Development

Document Purpose Status
STANDARDS.md Coding standards, security Current
ASP_DEVELOPMENT_GUIDE.md Dev setup, patterns Current
QUICK_REFERENCE.md Cheat sheets Current
NESTED_ENTITY_CREATION.md Complex forms Current

Architecture & Design

Document Purpose Status
DEEP_DIVE_REPORT.md Complete system documentation Current
INFRASTRUCTURE_FINAL_ARCHITECTURE.md Infrastructure design Current
NETWORK_DEVICES_UNIFIED_DESIGN.md Network unification design Current

SQL Migration Scripts

All migration scripts are in /sql/migration_phase*/ folders:

sql/
├── migration_phase1/     # Schema changes (8 scripts + rollbacks)
├── migration_phase2/     # PC data migration (8 scripts)
├── migration_phase3/     # Network devices (planned)
└── *.sql                 # Utility scripts

Quick Start

Dev Environment

# Start dev environment
~/start-dev-env.sh

# Check status
~/status-dev-env.sh

# Access application
http://192.168.122.151:8080

Git (Gitea)

# Gitea web UI
http://localhost:3000

# Clone repo
git clone ssh://git@localhost:2222/cproudlock/shopdb.git

Database

# Connect to MySQL
docker exec -it dev-mysql mysql -u root -prootpassword shopdb

# Quick queries
SELECT COUNT(*) FROM machines WHERE pctypeid IS NOT NULL;  -- PCs
SELECT COUNT(*) FROM machines WHERE pctypeid IS NULL;      -- Equipment
SELECT COUNT(*) FROM printers WHERE isactive = 1;          -- Printers

Key Database Tables

Core Tables (Phase 2 Schema)

Table Purpose Records
machines All equipment + PCs 500+
communications Network interfaces 700+
machinerelationships PC/equipment links 50+
printers Printers (separate) 200+
warranties Warranty tracking var
compliance Compliance data var

Key Views

View Purpose
vw_network_devices All network devices unified
vw_active_pcs Active PCs with details
vw_machine_relationships Relationship summary

Recent Session Summaries

Located in project root:

File Date Focus
SESSION_SUMMARY_2025-11-13.md Nov 13 Phase 2 testing, network_map fixes
SESSION_SUMMARY_2025-11-10.md Nov 10 Relationship fixes, Phase 3 planning

Getting Help

  1. Check QUICK_REFERENCE.md first
  2. Search DEEP_DIVE_REPORT.md
  3. Review STANDARDS.md for coding questions
  4. Check session summaries for recent changes

Version History

Version Date Changes
v2.0 2025-11-25 Updated for Phase 2 completion, cleanup
v1.3 2025-10-20 Added Git workflow documentation
v1.2 2025-10-20 Added DEEP_DIVE_REPORT, QUICK_REFERENCE
v1.1 2025-10-10 Added STANDARDS, NESTED_ENTITY_CREATION
v1.0 2025-10-09 Initial ASP_DEVELOPMENT_GUIDE

Maintained By: Development Team Last Updated: 2025-11-25

Description
ShopDB - Manufacturing Floor Management System
Readme 347 MiB
Languages
Classic ASP 51.5%
JavaScript 35.9%
CSS 8.8%
HTML 1.9%
Python 1%
Other 0.9%