| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- #!/usr/bin/env bash
- # 按需拷贝原 CRM Java 到 docs/crm-migration/reference/java/{module}/
- # 用法: ./docs/crm-migration/scripts/snapshot-java.sh quote service/impl/CrmQuoteServiceImpl.java
- # ./docs/crm-migration/scripts/snapshot-java.sh supplier-info controller/CrmSupplierInfoController.java
- set -euo pipefail
- ROOT="$(cd "$(dirname "$0")/../../.." && pwd)"
- SRC="${CRM_JAVA_SRC:-$ROOT/../shanxia/crm/backend/ruoyi-modules/ruoyi-crm/src/main}"
- MODULE="${1:?module name (e.g. quote, supplier-info)}"
- shift
- FILES=("$@")
- if [ ${#FILES[@]} -eq 0 ]; then
- echo "Usage: $0 <module> <relative-path>..." >&2
- echo "Example: $0 quote service/impl/CrmQuoteServiceImpl.java" >&2
- exit 1
- fi
- DEST="$ROOT/docs/crm-migration/reference/java/$MODULE"
- mkdir -p "$DEST"
- for rel in "${FILES[@]}"; do
- # 支持 controller/xxx.java 或 java/org/dromara/crm/... 两种写法
- if [[ "$rel" == java/* ]]; then
- src_file="$SRC/$rel"
- out="$DEST/${rel#java/org/dromara/crm/}"
- elif [[ "$rel" == resources/* ]]; then
- src_file="$SRC/../$rel"
- out="$DEST/$rel"
- else
- src_file="$SRC/java/org/dromara/crm/$rel"
- out="$DEST/$rel"
- fi
- mkdir -p "$(dirname "$DEST/$rel")"
- if [ ! -f "$src_file" ]; then
- echo "MISSING: $src_file" >&2
- exit 1
- fi
- cp "$src_file" "$out"
- echo "snapshotted: $rel -> reference/java/$MODULE/$rel"
- done
- echo "done: $(date -u +%Y-%m-%dT%H:%MZ)" >> "$DEST/.snapshot-log"
|