编辑 | blame | 历史 | 原始文档

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)