# CLAUDE.md This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. ## Project Overview This is a Vue.js 2 + UniApp mobile application called "GS-MES-AP" (StandardPda-Browse) for manufacturing quality control and warehouse management. The application is designed for PDA (Personal Digital Assistant) devices used in manufacturing environments. ## Key Technologies - **Framework**: Vue.js 2 + UniApp (uni-app v2.0.2) - **State Management**: Vuex - **UI Components**: uView UI v2.0.38, Vant v2.13.7 - **Build Tool**: Vue CLI with @dcloudio/vue-cli-plugin-uni - **Platform**: Multi-platform (Android/iOS app, H5, various mini-programs) ## Development Commands Since this is a UniApp project, standard npm scripts are not present. Development should be done through: - **HBuilderX IDE**: The recommended development environment for UniApp - **Build**: Use HBuilderX to build for different platforms - **Debug**: Use HBuilderX's built-in debugger or device debugging ## Architecture Overview ### Core Structure - **Entry Point**: `main.js` - Sets up Vue instance, store, and global prototypes - **State Management**: `store/index.js` - Vuex store with server configuration - **Routing**: `pages.json` - UniApp page configuration (not Vue Router) - **App Configuration**: `manifest.json` - App metadata and platform-specific settings ### Key Directories - `pages/` - Application pages organized by feature modules - `BasePages/` - Core pages (login, main, user profile) - `QC/` - Quality Control modules (来料检验, 首检, 巡检, 入库检) - `Warehouse/` - Warehouse management modules - `fileView/` - File viewing components (PDF, Excel, Word, images) - `components/` - Reusable UI components - `common/` - Shared utilities and global mixins - `utils/` - Utility functions for printing, scanning, messaging - `static/` - Static assets (images, icons, sounds) ### Quality Control (QC) Modules - **LLJ (来料检验)**: Incoming material inspection - **SJ (首检)**: First article inspection - **XJ (巡检)**: Patrol inspection - **RKJ (入库检)**: Warehouse inspection - **THL (退换料)**: Return/exchange material confirmation ### Core Features - **Barcode/QR Code Scanning**: Custom PDA integration via `utils/scanCode.js` - **Image Capture**: Camera integration for quality documentation - **File Viewing**: PDF, Excel, Word, and image preview capabilities - **Bluetooth Printing**: Barcode and receipt printing via `components/kk-printer/` - **Offline Storage**: Local data persistence using uni.storage APIs ### API Integration - **Server Configuration**: Located in `store/index.js` - **Request Handling**: Global methods `$get`, `$post`, `$uni_request` in `main.js` - **Authentication**: User info stored in `$loginInfo` prototype ### PDA Hardware Integration - **Barcode Scanning**: Android broadcast receiver implementation in `utils/scanCode.js` - **Camera Access**: Native camera API through UniApp - **Bluetooth Printing**: Thermal printer integration ## Development Guidelines ### Working with QC Modules Each QC module follows a consistent pattern: - `List.vue` - Data listing with pull-to-refresh - `Add.vue` - Form for creating new entries - `detail.vue` - Detailed view/editing - `ImageItem.vue` - Image capture and upload ### Adding New Features 1. Create page in appropriate `pages/` subdirectory 2. Add page configuration to `pages.json` 3. Use global API methods (`$get`, `$post`) for server communication 4. Follow existing patterns for form handling and data validation ### Testing - Test on actual PDA devices for barcode scanning functionality - Verify camera and printing features on target hardware - Test offline storage and sync capabilities ## Important Notes - This is a PDA-specific application with hardware dependencies - Server API endpoint is configured in `store/index.js` - Image uploads are base64 encoded and sent to `/Base/saveImage` - All text content is in Chinese (simplified) - Application supports multiple deployment targets (Android, iOS, H5)